Author

Topic: Сигнатура в keccak-256 для регистрации ETH адреса (hex string) (Read 226 times)

hero member
Activity: 1204
Merit: 521
Вот задача.
Manual registration
Sign the keccak-256 hash of the message "I agree to the terms and conditions for signing up for the nahmii airdriip." the same way geth or web3js would, and enter the accociated address and signature below.

Пытался полученную через https://www.myetherwallet.com/signmsg.html подпись конвертировать в keccak-256, но вот что именно (сколько знаков  -какой формат) вставить в строку непонятно. Помогите, добрые люди!)

KECCAK256 это алгоритм хеширования, намного более ресурсоёмкий, чем SHA256. Широко применяется в Ethereum при генерации ETH-адресов и т.п. Результатом хеширования входной последовательности байтов является 256-битная (то есть 32-байтная) строка.

Скорее всего, сначала Вам нужно хешировать требуемый текст при помощи программы keccak256, затем, используя приватный ключ, подписать полученное 32-байтное число асимметричным шифром ECDSA secp256k1, после этого определённым образом инкрустировать полученную 64-байтную HEX-строку в ETH-транзакцию и отправить её в блокчейн Ethereum в поле DATA.

Благодарю! Так и получилось. Только нужно в не транзакцию формировать Hex -строку а прямо в поле для заполнения в их кошельке. И при хешировании при помощи программы keccak256 нужно в ручную добавлять 0x, чего изначально не делал. Все принято системой.
legendary
Activity: 2422
Merit: 2166
Вот задача.
Manual registration
Sign the keccak-256 hash of the message "I agree to the terms and conditions for signing up for the nahmii airdriip." the same way geth or web3js would, and enter the accociated address and signature below.

Пытался полученную через https://www.myetherwallet.com/signmsg.html подпись конвертировать в keccak-256, но вот что именно (сколько знаков  -какой формат) вставить в строку непонятно. Помогите, добрые люди!)

KECCAK256 это алгоритм хеширования, намного более ресурсоёмкий, чем SHA256. Широко применяется в Ethereum при генерации ETH-адресов и т.п. Результатом хеширования входной последовательности байтов является 256-битная (то есть 32-байтная) строка.

Скорее всего, сначала Вам нужно хешировать требуемый текст при помощи программы keccak256, затем, используя приватный ключ, подписать полученное 32-байтное число асимметричным шифром ECDSA secp256k1, после этого определённым образом инкрустировать полученную 64-байтную HEX-строку в ETH-транзакцию и отправить её в блокчейн Ethereum в поле DATA.
sr. member
Activity: 1337
Merit: 288
0xbt
Здесь посмотрите
https://etherscan.io/tokenupdateverifysig
How to Sign Message using MYETHERWALLET?
https://dmarket.io/info/en/message-signing-myetherwallet/
В свое время подтверждал адрес по данным мануалам на etherscan, получилось.
hero member
Activity: 1204
Merit: 521
Привет специалистам. Столкнулся с такой проблемой. Некий проект, запустив свой кошелек, представляет на выбор две возможности. Зарегистрировать адрес (на ETH блокчейне) 1. привязав его через  импорт приватного ключа и т.п. или 2. через сигнатуру. Но вот внести сигнатуру нужно хешировав как то хитроумно, что неспецу совсем не по силам. Может кто подскажет четкий алгоритм. Конверторов в отрытом доступе много -но вот пошагово  сделать не получается. Пишет что длина знаков не соответсвует а должно быть signature hex string.

Вот задача.
Manual registration
Sign the keccak-256 hash of the message "I agree to the terms and conditions for signing up for the nahmii airdriip." the same way geth or web3js would, and enter the accociated address and signature below.


Пытался полученную через https://www.myetherwallet.com/signmsg.html подпись конвертировать в keccak-256, но вот что именно (сколько знаков  -какой формат) вставить в строку непонятно. Помогите, добрые люди!)

Модератору! Извините, если не туда запостил топик, уже совсем извелся в поисках этого решения -вот и пришел к профи за советом.
Jump to: