Zhvilluesit e Zcash nxituan lëshimin e arnimeve emergjente javën e kaluar pas zbulimit të një dobësie kritike në Orchard shielded pool, e cila mund të kishte lejuar një sulmues të krijonte ZEC të rreme pa kufi. Bug-u u gjet nga studiuesi i sigurisë Taylor Hornby më 29 maj duke përdorur metoda formale të asistuara nga AI, duke shkaktuar një stërvitje emergjente që përfundoi me një hard fork vetëm katër ditë më vonë. Por për shkak se arkitektura e privatësisë së Zcash e bën të pamundur auditimin e furnizimit, ekipi nuk mund të provojë nëse shfrytëzimi është përdorur ndonjëherë — ose nëse nuk është përdorur.
Bug-u dhe zbulimi i tij
Dobësia qëndronte në një element të nën-kufizuar brenda pajisjes së shumëzimit të kurbës eliptike në halo2_gadgets crate, pjesë e sistemit të provës me njohuri zero që mbështet Orchard. Ajo kishte qenë atje që nga aktivizimi i mainnet të Orchard në maj 2022 — afërsisht katër vjet. Kjo nënkuptonte se kushdo që dinte për të mund, në teori, të krijonte ZEC nga asgjë pa lënë gjurmë në zinxhir.
Hornby gjeti çështjen duke përdorur mjete verifikimi formal të trajnuar mbi kodin kriptografik. Dobësia prekte të gjitha versionet e halo2_gadgets para v0.5.0, orchard para v0.14.0, dhe zcashd versionet v5.0.0 deri në v6.12.3.
Arnime emergjente të vendosura
Brenda orëve nga zbulimi, ekipi shtyu një soft fork përmes Zebra 4.5.3 që çaktivizoi përkohësisht të gjitha transaksionet Orchard. Një rregullim permanent erdhi me hard fork NU6.2 — Zebra 5.0 — i cili u aktivizua më 2 qershor në bllokun 3,364,600 dhe korrigjoi vetë qarkun. Përdoruesit në nyjet e prekura duhej të përmirësonin menjëherë për të qëndruar në zinxhirin e duhur.
Shielded Labs, e cila kontribuon në zhvillimin e Zcash, deklaroi në një njoftim se besojnë se shfrytëzimi i mëparshëm është i pamundur, por nuk mund ta provojnë përfundimisht. Kjo pasiguri është e integruar në dizajnin e sistemit: shielded pools fshehin shumat dhe balancat e transaksioneve, duke e bërë kriptografikisht të pamundur auditimin e furnizimit total.
Pyetja pa përgjigje
David Schwartz, CTO i Ripple, komentoi rrezikun praktik. Mbajtësit pasivë që nuk i lëvizin kurrë monedhat e tyre do të jenë të sigurt, tha ai — duke supozuar se bug-u nuk është shfrytëzuar ndonjëherë. Por ky kusht nuk mund të verifikohet. Mënyra e vetme për të qenë i sigurt do të ishte të komprometohej mburoja që Zcash u ndërtua për të mbrojtur.
Është një moment i rrallë kur veçoria kryesore e një monedhe privatësie bëhet detyrimi i saj më i madh. Nëse një sulmues krijonte ZEC të rreme dhe i fuste në qarkullim, nuk ka asnjë mënyrë për ta ditur. Furnizimi mund të ishte i fryrë dhe askush nuk do ta dinte.
Reagimi i tregut
ZEC nuk priti për përgjigje. Çmimi ra më shumë se 30% në një seancë të vetme pas zbulimit të 29 majit, duke arritur për pak kohë nivelin më të ulët në më shumë se një muaj. Shitja pasqyronte jo vetëm bug-un, por edhe pasigurinë rreth ndikimit të tij të mundshëm. Një monedhë private që nuk mund të verifikojë furnizimin e saj është një shitje e vështirë, të paktën në afatin e shkurtër.
Arnimet janë aktive tani dhe transaksionet Orchard janë rikthyer në linjë. Por pyetja që mbetet — a u shfrytëzua bug-u ndonjëherë? — është një pyetje që arkitektura e Zcash mund të mos lejojë kurrë të përgjigjet nga askush.




