Rumah > Artikel > tutorial komputer > Apakah algoritma penyulitan data yang lebih biasa?
Beberapa algoritma penyulitan simetri: AES, DES, 3DES
DES ialah teknologi penyulitan data paket berkelajuan tinggi yang membahagikan data kepada blok data kecil dengan panjang tetap, dan kemudian menyulitkan setiap blok data. 3DES ialah algoritma penyulitan berdasarkan DES Dengan menyulitkan blok data yang sama tiga kali dan menggunakan kekunci yang berbeza, kekuatan teks sifir dipertingkatkan. Algoritma penyulitan ini sesuai untuk senario di mana sejumlah besar data perlu disulitkan kerana ia lebih pantas.
Berbanding dengan algoritma DES dan 3DES, algoritma AES mempunyai kelajuan dan kecekapan sumber yang lebih tinggi, di samping menyediakan tahap keselamatan yang lebih tinggi, jadi ia diiktiraf secara meluas sebagai standard penyulitan generasi seterusnya.
Beberapa algoritma penyulitan asimetri: RSA, DSA, ECC
RSA dan DSA mempunyai keselamatan dan prestasi yang serupa, manakala ECC mempunyai kelebihan ketara dalam kelajuan pemprosesan, lebar jalur, ruang storan, dsb.
Beberapa algoritma pencincangan linear (algoritma tandatangan): MD5, SHA1, HMAC
Algoritma ini hanya menjana rentetan teks sifir tidak boleh balik, yang digunakan untuk mengesahkan sama ada data telah diubah suai semasa proses penghantaran. Memandangkan algoritma generasi yang sama hanya akan menghasilkan teks sifir unik untuk teks biasa yang sama, jika teks sifir yang dihasilkan oleh algoritma yang sama adalah berbeza, ia membuktikan bahawa data penghantaran telah diubah suai. Biasanya semasa penghantaran data, penggunaan algoritma MD5 dan SHA1 memerlukan kedua-dua pihak menghantar dan menerima data untuk mengetahui algoritma penjanaan kunci sebelum penghantaran. Perbezaannya ialah algoritma HMAC perlu menjana kunci Pengirim menggunakan kunci ini untuk mencerna data (menjana teks sifir, kemudiannya penerima menggunakan kunci ini untuk mencerna data yang diterima dan menentukan teks sifir yang dihasilkan adalah sama). Oleh itu, algoritma HMAC menyediakan keselamatan dan kerahsiaan yang lebih tinggi.
Untuk pemilihan pelbagai algoritma penyulitan:
Disebabkan oleh kerumitan pengurusan kunci dalam algoritma penyulitan simetri, pengurusan kunci secara langsung menentukan keselamatan. Oleh itu, untuk volum data yang kecil, pertimbangkan untuk menggunakan algoritma penyulitan asimetri.
Dalam operasi sebenar, pendekatan biasa ialah menggunakan algoritma penyulitan asimetri untuk mengurus kunci algoritma simetri dan menggunakan algoritma penyulitan simetri untuk menyulitkan data. Pendekatan ini menggabungkan kelebihan dua jenis algoritma penyulitan, yang bukan sahaja boleh mencapai kelajuan penyulitan yang lebih pantas, tetapi juga memudahkan dan menjamin pengurusan kunci.
Jika algoritma penyulitan dipilih, berapa bit kunci yang akan digunakan? Secara umumnya, lebih panjang kunci, lebih perlahan ia berjalan Ia harus dipilih mengikut tahap keselamatan yang sebenarnya kita perlukan, RSA mengesyorkan menggunakan nombor 1024-bit, ECC mengesyorkan menggunakan nombor 160-bit, dan AES menggunakan 128-. nombor bit.
1. penyulitan MD5
rentetan md5 ( rentetan $str [, bool $raw_output = palsu ] )
2. Penyulitan Crype
string crypt ( string $str [, string $salt ] )
crypt() Mengembalikan rentetan cincang berdasarkan algoritma UNIX DES standard atau algoritma alternatif lain yang tersedia pada sistem.
3. penyulitan Sha1
rentetan sha1 ( rentetan $str [, bool $raw_output = palsu ] )
4. penyulitan URL
rentetan urlencode (rentetan $str)
5.base64
string base64_encode (rentetan $data)
Atas ialah kandungan terperinci Apakah algoritma penyulitan data yang lebih biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!