为什么每次重新运行代码,得到的hash值都是一样的?
貌似计算hash的函数没写完整
貌似计算hash的函数没写完整
2019-06-11
//注意int转string不能这样:string(b.Index) + string(b.TimeStamp) blockData := strconv.Itoa(int(b.Index))+strconv.Itoa(int(b.TimeStamp))+b.PreBlockHash fmt.Println(blockData)
这是因为老师的int转string语句写错了,
string(b.Index) + string(b.TimeStamp)
上面这条语句每次输出都是同一个乱码符号,因此Index和TimeStamp在计算哈希值的时候根本没有起到作用,而创世区块其他的值都是固定的,所以每次算出来的哈希值都是一样的。
举报