Tulad ng alam mo, ipinatutupad ng
Bitcoin ang mga karapatan sa pagmamay-ari sa isang bagay na tinawag na Elliptic Curve Digital Signature Algorithm (o ECDSA). Pinapayagan ka ng algorithm na kumuha ng isang numero (ibig sabihin, isang
private key)) at kumuha ng isang pampublikong key mula rito.
Ang mahika nito ay, habang madali para sa iyo na makuha ang publickey mula sa private key, imposible itong ma-reverse. Ang iyong private key ay ang iyong pasaporte sa Bitcoin network. Ito ang nagbibigay-daan sa iyo upang makabuo ng isang
address para sa pagtanggap ng
mga coin, at kung ano ang magpapahintulot sa iyo sa paglaon na gugulin ang mga ito.
Sa artikulong ito, titingnan namin ang signature algorithm ng Schnorr, isang kahalili sa ECDSA na puwedeng magdala ng ilang mga kapanapanabik na pagbabago sa Bitcoin.
Ang
mga Digital signature ay gumagana tulad ng kanilang mga nauna sa panulat at papel, ngunit mas ligtas sila. Kahit sino ay puwedeng makagawa ng isang signature ng panulat at papel na may kaunting oras at pagsisikap. Hindi mo magagawa ang pareho sa isang matatag na digital signature scheme, kahit na mayroon kang daan-daang libong mga taon na magagamit mo.
Mayroong maraming mga kaso ng paggamit para sa mga digital na signature. Ang isang tanyag ay nagsasangkot ng pagpapatunay sa mundo na nagsulat ka ng isang partikular na mensahe. Tulad ng nabanggit, puwede kang lumikha ng isang public key mula sa isang private key (isang napakalaking numero na dapat mong ilihim). Ginagawa mo ito sa pamamagitan ng pagganap ng ilang mga magarbong matematika sa kurso ng secp256k1. Mula doon, puwede ka ring makabuo ng isang pampublikong address mula sa iyong public key.
Tandaan na ganap na ligtas na ipakita ang iyong pampublikong key sa sinuman. Puwede mo itong idagdag sa iyong website o Twitter bio upang ma-verify ng iba ang iyong pagkakakilanlan. Gayundin, puwede mong ibahagi ang iyong mga pampublikong address sa iba upang maipadala sa iyo ng mga cryptocurrency.
Pinapayagan ka ng iyong private key na lumikha ng isang digital na signature. Sa pamamagitan ng pagsulat ng isang mensahe at pagsasagawa ng isang operasyon dito gamit ang iyong private key, lumikha ka ng isang naka-sign na mensahe. Sinuman ay puwedeng kunin iyon at ihambing ito sa iyong public key upang suriin na talagang nag-sign ka.
Paano ito na-ugnay sa Bitcoin? Sa gayon, anumang oras na gumawa ka ng isang
Bitcoin transaksyon, digital na nag-sign ka ng isang mensahe na nagsasabing
Pinapadala ko ang mga coin na ito na naunang naipadala sa akin. Pagkatapos, kapag naipadala ito sa iba pang mga
node sa network, puwede nilang suriin na ang lagda ng ECDSA ay tumutugma sa mensahe. Kung hindi, tatanggihan lang nila ito.
Ang mga signature ng Schnorr ay isang iba't ibang uri ng pamamaraan. Nagpapatakbo ito ng katulad sa Elliptic Curve Digital Signature Algorithm na ginagamit namin sa kasalukuyan, ngunit ipinagmamalaki ang isang bilang ng mga bentahe dito. Ang mga signature ng Schnorr ay talagang nauna sa ECDSA, na humahantong sa marami na magtaka kung bakit hindi sila isinama sa Bitcoin mula sa simula.
Ang isang posibleng paliwanag ay ang pag-patent sa kanila ni Claus P. Schnorr – ang tagalikha ng scheme – nag-patent sa kanila. Nag-expire ang mga patent noong unang bahagi ng 2008, mga buwan bago ang paglabas ng Bitcoin white paper, ngunit ang pamamaraan ay wala pa ring pamantayan sa buong lupon. Tulad ng naturan,
Satoshi Nakamoto sumali para sa mas malawak na tinanggap (at
open-source) ECDSA.
Ang mga signature ng Schnorr ay medyo simple kumpara sa iba pang mga scheme. Bilang isang resulta, mas napatunayan nilang masiguro ang mga ito kaysa sa kanilang mga kahalili. Puwedeng hindi ito mahalaga sa iyo sa unang tingin, ngunit mayroon silang isa pang malakas na pag-aari linearity.
Upang madaling maintindihan, ginagawa nitong partikular na kaakit-akit ang pamamaraan para sa ilang mga aktibidad – kapansin-pansin,
multisignature mga transaksyon. Puwede mong malaman na sinusuportahan na ng Bitcoin ang multisig, ngunit hindi ito ginagawa sa pinakamagandang paraan.
Kapag lumikha ka ng isang multisignature address, ang sinumang magpadala sa iyo ng mga pondo ay hindi kailangang malaman kung anong mga kundisyon ang iyong itinakda para sa paggastos ng mga input. Puwedeng hindi nila alam na nagpapadala sila ng mga pondo sa isang multisig setup – ang kakaibang kakaiba tungkol sa address ay nagsisimula ito sa isang “3.”
Gayunpaman, isiwalat mo ang likas na katangian nito kapag nais mong ilipat ang mga pondo. Sabihin na gumamit ka ng isang 3-of-3 na pag-setup kasama sina Alice at Bob. Upang gastusin, sabihin, 5 BTC, kayong tatlo ay dapat magbigay ng mga public key at wastong signature. Kapag inilipat mo ang mga pondo sa address, puwedeng malaman ng buong network kung ano ang nangyari sa pamamagitan ng pagtingin sa
blockchain.
Mula sa isang pananaw sa privacy, hindi ito mahusay. Upang maidagdag dito, kung lumikha kami ng isang mas malaking multisig (hal., 8-of-10), pagkatapos ay kukuha kami ng kaunting puwang sa blockchain. Puwede itong maging mahal, dahil magreresulta ito sa isang mahabang transaksyon – tandaan na mas maraming mga byte sa iyong transaksyon, mas kailangan mong magbayad.
Ang mga signature ng Schnorr ay binanggit bilang isang solusyon sa privacy at mga isyu sa
scalability na ito. Kita mo, pinapayagan nila ang mga bagay tulad ng
signature aggregation, na pinagsasama ang mga signature ng maraming mag-sign sa isang solong signature. Ang nagreresultang “master signature” ay magkakaroon pa rin ng parehong haba bilang isang regular, isang taong mag-sign, na humahantong sa makabuluhang pagtipid sa puwang.
Bilang karagdagan, ang pinagsamang mga signature ay ginagawang mas mahirap para sa isang tagamasid na matukoy kung sino ang nag-sign (o hindi mag-sign) ng isang transaksyon. Sa mg m-of-m na mga scheme (kung saan ang lahat ng mga kalahok ay dapat na mag-sign upang gumastos ng mga pondo), hindi mo rin makilala ang pagkakaiba sa pagitan ng mga solong-partido na transaksyon at mga multisig.
Ang mahalaga, ang mga signature ng Schnorr ay isang block ng paggawa para sa karagdagang mga pagsulong. Kapag naipatupad na, puwede silang mapakinabangan upang mapabuti ang mga teknolohiya sa crypto tulad ng
atomic swaps at ang
Lightning Network.
Hindi kami sigurado. Tulad ng karamihan sa mga pag-upgrade sa Bitcoin protocol, maaaring tumagal ng oras para sa mas malawak na komunidad ng mga user ng Bitcoin na sumang-ayon sa pagsasama ng signature ng Schnorr. Ang mga nag-ambag ng Bitcoin Core na sina Pieter Wuille, Jonas Nick, at Tim Ruffing ay nagsumite ng isang draft na
Bitcoin Improvement Proposal (BIP), ngunit mayroon pa ring kaunting trabaho na dapat gawin.
Naglabas na ng isang pagpapatupad ang Blockstream –
MuSig. Pinapayagan para sa signature at pangunahing pagsasama-sama, puwede itong magsilbing pundasyon para sa sariling pamamaraan ng signature ng Schnorr ng Bitcoin.
Ang mga signature ng Schnorr ay maaaring pagsamahin sa code bilang isang
soft fork, nangangahulugang ang isang pagbabago ay hindi hahatiin ang network. Sa halip, ito ay magiging isang “pag-opt-in” na pag-upgrade. Gayunpaman, magiging maasahan sa mabuti na ipalagay na makikita natin ang mga ito na isinasama sa malapit na hinaharap – puwede pa itong tumagal ng ilang taon bago maabot ang pinagkasunduan.
Ang mga signature ng Schnorr ay isa sa pinakahihintay na milestone sa kasalukuyang roadmap ng Bitcoin. Sa isang solong pag-upgrade lang, puwede silang magbigay ng makabuluhang privacy at mga benepisyo ng
scalability. Marahil na mas kawili-wili, itinakda din nila ang eksena para sa karagdagang mga pagpapaunlad sa Bitcoin
smart contract at mas advanced na mga konstruksyon tulad ng
Taproot.