Coba jelasin Klasifikasi dari Perangkat lunak enkripsi dong

Ada banyak produk perangkat lunak yang menyediakan enkripsi. Enkripsi perangkat lunak menggunakan cipher untuk mengaburkan konten ke dalam ciphertext. Salah satu cara untuk mengklasifikasikan jenis perangkat lunak ini adalah dengan jenis cipher yang digunakan. Sandi dapat dibagi menjadi dua Kategori: sandi kunci publik (juga dikenal sebagai sandi asimetris), dan kunci sandi simetris. Perangkat lunak enkripsi dapat didasarkan pada kunci publik atau enkripsi kunci simetris.

Cara lain untuk mengklasifikasikan enkripsi perangkat lunak adalah untuk mengkategorikan tujuannya. Menggunakan pendekatan ini, perangkat lunak enkripsi dapat diklasifikasikan ke dalam perangkat lunak yang mengenkripsi "data dalam transit " dan perangkat lunak yang mengenkripsi "data di sisa ". Data dalam transit umumnya menggunakan sandi kunci publik, dan data saat istirahat umumnya menggunakan sandi kunci simetris.

Cipher kunci simetris dapat dibagi lagi menjadi aliran sandi dan blok cipher. Stream cipher biasanya mengenkripsi plaintext sedikit atau byte pada satu waktu, dan yang paling sering digunakan untuk mengenkripsi komunikasi real-time, seperti informasi audio dan video. Kuncinya digunakan untuk menetapkan keadaan awal Generator keystream, dan output dari generator tersebut digunakan untuk mengenkripsi plaintext. Algoritma blok penyandian membagi plaintext menjadi blok ukuran tetap dan mengenkripsi satu blok setiap kali. Sebagai contoh, AES proses blok 16-byte, sementara pendahulunya DES blok terenkripsi delapan byte.

Ada juga kasus terkenal di mana PKI digunakan untuk data dalam transit data saat istirahat.