Jumat, 12 November 2010
Pengamanan Informasi
Short Course on Cryptography
ITB Indonesia dan Newcastle University Australia
Juni 2001
By Tri Wahyudi
PENDAHULUAN
Perkembangan sistem manajemen dalam berbagai organisasi selama beberapa dasawarsa terakhir menunjukkan bahwa pemanfaatan teknologi informasi dapat menjadi penunjang pembuatan keputusan yang baik dan tepat bagi organisasi modern, baik organisasi pemerintah maupun organisasi swasta. Pemakaian teksnologi komputer sebagai salah satu aplikasi teknologi informasi sudah menjadi suatu kebutuhan. Dengan komputer banyak pekerjaan-pekerjaan dalam berbagai organisasi dapat diselesaikan lebih cepat, akurat dan efisien.
Dengan semakin berkembangnya teknik telekomunikasi dan sistem pengolahan data, maka dimulailah suatu babak baru dari sistem komunikasi yang dikenal dengan sistem komunikasi data. Secara umum komunikasi ini berkaitan dengan komunikasi antar komputer, yang menyalurkan data dari satu komputer ke komputer lainnya.
Namun selain berbagai macam keuntungan yang ditawarkan dengan pemakaian teknologi informasi tersebut, terdapat bahaya yang dapat ditimbulkan dengan adanya kemungkinan kebocoran data atau penyalahgunaan data yang dapat berakibat fatal bagi suatu organisasi. Untuk mengatasi masalah ini dibutuhkan suatu sistem pengamanan terhadap data/informasi, khususnya komunikasi antar komputer yang dimiliki oleh suatu organisasi.
PENGERTIAN PENGAMANAN DATA
Pengamanan data adalah perlindungan data dari pihak yang tidak berkepentingan (baik yang dilakukan secara sengaja atau tidak disengaja) berupa penyadapan, perusakan, pemodifikasian dan pemalsuan.
Pengamanan data diperlukan untuk :
• Militer dan Diplomatik
• Industri dan bisnis
• Personal
CONTOH PENGAMANAN DATA
Mengamankan data rahasia yang disimpan pada komputer atau pada tempat apapun dapat dilakukan dengan menggunakan pengamanan fisik dan tulisan rahasia atau keduanya.
Komunikasi untuk data rahasia dapat menggunakan saluran komunikasi yang aman seperti personal delivery, diplomatic mail, dedicated telephone line. sedangkan komunikasi yang menggunakan saluran yang tidak aman seperti ordinary mail with/out a grid and redundancy, ordinary telephone lines : conservation and telegram.
PENGAMANAN DATA DALAM SISTEM KOMPUTER
Pengamanan data di dalam sistem komputer harus dilindungi pada saat :
• Data di dalam memori (yang sedang diproses)
• Selama komunikasi berlangsung
• Data disimpan pada mass storage devices
ANCAMAN PENGAMANAN DATA
Ancaman-ancaman (tindakan untuk melindungi terhadap hal-hal berikut)
• Pemeriksaan/pembacaan(perusal) data yang ilegal;
• Perusakan (destruction,interruption) data yang tidak diinginkan (illegal).
• Pemasukan (insertion) data illegal
• Pengubahan (modification) data illegal;
• Pemalsuan (fabrication) data illegal
• Kesalahan Manusia (Human Error)
• Kebocoran data yang diperoleh secara legal
a. Media (Hal-hal yang dapat dijadikan sasaran)
• Sistem Operasi (O/S)
• Sistem Managemen Database (DBMS) dan/atau software lain yang terdapat di antara O/S dan data
• Saluran komunikasi
• Pencurian data secara fisik (misalnya disk atau komputer).
b. Ancaman Pengamanan dan Pelakunya
• Pengguna yang tidak berhak;
• Pengguna yang sah mengakses data yang tidak berhak diakses oleh mereka.
• Pengguna yang sah menggunakan akses sah tetapi melakukan tindakan ilegal (misalnya sengaja mengubah data tersebut)
• Pengguna yang sah menggunakan akses sah mengambil data yang mereka tidak mempunyai akses terhadap data tersebut.
USAHA PENGAMANAN DATA
Fisik :
Penyusupan : Penjaga, password, kunci, enkripsi (penyandian) terhadap data yang tersimpan
Media transmisi (saluran): Penyadapan, tampering, termasuk pengiriman ulang ke orang lain, Intersepsi login, Enkripsi (penyandian), Otentikasi data, tandatangan digital, time stamps, Otentikasi pengguna, one-time passwords
O/S : Kerusakan/ cacat pada O/S, Pengguna yang tak berhak, Akses yang tak berhak oleh pengguna yang sah Verifikasi (Pengamanan Kernel, Otentikasi pengguna, Kontrol akses
DBMS : Kerusakan/cacat pada DBMS, Pengguna yang tak berhak, Akses yang tak berhak oleh pengguna yang sah, Kebocoran data oleh pengguna yang berwenang dan akses yang berwenang, Verifikasi (Pengamanan Subsistem,Otentikasi pengguna, Otorisasi subsistem (GRANT/REVOKE), pengamat, pemeriksa jejak pengguna, Kendali kebocoran (penambahan gangguan,pembatasan permintaan pengguna
a. Pengamanan Data Dapat Diperoleh Dengan Kombinasi :
• Pengamanan fisik (penjaga, anjing penjaga, pintu yang terkunci dan lain-lain)
• Pengamanan O/S, DBMS (atau software lain) (termasuk kontrol akses yang memadai)
• Enkripsi data.
b. Pengamanan Subsistem
Hal-hal yang diperlukan untuk mendukung pengamanan data:
Otentikasi pengguna Langsung : sidik jari, spektrum frekuensi suara, pengamatan pola retina dan lain-lain.
Secara tidak langsung : passwords, protokol-biasanya menggunakan enkripsi
Kontrol Akses Otorisasi Subsistem : GRANT/REVOKE, pengamat, skema klasifikasi
Otentikasi data : Tanda tangan digital, timestamps-biasanya menggunakan enkripsi (penyandian)
Kendali kebocoran : Gangguan tambahan, pembatasan permintaan akses oleh pengguna
KRIPTOGRAFI
Kriptografi merupakan seni (ilmu pengetahuan, studi) dalam menulis huruf rahasia. Menulis Rahasia dengan menggunakan :
• Sistem penyembunyian (concealment systems)
• Sistem privasi (privacy systems)
• “true” secrecy systems
Kriptografi merupakan seni (ilmu pengetahuan, studi) dalam menulis huruf rahasia.
Concealment Systems menyembunyikan berita asli dalam berita palsu yang tampak seperti berita asli, atau metode lain untuk menyembunyikan keberadaan berita (seperti tinta tak kelihatan, mikrodots). Sistem ini disebut juga STEGANOGRAPHY.
Privacy System membutuhkan penggunaan peralatan khusus (seperti pengubah suara).
True secrecy systems, tidak menyembunyikan keberadaan berita, hanya saja arti dari berita tersebut dan tidak ada peralatan khusus yang diperlukan untuk membuka berita.
SISTEM KRIPTOGRAFI
True secrecy systems (cryptographic systems) dipelajari karena :
• Tidak mungkin menyembunyikan keberadaan informasi yang ditransmisikan melalui saluran publik/umum seperti saluran telepon (pengecualian : saluran subliminal)
• Hampir semua instalasi komputer menggunakan instalasi standar dan terdapat peralatan yang siap pakai sehingga hal ini menghalangi penggunaan sistem privasi yang lebih rumit.
Sistem Kriptografi terdiri dari dua bagian :
• Sistem kode
• Sistem Penyandian (Ciphers systems)
KODE
Kode (Code) pada dasarnya merupakan cara memetakan semantik (yang berhubungan dengan kata) dan memetakan huruf, kata-kata, dan/atau seluruh berita ke dalam teks yang sudah dikode dengan suatu tabel yang telah disiapkan.
Keuntungan : dengan desain yang benar, mungkin dapat dibuat teks terkode yang tampak menjadi berita dengan arti yang berbeda dari berita semula.
Kerugian : kebutuhan akan tabel substitusi (atau buku kode) untuk setiap kemungkinan berita yang dibatasi oleh tipe berita yang akan dikode.
Sistem Kode baik diaplikasikan untuk keperluan militer dan diplomatik.
Dalam sistem komputer umum yang menggunakan teknik pengkodean untuk mendapatkan keamanan adalah :
• Terlalu terbatas (biasanya tidak mungkin untuk memprediksikan tipe berita)
• Karena buku kode untuk komunikasi umum mempunyai ukuran dan jumlah yang sangat besar dan disimpan di tempat yang aman sehingga tidak dapat dipraktekkan untuk sistem komputer.
PENYANDIAN
Penyandian lebih fleksibel dari pada kode.
Pada dasarnya penyandian berorientasi pada karakter (atau grup karakter dengan ukuran yang tetap) yang memetakan karakter (atau grup karakter) ke karakter (atau grup karakter). Catatan : kata “code” kadang-kadang digunakan untuk menunjuk beberapa jenis penyandian (ciphers).
Penyandian dapat dibagi menjadi :
• Monoalphabetic
• Homophonic
• Polyalphabetic
• Polygram
Penyandian Monoalphabetik
Penyandian yang memetakan teks terang ke teks sandi dengan menggunakan karakter (simbol) dalam jumlah yang sama. Terdiri dari :
• Penyandian Transposisi
• Penyandian Substitusi
PENYANDIAN TRANSPOSISI
Mengubah letak karakter berdasarkan suatu skema tertentu, biasanya menggunakan bentuk Geometri tertentu. Metode “menulis ke dalam bentuk geometri” dan “mengambil dari bentuk tersebut”.
Columnar Transposition :
• Teks terang ditulis ke dalam baris matriks tertentu.
• Teks sandi diperoleh dengan mengambil dari kolom sesuai dengan aturan tertentu.
Contoh :
Menggunakan 6 kolom, teks terang SYDNEY OLYMPIC GAMES ditulis menurut baris.
S Y D N E Y
O L Y M P I
C G A M E S
Jika kolom diambil menurut urutan 6-5-2-4-1-3, hasil teks sandi yang didapat :
YISEPEYLGNMMSOCDYA
Teknik ini dapat digeneralisasikan dalam bentuk array dimensi-n.
TRANSPOSISI = PERMUTASI
Setiap penyandian transposisi merupakan permutasi dengan periode d. Periode permutasi dapat sama panjang dengan berita akan tetapi biasanya lebih pendek.
Misalkan Zd merupakan himpunan bialangan bulat {1,2,3, , d} dan misalkan juga f : Zd Zd merupakan permutasi yang didefinisikan dalam Zd.
Kunci berupa pasangan berurutan K = (d,f). Untuk menyandi, blok berurutan dari d karakter dipermutasikan sesuai dengan fungsi f.
Teks terang :
M = m1m2…mdmd+1…m2d
Yang disandi menjadi
EK(M) = mf(1)mf(2)…mf(d)md+f(1)…md+f(d)…
Proses membuka merupakan invers dari permutasi di atas.
a. Pengenalan dan Memecahkan Penyandian Transposisi
Contoh : Misalkan d= 6 dan f permutasi sebagai berikut:
Teks terang SYDNEY OLYMPIC GAMES disandi menjadi
YENDYSIPMYLOSEMAGC
Penyandian dengan permutasi periodik dapat diimplementasikan secara efisien pada komputer. Untuk mengenali teks sandi yang dihasilkan dengan penyandian transposisi : bandingkan frekuensi relatif huruf-huruf teks sandi dengan frekuensi harapan untuk teks terang. Penyandian transformasi dapat dipecahkan dengan anagramming (proses menyusun kembali huruf-huruf yang diacak ke dalam posisi yang sebenarnya).
b. Distribusi Frekuensi Huruf Bahasa Inggris
Setiap * mewakili 0,5 persen. Jumlah huruf : 67375
Char Expected Actual %
A 8.0 7,5 ***************
B 1,5 1,4 ***
C 3.0 4,1 *******
D 4,0 3,2 ******
E 13,0 12,7 ***********************
F 2,0 2,3 *****
G 1,5 1,9 ****
H 6,0 3,8 ********
I 6,5 7,7 ***************
J 0,5 0,2
K 0,5 0,4 *
L 3,5 3,8 ********
M 3,0 3,0 ******
N 7,0 7,0 *************
O 8,0 7,5 **************
P 2,0 3,0 ******
Q 0,2 0,2
R 6,5 6,7 ***********
S 6,0 7,3 *************
T 9,0 9,2 ******************
U 3,0 2,8 ******
V 1,0 1,0 **
W 1,5 1,4 **
X 0,5 0,3 *
Y 2,0 1,6 ***
Z 0,2 0,1
c. Tabel Frekuensi Kemunculan Karakter Dalam Alphabets (dalam persen) :
Arabic Danish Dutch English Finnish
a 17,75 a 6,50 a 8,25 a 7,5 a 12,50
b 3,75 b 1,25 b 1,75 b 1,25 b 0,25
t 6,00 c 0,25 c 1,00 c 3,50 c 0,25
h 9,25 d 5,50 d 5,25 d 4,25 d 0,75
j 1,25 e 16,00 e 19,00 e 12,75 e 8,25
k 3,25 f 3,00 f 1,00 f 3,00 f 0,25
d 5,00 g 4,50 g 3,00 g 2,00 g 0,50
r 5,00 h 1,75 h 2,50 h 3,50 h 2,00
z 0,75 i 6,50 i 6,50 i 7,75 i 11,00
s 5,00 j 0,50 j 1,50 j 0,25 j 1,75
9 4,00 k 3,00 k 2,75 k 0,50 k 5,50
g 0,75 l 5,00 l 4,00 l 3,75 l 6,00
f 2,50 m 4,25 m 2,75 m 2,75 m 3,25
q 2,00 n 7,00 n 10,25 n 7,75 n 8,75
k 0,00 o 5,25 o 6,00 o 7,50 o 6,25
l 8,75 p 1,50 p 1,75 p 2,75 p 1,75
m 575 q 0,00 q 0,25 q 0,50 q 0,00
n 4,50 r 9,50 r 6,25 r 8,50 r 3,00
w 6,25 s 6,25 s 4,00 s 6,00 s 7,25
y 7,25 t 7,25 t 7,25 t 9,25 t 10,75
o 3,25 u 1,75 u 2,50 u 3,00 u 5,00
v 2,75 v 2,25 v 1,50 v 2,25
w 0,25 w 2,00 w 1,50 w 0,25
x 0,25 x 0,25 x 0,50 x 0,00
y 0,50 y 0,25 y 2,25 y 2,25
z 0,25 z 1,25 z 0,25 z 0,00
} 1,25 } 2,00
{ 1,00 { 1,75
| 0,75 | 0,25
d. Digrams Dalam Bahasa Inggris
Pasangan huruf bahasa Inggris yang sering muncul :
(dengan skala relatif dari 1 sampai 10) :
Digram TH HE IN ER RE
Frekuensi 10,00 9,50 7,17 6,65 5,92
Digram ON AN EN AT ES
Frekuensi 5,70 5,63 4,76 4,72 4,24
Digram ED TE TI OR ST
Frekuensi 4,12 4,04 4,00 3,98 3,81
Digram AR ND TO NT IS
Frekuensi 3,54 3,52 3,50 3,44 3,43
Digram OF IT AL AS HA
Frekuensi 3,38 3,26 3,15 3,00 3,00
Digram NG CO SE ME DE
Frekuensi 2,93 2,80 2,75 2,65 2,65
“Unicity Distance” dari Penyandian Permutasi
Huruf trigram yang paling sering muncul dalam bahasa Inggris:
THE ENT ION AND ING IVE TIO FOR OUR THI ONE
Berapa banyak teks sandi yang dibutuhkan untuk memecahkan penyandian permutasi dengan periode d? Contoh : Apa yang dimaksud dengan “unicity distance” dari penyandian permutasi dengan periode d?
Dengan menggunakan pendekatan Sterling untuk d! akan didapat :
Contoh : Jika periode d = 27 maka kira-kira 10 dan log2 kira-kira 3.2 jadi N = 27.
Periode dan “unicity distance”yang berhubungan:
PENYANDIAN SUBSTITUSI
Dapat dibagi menjadi :
• Monoalphabetic
• Homophonic
• Polyalphabetic
• Polygrams
Penyandian substitusi sederhana menggantikan setiap karakter dari alphabet teks terang A dengan karakter yang berhubungan dari alphabet teks sandi C. (Biasanya C merupakan penyusunan sederhana sesuai urutan lexicographic dari karakter di A.)
Misalkan A merupakan karakter alphabet sejumlah n {a0,a1,…,an-1}. Maka C merupakan karakter alphabet sejumlah n {f(a0),f(a1),…,f(an-1)} di mana f : A C merupakan pemetaan satu-satu dari setiap karakter A dengan karakter yang berhubungan di C.
Kunci penyandian dapat diberikan sebagai C maupun sebagai fungsi f.
a. Penyandian Substitusi Sederhana
Untuk menyandi, cukup dengan menuliskan kembali berita menggunakan karakter yang berhubungan dari teks sandi:
EK(M) = f(m1)f(m2)….
Misalkan :
A A B C D E F G H I
C S Y D N E O L M P
A J K L M N O P Q R
C I C G A B F H J K
A S T U V W X Y Z
C Q R T U V W X Z
Alphabet teks sandi tersebut disebut sebagai keyword mixed alphabet. (Kunci penyandian di atas adalah SYDNEY OLYMPIC GAMES. Kemudian berita M = DOWN ELEVATOR disandi sebagai EK(M) = NFVB EGEUSRFK.
Penyandian yang berdasar pada Alphabet geser (shifted alphabets) menggeser huruf dari alphabet dengan posisi k ke kanan, modulus ukuran dari alphabet.
f(x) = (x+k) mod n;
di mana n ukuran alphabet A, x melambangkan posisi huruf A, dan k merupakan kunci yang dipakai.
Transformasi yang lebih komplek menggunakan perkalian :
f(x) = kx mod n
di mana k dan n relatif prima sehingga pemetaannya merupakan pemetaan satu-satu. k berperan sebagai kunci. Misalkan :
Jika k = 9 dan A alphabet bahasa Inggris:
A A B C D E F G H I
C A J S B K T C L U
A J K L M N O P Q R
C D M V E N W F O X
A S T U V W X Y Z
C G P Y H Q Z I R
Sehingga M = DOWN ESCALATOR, disandi menjadi EK(M) = BWON KGSAVAPWX
b. Transformasi Affine
Menggabungkan penjumlahan dan perkalian untuk mendapatkan :
f(x) = (xk1 +k0) mod n, di mana k1 dan n relatif prima. secara umum dapat mempunyai tranformasi polinomial dangan derajat t :
f(x) = (xt kt + xt - 1 kt-1 + ...x k1 + k0) mod n
Penyandian Caesar : derajat 0; transformasi affine : derajat 1.
Catatan : dengan menggunakan alphabet teks sandi yang tidak standard tidak menambah kesulitan untuk memecahkan sandi tersebut.
c. Memecahkan Sistem Penyandian Substitusi
Contoh : Temukan jumlah huruf yang dibutuhkan untuk memecahkan substitusi umum dengan ukuran alphabet n.
Jumlah kemungkinan kunci yang ada adalah n! (merupakan jumlah kemungkinan cara menyusun huruf-huruf dengan jumlah n dari alphabet).
Sehingga, biasanya diperlukan setidaknya 28 huruf untuk memecahkan penyandian tersebut dengan menggunakan analisis frekuensi.
Substitusi sederhana mudah dipecahkan dengan ciphertext-only attack dengan menggunakan analisis frekuensi huruf tunggal (single letter frequency analysis) : caranya dengan membandingkan frekuensi huruf pada teks sandi dengan frekuensi harapan untuk mencocokkan antara huruf teks terang dan huruf teks sandi.
Distribusi digram dan trigram dapat juga digunakan. Penyandian yang berdasarkan pada pergeseran alphabet sangat mudah dipecahkan karena setiap teks sandi mempunyai jarak yang tetap dari huruf teks terang yang sesuai.
Penyandian yang berdasar transformasi affine f(x) = (ak1 + ak0) mod n lebih sukar untuk dipecahkan akan tetapi jika himpunan t yang menghubungkan antara huruf teks terang mi dan huruf teks sandi ci, 1 i t, diketahui (atau dapat diprediksi) maka dapat dimungkinkan untuk menemukan k1 dan ks dengan memecahkan sistem persamaan :
(m1k1 + k0) mod n = c1
.......
(mtk1 + k0) mod n = ct
Contoh : misalkan kita mempunyai kemungkinan hubungan sebagai berikut:
Informasi tersebut menghasilkan persamaan :
(4k1 + k0) mod 26 = 10
(9k1 + k0) mod 26 = 19
(13k1 + k0) mod 26 = 21
Solusi untuk dua persamaan pertama adalah k1 = 7 dan k0 = 8.
Transformasi polinomial dengan derajat yang lebih tinggi juga dapat dipecahkan dengan cara yang hampir sama.
Kriptanalisis dari Penyandian umum substitusi sederhana :
• Brute Force attack : coba seluruh 26! Kemungkinan - jika satu kemungkinan pembukaan per mikrodetik, maka akan dibutuhkan waktu 103 tahun.
• Walaupun mempergunakan analisis frekuensi satu huruf – digram dan trigram juga sangat membantu.
Untuk menggagalkan penggunaan analisis frekuensi satu huruf, maka dapat digunakan penyandian homophonic.
PENYANDIAN HOMOPHONIC
Merupakan penyandian substitusi yang memetakan setiap alphabet karakter teks terang x ke dalam himpunan elemen teks sandi f(x) yang disebut homophones. Pemetaan dengan fungsi f dari teks terang ke teks sandi menggunakan bentuk :
f : A 2C.
Sebuah berita teks terang M = m1ms….disandi menjadi C = c1c2… di mana setiap ci diambil secara random dari himpunan homophones f(mi).
Contoh : Misalkan huruf dalam Bahasa Inggris disandi sebagai bilangan bulat antara 0 dan 99. Teks terang M = MINIMALITY dapat disandi menjadi :
C = 06 44 52 44 06 90 05 03 95 13 dan sebagainya
C’ = 73 44 25 20 12 22 04 99 95 10 dan sebagainya
Sistem ini lebih sulit dipecahkan dibanding dengan substitusi sederhana karena distribusi frekuensi relatif teks sandi akan merata sehingga analisis frekuensi satu huruf tidak akan memberikan informasi apa-apa.
Sistem ini mungkin masih dapat dipecahkan dengan menggunakan pendekatan statistik lain dari teks sandi (seperti distribusi digram). Semakin banyak homophone yang digunakan semakin sulit sistem tersebut dipecahkan. Dalam kasus yang ekstrim ketika setiap karakter teks terang dipetakan kepada simbol teks sandi yang unik, Penyandian tersebut mungkin tak terpecahkan.
Contoh : Sistem Sandi Beale (sekitar tahun 1820). Penyandian kedua (dipecahkan oleh Ward pada tahun 1880-an)merupakan penyandian homophonik, yang menggunakan Declaration of Independence sebagai kunci.
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar