Autors: SJORS PROVOOST

Avots: https://sprovoost.nl/2022/11/10/what-is-a-bitcoin-address/

Bitcoin adrese nav daļa no Bitcoin blokķēdes, bet ir marķieris, ko Bitcoin (maka) programmatūra izmanto, lai sazinātos, kur nosūtīt Bitcoins: vai nu uz noteiktu publisko atslēgu (P2PK), vai uz publiskās atslēgas jaucējkrānu (P2PKH). , skripta jauktais (P2SH), SegWit publiskās atslēgas (P2WPKH) vai SegWit skripta jaucējvārds (P2WSH). Adrese satur arī dažus metadatus par tās veidu.

(Tulkotāja piezīme: Bitcoin adrešu veidi turpinās palielināties, jo Bitcoin tīkls tiek jaunināts un skriptu rakstīšanas metodes tiek standartizētas. Faktiski, izņemot P2PK un P2PKH, iepriekš minētie adrešu veidi parādījās līdz ar Bitcoin sākotnējo izlaišanu, pārējie parādījās vēlāk. Tagad, pateicoties Taproot jauninājuma aktivizēšanai 2021. gadā, tips "P Bitcoin2TR ir pievienojis citu adresi".)

Bitcoin adreses izmanto unikālu numerācijas sistēmu, lai izteiktu iepriekš minētos maksājuma veidus. Šis raksts iepazīstinās ar šīm dažādajām numerācijas sistēmām un padziļināti analizēs vispārējo Bitcoin adrešu un bech32 adrešu priekšrocības. Mēs arī paskaidrosim, no kurienes radās (mazāk smaga) ievainojamība, kas iekļauta bech32 adreses pirmajā versijā, un kā tā tika novērsta. Visbeidzot, mēs pieskārāmies kvantu skaitļošanas ietekmei.

- Šis raksts ir izvilkums no manas jaunās grāmatas (Bitcoin: Unfinished Research) -

Vēsturiskais fons

Nosūtot kādam Bitcoin, jūs faktiski izveidojat darījumu ar vairākām ieejām un vismaz vienu izvadi. Rezultāti norāda, kurš var tērēt produkciju, izmantojot iebūvētos ierobežojumus (juridiskā izteiksmē tos sauc par “apgrūtinājumiem”, t.i., īpašuma īpašumtiesību nodošanas ierobežojumiem).

Vismazāk apgrūtinošā lieta ir ļaut ikvienam tērēt bitkoinu. Tā nav laba ideja, jo bitkoini tiks ātri nozagti. Tāpēc Bitcoin sākuma dienās lielākā daļa Bitcoin bloku ķēdē varēja izmantot tikai divus ierobežojumus: Pay-to-Public-Key (P2PK) vai Pay-to-Public-Key-Hash (P2PKH). Pirmo var saprast kā "tikai persona, kurai ir privātā atslēga, kas atbilst publiskajai atslēgai X, var tērēt Bitcoin", bet otro var saprast kā "tikai persona, kurai ir privātā atslēga, kas atbilst (slepenajai) publiskajai atslēgai (ar jaucējvērtību X), var tērēt Bitcoin".

Tajā laikā mēs varējām nosūtīt Bitcoin arī uz adresāta IP adresi, taču šī funkcija tika atspējota 2012. gadā. Lai to izmantotu, jums ir jāpieslēdzas adresāta IP adresei, jāpieprasa adresāta publiskā atslēga, un adresāts jums iedos publisko atslēgu1. Pēc tam jūsu maciņš izveido bitkoīnus ar P2PK skriptu.

Šī darbplūsma šodien varētu šķist dīvaina2, taču tā atbilst tolaik izplatītajam vienādranga lietojumprogrammu modelim, piemēram, Napster un Kazaa, kur jūs izveidojāt tiešu savienojumu ar citiem cilvēkiem un lejupielādējāt no viņiem saturu. Mūsdienās pastāv liela iespēja, ka jūs nezināt sava drauga IP adresi, un, ja viņi izmanto mobilo ierīci, viņu IP adrese var pat visu laiku mainīties. Lai gan jūs varat norādīt savam Bitcoin mezglam izveidot savienojumu tikai ar jūsu draugu mezgliem, parastajā gadījumā tas vienkārši izveidos savienojumu ar nejaušiem mezgliem, skatiet 2. nodaļu.

