11. Schnorr Signaturebumalik mula sa talaan ng nilalalamanAng
Schnorr signature ang isang signature scheme:isang hanay ng mathematical rules na nag-uugnay sa private key, public key at signature.
Si
Claus-Peter Schnorr ang nag-imbento ng digital signature scheme na ito, ngunit hindi ito orihinal na nilayon para sa teknolohiyang crypto. Ang Schnorr ay isang alternatibong algoritmo bilang isang
digital signature na may ilang mga kalamangan.
Sa kasalukuyan, ginagamit ng Bitcoin ang
ECDSA (Elliptic Curve Digital Signature Algorithm) algorithm para mag-generate ng cryptographic signatures para magpadala/tumanggap
secp256k1 ng mga mensahe at keypair.
Ang pinaka dahilan kung bakit ang Bitcoin ay hindi ginamit ito nung una ang Schnorr signature ay dahil ang Schnorr ay hindi standardized, at hindi magagamit sa crypto libraries sa pagkahalatan.
Maraming cryptographers ang kinokonsidera ang
Schnorr signatures na pinakamagaling sa larangan dahil ang schnorr ay nagbibigay ng tamang pamantayan sa pagkatugma, medyo mabilis sa mga tuntunin ng pag-verify, at
ang pinakamahalaga, sinusuportahan ng schnorr ang multi-signature. Sa esensya, maaaring pagsamahin ang ilang signatures sa isang bagong signature.
Dati, ang schoor ay hindi posible gamitin ng Bitcoin protocol. Ang iba pang mga signature schemes, ang ECDSA ay kasama sa Bitcoin protocol, kaya upang mabago ito ay kinakailangan ng hard fork. Ngunit sa SegWit (Segregated Witness), ang lahat ng data ng digital signatures ay inilipat sa isang hiwalay na bahagi ng transaksyon: ang Witness ay hindi isinama sa lumang Bitcoin protocol. Halos lahat ng patakarang ipinapataw sa Witness ay maaaring baguhin sa pamamagitan ng soft forks, kabilang ang iskema na ginagamit sa signatures.
KapasidadAng pinakakapaki-pakinabang na bahagi ng schnorr ay ang pagsasama-sama ng multi signatures.
Maraming Bitcoin transaksyon ang may kasamang maraming inputs. Ang lahat ng mga input na ito ay nangangailangan ng magkakahiwalay na signature, na ang ibig sabihin ay ang lahat ng mga signatures ay kailangang maipasok sa mga transaksyon, ang lahat ay ipinadala sa network, at ang lahat ay maisama sa block.
Ngunit sa Schnorr, ang lahat ng inputs ay pinagsasama sa isang signature na kumakatawan sa lahat ng iba't ibang signatures.
Ang Schnorr ay puwedeng magbigay ng opsyon na makipagtransaksyon gamit ang isang simpleng multi-user scheme.
Ito ang isa sa mga bentahe na inaalok ng Schnorr. Dahil ang isang signature lamang ang kailangang ilagay sa transaksyon, isa lamang ang kailangang ipadala sa network, at isa lamang ang kailangang isama sa block. Ang ibig sabihin ay marami pang puwang para sa mga transaksyon.
Ang eksaktong halaga ng karagdagang espasyo ay nakadepende sa klase ng transaksyon na kasama sa block. Ngunit sa magaspang na pagtataya ni
Eric Lombrozo (Bitcoin Core Developer), pinapakita ng Schorr signature ay maaaring madagdagan ang kabuuang kapasidad ng 40 porsyento o higit pa, at ito ay karagdagang 60 hanggang 100 porsyento na alok ng Segregated Witness.
MultisigAng pagtatayo ng kapasidad, gaya ng paglalarawan sa itaas, ay naaangkop sa mga karaniwang transaksyon, dahil maraming transaksyon ang may higit sa isang input. Ngunit may benepisyo ay magiging mas makabuluhan sa mga multisig na transaksyon-mga transaksyon kung saan ang isang datos lamang ang kinakailangan ng maraming signatures (karaniwang mula sa iba't ibang tao).
Size of the Bitcoin blockchain with and without multi-signatures.
Source: https://eprint.iacr.org/2018/068.pdfPrivacyTulad ng nabanggit kanina, ang isang transaksyon ay maaaring maglaman ng maraming inputs. Sa pangkalahatan, ang input na ito ay tumutukoy sa mga address na kontrolado ng lahat ng iisang tao.
Ngunit ang privacy-enhancing na diskarte na natuklasan ni Gregory Maxwell (developer ng Bitcoin Core), na pinapayagan ang iba't ibang gumagamit na pagsamahin ang lahat ng kanilang mga transaksyon sa isang transaksyon, ay ang Conjoin. Ang isang transaksyon na iyon ay kasama ang ilang input mula sa iba't ibang nagbabayad, na nagpapadala ng pera sa ilang outputs na pag-aari ng iba't ibang nagbabayad.
Tala: ang talakayan tungkol sa Coinjoin ay makikita sa paksa na Bitcoin Privacy and Anonymity,point 6. CoinJoin.Kung gagawin nang tama, ang CoinJoin ay isang mahusay na paraan upang mapataas ang privacy sa Bitcoin protocol, dahil hindi malinaw kung aling mga input ang binayaran at alin ang mga output.
Ang konsepto ng CoinJoin ay hindi na bago. Ngunit hanggang ngayon ang CoinJoin ay medyo nakakaabala. At dahil dito, karamihan ng mga tao ay hindi ito pinapansin.
Ngunit ang Schnorr signature ay maaaring magdagdag ng mga bagong bentahe sa CoinJoin. Pinapayagan nito ang lahat ng kalahok sa mga transaksyon ng CoinJoin na hindi lamang pagsamahin ang kanilang mga transaksyon kundi pagsamahin na rin ang kanilang mga signature. At sa paggawa nito, ang ibig sabihin nito ay ang aktuwal na laki ng transaksyon ay liliit kumpara sa pinagsama ng lahat ng indibidwal na transaksyon. Na, sa pag-ikot, ang ibig sabihin ang
miner ay maniningil ng mas mababang bayad para sa pagproseso ng transaksyon.
Ang paggamit ng Schnorr signature scheme sa CoinJoin ay hindi lamang magpapataas ng privacy kundi - mas mahalaga - ay maaaring magpababa ng mga gastos para sa lahat ng kalahok sa transaksyon.
Sanggunian:
- Gregory Maxwell, Andrew Poelstra, Yannick Seurin, & Pieter Wuille, Simple Schnorr Multi-Signatureswith Applications to Bitcoin, https://eprint.iacr.org/2018/068.pdf
- Schnorr, https://en.bitcoin.it/wiki/Schnorr
- Schnorr signature, https://en.wikipedia.org/wiki/Schnorr_signature
- Aaron van Wirdum, The Power of Schnorr: The Signature Algorithm to Increase Bitcoin’s Scale and Privacy,
https://bitcoinmagazine.com/articles/the-power-of-schnorr-the-signature-algorithm-to-increase-bitcoin-s-scale-and-privacy-1460642496
- Alyssa Hertig, Schnorr Is Looking Poised to Become Bitcoin’s Biggest Change Since SegWit,
https://www.coindesk.com/schnorr-is-looking-poised-to-become-bitcoins-biggest-change-since-segwit
- René Pickhardt, Introduction to Schnorr Signatures for Bitcoin & Lightning Network. Schnorr Signature Tutorial Part1,
https://www.youtube.com/watch?v=n5aompcR9W0
- René Pickhardt, MuSig - Multisignature Addresses in Bitcoin. Schnorr Signature Tutorial Part 2,
https://www.youtube.com/watch?v=4v4G8Vtr3Bk
- René Pickhardt, Introduction to Adaptor Signatures via Schnorr Signatures - Schnorr Signature Tutorial Part 3,
https://www.youtube.com/watch?v=a8Pdpz_Jzok
- Yodik Prastya, Bitcoin Cash Upgrade Fitur Pemulihan Dan Keamanan, https://www.seputarforex.com/berita/bitcoin-cash-upgrade-fitur-pemulihan-dan-keamanan-288550-15
- Privacy, https://en.bitcoin.it/wiki/Privacy
- Iba pang sanggunian tingnan ang ver post #1
12. MAST (Merklized Abstract Syntax Tree)bumalik mula sa talaan ng nilalalaman
Merklized Abstract Syntax Trees (MAST) ay isang karagdagang panukala na iminungkahi sa Bitcoin protocol na pinapayagan ang pagpapatupad ng mga sumusunod:
- Mas maliit na sukat ng transaksyon
- Mas mataas ang privacy
- Mas malaking Smart contract.
Isyu: Datos ng script na hindi ginamit.- Binibigyan ni Satoshi Nakamoto ang Bitcoin ng isang tampok na pinahihintulan ang mga gumagamit na magsulat ng mga programa (na tinatawag na
scripts) na maaaring gamitin bilang
dynamic public keys at
signatures.
- Kapag tinukoy mo ang script - na siyang default ng bawat wallet - Ang consensus sa Bitcoin Protocol ay hindi papayagan ang sinuman gastusin ang sa iyong bitcoin hangga't hindi pinapatunayan ng isang paunang itinakdang script ang proseso.
- Sa kasalukuyan, lahat ng scripts ay dapat nasusulat sa Blockchain (bilang kabuuan).
Ang origin ng MASTAng ideya ng MAST ay nanggaling sa dalawang dati nang umiiral ng konsepto, na tinatawag na
Abstract Syntax Trees (AST) at
Merkle Trees.
- AST - isang paraan ito upang ilarawan ang programa sa pamamagitan ng paghahati nito sa magkakahiwalay na bahagi upang mas madali itong suriin at i-optimize ang mga tungkulin ng bawat isa.
- Merkle Tree - pinapayagan ang isang node na kopyahin ang ilang impormasyon nang hindi kinakailangang kopyahin ang lahat ng mga transaksyon.
-snip-
Images of Merkle TreeMay mga kalamangan sa paggamit ng
Merkle tree pagdating sa pagpapatunay ng isang block.
Halimbawa, sa
Merkle tree na nasa larawan sa itaas, para ma-verify ang transaksyon D, hindi kinakailangang kopyahin ang lahat ng transaksyon A, B, C, D, at E, ngunit sapat na kopyahin ang impormasyon ng C, AB, at EEEE para makagawa ng
Merkle root. Nagdulot ito ng paglitaw ng mga node na walang kumpletong kopya ng blockchain, na tinatawag na
simplified payment verification (SPV).
Reference: Bitcoin Developer Guide - https://bitcoin.org/en/developer-guide#transaction-data (D.A. Harding - 2015, 12 January 2016) - https://bitcoin.org/en/glossary/simplified-payment-verification.
Halimbawa ng Abstract Syntax Tree
Halimbawa ng Merkle Tree
Halimbawa ng MASTKung gagamitin ay Alice ang BTC (sa kaliwang larawan), o pagkatapos ng tatlong buwan, si Bob at Charlie ay puwedeng gastusin ang BTC (kanang larawan) — ang gagawin mo lamang ay i-save ng kumpleto mula sa
encumbrance (Merkle root) para makuha ang lahat ng subscripts.
Mga Benepisyo ng Pagpapatupad ng MAST1. Maliit ang transaksyonMaaari kang magdagdag ng kahit ilang subscript na gusto mo.
2. Mas madaming privacyAng mga benepisyo ng MAST na ito ay malamang na gumana nang mas mahusay sa pagpapabuti ng privacy kapag pinagsama sa iba pang mga pamamaraan tulad ng
generalized threshold trees (Pieter Wuille’s & Gregory Maxwell),
scriptless scripts (Andrew Poelstra) and
discrete log contracts (Thaddeus Dryja).
3. Malaking Smart ContractAng Bitcoin ay may tatlong magkakaibang laki ng byte na naaangkop sa bawat script depende sa pag-unlad ng
encumbrance.

Sa MAST, hindi ka puwedeng lumagpas sa limitasyon ng mga bytes.
Sampung libong bytes ang limitasyon para sa mga walang laman na scripts, 520 bytes ang limit para sa P2SH, at 10,000 bytes ang limit para sa SegWit.
Sanggunian:
- https://github.com/jl2012/bips/blob/mast/bip-mast.mediawiki
- https://github.com/bitcoin/bips/blob/master/bip-0114.mediawiki
- http://www.mit.edu/~jlrubin/public/pdfs/858report.pdf
- https://bitcointechtalk.com/what-is-a-bitcoin-merklized-abstract-syntax-tree-mast-33fdf2da5e2f
- https://www.youtube.com/watch?v=Phn_Im2K_PY
- https://bitcoinops.org/en/topics/mast/
- https://themoneymongers.com/merkelized-abstract-syntax-tree-mast/
- https://diyhpl.us/wiki/transcripts/bitcoin-core-dev-tech/2017-09-07-merkleized-abstract-syntax-trees/
- Bitcoin Developer Guide - https://bitcoin.org/en/developer-guide#transaction-data (D.A. Harding - 2015, 12 Januari 2016)
https://bitcoin.org/en/glossary/simplified-payment-verification
- Iba pang sanggunian tingnan ang ver post #1
13. Taprootbumalik mula sa talaan ng nilalalamanAng pinagmulan ng ideya ng Taproot ay mula sa isang email mula sa developer ng Bitcoin na si Gregory Maxwell noong
January 2018 at itinuloy ni Pieter Wuille.
"Ano ang taproot? Sinusubukan nitong gawin ang lahat ng output scripts at karamihan sa mga gastusin ay hindi matukoy ," sabi ni Pieter Wuille. Ang Taproot ay nilalayon na pagbutihin ang privacy, kahusayan, at kakayahang umangkop ng Bitcoin's scripting nang walang nadadagdag na bagong palagay sa seguridad.

Sa halip na magkaroon ng magkahiwalay na konsepto para sa pay-to-pubkey at pay-to-script-hash, pinagsama sila upang gawing pareho ang lahat ng output. Ang bawat output ay puwedeng gastusin sa isang key at zero o marami pang scripts. At papunta ito na sa paraang ang paggastos gamit lamang ang public key ay sobrang episyente: mangangailangan lamang ito ng isang signature sa on-chain.
Taproot + Schnorr
Ang Taproot ay isang iskema para sa pagpirma ng mga script ng transaksyon. Sa pamamagitan ng Schnorr Signatures, papunta sa Muti signature scheme, pinapayagan nito ang pagsasama-sama ng mga key.
Pinagkunan:https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018-January/015614.htmlhttps://en.wikipedia.org/wiki/Merkle_treehttps://github.com/sipa/bips/blob/bip-schnorr/bip-taproot.mediawikihttps://cryptonews.com/news/bitcoin-a-step-closer-to-taproot-the-biggest-upgrade-since-s-5618.htmhttp://www.altnews.nu/taproot-the-new-update-that-will-revolutionize-the-bitcoin-blockchain/https://en.bitcoin.it/wiki/Scripthttps://blog.bitmex.com/the-schnorr-signature-taproot-softfork-proposal/https://www.bitcoinmedia.id/11-tahun-bitcoin-saatnya-privasi-bitcoin-dengan-taproot-dan-schnorr/https://bitcoinist.com/schnorr-taproot-soft-fork-promises-big-things-for-bitcoin/https://diyhpl.us/wiki/transcripts/sf-bitcoin-meetup/2019-12-16-bip-taproot-bip-tapscript/