SRP: Protokol Kata Laluan Jauh Selamat
Fahami cara SRP membolehkan klien dan pelayan saling mengesahkan tanpa pelayan menyimpan kata laluan.
SRP: Protokol Kata Laluan Jauh Selamat 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.
Gambaran Keseluruhan dan Sejarah SRP
Protokol Kata Laluan Jauh Selamat (SRP) dibangunkan oleh Tom Wu di Stanford dan diterbitkan sebagai RFC 2945 pada tahun 2000, dengan versi yang dipertingkatkan, SRP-6a, ditakrifkan kemudian. SRP membolehkan pengesahan bersama berdasarkan kata laluan yang dikongsi tanpa pernah menghantar kata laluan itu sendiri, walaupun dalam bentuk yang disulitkan.
Pelayan Menyimpan Pengesah, Bukan Kata Laluan
Semasa pendaftaran SRP, klien mengira pengesah kata laluan v = g^x mod N, dengan x = H(garam || kata laluan) dan N ialah nombor perdana selamat yang besar. Pelayan hanya menyimpan garam dan pengesah v. Walaupun pangkalan data pelayan terjejas, pengesah yang disimpan tidak mendedahkan kata laluan secara langsung.
Penjanaan Kunci Sesi SRP
Semasa log masuk SRP, klien dan pelayan melakukan pertukaran seakan-akan DH yang menghasilkan kunci sesi dikongsi. Pengiraan pada setiap pihak menggabungkan nilai terbitan kata laluan, maka kunci sesi yang terhasil hanya boleh dikira dengan betul oleh pihak yang masing-masing mengetahui kata laluan dan pengesah.
Pengesahan Bersama dalam SRP
SRP menyediakan pengesahan bersama: klien membuktikan bahawa ia mengetahui kata laluan, manakala pelayan membuktikan bahawa ia memegang pengesah yang sah. Ini mencegah serangan pancingan data yang melibatkan pelayan palsu cuba mengumpulkan maklumat kata laluan, kerana pelayan palsu tidak boleh melengkapkan pertukaran SRP dengan betul tanpa pengesah sebenar.
Pengiraan Pengesah
Pengesah dikira sebagai v = g^x mod N, dengan x = H(garam || kata laluan), g ialah penjana dan N ialah nombor perdana selamat berukuran 2048 bit atau lebih. Masalah logaritma diskret menjadikan pemulihan x daripada v tidak praktikal dari segi pengiraan. Kata laluan hanya boleh disahkan dengan melengkapkan keseluruhan pertukaran SRP dengan jayanya.
Penambahbaikan SRP-6a
SRP-6a menangani kelemahan dalam reka bentuk SRP-3 dan SRP-6 yang asal dengan memperkenalkan parameter pengganda k = H(N, g) serta mengubah suai susunan pengiraan klien dan pelayan. Perubahan ini mencegah serangan tekaan dua-untuk-satu tertentu dan memastikan sumbangan pelayan diikat lebih awal dalam protokol.
SRP dalam Sistem Sebenar
SRP telah digunakan dengan ketara dalam dunia sebenar. Apple menggunakan SRP dalam penyegerakan Rantai Kunci iCloud untuk membolehkan peranti mendapatkan data rantai kunci tanpa mendedahkan kata laluan akaun kepada pelayan Apple. 1Password telah menggunakan SRP dalam model pengesahannya untuk mencegah pendedahan kelayakan pada pelayan.
SRP Mencegah Pancingan Data
Oleh sebab SRP menjana kunci sesi yang mengikat kata laluan dan pengesah pelayan, pelayan pancingan data tidak boleh melengkapkan jabat tangan SRP dengan betul. Pengguna yang bersambung ke tapak pancingan data melalui SRP akan gagal disahkan, lalu menyediakan ciri terbina dalam untuk menentang pancingan data yang tidak terdapat dalam penghantaran kata laluan tradisional.
Batasan SRP
SRP mahal dari segi pengiraan kerana memerlukan pengeksponenan modular dengan integer besar berukuran 2048 bit atau lebih. Protokol ini rumit untuk dilaksanakan dengan betul, dengan banyak perangkap halus dalam pengesahan parameter yang telah menyebabkan kelemahan pelaksanaan. Protokol ini juga memerlukan saluran selamat (TLS) untuk mencegah pengintipan pasif terhadap pertukaran itu sendiri.
Suite Sifir TLS-SRP
RFC 5054 mentakrifkan suite sifir TLS-SRP yang menggabungkan pengesahan bersama SRP secara langsung ke dalam jabat tangan TLS. Ini menghapuskan keperluan terhadap sijil pelayan sambil tetap menyediakan pengesahan bersama yang disulitkan. Walau bagaimanapun, TLS-SRP menerima penggunaan yang terhad dalam amalan kerana FIDO2 dan kunci laluan telah muncul sebagai alternatif yang lebih moden.
SRP berbanding Alternatif Moden
Walaupun SRP merupakan pencetus perubahan besar, alternatif moden seperti OPAQUE menyediakan jaminan keselamatan yang lebih kukuh (ketahanan terhadap prapengiraan), manakala FIDO2/kunci laluan menghapuskan kata laluan sepenuhnya. Untuk sistem baharu, OPAQUE atau FIDO2 lebih disukai, tetapi SRP kekal sebagai pilihan yang sah bagi sistem yang memerlukan pengesahan bersama berasaskan kata laluan tanpa kerentanan terhadap pancingan data.
Semakan Pengesah SRP
Dalam SRP, apakah yang disimpan oleh pelayan sebagai ganti kata laluan pengguna?
Ulang Kaji Pelajaran: Pengesahan SRP
SRP menyimpan pengesah kata laluan, bukannya kata laluan, menjana kunci sesi dikongsi melalui pertukaran seakan-akan DH dan menyediakan pengesahan bersama yang tahan terhadap pancingan data. SRP-6a menambah baik versi asal dengan ketahanan terhadap serangan tekaan. Rantai Kunci iCloud Apple dan 1Password menggunakan SRP dalam sistem sebenar. OPAQUE dan FIDO2 ialah pengganti moden untuk sistem baharu.
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 “SRP: Protokol Kata Laluan Jauh Selamat” percuma?
Ya — teks penuh “SRP: Protokol Kata Laluan Jauh Selamat” 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 “SRP: Protokol Kata Laluan Jauh Selamat”?
Fahami cara SRP membolehkan klien dan pelayan saling mengesahkan tanpa pelayan menyimpan kata laluan. 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 “SRP: Protokol Kata Laluan Jauh Selamat” 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
- Masalah Asas Pengesahan Kata Laluan
- SRP: Protokol Kata Laluan Jauh Selamat
- Protokol PAKE dan Sifatnya
- Pengesahan Tanpa Kata Laluan: WebAuthn dan FIDO2