1. Bitcoin fons
Bitcoin izmanto skaidrai naudai līdzīgu darījumu modeli (skaidras naudas sistēmu), un tā maksāšanas metode ir balstīta uz modeli, ko sauc par UTXO, kas atšķiras no tradicionālā uz konta bilanci balstītā modeļa.

Piemēram: bankas konta uzskaites modeļa procesā, kad A pārskaita 100 juaņas B, banka reģistrēs trīs soļus, kas veido darījuma procesu. Vispirms no A konta ir jāatskaita 100 juaņas. Šīs darbības ieraksta ID ir tid1. Otrais solis ir iemaksāt 100 juaņas B kontā. Šīs darbības ieraksta ID ir tid2. Trešais solis ir reģistrēt pārsūtīšanas ierakstu, kas saista tid1 un tid2, norādot, ka konts A samazinās par 100 juaņām un konts B palielinās par 100 juaņām.
Tādā veidā tiek reģistrēta pārsūtīšanas saistība starp A un B, un to var jautāt un izsekot nākotnē. Tagad mēs izskaidrosim Bitcoin maksājuma veidu, ieviešot UTXO un maksājuma modeli.
UTXO
Bitcoin blokķēdē visi atlikumi tiek glabāti sarakstā ar nosaukumu "Neiztērētie darījumu rezultāti" (UTXO). Katrs UTXO satur noteiktu Bitcoin daudzumu, informāciju par īpašnieku un pieejamības statusu, līdzīgi kā čekā ar turētāja vārdu. Šo čeku var parakstīt un nodot kādam citam.
Adreses atlikums ir vienāds ar visu tās UTXO summu. Katras adreses pašreizējo bilanci var iegūt, šķērsojot UTXO sarakstu, un šo UTXO summa atspoguļo visu Bitcoin pašreizējo kopējo piedāvājumu.

Bitcoin transakciju struktūrā katrs darījums satur ievades un izejas Katra ievade ir atsauce uz esošu UTXO, un katra izvade norāda jaunu saņemšanas adresi un summu. Kad darījums ir izveidots, ar ievadi saistītais UTXO tiek īslaicīgi bloķēts, lai novērstu atkārtotu izmantošanu, un saistītais UTXO statuss mainīsies tikai pēc tam, kad tas būs veiksmīgi iesaiņots un apstiprināts kalnraču.
Konkrēti, ievade UTXO tiek noņemta, un izvade ģenerē jaunu UTXO un pievieno to sarakstam. Tas ir līdzīgi jauna čeka ģenerēšanai pēc vecā čeka derīguma termiņa beigām, un jaunā čeka īpašumtiesības tiek nodotas jaunā īpašnieka vārdam.
Jāuzsver, ka katru UTXO transakcijā var izmantot tikai vienu reizi. Pēc lietošanas tas tiek neatgriezeniski noņemts, un tiek izveidota jauna izvade, kas tiek pievienota UTXO sarakstam. UTXO saraksts tiek pastāvīgi atjaunināts, jo tiek izveidoti jauni bloki. Analizējot darījumu vēsturi, var rekonstruēt UTXO saraksta stāvokli jebkurā noteiktā laika posmā.
Turklāt darījuma kopējā ievades summa parasti nedaudz pārsniedz kopējo produkcijas apjomu, un šī starpība kļūst par darījuma maksu un kalpo kā stimuls K darbiniekiem. Maksa par darījumu ir proporcionāla darījuma sarežģītībai, tāpēc darījumam ar vairāk ievades un izvades parasti būs nepieciešamas lielākas tīkla maksas.

Lai skaidrāk izprastu Bitcoin darījuma struktūru, mēs varam uzzināt vairāk, izmantojot šādu piemēru, kur "vin" apzīmē darījuma ievadi un "vout" apzīmē darījuma izvadi. Bitcoin darījumos tiek izmantota ievades un izvades pieeja, nevis tradicionālais konta bilances modelis.

Mēs varam nejauši atlasīt darījuma ierakstu vietnē blockchain.com, ko analizēt. Nākamajā attēlā parādīts hash ID
Darījums par 0627052b6f28912f2703066a912ea577f2ce4da4caa5a5fbd8a57286c345c2f2. Tajā ir viena ieeja un divas izejas.

Izmantojot bitcoin-cli komandas getrawtransaction un decoderawtransaction, mēs varam pārbaudīt iepriekš minētā darījuma pamatā esošo struktūru:

Bitcoin tīklā katra darījuma izvade satur divus galvenos informācijas elementus: adresi (publiskās atslēgas hash) un summu (Bitcoins).
Ja darījuma izvade nav izmantota citu transakciju ievadē, tad šo izvadi sauc par neiztērēto transakcijas izvadi (UTXO). Ikvienam, kam pieder UTXO publiskajai atslēgai atbilstošā privātā atslēga, ir tiesības izmantot (tas ir, tērēt) šo UTXO.
Apskatīsim informāciju "vin" iepriekš minētajā kodā. Tas norāda, ka UTXO, kas iztērēts šim darījumam, nāk no cita darījuma 0. izvades (tā ID ir 7957a35fe64f80d234d76d83a2a8f1a0d8149a41df8a996f8f8). no 0).
Šī UTXO summu (piemēram, 0,1 Bitcoin) varam uzzināt no darījumu vēstures. Tāpēc šajā darījumā šis lietotājs iztērēja 0,1 Bitcoin, un vērtība 0,1 nav skaidri jāieraksta darījumā, bet tiek iegūta, vaicājot UTXO informāciju.
Šī darījuma "vout" satur divas izejas, kas pārstāv divus jaunus UTXO, kas atbilst jaunajam bilancei un īpašniekam. Šie jaunie UTXO pastāvēs, kamēr cits darījums tos patērēs kā ievadi.

Maksājuma modelis
Lai labāk izprastu Bitcoin tīkla maksājumu modeli, mēs izmantojam piemēru, lai iepazīstinātu ar n Bitcoin summas apmaksas procesu, ko A maksā B. Zemāk esošajā attēlā parādīts process, kurā lietotājs A nosūta 3 Bitcoins lietotājam B.

Lietotājam A, pirmkārt, ir jānosaka visu tam piederošo UTXO kopa, tas ir, visi Bitcoin, kurus lietotājs A var kontrolēt;
A izvēlas vienu vai vairākus UTXO no šīs kopas kā darījuma ievadi. Šo ievades summu summa ir m (2+0,8+0,5=3,3 BTC), kas ir lielāka par nepieciešamo summu n (3 BTC). būt apmaksātam;
Lietotājs A iestata divus darījuma izvadus, vienu izvadi maksā uz B adresi, summa ir n (3 BTC), bet otru izvadi maksā uz vienu no paša A maiņas adresēm, summa ir mn-maksa (3,3-3). - 0,001 =0,299 BTC). Lietotāja maciņš parasti sastāv no vairākām adresēm. Parasti katra adrese tiek izmantota tikai vienu reizi, un pēc noklusējuma izmaiņas tiek atgrieztas jaunā adresē.
Kad darbinieks K iesaiņo un apstiprinās darījumu blokķēdē, saņēmējs B varēs iegūt informāciju par darījumu.

Tā kā katra bloka lielums ir ierobežots (parasti aptuveni 1 MB), K darbinieki piešķir prioritāti darījumiem ar augstu darījumu likmi (fee_rate=fee/size), lai iegūtu visaugstāko maksas atdevi.
Mēs varam pārbaudīt K ieguves darījumu ātrumu reāllaikā neapstiprināto darījumu pūlā (mempool). Ja vēlamies saņemt apstiprinājumu pēc iespējas ātrāk pārsūtīšanas procesa laikā, mēs varam izvēlēties Augstu prioritāti vai pielāgot piemērotu darījumu likmi.

2. Cong numerācija un izsekošana
Kopējais Bitcoin piedāvājums ir 21 miljons, un katrs Bitcoin satur 10^8 Satoshi (Sat). Tātad Bitcoin tīklā mums kopā ir 21 miljons * 10^8 satoshi.
Protokols Ordinals izmanto unikālu katra Satoshi numurēšanas veidu, lai nodrošinātu tā unikalitāti un spēju precīzi izsekot kontam, kuram tie pieder. Turklāt tiks vienkāršota satoshi retumu klasifikācija.
Satoshi numurs
Saskaņā ar Ordinals protokolu satoshi ir numurēti atbilstoši to rakšanas secībai. Zemāk esošajā attēlā ir attēlots 0. blokā iegūtais 0. Satoshi.

