五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

摘要算法:MD2

2022-10-15 02:06 作者:CSDN首席噴子  | 我要投稿

MD2是MD系列摘要算法的鼻祖,能夠接受任意長度的輸入,得到針對輸入特定的16字節(jié)(128位)輸出。輸入數(shù)據(jù)只要變化一位,輸出就會(huì)相應(yīng)變化,因此可以用于驗(yàn)證數(shù)據(jù)。盡管現(xiàn)在已經(jīng)有了更安全的摘要算法,如SHA3,但其和MD2的基本結(jié)構(gòu)都是一樣的。其計(jì)算方法為:

(1)將數(shù)據(jù)填充為16的整倍數(shù),填充值是缺失的字節(jié)數(shù)。比如“a”,其后面需要填充15個(gè)字節(jié),這15個(gè)字節(jié)的值都是0x0f。此時(shí)字節(jié)總數(shù)為N,記填充后數(shù)據(jù)為M。

(2)為這N個(gè)字節(jié)添加校驗(yàn)和。MD2根據(jù)圓周率構(gòu)建了一個(gè)256位偽隨機(jī)數(shù)組,稱為“S盒”。通過S盒計(jì)算偽碼如下:

checksum[16];

For i = 0 to 15 do

????checksum[i] = 0;

End; ?// 初始化

L = 0;

For i = 0 to (N / 16 - 1) do

????For j = 0 to 15 do

????????c_tmp = M[i * 16 + j];

????????checksum[j] = checksum[j] ?^ S[c_tmp ^ L];

????????L = checksum[j];

????End; // j

End; // I

然后把這16字節(jié)的校驗(yàn)和放在填充后的數(shù)據(jù)后面,記為M`,此時(shí)總長度為N`。

(3)初始化緩存。創(chuàng)建一個(gè)48位的輸出緩存X,并清零初始化。

(4)處理數(shù)據(jù)。

For i = 0 to (N` / 16 – 1) do

????For j = 0 to 15 do

????????X[16 + j] = M`[i * 16 + j];

????????X[32 + j] = X[16 + j] ^ X[j];

????End;

????t = 0;

????For j = 0 to 17 do

????????For k = 0 to 47 do

????????????t = X[k] = X[k] ^ S[t];

????????End;

????t = (t + j) % 256;

????End;

End;

(5)最后把前16字節(jié)取出,就是MD2值。

一個(gè)C語言實(shí)例如下:


摘要算法:MD2的評論 (共 條)

分享到微博請遵守國家法律
呈贡县| 曲周县| 顺义区| 昭平县| 长乐市| 宜宾市| 清镇市| 南丹县| 乌拉特前旗| 十堰市| 沙田区| 韶山市| 靖江市| 北票市| 东阿县| 平武县| 津市市| 宁强县| 五大连池市| 金堂县| 龙陵县| 兴义市| 湖州市| 灌云县| 嘉禾县| 大理市| 泌阳县| 巫山县| 汉阴县| 宁陕县| 临颍县| 兴仁县| 潼关县| 嘉义县| 游戏| 西和县| 门源| 天津市| 隆林| 玛多县| 北碚区|