Sabtu, 30 Oktober 2010

Subtitusi Cipher

* Substitusi cipher

- cipher substitusi:
melibatkan penggantian satu atau lebih entitas (umumnya huruf) dalam pesan dengan satu atau lebih entitas lain.

Ada beberapa jenis kriptografi substitusi:

- substitusi Monoalphabetic:
melibatkan menggantikan setiap huruf dalam pesan dengan huruf lain abjad
- substitusi Polyalphabetic:
melibatkan menggunakan serangkaian cipher monoalphabetic yang periodicially kembali
- substitusi Homophonic:
memungkinkan untuk memiliki setiap huruf dari pesan plaintext sesuai dengan kelompok kemungkinan karakter lain
- substitusi mengganti Polygraphic:
melibatkan kelompok karakter dalam pesan dengan kelompok lain karakter

Salah satu subtitusi cipher:

* kode kaisar

Pada perkembangan selanjutnya kode kaisar ini mengalami pengembangan gagasan pada pembuatan kunci. Gagasan kunci ini disebut polyalphabetic. Kunci ini dapat berupa apa saja, seperti nama, alamat, kantor, dan lain-lain yang penting masih menggunkan karakter alphabet.

Penggunaan kunci pada kode kaisar ini tidak boleh adanya pengulangan huruf, seperti ‘DODISPUTRA’ akan menjadi ‘DOISPUTRA’. Kita langsung mempraktikan saja, misalkan plaintext yang diberikan ‘NINJA ASASSIN MEMANG KEREN’ dengan kunci ‘DODIS PUTRA’.

pi : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
ci : D O I S P U T R A B C E F G H J K L M N Q V W X Y Z

Plaintext : NINJA ASASSIN MEMANG KEREN
Kunci : DODIS PUTRA
Chipertext : GIGBDDMDMMAGFPFDGTCPLPG

Switch Layer 2 & Layer 3?

* Swich Layer 2

Layer 2 switch adalah sebuah bentuk switch Ethernet yang melakukan switching terhadap paket dengan melihat alamat fisiknya (MAC address). Switch jenis ini bekerja pada lapisan data-link (atau lapisan kedua) dalam OSI Reference Model. Switch-switch tersebut juga dapat melakukan fungsi sebagai bridge antara segmen-segmen jaringan LAN, karena mereka meneruskan frame Ethernet berdasarkan alamat tujuannya tanpa mengetahui protokol jaringan apa yang digunakan.
Layer 2 switch dapat dipasang secara transparan di dalam sebuah jaringan. Perangkat-perangkat tersebut tidak akan mengganggu komunikasi antara host dengan router. Sekali terpasang, sebuah layer 2 switch akan mengetahui host-host dan jaringan yang terhubung dengan melihat field Source Address pada frame yang diterimanya. Layer 2 switch juga dapat membangun sebuah basis data dari alamat-alamat MAC address dan port di mana kartu jaringan terhubung yang disimpan di dalam memori cache milik switch.
Ketika sebuah frame datang ke sebuah port di dalam switch, layer 2 switch akan menguji frame tersebut dengan melihat field Destination Address, dan kemudian akan meneruskan frame tersebut ke tujuannya yang masih terhubung ke switch yang sama, dengan mengirimkannya kepada port di mana tujuannya terhubung. Jika field Source Address dari frame tersebut tidak dikenali, maka switch tersebut akan mengirimkan frame tersebut ke semua port kecuali port di mana frame tersebut masuk.

* Switch Layer 3

Sebuah Layer 3 switch adalah perangkat performa tinggi untuk jaringan routing. Layer 3 switch sebenarnya sangat sedikit berbeda dari router. Sebuah Layer 3 switch dapat mendukung routing sama protokol sebagai router jaringan lakukan. Kedua memeriksa paket yang masuk dan membuat keputusan routing dinamis berdasarkan alamat sumber dan tujuan di dalamnya. Kedua jenis kotak berbagi tampilan yang sama.
Layer 3 switch yang dikandung sebagai teknologi untuk memperbaiki kinerja router yang digunakan dalam besar jaringan area lokal (LAN) seperti perusahaan intranet . Perbedaan utama antara Layer 3 switch dan router terletak pada teknologi hardware yang digunakan untuk membangun unit. Perangkat keras di dalam mesin 3 Layer menggabungkan yang tradisional switch dan router, menggantikan beberapa logika perangkat lunak router dengan perangkat keras yang menawarkan kinerja yang lebih baik dalam beberapa situasi.

Layer 3 switch sering biaya kurang dari router tradisional. Dirancang untuk digunakan dalam jaringan lokal, suatu Layer 3 switch biasanya tidak akan memiliki WAN pelabuhan dan wide area network fitur router tradisional akan selalu memiliki.

Apa itu TRUNKING,Spanning Tree Protocol(STP),Kriptografi?

* TRUNKING

Dalam modern komunikasi , trunking adalah sebuah konsep dimana sistem komunikasi dapat menyediakan akses jaringan untuk banyak klien dengan berbagi satu set garis atau frekuensi, bukan memberikan mereka secara individu. Hal ini analog dengan struktur pohon dengan satu batang dan cabang banyak. Contoh ini termasuk sistem telepon dan radio VHF biasa digunakan oleh lembaga kepolisian. Baru-baru ini trunking port telah diterapkan dalam jaringan komputer juga.

* STP

Spanning Tree Protocol disingkat menjadi STP, Merupakan bagian dari standard IEEE 802.1 untuk kontrol media akses. Berfungsi sebagai protocol untuk pengaturan koneksi dengan menggunakan algoritma spanning tree.
Kelebihan STP dapat menyediakan system jalur backup & juga mencegah loop yang tidak diinginkan pada jaringan yang memiliki beberapa jalur menuju ke satu tujuan dari satu host.
Loop terjadi bila ada route/jalur alternative diantara host-host. Untuk menyiapkan jalur back up, STP membuat status jalur back up menjadi stand by atau diblock. STP hanya membolehkan satu jalur yang active (fungsi pencegahan loop) diantara dua host namun menyiapkan jalur back up bila jalur utama terputus.
Bila "cost" STP berubah atau ada jalur yang terputus, algoritma spanning tree merubah topology spanning tree dan mengaktifkan jalur yang sebelumnya stand by.
Tanpa spanning tree pun sebenarnya memungkinkan koneksi antara dua host melewati beberapa jalur sekaligus namun dapat juga membuat looping yang tidak pernah akan selesai di dalam jaringan anda. Yang pasti akan menghabiskan kapasitas jalur yang ada hanya untuk melewatkan packet data yang sama secara berulang dan berlipat ganda.

* Kriptografi
- Pengertian Dasar

Suatu pesan yang tidak disandikan disebut sebagai plaintext ataupun dapat disebut juga sebagai cleartext. Proses yang dilakukan untuk mengubah plaintext ke dalam ciphertext disebut encryption atau encipherment. Sedangkan proses untuk mengubah ciphertext kembali ke plaintext disebut decryption atau decipherment. Secara sederhana istilah-istilah di atas dapat digambarkan sebagai berikut :


Gb. 1. Proses Enkripsi/Dekripsi Sederhana

Cryptography adalah suatu ilmu ataupun seni mengamankan pesan, dan dilakukan oleh cryptographer. Sedang, cryptanalysis adalah suatu ilmu dan seni membuka (breaking) ciphertext dan orang yang melakukannya disebut cryptanalyst.

Cryptographic system atau cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang menentukan transformasi pencipheran tertentu disebut suatu set kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi. Secara umum, kunci-kunci yang digunakan untuk proses pengenkripsian dan pendekripsian tidak perlu identik, tergantung pada sistem yang digunakan.

Secara umum operasi enkripsi dan dekripsi dapat diterangkan secara matematis sebagai berikut :

EK (M) = C (Proses Enkripsi)
DK (C) = M (Proses Dekripsi)