Ir daudz veidu, kā izteikt Satoshi:
Vesela skaitļa simbols: piemēram, 2099994106992659, kas apzīmē sērijas numuru, kas piešķirts satoshi saskaņā ar ieguves pasūtījumu.
Decimālzīme: piemēram, 3891094.16797, pirmais cipars norāda bloka augstumu, kurā tika iegūts Satoshi, un otrais cipars norāda Satoshi numuru blokā.
Grāda simbols: piemēram, 3°111094′214″16797‴, pirmais cipars ir periods, kas numurēts, sākot no 0, otrais cipars ir uz pusi sadalīšanas laikmeta bloka indekss, bet trešais cipars ir bloka indekss grūtību laikā. pielāgošanas periods , pēdējais cipars ir sat indekss blokā.
Procentu simbols: piemēram, 99.99971949060254% norāda Satoshi pozīciju Bitcoin piedāvājumā, izteiktu procentos.
Vārds: Piemēram, Satoshi. Nosaukums, kas kodē kārtas numuru, izmantojot rakstzīmes no a līdz z.

Ņemsim piemēru, lai izskaidrotu, kā numurēt tikko iegūtos Bitcoins. Novērojot Bitcoin blokķēdes 795952. bloku, tajā ir transakcija ar nosaukumu "Tx 3a1f...b177", kas reģistrē K darbinieka atlīdzību (monētu bāzes darījums). Šis darījums ietver no jauna iegūtos Bitcoins, kas tiek izmantoti kā atlīdzība K darbiniekiem, kā arī apstrādes maksas, ko darījuma iniciators maksā K darbiniekiem.
Aplūkojot ievades daļu, mēs varam redzēt UTXO ID, kas sastāv no nulles virknes un bloka augstuma. Un izvades sadaļā mēs varam redzēt adreses, kas saņēma šīs atlīdzības un maksas, kā arī to kopējo summu.

Ja mēs sīkāk pārbaudām daļu izvadi K darbiniekiem, mēs varam redzēt adrešu, summu un ietverto satoshi sadalījumu. Kā minēts iepriekš, tie ietver K ieguves atlīdzības un apstrādes maksas.
Tostarp zaļā SAT numura informācija 1941220000000000–1941220625000000 ir jaunais satoshi, kas ģenerēts, iegūstot K atlīdzības, un atlikušie 712 satoshi ieraksti atbilst visām apstrādes maksām blokā.

Mēs varam pārbaudīt numuru Sat 1941220000000000.
Tā bloka numurs ir 795952, un decimālzīme (decimāldaļa) ir 795952.0, kas nozīmē, ka šī Satoshi ieguves bloka augstums ir 795952, Satoshi skaits šajā blokā ir 0, un sekojošais retums ir atzīmēts kā neparasts , mēs sīkāk iepazīstinās ar to nākamajās sadaļās.

Cong
Bitcoin transakciju modelī tiek izmantots UTXO (Unspent Transaction Output) modelis, kas nozīmē, ka katru Bitcoin (BTC) var izsekot līdz tā avotam. Ilustrēsim šo procesu ar piemēru:
Pieņemsim, ka lietotājs A saņēma atlīdzību, iegūstot K, kas satur Bitcoins no 100. Satoshi līdz 110. Satoshi. Šie Bitcoins tiek glabāti vienā un tajā pašā UTXO (Neiztērētā darījuma izvade) ir adc123.
Tagad, kad lietotājs A vēlas maksāt lietotājam B 5 satoshis, viņš izvēlas izmantot UTXO ar ID abc123 kā darījuma ievadi. Šis darījums nosūtīs 5 satoshi lietotājam B un atgriezīs 5 satoshis kā izmaiņas lietotājam A.
Šie divi 5 satoshi kļūs par veselumu, bet tiks saglabāti divos dažādos UTXO, piemēram, abc456 un abc789.
Iepriekš minētais UTXO id un satoshi skaits ir parādīti tikai kā piemēri. Faktiskās situācijās minimālais nosūtīto satoshi skaits ir ierobežots līdz 546, un UTXO id nav izteikts šajā formā.

Iepriekš minētajā darījumā lietotāja A 10 satoshi aprites ceļš ir:
Mining K ražo 10 satoshi, numurēti [100, 110). Tas nozīmē, ka 100. līdz 109. satoshi tiek glabāti UTXO ar id abc123, un tā īpašnieks ir lietotājs A.
Kad A veic pārsūtīšanu, 10 satoshi tiek sadalīti divās daļās, no kurām katra ir 5 satoshi. Šeit tiek pieņemts princips "pirmais iekšā, pirmais ārā", tas ir, Satoshi skaitļu secība tiek noteikta atbilstoši to indeksam darījuma izvadē.
Pieņemot, ka izvades secība ir vispirms lietotājs A, pēc tam lietotājs B, tad lietotāja A atlikušo 5 satoshi kārtas numurs ir [100, 105), kas tiek saglabāts UTXO ar id abc456, un lietotāja B 5 satoshis ir secība. numurs ir [105, 110) un tiek saglabāts UTXO ar id abc789.

Retums (Reti Satoshi)
Kā Ordinals protokola papildinājums satoshi retumu var definēt, pamatojoties uz secību, kādā tie tiek iegūti. Tā rezultātā daži īpaši satoshi ar dažādiem retumiem. Šeit ir dažādu Satoshi retuma līmeņi:
kopīgs Kopējais līmenis: jebkurš satoshi, izņemot bloka pirmo satoshi (kopējais piedāvājums ir 2100 triljoni)
neparasts Lielisks līmenis: katra bloka pirmais satoshi (kopējais piedāvājums ir 6929999)
reti: katra grūtības pielāgošanās perioda pirmais satoshi (kopējais piedāvājums ir 3437)
episkā: pirmais Satoshi pēc katras sadalīšanas uz pusēm (kopējais piedāvājums ir 32)
leģendārais: pirmais satoshi katrā ciklā (kopējais piedāvājums ir 5)
mītisks: pirmais Satoshi ģenēzes blokā (kopējais piedāvājums ir 1)
Šī reto satoshi koncepcija var pievienot Bitcoin ekosistēmai lielāku interesi un vērtību. Dažādu retumu satoshi var būt ar dažādām vērtībām tirgū, piesaistot kolekcionārus un investorus.

3. Uzrakstīšanas metode
Viena no būtiskām atšķirībām starp Ordinals un citiem ne-Bitcoin ķēdes NFT ir tā, ka to metadati netiek glabāti noteiktā vietā.
Tā vietā šie metadati ir iegulti darījuma liecinieka datos (liecinieka laukā), tāpēc mēs tos saucam par “uzrakstu”, jo dati ir “iegravēti” bitos kā uzraksts noteiktā monētas darījuma daļā , šie dati ir pievienoti konkrētam Satoshi.
Šis ierakstīšanas process tiek īstenots, izmantojot Segregated Witness (SegWit) un Pay-to-Taproot (P2TR). Tas ietver divus posmus: jebkura satura (piemēram, teksta, attēlu vai video) iegravēšana norādītajā Satoshi.
Tālāk mēs detalizēti aprakstīsim citu, tiešāku glabāšanas metodi OP_RETURN, un paskaidrosim, kāpēc tā nedarbojas ar uzrakstiem. Tajā pašā laikā mēs izpētīsim Segwit un Pay-to-Taproot jēdzienus un to lomu Inscription. Visbeidzot, mēs iedziļināsimies uzrakstīšanas metodēs.

OP_RETURE
Bitcoin Core klienta versijā 0.9 beidzot tika panākts kompromiss, izmantojot RETURN operatoru. RETURN ļauj izstrādātājiem transakcijas izvadei pievienot 80 baitus nemaksājumu datu. Atšķirībā no pseidomaksājumiem, RETURN izveido izvadi, kas ir nepārprotami pārbaudāma, bet nav iztērējama un kas nav jāuzglabā UTXO (Neiztērēto darījumu izvades) kolekcijā. )
RETURN izvadi tiek ierakstīti blokķēdē, kas aizņems vietu diskā un izraisīs blokķēdes lieluma palielināšanos, taču tie neaizņems UTXO kolekciju un tāpēc neizraisīs UTXO kolekcijas uzpūšanos, kā arī nepalielinās dārgās atmiņas izmaksas. no pilna mezgla.
Lai gan OP_RETURN ir metode informācijas glabāšanai tieši Bitcoin blokķēdē, tā arī rada dažas problēmas. Pirmkārt, OP_RETURN var uzglabāt tikai 80 baitus datu, kas acīmredzami nav pietiekami situācijās, kad jāuzglabā vairāk datu.
Otrkārt, OP_RETURN dati tiek saglabāti darījuma izvadē, lai gan tie neaizņems UTXO kolekciju, tie aizņems blokķēdes krātuves vietu, izraisot blokķēdes lieluma palielināšanos.
Visbeidzot, izmantojot OP_RETURN, tiek palielinātas transakcijas maksas, jo ir jāmaksā vairāk, lai reģistrētu šos darījumus.

Atdalīts liecinieks
Salīdzinot ar iepriekšējām metodēm, SegWit piedāvā jaunu risinājumu, kas var atrisināt iepriekš minētās problēmas.
SegWit ir galvenais Bitcoin protokola jauninājums. To pirmo reizi ierosināja Bitcoin galvenais izstrādātājs Pieter Wuille 2015. gadā un beidzot tika oficiāli pieņemts 0.16.0 versijā 2017. gadā.
Segregated Witness (SegWit) “Segregated” nozīmē nošķiršanu vai izolāciju, savukārt “liecinieks” ietver ar darījumu saistītos paraksta datus. Tāpēc SegWit pamatkoncepcija ir atdalīt noteiktus darījuma paraksta datus (sauktus arī par liecinieku datiem) no faktiskajiem darījumu datiem.
Galvenais ieguvums, atdalot paraksta datus no darījumu datiem, ir Bitcoin blokos saglabāto datu apjoma samazināšana. Tādējādi blokā ir pieejama vairāk jaudas, lai veiktu vairāk darījumu, kas arī nozīmē, ka tīkls spēj apstrādāt vairāk darījumu un lietotāji maksā mazākas darījumu maksas.
Tehniski tas nozīmē, ka skripta paraksta dati (scriptSig), kas sākotnēji bija ietverti bāzes bloka struktūrā, tiek pārvietoti uz jaunu datu struktūru. Validācijas mezgli un K darbinieki arī pārbaudīs skripta parakstu šajā jaunajā datu struktūrā, lai nodrošinātu darījuma derīgumu.

SegWit jauninājums ievieš arī jaunu liecinieku datu lauku, lai uzlabotu privātumu un efektivitāti. Lai gan liecinieku dati nav īpaši paredzēti vienkārša teksta darījumu datu glabāšanai, tie faktiski dod mums iespēju saglabāt tādas lietas kā uzrakstu metadati.
Mēs izmantojam šādu attēlu, lai skaidrāk izprastu nošķirto liecinieku:

Mieņsakne
P2TR ir Bitcoin transakciju izvades veids, kas tika ieviests 2021. gada Taproot jauninājumā, kas ļauj privātāk uzglabāt dažādus darījumu nosacījumus blokķēdē.
Šajā arhitektūrā P2TR ir izšķiroša loma Ordinals datu ierakstīšanā. Uzraksts faktiski iegulst konkrētus datus Bitcoin darījumos, un Taproot jauninājumi, īpaši P2TR, padara šo datu iegulšanu elastīgāku un ekonomiskāku.
Pirmkārt, pateicoties Taproot komandu kodu uzglabāšanas metodei, Taproot komandu ceļā varam glabāt uzrakstu datus, un šiem komandu kodiem gandrīz nav satura ierobežojumu. Tajā pašā laikā mēs varam baudīt arī liecinieku datu atlaides, padarot uzrakstu datu glabāšanu salīdzinoši ekonomisku.
Tomēr, tā kā Taproot instrukcijas var izmantot tikai no esošās Taproot produkcijas, uzrakstu glabāšanai tiek izmantots divpakāpju apstiprināšanas/atklāšanas process. Pirmkārt, apņemšanās darījumā tiek izveidota Taproot izvade, kas sola saturēt uzraksta datus.

Pēc tam atklāšanas darījumā tiek patērēta izpildes darījuma izveidotā izvade, tādējādi ķēdē atklājot uzraksta saturu.
Šī pieeja ievērojami samazina resursu izmantošanu. Ja P2TR netiek izmantots, liecinieku dati tiks saglabāti transakcijas izvadē, kamēr šī izvade netiek patērēta, liecinieka dati vienmēr pastāvēs UTXO komplektā.
Turpretim, ja tiek izmantots P2TR, liecinieka dati neparādīsies darījumā, kas ģenerēts fiksācijas fāzes laikā, un tāpēc netiks ierakstīts UTXO komplektā. Tikai tad, kad šis UTXO tiks patērēts, liecinieku dati parādīsies darījuma ievadē atklāšanas fāzē.
P2TR ļauj rakstīt sākotnējos datus Bitcoin blokķēdē, taču tas ne vienmēr aizņem vietu, kas koncentrēta UTXO. Tā kā UTXO kopas uzturēšana/modifikācija prasa vairāk resursu, šī metode var ievērojami ietaupīt resursus.

uzraksts
Protokols Ordinals paplašina rakstīšanas lieluma ierobežojumu Bitcoin tīklā, izmantojot SegWit, lai saglabātu vienkārša teksta saturu lieciniekā, ļaujot metadatu glabāšanai līdz 4 MB.
Taproot vienkāršo patvaļīgu liecinieku datu glabāšanas procesu Bitcoin darījumos, ļaujot Ordinals izstrādātājam Keisijam Rodarmoram atkārtoti izmantot vecos opkodus (OP_FALSE, OP_IF, OP_PUSH), lai izveidotu tā sauktās "aploksnes" jebkādas informācijas glabāšanai, ko sauc par "Uzrakstu".
Uzraksta liešanas process sastāv no šādiem diviem posmiem:
Pirmkārt, apņemšanās darījumā ir jāizveido solījums, kas norāda uz Taproot izvadi, kurā ir uzraksta saturs. Šīs krātuves formāts ir Taproot, iepriekšējā darījuma izvadei jābūt P2TR (Pay-To-Taproot), un noteikta formāta saturs ir iegults Taproot liecinieka skriptā.
Pirmkārt, virkne "ordn" tiek uzspiesta uz kaudzes, lai skaidri noteiktu uzraksta mērķi. Pēc tam izmantojiet OP_PUSH 1, lai norādītu, ka nākamajā nosūtījumā ir satura veids, un OP_PUSH 0, lai norādītu, ka nākamie datu nosūtījumi satur pašu saturu.
Tā kā viens no Taproot ierobežojumiem ir tāds, ka viena datu nosūtīšana nedrīkst pārsniegt 520 baitus, lai saglabātu lielus uzrakstus, ir nepieciešami vairāki datu nosūtīšanas gadījumi. Šobrīd uzrakstu dati ir saistīti ar darījuma izvades neiztērēto darījumu izvadi (UTXO), taču tie vēl nav publiskoti.

Otrkārt, atklāšanas darījumā izveidotā produkcija ir jāpatērē. Šajā posmā transakcija tiek uzsākta, par ievadi ņemot UTXO, kas atbilst uzrakstam. Šobrīd ar UTXO saistītais uzrakstu saturs tiks atklāts visā tīklā.
Veicot iepriekš minētās divas darbības, uzraksta saturs ir saistīts ar konkrētu UTXO. Saskaņā ar iepriekš ieviesto Satoshi (UTXO) pozicionēšanas metodi uzraksts tiek iegravēts uz pirmā Satoshi, kas atbilst tā ievadei UTXO, un uzraksta saturs ir iekļauts ievadē, kas parāda darījumu.
Saskaņā ar iepriekš minēto Satoshi (UTXO) apriti un izsekošanu šo Satoshi, kas satur īpašu saturu, var pārsūtīt, iegādāties, pārdot, pazaudēt un atgūt. Jāņem vērā, ka uzrakstu nevar atkārtot, pretējā gadījumā turpmākie uzraksti būs nederīgi.
Lai detalizētāk izskaidrotu šo procesu, apskatīsim piemēru, kurā parādīts, kā ierakstīt nelielu Bitcoin NFT attēlu. Šis process aptver divus iepriekš minētos apņemšanās un atklāšanas posmus.
Pirmkārt, mēs varam redzēt, ka pirmā darījuma jaucējkods ir 2ddf9...f585c. Jāņem vērā, ka šī darījuma izvade nesatur liecinieku datus, un tīmekļa lapā nav atbilstošas uzraksta informācijas.

Tālāk mēs pārbaudām otrā posma ierakstu, kura hash ID ir e7454…7c0e1. Šeit mēs varam redzēt Ordinals uzraksta informāciju, kas ir liecības uzraksta saturs.
Šī darījuma ievades adrese ir iepriekšējā darījuma izvades adrese, un izvadei 0.00000546BTC (546 Satoshi) ir jāpārsūta šis NFT uz savu adresi. Tajā pašā laikā mēs varam atrast arī satoshi, kur šis uzraksts atrodas sestdienā 1893640468329373.


Bitcoin makā mēs varam redzēt šo aktīvu. Ja mēs vēlamies tirgot šo NFT, mēs varam to tieši pārsūtīt uz citu personu adresēm, tas ir, pārsūtīt UTXO, tādējādi pabeidzot uzraksta pārsūtīšanu.

4. Bitcoin maku
Pēc tam, kad esam sapratuši, kas ir Ordinals ekoloģija, satoshi apriti un ar to saistītās zināšanas par uzrakstiem, šobrīd ir daudz pielietojuma scenāriju neatkarīgi no tā, vai tas ir BRC-20, ORC-20, BRC-721, GBRC-721 un citi saistītie atvasinātie protokoli, kuriem ir nepieciešami atbilstoši maki, lai atbalstītu un parādītu marķiera informāciju vai NFT mazus attēlus.
Šajā sadaļā mēs iepazīstināsim ar dažādu Bitcoin maku adrešu jēdzieniem un īpašībām.
Bitcoin adreses parasti sākas ar 1, 3 vai bc1, un, tāpat kā e-pasta adreses, tās var kopīgot ar citiem Bitcoin lietotājiem, lai pārsūtītu Bitcoin tieši uz jūsu maku.
No drošības viedokļa Bitcoin adreses nesatur sensitīvu informāciju, un tāpēc tās var publiski kopīgot jebkurā laikā, neapdraudot jūsu konta drošību. Atšķirībā no e-pasta adresēm, jūs varat izveidot jaunas Bitcoin adreses, ja nepieciešams, un visas tās noguldīt līdzekļus tieši savā makā.