Biežāk sastopams darījums ir līdzīgs bankas pārskaitījumam. Adresāts dod jums adresi, un jūs nosūtāt bitcoinus uz šo adresi, tāpat kā jūs nosūtāt naudu uz bankas kontu. Sākotnēji kā adresi izmantojām P2PKH (P2PKH nozīme ir izskaidrota tālāk).

Tādā veidā transakcija netiek nosūtīta tieši adresātam, bet tiek pārraidīta caur visiem tīkla mezgliem, un galu galā to atklāj ieguves mezgli un iesaiņo blokā. Iespējams, ka jūsu darījuma partnera mezgls ir redzējis darījumu no vienādranga mezgla vai saņēmis bloku, kurā ir iekļauts darījums.

Trešā tirdzniecības metode ir ieguve, no raktuves iegūtās bloka atlīdzības nosūtīšana sev. Sākotnēji ieguves programmatūra tika iebūvēta Bitcoin programmatūrā. Tātad, tiklīdz jūs lejupielādējat Bitcoin programmatūru, jūsu Bitcoin programmatūra sāks ieguvi un pēc tam nosūtīs Bitcoins uz jūsu maku, un šajā gadījumā nav nepieciešams apmainīties ar adresēm. Visi šie bitkoini ir balstīti uz P2PK ierobežojumiem3.

Kāda ir adrese?

Adreses ir ērts veids, kā norādīt, kurš skripts ir jāiekļauj blokķēdē. Kā paskaidrojām iepriekš, skriptu mērķis ir noteikt ierobežojumus bitkoiniem, ļaujot tos tērēt tikai saņēmējam4. Pati adrese blokķēdē nepastāv, un adrese pat nesatur pilnu skriptu.

Diviem visbiežāk izmantotajiem skriptu veidiem adreses tiek izmantotas tikai Pay-to-Public-Key-Hash (P2PKH). Kad maciņš redz šāda veida adresi, tas ģenerē skriptu, kas pieprasa, lai ikvienam, kurš vēlas tērēt tajā esošos bitkoinus, ir jābūt šim jaucējam atbilstošā publiskā atslēga (faktiskais skripts ir sniegts 10. nodaļā). Tikai hash vērtība tiks publiskota, un publiskā atslēga paliks slepena, līdz saņēmējs iztērēs bitcoin.

P2PKH adrese sākas ar skaitli 1, kam seko publiskās atslēgas jaucējkods. Adrese tiek kodēta, izmantojot base58, kā parādīts šajā piemērā:

1HLoFgMiDL3hvACAfbkDUjcP9r9veUcqAF

Kas ir bāzes sistēma?

Lai saprastu base58, vispirms ir jāsaprot bāzes sistēmas pamatprincipi.

Ņemiet, piemēram, base10, domājiet par to kā par saviem 10 pirkstiem. Tātad, ja vēlaties izteikt skaitli 115 (1, 1, 5), jums vajadzētu izmantot rokas, lai veiktu trīs žestus, kas atbilst 1, 1 un 5. Kopš cilvēki izgudroja māla tabletes un papīru, šos skaitļus varēja pierakstīt arī ar pildspalvu, kas ir daudz ērtāk nekā ar pirkstiem. Tātad, base10 ir decimālā sistēma, kas izmanto 10 dažādus simbolus, lai izteiktu jebkuru skaitli (veselu skaitli), izmantojot dažādas šo 10 simbolu kombinācijas.

Turklāt ir daudz dažādu bāzes sistēmu. Piemēram, senie babilonieši izmantoja base60. Lai nolasītu mašīnkodu, mēs parasti izmantojam heksadecimālu, kas pazīstams arī kā base16 — izmantojot 16 rakstzīmes, ciparus no 0 līdz 9 un burtus A līdz F. Tikmēr datori mēdz iekšēji izmantot base2 (bināro skaitļu sistēmu), jo tranzistoriem ir tikai divi stāvokļi: ieslēgts un izslēgts. Tas nozīmē, ka jums ir nepieciešami tikai divi skaitļi, 0 un 1, lai paveiktu visu, un jūs varat tos izmantot, lai attēlotu jebkuru skaitli.

Satoshi Nakamoto iepazīstināja ar base58 sistēmu, kurā tiek izmantoti 58 dažādi simboli: skaitļi no 0 līdz 9 un lielākā daļa alfabēta mazo un lielo burtu. Tomēr daži burti un cipari, kurus lietotāji var viegli sajaukt un nepareizi identificēt, nav iekļauti, piemēram, cipars 0 un lielais burts O, lielais burts I un mazais burts l.

