Как добавить Hardware Signer скриптом в BraavosВ предыдущей статье я немного описал теоретическую часть.
А в этом посте решил выложить код для всех этих операций — https://github.com/raznorabochiy/braavos-hardware-signer
generate_secp256r1_key.py — скрипт для генерации приватника secp256r1
add_signer.py — добавляет HW Signer в аккаунт Braavos, стандартный приватник перестаёт работать
check_signature.py — проверяет, может ли ваш аккаунт подписывать транзы стандартным приватником
check_secp256r1_signature.py — проверяет, может ли ваш аккаунт подписывать транзы HW Signer-приватником
remove_signer.py — удаляет HW Signer, делает подпись HW Signer’ом, не нужно ждать 4 дня, старый приватник опять начинает работать
remove_signer_with_etd.py — удаляет HW Signer используя старый приватник, нужно ждать 4 дня чтобы старый приватник снова начал работать
cancel_deferred_remove_signer_req.py — отменяет удаление HW Signer, нужно подписывать HW Signer’ом
get_deferred_remove_signer_req.py — проверяет, пытается ли кто-то сбросить HW Signer при помощи старого приватника и если это так дату до которой можно отменить это действие скриптом cancel_deferred_remove_signer_req
Сгенерированный generate_secp256r1_key приватник нужно положить в файл secp256r1-key.txt
Оригинальный приватник нужно положить в файл private-key.txt
В файл addresses.txt кладём адреса для скрипта get_deferred_remove_signer_req
Если вы добавили HW Signer, то все последующие транзакции должны быть подписаны им, как это делается можно посмотреть в скрипте cancel_deferred_remove_signer_req.py, используется класс Secp256rSigner из signer.py