Senin, 24 Oktober 2016

KSK KRIPTOGRAFI

KRIPTOGRAFI

Kriptografi (cryptography) berasal dari bahasa Yunani, terdiri dari dua suku kata yaitu kripto dan graphia. Kripto artinya menyembunyikan, sedangkan graphia artinya tulisan. Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi, seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data .Tetapi tidak semua aspek keamanan informasi dapat diselesaikan dengan kriptografi.
Kriptografi dapat pula diartikan sebagai ilmu atau seni untuk menjaga keamanan pesan.


1. Kriptografi Simetris

Teknik kriptografi ini diciptakan dengan maksud untuk dapat menciptakan cipher yang tidak dapat dipecahkan menggunakanteknik analisis frekuensi. Berbeda dengan caesar cipher, hill cipher tidak mengganti setiap abjad yang sama pada plainteks dengan abjad lainnya yang sama pada cipherteks karena menggunakan perkalian matriks pada dasar enkripsi dan dekripsinya. 
Hill cipher merupakan penerapan aritmatika modulo pada kriptografi. Teknik kriptografi ini enggunakan sebuah matriks persegi sebagai kunci berukuran m x m sebagai kunci untuk melakukan enkripsi dan dekripsi. Dasar teori matriks yang digunakan dalam Hill cipher antara lain adalah perkalian antar matriks dan melakukan invers pada matriks 
Karena menggunakan matriks sebagai kunci, Hill cipher merupakan algoritma kriptografi kunci simetris yang sulit dipecahkan, karena teknik kriptanalisis seperti analisis frekuensi tidak dapat diterapkan dengan mudah untuk memecahkan algoritma ini. Hill cipher sangat sulit dipecahkan jika kriptanalis hanya memiliki ciphertext saja (chipertext-only), namun dapat dipecahkan dengan mudah jika kriptanalis memiliki ciphertext dan potongan dari plaintext-nya (known-plaintext).
  • Enkripsi
Enkripsi (Encryption) adalah sebuah proses menjadikan pesan yang dapat dibaca (plaintext) menjadi pesan acak yang tidak dapat dibaca (ciphertext). Berikut adalah contoh enkripsi yang digunakan oleh Julius Caesar, yaitu dengan mengganti masing-masing huruf dengan 3 huruf selanjutnya (disebut juga Additive/Substitution Cipher):
PlaintextCiphertext
rumahxasgn
motorsuzux
komporqusvux
dst…

  • Dekripsi

Dekripsi merupakan proses kebalikan dari enkripsi dimana proses ini akan mengubah ciphertext menjadi plaintext dengan menggunakan algortima ‘pembalik’ dan key yang sama. Contoh:
CiphertextPlaintext
xasgnrumah
suzuxmotor
qusvuxkompor
dst…

2. Kriptografi Asimetris

Algoritma asimetris, sering juga disebut dengan algoritma kunci publik atausandi kunci publik, menggunakan dua jenis kunci, yaitu kunci publik (public key) dan kunci rahasia (secret key). Kunci publik merupakan kunci yang digunakan untuk mengenkripsi pesan. Sedangkan kunci rahasia digunakan untuk mendekripsi pesan. 
Kunci publik bersifat umum, artinya kunci ini tidak dirahasiakan sehingga dapat dilihat oleh siapa saja. Sedangkan kunci rahasia adalah kunci yang dirahasiakan dan hanya orang-orang tertentu saja yang boleh mengetahuinya. Keuntungan utama dari algoritma ini adalah memberikan jaminan keamanan kepada siapa saja yang melakukan pertukaran informasi meskipun di antara mereka tidak ada kesepakatan mengenai keamanan pesan terlebih dahulu maupun saling tidak mengenal satu sama lainnya. 

Contoh Kriptografi Asimetris

Contoh RSA:
  1. Kunci Publik:
    • Pilih bil. prima p = 7 dan q = 11, n = 7.11 =77
    • F(n)=(p-1).(q-1)=6.10= 60 artinya
       F(n)={1,2,3,4,6,8,..,76}={x|gcd(x, n)=1}
    • Pilih e dalam {x|gcd(x, 60)=1}, misalnya e=17
    • Hapus p dan q dan Kunci Publik n=77, e=17
  2. Kunci Rahasia:
  3. 3. Kriptografi Hibrid

    Permasalahan yang menarik pada bidang kemanan informasi adalah adanya trade off antara kecepatan dengan kenyamanan. Semakin aman semakin tidak nyaman, berlaku juga sebaliknya semakin nyaman semakin tidak aman. Salah satu contohnya adalah bidang kriptografi. Tetapi hal ini dapat diatasi dengan penggunaan kriptografi hibrida. Kriptografi hibrida sering dipakai karena memanfaatkan keunggulan kecepatan pemrosesan data oleh algoritma simetrik dan kemudahan transfer kunci menggunakan algoritma asimetrik. Hal ini mengakibatkan peningkatan kecepatan tanpa mengurangi kenyamanan serta keamanan. Aplikasi kriptografi hibrida yang ada saat ini pada umumnya ditujukan untuk penggunaan umum atau mainstream yang merupakan pengguna komputer.

    Aplikasi pada umumnya mengikuti perkembangan hardware komputer yang semakin cepat dari waktu ke waktu. Sehingga hardware yang sudah lama tidak dapat difungsikan sebagaimana mestinya. Selain itu banyak perangkat embedded dengan kekuatan pemrosesan maupun daya yang terbatas. Terutama dengan trend akhir akhir ini, hampir semua orang memiliki handheld device yang mempunyai kekuatan terbatas, seperti telepon seluler. 
    Dalam tugas akhir ini dibahas mengenai perancangan sebuah aplikasi kriptografi hibrida yang ditujukan untuk kalangan tertentu, terutama pemakai hardware dengan kekuatan pemrosesan yang terbatas. Aplikasi yang ingin dicapai adalah aplikasi yang sederhana, ringan dan cepat tanpa mengurangi tingkat keamanan menggunakan hash. 

    Sistem ini mengggabungkan chiper simetrik dan asimetrik. Proses ini dimulai dengan negosiasi menggunakan chiper asimetrik dimana kedua belah pihak setuju dengan private key/session key yang akan dipakai. Kemudian session key digunakan dengan teknik chiper simetrik untuk mengenkripsi conversation ataupun tukar-menukar data selanjutnya. Suatu session key hanya dipakai sekali sesi. Untuk sesi selanjutnya session key harus dibuat kembali. 

Contoh Kriptografi Hibrid

Metode hibrida terdiri atas enkripsi simetris dengan satu kunci (Session Key) dan enkripsi asimetris dengan sepasang kunci (Public/Private Key).
  1. Langkah 1 : Pengirim mengenkripsi teks dengan Session Key.
  2. Langkah 2 : Mengenkripsi Session Key dengan Public Key.
  3. Langkah 3 : Penerima men-decrypt Session Key dengan Private Key. Langkah 4 : Men-decrypt teks dengan Session Key.

TEKNIK DASAR KRIPTOGRAFI

Teknik Dasar Kriptografi Terbagi 5 Jenis, yaitu :
1. Substitusi

2. Blocking
3. Permutasi
4. Ekspansi
5. Pemampatan




Lanjut Ke penjelasan Dan Contohnya :


1. SUBSTITUSI

Dalam kriptografi, sandi substitusi adalah jenis metode enkripsi dimana setiap satuan pada teks terang digantikan oleh teks tersandi dengan sistem yang teratur. Metode penyandian substitusi telah dipakai dari zaman dulu (kriptografi klasik) hingga kini (kriptografi modern),
Langkah pertama adalah membuat suatu tabel substitusi. Tabel substitusi dapat dibuat sesuka hati, dengan catatan bahwa penerima pesan memiliki tabel yang sama untuk keperluan decrypt.  Bila tabel substitusi dibuat secara acak, akan semakin sulit pemecahanciphertext oleh orang yang tidak berhak.
Metode ini dilakukan dengan mengganti setiap huruf dari teks asli dengan huruf lain sebagai huruf sandi yang telah didefinisikan sebelumnya oleh algoritma kunci.



Contoh:
Metode Penyandian Substitusi Sederhana



2. BLOCKING
Sistem enkripsi ini terkadang membagi plaintext menjadi beberapa blok yang terdiri dari beberapa karakter, kemudian di enkripsikan secara independen.

Caranya :
Plaintext dituliskan secara vertikal ke bawah berurutan pada lajur, dan dilanjutkan pada kolom berikutnya sampai seluruhnya tertulis. Ciphertext-nya adalah hasil pembacaan plaintext secara horizontal berurutan sesuai dengan blok-nya.

Contoh :




