我正在尝试像链表一样遍历区块链。
我只通过提供的块号从块中找到以前的哈希值,如何使用节点js获取块的当前哈希值,我有兴趣在视图页面上显示。
节点 sdk 不提供当前哈希值,但可以使用与此类似的代码从块的标头计算它。
var sha = require('js-sha256');
var asn = require('asn1.js');
var calculateBlockHash = function(header) {
let headerAsn = asn.define('headerAsn', function() {
this.seq().obj(
this.key('Number').int(),
this.key('PreviousHash').octstr(),
this.key('DataHash').octstr()
);
});
let output = headerAsn.encode({
Number: parseInt(header.number),
PreviousHash: Buffer.from(header.previous_hash, 'hex'),
DataHash: Buffer.from(header.data_hash, 'hex')
}, 'der');
let hash = sha.sha256(output);
return hash;
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)