vault механизм фантомки интересен
а по русски
Но тут скорее я сумма сойду с приколами JS'a
https://metamask.github.io/vault-decryptor/ вот эту вещь для Phantom Wallet
Но мне кажется ты не туда копаешь, это скорее всего свой бинарный формат, а не валидная строка какая-то
Не, там получается из TweetNacl берётся массив в 32 байта, который после передаётся в NodeJS Buffer и попадает в PBKDF2 который декодирует эти данные уже в 56 байт UTF-8 что и является первоначальным паролем для данных
Ну, а у ты эти данные не продекодил
А он точно декодирует этот невалидный utf-8 как utf-8? Звучит достаточно бредово на самом деле
.toString в базовом формате у Buffer по документации мозилы берет utf8 за стандартное значение
Он имеет ввиду, что ты неправильно данные интерпретируешь
Это понятно, но зачем рандомные байты пытаться декодировать как utf-8? Оно же всё равно декодируется в строчку, наполовину состоящую из символов, означающих ошибку декодирования
Ну потому-что походу в виде пароля принимается строка и разработчики Phantom Wallet решили делать так, потом эта строка в PBKDF2 декодируется из UTF8 и получается 56 байт
А pbkdf2 точно принимает строку с utf8 + replacement characters?
В примере кода не видно строки, какие-то байтики случайные
Я скрин присылал, могу сейчас задебажить весь процесс поэтапно показав что он делает (имеется ввиду Phantom wallet)
На скрине тоже байтики, а не строка
Обсуждают сегодня