Vitalik Vitalik: Apa kunci fase berikutnya dari Ether

Penulis:Vitalik Buterin
Penyusun:
Khusus berkat Yoichi Hirai, Justin Drake, Nadim Kobeissi dan Alex Hicks untuk umpan balik dan ulasan mereka。
Dalam beberapa bulan terakhir, paradigma pemrograman baru telah dengan cepat mendapatkan popularitas di lingkaran depan R&D dari Taifung dan di banyak sudut lain dari bidang komputasi: kode ditulis langsung dalam bahasa-bahasa tingkat sangat rendah (misalnya EVM bytes, bahasa kompilasi) atau Lean, dan validitas mereka divalidasi menggunakan sertifikat matematika yang dapat diverifikasi secara otomatis ditulis oleh Lean。
Jika dioperasikan dengan baik, tidak hanya mungkin untuk mengekspor kode yang sangat efisien, tetapi akan jauh lebih aman daripada di masa lalu. Ōichi Yoichi Hirai menyebut ini "bentuk pengembangan perangkat lunak yang paling hebat"。
Artikel ini akan berupaya membuka kedok rasionale, mengeksplorasi apa yang dapat dilakukan formalisasi perangkat lunak, dan di mana kelemahan dan keterbatasannya berada di daerah Taifung dan di tempat lain。
Apa itu formalisasi
Formalisasi lumba-lumba berarti persiapan sertifikat teorema matematika dengan cara yang mampu diperiksa secara otomatis. Untuk memberikan contoh yang relatif sederhana namun tetap menarik, mari kita lihat sebuah teorema dasar tentang seri Fibonacci: Setiap nomor ketiga genap dan sisanya ganjil。
1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 ...
Satu cara sederhana untuk membuktikan ini adalah melalui perhitungan matematika, yang mengambil tiga langkah ke depan setiap waktu。
Yang pertama adalah dasar. Kampung Set F1 = F2 = 1, F3 = 2. Dengan mengamatinya, kita melihat bahwa pernyataan ( "Fi bahkan ketika kelipatan 3 atau ganjil") didirikan sebelum x = 3。
Ini diikuti oleh ringkasan. Dengan asumsi bahwa pernyataan itu didirikan sebelum 3k+3, yaitu, kita sudah tahu bahwa keanehan F3k+1, F3k+2 dan F3k+3 adalah ganjil, ganjil, genap. Kita dapat menghitung keganjilan dari tiga angka berikutnya:
F3k+4 = F3k+2 + F3k+3 = ganjil + genap = ganjil F3k+5 = F3k+3 + F3k+4 = genap + ganjil = ganjil = ganjil
jadi kami mengetahui bahwa pernyataan itu telah diatur sebelum 3k+3, mengarah ke pernyataan yang diatur sebelum 3k+6. kami dapat menerapkan inferensi ini berulang-ulang, dan dengan demikian yakin bahwa aturan valid untuk semua integer。
Argumen ini cukup untuk meyakinkan umat manusia. Tapi bagaimana jika Anda ingin membuktikan seratus kali lebih rumit dan Anda ingin sangat yakin Anda tidak membuat kesalahan? Nah, Anda dapat memberikan komputer bukti yang meyakinkan。
Berikut adalah bagaimana disajikan:
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Itu penalaran yang sama, tapi diungkapkan di Lean. Bahasa lemadon Lean adalah bahasa pemrograman yang sering digunakan untuk menulis dan memvalidasi sertifikat matematika。
hal ini tampaknya berbeda dari "manusia" bukti yang diberikan di atas, dengan alasan yang baik: hal-hal yang melihat komputer (dalam arti tradisional dari "komputer," i.e., "pastinya" program yang terdiri dari jika/kemudian pernyataan, bukan model bahasa besar) berbeda dengan hal-hal yang memandang manusia。
Dalam sertifikat di atas, Anda tidak menekankan fakta bahwa fib(3k+4) = fib(3k+3) + fib(3k+2) tetapi lebih tepatnya bahwa fib(3k+3) + fib(3k+2) adalah bilangan ganjil, dan strategi Lean yang agak ambisius, disebut moga, secara otomatis menggabungkannya dengan pengetahuannya tentang definisi fib (3k+4)。
Dalam bukti yang lebih kompleks, Anda kadang-kadang harus menyatakan dalam setiap langkah hukum matematika yang memungkinkan Anda untuk mengambil langkah saat ini, dan kadang-kadang menggunakan nama seperti Prod.mk.inj。
tapi di sisi lain, anda dapat memperluas ekspresi multiform besar dalam satu langkah, dan hanya harus membenarkannya melalui ekspresi tunggal seperti "omega" atau "ring"。
Penjelasan intuitif dan rumit ini menjelaskan secara luas mengapa bidang masih kecil meskipun fakta bahwa bukti yang dapat diverifikasi mesin telah ada selama hampir 60 tahun. Di sisi lain, banyak hal yang sebelumnya mustahil sekarang dengan cepat menjadi mungkin sebagai hasil dari perkembangan pesat kecerdasan buatan。
Ketika sertifikat matematika mulai melindungi kode
sejauh ini, anda mungkin berpikir, komputer dapat memverifikasi teorema matematika, sehingga akhirnya kita dapat menentukan apa yang benar dalam kesimpulan baru yang gila ini tentang bilangan prima dan apa yang hanya kesalahan 100 halaman dalam pdf。
MUNGKIN KITA BISA MENCARI TAHU APAKAH HOPE SHINICHI BENAR SOAL TEBAKAN ABC
Jadi apa
Ada banyak kemungkinan jawaban. Tapi satu jawaban yang sangat penting bagi saya adalah untuk memverifikasi kebenaran program komputer, terutama yang melakukan kriptografi atau tugas terkait keamanan。
Bagaimanapun, program komputer adalah objek matematika, sehingga merupakan teorema matematika yang membuktikan bahwa program komputer beroperasi dalam beberapa cara。
Sebagai contoh, jika Anda ingin membuktikan bahwa perangkat lunak enkripsi seperti Signal benar-benar aman. Anda dapat menuliskan makna matematis dari "aman" dalam konteks ini。
Pada tingkat tinggi, Anda harus membuktikan bahwa, dengan asumsi pengodean tertentu valid, hanya mereka yang memiliki kunci privat yang dapat memperoleh informasi apapun tentang isi pesan. Kenyataannya, banyak atribut keamanan yang berbeda sangat penting。
Ternyata ada tim yang mencoba mencari tahu! Salah satu teori keselamatan mereka terlihat seperti ini:
Gaya code="font-size: pewarisan; font-famili: PingFang SC, Helvetica Neue, Helvetica, Arial, Hiragino Sans GB, Heiti SC, e-mail, WenQuanyi Mikro Hei, sans-serif;"Theorem pasif secracy le ddh (g:G:G:G) (adv: PassiveAdversary GSK): PassiveSecrecyAdvantage (F:=F) gadv unaidv unaquibcomp. bool.DistAdvan (Definifi Hellman) (Default=Defoundation=Defed=Defection (Defected) f:Fd=Fdd=Fdfd=Redd=Fdfdfd=Fd)
Berikut adalah ringkasan dari arti Leanstral:
security le ddh Theorem Pasific adalah sebuah kompak, menunjukkan bahwa kerahasiaan pesan pasif X3DH setidaknya sesulit hipotesis DDH di bawah model prediksi acak. Jika lawan bisa memecahkan kerahasiaan pasif X3DH, mereka bisa memecahkan DH。
Kita menganggap bahwa DDH sulit dipecahkan, X3DH juga aman untuk serangan pasif. Teorema tugoda membuktikan bahwa, jika lawan dapat mengamati secara pasif Signal ' s kunci pertukaran informasi, mereka tidak dapat membedakan antara kunci yang mereka buat dari kunci yang mereka ikuti dengan kunci rahasia pada kemungkinan yang lebih baik daripada yang tidak dapat ditentukan。
Jika Anda menggabungkannya dengan enkripsi AES untuk mendapatkan bukti yang benar, Anda mendapatkan tanda bahwa enkripsi Signal aman untuk penyerang pasif。
PROYEK-PROYEK SERUPA YANG TELAH MEMBUKTIKAN BAHWA REALISASI ASPEK LAIN DARI KATA SANDI DALAM TLS DAN PERAMBAN AMAN。
Jika Anda melakukan formalisasi penuh end-to-end, Anda membuktikan tidak hanya bahwa beberapa deskripsi teoretis protokol aman, tetapi bahwa kode spesifik yang pengguna jalankan juga aman dalam praktek。
Dari sudut pandang pengguna, hal ini sangat meningkatkan kebebasan kepercayaan: untuk sepenuhnya mempercayai kode, Anda tidak perlu memeriksa seluruh repositori, tetapi Anda hanya perlu memeriksa pernyataan-pernyataan tentang mana yang terbukti。
Sekarang ada beberapa premis penting untuk diingat, terutama apa kata penting "keamanan" berarti。
Mudah untuk melupakan pernyataan yang terbukti benar-benar penting. Sangat mudah untuk menemukan bahwa kadang-kadang pernyataan untuk membuktikan tidak digambarkan lebih sederhana daripada kode itu sendiri。
Hal ini mudah menyelinap ke dalam sertifikat asumsi yang akhirnya tidak valid. Hal ini juga mudah untuk memutuskan bahwa hanya satu bagian dari sistem perlu dibuktikan secara formal, tetapi hasilnya ditabrak oleh celah serius di bagian lain (bahkan perangkat keras)。
Bahkan Lean mungkin memiliki bug. Namun sebelum kita membahas semua detail yang menjengkelkan ini, mari kita jelajahi terlebih dahulu secara mendalam kemungkinan utopia yang dapat dibawa oleh penyempurnaan formalisasi yang benar dan ideal。
Kimiawan untuk Keselamatan
bug dalam kode komputer mengerikan。
ketika anda meletakkan uang terenkripsi ke dalam rantai tidak fleksibel kontrak cerdas, dan korea utara dapat secara otomatis menguras semua uang anda ketika bug muncul dan anda tidak bisa mengeluh, bug dalam kode menjadi lebih buruk。
ketika itu semua dibungkus dalam sertifikat pengetahuan nol, bug menjadi lebih buruk karena jika seseorang mencoba untuk meretas ke sistem bukti pengetahuan nol, mereka dapat mengambil semua uang, dan kita tidak tahu apa yang salah (dan lebih buruk, kita bahkan tidak tahu kapan itu salah)。
Ketika kita memiliki model AI yang kuat, seperti Claude Mythos, dua tahun kemudian, kita dapat secara otomatis menemukan bug ini, dan bug dalam kode bahkan lebih buruk。
Ada yang menanggapi kenyataan ini dengan mendukung gagasan dasar untuk meninggalkan kontrak yang cerdas, bahkan berargumen bahwa alam siber hanya tidak dapat menjadi daerah di mana para pembela dapat memiliki keunggulan asimetris atas penyerang mereka。
Beberapa kata pengantar:
Untuk memperkuat sistem, Anda perlu menghabiskan lebih banyak koin daripada penyerang untuk mengeksploitasi celah untuk mendeteksi mereka。
Dan:
Industri kita didasarkan pada kode kepastian. Tulis, uji, publikasikan, pastikan berhasil, tapi dalam pengalamanku kontrak ini rusak。
DI ANTARA OPERATOR ATAS AI YANG ASLI, PERPUSTAKAAN KODE TELAH MENJADI SESUATU YANG ANDA PERCAYA DAPAT BERJALAN, DAN ANDA TIDAK BISA LAGI TEPAT TENTANG KEMUNGKINAN KEBERHASILANNYA。
Lebih buruk lagi, beberapa orang percaya bahwa satu-satunya solusi adalah meninggalkan sumber terbuka。
Ini akan menjadi masa depan yang suram bagi keamanan cyber. Ini adalah prospek yang sangat pesimis, khususnya bagi kita yang peduli akan sentralisasi dan kebebasan Internet。
Seluruh kode roh punk didasarkan pada ide bahwa: Di Internet, para pembela memiliki keuntungan untuk menciptakan sebuah kastil digital (whether dienkripsi, ditandatangani atau disertifikasi) jauh lebih mudah daripada menghancurkan satu。
Jika kita kehilangan ini, keamanan internet hanya dapat datang dari ekonomi skala, dari mengejar penyerang potensial di seluruh dunia dan, dalam arti yang lebih luas, dari satu sisi antara dominasi dan kehancuran。
Saya tidak setuju bahwa saya memiliki visi yang lebih optimis untuk masa depan keamanan cyber。
SAYA BERPIKIR BAHWA TANTANGAN YANG DITIMBULKAN OLEH KEMAMPUAN UNTUK MENEMUKAN CELAH AI YANG KUAT ADALAH SERIUS, TAPI ITU ADALAH TRANSISI SATU. SETELAH DEBU TELAH MENETAP DAN KITA TELAH MEMASUKI TITIK KESEIMBANGAN BARU, KITA AKAN MEMILIKI LINGKUNGAN YANG LEBIH MENGUNTUNGKAN BAGI PARA PEMBELA DARIPADA DI MASA LALU。
Mozilla setuju denganku. Mereka mengutip:
Anda mungkin perlu menegur semua hal lain dan mencurahkan perhatian dan fokus pada tugas ini, tetapi terowongan berakhir dengan terang。
Kami sangat bangga dengan bagaimana tim kami menghadapi tantangan ini, dan yang lain akan. Pekerjaan kami belum selesai, tapi kami telah melewatinya dan mampu melihat masa depan yang jauh lebih baik daripada hanya menjaga kecepatan。
Akhirnya pertahanan memiliki kesempatan untuk menang dengan tegas. Kita memasuki dunia dimana kita akhirnya bisa menemukan mereka semua。
Sekarang, jika Anda menggunakan kata-kata pencarian Ctrl+F "formatisasi" dan "validasi" di pos Mozilla, Anda akan menemukan kecocokan nol. Masa depan positif keamanan siber tidak bergantung sepenuhnya pada formalisasi atau teknologi tunggal lainnya。
Apa kegunaannya? Pada dasarnya grafik ini:

MAKSILIN DALAM JUMLAH LUBANG CVE SETIAP SAAT
Selama beberapa dekade, banyak teknologi telah berkontribusi pada penurunan jumlah celah:
- Sistem Jenis Ogos
- Bahasa Aman Memori Memori
- Perbaiki kualitas untuk arsitektur perangkat lunak (termasuk kotak pasir, kontrol hak istimewa dan, lebih luas, perbedaan yang jelas antara " dasar yang kredibel dari perhitungan" dan " kode lainnya")
- Metode tes yang lebih baik
- Sistem pengetahuan tentang pola coding yang aman dan tidak aman terus menjadi kaya
- Semakin meningkatnya jumlah basis data pra-siap dan diaudit
Formalisasi nasionalis yang dibantu oleh kecerdasan buatan tidak boleh dilihat sebagai paradigma yang sama sekali baru, tetapi lebih sebagai akselerator yang kuat yang telah berevolusi ke arah dan paradigma。
Formalisasi nasionalis tidak universal. Namun, khususnya sesuai dalam situasi - situasi di mana tujuannya jauh lebih sederhana daripada mencapainya. Hal ini khususnya berlaku dalam beberapa teknologi yang sangat kompleks dan sulit yang perlu kita sebarkan dalam lintasan utama berikutnya dari ITA: tanda tangan tahan kuantum, STAK, algoritma konsensus dan ZK-EVM。
STAK adalah perangkat lunak yang sangat kompleks. Namun atribut keamanan inti yang dicapainya mudah dipahami dan diformalisasi: jika Anda melihat bukti Hashi H, input x dan output y menunjuk ke P, baik (i) algoritme Hashi yang digunakan dalam STAK rusak, atau (ii) P(x) = y。
Jadi kami memiliki proyek Arklib, yang mencoba untuk membuat realisasi STARK yang sepenuhnya diformalisasi (lihat VCV-io, yang menyediakan infrastruktur komputasi kalkulator dasar yang dapat digunakan untuk memvalidasi secara formal berbagai protokol enkripsi lainnya, banyak di antaranya mengandalkan STAK)。
Lebih ambisius adalah evm-asm: proyek untuk membangun seluruh EVM sepenuhnya diformalisasi。
Atribut keamanan di sini kurang mudah: pada dasarnya, tujuannya adalah untuk membuktikan bahwa mereka setara dengan EVM lain yang disiapkan oleh Lean, tetapi realisasi tersebut dapat disiapkan untuk memaksimalkan visualitas dan kemampuan membaca, tanpa pertimbangan apapun untuk eficiiciencies operasional spesifik。
ADA KEMUNGKINAN BAHWA KITA AKAN MENDAPATKAN SEPULUH EVM, SEMUANYA DAPAT TERBUKTI SAMA, DAN MEREKA KEBETULAN MENGANDUNG CACAT FATAL YANG SAMA YANG MEMUNGKINKAN PENYERANG UNTUK MENGURAS SEMUA ETH DARI ALAMAT MEREKA TIDAK MEMILIKI AKSES KE。
Tapi jauh lebih kecil kemungkinan bahwa beberapa EVM akan mencapai kekurangan seperti hari ini. Namun atribut keamanan lain yang penting, yaitu, perlawanan terhadap serangan DoS, mudah diatur ketika kita telah mengalami pelajaran yang menyakitkan。
Dua daerah penting lainnya adalah:
- Bizantium keliru untuk konsensus. Di sini, sama-sama sulit untuk meresmikan semua atribut keamanan yang diinginkan, tetapi patut dicoba, mengingat bug dulu begitu luas. Jadi kita memiliki kesepakatan konsensus dalam proses di Lean yang dicapai dan terbukti。
- Bahasa pemrograman kontrak yang cerdas: Lihat formalisasi di Vyper dan Verity。
dalam semua kasus ini, salah satu nilai tambahan besar sertifikasi formalisasi terletak pada fakta bahwa itu benar-benar akhir-ke-akhir. biasanya, bug terburuk adalah bug interaktif, yang terletak di persimpangan dua secara independen dianggap subsistem。
Hal ini terlalu sulit bagi manusia untuk menyimpulkan seluruh sistem dari akhir sampai akhir. Namun, sistem pemeriksaan aturan otomatis dapat melakukannya。
Sertifikasi formulir untuk efisiensi
Mari kita lihat evm-asm. Ini adalah realisasi EVM. Tapi itu dicapai langsung dengan EVM yang disusun oleh RISC-V。
Harga sebenarnya nyata。
INI ADALAH KODE ADD:
Kode etik = "font-size " .fontfont < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < <
SAAT INI RISC-V DIPILIH KARENA SERTIFIKAT ZK-EVM YANG SEDANG DIBANGUN BIASANYA BERFUNGSI DENGAN MELAKUKAN SERTIFIKASI RISC-V DAN MENGKOMPILASINYA SEBAGAI RISC-V UNTUK KLIEN TAIFENG. JADI JIKA ANDA MEMILIKI EVM DITULIS LANGSUNG DENGAN RISC-V UNTUK MENYADARI, ITU HARUS MENJADI TERCEPAT YANG DAPAT ANDA CAPAI。
FILUMES RISC-V JUGA DAPAT DISIMULASIKAN DENGAN SANGAT EFISIEN DALAM KOMPUTER BIASA (DAN TERDAPAT LAPTOP RISC-V DI PASARAN)。
TENTU SAJA, UNTUK BENAR-BENAR SAMPAI KE AKHIR, ANDA HARUS SECARA FORMAL MENGESAHKAN REALISASI RISC-V ITU SENDIRI (ATAU KALKULATOR SERTIFIKAT), TETAPI JANGAN KHAWATIR, ITU SUDAH ADA。
Itu yang biasa kita lakukan 50 tahun yang lalu. Sejak saat itu, kami telah menyerah praktek ini, daripada menulis kode dalam bahasa maju。
Bahasa-bahasa lanjutan mengkompromikan efisiensi, tetapi sebagai gantinya mereka menghasilkan kode jauh lebih cepat dan, yang lebih penting, memahami orang lain jauh lebih cepat, yang penting untuk keamanan。
Dengan menggabungkan validasi formal dan kecerdasan buatan, kita memiliki kesempatan untuk " kembali ke masa depan"。
Secara khusus, kita dapat memungkinkan kecerdasan buatan untuk menyiapkan kode kompilasi dan kemudian menghasilkan sertifikat formal untuk memverifikasi bahwa kode kompilasi memiliki atribut yang diperlukan。
Paling tidak, atribut yang dibutuhkan bisa sama dengan yang dioptimalkan untuk meningkatkan kemampuan membaca dan ditulis dalam bahasa ramah manusia。
Kita tidak perlu lagi objek kode tunggal untuk menyeimbangkan kemampuan baca dan efisiensi, tetapi untuk memiliki dua objek terpisah: satu (kompilasi mencapai) mengoptimalkan hanya efisiensi, memperhitungkan kebutuhan lingkungan tertentu di mana hal itu diterapkan; yang lain (pernyataan keamanan, atau pencapaian bahasa maju) mengoptimalkan kemampuan baca, dan kemudian kita membuktikan ekuivalen antara keduanya melalui pembuktian matematika。
Pengguna katagory dapat memverifikasi sertifikat (automatik) sekali, dan sejak itu mereka hanya harus menjalankan versi cepat。
Metode ini sangat kuat, dan Yoichi Hirai menyebutnya "bentuk utama pengembangan perangkat lunak" karena suatu alasan。
Formalisasi lumba-lumba bukanlah sebuah panacea
Di bidang kriptografi dan ilmu komputer, ada tradisi yang hampir setua pendekatan formalisasi itu sendiri: tradisi mengkritik formalisasi (atau, lebih luas, mengandalkan pembuktian)。
Karya sastra itu penuh dengan contoh praktis. Mari kita mulai dengan bukti tulisan tangan era awal kriptografi sederhana, mengutip kritik Menezes dan Koblitz pada tahun 2004:
Pada tahun 1979, Rabin mengusulkan fungsi terenkripsi yang "dibuktikan" aman dalam artian, i.e. memiliki atribut keamanan subjektivitas。
Menurut RSS, mereka yang dapat menemukan m pesan dari teks y juga harus dapat membusuk n. ... Tidak lama setelah Rabin menyajikan program enkripsinya, Riverst menunjukkan bahwa itu ironis bahwa itu adalah karakter yang memberikannya keamanan tambahan yang akan menyebabkan seluruh garis runtuh jika menghadapi penyerang lain disebut "Seleksi Rahasia"。
Dengan kata lain, dengan asumsi bahwa penyerang entah bagaimana dapat menipu Alice untuk mendekripsi rahasia pilihannya, penyerang dapat mengikuti langkah yang sama yang Sam gunakan untuk memecahkan n di paragraf sebelumnya。
Wadiezes dan Koblitz kemudian memberikan lebih banyak contoh. Pola yang umum adalah bahwa desain sekitar membuat protokol enkripsi lebih "proven" cenderung membuat mereka kurang "natural" dan membuat mereka lebih mungkin runtuh tanpa pertimbangan bahkan oleh desainer。
SEKARANG, MARI KITA KEMBALI KE SERTIFIKAT DAN KODE YANG DAPAT DIVERIFIKASI MESIN. IA ADALAH CONTOH PENGKOMPILASI "C" YANG DIFORMALISASI PADA 2011KertasKANTOR:
Masalah CompCert kedua yang kami temukan adalah pada dua bug yang menghasilkan kode berikut:
290 stwu r1, -44432(r1)Sebuah tumpukan PowerPC besar sedang didistribusikan di sini。Masalahnya adalah 16 bit medan perpindahan telah tumpah. Sintaks PPC CompCert tidak menetapkan batas langsung pada lebar, dengan asumsi bahwa kompilator akan menangkap nilai di luar jangkauan。
Dan satu pada tahun 2022KertasKANTOR:
Dalam CompCert-KVX, diserahkan e2618b31 dipulihkan bug: "nand" perintah akan dicetak sebagai "and"; " "nand" hanya akan digunakan dalam mode langka ~ (a ∓ b). Virus itu ditemukan melalui proses yang dihasilkan secara acak。
Dan hari ini, pada tahun 2026, berikut ini adalah deskripsi Nadim Kobeissi tentang kebocoran perangkat lunak resmi di Crystal:
Pada November 2025, Filippo Valsorda secara independen melaporkan libcrux-ml-dsa v0.0.3 kunci publik dan tanda tangan yang berbeda pada platform yang berbeda dengan input kepastian yang sama diberikan。
Kebug ini ada dalam fungsi paket internal vxarq u64, yang melakukan operasi XAR digunakan untuk menggantikan Keccak-f dengan SHA-3. Mekanisme backup yang dilewatkan tidak tepat parameter untuk operasi migrasi dan merusak ringkasan SHA-3 pada platform ARM64, yang tidak didukung oleh perangkat keras SHA-3。
INI ADALAH KEGAGALAN TIPE I: FUNGSI INTERNAL DITANDAI, DAN SELURUH BACKEND NEON TIDAK MELENGKAPI BUKTI KESELAMATAN BERJALAN ATAU KEBENARAN。
Dan:
perpustakaan libcrux-psq mencapai sebuah protokol kunci pra-pembayaran kuantum kemudian. Pada metode dekripsi keluar, jalur dekripsi AES-GCM 128 menggunakan .unwrap() alih-alih kesalahan persinyalan. Sebuah teks dalam format yang salah dapat menurunkan proses。
Empat pertanyaan di atas jatuh ke dalam salah satu dari dua kategori berikut:
- Hanya kode-kode parsial yang divalidasi (karena terlalu sulit untuk memvalidasi sisanya) dan ditemukan bahwa kode-kode yang belum diverifikasi lebih celah (dan dengan cara yang lebih mematikan) daripada yang dibayangkan oleh penulis。
- Penulisnya lupa kasus-kasus di mana atribut kunci perlu dibuktikan。
Artikel Nadim berisi klasifikasi model kegagalan formalisasi; ia juga memberikan pola kegagalan jenis lain (misalnya, kasus utama lainnya adalah bahwa "formalisasi norma per se salah, atau pembuktian mengandung pernyataan palsu yang diterima diam-diam oleh sistem yang dibangun”)。
Akhirnya, kita dapat melihat kegagalan formalisasi pada perangkat lunak dan perbatasan perangkat keras. Masalah umum di sini adalah kemampuan untuk memverifikasi serangan sambungan samping。
Bahkan jika Anda memiliki enkripsi aman yang sempurna untuk melindungi pesan Anda, Anda masih tidak aman jika orang beberapa meter pergi dapat menangkap fluktuasi telekomunikasi dan mengekstrak kunci pribadi Anda ratusan ribu kali setelah enkripsi。
Ini adalah analisis kekuatan diferensialArtikelIni adalah contoh teknologi yang sekarang dipahami dengan baik。

Analisis daya diferensial adalah jenis serangan saluran samping yang umum. Sumber: Wikipedia
Berbagai upaya telah dilakukan untuk membuktikan keselamatan mereka yang melawan serangan tersebut. Akan tetapi, bukti apa pun itu membutuhkan model matematika penyerang yang memungkinkan Anda menargetkannya sebagai bukti keselamatan。
kadang-kadang model deteksi ød" digunakan: kita berasumsi bahwa ada batas yang diketahui dari jumlah lokasi penyerang dapat mencari sirkuit. namun, beberapa bentuk kebocoran tidak ditangkap oleh model ini。
Seperti yang diamati oleh artikel ini, masalah umum adalah kebocoran transisi: jika Anda dapat mengamati sinyal yang tidak hanya bergantung pada lokasi yang diberikan tetapi juga pada perubahan nilai tersebut, biasanya cukup untuk mendapatkan Anda kembali dari dua nilai (baru dan lama) daripada hanya satu。
Artikel ini memberikan klasifikasi bentuk kebocoran lainnya。
Selama beberapa dekade, kritik formalisasi ini telah membantu meningkatkan formalisasi. Kita sekarang lebih siap untuk waspada terhadap masalah seperti itu daripada di masa lalu. Tapi bahkan hari ini, itu tidak sempurna。
Secara keseluruhan, ada petunjuk. Formalisasi nasionalis sangat kuat。
Namun istilah pemasaran apa pun yang membuat formalisasi terdengar seperti memberi Anda "memperbaiki kejelasan", yang disebut "membuktikan kebenaran" tidak membuktikan bahwa perangkat lunak (atau perangkat keras) adalah benar。
Menurut kebanyakan manusia, "kanan" berarti sesuatu seperti: "perilaku objek konsisten dengan pemahaman pengguna tentang maksud pengembang."。
Dan arti dari "safe" adalah mirip dengan: "Sesuatu tidak bertentangan dengan harapan pengguna dan melakukan sesuatu untuk merusak pengguna."。
Kebetulan dan keamanan dikaitkan dengan perbandingan antara objek matematika dan maksud atau harapan manusia。
Niat dan harapan manusia secara teknis juga objek matematika, dan, setelah semua, otak manusia adalah bagian dari alam semesta, mengikuti hukum fisika yang dapat disimulasikan jika Anda memiliki kalkulus yang cukup。
Tapi mereka sangat kompleks matematika objek yang komputer dan kita bahkan tidak bisa membaca。
Untuk semua tujuan praktis dan niat, mereka adalah kotak hitam; kita hanya tahu apa-apa tentang niat dan harapan kita karena kita masing-masing memiliki pengalaman bertahun-tahun dalam mengamati pikirannya sendiri dan mengekstradisi pikiran orang lain。
Dan karena kita tidak dapat memasukkan niat manusia primitif ke dalam komputer, sertifikasi formalisasi tidak dapat membuktikan perbandingan dengan niat manusia。
Jadi, jangan buktikan apa yang kita manusia pahami sebagai "haknessdan "keamanan". Tak ada yang bisa kita lakukan kecuali kita bisa mensimulasikan otak manusia。
Jadi untuk apa?
Saya lebih memilih untuk melihat paket pengujian, sistem tipe dan formalisasi sebagai cara yang berbeda untuk mencapai metode bawah yang sama untuk keamanan bahasa pemrograman (yang mungkin juga satu-satunya metode yang masuk akal)。
Mereka semua tentang mengatur niat kita dengan cara yang berbeda, dan kemudian secara otomatis memeriksa keserasian norma yang berbeda ini。
Contoh kode Python:
Gaya kode ="font-size: waris; keluarga font:PingFang SC, Helvetica Neue, Ariel, Hiragino Sans GB, Heiti SC, e-mail, WenQuan Yi Mikro, sans-serif; defib(n:int)>int: jika n < 0: Rice Exception ("Negative value tidak dilaporkan") elif < < < n: retru nse, 13, 34er (n-1) + fib(n-2) jika utama menegaskan:[i] untuk dirange=(0,1), 2] Di sini, Anda mengungkapkan niat Anda dalam tiga cara yang berbeda:
- Jelas, dengan menggunakan kode untuk mencapai rumus Fabonacci
- Halimunan, berdasarkan jenis sistem (spesifikan integer, keluaran dan langkah terbalik)
- Metode: test case
file berjalan mendamaikan formula dengan contoh. keserasian keserasian tipe keserasian keserasian keserasian keserasian keserasian keserasian keserasian keserasian keserasian keserasian keserasian: Penambahan dua integer adalah operasi kepatuhan dan menghasilkan integer lain。
Sistem tipe sering kali merupakan cara yang baik untuk memeriksa operasi dalam fisika: Jika kau menghitung percepatan, tapi kau punya jawaban dalam milimeter per detik daripada milimeter per detik, kau tahu kau salah。
Contoh uji coba adalah contoh definisi paket a "sample", yang sering kali jauh lebih alami bagi manusia daripada definisi langsung dan tampak。
Semakin berbeda Anda dapat mengatur niat Anda dan, idealnya, cara berbeda di mana Anda diminta untuk memecahkan masalah dengan cara berpikir yang berbeda, semakin besar kemungkinan Anda untuk benar-benar mengungkapkan apa yang benar-benar Anda inginkan sekali semua ekspresi ini terbukti kompatibel。

Program keamanan adalah untuk menyatakan niat Anda dalam berbagai cara dan kemudian secara otomatis memverifikasi apakah semua ekspresi ini kompatibel。
Formalisasi rentalisasi memungkinkan Anda untuk memperpanjang metode ini lebih lanjut. Dengan memformalisasi sertifikasi, Anda dapat mengatur niat Anda melalui redundansi dalam jumlah hampir tak terbatas, dan prosedur hanya dapat disahkan jika mereka sepenuhnya kompatibel。
Anda dapat mengatur pencapaian yang sangat dioptimalkan dan sangat tidak efisien tetapi mudah dibaca oleh manusia dan memastikan apakah mereka cocok. Anda dapat meminta 10 teman Anda untuk menyediakan daftar atribut matematika yang mereka pikir harus Anda miliki, dan kemudian memeriksa apakah itu semua lulus。
Jika tidak, cari tahu apakah program salah atau apakah sifat matematika salah. Dan kau bisa melakukan semua ini dengan kecerdasan buatan。
Jadi bagaimana aku memulainya
Agar realistis, kau tidak akan melakukannya sendiri. Formalisasi rentalisasi belum populer karena kebanyakan orang tidak mampu memahami cara menulis kata-kata yang tidak jelas ini. Bisa kau ceritakan apa arti kode ini
code-syle code-syle="font-size: waris; keluarga kelima: PingFang SC, Helvetica, Aral, Hiragino Sans GB, Heiti SC, e-mail, WenQuanyi Micro, sans-serif; > : Pembantu pada nilai akumulator. -/ Teorema accect le (ds 1 dsd = ddddd2 = dddddd1 > ; (hAcc: a b) > (hLE: > b) : ds1 ds2 : (hList.)
JIKA ANDA INGIN TAHU, INI ADALAH SALAH SATU DARI BANYAK SUB-HUBUNGAN DENGAN PERNYATAAN KEAMANAN TERTENTU UNTUK VARIAN TANDATANGAN SPHINCS。
Secara khusus, pernyataan adalah bahwa kecuali ada tabrakan Hashi, tanda tangan pesan akan perlu lebih tinggi dari tanda tangan pesan lain setidaknya di suatu tempat di tangga Hashi dan karena itu berisi informasi yang tidak dapat dihitung dari tanda tangan yang lain)
Anda tidak perlu menulis kode dan bukti secara manual. Anda hanya harus memiliki kecerdasan buatan menulis program untuk Anda (whether langsung ditulis dalam Lean atau dalam hal kecepatan) dan membuktikan setiap sifat yang diinginkan dalam proses。
Salah satu keuntungan dari tugas ini adalah bahwa itu sendiri dibuktikan sendiri, sehingga Anda tidak perlu mengawasinya, Anda hanya membiarkan kecerdasan buatan menjalankannya selama berjam-jam。
hasil terburuknya adalah ia berubah tempat (atau, seperti yang telah dilakukan oleh leanstral-ku sebelumnya, ia telah mengganti pernyataan yang diminta untuk membuktikan dalam rangka meringankan beban kerja sendiri)。
Satu-satunya hal yang perlu Anda periksa pada akhirnya adalah membuktikan bahwa pernyataan itu sesuai dengan persyaratan Anda。
INI ADALAH PERNYATAAN TERAKHIR:
Gaya-kode=Model-ukuran: warisan; findt-famili: PingFang SC, Helvetica, Arial, Hiragino Sans GB, Heiti SC, e-mail, WenQuan Yi Mikro Hei, sans-serif; >therem bekerja fullDigits incomparable {dig1 dig2: Daftar Nat} {wl1 lll1: Nat2 } (wwww: < wwl < wwl wwl ) (l1 : dgl1- dl1- dl1- dl1- dlb1-gh) (rh2: dig=2) dig=bg=2 (lglg1- ldg=1 dg1- dg=2, dg1- dg1- dg2) (db2) (dbdb2) (dbd2) (d- dg2- dg2) dg2 dg2 (d2: dig2 dg2- dg 2- dg2- dg 2- dg2 dg 2- d Ini sebenarnya di ambang menjadi hampir tidak bisa dibaca:
jika angka yang dihasilkan dari satu ringkasan hash (dig1) tidak sama dengan angka yang dihasilkan dari ringkasan hash lain (dig2)
Jadi tidak ada yang berikut:
- untuk semua angka, dig1 < = dig2
- untuk semua angka, dig2 < = dig1
Ini juga kasus dalam ÆwotsFullDigits" yang dihasilkan dengan menambahkan checksum. Dengan kata lain, dalam perluasan dig1 angkanya pasti akan lebih tinggi di beberapa tempat, dan di tempat lain, dalam perluasan dig2。
Aku menemukan bahwa Claude dan Deepseek 4 Pro sama-sama memenuhi syarat untuk menulis sertifikat menggunakan model bahasa besar. Aulessane Leanstral adalah model berat sumber terbuka kecil yang telah secara khusus baik-baik saja mempersiapkan Lean, yang merupakan alternatif yang menjanjikan。
Ini memiliki parameter 119B, setiap token mengaktifkan 6B, dan Anda dapat menjalankannya secara lokal, meskipun perlahan-lahan (sekitar 15 tok/detik pada laptop saya). Berdasarkan tes dasar, Leanstral memiliki model generik yang jauh lebih besar:
Berdasarkan pengalaman pribadiku saat ini, itu sedikit lebih buruk daripada Deepseek 4 Pro, tapi masih efektif。
Formalisasi nasionalis tidak menyelesaikan semua masalah kita。
Tetapi jika kita ingin model keamanan Internet tidak lagi didasarkan pada kepercayaan semua orang dalam beberapa organisasi yang kuat, kita perlu beralih untuk mempercayai kode, termasuk dalam menghadapi saingan intelektual buatan yang kuat。
AI-ENABLED FORMALISASI TELAH MEMUNGKINKAN KITA UNTUK MEMBUAT LANGKAH PADAT DI JALAN UNTUK MENCAPAI TUJUAN INI。
Seperti rantai blok dan ZK-SNARK, kecerdasan buatan dan formalisasi adalah teknik yang sangat komplementer。
ZK-SNARKs memberi Anda privasi dan scalability dengan mengorbankan privasi dan scalability, sementara ZK-SNARKs memberi Anda privasi dan scalability (sebenarnya lebih dari sebelumnya)。
Kecerdasan buatan memberikan kemampuan untuk menghasilkan sejumlah besar kode dengan biaya ketepatan, dan formalisasi memberikan ketepatan kembali (sebenarnya bahkan lebih tinggi dari sebelumnya)。
secara default, kecerdasan buatan akan menghasilkan sejumlah besar kode yang sangat tergesa-gesa, dan jumlah bug akan meningkat。
bahkan, dalam beberapa kasus, itu adalah perdagangan yang tepat untuk mentolerir peningkatan bug: jika bug ringan, bahkan perangkat lunak yang ada lebih baik daripada tanpa itu。
Tapi di sini, keamanan cyber memiliki masa depan yang optimis: perangkat lunak akan membagi (terus) ke dalam "tepi ketidakamanan"di sekitar inti "keamanan"。
Pinggiran yang tidak aman akan beroperasi dalam kotak pasir dan hanya akan diberikan kekuatan minimum yang diperlukan untuk menyelesaikan pekerjaan。
Pusat keamanan akan mengelola segalanya. Jika inti keamanan runtuh, semuanya runtuh, termasuk data pribadi Anda, uang Anda, dll. Tapi jika bagian dari kehancuran, inti keamanan masih bisa melindungimu。
kita tidak bisa membiarkan keberadaan serangga menyebar. kita akan mengambil tindakan radikal untuk mempertahankan ukuran kecil dari inti keamanan, dan bahkan lebih menguranginya。
Sebaliknya, kami telah menginvestasikan semua fitur tambahan kecerdasan buatan dalam tugas membuat inti keamanan lebih aman, sehingga dapat menanggung beban kepercayaan yang sangat besar yang telah kami letakkan di atasnya dalam masyarakat yang sangat didigitalkan。
Teras dalam sistem operasi (atau setidaknya sebagian) akan menjadi inti keselamatan seperti itu。
Rumah Ether akan menjadi yang lain。
Hal ini diharapkan bahwa setidaknya untuk semua perhitungan non-performance-intensif, perangkat keras yang Anda gunakan akan menjadi yang ketiga。
Sistem terkait jaringan barang akan menjadi yang keempat。
setidaknya dalam inti keamanan ini, pepatah lama "bug" tidak dapat dihindari, dan anda hanya dapat mencoba untuk menemukan mereka sebelum penyerang" akan digantikan oleh dunia yang lebih berharap, di mana anda akan memiliki keamanan yang nyata。
Tapi jika kau bersedia menyerahkan aset dan datamu pada perangkat lunak yang sudah dipersiapkan dengan buruk dan itu mungkin tak sengaja menelan mereka ke dalam lubang hitam, maka tentu saja kau punya kebebasan itu。