Vai esat kādreiz redzējis e-pasta pielikuma avota kodu? Daudz dīvainu skaitļu. Tas ir base64, un base58 ir dzimis, pamatojoties uz bas64. Tomēr base64 satur tādas rakstzīmes kā pasvītra, pluszīme, vienādības zīme un slīpsvītra. base58 noņem šīs rakstzīmes, padarot vizuālo pārbaudi vienkāršāku un efektīvāku lietošanai vietrāžos URL.

Base58 和 Pay-to-Public-Key-Hash

Kā tas ir saistīts ar P2PKH? P2PKH adrese sākas ar 1, kam seko base58 kodēta publiskās atslēgas jaucējkoda.

Šī ir ziņa, ko nosūtāt kādam citam, kad vēlaties no viņiem saņemt Bitcoin. Varat arī vienkārši nosūtīt viņiem 0x005 un savu publisko atslēgu. Varbūt viņi var veiksmīgi iztulkot 0x00, bet tas ir maz ticams.

Teorētiski jūs varat nosūtīt Bitcoin skriptu kādam citam heksadecimālā veidā (blockchain izmantotajā formātā), jo Bitcoin skripts ir bināra informācija. Blokķēdē šāds Bitcoin skripts būtībā saka: “Ja šai personai ir pareiza publiskās atslēgas hash un atbilstošā publiskā atslēga, jūs varat iztērēt šo bitkoina daudzumu. Ja vēlaties uzzināt vairāk par Bitcoin skripta darbību, skatiet 10.

Lai gan ir tik daudz veidu, kā izvēlēties, cilvēki parasti izvēlas standartizētu adreses formātu. Tas izskaidro, kāpēc visas tradicionālās Bitcoin adreses sākas ar 1 un ir līdzīga garuma.

Papildus Bitcoin adrešu nosūtīšanai, base58 var izmantot arī privāto atslēgu pārsūtīšanai. Šajā gadījumā sākuma simbols ir 5 (kas apzīmē 128 kā versijas baitu), kam seko privātā atslēga.

Agrāk lietotāji izmantoja papīra makus, kurus varēja izdrukāt. Ja tie tiktu droši ģenerēti bez aizmugures durvīm, papīra vienā pusē būtu virkne, kas sākas ar "1", bet otrā pusē - virkne, kas sākas ar "5", ar piezīmi, ka ir jāparāda tikai Bitcoin adrese un privātā atslēga nav jādala.

Ir arī adreses, kas sākas ar "3", kas nozīmē, ka bitkoini tiek bloķēti skripta jaucējvērtībā, nevis publiskās atslēgas jaucējvērtībā. Mēs iepazīstināsim ar Pay to Script Hash (P2SH) 10. nodaļā. Šādas adreses parasti ir vairāku zīmju adreses, taču tās var būt arī SegWit adreses6.

Lai gan base58 adreses darbojas labi, ir vietas uzlabojumiem. Tātad, mums ir bech32.

bech32 ir klāt

2017. gada martā Pieter Wuille runāja par jaunu adreses formātu, bech32. Bech32 ir izmantots kopš veiksmīgas SegWit aktivizēšanas. Kā norāda nosaukums, bech32 ir base32 sistēma. Tas ir, jūs varat izmantot gandrīz visus burtus un ciparus, izņemot dažus, kas ir viegli sajaukt.

Paskaidrojuma video: https://youtu.be/NqiN9VFE4CU

Lielākā atšķirība starp bech32 un base58 ir tā, ka tie nesajauc lielos un mazos burtus. Katrs burts parādās tikai vienu reizi (vai nu visi lielie, vai visi mazie), tāpēc to ir daudz vieglāk izrunāt. Precīza katra burta vai skaitļa un tā atbilstošās vērtības kartēšana ir fiksēta, taču diezgan patvaļīga: Q nozīmē tikai 0, P nozīmē tikai 1, un aiz tā nav pamata nozīmes.

- bech32 kartēšanas tabula. Piemēram, q apzīmē 0, 3 apzīmē 17 (1+16) -

Adrese bech327 sastāv no divām daļām, kas atdalītas ar "1", piemēram, bc1q9kdcd08adkhg35r4g6nwu8ae4nkmsgp9vy00gf.

