$XPL #plasma Până acum, fiecare Propunere de Îmbunătățire Bitcoin (BIP) care avea nevoie de primitive criptografice a trebuit să reinventeze roata. Fiecare dintre ele a venit însoțit de propria implementare personalizată în Python a curbei eliptice secp256k1 și a algoritmilor aferenți, fiecare fiind subtil diferită de celelalte. Aceste inconsistențe au introdus pasive silențioase și au făcut ca revizuirea BIP-urilor să fie inutil complicată. Această problemă a fost subliniată recent în Buletinul Bitcoin Optech #348, și este ceva ce cel puțin un grup de dezvoltatori din comunitatea de dezvoltare Bitcoin a simțit de mult timp: ar trebui să existe un standard unificat și reutilizabil pentru codul de referință criptografic BIP secp256k1.
Săptămâna trecută, Jonas Nick și Tim Ruffing de la Blockstream research, împreună cu Sebastian Falbesoner, au făcut progrese mari în această direcție. Ca parte a propunerii lor existente ChillDKG, echipa a lansat secp256k1lab. O nouă bibliotecă Python intenționat INSECURĂ pentru prototipare, experimente și specificații BIP. Nu este pentru utilizare în producție (deoarece nu este constant-time și, prin urmare, vulnerabilă la atacuri de tip side-channel), dar umple o lacună critică: oferă o referință curată și consistentă pentru funcționalitatea secp256k1, inclusiv semnăturile Schnorr de tip BIP-340, ECDH și aritmetica de nivel scăzut pentru câmpuri/grupuri. Scopul este simplu: să facă mai ușor și mai sigur să scriem viitoarele BIP-uri, evitând implementările redundante și de o singură dată. Pentru autorii de BIP-uri, asta înseamnă: mai puțin cod personalizat, mai puține probleme de specificație și un parcurs mai clar de la prototip la propunere.