Javascript
如何將公鑰(64 字節)轉換為壓縮公鑰(33 字節)
我目前有一個從乙太坊交易中恢復的生成的 64 字節公鑰。
如何將此密鑰轉換為 33 字節的壓縮公鑰?我遇到的問題似乎很微不足道,但我終生無法找到解決方案!我目前正在使用 javascript。
任何幫助將不勝感激。
這裡有一個包含合適功能的包 ->
pubkey/eth-crypto
看:
壓縮程式碼如下。(從這個文件複製+粘貼。)
var _secp256k = require('secp256k1'); function compress(startsWith04) { // add trailing 04 if not done before var testBuffer = Buffer.from(startsWith04, 'hex'); if (testBuffer.length === 64) startsWith04 = '04' + startsWith04; return (0, _util.uint8ArrayToHex)((0, _secp256k.publicKeyConvert)((0, _util.hexToUnit8Array)(startsWith04), true)); }