Tandatangan CRYSTALS-Dilithium & Falcon
Bandingkan skema tandatangan digital berasaskan kekisi yang dipiawaikan oleh NIST.
Tandatangan CRYSTALS-Dilithium & Falcon ialah pelajaran Cryptology Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Cryptology Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Cryptology Academy merangkumi sejumlah 4 pelajaran.
Keperluan Tandatangan Pascakuantum
Tandatangan RSA dan ECDSA dapat dipecahkan oleh algoritma Shor. Tandatangan pascakuantum mesti menggantikannya untuk: sijil TLS, penandatanganan kod, penandatanganan e-mel (S/MIME, PGP), dan pengesahan kemas kini perisian. NIST menyeragamkan dua skim berasaskan kekisi: ML-DSA dan FN-DSA.
CRYSTALS-Dilithium (ML-DSA)
Dilithium berasaskan kesukaran Module-LWE dan Module-SIS (Penyelesaian Integer Pendek). Bukti keselamatan diberikan dalam QROM (Model Peramal Rawak Kuantum). Tiga variasi: Dilithium2 (kira-kira 128 bit), Dilithium3 (kira-kira 192 bit), Dilithium5 (kira-kira 256 bit). Laluan tandatangan yang ringkas dan bebas daripada pensampelan penolakan.
Penandatanganan Dilithium
Kunci peribadi: matriks rahsia s1, s2. Kunci awam: t = As1 + s2. Untuk menandatangani: ambil sampel y rawak; kira w = Ay; kira cabaran c = H(mu || w1) dengan w1 = HighBits(w); kira z = y + cs1; jika ||z|| atau ||r0|| terlalu besar, tolak dan cuba lagi. Hasilkan (z, c, hint).
Pengesahan Dilithium
Sahkan (z, c, hint): semak bahawa ||z|| kecil; kira w' = Az - ct; gunakan hint untuk mendapatkan semula w1; sahkan c == H(mu || w1). Hint ialah sebilangan kecil bit daripada MakeHint(). Penolakan memastikan z tidak membocorkan s1 — hujah keselamatannya ialah hujah “gagal kemudian seragam”.
Saiz Kunci/Tandatangan Dilithium
ML-DSA-65 (Dilithium3, keselamatan 192 bit): kunci awam 1952 bait, kunci peribadi 4000 bait, tandatangan 3293 bait. Bandingkan: ECDSA-P256: kunci awam 64 bait, tandatangan 64 bait. Tandatangan Dilithium kira-kira 40-50 kali lebih besar tetapi tahan kuantum.
Falcon (FN-DSA)
Falcon berasaskan kekisi NTRU dan menggunakan pensampel Gaussian pada kekisi NTRU. Tandatangannya jauh lebih kecil berbanding Dilithium, tetapi penandatanganan memerlukan pensampel Gaussian titik apungan — lebih sukar dilaksanakan dalam masa malar dan lebih rumit untuk dikodkan dengan selamat.
Saiz Kunci/Tandatangan Falcon
Falcon-512 (keselamatan 128 bit): kunci awam 897 bait, tandatangan 666 bait — jauh lebih kecil berbanding Dilithium. Pertukarannya: Falcon lebih sukar dilaksanakan dengan selamat (pensampelan Gaussian terdedah kepada serangan pemasaan). Sesuai untuk persekitaran dengan lebar jalur terhad tetapi memerlukan pelaksanaan yang teliti.
SPHINCS+ (SLH-DSA)
SPHINCS+ ialah skim tandatangan berasaskan cincangan — pilihan konservatif tanpa andaian algebra berstruktur. Keselamatannya hanya bergantung pada keselamatan fungsi cincang. Saiz tandatangan: kira-kira 8-50 KB (besar). Penandatanganan perlahan. Digunakan apabila kepercayaan jangka panjang amat penting dan prestasi menjadi keutamaan kedua.
Memilih antara Skim
ML-DSA (Dilithium): tujuan umum, pelaksanaan mudah, sesuai untuk sijil TLS dan penandatanganan kod. FN-DSA (Falcon): persekitaran dengan lebar jalur terhad (Internet Benda, LPWAN). SLH-DSA (SPHINCS+): sangat konservatif, akar yang berumur panjang (kunci luar talian CA, akar kepercayaan perisian).
Kebimbangan Pelaksanaan
Dilithium: pensampelan penolakan mungkin membocorkan pemasaan cabang — gunakan perbandingan masa malar. Falcon: pensampel Gaussian menggunakan titik apungan — pastikan ketentuan FP. Kedua-duanya: elakkan saluran sampingan dalam aritmetik polinomial. Gunakan pelaksanaan rujukan daripada pakej penyerahan NIST.
Piawaian FIPS
NIST FIPS 204: ML-DSA (Dilithium). NIST FIPS 205: SLH-DSA (SPHINCS+). NIST FIPS 206: FN-DSA (Falcon). Semua diterbitkan pada Ogos 2024. Pustaka: OpenSSL 3.x, BoringSSL dan liboqs (projek Open Quantum Safe) melaksanakan ketiga-tiganya.
Semakan Pantas
Apakah kelebihan utama Falcon berbanding Dilithium?
Imbas Kembali
ML-DSA (Dilithium): berasaskan kekisi, ringkas, tandatangan kira-kira 3 KB. FN-DSA (Falcon): berasaskan NTRU, tandatangan kira-kira 700 bait, pelaksanaan rumit. SLH-DSA (SPHINCS+): berasaskan cincangan, konservatif, besar. Semua diseragamkan dalam FIPS 204/205/206. Seterusnya: berhijrah kepada PQC dengan pendekatan hibrid.
Pelajari Cryptology Academy dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 67
- Pelajaran
- 261
Soalan Lazim
Adakah pelajaran “Tandatangan CRYSTALS-Dilithium & Falcon” percuma?
Ya — teks penuh “Tandatangan CRYSTALS-Dilithium & Falcon” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Cryptology Academy, tingkat taraf kepada CoddyKit PRO. Kursus Cryptology Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Tandatangan CRYSTALS-Dilithium & Falcon”?
Bandingkan skema tandatangan digital berasaskan kekisi yang dipiawaikan oleh NIST. Anda berlatih Cryptology Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Cryptology Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Cryptology Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.
Berapa lamakah pelajaran “Tandatangan CRYSTALS-Dilithium & Falcon” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Cryptology Academy ini?
Ya. Setiap pelajaran Cryptology Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Algoritma Shor & Grover Diterangkan
- CRYSTALS-Kyber: KEM Berasaskan Kekisi
- Tandatangan CRYSTALS-Dilithium & Falcon
- Penghijrahan ke PQC: Pendekatan Hibrid