Lompat ke isi

Kriptografi

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas

Dasar

Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti keabsahan, integritas data, serta autentikasi data. Kriptografi tidak berarti hanya memberikan keamanan informasi saja, namun lebih ke arah teknik-tekniknya.

Ada empat tujuan mendasar dari ilmu kriptografi ini yaitu :

  • Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki otoritas.
  • Integritas data, adalah berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya.
  • Autentikasi, adalah berhubungan dengan identifikasi, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain.
  • Non-repudiasi.


Dasar matematis yang mendasari proses enkripsi dan dekripsi adalah relasi antara dua himpunan yaitu yang berisi elemen plaintext dan yang berisi elemen ciphertext. Enkripsi dan dekripsi merupakan fungsi transformasi antara himpunan-himpunan tersebut. Apabila elemen-elemen plaintext dinotasikan dengan P, elemen-elemen ciphertext dinotasikan dengan C, sedang untuk proses enkripsi dinotasikan dengan E, dekripsi dengan notasi D.

Enkripsi :

Dekripsi : atau

Pada skema enkripsi konvensional atau symmetric-key, digunakan sebuah kunci untuk melakukan proses enkripsi dan dekripsinya. Sedangkan pada sistem asymmetric-key, sepasang kunci yang berbeda, umumnya disebut kunci umum (public key) dan kunci pribadi (private key), digunakan untuk proses enkripsi dan proses dekripsinya. Bila elemen plaintext dienkripsi dengan menggunakan kunci pribadi maka elemen chipertext yang dihasilkannya hanya bisa didekripsikan dengan menggunakan pasangan kunci pribadinya. Begitu juga sebaliknya, jika kunci pribadi digunakan untuk enkripsi maka proses dekripsi harus menggunakan kunci publik.

Symmetric-key

Skema enkripsi akan disebut symmetric-key apabila untuk setiap pasangan kunci enkripsi dan dekripsi (e, d), secara komputasi d "mudah" dihitung apabila e diketahui, dan e "mudah" dihitung apabila d diketahui. Dalam prakteknya sering ditemui e = d. Pada skema enkripsi symmetric-key dibedakan menjadi dua kelas, yaitu block-cipher dan stream-cipher.

Block Cipher

Block-cipher adalah skema enkripsi yang akan membagi-bagi plaintext yang akan dikirimkan menjadi string-string (disebut blok) dengan panjang t, dan mengenkripsinya per-blok. Pada umumnya, block-cipher memproses plaintext dengan blok yang relatif panjang lebih dari 64 bit, untuk mempesulit penggunaan pola-pola serangan yang ada untuk membongkar kunci.

Stream Cipher

Sedangkan skema stream-cipher pada dasarnya juga block-cipher, hanya dengan panjang bloknya adalah satu bit.

Algoritma Kriptografi dengan Symmetric-key

Beberapa contoh algoritma yang menggunakan Symmetric-key:

  • DES - Data Encryption Standard
  • 3DES - DES diaplikasikan 3 kali
  • AES - Advanced Encryption Standard

Asymmetric-key

Skema ini adalah algoritma yang menggunakan kunci yang berbeda untuk proses enkripsi dan dekripsinya. Skema ini disebut juga sebagai sistem kriptografi Public-key karena kunci untuk enkripsi dibuat secara umum (public-key) atau dapat diketahui siapa saja, tapi untuk proses dekripsinya dibuat satu hanya oleh yang berwenang untuk mendekripsinya, disebut private-key. Keuntungan skema model ini, untuk berkorespondensi secara rahasia dengan banyak pihak tidak diperlukan kunci rahasia sebanyak jumlah pihak tersebut, cukup membuat dua buah kunci, yaitu public-key bagi para korensponden untuk mengenkripsi pesan, dan private-key untuk mendekripsi pesan. Berbeda dengan skema symmetric-key, jumlah kunci yang dibuat adalah sebanyak jumlah pihak yang diajak berkorespondensi.

Fungsi Enkripsi dan Dekripsi Algoritma Asymmetric-key

Apabila Ahmad dan Bobby hendak bertukar berkomunikasi, maka:

  1. Ahmad dan Bobby masing-masing membuat 2 buah kunci
    1. Ahmad membuat dua buah kunci, public-key dan secret-key
    2. Bobby membuat dua buah kunci, public-key dan secret-key
  2. Mereka berkomunikasi dengan cara:
    1. Ahmad dan Bobby saling bertukar public-key. Bobby mendapatkan dari Ahmad, dan Ahmad mendapatkan dari Bobby.
    2. Ahmad mengenkripsi plaintext ke Bobby dengan fungsi
    3. Ahmad mengirim ciphertext ke Bobby
    4. Bobby menerima dari Ahmad dan membuka plaintext dengan fungsi

Hal yang sama terjadi apabila Bobby hendak mengirimkan pesan ke Ahmad

  1. Bobby mengenkripsi plaintext ke Ahmad dengan fungsi
  2. Ahmad menerima dari Bobby dan membuka plaintext dengan fungsi

Algoritma Kriptografi dengan Asymmetric-key