@winerr

Как получить адресс биткоин кошелька?

Как например из приватного ключа в таком формате (L3KijrvAsMuLaCaEMaj2LcHwRpp3Koxkab6ipX7s9LfewoEU69g6 или KziExJ8gox5xdQVnS3Toun3SZC2Pgm146yDEvvYAb5fgkDwnnnkG) получить биткоин адрес желательно в оффлайн режиме, есть ли скрипт или софт?
  • Вопрос задан
  • 412 просмотров
Пригласить эксперта
Ответы на вопрос 2
EvgenyMamonov
@EvgenyMamonov
Senior software developer, system architect
Попробуйте вот такой вариант
import ecdsa
import hashlib
import base58

# тут ваш ключ
str_private_key = "L3KijrvAsMuLaCaEMaj2LcHwRpp3Koxkab6ipX7s9LfewoEU69g6"

private_key = base58.b58decode_check(str_private_key)
private_key = private_key[1:]

signing_key = ecdsa.SigningKey.from_string(private_key, curve = ecdsa.SECP256k1)
verifying_key = signing_key.get_verifying_key()
public_key = bytes.fromhex("04") + verifying_key.to_string()

sha256_1 = hashlib.sha256(public_key)

ripemd160 = hashlib.new("ripemd160")
ripemd160.update(sha256_1.digest())

hashed_public_key = bytes.fromhex("00") + ripemd160.digest()
checksum_full = hashlib.sha256(hashlib.sha256(hashed_public_key).digest()).digest()
checksum = checksum_full[:4]
bin_addr = hashed_public_key + checksum

result_address = base58.b58encode(bin_addr)
print ("Bitcoin address ", result_address)


В этом видео https://www.youtube.com/watch?v=tX-XokHf_nI объясняют все детали.
Ответ написан
polym0rph
@polym0rph
Основатель Bits.media
Да, как указано выше из приватного ключа получаем публичный, а из него уже адрес биткоина. Вот тут подробно описано как из публичного ключа получить адрес.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы