Cryptology Academy · Pelajaran

Tandatangan RSA: Tandatangan & Sahkan

Ikuti langkah pengiraan untuk menandatangani cincangan dokumen dengan kunci peribadi.

Pelajaran 2 daripada 413 langkah

Tandatangan RSA: Tandatangan & Sahkan ialah pelajaran Cryptology Academy percuma di CoddyKit. Ini ialah pelajaran 2 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.

Selamat Datang

Tandatangan RSA menukar peranan kunci: kunci peribadi menandatangani dan kunci awam mengesahkan. Ini membolehkan sesiapa sahaja mengesahkan identiti anda menggunakan kunci awam anda.

Matematik Penandatanganan RSA

Untuk menandatangani mesej M dengan kunci peribadi (d, n): 1. H = SHA256(M) 2. sig = H^d mod n Tandatangan ialah nombor yang mempunyai panjang bit yang sama seperti n.

Matematik Pengesahan RSA

Untuk mengesahkan tandatangan sig dengan kunci awam (e, n): 1. H' = sig^e mod n 2. H = SHA256(M) 3. Sah jika H == H' Sesiapa yang mempunyai kunci awam boleh mengesahkan — tiada rahsia diperlukan.

Pelapikan Tandatangan PKCS#1 v1.5

Tandatangan RSA mentah boleh diubah suai. PKCS#1 v1.5 menambah pelapik pada cincangan sebelum penandatanganan: 0x00 0x01 [0xFF padding] 0x00 [DigestInfo] [Hash] Pengesahan menyemak struktur pelapik yang tepat.

RSA-PSS: Pelapik Lebih Baik

RSA-PSS (Skim Tandatangan Kebarangkalian) menggunakan garam rawak, menjadikan setiap tandatangan berbeza walaupun untuk mesej yang sama. Keselamatannya boleh dibuktikan dalam model oracle rawak. Lebih disyorkan berbanding PKCS#1 v1.5.

Penandatanganan RSA Python (PSS)

from cryptography.hazmat.primitives.asymmetric import padding from cryptography.hazmat.primitives import hashes signature = private_key.sign( message, padding.PSS( mgf=padding.MGF1(hashes.SHA256()), salt_length=padding.PSS.MAX_LENGTH ), hashes.SHA256() )

Pengesahan RSA Python

try: public_key.verify( signature, message, padding.PSS( mgf=padding.MGF1(hashes.SHA256()), salt_length=padding.PSS.MAX_LENGTH ), hashes.SHA256() ) print('Valid!') except InvalidSignature: print('Invalid!')

Panjang Tandatangan

Tandatangan RSA-2048: 256 bait. RSA-4096: 512 bait. Tandatangan ECDSA-256: ~71 bait (pengekodan DER yang berubah-ubah). Tandatangan mengandungi keseluruhan output pengkuasaan modular.

Tandatangan Buta

Tandatangan buta membolehkan penandatangan menandatangani mesej tanpa melihat kandungannya. Digunakan dalam pengundian elektronik dan wang elektronik: bank menandatangani token yang dibutakan, kemudian pengguna menyahbutakannya — wang yang tidak boleh dijejaki.

Tandatangan RSA dalam Rantaian Sijil

Let's Encrypt menandatangani sijil pelayan anda dengan kunci peribadi RSA CA perantara. Kunci awam pelayan anda berada dalam badan sijil. Klien TLS mengesahkan rantaian ini secara automatik.

Ketelusan Sijil

Ketelusan Sijil merekodkan semua sijil yang diterbitkan dalam pepohon Merkle yang boleh disahkan secara kriptografi. Cap Masa Sijil Bertandatangan (SCT) membuktikan penyertaan dalam log sebelum sijil diterbitkan.

Semakan Pantas

Dalam pengesahan tandatangan RSA, kunci manakah yang digunakan untuk mengesahkan tandatangan?

Imbas Kembali

Tandatangan RSA selamat dengan pelapikan yang betul. Seterusnya kita membandingkan skema tandatangan RSA dengan DSA dan ECDSA.
Percuma untuk bermula

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 RSA: Tandatangan & Sahkan” percuma?

Ya — teks penuh “Tandatangan RSA: Tandatangan & Sahkan” 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 RSA: Tandatangan & Sahkan”?

Ikuti langkah pengiraan untuk menandatangani cincangan dokumen dengan kunci peribadi. 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 2 daripada 4.

Berapa lamakah pelajaran “Tandatangan RSA: Tandatangan & Sahkan” 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

  1. Apakah Tandatangan Digital?
  2. Tandatangan RSA: Tandatangan & Sahkan
  3. Skema Tandatangan DSA & ECDSA
  4. Tandatangan dalam Penggunaan Sebenar: Penandatanganan Kod & E-mel
← Kembali ke Cryptology Academy