3. PERMUTASI
Salah satu teknik enkripsi yang terpenting adalah permutasi atau sering juga disebut transposisi. Teknik ini memindahkan atau merotasikan karakter dengan aturan tertentu. Prinsipnya adalah berlawanan dengan teknik substitusi. Dalam teknik substitusi, karakter berada pada posisi yang tetap tapi identitasnya yang diacak. Pada teknik permutasi, identitas karakternya tetap, namun posisinya yang diacak.

Caranya
Sebelum dilakukan permutasi, umumnya plaintext terlebih dahulu dibagi menjadi blok-blok dengan panjang yang sama.
Plaintext akan dibagi menjadi blok-blok yang terdiri dari 6 karakter, dengan aturan permutasi, sebagai berikut :





4. EKSPANSI
Suatu metode sederhana untuk mengacak pesan adalah dengan memelarkan pesan itu dengan aturan tertentu.  Salah satu contoh penggunaan teknik ini adalah dengan meletakkan huruf konsonan atau bilangan ganjil yang menjadi awal dari suatu kata di akhir kata itu dan menambahkan akhiran “an”. Jika suatu kata dimulai dengan huruf vokal atau bilangan genap, ditambahkan akhiran “i”.
Contoh :




5. PEMAMPATAN

Mengurangi panjang pesan atau jumlah bloknya dengan cara lain untuk menyembunyikan isi pesan.
Contoh sederhana ini menggunakan cara menghilangkan setiap karakter ke-tiga secara berurutan. Karakter-karakter yang dihilangkan disatukan kembali dan disusulkan sebagai “lampiran” dari pesan utama, dengan diawali oleh suatu karakter khusus, dalam contoh ini menggunakan ”  * “.

Contoh :


Minggu, 23 Oktober 2016

KSK KRIPTOGRAFI

KRIPTOGRAFI

A.     Definisi Kriptografi
Kriptografi berasal dari bahasa yunani, menurut bahasa dibagi menjadi dua kripto dan graphia, kripto berarti secret (rahasia) dan graphia berarti writing (tulisan). Menurut teminologinya kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan ketika pesan di kirim dari suatu tempat ketempat yang lain.

Implementasi dari kriptografi sangat banyak bisa kita temui dalam kehidupan sehari-hari, seperti Automatic Teller Machine (ATM),Penggunaan ATM untuk banking, bahkan mulai meningkat menjadi Internet Banking, Mobile Banking, Komunikasi elektronik seperti telepon tetap, cellular, SMS, MMS. 3G, Komunikasi via Internet seperti email, messaging, chatting, Voice Call dan E-Government , E-Commence.

Menurut catatan sejarah, kriptografi sudah digunakan oleh bangsa Mesir sejak 4000 tahun yang lalu oleh raja-raja Mesir pada saat perang untuk mengirimkan pesan rahasia kepada panglima perangnya melalui kurir-kurinya. Orang yang melakukan penyandian ini disebut kriptografer, sedangkan orang yang mendalami ilmu dan seni dalam membuka atau memecahkan suatu algoritma kriptografi tanpa harus mengetahui kuncinya disebut kriptanalis.

Seiring dengan perkembangan teknologi, algoritma kriptografi pun mulai berubah menuju ke arah algoritma kriptografi yang lebih rumit dan kompleks. Kriptografi mau tidak mau harus diakui mempunyai peranan yang paling penting dalam peperangan sehingga algoritma kriptografi berkembang cukup pesat pada saat Perang Dunia I dan Perang Dunia II. Menurut catatan sejarah, terdapat beberapa algoritma kriptografi yang pernah digunakan dalam peperangan, diantaranya adalah ADFVGX yang dipakai oleh Jerman pada Perang Dunia I, Sigaba/M-134yang digunakan oleh Amerika Serikat pada Perang Dunia II, Typex oleh Inggris, dan Purple oleh Jepang. Selain itu Jerman juga mempunyai mesin legendaris yang dipakai untuk memecahkan sandi yang dikirim oleh pihak musuh dalam peperangan yaitu, Enigma.

Algoritma kriptografi yang baik tidak ditentukan oleh kerumitan dalam mengolah data  atau  pesan  yang  akan  disampaikan.  Yang  penting,  algoritma  tersebut  harus memenuhi 4 persyaratan berikut :
1.      Kerahasiaan. Pesan (plaintext) hanya dapat dibaca oleh pihak yang memliki kewenangan.
2.      Autentikasi. Pengirim pesan harus dapat diidentifikasi dengan pasti, penyusup harus dipastikan tidak bisa berpura-pura menjadi orang lain.
3.      Integritas. Penerima pesan harus dapat memastikan bahwa pesan yang dia terima tidak dimodifikasi ketika sedang dalam proses transmisi data.
4.      Non-Repudiation. Pengirim pesan harus tidak bisa menyangkal pesan yang dia kirimkan.
Kriptografi pada dasarnya terdiri dari dua proses, yaitu proses enkripsi dan proses dekripsi. Proses enkripsi adalah proses penyandian pesan terbuka menjadi pesan rahasia (ciphertext). Ciphertext inilah yang nantinya akan dikirimkan melalui saluran komunikasi terbuka. Pada saat ciphertext diterima oleh penerima pesan, maka pesan rahasia tersebut diubah lagi menjadi pesan terbuka melalui proses dekripsi sehingga pesan tadi dapat dibaca kembali oleh penerima pesan.
Dalam sistem komputer, pesan terbuka (plaintext) diberi lambang M, yang merupakan singkatan dari MessagePlaintext ini dapat berupa tulisan, foto, atau video yang berbentuk data biner.

B.     Elemen Kriptografi
Berikut Elemen-elemen Kriptografi :
1.                  Pesan, Plainteks dan Cipherteks.
Pesan adalah data atau informasi yang dapat dibaca dan dimengerti maknanya. Nama lain untuk pesan adalah plainteks. Agar pesan tidak bisa dimengerti maknanya oleh pihak lain, maka pesan perlu disandikan ke bentuk lain yang tidak dapat dipahami. Bentuk pesan yan g tersandi disebut cipherteks
2.                  Pengirim dan Penerima
Pengirim adalah entitas yang mengirim pesan kepada entitas lainnya. Penerima adalah entitas yang menerima pesan. Entitas di sini dapat berupa orang, mesin (komputer), kartu kredit dan sebagainya.
3.                  Enkripsi dan dekripsi
Proses menyandikan plainteks menjadi cipherteks disebut enkripsi. Sedangkan proses mengembalikan cipherteks menjadi plainteks semula dinamakan dekripsi
4.                  Cipher
Algoritma kriptografi disebut juga cipher yaitu aturan untuk enciphering dan deciphering, atau fungsi matematika yang digunakan untuk enkripsi dan dekripsi. Konsep matematis yang mendasari algoritma kriptografi adalah relasi antara dua buah himpunan yaitu himpunan yang berisi elemen-elemen plainteks dan himpunan yang berisi cipherteks. Enkripsi dan dekripsi adalah fungsi yang memetakan elemen-elemen antara kedua himpunan tersebut.
5.                  Sistem kriptografi
Sistem kriptografi merupakan kumpulan yang terdiri dari algoritma kriptografi, semua plainteks dan cipherteks yang mungkin dan kunci.
6.                  Penyadap
Penyadap adalah orang yang berusaha mencoba menangkap pesan selama ditransmisikan dengan tujuan mendapatkan informasi sebanyak-banyaknya mengenai sistem kriptografi yang digunakan untuk berkomunikasi dengan maksud untuk memecahkan cipherteks.
7.                  Kriptanalisis dan kriptologi
Kriptanalisis (cryptanalysis) adalah ilmu dan seni untuk memecahkan cipherteks menjadi plainteks tanpa mengetahui kunci yang digunakan. Pelakunya disebut kriptanalis. Kriptologi adalah studi mengenai kriptografi dan kriptanalisis.

C. Metode Kriptografi

Dalam menjaga kerahasiaan data, kriptografi mentransformasikan data jelas (plaintext) ke dalam bentuk data sandi (ciphertext) yang tidak dapat dikenali. Ciphertext inilah yang kemudian dikirimkan oleh pengirim (sender) kepada penerima (receiver). Setelah sampai di penerima, ciphertext tersebut ditranformasikan kembali ke dalam bentuk plaintext agar dapat dikenali.

Proses tranformasi dari plaintext menjadi ciphertext disebut proses Enciphermentatau enkripsi (encryption), sedangkan proses mentransformasikan kembali ciphertext menjadi plaintext disebut proses dekripsi (decryption).

Untuk mengenkripsi dan mendekripsi data. Kriptografi menggunakan suatu algoritma (cipher) dan kunci (key). Cipher adalah fungsi matematika yang digunakan untuk mengenkripsi dan mendekripsi data. Sedangkan kunci merupakan sederetan bit yang diperlukan untuk mengenkripsi dan mendekripsi data.

