Bitcoin.com

Što je Bitcoin OP_CAT? Objašnjenje opkoda

OP_CAT je Bitcoin opkod predložen za otključavanje pametnih ugovora putem BIP-a 347. Saznajte kako radi, zašto je onemogućen i gdje se rasprava danas nalazi.

Posljednje ažuriranje
Objavljeno
Vrijeme čitanja6 min čitanja
What is Bitcoin OP_CAT?

OP_MACAK je Bitcoinov opkod koji spaja dva komada podataka na steku u jedan i trenutno je predmet jedne od najdugovječnijih rasprava u razvoju Bitcoina. Bio je dio izvornog koda Bitcoina, uklonjen od strane Satoshija Nakamota 2010. godine zbog sigurnosnih zabrinutosti, i posljednjih je nekoliko godina predložen kao soft fork (BIP 347) koji bi mogao otključati novu kategoriju ponašanja sličnog pametnim ugovorima na Bitcoinu. Od srpnja 2026. nije aktivan na glavnoj mreži Bitcoina (mainnet), iako već radi na nekoliko povezanih mreža gdje se tiho testira pod opterećenjem u javnosti.

Ono što OP_CAT čini vrijednim razumijevanja nije samo kod. To je skupina likova koja ga okružuje: programeri Bitcoin Cora koji raspravljaju o tome je li promjena sigurna, NFT projekt vođen memom koji je prikupio desetke milijuna dolara za lobiranje za njegov povratak i brzo rastući sidechain koji ga je već počeo koristiti. Ovaj vodič objašnjava što OP_CAT radi, zašto je onemogućen, što bi mogao omogućiti i kakva je točno trenutna situacija.

Koristite multichain Aplikacija Bitcoin.com novčanik, kojem milijuni vjeruju za sigurno i jednostavno slanje, primanje, kupnju, prodaju, razmjenu, korištenje i upravljanje Bitcoinom i kriptovalutama.

Ključne poruke

  • OP_CAT (skraćeno od "operation concatenate") spaja dva elementa podataka na Bitcoinovoj hrpi u jedan element. To je cijela funkcija.
  • Bilo je aktivno u najranijem kodu Bitcoina, a zatim ga je Satoshi Nakamoto 2010. onemogućio zbog rizika od DoS napada.
  • Prijedlog za njegovo vraćanje, BIP 347, autorizirali su Ethan Heilman i Armin Sabouri te mu je u travnju 2024. dodijeljen BIP broj.
  • OP_CAT sam po sebi nije savez, ali u kombinaciji s drugim opkodovima može se koristiti za izgradnju ograničenja potrošnje sličnih savezu, uključujući trezore.
  • Do sredine 2026. godine OP_CAT nije aktiviran na glavnoj mreži Bitcoina. Trenutni vodeći kandidati za sljedeći konsenzus soft fork Bitcoina su OP_CTV (BIP 119) i OP_CHECKSIGFROMSTACK (BIP 348), a ne OP_CAT samostalno.
  • OP_CAT je već aktivan na Fractal Bitcoinu, bočnom lancu usklađenom s Bitcoinom, gdje pokreće standard tokena CAT20, a već godinama se koristi na Liquid Networku i Bitcoin Casheu bez poznatog iskorištavanja.
  • Projekt Bitcoin NFT-a pod nazivom Quantum Cats, koji su stvorili Taproot Wizards, pretvorio je podršku za OP_CAT u meme kampanju koja je prikupila više od 37 milijuna dolara za razvoj vezan uz OP_CAT.

Kako OP_CAT radi

Najjasniji način da razumijete OP_CAT jest zamisliti Bitcoinov skriptni sustav kao malu gomilu gradivnih blokova. Bitcoin Script, programski jezik koji stoji iza svake Bitcoin transakcije, je jezik temeljen na gomili. Podaci se guraju na gomilu, opkodi djeluju na ono što se nalazi na vrhu, a rezultat određuje je li transakcija valjana.

OP_CAT uzima dva gornja elementa na tom stacku i spaja ih, što znači da ih spoji redom u jedan kombinirani element, koji se zatim vraća na vrh stacka. Ako hrpa sadrži vrijednosti "1" i "2", izvođenje OP_CAT-a uklanja obje i zamjenjuje ih s "12". Prema službenoj specifikaciji u BIP 347, OP_CAT bi gurnuo x1 || x2 na stack, gdje simbol dvostruke cijevi označava konkatenciju.

