KEAMANAN KOMPUTER

Download Report

Transcript KEAMANAN KOMPUTER

KEAMANAN KOMPUTER
ADITYO NUGROHO,ST
TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE TUBAN
PERTEMUAN 3 – LANDASAN MATEMATIKA
Ada Apa Dengan Landasan Matematika ?
Memahami kriptografi dan kriptanalisis memerlukan
pemahaman MATEMATIKA.
Matematika memberikan landasan penting pada
sebagian besar konsep dalam kriptografi.
Matematika yang diperlukan untuk kriptografi
termasuk ke dalam MATEMATIKA DISKRIT
Fungsi
Relasi dari A ke B merupakan FUNGSI jika setiap
elemen dalam A dihubungkan dengan tepat satu
elemen di dalam B.
A
B
f
f:AB
f memetakan A ke B
a
b
Fungsi
A
f
B
a
Nama lain dari FUNGSI adalah PEMETAAN atau
TRANSFORMASI.
Himpunan A disebut DAERAH ASAL (DOMAIN) dari f dan
himpunan B disebut DAERAH HASIL (CODOMAIN) dari f.
b
Fungsi
A
f
a
Kita menuliskan f(a)=b
jika elemen a didalam
A dihubungkan dengan elemen b didalam B.
b dinamakan BAYANGAN (IMAGE) dari a
a dinamakan PRA_BAYANGAN (PRE-IMAGE) dari b
B
b
Fungsi
A
f
a
Himpunan yang berisi semua nilai pemetaan f disebut
JELAJAH (RANGE) dari f.
Fungsi adalah relasi yang khusus. Kekhususan ini
tercakup pada dua hal penting yaitu :
B
b
Fungsi
1.
2.
A
f
B
a
Tiap elemen dalam himpunan A, yang merupakan
daerah asal f, harus digunakan oleh prosedur
atau kaidah yang mendefinisikan f.
Frasa “dihubungkan dengan tepat satu elemen
didalam B” berarti bahwa jika (a,b)  f dan
(a,c)  f, maka b=c
b
Fungsi
Fungsi Satu-ke-Satu
Fungsi f dari himpunan A ke B dikatakan SATU-KESATU (ONE-TO-ONE) atau INJEKTIF (INJECTIVE) jika
tidak ada dua elemen himpunan A yang memiliki
bayangan sama.
A
B
f
a
b
c
1
2
3
Fungsi
Fungsi Pada
Fungsi f dari himpunan A ke B dikatakan PADA (ONTO)
atau SURJEKTIF (SURJECTIVE) jika setiap elemen B
merupakan bayangan dari SATU atau LEBIH elemen A.
A
B
f
a
b
c
d
1
2
3
Fungsi
Fungsi Berkoresponden Satu-ke-Satu
Fungsi f dari himpunan A ke B dikatakan
BERKORESPONDEN SATU-KE-SATU atau BIJEKSI
(BIJECTION) jika merupakan fungsi SATU-KE-SATU
sekaligus fungsi PADA. A
B
f
a
b
c
1
2
3
Fungsi
Fungsi Inversi
Fungsi INVERSI (INVERS) atau BALIKAN adalah fungsi
yang memetakan kembali B ke A. Dilambangkan
dengan f-1
A
f
a
B
1
f-1
Fungsi
Fungsi Satu Arah
Fungsi f dari himpunan A ke B dikatakan FUNGSI SATU
ARAH jika f(x) “mudah” untuk dihitung untuk semua x
 A tetapi “sangat sukar” atau bahkan “hampir tidak
