Към съдържанието
ДаретеEN

Ключове и адреси

Адрес

Адрес биткойн е кратък код с контролна сума за заключващ скрипт. Сравнете петте типа (1, 3, bc1q и bc1p) и вижте как се строи всеки.

От Dimitar Zurnov · Обновено на 4 ноември 2026
Адаптирано от Learn Me a Bitcoin на Greg Walker.

Биткойн адресът е кратък код, който означава заключващ скрипт. Повечето адреси носят 20-байтов хеш на публичен ключ или на скрипт, опакован в префикс за типа и контролна сума. Изпращате адрес на някого, за да ви плати. Портфейлът на платеца превръща адреса обратно в заключващия скрипт, който поставя монетите под ваш контрол.

Адресите са удобство за хората. Те никога не се появяват в трансакция или в блок, защото веригата записва самия заключващ скрипт. Адресът има значение само когато изпращате или получавате, и е това, което копирате, поставяте и четете на глас. За кратката дефиниция вижте адрес.

Защо ползваме адреси вместо скриптове?

Заключващият скрипт е точен, но трудно се споделя. Този P2PKH скрипт е 25 байта, или 50 шестнадесетични цифри:

76a91404a621a724b8e064809d8fb22a65c2d37d01a01888ac

Адресът за същия скрипт е 33 знака и се чете като една дума:

1RainRzqJtJxHTngafpCejDLfYq2y4KBc

И двата заключват монетите към един и същ 20-байтов хеш. Адресът добавя три неща. Има контролна сума, която хваща почти всяка грешка при писане. Използва Base58 за повечето типове, а Base58 пропуска 0, O, I и l, за да се бъркат знаците по-трудно. И първият му знак показва какъв вид заключване стои зад него.

Кои са петте типа адреси?

Всеки тип съответства на един стандартен заключващ скрипт. Само често срещаните скриптове имат собствен формат на адрес. Някои скриптове, като голия multisig, нямат адрес, затова платецът трябва да ги изпрати като суров скрипт.

Започва с Тип Кодиране Дължина Заключващ скрипт
1 Плащане към хеш на публичен ключ (P2PKH) Base58Check 33 или 34 P2PKH
3 Плащане към хеш на скрипт (P2SH) Base58Check 34 P2SH
bc1q Плащане към witness хеш на публичен ключ (P2WPKH) Bech32 42 P2WPKH
bc1q Плащане към witness хеш на скрипт (P2WSH) Bech32 62 P2WSH
bc1p Плащане към Taproot (P2TR) Bech32m 62 P2TR

Всеки адрес на тази страница е примерен. Личният ключ на примерния P2TR адрес е публикуван, така че всеки може да похарчи монетите, изпратени до него. Не изпращайте монети към нито един от тях.

Как се прави P2PKH адрес?

Адрес, който започва с 1, съдържа хеш на публичен ключ и съответства на P2PKH скрипт. Примерният адрес 14ZKbhYsSLms6mh6t2QnhAqHApUNfrCJFi има заключващ скрипт:

OP_DUP
OP_HASH160
OP_PUSHBYTES_20
27053692a16ee881fd9fc0478f86e0c8721bd2ee
OP_EQUALVERIFY
OP_CHECKSIG

В шестнадесетичен вид това е 76a91427053692a16ee881fd9fc0478f86e0c8721bd2ee88ac. За да създадете адреса, минавате през четири стъпки.

  1. Вземете 20-байтовия хеш на публичния ключ, т.е. HASH160 от него.
  2. Сложете отпред версийния байт 00. Така първият знак става 1.
  3. Добавете 4-байтова контролна сума. Тя е първите 4 байта от двойния SHA-256 на данните от стъпки 1 и 2, тук 3d6fc001.
  4. Кодирайте 25-те байта с Base58. Резултатът е адресът.
Четири стъпки превръщат 20-байтовия хеш на публичния ключ в P2PKH адрес: версиен байт, контролна сума и Base58 кодиране. 1. хеш на публичния ключ, 20 байта 27053692a16ee881fd9f c0478f86e0c8721bd2ee + версиен байт 00 2. версиен байт пред хеша 00 27053692a16ee881fd9f c0478f86e0c8721bd2ee + контролна сума 3. добавена 4-байтова контролна сума 00 27053692a16ee881fd9f c0478f86e0c8721bd2ee 3d6fc001 Base58 кодиране 4. P2PKH адресът 14ZKbhYsSLms6mh6t 2QnhAqHApUNfrCJFi
Примерът от този раздел. Частният му ключ е неизвестен, затова не изпращайте монети към него.

Всеки водещ нулев байт в суровите данни се превръща в 1 при Base58. Затова версийният байт дава префикса 1.

Какво е P2SH адрес?

Адрес, който започва с 3, съдържа хеш на скрипт и съответства на P2SH скрипт. Примерът 3Pxiq6fzWxbiS52L7xhWEtLcGuAkDoqdRY носи 20-байтовия хеш f44b2743c5c24127ee03674d07941fa04cf52c97. Този хеш е HASH160 на redeem скрипт, а не на публичен ключ. Заключващият скрипт е a914f44b2743c5c24127ee03674d07941fa04cf52c9787.