Postoji jedno važno ograničenje. OP_CAT ne uspijeva ako na stacku ima manje od dva vrijednosti ili ako bi njihovo spajanje stvorilo kombiniranu vrijednost veću od 520 bajtova, što je maksimalna veličina skriptnog elementa u Bitcoinu. To ograničenje broja bajtova ima veliku važnost za povijest ovog opkoda, o čemu ćemo uskoro govoriti.

Samo po sebi, spajanje dviju nizova podataka ne zvuči moćno. Ali Bitcoinov skriptni jezik nikada nije imao opći način za kombiniranje vrijednosti na steku, a ta je praznina ograničila ono što programeri mogu izravno ugraditi u Bitcoin transakcije. Kao Bitcoin Optech objašnjava, Bitcoin Tapscriptu nedostaje opći način kombiniranja objekata na steku, što ograničava izražajnost Tapscripta i, između ostalog, sprječava mogućnost izgradnje i evaluacije Merkleovih stabala i drugih hasiranih podatkovnih struktura izravno u Tapscriptu. OP_CAT je predloženo rješenje za taj specifični nedostatak.

Zašto je OP_CAT onemogućen 2010. godine?

OP_CAT je bio dio prve verzije Bitcoina. Satoshi Nakamoto ga je uklonio 2010. godine, zajedno s nekoliko drugih opkoda kao što su OP_MUL, OP_DIV i OP_OR. Službeno obrazloženje bilo je usmjereno na rizik uskraćivanja usluge: skripta koja bi više puta koristila OP_CAT mogla bi, u teoriji, generirati eksponencijalno rastući dio podataka, dovoljno velik da uspori ili sruši čvorove koji ga pokušavaju provjeriti.

U to vrijeme nije postojao strogi limit na to koliko velika može biti jedna stavka na Bitcoinovoj hrpi. To je značilo da zlonamjerni skript mogao neprestano spajati vrijednosti dok ne bi stvorio niz podataka dovoljno težak da uspori mrežu. Uklanjanje OP_CAT-a, zajedno s ostalim onemogućenim opkodima, bio je konzervativan potez koji je stavio stabilnost mreže ispred funkcionalnosti koje mlada mreža još nije trebala.

Pejzaž se promijenio u studenom 2021., kada je Bitcoin aktivirao nadogradnju Taproot. Taproot je uveo Tapscript, novi skriptni kontekst sa vlastitim pravilima, od kojih jedno ograničava svaki pojedinačni element na hrpu na 520 bajtova. To ograničenje bajtova izravno zatvara izvorni put napada. Skript i dalje može pozvati OP_CAT, ali nikada ne može proizvesti vrijednost dovoljno veliku da stvori vrstu problema iscrpljivanja resursa koji je zabrinjavao Satoshija 2010. godine. To je tehnički detalj koji je ponovno otvorio vrata za povratak OP_CAT-a, ali ograničenog samo na Tapscript, a ne na cijeli Bitcoin Script.

Je li OP_CAT savez?

Ne, ne samo po sebi, i ovo je jedna od najčešće pogrešno shvaćenih točaka o OP_CAT-u. Povelja, u Bitcoin terminologiji, jest ograničenje načina na koji se neiskorišteni rezultat transakcije (UTXO) može potrošiti u budućnosti. Obični Bitcoin Script može samo provjeriti je li potrošnja ovlaštena u trenutku, obično provjerom potpisa. Povelja ide dalje, provjeravajući ne samo je li potrošnja ovlaštena, nego i odgovara li rezultirajuća transakcija određenom skupu uvjeta.

OP_CAT ne uključuje nikakav ugrađeni mehanizam za provjeru podataka transakcije. Ono što pruža jest način za kombiniranje dijelova podataka na steku, što postaje korisno za obveze samo kada se kombinira s drugim opkodima koji provjeravaju potpise u odnosu na te kombinirane podatke. BIP 347 sam po sebi jasno navodi da OP_CAT, iako je predložen za ponovnu aktivaciju u Tapscriptu, nije savez. Točnije ga je opisati kao gradivnu cjelinu koja, u kombinaciji s opkodima za provjeru potpisa, može poslužiti za emulaciju ponašanja sličnog savezu.

Ovo je važno jer je fleksibilnost OP_CAT-a upravo ono što ga čini zanimljivim i kontroverznim. Iako OP_CAT možda sam po sebi nije savez, može emulirati saveze zbog neobičnosti u načinu na koji Schnorr potpisi funkcioniraju. U kombinaciji s opkodom nazvanim CheckSigFromStack (CSFS), koji provjerava potpis u odnosu na proizvoljne podatke umjesto samo na samu transakciju, OP_CAT se može koristiti za izgradnju istih vrsta ograničenja potrošnje za koja su namijenjeni posebni opkodi za saveze.

Za što bi se OP_CAT mogao koristiti?

Budući da je OP_CAT primitiv opće namjene, a ne značajka ograničenog opsega, programeri su predložili širok raspon primjena za njega. Najčešće se spominju:

  • Treznice Vault je vrsta ugovora koja zahtijeva više koraka, često kroz odvojene transakcije i blokove, prije nego što se sredstva mogu premjestiti. To uvodi ugrađenu odgodu koja vlasniku daje vremena da primijeti i spriječi neovlašteno trošenje, poboljšavajući hladno pohranjivanje i aranžmane zajedničke skrbništine.
  • Ugovori bez dvosmislenosti. Oni mogu kazniti stranu u platnom kanalu, poput Lightning mreže, koja pokuša emitirati zastarjelo ili lažno stanje kanala, čime se jača sigurnost platnih sustava izvan lanca.
  • Potpisi stabala OP_CAT omogućuje kompaktne multisignature skripte čija veličina raste samo logaritamski s brojem potpisnika, što znači da bi transakcija manja od 1 kilobajta teoretski mogla podržati uvjete potrošnje za milijune javnih ključeva.
  • Konstrukcija i provjera Merkleova stabla. Budući da izgradnja i provjera Merkle stabla u osnovi zahtijevaju spajanje i hasiranje vrijednosti, OP_CAT daje Bitcoin Scriptu nedostajući dio potreban za to izvorno.
  • Post-kvantni potpisi. OP_CAT može omogućiti Lamportove potpise, shemu potpisa koja se smatra otpornom na napade kvantnih računala, budući da Lamportovi potpisi ne zahtijevaju ništa više od mogućnosti hashiranja i spajanja vrijednosti na hrpi.
  • Tokenizirana imovina i međulancijski mostovi. Omogućavanjem izražajnijih skripti, OP_CAT bi mogao podržati izdavanje tokena izravno na lancima usklađenim s Bitcoinom i više mostova s minimaliziranim povjerenjem između Bitcoina i drugih mreža.

Vrijedi biti izravan i o kompromisima ovdje. Ista fleksibilnost koja OP_CAT čini korisnim za sve navedeno je ono što neke Bitcoin programere čini opreznima prema njemu. Budući da je OP_CAT opće namjene, a ne namjenski izrađen, otvara ono što programeri ponekad nazivaju velikim dizajnerskim prostorom, što znači da je teže predvidjeti svaki mogući način na koji bi se na kraju mogao kombinirati s drugim opkodama. Ta je nesigurnost srž tekuće rasprave, a ne sporedno pitanje.

OP_CAT vs. OP_CTV: Kako se uspoređuju dva vodeća prijedloga saveza

OP_CAT se obično raspravlja zajedno s OP_CTV (OP_CheckTemplateVerify), predloženim u BIP 119 od strane programera Jeremyja Rubina. Oba su usmjerena na to da Bitcoinu osiguraju neku vrstu sposobnosti sklapanja ugovora, ali koriste gotovo suprotne pristupe dizajnu.

Column 1
OP_CAT (BIP 347)
OP_CTV (BIP 119)
Osnovna funkcija
Spaja dva stavka stoga u jedan
Obvezuje UTXO na potrošnju prema jednom određenom, unaprijed definiranom predlošku transakcije.
Filozofija dizajna
Široka primitivna komponenta opće namjene
Uski, namjenski izrađen za jedan posao
Rekurcija
Može omogućiti rekurzivne saveze kada se kombinira s drugim opkodima
Izričito ne-rekurzivan po dizajnu
Porijeklo
Izvorni Bitcoin opkod, onemogućen 2010. godine, predložen za ponovnu aktivaciju
Novi opkod prvi put predložen 2019. godine
Autori
Ethan Heilman i Armin Sabouri
Jeremy Rubin
Status srpnja 2026.
Specifikacija BIP-a je dovršena; nije implementirana na glavnoj mreži Bitcoina.
Ima konkretne parametre signalizacije aktivacije 2026; smatra se vodećim kandidatom uz OP_CHECKSIGFROMSTACK
Column 1
Osnovna funkcija
OP_CAT (BIP 347)
Spaja dva stavka stoga u jedan
OP_CTV (BIP 119)
Obvezuje UTXO na potrošnju prema jednom određenom, unaprijed definiranom predlošku transakcije.
Column 1
Filozofija dizajna
OP_CAT (BIP 347)
Široka primitivna komponenta opće namjene
OP_CTV (BIP 119)
Uski, namjenski izrađen za jedan posao
Column 1
Rekurcija
OP_CAT (BIP 347)
Može omogućiti rekurzivne saveze kada se kombinira s drugim opkodima
OP_CTV (BIP 119)
Izričito ne-rekurzivan po dizajnu
Column 1
Porijeklo
OP_CAT (BIP 347)
Izvorni Bitcoin opkod, onemogućen 2010. godine, predložen za ponovnu aktivaciju
OP_CTV (BIP 119)
Novi opkod prvi put predložen 2019. godine
Column 1
Autori
OP_CAT (BIP 347)
Ethan Heilman i Armin Sabouri
OP_CTV (BIP 119)
Jeremy Rubin
Column 1
Status srpnja 2026.
OP_CAT (BIP 347)
Specifikacija BIP-a je dovršena; nije implementirana na glavnoj mreži Bitcoina.
OP_CTV (BIP 119)
Ima konkretne parametre signalizacije aktivacije 2026; smatra se vodećim kandidatom uz OP_CHECKSIGFROMSTACK

Praktična razlika svodi se na opseg. OP_CTV omogućuje da se izlaz transakcije obveže na jednu točnu buduću transakciju potrošnje, pokrivajući detalje poput verzije, vremena zaključavanja, izlaza i broja ulaza. Ako se predložak podudara, potrošnja prolazi. Ako se ne podudara, ne prolazi. Ta uskoća je namjerna. CTV je ne-rekurzivan, što znači da transakcija kojoj se obvezuje ne može sama sebi nametnuti dodatna ograničenja na način koji stvara trajni lanac ograničenja. Pristalice to smatraju sigurnijom, ograničenijom vrstom saveza.

OP_CAT zauzima suprotnu filozofiju. Umjesto da rješava jedan specifičan problem, on programerima pruža fleksibilan primitiv i omogućuje im da na njemu grade. Dok je CTV opkoda s pažljivo definiranim opsegom osmišljena za omogućavanje određenog skupa upotreba, OP_CAT je primitivna konkatencija nizova na stacku koja je već bila u izvornoj Bitcoin skriptnoj jezici prije nego što je 2010. onemogućena zbog zabrinutosti za odbijanje usluge (denial-of-service) koje više ne vrijedi uz ograničenja veličine skripte nakon Taproota. Upravo ta fleksibilnost omogućuje OP_CAT-u podršku za rekursivne ugovore, gdje jedno ograničenje može stvoriti drugo ograničenje nizom, što je svojstvo koje OP_CTV namjerno izbjegava.

Je li OP_CAT danas aktivan na Bitcoinu?

Ne na glavnoj mreži Bitcoina. BIP 347 je postigao status "Complete" kao specifikacijski dokument, što znači da je sam prijedlog dovršen i dobro definiran. To je nešto drugo od implementacije, što bi zahtijevalo da šira Bitcoin zajednica i operateri čvorova to doista aktiviraju putem soft fork-a.

Od sredine 2026. godine OP_CAT nije vodeći kandidat za sljedeću promjenu konsenzusa u Bitcoinu. Ta pozicija trenutno pripada OP_CTV uz OP_CHECKSIGFROMSTACK (BIP 348), srodnom opkodu koji omogućuje skripti provjeru potpisa na temelju proizvoljnih podataka, a ne samo same transakcije potrošnje. Prema jednom nedavni referentni vodič za Bitcoin BIP, od sredine 2026. godine, vodeći kandidati za sljedeći soft fork konsenzusa su prijedlozi ugovora BIP 119 (OP_CHECKTEMPLATEVERIFY) i BIP 348 (OP_CHECKSIGFROMSTACK), koji bi omogućili nove skriptne mogućnosti za trezore, tvornice kanala i učinkovitije protokole drugog sloja, iako još nije određen raspored aktivacije, a konsenzus u zajednici se još uvijek formira.