Pada saat proses enkripsi kita menyandikan pesan M dengan suatu kunci K lalu dihasilkan pesan C. Sedangkan pada proses dekripsi, pesan C tersebut diuraikan dengan menggunakan kunci K sehingga dihasilkan pesan M yang sama seperti pesan sebelumnya.

Dengan demikian keamanan suatu pesan tergantung pada kunci ataupun kunci-kunci yang digunakan, dan tidak tergantung pada algoritma yang digunakan. Sehingga algoritma-algoritma yang digunakan tersebut dapat dipublikasikan dan dianalisis, serta produk-produk yang menggunakan algoritma tersebut dapat diproduksi massal. Tidaklah menjadi masalah apabila seseorang mengetahui algoritma yang kita gunakan. Selama ia tidak mengetahui kunci yang dipakai, ia tetap tidak dapat membaca pesan.

Jumat, 29 Oktober 2010

Teknik Transposisi



Teknik Transposisi
*Segitiga
M
E
L
A
N
G
K
A
H
L
E
B
I
H
M
A
J
U
X
X
X
X
X
X
X

-Ciphertext : JLUNEXEGBXMLKIXAAHXHMXAXX
*Spriral
M
E
L
A
N
H
M
A
J
G
I
X
X
U
K
B
E
L
H
A

-Ciphertext : MHIBEMXELAXLAJUHNGKA
*Diagonal
M
N
H
I
J
E
G
L
H
U
L
K
E
M
X
A
A
B
A
X

-Ciphertext : MNHIJEGLHULKEMXAABAX
*Zig zag
L
K
E
M
X
E
A
G
A
L
B
H
A
U
M
N
H
I
J

-Ciphertext : LKEMXEAGALBHAUMNHIJ

Algoritma Kriptografi Klasik,Kode Kaisar,Kode HILL,Teknik Transposisi

Algoritma Kriptografi Klasik

Pada algoritma klasik, diterapkan teknik enkripsi konvensional (simetris). Algoritma ini merupakan algoritma kriptografi yang biasa digunakan orang sejak berabad-abad yang lalu. Dua teknik dasar yang biasa digunakan, yaitu :
1. Teknik Subsitusi
2. Teknik Transposisi

1. Teknik Subsitusi
Subsitusi adalah penggantian setiap karakter plaintext dengan karakter lain. Beberapa istilah yang mungkin perlu diingat adalah :
a. Monoalfabet : Setiap karakter ciphertext mengganti satu macam karakter plaintext tertentu.
b. Polyalfabet : Setiap karakter ciphertext dapat mengganti lebih dari satu karakter plaintext.
c. Monograf / unilateral : Satu enkripsi dilakukan terhadap satu karakter plaintext.
d. Polygraf / multilateral : Satu enkripsi dilakukan terhadap lebih dari satu karakter plaintext sekaligus.
Cipher subsitusi paling tua yang dikenal adalah subsitusi yang dilakukan Julius Caesar. Beberapa teknik subsitusi yang pernah dilakukan, antara lain : [KUR04]
a. Subsitusi deret campuran kata kunci yaitu subsitusi yang kata kuncinya didapat dari mengumpulkan karakter yang sama dari sebuah plaintext dan pada ciphertextnya ditambahkan semua sisa karakter dalam abjad.
b.bSubsitusi monomer-dinome-trinome. Monome berarti setiap satu karakter plaintext akan disubsitusi oleh satu karakter ciphertext, dinome disubsitusi dua karakter ciphertext, tridome disubsitusi tiga karakter ciphertext. Jadi sistem ini adalah campuran dari ketiga sistem dasar.
c. Subsitusi multilateral variant. Subsitusi ini masih termasuk jenis monoalfabet yang dalam mensubsitusi memanfaatkan huruf abjad a,b,c,…,z yang disusun dalam matrik 5 X 5.
d. Subsitusi digrafik. Pada sistem ini, setiap huruf plaintext akan disubsitusi oleh dua huruf ciphertext. Pola huruf cipher text diambil dari sebuah matrik 26 X 26 yang berasal dari 26 abjad yang memiliki pola khusus.
e. Subsitusi persegi panjang. Sistem digrafik terlalu memerlukan matrik yang besar. Untuk memperkecil matrik dengan keamanan yang setara dapat digunakan sistem empat persegi.
f. Subsitusi kode playfair. Kode rahasia multi huruf yang paling terkenal adalah playfair. Playfair menggunakan 676 digraf. Selama waktu yang lama, kode ini dianggap tak dapat dipecahkan. Playfair dijadikan sistem standar oleh tentara Inggris dalam PD I dan masih digunakan secara luas oleh tentara Amerika dan sekutu selama PD II. Sistem ini menggunakan matrik 5 X 5.
g. Subsitusi Polialfabet periodik. Dalam sistem polialfabet, setiap ciphertext dapat memiliki banyak kemungkinan plaintext. Dan sistem periodik itu sendiri dikarenakan adanya kunci yang berulang. Jenis polialfabet klasik yang terkenal adalah Vigenere.
h. Enigma. Merupakan mesin kriptografi yang digunakan oleh tentara NAZI Hitler pada masa PD II. Mesin ini menggunakan rotor. Enigma menggunakan tiga rotor untuk melakukan subsitusi. Tiga rotor berarti tiga kali subsitusi.

2. Teknik Transposisi ( Permutasi )
Beberapa model kriptografi yang menggunakan teknik transposisi, antara lain :
1. Algoritma transposisi kolom dengan kunci numerik. Teknik ini menggunakan permutasi karakter. Kunci dapat diperoleh dari kata yang mudah dibaca dan kemudian dikodekan menjadi bilangan.
2. Masukan plaintext pola zig-zag, keluaran ciphertext berupa baris.
3. Masukan pola segitiga, keluaran berupa kolom, dibaca dari atas kebawah.
4. Masukan berpola spiral, dari luar kedalam, keluaran berupa kolom dibaca dari atas ke bawah.
5. Dimasukan secara diagonal dari kiri bawah ke kanan atas, keluaran baris.
6. Masukan spiral dari dalam ke luar, keluaran diagonal bergantian.
Kombinasi subsitusi dan transposisi yang komplek menjadi dasar pembentukan algoritma-algoritma kriptografi modern. Salah satu algoritma klasik yang menggunakan kedua teknik ini adalah VIC yang tidak memerlukan komputer dalam penggunaannya. 


kode kaisar

Pada perkembangan selanjutnya kode kaisar ini mengalami pengembangan gagasan pada pembuatan kunci. Gagasan kunci ini disebut polyalphabetic. Kunci ini dapat berupa apa saja, seperti nama, alamat, kantor, dan lain-lain yang penting masih menggunkan karakter alphabet.

Penggunaan kunci pada kode kaisar ini tidak boleh adanya pengulangan huruf, seperti ‘DODISPUTRA’ akan menjadi ‘DOISPUTRA’. Kita langsung mempraktikan saja, misalkan plaintext yang diberikan ‘NINJA ASASSIN MEMANG KEREN’ dengan kunci ‘DODIS PUTRA’.


pi : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
ci : D O I S P U T R A B C E F G H J K L M N Q V W X Y Z

Plaintext    : NINJA ASASSIN MEMANG KEREN
Kunc         : DODIS PUTRA
Chipertext : GIGB DDMD MMAG FPFD GTCP LPG

Kode HILL

Kode Hill atau lebih dikenal dengan Hill cipher merupakan salah satu algoritma kriptografi kunci simetris dan merupakan salah satu kripto polyalphabetic. Hill cipher diciptakan oleh Lester S. Hill pada tahun 1929 .
Teknik kriptografi ini diciptakan dengan maksud untuk dapat menciptakan  cipher yang tidak dapat dipecahkan menggunakan teknik 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).

Perhitungan Matematis Dasar dari teknik hill cipher adalah aritmatika modulo terhadap matriks. Dalam penerapannya,  Hill cipher menggunakan teknik perkalian matriks dan teknik invers terhadap matriks. Kunci pada hill cipher adalah matriks n x n dengan n merupakan ukuran blok. Jika matriks kunci kita sebut dengan K, maka matriks K adalah sebagai berikut :








