BAB 2 LANDASAN TEORI 2.1 Kriptografi - Implementasi Vigenére Cipher dengan Metode Linear Feedback Shift Register pada Text

5

BAB 2
LANDASAN TEORI

2.1 Kriptografi
Kriptografi berasal dari bahasa Yunani. Menurut bahasa tersebut kata "kriptografi"
dibagi menjadi dua, yaitu kripto dan graphia. Kripto berarti secret (rahasia) dan
Graphia berarti writing (tulisan)[l]. Menurut terminologinya, kriptografi adalah ilmu
dan seni untuk menjaga keamanan pesan ketika pesan dikirim dari suatu tempat ke
tempat yang lain Kriptografi merupakan seni dan ilmu untuk menjaga keamanan data
dengan metode tertentu, dan pelakunya disebut cryptographer. Kriptografi disebut
sebagai ilmu karena di dalamnya terdapat metode (rumusan) yang digunakan, dan
dikatakan sebagai seni karena karena dalam membuat suatu teknik kriptografi itu
sendiri merupakan ciri tersendiri dari si pembuat dan memerlukan teknik khusus
dalam mendisainnya. Sedangkan cryptanalysis adalah suatu ilmu dan seni memecahkan
ciphertext menjadi plaintext tanpa melalui cara yang seharusnya dan orang yang
melakukannya disebut cryptanalyst[4],[5].
Kriptografi juga dapat disebut sebagai ilmu yang mempelajari teknik- teknik
matematika yang berhubungan dengan aspek keamanan informasi, seperti kerahasiaan
data, keabsahan data, integritas data, serta autentikasi data[6], Sebuah pesan rahasia

harus terjaga keamanannya, salah satu cara dengan penyandian pesan yang bertujuan
meyakinkan privasi dengan menyembunyikan informasi dari orang-orang yang tidak
ditujukan informasi tersebut [7].
Keamanan dalam kehidupan saat ini adalah hal yang sangat penting. Arti dari
keamanan itu sendiri adalah menjaga suatu unsur yang sangat penting dari tindakan
yang tidak diinginkan, beberapa contohnya adalah informasi dan pesan. Jika kita
bertukar pesan (misal surat), maka kita tentu ingin pesan yang kita kirim sampai ke
pihak yang dituju dengan aman. Maksud aman itu sendiri berarti bahwa selama

Universitas Sumatera Utara

6

pengiriman tentu kita tidak ingin isi pesan dibaca oleh orang yang tidak berhak karena
mungkin pesan yang kita kirim adalah pesan rahasia.
Kriptografi (Cryptography) berasal dari bahasa yunani yaitu “cryptos” artinya
rahasia, sedangkan “graphien” artinya tulisan, jadi kriptografi itu adalah tulisan
rahasia. Dengan kata lain kriptografi adalah ilmu dan seni untuk menjaga kerahasiaan
pesan dengan cara menyandikannya ke dalam bentuk yang tidak dapat dimengerti
maknanya. Kriptografi dibuat adalah untuk menghindari dari penyadap. Penyadap

adalah orang yang mencoba melihat pesan saat dikirim[1].
Perkembangan yang paling pesat dan berpengaruh dalam sejarah kriptografi
ialah pada tahun 1976 dimana Whitfield Diffie dan Martin Hellman mempublikasikan
sebuah tesis berjudul New Direction in Cryptography. Dalam tesis ini diperkenalkan
konsep kunci publik kriptografi yang paling revolusioner dan juga menyediakan
metode baru dalam pertukaran kunci, yaitu keamanan yang didasarkan atas logaritma
diskrit. Kriptografi telah banyak digunakan di dalam aplikasi-aplikasi khususnya
aplikasi pengamanan data pada saat sekarang ini. Aplikasi khas dari kriptografi adalah
sistem yang dikembangkan dengan teknik dasar. Sistem seperti ini, dapat memiliki
tingkat kompleksitas yang beraneka ragam.
Penemuan kunci adalah suatu teknologi yang memungkinkan sebuah kunci
ditemukan dalam kondisi tertentu tanpa pemilik memberitahukan. Ini perlu untuk dua
alasan, pertama, jika pemilik kunci menghilangkan atau secara tidak sengaja
menghapus kuncinya, penemuan kunci dapat menghindarkan malapetaka. Kedua, jika
aparat penegakan hukum ingin mengetahui suatu tindak kriminal tanpa sepengetahuan
tersangka, aparat tersebut harus mampu mendapatkan kunci yang diinginkan. Teknik
penemuan kunci sudah banyak digunakan saat ini, akan tetapi, penggunaan teknik ini
dalam hal penegakan hukum telah menimbulkan kontroversi[8].
2.1.1 Algoritma Kriptografi
Algoritma adalah urutan langkah-langkah logis untuk penyelesaian masalah