OP_CTV je napredovao dalje u procesu aktivacije nego OP_CAT. Programeri su objavili konkretni parametri signalizacije za soft fork u stilu BIP9-a: datum početka signalizacije 30. ožujka 2026., jednogodišnji prozor za odgodu koji se zatvara 30. ožujka 2027., minimalna visina aktivacije oko svibnja 2027. i prag od 90 % signalizacije rudara tijekom svakog dvotjednog razdoblja težine. Time se CTV provodi istim mehanizmom koji je aktivirao Taproot 2021. godine, iako je dosezanje praga od 90 % daleko od zajamčenog s obzirom na to koliko sporne prijedloge ugovora ostaju unutar programerske zajednice.

Ništa od ovoga ne znači da je OP_CAT mrtav. To znači da je razgovor o "sljedećem" soft forku 2026. godine trenutno usmjeren na drugi par opkoda, a budućnost OP_CAT-a, ako je uopće ima, vjerojatno ovisi o tome kako se prvo odvije rasprava o CTV-u i CSFS-u.

OP_CAT već radi negdje drugdje

Dok OP_CAT čeka na Bitcoinovoj glavnoj mreži, nije ostala neispitana. Već godinama tiho radi u produkciji na nekoliko mreža povezanih s Bitcoinom.

  • Tekuća mreža. Federirani sidechain tvrtke Blockstream ima omogućen OP_CAT od samog početka, pružajući širem Bitcoin ekosustavu realno testno okruženje godinama prije nego što je BIP 347 uopće postojao.
  • Bitcoin Cash i Bitcoin SV. Obje su mreže tijekom nadogradnji protokola ponovno uvele OP_CAT i on je obrađivao transakcije na tim lancima bez dokumentiranog iskorištavanja povezanog s opkodom.
  • Fraktalni Bitcoin. Ovo je trenutno najaktivnije lansiranje. Fractal je Bitcoin-usklađeni sidechain, izgrađen koristeći vlastiti softver Bitcoin Corea i merge-mined s Bitcoinom, koji je pokrenuo svoju mainnet mrežu 9. rujna 2024. s OP_CAT omogućenim od prvog dana.

Fractal vrijedi pobliže pogledati, jer je to najjasniji odgovor na pitanje "kako bi ovo zapravo izgledalo na Bitcoinu". Od pokretanja Fractala, novi su protokoli iskoristili OP_CAT za stvaranje pametnih ugovora temeljenih na Bitcoin softveru, uključujući CAT Protocol, koji je privukao značajan interes među korisnicima nativnim za Bitcoin, kao i druge nove standarde koji proširuju funkcionalnost mreže koristeći OP_CAT.

Vodeći primjer je CAT20, standard zamjenjivog tokena izričito razvijen da iskoristi OP_CAT. Prema Fractal Bitcoinova vlastita dokumentacija, CAT20 je u potpunosti validiran od strane rudara i radi koristeći pametne ugovore, točnije rekursivne ugovorne odredbe, koje se u potpunosti provode Bitcoinovim vlastitim skriptnim jezikom na temeljnoj razini, što ga razlikuje od standarda tokena koji se oslanjaju na vanjsku ili treću stranu za validaciju. U praksi to znači da se implementacija, kovanje i prijenos CAT20 tokena odvijaju putem niza OP_CAT operacija koje grade jednu nisku podataka, koja se zatim upisuje izravno na blockchain i provjerava od strane istih rudara koji osiguravaju mrežu, a ne odvojene usluge indeksiranja izvan lanca.

Priča o Quantum mačkama: Kako je meme kampanja pogurala OP_CAT naprijed

Većina prijedloga za opkode ostaje ograničena na mailing liste i GitHub teme. OP_CAT to nije, uglavnom zbog projekta Bitcoin Ordinals nazvanog Taproot Wizards.

