本文へスキップ
このページは英語からの機械翻訳を使用しており、誤りや不明瞭な表現が含まれている可能性があります。最も正確な情報については、オリジナルの英語版をご覧ください。頻繁な更新のため、一部のコンテンツはオリジナルの英語になっている可能性があります。Crowdinでの取り組みに参加して、このページの翻訳改善にご協力ください。 (Crowdin translation page, Contributing guide)

署名

シグネチャをオブジェクトからタプル形式に変換し、シグネチャをコンパクトにする。

getSignatureTupleを**@kaiachain/web3js-ext**パッケージからインポートする。

{r, s, v} フォーマットの公開鍵をタプルに圧縮するには、signature オブジェクト をパラメータとして getSignatureTuple を使用する。

ンパクトな 65 バイト形式の公開鍵をタプルに圧縮するには、getSignatureTuple を使用し、コンパクト署名 をパラメータとして渡します

signatureUtils.js

const { getSignatureTuple } = require('@kaiachain/web3js-ext')
async function main() {
console.log(
'signature from { v, r, s } object =',
getSignatureTuple({
v: 27,
r: '0x66809fb130a6ea4ae4e823baa92573a5f1bfb4e88e64048aecfb18a2b4012b99',
s: '0x75c2c3e5f7b0a182c767137c488649cd5104a5e747371fd922d618e328e5c508',
})
)
console.log(
'signature from compact 65 bytes =',
getSignatureTuple(
'0x66809fb130a6ea4ae4e823baa92573a5f1bfb4e88e64048aecfb18a2b4012b9975c2c3e5f7b0a182c767137c488649cd5104a5e747371fd922d618e328e5c5081b'
)
)
}
main()

output

❯ node signatureUtils.js
signature from { v, r, s } object = [
'0x1b',
'0x66809fb130a6ea4ae4e823baa92573a5f1bfb4e88e64048aecfb18a2b4012b99',
'0x75c2c3e5f7b0a182c767137c488649cd5104a5e747371fd922d618e328e5c508'
]
signature from compact 65 bytes = [
'0x1b',
'0x66809fb130a6ea4ae4e823baa92573a5f1bfb4e88e64048aecfb18a2b4012b99',
'0x75c2c3e5f7b0a182c767137c488649cd5104a5e747371fd922d618e328e5c508'
]

ページを改善してください。