剖析一下網盤秒傳和改進

用過很長一段時間各類網盤了,針對現有網盤的秒傳功能,給你們大體說明一下原理:算法

秒傳,真的傳了麼,沒有,沒有文件上傳,那傳的是什麼?網盤怎麼認了這個要上傳的文件呢?這就要說道摘要算法(哈希算法),每一個文件經過摘要算法,均可以生成一列數據,理想狀況下,每一個文件因爲大小,內容,格式等緣由,產生的摘要都是不相同的,因此,只要上傳網盤以前,先在你電腦上對文件摘要一次,而後對網盤上全部已生成的摘要進行比較,若是相同,那必然就是你要上傳的文件,這就秒傳了。但現有實際效果並不理想,拿百度雲來講,我就發現過秒傳上去的東東下載回來不是原來的了,爲何?由於摘要算法也有可能重複。。。。雖然機率很小,但也是有可能的。code

    現有經常使用的摘要算法好比MD5,sha1等等,列一下我用過的:
xml

                待校驗文件:d:/已整理需求列表.xlsx文件上傳

 GOST3411哈希:3DDD8A87A66D404C2B7A357E234243FE81BBB561A0EE5FE6170E3A53FBEE42EE
 MD2哈希:1A23332A342C50C737319D138CFCB8DC
 MD4哈希:C8D3D29C8A148C3C67152987ED36A3C3
 MD5哈希:EA8313830A518CCD56487C5C342C3769
 RIPEMD128哈希:B12022EAAFAD0DC38637CB5DF310019C
 RIPEMD160哈希:E13E8D09DA2F8412157DC257806C8A4604E3EA5F
 RIPEMD256哈希:E0D2CCF0F59C60876E9E313E5E6728CAF8FE7188FB3485253938EB0C66C4E60E
 RIPEMD320哈希:BF5B95B0B385A927ECD0C26D0EE11FA39FBB93F306A5F1DB1284AE16C1890DD89D3E87E2C89D6530
 SHA1哈希:6F16680C6C63F532BD826C81A5EB3518412E19AD
 SHA224哈希:776AA9E86758277482BF2BB19E0E7C31D7180E767B1271ECE6083758
 SHA256哈希:14E7339F1F245AB734BF4BB55C8AD4ADF63A46F3B079BA281B30748C831DA40E
 SHA384哈希:15DEA65A130DCE8822CB1D154D40286F96BEF0B1BEE4466CBE590C6F91FA7AACE9D48DC1F4EA7879814CC22B31F77A2B
 SHA512哈希:514EEBDB9C8AECD0B39FF014C2E8D3134EE6BDE11543B729AAFB15C3F9C57D8371D78F93FCC76EA43102CDBE888027977CA33521AAA93B0EE6B55951502AF5E7
 SHA_512_224哈希:EA21C51720269983A9E3939B215BFDB88225DF8B3D2B4A13CCBB2D11
 SHA_512_256哈希:58CB7DF840571377DBCA2F8A550E7C7E31B537AEC2047D5798B28C2DB00FD09A
 SHA3_224哈希:F35D443973A1EDEE3C8C42C5A04F059C0ACC392D3EB839795FAEED08
 SHA3_256哈希:06063E843292582E472B7A83658DB8FB6DBD41C240CA7BCE98AA6476C6C8045D
 SHA3_384哈希:9E066691D86FF687A7763E042C379AA05A22CF8B8139714A6F238BB83EB59A2EAE0BF77C695716BFCB2C57A49E8ABEE7
 SHA3_512哈希:38B215A15097E3B10C20DEAF417CA4A36C5188975F5CCB9F2D747D31115B2B4CF61FBC7457138A4A385364DA6D2566CCF27E4C1C3620DF8553B51E638E86512B
 SM3哈希:2084851A346995D01877229ABC669AC414C6476D7F0C883DDC854D3F84D544B3
 Tiger哈希:5922E36B0F73E9F13EB25E5757CEF885F54515318518E568
 Whirlpool哈希:CBB37DC553AF4D592C0C49CE405C15878C80985EA538EEBDF0A2FD251854574A913C8A107D5151B3F2EB5636A4F7ADAC0278529FACE18A688C4A883C61258E74
 SKEIN_256_128哈希:2B0BA31E0EC9FC3FE9BEF621C5CC39D3
 SKEIN_256_160哈希:4AD86F7A984D973628FF32ABFC85E2C05F15D414
 SKEIN_256_224哈希:8E56942A29F1D697B0C65818BAB33939CF78B31238A4947508D7BF74
 SKEIN_256_256哈希:0084FD99C87BED12EE9B13037F186CAB6E9041BC50C66AD4ABDE37708599E7DB
 SKEIN_512_128哈希:9A7CFBE8E2C4711195F13882A7818CDA
 SKEIN_512_160哈希:7E3F48C4FAC924E3DF3B03406D285C092D1A0275
 SKEIN_512_256哈希:FCE97BF3C28071DDB2143D70DFC7885A6BDD833272F51C044C0B962142F5C593
 SKEIN_512_224哈希:C5788A11F18A877E9FA69336D1C3109447295B27AE8BE26425E92A3E
 SKEIN_512_384哈希:F8D8E12CEB7BCD2435A0DE7D88F0C11F080AE295D2B88614E93EC2084871F62ACEC82726ED2F25129440B10E11BF8511
 SKEIN_512_512哈希:6AAEA47F2284960A0375F26E26FB852B6736F7CA99C0B5ABDDF5A6F1CA81FDC2CF6AE19D66AFFC63E4A94E40D6C906EEEFEBFFC6B5EBCC4A3273B527A7598BAB
 SKEIN_1024_384哈希:2A90A107B2575C8F704F59DC0E8B24DD448C36A04CA64608A3979013D36615F0A2A00147D6347E15E79D475EF8D2AE28
 SKEIN_1024_512哈希:11E9BF69DDBCAFB17EF2E2FB1C2C8E36AC261A41F7DCA8F5E7FF70E9CDA710EE1CBBA148E7B4C308A9CA95C815A25F19299D6B8F8BBF947B1738F5C2EA7906AB
 SKEIN_1024_1024哈希:E123EA1B0E6330884F32E787A9BBC10C24638896C5D2F33EB30BC85BE9E08ABFAD1E1E27F9B7B03BD1BB8A2E23895F1D12BD2C3B24D9F1176DB432DFF7BBF384034DF6BDAAA6EA56429324DE863411B3FB25FAAFB81807C84464AF51EA7B030BF55541C79C5ECC941D3517458236D2324E590CED195C9DFA3BBDE574900AB754
 
 
 
 
 ;


    能夠看出不一樣算法的摘要信息長度不一樣,網盤可使用幾個組合或者摘要長的算法做爲文件定位標準。
class


    多說一句:這麼多算法裏面,推薦SM3算法,不爲別的,這是國密算法,能有一個國產的算法真的不容易,支持一下。
原理

相關文章
相關標籤/搜索