yang disusun secara sistematis, jadi algoritma kriptografi atau sering disebut dengan
cipher merupakan langkah-langkah logis bagaimana menyembunyikan pesan dari
orang-orang yang tidak berhak atas pesan tersebut. Algoritma kriptografi terdiri dari
tiga fungsi dasar, yaitu [5]:

Universitas Sumatera Utara

7

1.

Enkripsi, merupakan hal yang sangat penting dalam kriptografi, merupakan
pengamanan data yang dikirim agar terjaga kerahasiaannya. Pesan asli disebut
plainteks yang diubah menjadi kode-kode yang tidak dimengerti. Enkripsi bisa
diartikan sebagai chiper atau kode.

2.

Deskripsi, merupakan kebalikan dari enkripsi. Pesan yang telah di enkripsi
dikembalikan ke bentuk aslinya. Algoritma yang digunakan berbeda dengan

algoritma yang digunakan untuk enkripsi.

3.

Kunci, merupakan kunci yang digunakan untuk proses enkripsi dan deskripsi.
Kunci terbagi menjadi dua bagian yaitu kunci rahasia (private key) dan kunci
umum (public key) [1].

2.1.2 Jenis Sistem Kriptografi
Berdasarkan pemakaian kunci maka sistem kriptografi (cryptosystems) dapat
digolongkan atas atas 2 jenis sistem yakni sistem kriptografi kunci publik (public key
cryptography) dan sistem kriptografi kunci rahasia (secret key cryptography). Dalam
sistem kriptografi kunci rahasia yang dikenal juga dengan symmetric cryptosystems,
pihak pengirim dan penerima bersama-sama menyepakati sebuah kunci rahasia yang
akan digunakan dalam proses enkripsi dan dekripsi tanpa diketahui oleh pihak lain.
Sedangkan dalam sistem kriptografi kunci publik atau dikenal dengan assymmetric
cryptosystem, pihak pengirim maupun pihak penerima mendapatkan sepasang kunci
yakni kunci publik (public key) dan kunci rahasia (private key) dimana kunci publik
dipublikasikan dan kunci rahasia tetap dirahasiakan. Enkripsi dilakukan dengan
menggunakan kunci publik sedangkan dekripsi dilakukan dengan menggunakan kunci

rahasia[12].
2.1.2.1 Kriptografi Kunci Rahasia (Secret Key Cryptography)
Kriptografi kunci rahasia merupakan bentuk kriptografi yang lebih tradisional,
dimana kunci tunggal dapat digunakan untuk enkripsi dan dekripsi suatu pesan.
Kriptografi kunci rahasia tidak hanya digunakan untuk enkripsi, tetapi juga untuk
otentikasi. Salah satu teknik untuk pekerjaan ini disebut message authentication
codes (MAC)[9].

Universitas Sumatera Utara

8

Masalah utama dengan kriptografi kunci rahasia membuat pengirim dan
penerima pesan setuju atas kunci rahasia yang digunakan tanpa orang lain mampu
mendapatkan dan mengetahuinya. Atau dengan kata lain bagaimana memilih kunci
rahasia yang benar-benar aman. Hal ini membutuhkan suatu metode dimana kedua
pihak dapat berkomunikasi tanpa kekhawatiran akan tercecernya kunci tersebut. Akan
tetapi, keuntungan dari kriptografi kunci rahasia adalah biasanya lebih cepat
dibandingkan dengan kriptografi kunci public [14].
2.1.2.2 Kriptografi Kunci Publik (Public Key Cryptography)

Kriptografi kunci publik diperkenalkan oleh Whitfield Diffie dan Martin
Hellman pada tahun 1976. Kriptografi kunci publik memiliki dua penggunaan utama,
yakni enkripsi dan tanda tangan digital (encryption and digital signatures). Dalam
sistem kriptografi kunci publik, masing-masing pihak mendapat sepasang kunci, satu
disebut kunci publik (public key) dan satu lagi disebut kunci rahasia (private key) [2].
Kunci publik dipublikasikan, sementara kunci rahasia tetap dirahasiakan. Keharusan
penggunaan kunci secara bersama antara pengirim dan penerima pesan rahasia
dihilangkan, semua komunikasi hanya melibatkan kunci publik, dan tidak ada kunci
rahasia yang ditransmisikan atau digunakan bersama. Dalam sistem ini, tidak ada lagi
kecurigaan terhadap keamanan dari sistem komunikasi. Satu-satunya kebutuhan
bahwa kunci publik dikaitkan dengan penggunanya dalam lingkup yang saling
mempercayai (contoh dalam suatu trusted directory). Seseorang dapat mengirimkan
pesan rahasia dengan hanya menggunakan informasi yang umum (kunci publik),
tetapi pesan tersebut hanya mungkin didekrip dengan menggunakan kunci rahasia,
dimana satu-satunya yang memiliki kunci rahasia tersebut hanyalah orang yang
diharapkan menerima pesan tersebut. Kriptografi kunci publik tidak hanya digunakan
untuk merahasiakan pesan, tetapi juga untuk otentikasi (tanda tangan digital) dan
teknik lainnya [8].

