gpt4 book ai didi

javascript - 使用 bitcoinjs-min.js 从字节数组转换为十六进制格式

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:29:33 28 4
gpt4 key购买 nike

我正在尝试从浏览器中对象 Q 的以下 x 和 y 生成公钥。问题是为了使用此公钥来验证 JWT,我必须获取 key 的十六进制格式。我正在使用 src="bitcoinjs.min.js"中的 key 对,它不允许我检索公钥的十六进制形式。是否有任何库或函数可以将其转换为十六进制形式?

// Taking reference from http://procbits.com/2013/08/27/generating-a-bitcoin-address-with-javascript
var pubX = hdnode.keyPair.Q.x.toByteArrayUnsigned();
var pubY = hdnode.keyPair.Q.y.toByteArrayUnsigned();
var publicKeyBytes = pubX.concat(pubY);
publicKeyBytes.unshift(0x04);

同时我尝试了

<script src="http://peterolson.github.com/BigInteger.js/BigInteger.min.js"></script>
var publicKeyInt = BigInt.fromByteArrayUnsigned(publicKeyBytes);

但是没用提前致谢

最佳答案

好的,所以我要扩展我的评论

假设:key 是一个数组或一个可迭代的字节

function getHexArray(key) {
function num2hex(num) {
return num > 9 ? num + 55 : num + 48;
}
var hex_key = [];
var lower, upper;
for (var i = 0; i < key.length; i++) {
lower = key[i] & 0x0f;
upper = key[i] >> 4;
return String.fromCharCode(num2hex(upper)) +
String.fromCharCode(num2hex(lower));
}
return hex_key;
}

注意,如果你想要一长串十六进制,你可能想要颠倒上下顺序(这是为了写成一个十六进制字节数组)

此函数允许您放入一个字节数组,并将输出一个表示字节十六进制值的 2 字符字符串数组。

关于javascript - 使用 bitcoinjs-min.js 从字节数组转换为十六进制格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34269002/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com