Репликация процесса получения ключей Waves с библиотеками js - PullRequest
1 голос
/ 20 июня 2019

Я просматриваю эту страницу документации , чтобы выяснить связь между открытым ключом, адресом тестовой сети Waves и адресом главной сети Waves.

Я написал этот фрагмент кода, вставил ключ паба и адрес, полученный от Waves Keeper:

const base58 = require('bs58')
const blake2b = require('blakejs')
const keccak = require('keccak256')

const pubKey_58 = '4DRwrsAPmw4aJ421WLhkLQwSojHbtGEX9TJA7ALWJfUf'
const pubKey_hex = base58.decode(pubKey_58)
const pubKey_blake = blake2b.blake2bHex(pubKey_hex, null, 32)
const pubKey_kck = keccak(pubKey_blake)

console.log(`Key base58: ${pubKey_58}`)
console.log(`Key hex: ${pubKey_hex.toString('hex')}`)
console.log(`Key blake: ${pubKey_blake.toString('hex')}`)
console.log(`\nKeccak of blake (real vs expected short) \nRe: ${pubKey_kck.toString('hex')}\nEx: 42277bd8eaff21ec56624ab8c003f70673510e74`)

Вот вывод, который я получаю: enter image description here

Очевидно, что адрес, полученный вручную, отличается. Чего мне не хватает?

1 Ответ

0 голосов
/ 20 июня 2019

Вы также можете получить адрес из открытого ключа, используя встроенную функцию:

addressFromPublicKey(publicKey: ByteVector): Address
...