Universitas Sumatera Utara


9

plainteks

enkripsi

cipherteks

dekripsi

User A

plainteks

User B
Kunci/key

Gambar 2.1 Kunci publik


2.1.3 Tujuan Kriptografi
Beberapa tujuan kriptografi adalah :
1.

Menjaga kerahasiaan informasi.

2.

Untuk menjamin bahwa informasi masih utuh dan belum pernah dimanipulasi.

3.

Untuk

mencegah

bahwa

pihak


yang

berkomunikasi

tidak

melakukan

penyangkalan.
Adapun tujuan lain dari kriptografi adalah antara lain :
a. Kerahasiaan
Layanan yang digunakan untuk menjaga isi dari informasi dari siapapun
kecuali yang memiliki otoritas atau kunci rahasia untuk membuka maupun
menghapus informasi yang telah disandi.
b. Integritas data
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 pensubstitusian data lain kedalam data yang
sebenarnya.

c. Authentication
Berhubungan dengan identifikasi atau pengenalan, baik secara kesatuan
sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi
harus saling memperkenalkan diri. Dimana informasi yang dikirimkan

Universitas Sumatera Utara

10

melalui kanal harus diauthentifikasi keaslian, isi datanya, waktu pengiriman
dan lain-lain.
d. Non-repudiasi
Usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman atau
terciptanya suatu informasi oleh yang mengirimkan atau membuat.

Kriptografi terdiri dari dua proses, yaitu enkripsi dan dekripsi. Enkripsi adalah
proses transformasi informasi menjadi bentuk lain sehingga isi pesan yang sebenarnya
tidak dapat dipahami, hal ini dimaksudkan agar informasi tetap terlindung dari pihak
yang tidak berhak menerima. Sedangkan dekripsi adalah proses kebalikan enkripsi,
yaitu transformasi data terenkripsi ke data bentuk semula [12]. Adapun proses

enkripsi-dekripsi secara umum dapat kita lihat pada gambar di bawah ini.

Kunci
enkripsi

plainteks

enkripsi

Kunci
deskripsi

chiperteks

deskripsi

plainteks

Gambar 2.2 Enkripsi dan Deskripsi

Secara matematis sederhana, proses enkripsi-dekripsi dapat dituliskan dengan
persamaan sebagai berikut:
Ee(m) = c

(2.1)

Dd(c) = m

(2.2)

Dimana :
m

: message / plainteks

c

: cipherteks

D

: fungsi Dekripsi

d

: kunci dekripsi

E

: fungsi Enkripsi

e

: kunci enkripsi

Universitas Sumatera Utara

11

Dari dua persamaan diatas dapat ditulis
(2.3)

Dd(Ee(m)) = m

Sehingga terlihat pesan yang telah tersandi dapat dikembalikan menjadi pesan semula.

2.1.4 Algoritma Kriptografi
Berdasarkan jenis kunci yang digunakan, dikenal dua buah algoritma kriptografi ,
yaitu:
Algoritma kriptografi simetris / private key algorithm. Algoritma kriptografi asimetris
/ public key algorithm.
Algoritma simetris atau sering disebut algoritma kriptografi konvensional
adalah algoritma yang menggunakan kunci yang sama untuk proses enkripsi dan
proses deskripsi. Algoritma kriptografi simetris dibagi menjadi dua kategori yaitu
algoritma aliran (Stream Ciphers) dan algoritma blok (Block Ciphers). Dimana pada
algoritma aliran, proses penyandiannya akan beriorientasi pada satu bit/byte data.
Sedangkan pada algoritma blok, proses penyandiannya berorientasi pada sekumpulan
bit/byte data (per blok) [13]. Algoritma kriprografi simetris adalah algoritma yang
menggunakan kunci enkripsi yang sama dengan kunci dekripsinya.

kunci

plainteks

enkripsi

chiperteks

deskripsi

plainteks

Gambar 2.3 Proses Enkripsi/Deskripsi Algoritma Simetris

Kriptografi asimetris adalah algoritma yang menggunakan kunci yang berbeda
untuk proses enkripsi dan deskripsi. Dimana kunci enkripsi dapat disebarkan kepada
umum dan dinamakan sebagai kunci publik (public key), sedangkan kunci deskripsi

Universitas Sumatera Utara

12

disimpan untuk digunakan sendiri dan dinamakan sebagai kunci pribadi (private key).
Oleh karena itu, kriptografi ini dikenal pula dengan nama kriptografi kunci publik
(public key cryptography).