mungkin secara komputasi” menemukan inversinya,
yaitu menemukan x sedemikian hingga f(x) = y untuk
semua y  jelajah f
Fungsi
Fungsi Satu Arah
Contoh :
Perkalian bilangan prima p=48611 dan q=53993 akan
menghasilkan n=2624653723
Tetapi sangat sulit untuk menemukan faktor prima
dari 2624653723, apalagi bila bilangan yang
digunakan cukup besar.
Fungsi
Fungsi Pintu-Kolong
Fungsi f dari himpunan A ke B dikatakan FUNGSI
PINTU-KOLONG (TRAPDOOR FUNCTION) jika f(x)
“mudah” dihitung untuk semua x  A tetapi “sangat
sukar secara komputasi” menemukan inversinya
tanpa INFORMASI TAMBAHAN yang disebut “PINTUKOLONG (TRAPDOOR)”.
Fungsi
Fungsi Pintu-Kolong
Jika f adalah fungsi pintu-kolong, maka terdapat
INFORMASI RAHASIA k sedemikian hingga bila
diberikan f(x) dan k maka x lebih mudah dihitung.
Dalam kriptografi, fungsi pintu-kolong dan fungsi
satu-arah banyak digunakan pada kriptografi kuncipublik.
Permutasi dan Kombinasi
Permutasi
Adalah jumlah urutan berbeda dari pengaturan objekobjek. Permutasi dari n objek adalah :
Permutasi dan Kombinasi
Permutasi
Permutasi r dari n objek disimbolkan dengan P(n,r),
adalah kemungkinan urutan r buah objek yang dipilih
dari n buah objek, dengan r ≤ n. Yang dalam hal ini
pada setiap kemungkinan urutan tidak ada objekyang
sama.
Permutasi dan Kombinasi
Permutasi
Contoh : Ada 26 huruf dalam alfabet. Jika huruf-huruf
disusun, maka ada 26! Urutan susunan yang
dihasilkan.
Jika menyusun 5 huruf dari alfabet, maka
kemungkinan susunan huruf yang terbentuk :
Permutasi dan Kombinasi
Kombinasi
Bentuk khusus dari permutasi adalah KOMBINASI.
Jika pada permutasi urutan kemunculan
diperhitungkan, maka pada kombinasi urutan
kemunculan DIABAIKAN.
Contoh urutan abc,cba,acb dianggap sama dan
dihitung sekali.
Permutasi dan Kombinasi
Kombinasi
Kombinasi r elemen dari n elemen disimbolkan dengan
C(n,r) adalah jumlah pemilihan yang tidak terurut r
elemen yang diambil dari n buan elemen, yang
banyaknya adalah :
Permutasi dan Kombinasi
Kombinasi
Contoh :
Setiap karakter ASCII panjangnya 1 byte. Jumlah byte
yang mengandung 3 buah bit 1 adalah
Teori Informasi
Teori yang mendefinisikan jumlah informasi di dalam
pesan sebagai jumlah minimum bit yang dibutuhkan
untuk mengkodekan pesan
Contoh : 1 bit untuk mengkodekan jenis kelamin, 3 bit
untuk nama hari.
Teori Informasi
Entropi (entropy) adalah ukuran yang menyatakan
jumlah informasi di dalam pesan. (Biasanya
dinyatakan dalam satuan bit)
Entropi digunakan untuk memperkirakan jumlah bit
rata-rata untuk mengkodekan elemen dari pesan.
Teori Informasi
Contoh : entropi untuk pesan yang menyatakan jenis
kelamin = 1 bit untu, entropi untuk pesan yang
menyatakan nama hari = 3 bit.
Teori Informasi
Shannon merumuskan entropi pesan, disimbolkan
dengan H, yang dihitung dengan persamaan :
X=pesan, n=jumlah simbol berbeda di dalam pesan,
pi=peluang kemunculan simbol ke-i
Teori Informasi
Misalkan pesan X adalah string “AABBCBDB”. Jumlah
simbol berbeda di dalam pesan adalah n=4 (yaitu
A,B,C,D).
Sehingga p(A)=2/8, p(B)=4/8, p(C)=1/8 dan
p(D)=1/8.
Entropi pesan X adalah :
Teori Informasi
Entropi 1,75 berarti setiap simbol dikodekan sebanyak
1,75 bit.
Teori Informasi
Sifat-sifat entropi adalah :
1. 0 ≤ H(X) ≤ log2(n)
2. H(X) = 0 jika dan hanya jika pi = 1 untuk semua i
dan pj = 0 untuk semua j ≠ i
3. H(X) = log2(n) jika dan hanya jika pi = 1/n untuk
setiap i, 1 ≤ i ≤ n
Teori Informasi
Entropi juga menyatakan ketidaktentuan (uncertainty)
dari pesan.
Contohnya, bila kriptogram “Y6RuPZ” menyatakan
plainteks “MALE” atau “FEMALE”, maka uncertainty
pesan = 1.
Kriptanalis harus mempelajari hanya 1 bit yang dipilih
secara tepat untuk menemukan plainteks.
Teori Informasi
Entropi sistem kriptografi adalah ukuran ruang kunci
K. Misal sistem kriptografi dengan kunci 64-bit
mempunyai entropi 64 bit. Semakin besar entropi,
semakin sulit memecahkan cipherteks.
Teori Informasi
Laju bahasa (rate of a language) didefinisikan sebagai
berikut :
N = panjang pesan. Contohnya, laju normal Bahasa
Inggris adalah 1,0 bit/huruf sampai dengan 1,5
bit/huruf untuk N besar
Teori Informasi
Laju mutlak (absolute rate) didefinisikan sebagai
berikut :
L = jumlah karakter didalam bahasa. Contohnya,
dalam bahasa Inggris (26 huruf), R = log226 = 4,7
bit/huruf.
Teori Informasi
Redundansi bahasa (D) didefinisikan sebagai berikut :
Contoh, di dalam bahasa Inggris (ambil r = 1,3) D = 4,7
– 1,3 = 3,4 bit/huruf. Artinya setiap huruf dalam
bahasa Inggris membawa 3,4 bit informasi redundan
(mubazir).
Teori Informasi
Contoh lain, pada pesan ASCII (256 karakter),
R = log2256 = 8 dan r = 1,3 (sama seperti bahasa
Inggris), sehingga D = 8 – 1,3 = 6,7 bit/karakter.
Kriptanalis menggunakan redundansi alami dari
bahasa untuk mengurangi kemungkinan jumlah
plainteks.
Teori Informasi
Contoh, kata “dan” dalam bahasa Indonesia redundan.
Misal jika dalam cipherteks banyak muncul kriptogram
“ftY” (3 huruf) maka kemungkinan besar itu adalah
“dan”.
Semakin besar redundansi bahasa, semakin mudah
melakukan kriptanalisis.
Teori Informasi
Dalam dunia nyata, implementasi kriptografi
dilengkapi dengan program KOMPRESI sebelum
mengenkripsi pesan.
KOMPRESI mengurangi mengurangi redundansi pesan.
Teori Bilangan
Number theory adalah teori yang mendasar dalam
memahami kriptografi. Khususnya sistem kriptografi
kunci-publik.
Bilangan yang dimaksud di sini hanyalah bilangan bulat
(integer).
Teori Bilangan
Sifat pembagian pada Bilangan Bulat
Misal a dan b adalah dua bilanga bulat dengan syarat
a ≠ 0, dapat dinyatakan bahwa a HABIS MEMBAGI b (a
divides b) jika terdapat bilangan bulat c sedemikian
hingga b = ac.
Teori Bilangan
Sifat pembagian pada Bilangan Bulat
TEOREMA EUCLIDAN. Misal m dan n adalah dua bilangan
bulat dengan syarat n > 0. Jika m dibagi dengan n
maka terdapat dua bilangan bulat unik q (quotient)
dan r (remainder) sedemikian hingga :
Contoh : 1987 dibagi 97 memberikan hasil bagi 20 dan
sisa 47. Atau ditulis 1987=97.20 + 47
Teori Bilangan
PBB (Pembagi Bersama Terbesar)
Misal a dan b adalah dua bilangan bulat tidak nol.
Pembagi bersama terbesar dari a dan b adalah
bilangan bulat terbesar d sedemikan hingga d | a dan
d | b. Dalam hal ini dinyatakan PBB(a,b) = d.
Contoh : Faktor pembagi 45 : 1,3,5,9,15 ; 36 : 1,2,3,4,9,12,18,36.
FPB dari 45 dan 36 adalah 1,3,9. Sehingga PBB(45,36) = 9
Teori Bilangan
Algoritma Euclidan
Adalah algoritma untuk mencari PBB dari dua buah
bilangan bulat.
Euclid, penemu algoritma Euclidan adlah seorang
matematikawan Yunani yang menuliskan algoritmanya
dalam bukunya “Element” .
Teori Bilangan
Algoritma Euclidan
Diberikan dua buah bilangan bulat tak-negatif m dan n
(m ≥ n). Algoritma Euclidan berikut mencari pembagi
bersama terbesar dari m dan n :
1. Jika n=0 maka m adalah PBB(m,n);stop; Kalau tidak, (yaitu n ≠ 0)
lanjutkan ke langkah 2
2.Bagilah m dengan n dan misalkan r adalah sisanya
3.Ganti nilai m dengan nilai n dan nilai n dengan nilai r, lalu ulang dari
langkah 1
Teori Bilangan
Algoritma Euclidan
Misalkan m=80, n=12 dan dipenuhi syarat m ≥ n, maka
PBB(80,12) dihitung dengan algoritma Euclidan sbb :
80 = 6 . 12 + 8
12 = 1 . 8 + 4
8=2.4+0
Teori Bilangan
Relatif Prima
Dua buah bilangan bulat a dan b dikatakan relatif prima jika
PBB (a,b) = 1. Jika a dan b relatif prima, maka terdapat
bilangan bulat m dan n sedemikian hingga :
ma + nb = 1
Contoh : 20 dan 3 relatif prima (PBB(20,3)=1), 20 dan 5
TIDAK relatif prima (PBB(20,5)=5)
Teori Bilangan
Aritmetika Modulo
Misalkan a adalah bilangan bulat dan m adalah bilangan bulat
> 0. Operasi a mod m (dibaca “a modulo m”) memberikan
sisa jika a dibagi dengan m. Bilangan m disebut MODULUS
atau MODULO, dan hasil aritmetika modulo m terletak dalam
himpunan {0,1,2,…,m-1}
Notasi : a mod m = r sedemikian hingga a=mq + r, dengan 0
≤r<m
Teori Bilangan
Aritmetika Modulo dan Kriptografi
Aritmetika modulo cocok digunakan untuk kriptografi :
1. Oleh karena nilai-nilai aritmetika modulo berada dalam
himpunan berhingga (0 sampai modulus m-1), maka kita
tidak perlu khawatir hasil perhitungan berada di luar
himpunan
2. Karena kita bekerja dengan bilangan bulat, maka kita
tidak khawatir kehilangan informasi akibat pembulatan
(round off) sebagaimana pada operasi bilangan real.