Pirmā puse ir apzināti pašsaprotama, piemēram, “bc” (Bitcoin) vai “Inbc” (zibens tīklam Bitcoin). Vērtībām, kas apzīmētas ar burtiem "b" un "c", nav nozīmes. Tie pastāv tikai identifikācijai: "Sapratu, ja adrese sākas ar "bc", tas attiecas uz kriptovalūtu Bitcoin. Tomēr maki pārbauda, ​​vai šīs vērtības pastāv kā ticamības pārbaude, un tās arī tiek iekļautas kontrolsummā.

"1" ir tikai atdalīšanas rakstzīme un neatspoguļo nekādu vērtību. Ja skatāties uz bech32 kartēšanas tabulu, redzēsit, ka "1" nav iekļauts, kas nozīmē "izlaist".

Otrā puse sākas ar SegWit versijas numuru. Versiju 0 attēlo Q (bc1q…) (sk. 3. nodaļu). 1. versiju mēs saucam par Taproot (skatiet šīs grāmatas 4. daļu), kas apzīmēta ar “P” (bc1p…). SegWit versijas 0 gadījumā versijas numuram seko 20 vai 32 baiti, kas attiecīgi apzīmē publiskās atslēgas jaucējkodu vai skripta jaucējkodu. Garuma atšķirība ir tāpēc, ka SegWit izmanto skripta jaucēju SHA256 (32 baiti), nevis skripta RIPEMD160 jaucējkodu (20 baiti).

Sistēmā base58 skripta jaucējkods ir tāds pats kā publiskās atslēgas jaucējkods. Bet SegWit abiem ir dažādi garumi. Tāpēc, tikai aplūkojot adreses garumu, jūs varat uzreiz saprast, vai maksājat par skriptu vai publiskās atslēgas jaucējkodu. Taproot, starp citu, novērš šo garuma atšķirību, vēl vairāk uzlabojot privātumu.

Tāpēc bench32 īpašība ir tāda, ka adreses otrajā pusē tiek izmantotas tikai 32 rakstzīmes, un, izņemot to, tā daudz neatšķiras no base58. Redzot šo parakstu, jūs saprotat: "Aha, šī ir P2PKH adrese." Šajā gadījumā Pay-to-Witness-Public-Key-Hash (P2WPKH), kur "liecinieks" attiecas uz SegWit, bet galvenā ideja paliek nemainīga: ļaut cilvēkiem un datoriem atpazīt adreses veidu, pamatojoties uz īsu prefiksu vai publisku prefiksu a.

32 dimensiju šautriņu spēle

Tomēr vienkāršība nav vienīgā priekšrocība. Vēl viena priekšrocība ir kļūdu labošana vai vismaz kļūdu noteikšana.

Ja ievadāt nepareizu adresi, sliktākais scenārijs ir tāds, ka bitcoin nosūtāt uz nepareizu publiskās atslēgas hash. Kad adresāts mēģinās tērēt Bitcoin, viņš atklās, ka viņa publiskās atslēgas jaucējvērtība neatbilst blokķēdes prasībām, jo ​​sūtītājs iepriekš ievadīja nepareizu adresi. Bitkoīnus nekad nevar atgūt.

Par laimi base58 adresēm beigās ir kontrolsumma. Tādā veidā, ja ievadāt nepareizu adresi, kontrolsummas validācija adreses beigās neizdosies. Jūsu maks jūs brīdinās un atteiksies nosūtīt darījumu (blokķēde jūs nepasargās, bet jūsu maks gan). Tomēr, ja jums patiešām nepaveicas, jūs varat iegūt pareizo kontrolsummu pat tad, ja esat pieļāvis kļūdu.

Bech32 ir izstrādāts, lai izvairītos no šādām ekstremālām sakritībām. Turklāt Bech32 ne tikai pateiks, ka esat pieļāvis kļūdu, bet arī pateiks, kur esat pieļāvis kļūdu. Tas tiek darīts, ņemot visus adreses baitus un jaukšanu, izmantojot kādu sarežģītu matemātisko formulu. Pat ja jūs pieļaujat 4 kļūdas, Bech32 joprojām zinās, kur jūs pieļāvāt kļūdu un kāda ir faktiskā vērtība. Ja pieļausi vairāk par 4 kļūdām, Bech32 būs bezpalīdzīgs.