Matriks  K yang menjadi kunci ini harus merupakan matriks yang  invertible, yaitu memiliki multiplicative inverse K-1 sehingga :
 K . K-1  =  1   
Ingat ! Kunci harus memiliki invers karena matriks  K-1 tersebut adalah kunci yang digunakan untuk melakukan dekripsi.

Cara Enkripsi
Dengan mengkodekan atau mengubah setiap huruf abjad dengan integer sebagai berikut: A = 0, B = 1, …, Z = 25








maka secara matematis, proses enkripsi pada  hill cipher adalah: 
C = K . P  mod 26
C = Cipherteks   |   K = Kunci   |    P = Plainteks

Proses enkripsi pada  hill cipher dilakukan per blok plainteks. Ukuran blok tersebut sama dengan ukuran matriks kuncinya. Perhatikan contoh dibawah ini!
P =  D O D I S  P U T R A  ,dikodekan/diintegerkan menjadi
P = 3  14  3  8  18  15   20  19  17   0







Karena matriks kunci K berukuran 2, maka plainteks dibagi menjadi blok yang masing-masing bloknya berukuran 2 karakter. Blok pertama dari plainteks  P1,2 =[3;14] kemudian dienkripsi dengan kunci K dengan persamaan C = K . P  mod 26. Karena perkalian tersebut menghasilkan lebih dari angka 25 maka dilakukan modulo 26 pada hasil yang lebih dari 25.




Karakter yang berkorespondensi dengan 21 dan 9 adalah V dan J. Setelah melakukan enkripsi semua blok pada plainteks P maka dihasilkan cipherteks C sebagai berikut:
P =  D O D I S P U T R A 
C =  V J R N P W L U R X
Cipherteks yang dihasilkan oleh enkripsi hill chiper atau kode hill menghasilkan cipherteks yang tidak memiliki pola yang mirip dengan plainteks atau pesan aslinya.

Teknik Transposisi
- Metode Blok

Metode ini melakukan enkripsi menggunakan blok dengan membagi text asli/ plaintext menjadi blok-blok dengan setiap blok mengandung beberapa karakter biasanya 3 atau lebih per blok tergantung perjanjian. Data yang digunkan adalah contoh 2 diatas:

Plaintext  : NINJ AASA SSIN MEMA NGKE RENX
              K1   K2   K1   K2   K1   K2

Chipertext : GIGB BBIB MMAG RLRB GTCP HLEX
              K1   K2   K1   K2    K1  K2

Untuk mengurangi kekurangan huruf digunakan huruf X atau yang lain sesuai perjanjian.



- Motode Zig Zag
Pendistribusian dengan metode ini dilakukan dengan menukarkan huruf asli dengan huruf yang sudah memakai kunci K1 dan mencari huruf yang sama pada K2 dan K3, sehingga huruf yang menjadi teks kode/ chipertext adalah huruf dari persamaan C=K3 dan sebaliknya. Untuk menggunakan metode ini sebaiknya mempunyai 3 kunci atau lebih. Lebih jelasnya lihat contoh dibawah ini.
P1 : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
K1 : D O I S P U T R A B C E F G H J K L M N Q V W X Y Z

Huruf N pada P1 dikodekan ke K1 menjadi G --> K1 ke K2

P2 : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
K2 : N O T B A R E G C D F H I J K L M P Q S U V W X Y Z

Huruf G pada K2 dikodekan ke P2 menjadi H --> K2 ke K3

P3 : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
K3 : L O M B K I S A N D C E F G H J P Q R T U V W X Y Z

Huruf H pada K3 dikodekan ke P3 menjadi O --> C = K3, begitu seterusnya untuk huruf alphabet yang akan dikodekan.

Plaintext : NINJA ASASSIN MEMANG KEREN
Chipertext : OLOJPPRPRRLOESEPOKFSQSO