Kunci pribadi

Kunci umum

plaintext

ciphertext
Enkripsi

plaintext
Deskripsi

Gambar 2.4 Proses Enkripsi/Deskripsi Algoritma Asimetris

2.2 Vigenére Cipher
Vigenére cipher mungkin adalah contoh terbaik dari cipher alphabet-majemuk 'manual'.
Algoritma ini dipublikasikan oleh diplomat, sekaligus seorang kriptologis perancis,
Blaise de Vigenere pada

abad 16,

meskipun Giovan Batista Belaso telah

menggambarkannya pertama kali pada tahun 1553 seperti ditulis di dalam bukunya La
Cifra del Sig. Vigenére cipher dipublikasikan pada tahun 1586, tetapi algoritma tersebut
baru dikenal luas 200 tahun kemudian yang oleh penemunya cipher tersebut
dinamakan vigenere cipher. Cipher ini berhasil dipecahkan oleh Babbage dan Kasiski
pada pertengahan abad 19. Vigenere cipher digunakan oleh tentara Konfiderasi
Confederate Army pada perang sipil Amerika American Civil war [9], [10].
Vigenére cipher sangat dikenal karena mudah dipahami dan diimplementasikan.
Cipher menggunakan bujur sangakar Vigenere untuk melakukan enkripsi seperti
ditunjukkan pada tabel 1. Kolom paling kiri dari bujursangkar menyatakan huruf-hurf
kunci, sedangkan baris paling atas menyatakan huruf- huruf plainteks. Setiap baris
dalam bujursangkar menyatakan huruf-huruf cipherteks yang diperoleh dengan
Vigenére cipher, yang mana jumlah pergesaran huruf plainteks ditentukan nilai numerik
huruf kunci tersebut ( yaitu, A = 0, B = 1, C-2,...,Z = 25) [5].

Tabel 2.1 Bujursangkar Vigenére [1]

Universitas Sumatera Utara

13

A
A A
B B
C C
D D
E E
F F
G G
H H
I I
J J
K K
L L
MM
N N
O O
P P
Q Q
R R
S S
T T
U U
V V
WW
X X
Y Y
Z Z

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

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

Bujur sangkar vigenere digunakan untuk memperoleh cipherteks dengan
menggunakan kunci yang sudah ditentukan. Jika panjang kunci lebih pendek dari pada
panjang plainteks, maka kunci diulang penggunaanya (sistem periodik). Bila panjang
kunci adalah m, maka periodenya dikatakan m. sebagai contoh, jika plainteks adalah
SAYA MAHASISWA dan kunci adalah RIA maka penggunaan kunci secara periodik
adalah sebagai berikut:
Plainteks

: SAYAMAHASISWA

Kunci

: RIARIARIARIAR

Universitas Sumatera Utara

7

Setiap huruf plainteks akan dienkripsi dengan setiap huruf kunci dibawahnya.
Untuk mengerjakan enkripsi dengan Vigenére cipher, lakukan pada bujursangkar
vigenere sebagai berikut: tarik garis vertikal dari huruf plainteks ke bawah, lalu tarik
garis mendatar dari huruf kunci ke kanan. Perpotongan dari kedua garis tersbut
menyatakan huruf cipherteksnya[13].
Tabel 2.2 Enkripsi huruf S dengan kunci R [1]
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
$
T
U
V
W
X
Y
Z

A B C D E F G H I J K L MN O P Q R S T U V WX Y Z
A B C D E F G H I J K L MN O P Q R S T U V WX Y Z
B C D E F G H I J K L MN O P Q R S T U V WX Y Z A
C D E F G H I J K L MN O P Q R S T U V WX Y Z A B
D E F G H I J K L MN O P Q R S T U V WX Y Z A B C
E F G H I J K L MN O P Q R S T U V WX Y Z A B C D
F G H I J K L MN O P Q R S T U V WX Y Z A B C D E
G H I J K L MN O P Q R S T U V WX Y Z A B C D E F
H I J K L MN O P Q R S T U V WX Y Z A B C D E F G
I J K L MN O P Q R S T U V WX Y Z A B C D E F G H
J K L MN O P Q R S T U V WX Y Z A B C D E F G H I
K L MN O P Q R S T U V WX Y Z A B C D E F G H I J
L MN O P Q R S T U V WX Y Z A B C D E F G H I J K
MN O P Q R S T U V WX Y Z A B C D E F G H I J K L
N O P Q R S T U V WX Y Z A B C D E F G H I J K L M
O P Q R S T U V WX Y Z A B C D E F G H I J K L MN
P Q R S T U V WX Y Z A B C D E F G H I J K L MN O
Q R S T U V WX Y Z A B C D E F G H I J K L MN O P
R S T U V WX Y Z A B C D E F G H I J K L MN O P Q
S T U V WX Y Z A B C D E F G H I J K L MN O P Q R
T U V WX Y Z A B C D E F G H I J K L MN O P Q R S
U V WX Y Z A B C D E F G H I J K L MN O P Q R S T
V WX Y Z A B C D E F G H I J K L MN O P Q R S T U
WX Y Z A B C D E F G H I J K L MN O P Q R S T U V
X Y Z A B C D E F G H I J K L MN O P Q R S T U V W
Y Z A B C D E F G H I J K L MN O P Q R S T U V WX
Z A B C D E F G H I J K L MN O P Q R S T U V WX Y
Amatilah bahwa huruf plainteks S dapat dienkripsikan menjadi J dan A,