Версийният байт тук е 05, а контролната сума е 3ffd9bbf. P2SH е бил въведен през 2012 г. с BIP 16. Той позволява на платеца да заключи монетите към произволен скрипт, например към правило с няколко подписа, и все пак да изпрати до кратък адрес. Харчещият разкрива redeem скрипта, когато ги похарчи.

Какво са адресите bc1q?

Адресите bc1q ползват Bech32, дефиниран в BIP 173. Bech32 е изцяло с малки букви, азбуката му има 32 знака и в края носи контролна сума. Знакът след разделителя 1 е версията на witness. q означава версия 0, а p означава версия 1.

Има два типа адреси bc1q, а дължината им ги различава.

  • P2WPKH, 42 знака. Примерът bc1q8vds4x58zhan6v820yu7zewslkwqsv5puxp5u3 кодира 20-байтовия хеш 3b1b0a9a8715fb3d30ea7939e165d0fd9c083281. Заключващият му скрипт е 0014, следван от този хеш.
  • P2WSH, 62 знака. Примерът bc1qcd3mpagdmpnkmvknmtp2w89h69c39kwtvct9v6a5mt7wpjqr35rqfvqmnj кодира 32-байтовия SHA-256 на witness скрипта. Заключващият му скрипт е 0020, следван от този хеш.

Адресите SegWit са били въведени с активирането на SegWit на блок 481,824 през август 2017 г. Харченето на монети от SegWit изход струва по-малко, защото подписът стои в witness, който се брои с отстъпка.

Какво са адресите bc1p?

Адресът bc1p съответства на P2TR скрипт, тоест на Taproot изход. Кодира се с Bech32m, който BIP 350 дефинира като малка корекция на Bech32. Адресите Taproot са дълги 62 знака, както и P2WSH.

Този пример идва от BIP 86, така че личният му ключ е публичен: bc1p5cyxnuxmeuwuvkwfem96lqzszd02n6xdcjrs20cac6yqjjwudpxqkedrcr. Заключващият му скрипт е:

5120a60869f0dbcf1dc659c9cecbaf8050135ea9e8cdc487053f1dc6880949dc684c

51 е OP_1, версията на witness. 20 е push на 32 байта, а тези 32 байта са изходният ключ в x-only формат. Това не е обикновен публичен ключ. Той е ключ, вече променен по правилата на Taproot, така че адресът не разкрива ключа, от който сте тръгнали. Taproot е бил активиран на блок 709,632 през ноември 2021 г. Вижте Taproot как се получава изходният ключ.

Как портфейлът чете адрес?

Когато платите на адрес, портфейлът ви върши три неща. Декодира адреса и проверява контролната сума. Чете префикса или версията на witness, за да открие типа. После строи съответстващия заключващ скрипт от хеша в адреса. Адрес 1 става P2PKH скрипт, а адрес bc1p става P2TR скрипт.

Портфейлът никога не се нуждае от публичния ключ, само от хеша или ключа в адреса. Затова някой може да ви изпрати монети още преди да сте ползвали адреса.

Портфейлите избират типа вместо вас. Много съвременни портфейли ползват bc1 адреси по подразбиране, а повечето могат да покажат или да платят и по-стар адрес 1 или 3. Типът на адреса влияе на таксата, която ще платите по-късно при харчене, затова го проверете, преди да копирате адреса. За избора вижте портфейлите.

Адресите в тестовата мрежа различни ли са?

Да. Testnet има свои префикси, така че адрес от тестовата мрежа не може да се изпрати по грешка в основната. Адрес P2PKH в testnet започва с m или n (версийният байт е 6f). Адрес P2SH в testnet започва с 2 (версийният байт е c4). Bech32 адресите в тестовата мрежа ползват префикса tb1 вместо bc1.

Адресът същият ли е като публичния ключ?

Не съвсем. В повечето случаи адресът кодира хеш на публичен ключ, а в други кодира хеш на скрипт или изходния ключ на Taproot. По-добре е да го мислите като инструкция. Той казва на портфейла какъв вид заключване да постави и какви данни да сложи вътре.

Това има значение, когато строите трансакции на ръка. Суровата трансакция носи заключващия скрипт, така че за нея адрес не ви трябва. Адресът е нужен само за да запишете дестинация за човек или за портфейл. За ключа зад адреса прочетете публичен ключ и хеш на публичен ключ.

Къде можете да видите адрес във веригата?

Explore21 има страница за всеки адрес във веригата: /address/, следван от самия адрес. Страницата показва изходите, заключени към този адрес, и трансакциите, които са ги похарчили. Използвайте я, за да проверите плащане, преди да разчитате на него.

Какво да запомните за адресите?

  • Адресът е кратък код с контролна сума за заключващ скрипт.
  • Първият знак или версията на witness показват типа.
  • Във веригата се записва само заключващият скрипт, никога адресът.
  • Примерните адреси от тази страница са за учене. Никога не изпращайте монети към тях.

Следващо прочетете подпис, за да видите как ключът доказва, че може да отключи заключването, което адресът представлява.

В този раздел: Ключове и адреси

Целият курс „Биткойн от нулата“

Нещо не изглежда наред? Кажете ни