Jenis-jenis algoritma kriptografi :
Algoritma kriptografi adalah algoritma yang berfungsi untuk melakukan tujuan dari ilmu kriptografi itu sendiri.  Algoritma kriptografi terdiri dari 2 bagian fungsi, yaitu :
1.                  ENKRIPSI (encryption)
Proses tranformasi dari plaintext menjadi ciphertext disebut prosesEncipherment atau enkripsi (encryption).
2.                  DEKRIPSI (decryption).
Proses mentransformasikan kembali ciphertext menjadi plaintext disebut proses dekripsi (decryption).

Shannon mengatakan bahwa Algoritma kriptografi harus memiliki kekuatan untuk melakukan konfusi dan difusi.
·         KONFUSI (confusion). Mengaburkan hubungan antara plaintext dan ciphertext. Cara paling mudah untuk melakukan konfusi adalah menggunakan substitusi. Konfusi menimbulkan kesulitan dalam usaha musuh untuk mencari keteraturan dan pola statistik antara plaintext dan ciphertext.
·         DIFUSI (difusion), Menyebarkan redudansi plaintext dengan menyebarkan masukan ke seluruh ciphertext. Cara yang paling mudah untuk dapat melakukan difusi adalah dengan menggunakan metode transposisi. Jika menggunakan difusi, akan dibutukan waktu ang lebih lama untuk memecakan sandi rahasia ini.
Sehingga dapat digunakan untuk mengamankan informasi. Pada implementasinya sebuah algoritma sandi harus memperhatikan kualitas layanan dari keseluruhan sistem dimana dia diimplementasikan. Algoritma sandi yang handal adalah algoritma sandi yang kekuatannya terletak pada kunci, bukan pada kerahasiaan algoritma itu sendiri. Teknik dan metode untuk menguji kehandalan algoritma sandi adalah kriptanalisa.
Secara umum berdasarkan kesamaan kuncinya, algoritma sandi dibedakan menjadi :

ALGORITMA KUNCI SIMETRIS.
Dalam symmetric cryptosystem ini, kunci yang digunakan untuk proses enkripsi dan dekripsi pada prinsipnya identik, tetapi satu buah kunci dapat pula diturunkan dari kunci yang lainnya. Kunci-kunci ini harus dirahasiakan. Oleh karena itulah sistem ini sering disebut sebagai secret-key ciphersystem. Jumlah kunci yang dibutuhkan umumnya adalah :
nC2  = n . (n-1)
          --------
       2
dengan n menyatakan banyaknya pengguna.
Contoh dari sistem ini adalah Data Encryption Standard (DES), Blowfish, IDEA.

Kriptografi secret key seringkali disebut sebagai kriptografi konvensional atau kriptografi simetris (Symmetric Cryptography) dimana proses dekripsi adalah kebalikan dari proses enkripsi dan menggunakan kunci yang sama.

Kriptografi simetris dapat dibagi menjadi dua, yaitu penyandian blok dan penyandian alir. Penyandian blok bekerja pada suatu data yang terkelompok menjadi blok-blok data atau kelompok data dengan panjang data yang telah ditentukan. Pada penyandian blok, data yang masuk akan dipecah-pecah menjadi blok data yang telah ditentukan ukurannya. Penyandian alir bekerja pada suatu data bit tunggal atau terkadang dalam satu byte. Jadi format data yang mengalami proses enkripsi dan dekripsi adalah berupa aliran bit-bit data.
Algoritma yang ada pada saat ini kebanyakan bekerja untuk penyandian blok karena kebanyakan proses pengiriman data pada saat ini menggunakan blok-blok data yang telah ditentukan ukurannya untuk kemudian dikirim melalui saluran komunikasi.

ALGORITMA KUNCI ASIMETRIS.
Algoritma Asimetris atau sering disebut algoritma public key, penggunaan kunci dalam algoritma ini adalah, kunci yang dipakai dalam proses enkripsiberbeda dengan kunci yang dipakai pada proses dekripsi, jadi jumlah kunci enkripsi ≠ kunci dekripsi.
Ada 2 jenis kunci di algoritma ini, yaitu
1.      KUNCI PUBLIK adalah kunci yang digunakan untuk melakukan proses enkripsi data. Kunci ini disebut publik karena siapapun dapat mengetahuinya.
2.      KUNCI PRIVAT adalah kunci yang digunakan untuk melakukan proses dekripsi data. Kunci ini disebut privat karena 1 kunci privat hanya dimiliki oleh 1 orang saja. Kunci privat sering juga disebut kunci rahasia.

Istilah kunci rahasia dalam algoritma simetris digunakan untk menyatakan kunci enkripsi dan dekripsi, sementara pada algoritma asimetris digunakan untuk menyatakan kunci privat, karena kunci publik tidak dirahasiakan.
Berdasarkan arah implementasi dan pembabakan zamannya dibedakan menjadi :
ALGORITMA SANDI KLASIK.
Sebelum komputer ada, kriptografi dilakukan dengan menggunakan pensil dan kertas. Algoritma kriptografi (cipher) yang digunakan saat itu, dinamakan juga algoritma klasik, adalah berbasis karakter, yaitu enkripsi dan dekripsi dilakukan pada setiap karakter pesan. Semua algoritma klasik termasuk ke dalam sistrm kriptografi simetris dan digunakan jauh sebelum kriptografi kunci publik ditemukan.

Kriptogarfi klasik memiliki beberapa ciri :
1. Berbasis karakter
2. Menggunakan pena dan kertas saja, belum ada computer
3. Termasuk ke dalam kriptografi kunci simetris.

Tiga alasan mempelajari algoritma klasik :
1. Memahami konsep dasar kriptografi
2. Dasar algoritma kriptografi modern
3. Memahami kelemahan sistem kode.
(Ariyus Dony. 2008)

Pada dasarnya, algoritma kriptografi klasik dapat dikelompokkan ke dalam dua macam cipher, yaitu :
1. Cipher substitusi (substitution cipher)
Di dalam cipher substitusi setiap unit plainteks diganti dengan satu unit cipherteks. Satu “unit” di isini berarti satu huruf, pasanga huruf, atau dikelompokkan lebih dari dua huruf. Algoritma substitusi tertua yang diketahui adalah Caesar cipher yang digunakan oleh kaisar Romawi , Julius Caesar (sehingga dinamakan juga casear cipher), untuk mengirimakan pesan yang dikirimkan kepada gubernurnya.
2. Cipher transposisi (transposition cipher)
Pada cipher transposisi, huruf-huruf di dalam plainteks tetap saja, hanya saja urutannya diubah. Dengan kata lain algoritma ini melakukan transpose terhadap rangkaian karakter di dalam teks. Nama lain untuk metode ini adalah permutasi atau pengacakan (scrambling) karena transpose setiap karakter di dalam teks sama dengan mempermutasikan karakter-karkater tersebut.
(Munir.2006)

Pada metode kriptografi simetris atau konvensional digunakan satu buah kunci. Bila kunci dinotasikan denan ‘K’ maka proses enkripsi-dekripsi metode kriptografi simeteris dapat dinotasikan dengan :
Ek(P) = C dan
Dk (C) = P
Dan keseluruhan sistem dinyatakan sebagai :
Dk(Ek(P))=P


ALGORITMA SANDI MODERN
Algoritma kriptografi modern tidak lagi mengandalkan keamanannya pada kerahasiaan algoritma tetapi kerahasiaan kunci. Plaintext yang sama bila disandikan dengan kunci yang berbeda akan menghasilkan ciphertext yang berbeda pula. Dengan demikian algoritma kriptografi dapat bersifat umum dan boleh diketahui oleh siapa saja, akan tetapi tanpa pengetahuan tentang kunci, data tersandi tetap saja tidak dapat terpecahkan. Sistem kriptografi atauCryptosystem adalah sebuah algoritma kriptografi ditambah semua kemungkinan plaintext, ciphertext dan kunci



Sedangkan berdasarkan besar data yang diolah dalam satu kali proses, maka algoritma kriptografi dapat dibedakan menjadi dua jenis yaitu :
1.                  Algoritma block cipher
Informasi/data yang hendak dikirim dalam bentuk blok-blok besar (misal 64-bit) dimana blok-blok ini dioperasikan dengan fungsi enkripsi yang sama dan akan menghasilkan informasi rahasia dalam blok-blok yang berukuran sama.

2.  Algoritma stream cipher
Informasi/data yang hendak dikirim dioperasikan dalam bentuk blok-blok yang lebih kecil (byte atau bit), biasanya satu karakter persatuan waktu proses, menggunakan tranformasi enkripsi yang berubah setiap waktu.