dienkripsikan menjadi I,Y menjadi Y dan seterusnya.
Sehingga untuk contoh tersebut maka hasil enkripsiannya adalah sebagai
berikut:

Universitas Sumatera Utara

8

Plainteks

: SAYAMAHASISWA

Kunci

: RIARIARIARIAR

Cipherteks : JIYRUAYISZAWR
Dari hasil enkripsi diatas tersebut, maka proses dekripsinya untuk mencari plaintextnya
adalah:
Cipherteks : JIYRUAYISZAWR
Kunci

: RIARIARIARIAR

Untuk karakter yang pertama, huruf R maka akan dicari seluruh isi karakter yang
berada pada baris huruf R ke kanan, dimana terdapat karakter ciphertext huruf J, maka
dilihat pada pada kolom kunci yang menunjukkan bahwa huruf J tersebut berada pada
baris huruf S. Begitu juga dengan karakter yang ke dua huruf I, maka akan dicari
seluruh isi karakter yanga berada pada baris huruf I ke kanan, dimana terdapat
karakter ciphertext huruf I maka dilihat pada kolom kunci yang menunjukkan bahwa
huruf I tersebut berada pada kolom huruf A dan seterusnya. Demikianlah cara kerja
proses dekripsinya untuk mencari plainteks, sehingga didapatkan kembali lainteksnya
seperti dibawah ini :
Cipherteks : JIYRUAYISZAWR
Kunci

: RIARIARIARIAR

Plainteks : SAYAMAHASISWA

Kriptografi terdiri dari kriptografi klasik dan modern, salah satu kriptografi klasik
yaitu vigenére cipher. Vigenére cipher adalah salah satu jenis kriptografi klasik yang
pada dasarnya adalah melakukan substitusi cipher abjad majemuk (polyalphabetic
substitution), yaitu mengubah plaintext dengan kunci tertentu biasanya berupa sebuah
kata atau kalimat yang berulang sepanjang plaintext sehingga didapatkan ciphertext
[3]. Vigenére Cipher sangat dikenal karena mudah dipahami dan mudah juga untuk
diimplementasikan. Pada proses enkripsi Vigenére Cipher menggunakan bujursangkar
Vigenére. Setiap baris dalam bujur sangkar menyatakan huruf – huruf Cipherteks yang
diperoleh dengan Caesar Cipher.

Universitas Sumatera Utara

9

Bujursangkar Vigenére digunakan untuk memperoleh Ciphertext dengan
menggunakan kunci yang sudah ditentukan. Jika panjang kunci lebih pendek daripada
panjang plainteks, maka kunci diulang penggunaannya contohnya ;
Plainteks : SAYAMAHASISWA
Kunci

: RIARIARIARIAR

Cipherteks : JIYRUAYISZAWR
Proses sebaliknya (disebut dekripsi), dilakukan dengan mencari huruf teks
bersandi pada baris berjudul huruf dari kata kunci. Misalnya, pada contoh di atas,
untuk huruf pertama, kita mencari huruf J (huruf pertama teks tersandi) pada
baris R (huruf pertama pada kata kunci), yang terdapat pada kolom S, sehingga huruf
pertama adalah S. Lalu I terdapat pada baris I di kolom A, sehingga diketahui huruf
kedua

teks

terang

adalah A,

dan

seterusnya

hingga

didapat

perintah

"SAYAMAHASISWA".
Cipherteks : JIYRUAYISZAWR
Kunci

: RIARIARIARIAR

Plainteks : SAYAMAHASISWA

Enkripsi (penyandian) dengan sandi Vigenére juga dapat dituliskan secara
matematis, dengan menggunakan penjumlahan dan operasi modulus, yaitu:

Ci



(Pi

+

Ki)

mod

26

(2.4)

atau C = P + K dengan syarat jumlah dibawah 26 & - 26 kalau hasil jumlah di atas 26
dan dekripsi,
Pi ≡ (Ci - Ki) mod 26
(2.5)

Universitas Sumatera Utara

10