U siječnju 2024. godine, Taproot Wizards je lansirao kolekciju od 3.333 komada u NFT stilu pod nazivom Quantum Cats, izgrađenu u potpunosti s ciljem stvaranja javne podrške za ponovnu aktivaciju OP_CAT-a. Quantum Cats je želio da OP_CAT stvori most bez dopuštenja koji bi mogao premještati bitcoin i imovinu temeljenu na bitcoinu na Bitcoinove layer 2 lance, gdje bi mogli sudjelovati u složenijem trgovanju. Da bi se uopće kvalificirali za kovanje, sudionici su morali upoznati se s tehničkim prijedlogom i javno zagovarati njegovo vraćanje, pretvarajući prilično suhoparnu raspravu o BIP-u u kampanju zajednice s pravim posljedicama.

Sama je kolekcija služila i kao demonstracija spajanja u akciji. Svaka Quantum Cat odnosi se na nekoliko zasebnih datoteka umjesto na jednu statičnu sliku, a kako se s vremenom otkrivaju nove datoteke, mačke se mijenjaju, točno odražavajući ono što OP_CAT radi spajanjem zasebnih dijelova podataka.

Kampanja je bila dovoljno uspješna da rezultira ozbiljnim financiranjem. Taproot Wizards je prikupio 7,5 milijuna dolara 2023. godine, nakon čega je uslijedio krug financiranja od 30 milijuna dolara u veljači 2025., a oba su izričito namijenjena razvoju ekosustava OP_CAT. Suosnivač Udi Wertheimer opisao je projekt kao usmjeren na OP_CAT kao budućnost Bitcoina, pri čemu sredstva idu i za interni razvoj i za podršku vanjskim timovima koji razvijaju aplikacije na temelju tog opkoda. Jedna prodaja Quantum Cat na aukciji Sotheby's, "Genesis Cat", zaključena je po cijeni od 254.000 dolara, što naglašava koliko je kulturna težina kampanja stekla oko opkoda od četiri bajta.

Korisno je podsjetnik da tehničke rasprave o Bitcoinu ne ostaju uvijek tehničke. Memi, umjetnost i novac iznova su postali alati za isticanje rasprava o protokolu u širem kontekstu, a OP_CAT je jedan od najjasnijih nedavnih primjera tog obrasca.

Zaključak

OP_CAT radi jednu jednostavnu stvar: spaja dva komada podataka na Bitcoinovoj hrpi u jedan. Ono što ga čini značajnim jest sve što ta jedna funkcija može otključati, od sigurnijih trezora za hladno pohranjivanje do potpisa otpornih na kvantnu računarstvo i tokena nativnih na Bitcoinu, ako se Bitcoin zajednica ikada složi da ga vrati. Do srpnja 2026. ta se suglasnost nije postigla. BIP 347 je dovršena specifikacija koja stoji iza OP_CTV i OP_CHECKSIGFROMSTACK u redu za sljedeći soft fork konsenzusa Bitcoina, dok OP_CAT nastavlja raditi tiho i bez incidenata na mrežama Fractal Bitcoin, Liquid i drugim mrežama povezanim s Bitcoinom. Što god se sljedeće dogodilo, rasprava o OP_CAT-u već je pokazala kako mali, jednostavan komad koda može privući programere, umjetnike i ulagače istovremeno.

Često postavljana pitanja

Što znači OP_CAT?
OP_CAT označava "operaciju spajanja". Opkoda uzima dva dijela podataka sa staka Bitcoina i spaja ih u jedan kombinirani dio podataka.
Je li OP_CAT isto što i pametni ugovor?
Što je BIP 347?
Hoće li OP_CAT biti aktiviran na Bitcoinu?
Koja je razlika između OP_CAT i OP_CTV?
Gdje se OP_CAT već koristi?

Počnite sigurno ulagati s Bitcoin.com novčanikom

Do sada je stvoreno više od 85 milijuna novčanika. Sve što vam je potrebno za sigurno kupovanje, prodaju, razmjenu i ulaganje vaših Bitcoina i kriptovaluta.

A screenshot of the Bitcoin.com Wallet app

Skenirajte za preuzimanje Bitcoin.com novčanika

Skenirajte ovaj QR kod svojim mobilnim uređajem i bit ćete automatski preusmjereni na odgovarajuću stranicu trgovine.