Faktiski daudzi mūsdienu maki katram darījumam automātiski izveido jaunu adresi, lai palielinātu privātumu. Maks ir vienkārši adrešu un atslēgu kolekcija, kas atbloķē tajā esošos līdzekļus. Vispirms mums ir jāzina, kā tiek ģenerēta Bitcoin maka adrese.
Bitcoin privātās un publiskās atslēgas
Bitcoin izmanto eliptisku līkni Secp256k1. "Privātā atslēga" ir nejaušs skaitlis no 1 līdz n ir ļoti liels skaitlis (256 biti tiek izteikti kā:

Šis diapazons ir ļoti plašs un padara gandrīz neiespējamu uzlauzt citu cilvēku privātās atslēgas. Šī privātā atslēga ir nejaušs vesels skaitlis, ko parasti attēlo 256 bināri biti, un to var kodēt dažādos veidos. Privātās atslēgas, kas izmanto WIF (Wallet Import Format) vai WIF saspiestu formātu, nav šifrētas, un tās var tieši atšifrēt neapstrādātos, nejaušos veselos skaitļos.
Vēl viena metode ir BIP38 (Bitcoin Improvement Proposal 38), kas iesaka izmantot AES algoritmu, lai šifrētu privāto atslēgu. Šīs shēmas ģenerētā privātā atslēga sākas ar rakstzīmi 6P, un ir jāievada parole, lai to importētu dažādos Bitcoin makos. Šādi mēs parasti izmantojam privātās atslēgas aizsardzību.
Tālāk mēs izmantojam eliptiskās līknes formulu K = kG, kur k ir privātā atslēga un G ir bāzes punkts, kas ir secp256k1 eliptiskās līknes arguments.
Izmantojot šo formulu, mēs varam iegūt divas K koordinātas, kas ir divas publiskās atslēgas izteiksmes, proti, "nesaspiests formāts" un "saspiests formāts".

Veidlapa Nesaspiesta ir tieši savienot divas koordinātas x un y un pēc tam pievienot priekšā prefiksu 0x04;
Saspiestā forma nozīmē, ka, ja y ir pāra skaitlis, kods ir 02 x, un, ja y ir nepāra skaitlis, kods ir 03 x;
Bitcoin adrese
Zemāk esošajā attēlā ir parādīti dažādi Bitcoin adrešu veidi. Ir četras attēlošanas metodes.

1. Mantotais (P2PKH) formāts
Piemērs: 1Fh7ajXabJBpZPZw8bjD3QU4CuQ3pRty9u
Adrese sākas ar "1", kas ir sākotnējais Bitcoin adreses formāts un tiek izmantots joprojām. To iegūst, izmantojot Hash aprēķinu no publiskās atslēgas, kas pazīstama arī kā P2PKH, kas ir saīsinājums no Pay To PubKey Hash (maksājums publiskās atslēgas hash).
2. Nested SegWit (P2SH) formāts
Piemērs: 3KF9nXowQ4asSGxRRzeiTpDjMuwM2nypAN
Adrese sākas ar "3". P2SH ir Pay To Script Hash saīsinājums, kas atbalsta sarežģītākas funkcijas nekā mantotās adreses. Nested P2SH, iegūst esošo P2SH adresi (sākot ar "3") un iekapsulē to kopā ar SegWit adresi.

3. Vietējais SegWit (Bech32) formāts
Piemērs: bc1qf3uwcxaz779nxedw0wry89v9cjh9w2xylnmqc3
BIP0173 ieviesa adrešu formātus, kas sākas ar "bc1", kas ir adreses, kas tiek izmantotas vietējam Segregated Witness (SegWit). Šajā adreses formātā tiek izmantots Bech32 kodējums, un tas ir īpaši izstrādāts SegWit. Adreses Bech32 formātā tika definētas BIP173 2017. gada beigās. Viena no tā galvenajām iezīmēm ir tā, ka tas nav reģistrjutīgs, tāpēc ievadot ir vieglāk izvairīties no neskaidrībām, kā arī to ir vieglāk lasīt.
Salīdzinot ar tradicionālo Base58 kodējumu, Bech32 izmanto Base32 kodējumu, tāpēc adresē ir nepieciešams mazāk rakstzīmju, aprēķins ir efektīvāks un to var kompaktāk saglabāt QR kodā.
Turklāt Bech32 piedāvā lielāku drošību un labāk optimizētu kontrolsummu kļūdu noteikšanu, samazinot nederīgu adrešu risku.
Pašas Bech32 adreses ir saderīgas ar SegWit. SegWit adreses ievietošanai P2SH adresē nav nepieciešama papildu vieta, tāpēc, izmantojot Bech32 formāta adresi, apstrādes maksa būs zemāka.
Kopumā Bech32 adresēm ir vairākas priekšrocības salīdzinājumā ar tradicionālajām Base58 adresēm: ģenerētie QR kodi ir mazāki, drošāki kļūdām, drošāki, reģistrjutīgāki un satur tikai mazos burtus, tāpēc tos ir vieglāk lasīt, rakstīt un vieglāk. saprast.

4. Taproot formāts (P2TR)
Bech32 ir trūkums: ja adreses pēdējā rakstzīme ir p, tad, ievietojot vai izdzēšot jebkādu rakstzīmju skaitu q tieši pirms p, tā kontrolsumma netiks padarīta nederīga.
Lai mazinātu iepriekš minētos Bech32 trūkumus, BIP0350 tika piedāvāta Bech32m adrese:
Vietējām Segwit adresēm ar versiju 0 izmantojiet iepriekšējo Bech32;
1. versijai (vai jaunākām) vietējām Segwit adresēm tiek izmantots jaunais Bech32m.
Ja Bech32m adreses versijas numurs ir 1, tās vienmēr sākas ar "bc1p", kas nozīmē, ka tās ir Taproot adreses. Līdzīgi kā vietējā Segwit, šīs adreses var ģenerēt no sākuma frāzes un ieejas frāzes, ko izmanto, lai ģenerētu paplašinātā komplekta publiskās un privātās atslēgas, ļaujot atvasināt adreses dažādiem ceļiem hierarhiskā deterministiskā makā.

To galvenokārt izmanto, lai uzglabātu digitālos aktīvus, piemēram, BRC-20 marķierus un Bitcoin NFT.