atau P = C - K dengan syarat hasilnya positif & + 26 kalau hasil pengurangan minus
Keterangan: C adalah huruf ke-i pada teks tersandi, P adalah huruf ke-i pada teks
terang, K adalah huruf ke-i pada kata kunci, dan mod adalah operasi modulus (sisa
pembagian).

Rumus enkripsi vigenére cipher :
Pi ≡ (Ci - Ki) mod 26
(2.6)
atau
Ci = ( Pi + Ki) – 26
(2.7)
dengan syarat hasil penjumlahan Pi dan Ki lebih dari 26

Rumus dekripsi vigenére cipher :
Pi ≡ (Ci - Ki) mod 26
(2.8)
atau
Pi= (Ci - Ki ) + 26 kalau hasil pengurangan Ci dengan Ki minus
Dimana:
Ci = nilai desimal karakter ciphertext ke-i
Pi = nilai desimal karakter plaintext ke-i
Ki = nilai desimal karakter kunci ke-i
Nilai desimal karakter:
A=0 B=1 C=2 ... Z=25

Universitas Sumatera Utara

11

Sebagai contoh, jika plaintext adalah SAYAMAHASISWA dan kunci
adalah RIA maka proses enkripsi yang terjadi adalah sebagai berikut:
Tabel 2.3 Proses Enkripsi
Plaintext: SAYAMAHASISWA
Key:

RIARIARIARIAR

Ciphertext: JIYRUAYISZAWR

Pada contoh diatas kata kunci RIA diulang sedemikian rupa hingga panjang
kunci sama dengan panjang plainteksnya. Jika dihitung dengan rumus enkripsi
vigenére plainteks huruf pertama S (yang memiliki nilai Pi=18) akan dilakukan
pergeseran dengan huruf R (yang memiliki Ki=17) maka prosesnya sebagai berikut:
Ci = (Pi + Ki ) mod 26
= (18 + 17 ) mod 26
=35 mod 26
= 926

Ci=9 maka huruf ciphertext dengan nilai 9 adalah C . Begitu seterusnya dilakukan
pergeseran sesuai dengan kunci pada setiap huruf hingga semua plainteks telah
terenkripsi menjadi ciphertext. Setelah semua huruf terenkripsi maka proses
dekripsinya dapat dihitung sebagai berikut:
Pi = (Ci – Ki ) + 26
= (9 – 17 ) + 26
= -8 + 26
=18

Universitas Sumatera Utara

12

Pi=18 maka huruf plainteks dengan nilai 18 adalah S. Begitu seterusnya dilakukan
pergeseran sesuai dengan kunci pada setiap huruf hingga semua ciphertext telah
terdekripsi menjadi plainteks.

2.3 Linear Feedback Shift Register (LFSR)
Menurut Stephen Herlambang dalam makalah “Studi dan Analisis Grain
Cipher”,tahun 2011 menyatakan bahwa LFSR adalah shift register yang bit
masukannya merupakan fungsi linear dari state sebelumnya. Satu-satunya fungsi
linear pada bit satuan exclusive-or XOR, oleh karena itu LFSR adalah shift register
yang bit masukannya dibangkitkan oleh exclusive-or (XOR) dari bit dari keseluruhan
nilai shift register.[14]
Inisial value dari LFSR dikenal dengan seed, dan karena operasi dari register
bersifat deterministik, aliran nilai yang dihasilkan oleh register akan sepenuhnya
ditentukan oleh state sekarang atau sebelumnya. Dengan begitu karena register
memiliki jumlah state yang terbatas pasti akan terbentuk siklus yang berulang, akan
tetapi LFSR yang memiliki fungsi umpan balik yang baik dapat memproduksi sekuens
bit yang tampak acak dan memiliki siklus yang sangat penting [3].
Linear Feedback Shift Register (LFSR) adalah suatu mekanisme untuk
menghasilkan sekuens bit biner. Register memiliki sebarisan sel yang ditentukan oleh
vektor inisialisasi yakni, biasanya, menjadi kunci rahasia. Tingkah laku register diatur
oleh sebuah counter (clock). Pada setiap saat isi sel dari register digeser (shift) ke
kanan sejauh satu posisi, dan hasil operasi XOR terhadap subset dari isi sel
ditempatkan pada sel paling kiri. Satu bit dari output biasanya diturunkan selama
prosedur

ini. Pada sebuah algoritma stream cipher berbasis LFSR dengan

menggunakan n stages maka jumlah variasi kemungkinan kunci input adalah 2n-1.
Karena fungsi feedback yang digunakan adalah polinomial karakteristik yang primitif,
maka dapat diketahui periode maksismumnya adalah 2n-1.Penggunaan LFSR ini
sendiri tidak menjamin tersedianya tingkat keamanan yang tinggi. Beberapa skema
lainnya telah diusulkan untuk meningkatkan keamanan dari LFSR ini[11].