Izmantosim analoģiju, lai ilustrētu: jūs uz sienas uzzīmējat virkni apļu, kas nepārklājas. Katra apļa bullseye apzīmē pareizo vērtību, bet pārējie punkti aplī norāda ievades kļūdu. Ja esat prasmīgs šautriņu spēlētājs, lielāko daļu laika jūs trāpīsit īstenībā, kas nozīmē, ka zaudējat pareizo summu. Ja jūs nedaudz garām bullseye, bet joprojām nokļūstat aplī, tas nozīmē, ka ievadītā vērtība ir nedaudz novirzīta. Kļūdu noteikšana ir zināt, kad esat nokavējis bullseye. Kļūdu labošana ir šautriņu pārvietošana uz tuvāko bullseye.

Ideja šeit ir tāda, ka jūs vēlaties padarīt apli pēc iespējas lielāku, lai tajā ietilptu pat visneuzmanīgākais šautriņu spēlētājs, taču jūs nevēlaties tērēt pārāk daudz vietas. Tāpat mēs nevēlamies, lai Bitcoin adreses būtu simtiem rakstzīmju garas. Šī ir matemātiķa iecienītākā optimizācijas problēma.

2D sienas vietā bech32 ir kā 32D siena ar 32D hipersfēru. Kad jūs ierakstāt savu adresi, kaut kur šajā 32 dimensiju telpā ir neliela novirze, taču neatkarīgi no tā, kā tas izskatās, jūs joprojām atrodaties šajā hipersfērā. Šajā gadījumā jūsu maciņš zina, kas nogāja greizi, un var efektīvi novērst problēmu, kas saistīta ar Bitcoinu zaudēšanu, nosūtot uz nepareizu adresi8.

bech32 ievainojamības

2019. gadā cilvēki atklāja, ka, ja bech32 adreses pēdējā rakstzīme ir P un beigās nejauši ievadāt vienu vai vairākus Q, tā joprojām var izturēt kontrolsummas pārbaudi, un jūs nesaņemsit uzvedni, ka ievade ir nepareiza. Jūsu seifa programmatūra uzskatīs, ka ievadītā adrese ir pareiza un ļaus jums nosūtīt Bitcoin uz nepareizu adresi, padarot Bitcoin netērējamu, kā mēs paskaidrojām iepriekš.

Labā ziņa ir tā, ka bech32 tiek izmantots tikai SegWit, un SegWit adresēm ir garuma ierobežojums — tās var būt tikai 20 baiti vai 32 baiti. Par laimi, ja pēc adreses, kuras garums ir 20 vai 32 baiti, ievadīsit papildu Q, ievadītā adrese būs nederīga, jo tā pārsniedz garuma ierobežojumu. Jūsu maks to atklās un atteiksies nosūtīt Bitcoin. Cilvēki sākotnēji apsvēra Taproot līdzīgu adreses garuma ierobežojumu ieviešanu, taču tālāk aprakstītais risinājums novērš šo vajadzību. Elastīgs adreses garums palīdzēs mums nākotnē uzlabot Taproot.

ir dzimis bech32m

Lai novērstu bech32 ievainojamību, tika ierosināts jauns standarts ar nosaukumu bech32m9. bech32m patiesībā ir ļoti vienkārša izmaiņa: bech32 kontrolsummas formulai tiek pievienots papildu skaitlis, lai nodrošinātu, ka visas papildu rakstzīmes ģenerēs nederīgu kontrolsummu.

Šis jaunais standarts attiecas tikai uz Taproot adresēm un turpmākajām adresēm. SegWit adresēm nekas nemainās, jo tās jau ir aizsargātas ar 20 vai 32 baitu garuma ierobežojumu. Rakstīšanas laikā lielākā daļa maka programmatūras atbalsta jauno bech32m standartu.

Kas man lika atbrīvoties no satraukuma un iemīlēties kvantu skaitļošanā?

Starp citu, Pay-to-Public-Key-Hash (P2PKH) tiek uzskatīts par izturīgāku pret kvantu uzbrukumiem, jo ​​jums nav jāatklāj sava publiskā atslēga. Negatīvā puse ir tāda, ka hash aizņem vairāk vietas, taču tajā laikā tā nebija problēma, jo bloki ne tuvu nebija pilni.

Daudzi cilvēki uztraucas, ka kvantu datori galu galā iedragās Bitcoin kriptogrāfijas drošību, ļaujot kvantu hakeriem, kuri vēlas nozagt Bitcoin, izmantot šo iespēju. Ja viņiem izdosies nozagt miljoniem Bitcoin, tas pat var izraisīt tirgus sabrukumu.

