TEKNIK ENKRIPSI
DÍ
bidang kriptografi,
enkripsi adalah proses mengamankan suatu informasi dengan
membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus.
Dikarenakan enkripsi telah digunakan untuk mengamankan komunikasi di berbagai
negara, hanya organisasi-organisasi tertentu dan individu yang memiliki
kepentingan yang sangat mendesak akan kerahasiaan yang menggunakan enkripsi. Di
pertengahan tahun 1970-an,
enkripsi kuat dimanfaatkan untuk pengamanan oleh sekretariat agen pemerintah Amerika
Serikat pada domain publik, dan saat ini enkripsi telah digunakan pada
sistem secara luas, seperti Internet e-commerce, jaringan Telepon bergerak dan ATM pada bank.
Enkripsi
dapat digunakan untuk tujuan keamanan, tetapi teknik lain masih diperlukan
untuk membuat komunikasi yang aman, terutama untuk memastikan integritas dan autentikasi dari sebuah pesan.
Contohnya, Message
Authentication Code (MAC) atau digital signature.
Penggunaan yang lain yaitu untuk melindungi dari analisis jaringan komputer.
Manfaat dan
kerugian teknik enkrisi antara lain:
a) Manfaat Enkripsi
1.
Beberapa manfaat yang bisa
didapatkan dari enkripsi ini adalah :
2.
Kerahasiaan suatu informasi terjamin
3.
Menyediakan authentication dan
perlindungan integritas pada algoritma checksum/hash
4.
Menanggulangi penyadapan telepon dan
email
5.
Untuk digital signature. Digital
signature adalah menambahkan suatu baris statemen pada suatu elektronik copy
dan mengenkripsi statemen tersebut dengan kunci yang kita miliki dan hanya
pihak yang memiliki kunci dekripsinya saja yang bisa membukanya.
6.
Untuk digital cash
b) Kerugian Enkripsi
Penyalahgunaan dan kerugian dari enkripsi adalah:
1.
Penyandian rencana teroris
2.
Penyembunyian record criminal oleh
seorang penjahat
3.
Pesan tidak bisa dibaca bila
penerima pesan lupa atau kehilangan kunci (decryptor) .
·
Macam-macam
Enkripsi pada pemrograman website
Berikut ada beberapa macam metode enkripsi yang dapat
anda digunakan pada pemrograman website seperti PHP, ASP dan yang lainnya.1. Metode Enkripsi MD2
1.
Message-Digest algortihm 2 (MD2)
adalah fungsi hash cryptographic yang dikembangkan oleh Ronald Rivest pada
tahun 1989'
2.
Algoritma dioptimalkan untuk komputer
8-bit. MD2 yang ditetapkan dalam RFC 1319.
3.
Meskipun algoritma lainnya telah
diusulkan sejak dulu, seperti MD4, MD5 dan SHA, bahkan sampai dengan 2004
[update] MD2 tetap digunakan dalam infrastruktur kunci publik sebagai bagian
dari sertifikat yang dihasilkan dengan MD2 dan RSA.
1.
Message-Digest algortihm 4(seri
ke-4) yang dirancang oleh Profesor Ronald Rivest dari MIT pada tahun
1990. Panjangnya adalah 128 bit.
2.
MD4 juga digunakan untuk menghitung
NT-hash ringkasan password pada Microsoft Windows NT, XP dan Vista.
3. Metode Enkripsi MD5
1.
MD5 adalah salah satu dari
serangkaian algortima message digest yang didesain oleh Profesor Ronald Rivest
dari MIT (Rivest, 1994).
2.
Saat kerja analitik menunjukkan
bahwa pendahulu MD5 yaitu MD4 mulai tidak aman, MD5 kemudian didesain pada
tahun 1991 sebagai pengganti dari MD4 (kelemahan MD4 ditemukan oleh Hans
Dobbertin).
3.
Dalam kriptografi, MD5
(Message-Digest algortihm 5) ialah fungsi hash kriptografik yang digunakan
secara luas dengan hash value 128-bit.
4.
Pada standart Internet (RFC 1321),
MD5 telah dimanfaatkan secara bermacam-macam pada aplikasi keamanan, dan MD5
juga umum digunakan untuk melakukan pengujian integritas sebuah file.
1.
SHA adalah serangkaian fungsi
cryptographic hash yang dirancang oleh National Security Agency (NSA) dan
diterbitkan oleh NIST sebagai US Federal Information Processing Standard.
2.
SHA adalah Secure Hash Algoritma.
Jenis-jenis SHA yaitu SHA-0, SHA-1, dan SHA-2.
3.
Untuk SHA-2 menggunakan algoritma
yang identik dengan ringkasan ukuran variabel yang terkenal sebagai SHA-224,
SHA-256, SHA-384, dan SHA-512.
1.
RC4 merupakan salah satu jenis
stream cipher, yaitu memproses unit atau input data pada satu saat. Unit atau
data pada umumnya sebuah byte atau bahkan kadang kadang bit (byte dalam hal
RC4).
2.
Dengan cara ini enkripsi atau
dekripsi dapat dilaksanakan pada panjang yang variabel.
3.
RC4 adalah penyandian stream cipher
yang dibuat oleh Ron Riverst pada tahun 1987 untuk pengamanan RSA.
4.
Algoritmanya didasarkan pada
permutasi acak.
1.
Base64 adalah sistem untuk mewakili
data mentah byte sebagai karakter ASCII.
2.
Base64 menyediakan 6-bit encoding
8-bit ASCII karakter.
3.
Base64 merupakan format yang dicetak
menggunakan karakter, memungkinkan binari data yang akan dikirim dalam bentuk
dan email, dan akan disimpan di database atau file.
·
BENTUK - BENTUK ENKRIPSI
1. Pengertian Caesare chipper
Metode penyandian ini dinamakan caesar chiper, setelah digunakan Julius Caesar untuk berkomunikasi dengan para panglimanya. Dalam kriptografi, Caesar Chiper dikenal dengan beberapa nama seperti: shift cipher, Caesar’s code atau Caesar shift. Caesar Chiper merupakan teknik enkripsi yang paling sederhana dan banyak digunakan. Chiper ini berjenis chiper substitusi, dimana setiap huruf pada plaintextnya digantikan dengan huruf lain yang tetap pada posisi alfabet. Misalnya diketahui bahwa pergeseran = 3, maka huruf A akan digantikan oleh huruf D, huruf B menjadi huruf E, dan seterusnya.
Transformasi Caesar Chiper dapat
direpsentasikan dengan menyelaraskan plaintext dengan chipertext ke kiri atau
kanan sebanyak jumlah pergeseran yang diinginkan. Sebagai contoh dengan jumlah
pergeseran sebanyak 3.
Plaintext : ABCDEFGHIJKLMNOPQRSTUVWXYZ
Ciphertext : DEFGHIJKLMNOPQRSTUVWXYZABC
Untuk membaca pesan yang dienkripsi penerima dapat menyelaraskan huruf chipertext yang diterima dengan plaintext yang tepat berada di atasnya. Sebagai contoh dekripsinya sebagai berikut.
Ciphertext : WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ
Plaintext : THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
Proses enkripsi dapat direprsentasila menggunakan operator aritmetik modulo setelah sebelumnya setiap huruf transformasi kedalam angka, yaitu: A = 0, B = 1,…, Z = 25.
Proses enkripsi suatu huruf x dengan dengan
pergeseran n dapat dinyatakan secara matematis sebagai berikut: Proses
enkripsi dapat direprsentasila menggunakan operator aritmetik modulo setelah
sebelumnya setiap huruf transformasi kedalam angka, yaitu:
A = 0, B = 1,…, Z = 25.
2.
LETTER MAP
Satandar Letter Map menggunakan tabel korespondensi yang
dipilih secara sembarang, misalnya:
Huruf asli : a b c d e f g h i j …
Huruf sandi : q w e e r t y u i o …
Jika dikirimkan berita asli “baca”, akan menjadi “wqeq”.
Ketentuan ini tidak mutlak, aturan sandi bisa berubah-ubah tergantung dari
orang yang mengirimnya.
3.Transposition
ciphers
Transposition
ciphers
mengatur
ulang huruf-huruf dari plaintext tanpa menggantinya. Sebagai contoh,
transposition cipher yang sangat sederhana adalah the rail fence, di mana
plaintext ditulis per huruf dalam dua baris dan kemudian dibaca per baris untuk
dijadikan ciphertext.
The rail
fence adalah contoh sederhana dari jenis
transposition ciphers yang disebut juga dengan route ciphers. Umumnya, di route
ciphers elemen-elemen plaintext (biasanya per huruf) ditulis ke dalam bentuk
matriks yang disetujui oleh pengirim (transmitter) dan penerima (receiver).
Contoh
berikut ini menggunakan kunci kata CIPHER, sebuah matriks dapat ditulis seperti
berikut ini:
C
|
I
|
P
|
H
|
E
|
R
|
1
|
4
|
5
|
3
|
2
|
6
|
B
|
U
|
K
|
U
|
P
|
|
E
|
S
|
A
|
N
|
A
|
N
|
T
|
E
|
L
|
A
|
H
|
|
D
|
I
|
K
|
I
|
R
|
I
|
M
|
Tidak
seperti sebelumnya, plaintext ditulis secara normal dari kiri ke kanan,
dan ciphertext-nya akan dibaca dari atas ke bawah (per kolom). Urutan
di mana kolom akan ditulis dari ciphertext disesuaikan dengan urutan
kuncinya. Matriks di
atas akan menghasilkan ciphertext: BE DM AAR UNLI USTIKAEK.
Kolom
pertama C dalah pendahulu dalam urutan alphabet dibanding dengan huruf-huruf
lainnya dalam kata “CIPHER”. Diikuti dengan kolom kedua E, dan seterusnya.
Keamanan dalam metode enkripsi ini dapat ditingkatkan dengan enkripsi ulang
hasil cipher dengan menggunakan transposisi lain. Hal itu dimungkinkan karena
setiap hasil transposisi yang berupa ciphertext dapat ditransposisi dengan
kunci lainnya untuk menghasilkan ciphertext berikutnya.
4. Data Encryption Standard (DES)
DES termasuk ke dalam sistem
kriptografi simetri dan tergolong jenis cipher blok. DES beroperasi pada
ukuran blok 64 bit. DES mengenkripsikan 64 bit plainteks menjadi 64 bit
cipherteks dengan menggunakan 56 bit kunci internal (internal key) atau
upa-kunci (subkey). Kunci internal dibangkitkan dari kunci eksternal (external
key) yang panjangnya 64 bit.
menurut gambar diatas bisa
diceritaken seperti ini :
1. Blok plainteks dipermutasi dengan
matriks permutasi awal (initial permutation atau IP).
2. Hasil permutasi awal kemudian di-enciphering-
sebanyak 16 kali (16 putaran). Setiap putaran menggunakan kunci internal yang
berbeda.
3. Hasil enciphering kemudian
dipermutasi dengan matriks permutasi balikan (invers initial permutation
atau IP-1 ) menjadi blok cipherteks.
5. TRIPLE DES (TRIPLE DATA ENCRYPTION STANDARD)
Algoritma TDES merupakan algoritma penyandi blok simetrik yang melakukan proses enkripsi dan dekripsi terhadap blok data 64 bit (8 karakter) sebanyak tiga kali dengan menggunakan tiga jenis kunci yang panjangnya 56 bit. Karena penggunaan tiga kali kunci-kunci 56 bit ini, maka algoritma penyandi blok yang merupakan variasi dari DES ini dikenal dengan sebutan Triple DES (TDES).
Seperti DES, TDES juga adalah sebuah penyandi blok yang beroperasi pada blok data 64 bit. Setiap operasi enkripsi/dekripsi dari TDES (sesuai dengan spesifikasi dalam ANSI X9.52) adalah merupakan operasi gabungan dari proses enkripsi dan dekripsi pada algoritma DES.
Ada beberapa
pilihan penguncian (keying option) untuk operasi penyandian TDES ini. Ada yang
menggunakan TDES dengan dua jenis kunci 56 bit yang sama, dan ada yang
menggunakan ketiga kunci dengan jenis yang sama ataupun berbeda. TDES dapat
diimplementasikan menggunakan tiga blok DES secara serial, dengan beberapa
kombinasi logika (combination logic) atau menggunakan tiga blok DES tersebut
secara paralel. Dan implementasi secara paralel ini lebih baik karena dapat
meningkatkan performance dan mengurangi penggunaan jumlah gerbang (gate).
Standar berikut menspesifikasikan pilihan-pilihan penguncian untuk ketiga kunci (K1, K2, K3), yaitu:
1. Keying Option 1: K1, K2, dan K3 adalah kunci-kunci yang berbeda
2. Keying Option 2: K1 dan K2 adalah kunci-kunci yang berbeda dan K3=K1
3. Keying Option 3: K1 = K2 = K3
Keying Option 1 memberikan pengamanan atau security yang lebih handal dibandingkan dengan Keying Option 2. Sedangkan Keying Option 2 lebih handal daripada Keying Option 3, yang identik dengan proses penguncian pada single DES karena sama-sama menggunakan satu jenis kunci saja.
6. Rivest
Code 2 (RC 2) dan rivest code 4 (RC4)
Rivest Code 2 (RC2) dan Rivest Code
4 (RC4) adalah teknik enkripsi yang disebut sebagai stream-cipher, dimana pada
setiap byte data dilakukan manipulasi bit. Teknik enkripsi RC ditemukan oleh
Ronald Rivest yang kemudian menjadi salah satu pendiri dari perusahaan keamanan
data RSA.
Beberapa teknik enkripsi kunci
publik yang populer adalah:
·
Diffie-Hellman
·
RSA
·
Rabin
·
ElGamal
Semua algoritma kunci publik
(asimetri) menggunakan fungsi matematis untuk mengubah plaintext menjadi
ciphertext. Diffie-Hellman menggunakan aritmetik modulus dimana dua kunci
berbeda akan memberi hasil yang sama berdasarkan nilai modulus-nya. RSA adalah
singkatan dari Rivest, Shamir, dan Adleman, tiga orang yang bekerja sama
membangun suatu algoritma kunci publik. RSA merupakan algoritma kunci publik
yang terkuat, dan seperti Diffie-Hellman, RSA juga menggunakan aritmetik
modulus dalam komputasi enkripsi-dekripsi. Rabin adalah teknik yang merupakan
salah satu variasi dari RSA, ditemukan oleh M.Rabin. ElGamal merupakan variasi
dari Diffie-Hellman, ditemukan ElGamal.
Salah satu aplikasi dari algoritma
kunci publik adalah software PGP (Pretty Good Privacy). PGP digunakan untuk
pengamanan berkomunikasi lewat e-mail, dimana e-mai di-enkripsi pada saat
dikirim sehingga hanya orang yang memiliki kunci private yang bisa membaca
e-mail tersebut.
7. IDEA (International Data
Encryption Algorithm)
IDEA beroperasi pada 64-bit blok dengan menggunakan kunci 128-bit, dan terdiri dari serangkaian delapan transformasi identik (bulat, lihat ilustrasi) dan transformasi keluaran (setengah bulat). Proses untuk enkripsi dan dekripsi adalah sama. IDEA berasal banyak dari keamanan dengan interleaving operasi dari kelompok yang berbeda - Selain modular dan perkalian, dan bitwise exclusive OR (XOR) - yang secara aljabar "kompatibel" dalam arti tertentu. Secara lebih rinci, operator tersebut, yang semuanya berhubungan dengan 16-bit kuantitas, adalah: Bitwise eksklusif OR (dilambangkan dengan biru dilingkari ditambah ⊕). Penambahan modulo 216 (dilambangkan dengan ditambah kotak hijau ⊞). Perkalian modulo 216 +1, dimana kata-semua nol (0x0000) ditafsirkan sebagai 216 (dilambangkan dengan merah dilingkari dot ⊙).
8.
skipjack
Salah satu hal yang penting dalam
komunikasi menggunakan komputer untuk menjamin kerahasiaan data adalah
enkripsi. Enkripsi adalah sebuah proses yang melakukan perubahan sebuah kode
yang biasa dimengerti menjadi sebuah kode yang tidak biasa dimengerti (tidak
terbaca). Enkripsi dapat diartikan sebagai kode atau chipper. Sebuah chipper
menggunakan suatu algoritma yang dapat mengkodekan semua aliran data (stream)
bit dari sebuah pesan menjadi cryptogram yang tidak dimengerti
(unintelligible). Karena teknik chipper merupakan suatu system yang telah siap
untuk di automasi, maka teknik ini digunakan dalam system keamanan komputer
dan network.
Skipjack sebagai salah satu chipper merupakan suatu encryption
algoritma yang dikembangkan oleh National Security Agency Badan Keamanan Nasional Amerika
Serikat ( NSA) untuk Clipper Chip. Tidak banyak diketahui algoritma Skipjack ini, karena itu
algoritma Skipjack
digolongkan rahasia oleh pemerintah Amerika Serikat.
TEKNIK
KRIPTOGRAPHY
Kriptografi, secara umum adalah ilmu
dan seni untuk menjaga kerahasiaan berita [bruce Schneier - Applied Cryptography].
Selain pengertian tersebut terdapat pula pengertian ilmu yang mempelajari
teknik-teknik matematika yang
berhubungan dengan aspek keamanan
informasi seperti kerahasiaan
data, keabsahan
data, integritas
data, serta autentikasi
data [A. Menezes, P. van Oorschot and S. Vanstone - Handbook of
Applied Cryptography]. Tidak semua aspek keamanan informasi ditangani oleh kriptografi.
Ada empat tujuan mendasar dari ilmu
kriptografi ini yang juga merupakan aspek keamanan informasi yaitu :
- Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka/mengupas informasi yang telah disandi.
- 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/pengenalan, 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., atau nirpenyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat.
Enkripsi
dan Dekripsi
1.
Enkripsi
Proses utama dalam suatu algoritma kriptografi adalah enkripsi dan dekripsi. Enkripsi merubah sebuah plaintext ke dalam bentuk ciphertext. Pada mode ECB (Elekctronic Codebook), sebuah blok pada plaintext dienkripsi ke dalam sebuah blok ciphertext dengan panjang blok yang sama.
Blok cipher memiliki sifat bhahwa setiap blok harus memiliki panjang yang sama (misalnya 128 bit). Namun apabila pesan yang dienkripsi memiliki panjang blok terakhir tidak tepat 128 bit, maka diperlukan mekanisme padding, yaitu penambahan bit-bit dummies untuk menggenapi menjadi panjang blok yang sesuai; biasanya padding dilakukan pada blok terakhir plaintext.
Padding bada blok terakhir bisa dilakukan dengan berbagai macam cara, misalnya dengan penambahan bit-bit tertentu. Salah satu contoh penerapan padding dengan cara menambahkan jumlah total padding sebagai byte terakhir pada blok terakhir plaintext. Misalnya panjang blok adalah 128 bit (16 byte) dan pada blok terakhir terdiri dari 88 bit (11 byte) sehingga jumlah padding yang diperlukan adalah 5 byte, yaitu dengan menambahkan angka nol sebanyak 4 byte, kemudian menambahkan angka 5 sebanyak satu byte. Cara lain dapat juga menggunakan penambahan karakter end-of-file pada byte terakhir lalu diberi padding setelahnya.
Proses utama dalam suatu algoritma kriptografi adalah enkripsi dan dekripsi. Enkripsi merubah sebuah plaintext ke dalam bentuk ciphertext. Pada mode ECB (Elekctronic Codebook), sebuah blok pada plaintext dienkripsi ke dalam sebuah blok ciphertext dengan panjang blok yang sama.
Blok cipher memiliki sifat bhahwa setiap blok harus memiliki panjang yang sama (misalnya 128 bit). Namun apabila pesan yang dienkripsi memiliki panjang blok terakhir tidak tepat 128 bit, maka diperlukan mekanisme padding, yaitu penambahan bit-bit dummies untuk menggenapi menjadi panjang blok yang sesuai; biasanya padding dilakukan pada blok terakhir plaintext.
Padding bada blok terakhir bisa dilakukan dengan berbagai macam cara, misalnya dengan penambahan bit-bit tertentu. Salah satu contoh penerapan padding dengan cara menambahkan jumlah total padding sebagai byte terakhir pada blok terakhir plaintext. Misalnya panjang blok adalah 128 bit (16 byte) dan pada blok terakhir terdiri dari 88 bit (11 byte) sehingga jumlah padding yang diperlukan adalah 5 byte, yaitu dengan menambahkan angka nol sebanyak 4 byte, kemudian menambahkan angka 5 sebanyak satu byte. Cara lain dapat juga menggunakan penambahan karakter end-of-file pada byte terakhir lalu diberi padding setelahnya.
2
Dekripsi
Dekripsi merupakan proses kebalikan dari proses enkripsi, merubah ciphertext kembali ke dalam bentuk plaintext. Untuk menghilangkan padding yang diberikan pada saat prpses enkripsi, dilakukan berdasarkan informasi jumlah padding yaitu angka pada byte terakhir.
>> Dasar Matematis
Dasar matematis yang mendasari proses enkripsi dan deskripsi adalah relasi antara dua himpunan yaitu yang berisi elemen plaintext dan yang berisi elemen cipertext. 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, maka secara matematis proses kriptografi dapat dinyatakan sebagai berikut :
Enkripsi : E(P)=C
Dekripsi : D(C)=P atau D(E(P))=P
Pada skema enkripsi konvensional atau kunci simetrik digunakan sebuah kunci untuk melakukan proses enkripsi dan dekripsinya. Kunci tersebut dinotasikan dengan K, sehingga proses kriptografinya adalah :
Enkripsi : EK(P)=C
Dekripsi : DK(C)=P atau DK(EK(P))=P
Sedangkan pada sistem asymmetric-key digunakan kunci umum (public key) untuk enkripsi dan kunci pribadi (private key) untuk proses dekripsinya sehingga kedua proses tersebut dapat dinyatakan sebagai berikut :
Enkripsi : EPK(P)=C
Dekripsi : DSK(C)=P atau DSK(EPK(P))=P
>> Teknik Kriptografi
Pada umumnya terdapat dua teknik yang digunakan dalam kriptografi, yakni: kunci simetrik dan kunci asimetrik (public-key).
>> Kunci Simetrik
Skema enkripsi akan disebut symmetric-key apabila pasangan kunci untuk proses enkripsi dan dekripsinya sama. Pada skema enkripsi kunci simetrik dibedakan lagi menjadi dua kelas, yaitu block-cipher dan stream-cipher.
Block-cipher adalah skema e3nkripsi yang akan membagi-bagi plaintext yang akan dikirimkan menjadi sting-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 dengan tujuan untuk mempersulit penggunaan pola-pola serangan yang ada untuk membongkar kunci. Sedangkan skema stream cipher pada dasarnya juga block-cipher, hanya dengan panjang bloknya adalah satu bit.
>>
Kunci AsimetrikDekripsi merupakan proses kebalikan dari proses enkripsi, merubah ciphertext kembali ke dalam bentuk plaintext. Untuk menghilangkan padding yang diberikan pada saat prpses enkripsi, dilakukan berdasarkan informasi jumlah padding yaitu angka pada byte terakhir.
>> Dasar Matematis
Dasar matematis yang mendasari proses enkripsi dan deskripsi adalah relasi antara dua himpunan yaitu yang berisi elemen plaintext dan yang berisi elemen cipertext. 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, maka secara matematis proses kriptografi dapat dinyatakan sebagai berikut :
Enkripsi : E(P)=C
Dekripsi : D(C)=P atau D(E(P))=P
Pada skema enkripsi konvensional atau kunci simetrik digunakan sebuah kunci untuk melakukan proses enkripsi dan dekripsinya. Kunci tersebut dinotasikan dengan K, sehingga proses kriptografinya adalah :
Enkripsi : EK(P)=C
Dekripsi : DK(C)=P atau DK(EK(P))=P
Sedangkan pada sistem asymmetric-key digunakan kunci umum (public key) untuk enkripsi dan kunci pribadi (private key) untuk proses dekripsinya sehingga kedua proses tersebut dapat dinyatakan sebagai berikut :
Enkripsi : EPK(P)=C
Dekripsi : DSK(C)=P atau DSK(EPK(P))=P
>> Teknik Kriptografi
Pada umumnya terdapat dua teknik yang digunakan dalam kriptografi, yakni: kunci simetrik dan kunci asimetrik (public-key).
>> Kunci Simetrik
Skema enkripsi akan disebut symmetric-key apabila pasangan kunci untuk proses enkripsi dan dekripsinya sama. Pada skema enkripsi kunci simetrik dibedakan lagi menjadi dua kelas, yaitu block-cipher dan stream-cipher.
Block-cipher adalah skema e3nkripsi yang akan membagi-bagi plaintext yang akan dikirimkan menjadi sting-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 dengan tujuan untuk mempersulit penggunaan pola-pola serangan yang ada untuk membongkar kunci. Sedangkan skema stream cipher pada dasarnya juga block-cipher, hanya dengan panjang bloknya adalah satu bit.
Skema ini adalah algoritma yang menggunakan kunci yang ber beda 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 oleh siapa saja, tetapi untuk proses dekripsinya yang dibuat satu saja, yakini 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 (disebut public-key) bagi para koresponden untuk mengenkripsi pesan, dan private-key untuk mendekripsi pesan. Berbeda dengan skema kunci simetrik yang jumlah kunci yang dibuah adalah harus sebanyak jumlah pihak yang berkorespondensi.
>> Kriptografi Block Cipher
Block cipher merupakan sebuah fungsi yang memetakan n-bit blok plaintext ke n-bit blok ciphertext, dengan n adalah panjang blok. Blok cipher umumnya memproses plaintext ke dalam blok-blok yang cukup besar (≥ 64).
>> Cipher Berulang
Pada teknik cipher berulang (iterated cipher), blok plaintext mengalami pengulangan fungsi transformasi beberapa kali untuk mendapatkan blok ciphertext. Fungsi transformasi pada umumnya merupakan gabungan proses subtitusi, permutasi, kompresi, atau ekspansi terhadap blok plaintext. Sebuah kunci pada setiap putaran akan dikombinasikan dengan plaintext. Parameter dalam cipher ini adalah jumlah putaran r, besar blok n dan besar kunci k. Sub-kunci Ki pada setiap putaran diperoleh dari penurunan kunci input K.
>> Feistel Cipher
Feistel cipher beroperasi terhadap panjang blok data tetap sepanjang n (genap), kemudian membagi 2 blok tersebut dengan panjang masing-masing n/2, yang dinotasikan dengan L dan R. Feistel cipher menerapkan metode cipher berulang dengan masukan pada putaran ke-I yang didapat dari keluaran sebelumnya, yang secara matematis dapat dinyatakan sebagai berikut :
Li=Ri-1
Ri=Li-1 f(Ri-1,Ki); i=1,2,3,…,r
Ki adalah kunci untuk putaran ke-i dan f adalah fungsi transformasi.
Blok plaintext adalah gabungan L dan R awal atau secara formal plaintext dinyatakan dengan (Lo, Ro). Sedangkan blok ciphertext didapatkan dari L dan R hasil putaran terakhir setelah terlebih dahulu dipertukarkan atau dinyatakan dengan (Rr, Lr).
>> Avalanche
Pada blok cipher perubahan satu buah bit dapat menghasilkan perubahan lebih dari satu bit setelah satu putaran, lebih banyak lagi bit berubah untuk putaran berikutnya. Hasil perubahan tersebut dinamakan sebagai avalanche effect. Sebuah algoritma kriptografi memenuhi kriteria avalanche effect apabila satu buah bit input mengalami perubahan, maka probabilitas semua bit berubah adalah setengahnya. Avalanche effect merupakan salah satu karakteristik yang menjadi acuan untuk menentukan baik atau tidaknya sebuah algoritma kriptografi.
>> Mode Operasi
Ada beberapa mode operasi yang digunakan dalam kriptografi, seperti :
>> Electronic codebook (ECB)
Pada mode ini blok-blok plaintext (x) yang identik (yang menggunakan kunci sama) akan menghasilkan ciphertext (c) yang identik pula, yang secara matematis dapat dinyatakan :
Enkripsi : cj EK(xj); 1 j t
Dekripsi : xj EK-1(cj); 1 j t
>> Cipher block chaining (CBC)
Pada prosesnya, koded ini melibatkan penggunaan initializing vector (IV) yang menyebabkan blok-blok ciphertext yang identik apabila dienkripsi menggunakan kunci dan IV yang sama. Berubahnya IV, kunci atau blok plaintext pertama akan menghasilkan ciphertext yang berbeda. Secara matematis dapat dinyatakan :
Enkripsi : co IV, untuk 1 j t, cj EK(cj-1 xj)
>> Cipher feedback (CFB)
Jika pada mode CBC, plaintext sebesar n bit diproses dalam sekali waktu (menggunakan sebuah n bit cipher blok), beberapa aplikasi mengharuskan r bit plaintext untuk dienkripsi terlebih dahulu dan ditransmisikan bebas delay, untuk r < n (biasanya r = 1 atau r = 8); dalam kasus ini CBF digunakan. Dalam mode ini juga melibatkan penggunaan initializing vector (IV).
>> Output feedback (OFB)
mode operasi ini digunakan apabila kesalahan propagasi sama sekali harus dihindari. Hampir mirip dengan CFB, dan juga memungkinkan enkripsi menggunakan besar blok yang berfariasi.
>> Kunci Lemah dan Kunci Setengah Lemah
Dalam kriptografi dikenal istilah kunci lemah (weak-key) dan kunci setengah lemah (semi weak-key). Kunci lemah adalah kunci yang apabila mengenkripsi suatu plaintext kemudian dienkripsi lagi menggunakna kunci yang sama, maka ciphertextnya adalah plaintext itu sendiri. Sedangkan yang disebut dengan kunci setengah lemah adalah sepasang kunci yang memiliki sifat jika sebuah plaintext dienkripsi dengan suatu kunci, akan dapat dienkripsi dengan kunci yang lain.
Digital Rights Management
Manajemen hak digital (Inggris: Digital Rights Management atau DRM) adalah hiponim yang merujuk kepada teknologi pengaturan akses yang digunakan oleh para penerbit atau pemegang hak cipta untuk membatasi penggunaan suatu media atau alat digital. Istilah ini juga dapat diartikan sebagai pembatasan terhadap bagian tertentu dari suatu karya atau alat digital. Secara luas, DRM saling tumpang tindih dengan perangkat lunak proteksi salinan (copy protection), namun istilah "DRM" biasanya digunakan untuk media kreatif (musik, film, dan lain-lain) sementara istilah "proteksi salinan" cenderung digunakan untuk mekanisme proteksi salinan di perangkat-perangkat lunak komputer.
Manajemen hak digital telah dan sedang digunakan oleh perusahaan-perusahaan penyedia konten seperti Sony, Apple Inc., Microsoft, dan BBC.
Penggunaan manajemen hak digital telah menjadi hal yang kontroversial. Para pendukungnya mengemukakan bahwa DRM diperlukan untuk mencegah pembajakan salinan yang merugikan pendapatan mereka.[1] Para penentang, seperti Yayasan Perangkat Lunak Bebas, menyatakan bahwa penggunaan istilah "hak" adalah menyesatkan dan menyarankan agar menggantinya dengan istilah manajemen pembatasan digital. Sikap mereka didasari pada pandangan bahwa para pemegang hak cipta berusaha untuk membatas penggunaan materi berhak cipta dengan cara-cara yang tidak dilindungi oleh hukum yang ada.[2] Electronic Frontier Foundation, dan para penentang lainnya, juga menganggap sistem DRM sebagai praktik anti kompetisi.[3]
REFERENSI DARI
Tidak ada komentar:
Posting Komentar