Universitas Sumatera Utara

13

Untuk memperoleh LFSR dengan periode maksimal, fungsi feedback yang
digunakan harus polinomial primitive modulo2. Contoh polinomial primitif yaitu x4 +
x + 1.Degree (derajat) polinomial adalah panjang dari shift register. Suatu polinomial
primitif dengan degree n adalah polinomial irreducible yang membagi xm + 1, dengan
m = 2n – 1, tetapi tidak membagi
xd + 1 untuk setiap d yang membagi 2n – 1.
Perbedaan LFSR dengan NLFSR. Berikut ini adalah beberapa perbedaan
antara Linear Feedback Shift Register dengan non Linear Feedback Shift Register:
1. Fungsi feedback dari NLFSR tidak dapat ditulis dalam bentuk umum seperti
pada LFSR.
2. Fungsi feedback dari LFSR sering dinyatakan dalam bentuk persamaan
polinomial khusus (characteristic polynomial), sedangkan fungsi feedback
pada NLFSR tidak dapat direpresentasikan dalam bentuk fungsi polinomial
khusus karena lebih kompleks.
3. Pada LFSR panjang periode maksimal yang dapat dicapai adalah 2n-1,
sedangkan pada NLFSR dapat mencapai 2n untuk n variabel.
4. Dalam NLFSR, operasi yang digunakan tidak hanya penjumlahan seperti pada
LFSR, tetapi juga perkalian.
5. Pada LFSR, kompleksitas linier yang diperoleh maksimal adalah n, sedangkan
pada NLFSR dibatasi hingga 2n, sehingga kompleksitas liniernya lebih besar.
6. Karena tingkat kompleksitas liniernya lebih tinggi maka sifat konfusi pada
NLFSR lebih baik daripada LFSR, yang merupakan salah satu faktor penguat
NLFSR terhadap upaya kriptanalisis.

X

0

0

0

1

0

1

1

0

0

1

1

0

1

0

1

1

1

Gambar 2.5 Sebuah LFSR 17-Bit

Universitas Sumatera Utara

14

Linear Feedback Shift Register (LFSR) sering digunakan oleh Stream cipher
sebagai pembangkit keystream.
Register geser umpan-balik atau Feedback Shift Register (FSR) terdiri dari dua
bagian:
1. Register Geser, yaitu barisan bit-bit yang panjangnya n- bit. Register geser
disebut juga sebagai register geser n bit.
2. Fungsi Umpan-balik, yaitu fungsi yang menerima masukan dari register geser
dan mengembalikan nilai fungsi ke register geser.

Register Geser

bn

bn-1

…...

b4

b3

b2

b1

Fungsi umpan-balik

Gambar 2.6 Bagian-bagian FSR

Tiap kali sebuah bit dibutuhkan, semua bit didalam register digeser 1 bit ke
kanan. Bit paling kiri (bn) dihitung sebagai fungsi bit-bit lain didalam register tersebut.
Keluaran dari register adalah 1 bit (yaitu bit b1 yang tergeser).Periode register geser
adalah panjang barisan keluaran sebelum ia berulang kembali. Suatu shift register
cascade merupakan sebuah set dari LFSR yang dihubungkan bersama-sama dengan
cara tertentu sedemikian hingga perlakuan dari LFSR sebelumnya dalam bentuk yang
menyrupai air terjun[10] [11]. Sifat dan tingkah laku yang saling tergantung ini
biasanya ditempuh dengan menggunakan satu LFSR untuk mengontrol LFSR lainnya.
LFSR yang digunakan dapat terbagi 2 jenis, yaitu :
1.

LFSR yang selalu aktif.

2.

LFSR yang akan selalu aktif kalau di –clock oleh LFSR lainnya.

Universitas Sumatera Utara

15

Beberapa jenis generator yang aktif didalam LFSR adalah :
1.

Geffe Generator. Generator ini menggunakan tiga atau lebih LFSR. Keluarankeluaran dari generator ini dikombinasikan secara nonliniear

n-to-1
Multiplexer

LFSR-n+1

Bit(t)

LFSR-3

Select

LFSR-2

LFSR-1

Gambar 2.7 Sketsa Geffe Generator
2.

Jennings Generator. Generator ini menggunakan sebuah multiplexer untuk
mengkombinasikan dua buah LFSR. Multiplexer dikontrol oleh LFSR-1, memilih
1 bit dari LFSR-2 untuk setiap output bit.

3.

Threshold Generator.

4.

Multispeed-Inner-Product Generator

5.

Gollmann Cascade Generator

Generator yang akan selalu aktif setelah di-clock adalah ;
1.

Beth-Piper Stop – and – Go Generator

2.

Alternating Stop – and – Go Generator

3.

Bilateral Stop – and – Go Generator

4.

