区块链技术研究区块链研习社区块链研究

默克尔树模拟

2018-04-13  本文已影响59人  InitialX

学习了一个很好的默克尔树专题(https://blog.csdn.net/wo541075754/article/details/54632929),将自己对hash过程的理解费曼了一遍,请大家指正。

如何将“hello world!”进行哈希处理?
image.png

step1:把数据分割成n块.

此处即把hello world!分割为5块, “he” ,"ll", "o","wo","rld","!"。

step2: 把数据块进行哈希运算.

假设这个神秘的哈希运算大法为hash(ooxx), 那么对step1中的数据块施法将得到哈希值:
hash(he)=00, hash(llo)=01, hash(wo)=10, hash(rld)=11 ,hash(!)=20;
此处的哈希值00,01,10是我随便写的,你明白它们是数据块的被哈希的结果就行啦..

step3: 将相邻两个hash块串联,再做hash运算.

hash(0001) =马,hash(1011)= 斯,hash(20)=克;
此处的哈希值马、斯、克是我随便写的,你明白它们是上一步的哈希结果再一次被哈希的结果就行啦..

step4: 重复step2 .

hash(马斯) =牛,hash(克)= 比;

step5:重复step2 ,完成哈希大法,将"hello word!"哈希为“666”.

hash(牛比) =666;

听说技术大牛和未来的技术大牛都有点赞的好习惯:)

上一篇 下一篇

猜你喜欢

热点阅读