Problēma ir tāda, ka, neskatoties uz plašo P2PKH ieviešanu, publiskās atslēgas no 5 miljoniem līdz 10 miljoniem bitkoinu ir kļuvušas publiskas. Ironiski, ņemot vērā to, ka tik daudz Bitcoin ir neaizsargāti pret kvantu uzlaušanu, nav jēgas mēģināt aizsargāt atlikušos. Pat ja jūsu Bitcoins netiek nozagts, jo tie izmanto P2PKH, tie neizbēgami kļūs nevērtīgi cenu sabrukuma dēļ.

Fiziķis Stepans Snigirevs un matemātiķis Endrjū Poelstra skaidro kvantu uzbrukuma iespējamību ar postošām sekām īstermiņā un iespējamos pretpasākumus divdaļīgā podkāstā ar nosaukumu (What Bitcoin Did)

Bloku vietas tagad kļūst ļoti maz, tāpēc, ja nav jāuzglabā publiskās atslēgas jaucējvārdi vērtīgā bloka vietā, lietotāji var ietaupīt maksu. Tāpēc jaunajā Taproot mīkstajā dakšā (skatiet šīs grāmatas 4. daļu) Bitcoin adreses atkal kļūst par P2PK10. Lūdzu, ņemiet vērā, ka Taproot adrešu izmantošana nav obligāta, tādēļ, ja nepiekrītat iepriekš minētajam pamatojumam, varat izvēlēties neizmantot Taproot.

zemsvītras piezīme

1. Lai apmierinātu koda “arheoloģijas” entuziastu interesi: sūtītāja mezglam būs UI dialoglodziņš, kurā tiks prasīts pārsūtīšanas summa un IP adrese. Funkcija StartTransfer() izveido tukšu čeka transakciju, kurā saņēmēja mezgla pārbaudītājs ievieto P2PK skriptu (kā scriptPubKey). Pēc tam OnReply2() ievieto summu, paraksta darījumu, atdod darījumu adresātam un pārraida to. pirmkods. ↩

2. Un tas ir nedrošs, ko arī Satoši Nakamoto atzina. ↩

3. Kāpēc Satoshi Nakamoto sākotnējā versija atbalstīja gan P2PK, gan P2PKH? Mēs neesam pārliecināti, kāpēc. P2PK maksājuma metode faktiski tiek izmantota tikai, lai apmaksātu IP adreses un maksātu bloka atlīdzību kalnračiem. Nevienam nav nepieciešama cilvēka mijiedarbība. Scenārijā, kas ietver cilvēku mijiedarbību, lietotāji izmanto P2PKH. Lietošanas adrese attiecas uz P2PKH, nevis uz P2PK. Automatizētajām sistēmām nav nepieciešams adrešu jēdziens, jo tās var apstrādāt arī skriptus un nav nepieciešami tādi jēdzieni kā P2PK adreses. ↩

4. Līdz šim skripts ir līdzīgs bankas kontam. Kā mēs redzēsim 10. nodaļā, skripti var darīt daudz vairāk, nekā tikai turēt līdzekļus to īpašniekiem. ↩

5. Heksadecimālo ciparu pāri ar prefiksu 0x bieži izmanto, lai attēlotu baitu, kas var attēlot 16 × 16 = 256 dažādas vērtības. Tāpēc 0x00 apzīmē baitu, un tā vērtība ir 0. ↩

6. Kā paskaidrots 3. nodaļā, SegWit parasti izmanto bech32 adreses. Tomēr pagāja ilgs laiks, līdz visi maki un biržas atbalstīja maksājumus uz bech32 adresēm. Lai turpinātu izmantot dažas no SegWit priekšrocībām, mēs ieviesām adreses veidu, kas no sūtītāja viedokļa izskatās kā parasts P2SH, taču zem pārsega satur SegWit burvību. Šāda veida adrese tiek saukta par P2SH-P2WPKH adresi. ↩

7.bech32 ierosināja BIP173. ↩

8. Agrīnie Ethereum maki neizmantoja kļūdu noteikšanu, jo to adrešu standartos nebija kontrolsummu. Lai gan EIP55 2016. gadā ieviesa kontrolsummas, ne visos makos tiek ieviesta kļūdu noteikšana. Pat vēl 2017. gadā cilvēki joprojām zaudēja Ether, jo adresēs bija drukas kļūdas. ↩

9.bech32m ierosināja BIP 350. ↩

10. Konkrētos iemeslus skatiet piezīmēs BIP 341. ↩