Self – Decimated Generators
Register Geser

bn

bn-1

…...

b4

b3

b2

b1

Bit keluaran

Gambar 2.8 LFSR sederhana

Universitas Sumatera Utara

16

b4

b3

b2

b1
Bit Keluaran

Gambar 2.9 LFSR 4-bit

Gambar 2.9 adalah contoh LFSR 4-bit, yang dalam hal ini fungsi umpan-balik
meng-XOR-kan b4 dan menyimpan hasilnya di b4.

Register geser dengan umpan balik linier, Prosesnya adalah:
1.

S1 sampai S4 diisi oleh bit-bit yang sudah ditentukan

2.

Tahap pertama, S1 dan S4 akan di XOR- kan

3.

S1-S4 digeser ke kanan sepanjang satu bit

4.

Bit pertama akan dijadikan output

5.

Bit hasil XOR antar S1 dan S4 (sebelum digeser) akan dimasukkan ke S4

Contoh:
Pergeseran sebanyak 20 kali, S4 akan mengisi sampai S1 dengan nilai 1110
-----------------------------------| Tahap ke- | S4 S3 S2 S1 | Output |
-----------------------------------|0
|1 1 10 |
| 0 | |
|1
|1 1 11 |
| 1 | | |
|2
|0 1 1 1 |
| 1 | | | |
|3
|1 0 1 1 |
| 1 | | | | |
|4
|0 1 0 1 |
| 1 | | | | | |
|5
|1 0 1 0 |
| 0 | | | | | | |
|6
|1 1 0 0 |
| ||||||
-----------------------------> 0 | | | | | | | Setelah 14 kali tahap
|7
|1 1 1 0 |
| | | | | | | pergeseran maka
-----------------------------> 0 | | | | | | | periodenya akan
|8
|1 1 1 1 |
| | | | | | | berulang.
-----------------------------> 1 | | | | | | |
|9
|0 11 1 |
| ||||||
-----------------------------> 1 | | | | | | |
| 10
|1 0 1 1 |
| ||||||
-----------------------------> 1 | | | | | | |
| 11
|0 1 0 1 |
| ||||||
-----------------------------> 1 | | | | | | |
| 12
|1 0 1 0 |
| ||||||
-----------------------------> 0 | | | | | | |
| 13
|1 1 0 1 |
| ||||||
-----------------------------> 1 | | | | | | |
| 14
|0 1 1 0 |
| ||||||
-----------------------------> 0 | | | | | | |
| 15
| 0 0 1 1 |

Dokumen yang terkait

1. INTRODUCTION 1.1 The Background of the Study - The Analysis Of Conflicts In The Novel “For One More Day” By Mitch Albom

0 0 5

BAB 2 LANDASAN TEORI 2.1 Sejarah Analisis Jalur - Penerapan Analisis Jalur Dalam Menentukan Faktor Yang Mempengaruhi Tingkat Kemiskinan Di Provinsi Sumatera Utara Tahun 2010

0 0 22

BAB 1 PENDAHULUAN 1.1 Latar Belakang - Penerapan Analisis Jalur Dalam Menentukan Faktor Yang Mempengaruhi Tingkat Kemiskinan Di Provinsi Sumatera Utara Tahun 2010

0 0 8

BAB II TINJAUAN PUSTAKA 2.1. Kinerja Karyawan 2.1.1.Pengertian Kinerja Karyawan - Pengaruh Stress Kerja dan Motivasi Kerja terhadap Kinerja Karyawan PT. SMART Tbk

0 12 22

BAB II LANDASAN TEORI A. Penyesuaian Perkawinan 1. Defenisi Penyesuaian Perkawinan - Pengaruh Dukungan Sosial Keluarga terhadap Penyesuaian Perkawinan pada Pasangan Beda Etnis (Batak Toba – Tionghoa)

0 2 24

BAB I PENDAHULUAN A. Latar Belakang Masalah - Pengaruh Dukungan Sosial Keluarga terhadap Penyesuaian Perkawinan pada Pasangan Beda Etnis (Batak Toba – Tionghoa)

0 0 16

Pengaruh Dukungan Sosial Keluarga terhadap Penyesuaian Perkawinan pada Pasangan Beda Etnis (Batak Toba – Tionghoa)

0 0 13

Perbandingan Penyisipan Pesan ke dalam File Citra True color dengan Algoritma End of File (EOF) dan Least Significant Bit (LSB).

0 0 16

BAB 2 LANDASAN TEORI 2.1 Citra - Perbandingan Penyisipan Pesan ke dalam File Citra True color dengan Algoritma End of File (EOF) dan Least Significant Bit (LSB).

1 4 18

Perbandingan Penyisipan Pesan ke dalam File Citra True color dengan Algoritma End of File (EOF) dan Least Significant Bit (LSB).

0 0 13