algoritma dan implementasi kriptografi video streaming menggunakan algoritma video encryption...

51
ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA) SKRIPSI KONSENTRASI TEKNIK INFORMATIKA DAN KOMPUTER Diajukan untuk memenuhi sebagian persyaratan Memperoleh gelar Sarjana Teknik Disusun oleh: KARINA SEFTIA DEWANTI NIM. 0810633056 - 63 KEMENTERIAN PENDIDIKAN NASIONAL UNIVERSITAS BRAWIJAYA FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO

Upload: safril-wahyu-pamungkas

Post on 03-Jan-2016

603 views

Category:

Documents


8 download

DESCRIPTION

ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA)

TRANSCRIPT

Page 1: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAM-

ING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGO-

RITHM (VEA)

SKRIPSI

KONSENTRASI TEKNIK INFORMATIKA DAN KOMPUTER

Diajukan untuk memenuhi sebagian persyaratan

Memperoleh gelar Sarjana Teknik

Disusun oleh:

KARINA SEFTIA DEWANTI

NIM. 0810633056 - 63

KEMENTERIAN PENDIDIKAN NASIONAL

UNIVERSITAS BRAWIJAYA

FAKULTAS TEKNIK

JURUSAN TEKNIK ELEKTRO

MALANG

2012

Page 2: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Keamanan data multimedia sangat penting dalam bisnis komersil maupun

tidak komersil. Contohnya, pada aplikasi video on demand, hanya orang yang

membayar yang dapat menonton video tersebut. Selain itu juga pada aplikasi video

conferencing, hanya orang yang berkepentingan saja yang dapat ikut serta dalam

konferensi tersebut dan mendapatkan datanya.

Salah satu cara untuk mengamankan aplikasi distributed multimedia seperti

pada contoh-contoh di atas adalah dengan mengenkripsinya menggunakan algoritma

kriptografi seperti DES (Data Encryption Standard) atau IDEA (International Data

Encryption Algorithm). Masalahnya, algoritma kriptografi tersebut memiliki komputasi

yang rumit. Implementasi dari algoritma kriptografi ini tidak cukup cepat untuk

memproses sejumlah besar data yang dihasilkan oleh aplikasi multimedia. Dua hal yang

dapat diperhatikan dari enkripsi data multimedia adalah: pertama, ukuran data

multimedia biasanya sangat besar. Sebagai contoh, ukuran data dari video MPEG-1

berdurasi dua jam kira-kira 1 GB. Kedua, data multimedia harus diproses dengan delay

sekecil mungkin.

Banyak algoritma enkripsi video yang telah dibangun sampai saat ini, tetapi

algoritma yang umum digunakan terutama untuk aplikasi video streaming adalah

algoritma Video Encryption, atau sering disebut juga VEA (Video Encryption

Algorithm). Pada algoritma ini byte-byte pada frame video, di-XOR-kan dengan suatu

byte kunci tertentu yang telah didefinisikan. Hasil operasi XOR tersebut kemudian

diterapkan pada file video, sehingga video yang dihasilkan memiliki kualitas gambar

tidak sempurna. Video hasil enkripsi dengan VEA itulah yang nantinya diterima oleh

user yang tidak berhak/belum memasukkan kunci tertentu yang telah didefinisikan.

Alasan banyaknya penggunaan algoritma ini adalah karena tingkat keamanannya yang

cukup memuaskan, komputasi yang ringan, dan cocok diimplementasikan di

lingkungan video streaming karena algoritmanya yang dapat berbasis stream cipher

maupun block cipher, tergantung kebutuhan saat streaming video tersebut.

Page 3: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

2

1.2 Rumusan Masalah

Berdasarkan latar belakang yang telah dipaparkan secara jelas diatas, maka rumusan

masalah ditekankan pada:

1. Bagaimana mengenkripsi dan mendekripsi video streaming MPEG dengan Video

Encryption Algorithm (VEA).

2. Bagaimana mencari macroblock pada file MPEG yang akan dienkripsi.

3. Bagaimana hasil pengujian dari video streaming setelah proses enkripsi dan

dekripsi.

1.3 Batasan Masalah

Beberapa hal yang menjadi batasan masalah dalam pembuatan program ini antara

lain:

1. Tidak mempelajari maupun membuat encoder dan decoder (player) video.

2. File format video yang digunakan hanya Mpeg-1, Mpeg-2, Mpeg-4.

3. Data yang dienkrispi adalah data video tanpa audio.

4. Bahasa pemograman yang digunakan untuk pembuatan aplikasi ini adalah C#.

5. Aplikasi yang digunakan untuk membuat dan menyunting listing program adalah

Microsoft Vsual Studio 2008 versi 9.0.21022.8 RTM dan .NET Framework versi

3.5 SP1.

6. Menggunakan library Aforge untuk membuat proses streaming dan player.

7. Komunikasi antar komputer menggunakan protokol TCP/IP.

8. Tipe streaming yang digunakan adalah peer to peer.

1.4 Tujuan

Tujuan dari penyusunan skripsi ini adalah merancang dan mengimplementasikan

aplikasi untuk kriptografi pada video streaming MPEG menggunakan algoritma VEA.

1.5 Manfaat

Manfaat yang diharapkan adalah aplikasi yang dibuat dalam skripsi ini dapat

mengamankan video streaming MPEG menggunakan algoritma VEA.

Page 4: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

3

1.6 Sistematika Penulisan

Sistematika penulisan laporan skripsi ini adalah sebagai berikut :

BAB I Pendahuluan

Dalam bab ini akan dijelaskan latar belakang, rumusan masalah, batasan masalah,

tujuan dan manfaat, metode penelitian dan sistematika penulisan laporan tugas

akhir.

BAB II Dasar Teori

Dalam bab ini akan dibahas dan dijelaskan mengenai dasar teoritisyang menjadi

landasan dan mendukung pelaksanaan penulisan tugas akhir.

BAB III Metodologi

Dalam bab ini akan membahas tentang metode yang dipakai penulis untuk

menyelesaikan laporan tugas akhir.

BAB IV Perancangan dan Implementasi

Dalam bab ini menjelaskan langkah - langkah perancangan dan implementasi dari

video streaming MPEG menggunakan algoritmaVEA.

BAB V Pengujian

Dalam bab ini akan disampaikan hasil pengujian dari aplikasi yang telah dibuat.

BAB VI Kesimpulan dan Saran

Dalam bab ini berisi kesimpulan dan saran.

Page 5: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

4

Page 6: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

5

BAB II

TINJAUAN PUSTAKA

2.1 Video

Video adalah gabungan dari banyak citra digital yang disertai suara. Citra –citra

digital diperlihatkan sesuai urutan dengan jangka waktu tertentu sehingga gambar tampak

bergerak. Untuk dapat mengolah video, maka harus mendapatkan data warna pada frame –

frame yang ada pada video. Karena frame – frame tersebut berupa sebuah citra digital,

maka dalam pengolahan video tidak dapat telepas dari pengolahan citra digital dimana

sesuai dengan algoritma sesuai format video yang dipakai seprti AVI, MPEG.

2.1.1 MPEG

MPEG adalah singkatan dari Moving Picture Experts Group merupakan format

kompresi yang didirikan oleh group yang bernama Motion Picture Editors Guild (MPEG)

yang mengeluarkan standar tahun 1988, yang terbentuk oleh 350 perusahaan dan

organisasi. MPEG adalah metode standar yang digunakan dalam pengkodean citra

bergerak. MPEG menetapkan standar yaitu codec. Codec MPEG menggunakan lossy

compression pada data audio video. Bagian motion (gerak) video pada standard MPEG-1

didapat dari standard Joint Picture Experts Group (JPEG) untuk lossy compression gambar

diam (foto). MPEG memliki format standar kompresi sebagai berikut :

a) MPEG-1 adalah standard pertama untuk kompresi audio dan video. merupakan standard

encode VideoCD dengan resolusi maksimal hanya 352 x 288 pixel, bit-rate tidak dapat

dirubah dan kualitas gambar yang kurang baik.Ini juga termasuk format audio MP3.

MPEG-1 digunakan pada format Video CD. Kualitas output dan bit-rate lebih kecil

daripada VCR.

b) MPEG-2 adalah seri standard transport , audio dan video untuk kualitas siaran televisi.

MPEG-2 sama dengan MPEG-1, tetapi juga menyediakan dukungan untuk interlaced

video (seperti pada siaran TV) dan juga mendukung Transport Stream yang dibuat untuk

mentranfer video dan audio digital pada media dan digunakan untuk broadcasting.

Standard MPEG-2 saat ini telah ditingkat menjadi standard terbaru untuk transmisi

HDTV. Saat ini digunakan untuk SVCD, DVD dengan tingkat bit yang dapat diubah dan

Page 7: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

6

memiliki kualitas gambar yang luar biasa. DV Video merupakan subformat khusus dari

MPEG-2 dengan tingkat bit yang tetap. Format ini sangat cocok digunakan untuk video

editing.

c) MPEG-3 dikembangkan untuk high-definiton television (HDTV), tetapi kemudian

ditinggalkan karena dianggap MPEG 2 memadai.

d) MPEG-4 merupakan pengembangan MPEG 1 mendukung Digital Rights Management

(DRM) dan bit-rate encoding rendah, serta menggunakan codec video yang disebut

H.264 yang dipandang lebih effisien. MPEG-4 berbasis MPEG-1 dan MPEG-2, tetapi

ada tambahan fitur seperti dukungan VRML untuk rendering 3D, files komposit

berorientasi objek (termasuk audio, video dan virtual reality modelling), dukungan untuk

DRM dan berbagai macam interaktivitas . Kontainer untuk kandungan MPEG-4 adalah

MP4.

e) MPEG-7 adalah sistem formal untuk mendeskripsikan isi multimedia.

f) MPEG-21 merupakan standard multimedia untuk masa depan

g) MPEG-A standar ini menyediakan aplikasi-spesifik format dengan mengintegrasikan

beberapa teknologi MPEG;

h) MPEG-B Kumpulan standar Sistem spesifik

i) MPEG-C Kumpulan standar Video spesifik

j) MPEG-D Kumpulan standar khusus Audio

k) MPEG-E Sebuah standar (M3W) dukungan penyediaan untuk men-download dan

eksekusi aplikasi multimedia

l) MPEG-V standar untuk pertukaran dengan dunia virtual

m) MPEG-M Sebuah standar (MXM) untuk kemasan dan usabilitas dari MPEG teknologi

n) MPEG-U standar untuk kaya-media user interface

o) MPEG-H Sebuah standar (HEVC) memberikan kinerja video kompresi meningkat

secara signifikan.

Page 8: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

7

2.1.2 Struktur MPEG

Gambar 2.1 Struktur File Format MPEG

Secara umum file format video MPEG tersusun dari kumpulan - kumpulan

sequensial. Dalam setiap Sequensial didalamnya terdapat bagian - bagian lagi misal

informasi mengenai resolusi, bitstream, dan GOP seperti Gambar 2.1. Setiap Sequensial

bisa mempunyai jumlah 1 atau lebih GOP (group of Picture). Di dalam GOP tersusun

dari informasi (parameter dari header) mengenai gambar (picture/frame) dan data (isi

dalam parameter dari header) dari gambar, dimana gambar bisa berjumlah 1 atau lebih.

Di dalam picture terdapat informasi – informasi mengenai tipe gambar, parameter

DCT/IDCT dan data gambar itu sendiri atau disebut slice.

Sebuah gambar (picture/frame) dapat bertipe I (intracoded), P (predicted), atau

B (bidirectional – predicted). Slice tersusun dari informasi - informasi mengenai

macroblock dan datanya, dimana macroblock bisa berjumlah 1 atau lebih. Macroblock

merupakan basic coding unit atau tersusun dari bagian terkecil dari Algoritma MPEG

yaitu blok. Macroblock adalah sebuah 16 x 16 pixel array pada sebuah frame dan berisi

Page 9: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

8

informasi mengenai komponen Y, Cr, Cb beserta resolusinya. Macroblock dari

gambar/frame I diencode berbeda dengan macroblock dari gambar/frame B dan P,

karena gambar/frame B dan P dibutuhkan dua buah motion vector : forward prediction

vector dan backward prediction vector. Macroblock dari tiap-tiap gambar/frame pada

akhirnya akan dibagi-bagi menjadi 4 buah 8 x 8 blok luminance (Y block), 2 buah 8 x 8

blok chrominance (Cr block dan Cb block). Blok-blok Y, Cr, dan Cb yang terbentuk

tersebut akan diproses ke dalam DCT (Discrete Cosine Transformation), kuantisasi,

dan Huffman entropy coding.

2.1.3 Header MPEG

Setiap stream header pasti dimulai dengan 32 bit Start Code, dimana untuk kode

00-B8 merupakan video stream start code dan untuk B9-FF adalah stream-id.

byte 0 byte 1 byte 2 byte 30000 0000 0000 0000 0000 0001 Video stream start

code / Stream IDStart code prefix

Tabel 2.1 Struktur Start Code Header MPEG

Start code used for

0x00 Picture

0x01 - 0xAF Slice

0xB0 Reserved

0xB1 Reserved

0xB2 user data

0xB3 Sequence header

0xB4 sequence error

0xB5 Extension

0xB6 Reserved

0xB7 sequence end

0xB8 Group of Pictures

Page 10: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

9

Tabel 2.2 Start Code

Stream ID used for

0xB9 Program end (terminates a program stream)0xBA Pack header0xBB System Header0xBC Program Stream Map0xBD Private stream 10xBE Padding stream0xBF Private stream 20xC0 - 0xDF MPEG-1 or MPEG-2 audio stream0xE0 - 0xEF MPEG-1 or MPEG-2 video stream0xF0 ECM Stream0xF1 EMM Stream

0xF2ITU-T Rec. H.222.0 | ISO/IEC 13818-1 Annex A or ISO/IEC 13818-6_DSMCC_stream

0xF3 ISO/IEC_13522_stream0xF4 ITU-T Rec. H.222.1 type A0xF5 ITU-T Rec. H.222.1 type B0xF6 ITU-T Rec. H.222.1 type C0xF7 ITU-T Rec. H.222.1 type D0xF8 ITU-T Rec. H.222.1 type E0xF9 ancillary_stream0xFA - 0xFE Reserved0xFF Program Stream Directory

Tabel 2.3 Stream ID

2.2 Video Streaming

Sampai beberapa saat yang lalu, video dikirim dengan metode “download and

play” dimana seluruh video di download melalui network ke komputer client yang

meminta video tersebut dan kemudian video tersebut disimpan di harddisk client.

Setelah seluruh video tersimpan di harddisk client, barulah video tersebut dapat

dijalankan. Keuntungan dari metode download ini adalah video dengan kualitas tinggi

dapat dikirim. Kerugiannya adalah bandwidth network yang dibutuhkan untuk

Page 11: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

10

mengirimkan video sangat tinggi, pengguna harus menunggu dalam jangka waktu yang

lama untk men-download sebuah video dan juga sejumlah besar tempat penyimpanan di

harddisk sangat dibutuhkan untuk menyimpan video yang ukurannya relatif cukup

besar. Gambar 2.2 adalah ilustrasi dari metode “download and play”

Untuk mengatasi masalah ini, sebuah teknologi baru dibangun untuk mengirim

video digital yang telah di kompresi ke sebuah jaringan network yang disebut “video

streaming”. Video streaming menggunakan teknologi kompresi video dan juga network

protocol yang dibuat khusus untuk real-time media streaming. Protokol-protokol baru ini

dapat mengsinkronisasikan audio dan video untuk dimainkan di desktop client sebelum

seluruh file video selesai diterima. Keuntungan yang didapat adalah client dapat

memainkan video lebih cepat dan tidak membutuhkan jumlah space harddisk yang besar.

Keuntungan lainnya adalah bandwidth network yang dibutuhkan untuk mengirim video

sangat rendah serta video yang di-streaming juga dapat dimainkan di web browser.

Gambar 2.3 menunjukkan model dari video streaming.

Gambar 2.2 Model Download

Ketika file audio atau video berada dalam proses streaming, maka sebuah tempat

penampung kecil yang biasa disebut juga buffer akan terbentuk di computer pengguna, dan

data dari audio atau video yang diminta pengguna akan ditransfer ke buffer tersebut. Ketika

buffer sudah penuh, file streaming tersebut akan mulai dijalankan. Untuk menjalankan file

streaming dibutuhkan informasi yang tersimpan di dalam buffer yang mana informasi

tersebut akan teus bertambah seiring berjalannya file streaming. Selama data atau informasi

Page 12: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

11

tetap dapat terkirim ketika file streaming tersebut dijalankan, file streaming ini akan terus

berjalan dengan lancar.

Gambar 2.3 Model Streaming

Biasanya terdapat delay waktu antara 10 sampai 30 detik sebelum file audio atau

video tersebut dimainkan. Streaming file biasanya merupakan bandwidth yang lebih sedikit

dibandingkan men-download file. Besar tidaknya bandwith yang dibutuhkan juga

tergantung dari jenis video yang akan di-streaming. Tabel 2.4 menunjukkan daftar jenis

video beserta keterangan bandwidth yang dibutuhkan untuk streaming.

FormatContent

TypeQuality

CPU

Requiremen

t

Bandwidth

Requiremen

t

Cinepak AVI

QuickTime

Medium Low High

MPEG-1 MPEG High High High

H.261 AVI

RTP

Low Medium Medium

H.263 QuickTime

RTP

AVI

Medium Medium Low

JPEG QuickTime

RTP

AVI

High High High

Indeo QuickTime

AVI

Medium Medium Medium

Page 13: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

12

Tabel 2.4 Macam - Macam Format Video

Dapat dilihat dari Table 2.4, high quality dan high bandwidth format biasa digunkan

untuk CD-ROM. H.261 dan H.263 biasa digunkan untuk aplikasi video conferencing.

Biasanya video dengan high quality akan memilki ukuran file yang besar, serta

membutuhkan proses dan bandwidth yang cukup besar pula. Untuk mendapatkan tampilan

video yang bagus, maka jumlah frame yang ditampilkan per waktu (frame rate) harus

sebesar mungkin. Biasanya video streaming menggunakan sekitar 30 frame rate (30 frame

per detik)

2.3 Kriptografi

Kriptografi (cryptography) merupakan ilmu dan seni penyimpanan pesan, data, atau

informasi secara aman. Kriptografi (Cryptography) berasal dari bahasa Yunani yaitu dari

kata cryptós yang artinya secret (yang tersembunyi) dan gráphein yang artinya writting

(tulisan). Jadi, kriptografi berarti secret writting (tulisan rahasia). Kriptografi merupakan

bagian dari suatu cabang ilmu matematika yang disebut Cryptology yang berhubungan

dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data,

serta autentikasi data. Kriptografi bertujuan menjaga kerahasiaan informasi yang

terkandung dalam data sehingga informasi tersebut tidak dapat diketahui oleh pihak yang

tidak sah.Tetapi tidak semua aspek keamanan informasi ditangani oleh kriptografi.

2.3.1 Algoritma Kriptografi

Secara sederhana proses kriptografidapat digambarkan sebagai berikut :

Gambar 2.4 Ilustrasi dari proses kriptografi sederhana

Page 14: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

13

Dalam menjaga kerahasiaan data, kriptografi mentransformasikan data jelas

(plaintext) ke dalam bentuk data sandi (ciphertext) yang tidak dapat dikenali. Ciphertext

inilah yang kemudian dikirimkan oleh pengirim (sender) kepada penerima (receiver).

Setelah sampai di penerima, ciphertext tersebut ditranformasikan kembali ke dalam

bentuk plaintext agar dapat dikenali. Proses tranformasi dari plaintext menjadi

ciphertext disebut proses Encipherment atau enkripsi (encryption), sedangkan proses

mentransformasikan kembali ciphertext menjadi plaintext disebut proses dekripsi

(decryption). Kunci (key) adalah parameter yang digunakan untuk transformasi

enciphering dan deciphering.

Secara umum operasi enkripsi dan dekripsi dapat diterangkan secara matematis

sebagai berikut :

proses dekripsi ditulis dalam Persamaan 2.1 :

E (P) = C (2.1)

Dimana,

E : Enkripsi

P : Pesan (plaintext) yang akan diamankan

C : Chipertext

Sedangkan proses dekripsi ditulis dalam Persamaan 2.2 :

D (C) = P (2.2)

Dimana,

D : Dekripsi

C : Chipertext yang akan dirubah menjadi plaintext

P : Pesan (plaintext) yang telah dibuka

Karena proses enkripsi dan dekripsi mengembalikan pesan ke pesan awal, maka Per-

samaan 2.3 harus benar,

D (E(P)) = P (2.3)

Page 15: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

Enkripsi DekripsiPlaintext PlaintextCiphertext

Kunci Pribadi Kunci Pribadi

14

Pada saat proses enkripsi kita menyandikan pesan P dengan suatu kunci K lalu

dihasilkan pesan C. Sedangkan pada proses dekripsi, pesan C tersebut diuraikan dengan

menggunakan kunci K sehingga dihasilkan pesan P yang sama seperti pesan sebelum-

nya.

Contoh dari enkripsi dan dekripsi pada data teks :

Plainteks : “coba lah tulis”

Cipherteks :” ”

Hasil dekripsi terhadap cipherteks di atas : “coba lah tulis”

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. Tidak-

lah menjadi masalah apabila seseorang mengetahui algoritma yang digunakan. Selama

tidak mengetahui kunci yang digunakan maka tetap tidak dapat membaca pesan.

Berdasarkan kunci yang dipakai, algoritma kriptografi dapat dibedakan atas

dua golongan yaitu kriptografi kunci Simetri dan kriptografi kunci asimetri.

2.3.2 Kriptografi Kunci Simetri

Algoritma kriptografi simeteris atau disebut juga algoritma kriptografi konven-

sioanl adalah algoritma yang menggunakan kunci untuk proses enkripsi sama dengan

kunci untuk proses dekripsi, oleh karena itulah dinamakan kriptografi simetri. Kea-

manan sistem kriptografi simetri terletak pada kerahasiaan kuncinya. Ada banyak algo-

ritma kriptografi modern yang termasuk ke dalam sistem kriptografi simetri, di-

antaranya adalah DES (Data Encryption Standard), Blowfish, Twofish, Triple-DES,

IDEA, Serpent, AES (Advanced Encryption Standard).

Page 16: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

15

Gambar 2.5 Proses Enkripsi/Dekripsi Algoritma Kriptografi Simetris

Algoritma kriptografi (cipher) simetri dapat dikelompokkan menjadi dua kate-

gori (Lung dan Munir, 2005), yaitu stream cipher (Cipher Aliran) dan block cipher

(Cipher Blok).

2.3.2.1 Stream Cipher (Cipher Aliran)

Cipher Aliran beroperasi pada plainteks/cipherteks dalam proses penyandian-

nya berorientasi pada satu bit data (bit tunggal), yang dalam hal ini rangkaian bit di-

enkripsikan/didekripsikan bit per bit. Cipher aliran mengenkripsikan plainteks menjadi

chiperteks bit per bit (1 bit setiap kali transformasi). Proses enkripsi menggunakan ci-

pher aliran dapat ditulis dalam Persamaan 2.4 :

ci = piki (2.4)

yang dalam hal ini,

pi : bit plainteks

ki: bit kunci

ci : bit cipherteks

Dan proses dekripsi dapat ditulis dalam Persamaan 2.5 :

pi = cik (2.5)

Contoh sederhana dari penerapan stream cipher pada plaintext.

Mode enkripsi

11001100 Plaintext

(+) 01101100 Keystream

10100000 Ciphertext

Page 17: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

16

Mode dekripsi

10100000 Ciphertext

(+) 01101100 Keystream

11001100 Plaintext

Stream chipper cocok digunakan untuk mengenkripsi aliran data secara terus –

menerus melalui saluran komunikasi. Contohnya seperti pengiriman data antar dua

computer dan video streaming. Jika bit ciphertext yang diterima terdapat kesalahan.

Maka hal ini hanya mengakibatkan satu bit yang salah ketika di dekripsi, karena tiap bit

plaintext hanya ditentukan dari satu bit chipertext. Kondisi ini tidak benar jika menggu-

nakan cipher blok. Jika terdapat satu bit yang salah maka akan merambat kepada bit –

bit lain pada blok bit tersebut.

2.3.2.2 Block Cipher (Cipher Blok)

Algoritma kriptografi beroperasi pada plainteks/cipherteks dalam proses

penyandiannya berorientasi pada sekumpulan bit atau byte data (per blok), yang dalam

hal ini rangkaian bit dbagi menjadi blok-blok bit yang panjangnya sudah ditentukan

sebelumnya. Contoh algoritma kunci simetris yang terkenal adalah Advanced

Encryption Standard (AES).

Pada cipherblok, rangkaian bit-bit plainteks dibagi menjadi blok-blok bit den-

gan panjang sama, biasanya 64 bit (tapi adakalanya lebih). Algoritma enkripsi meng-

hasilkan blok cipherteks yang – pada kebanyakan sistem kriptografi simetri – beruku-

ran sama dengan blok plainteks.

Dengan blokcipher, blok plainteks yang sama akan dienkripsi menjadi blok ci-

pherteks yang sama bila digunakan kunci yang sama pula. Ini berbeda dengan cipher

aliran dimana bit-bit plainteks yang sama akan dienkripsi menjadi bit-bit cipherteks

yang berbeda setiap kali dienkripsi.

Misalkan blok plainteks (P) yang berukuran m bit dinyatakan sebagai vektor adalah

P = (p1, p2, …,pm) (2.6)

Page 18: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

17

yang dalam hal ini pi adalah 0 atau 1 untuk i = 1, 2, …, m dan blok cipherteks (C)

adalah

C = (c1, c2, …,cm) (2.7)

yang dalam hal ini ci adalah 0 atau 1 untuk i = 1, 2, …, m. Bila plainteks dibagi menjadi

n buah blok, barisan blok-blok plainteks dinyatakan sebagai

(P1, P2, …,Pn) (2.8)

Untuk setiap blok plainteks Pi, bit-bit penyusunnya dapat dinyatakan sebagai vektor

Pi = (pi1, pi2, …,pim) (2.9)

Enkripsi dan dekripsi dengan kunci K dinyatakan berturut-turut dengan persamaan

EK(P) = C (2.10)

untuk enkripsi, dan

DK(C) = P (2.11)

Fungsi E haruslah fungsi yang berkoresponden satu-ke-satu, sehingga

E-1 = D (2.12)

Skema enkripsi dan dekripsi dengan cipherblok digambarkan pada Gambar 2.6.

Page 19: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

Enkripsi DekripsiPlaintext PlaintextCiphertext

Kunci Umum Kunci Pribadi

18

Fungsi E dan D dispesifikan oleh kriptografer.

Enkripsi: Dekripsi:

Blok Plainteks P Blok Cipherteks C

P = (p1, p2, …,pm) C = (c1, c2, …, cm)

Kunci K Enkripsi,E Kunci K Dekripsi, D

Blok Cipherteks C Blok Plainteks P

C = (c1, c2, …,cm) P = (p1, p2, …, pm)

Gambar 2.6 Skema enkripsi dan dekripsi pada cipher blok

2.3.3 Kriptografi Kunci Simetri

Algoritma kriptografi asimetris adalah algoritma yang menggunakan kunci

yang berbeda untuk proses enkripsi dan dekripsinya. Algoritma ini disebut juga algo-

ritma kunci umum (public key algorithm) karena kunci untuk enkripsi dibuat umum

(public key) atau dapat diketahui oleh setiap orang, tapi kunci untuk dekripsi hanya

diketahui oleh orang yang berwenang mengetahui data yang disandikan atau sering

disebut kunci pribadi (private key).Contoh algoritma terkenal yang menggunakan kunci

asimetris adalah RSA dan ECC.

Page 20: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

19

Gambar 2.7 Proses Enkripsi/Dekripsi Algoritma Kriptografi Asimetris

2.4 Video Encryption Algorithm (VEA)

Sama dengan enkripsi pada data teks, enkripsi video juga memiliki algoritma

sendiri. Umumnya video dapat dienkripsi langsung dengan menggunakan algoritma

enkripsi kunci rahasia yang telah banyak beredar saat ini, seperti DES, AES, dan lain-

lain, tetapi enkripsi seperti itu membutuhkan waktu yang cukup lama, karena ukuran

video yang cukup besar.

Algoritma enkripsi video yang umum digunakan adalah VEA (Video

Encryption Algorithm). Algoritma ini memiliki berbagai macam modifikasi yang

disesuaikan berdasarkan kebutuhan, karena kemudahannya dalam implementasi. Salah

satu tipe modifikasinya diberi nama MVEA (Modified VEA). Berikut adalah skema

global dari algoritma VEA:

1. Buka file MPEG (misalnya Mpeg-1/Mpeg-2 dengan ekstensi .mpg dan Mpeg-4 dengan

ekstensi .mp4)

2. Baca frame file MPEG, baca tipe frame-nya.

3. Baca bit stream dari frame tersebut.

4. Jika frame dari bit stream bukan frame I, maka bit stream langsung ditulis ke file

tujuan.

5. Jika bit stream tersebut merupakan bit stream dari frame I, maka bit-bit tersebut di-XOR

kan dengan kunci.

6. Tulis hasil enkripsi ke file tujuan.

7. Baca frame selanjutnya, kembali ke langkah nomor 2 sampai End-of-File.

Diagram alir dari algoritma VEA dapat dilihat di Gambar 2.8.

Page 21: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

20

Gambar 2.8 Diagram Alir Algoritma VEA untuk video MPEG

VEA (Video Encryption Algorithm) merupakan sebuah algoritma enkripsi

video yang berbasis pada cipher aliran (stream cipher). Kunci rahasia VEA, k, di-

generate secara random dalam bentuk bitstream dengan panjang m, yang dapat ditulis

sebagai k = b1b2...bm. Bitstream dari video dapat direpresentasikan dengan:

Page 22: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

21

S = ...s1...s2...sm...sm+1...sm+2...s2m..

yang dalam hal ini si (i = 1,2,...) adalah seluruh bit-bit dari video. Fungsi enkripsi VEA,

Ek(S) dapat ditulis dengan:

Ek(S) = ...(b1 ⊕s1) ... (bm ⊕sm+1) ... (bm ⊕s2m) ...

yang dalam hal ini ⊕ adalah operasi XOR.

2.5 Algoritma Message Digest 5 (MD5)

MD5 adalah fungsi hash satu-arah yang dibuat oleh Ron Rivest. MD5

merupakan perbaikan dari MD4 setelah MD4 berhasil diserang oleh kriptanalis.

Algoritma MD5 menerima masukan berupa pesan dengan ukuran sembarang dan

menghasilkan message digest yang panjangnya 128 bit. Gambaran pembuatan message

digest dengan algoritma MD5 diperlihatkan pada Gambar 2.9.

Gambar 2.9 Pembuatan message digest dengan algoritma MD5

Page 23: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

22

Gambar 2.10 Blok Diagram Umum MD5

Langkah-langkah pembuatan message digest secara garis besar adalah sebagai berikut :

1. Mendapatkan pesan yang akan dilakukan MD5 dan mendapatkan ukuran dari pesan.

2. Penambahan bit-bit pengganjal (padding bits).

3. Insialisasi penyangga (buffer) untuk proses MD.

4. Pengolahan pesan dalam tiap 512 bit dan melakukan proses putaran dan operasi dasar

MD5.

5. Mendapatkan hasil output MD5.

Contoh sederhana masukan – keluaran MD5 :

Masukan = ””

Keluaran = d4 1d 8c d9 8f 00 b2 04 c9 80 09 98 ec f8 42 7e

Masukan = “a”

Keluaran = 0c c1 75 b9 c0 f1 b6 a8 31 c3 99 e2 69 77 26 61

Masukan = “b”

Keluaran = 92 eb 5f fe e6 ae 2f ec 3a d7 1c 77 75 31 57 8f

Masukan MD5 dalam contoh di atas adalah karakter kosong (“”), a, dan b. Keluaran

berupa bilangan hexa dan jumlahnya 128 bit. Misalkan d berarti sama dengan angka 13

desimal tau 1101 biner. Hanya dengan masukan yang berbeda satu karakter, keluaran men-

galami perubahan drastis. Sifat seperti ini sengaja dibuat agar bila diketahui keluaran, san-

gat sulit atau mustahil untuk mengetahui masukannya.

Page 24: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

23

2.6 Framework Aforge.net

Framework Aforge.net merupakan framework C# yang dirancang bagi para

pengembang dan peneliti di bidang komputer vision dan artificial intelligence yang

meliputi pengolahan citra, jaringan syaraf tiruan, algoritma genetika, logika fuzzy, juga

video processing.

Framework Aforge.net terdiri dari library – library yang mempunyai fitur dan

kegunaan masing antara lain :

AForge.Imaging - library dengan fungsi – fungsi pangolahan citra dan filter.

AForge.Vision – library dengan fungsi – fungsi computer vision.

AForge.Video – kumpulan library – library untuk video processing.

AForge.Neuro - library dengan fungsi – fungsi komputasi jaringan syaraf.

AForge.Genetic - library dengan fungsi – fungsi pemrograman genetik atau evolusi.

AForge.Fuzzy - library dengan fungsi –fungsi komputsai fuzzy.

AForge.Robotics - library yang menyediakan beberapa fungsi bantuan untuk

robotika.

AForge.MachineLearning - library dengan fungsi –fungsi machine learning.

Pada framework Aforge.net.Video menyediakan 2 library untuk melakukan video

processing yaitu AForge.Video.DirectShow dan AForge.Video.FFMPEG. Pada

Aforge.net.Video.DirectShow menggunakan library dari DirectShow yang merupakan

bagian dari DirectX yang menangani masalah video. Sedangkan AForge.Video.FFMPEG

menggunakan library dari ffmpeg untuk melakukan video processing namun dari pihak

Aforge menyatakan masih bahwa penggunaan library ffmpeg ini masih dalam tahap

pengembangan.

Page 25: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

24

2.7 Real-Time Transport Protocol (RTP)

Teknologi yang digunakan dalam media streaming adalah RTP atau Real Time

Transport Protocol. RTP menyediakan layanan pengiriman jaringan untuk transmisi data

real time. RTP adalah jaringan dan protokol transport-independen, meskipun sering

digunakan di atas UDP. RTP dapat digunakan pada layanan jaringan unicast dan multicast.

Melalui layanan unicast, salinan data yang dipisahkan dikirimkan dari sumber ke

tujuan,dan jika pada layanan multicast, data dikirimkan dari sumber hanya sekali dan

jaringanlah yang bertanggung jawab untuk mentransmisikan data ke berbagai lokasi. Maka

dari itu layanan multicast lebih efisisen untuk berbagai aplikasi multi media, seperti video

conferences.

2.7.1 RTP Header

Dalam sebuah paket RTP terdapat 2 bagian. Yaitu RTP Header dan data yang

hendak dikirim. Data yang hendak kita kita melalui RTP memiliki header sebagai

pengenal bahwa data tersebut adalah data RTP. Gambar 2.11 adalah gambar dari header

dari sebuah paket data RTP.

Gambar 2.11 RTP Header

Penjelasan tentang RTP header adalah sebagai berikut :

1. Version (V) adalah versi dari protocol tersebut. RTP memiliki versi 2. Version memiliki

besar 2 bit.

2. Padding (P) adalah jika terdapat byte padding pada paket RTP. Padding memiliki

besar 1bit.

Page 26: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

25

3. Extension (X) merepresentasikan sebuah ekstensi header antara header yang standar

dengan playload data.

4. CSRC Count (CC) berisi tentang identifikasi dari CSRC yang mengikuti header yang

benar. CSRC Count memiliki besar 4 bit.

5. Marker (M) digunakan pada layer application. jika nilai dari Marker berisi 1, maka data

yang dikirim memiliki relevansi yang special dengan aplikasi sebelumnya. Marker

memiliki besar 1 bit.

6. Playload Type (PT) menindikasikan format dari playload dan interpretasi dari aplikasi

tersebut. Playload Type ditentukan dari profile RTP. Playload Type memilki besar 7 bit.

7. Sequence Number (SN) adalah angka berurutan yang akan bertambah satu untuk setiap

data paket yang dikirimkan oleh RTP yang digunakan. Fungsinya adalah untuk

mendeteksi paket loss dan mengembalikan urutan paket. RTP tidak mengambil

tindakan apapun ketika terjadi paket loss tapi Sequence Number memungkinkan untuk

mendeteksi paket mana yang hilang. Sequence Number memiliki besar 16 bit.

8. Timestamp digunakan untuk memungkinkan penerima dapat memutar kembali sampel

yang diterima pada interval yang tepat.

9. Synchronization Source (SSRC) identifier digunakan untuk mensinkronkan data RTP

yang diterima dengan data yang telah dikirim dari source.

10. Contributing source (CSRC) identifier digunakan untuk menghitung sumber-sumber

untuk aliran yang dihasilkan dari berbagai sumber.

2.7.2 RTP Control (RTPC)

RTPC berfungsi untuk menyediakan statistic out-of-band dan sebagai informasi

control untuk RTP. RTPC adalah penunjang RTP dalam penyampaian data multimedia.

Biasanya RTP akan dikirim pada port UDP genap, sedangkan RTP Control dikirim pada

port yang ganjil.

Fungsi utama dari RTPC adalah untuk memberikan laporan tentang kualitas layanan (QoS)

dalam media distribusi dengan secara berkala mengirimkan informasi statistik kepada

peserta dalam sesi multimedia streaming. RTPC membedakan beberapa jenis paket yaitu

sender report, receiver report, source description, dan bye. Selain itu terdapat pula

laporan lanjutan jika terdapat paket application-specific RTPC.

Page 27: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

26

BAB III

METODE PENELITIAN

Pada tahap ini dijelaskan mengenai langkah-langkah yang akan dilakukan untuk

merancang dan mengimplementasikan perangkat lunak yang akan dibuat. Adapun

langkah-langkah yang akan dilakukan adalah sebagai berikut:

3.1 Penentuan Spesifikasi Alat

Menentukan perangkat yang digunakan untuk menunjang pembuatan aplikasi :

a) Perangkat Keras:

1) 2 unit PC

Intel Core 2 Duo E7500 2.93GHz (2 CPUs), mainboard FOXCONN ETON, DDR3

1024MB, VGA intel GMA X4500 Graphics, harddisk 320GB.

2) 1 Switch

Dlink DES-1024R+ ,24 port , 10/100Mbps, full duplex.

3) 2 Kabel UTP RJ45 straight.

b) Perangkat Lunak:

1) OS Windows XP service pack 3,dengan syarat minimum spesifikasi:

Hadware Minimum

Prosesor 233 MHz

Memori 64 MB

Monitor Resolusi 600 x 800

Hard Disk Free 1,5GB

Optical drive CD-ROM

Peralatan Input Mouse dan Keyboard

Sound Speaker

Tabel 3.1 Minimum Spesifikasi Sistem Operasi Windows Xp3

Page 28: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

27

2) Bahasa pemrograman C#

3) Microsoft Vsual Studio 2008 versi 9.0.21022.8 RTM dan .NET Framework versi 3.5

SP1 dengan minimum spesifikasi :

Hadware MinimumProsesor 1.6 GHzMemori 384 MBMonitor Resolusi 1024 x 768 Hard Disk Free 2.2 GBOptical drive DVD-ROMPeralatanInput Mouse dan KeyboardSistem operasi XP Service Pack 2

Tabel 3.2 Minimum Spesifikasi Microsoft Visual Studio 2008

4) Aforge.net versi 2.2.3.

5) File Video MPEG dengan format Mpeg-1, Mpeg-2,dan Mpeg-4.

3.2 Perancangan dan Implementasi Sistem

Secara garis besar desain yang akan dibuat untuk aplikasi Enkripsi Video Streaming

menggunakan VEA terdiri dari 2 bagian :

Program sisi Transmtiter atau Server

Program ini bertugas untuk menyediakan file video yang akan akan distreamingkan,

mengenkripsi data video tersebut saat distreamingkan, dan membuat sesi streaming agar

client bisa membangung koneksi streaming.

Program sisi Receiver atau Client

Program ini bertugas untuk membangun koneksi streaming dengan server,

mendekripsi data yang telah diterima dari server, dan menampilkan data video yang

diterima yang telah didekripsi tersebut. Namun, jika tidak dilakukan proses dekripsi data

video yang akan ditampilkan masih berupa data yang masih terenkripsi.

Enkripsi yang digunakan berbasis stream cipher yakni VEA (Video Encryption

Algorithm ). Dimana aliran bit pada macroblock pada frame I baik berupa 0 atau 1 akan di–

XOR dengan bit – bit key atau kunci. Namun, key tersebut telah diperkuat yakni dengan

Page 29: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

28

cara masukan key dari user akan dimasukan ke fungsi hash MD5 sehingga menjadi

bertambah kuat proses enkripsinya.

Gambaran umum sistem dengan proses enkripsi dan dekripsi dapat dilihat dalam

Gambar 3.1.

.

Gambar 3.1 Rancangan Umum Sistem dengan Proses Enkripsi Tanpa Dekripsi

Sedangkan gambaran umum sistem dengan proses enkripsi tanpa dekripsi dapat

dilihat dalam Gambar 3.2.

Page 30: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

29

Gambar 3.2 Rancangan Umum Sistem dengan Proses Enkripsi dan Dekripsi

3.2.1 Diagram Alir Umum Sistem

Sistem enkripsi video streaming ini terdiri dari beberapa komponen yang dapat

digambarkan secara umum dengan model seperti pada Gambar 3.3.

Page 31: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

30

Gambar 3.3 Diagram Alir Umum Sistem

Keterangan dari diagram alir pada Gambar 3.3 :

1. Mendapatkan file video Mpeg-1/Mpeg-2 dengan ekstensi .mpg dan Mpeg-4 dengan

ekstensi .mp4 yang akan distreamingkan.

2. Mendapatkan private key dari user yang akan digunakan untuk proses enkripsi dan

dekripsi.

3. Melakukan proses hash pada key dengan algoritma MD5 yang bertujuan untuk

memperkuat enkripsi data video.

4. Transmitter/ server membuat sesi streaming supaya client / receiver dapat membangun

koneksi sehingga Transmitter/ server dapat mengirim data streaming.

Page 32: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

31

5. Receiver /client melakukan proses koneksi streaming dengan transmitter.

6. Setelah terbangun koneksi antara transmitter dengan receiver, maka dilakukan proses

pengiriman data. Namun data yang dikirim akan dienkripsi terlebih dahulu.

7. Proses pengiriman atau streaming data dari transmitter kepada receiver.

8. Receiver proses menerima data streaming dari transmitter.

9. Data yang diterima akan didekripsi oleh receiver untuk mendapatkan data awal.

10. Setelah didapat data video original dari proses dekripsi, maka receiver memainkan

data video MPEG tersebut.

3.2.2 Diagram Alir Enkripsi VEA

Diagram alir dari enkripsi VEA ditunjukan pada Gambar 3.4:

Gambar 3.4 Diagram Alir Enkripsi VEA

Page 33: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

32

Keterangan dari diagram alir pada Gambar 3.4 :

1. Mendapatkan File video Mpeg-1/Mpeg-2 dengan ekstensi .mpg dan Mpeg-4 dengan

ekstensi .mp4 yang akan distreamingkan dan dienkripsi.

2. Mendapatkan Key dari masukan user yang akan digunakan untuk proses enkripsi.

3. Melakukan proses MD5 dari Key yang telah didapat yang betujuan untuk memperkuat

Key atau kunci.

4. Membaca file video MPEG.

5. Mengecek apakah frame yang sedang dibaca adalah Frame I. Jika benar, maka bit –bit

pada macroblock akan di XOR kan dengan bit – bit key dari hasil proses MD5.

Kemudian melakukan proses pengiriman paket atau streaming kepada receiver. Jika

hasil pengecekan dari Frame I adalah salah maka bit – bit data tersebut langsung

dilakukan proses pengiriman data atau streaming.

6. Dilakukan pengecekan lagi yakni apakah sudah sampai akhir dari file atau end of file

(EOF). Jika hasil pengecekan tidak maka dilakukan proses pada point 5, jika hasil

penyecekan benar maka proses selesai.

3.3 Pengujian dan Analisis

Pengujian dilakukan untuk menjamin dan memastikan bahwa sistem yang telah

dirancang memiliki tingkat kesalahan yang kecil. Untuk mengetahui apakah sistem bekerja

dengan baik dan sesuai dengan perancangan, maka diperlukan serangkain pengujian.

Pengujian yang dilakukan adalah sebagai berikut:

1. Pengujian Enkrispi Video Streaming .

2. Pengujian hasil output.

3. Analisa kegagalan.

3.4 Kesimpulan dan Saran

Kesimpulan diperoleh dari data-data hasil setelah semua analisis dan pengujian

aplikasi dilakukan, sehingga diperoleh saran juga guna perbaikan aplikasi pada penelitian

selanjutnya

Page 34: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

33

3.5 Rencana Kegiatan

Kegiatan ini direncanakan dikerjakan dalam waktu lima bulan dengan rincian

sebagai berikut

No.

Jenis Kegiatan

BULAN DAN MINGGU KE:1 2 3 4

1 2 4 2 4 2 3 41 Studi

Literatur 2 Perancang

an Aplikasi

3 Pembuatan Aplikasi

4 Pengujian

Aplikasi

5 Penulisan

Laporan 6 Seminar

Hasil

Page 35: ALGORITMA DAN IMPLEMENTASI KRIPTOGRAFI VIDEO STREAMING MENGGUNAKAN ALGORITMA VIDEO ENCRYPTION ALGORITHM (VEA).docx

34

DAFTAR PUSTAKA

[1] Stallings, William. 2005. “Cryptography and Network Security, 4th edition”.

[2] Munir, Rinaldi, M.T., “Diktat Kuliah IF5054 Kriptografi.”, STEI ITB, 2006.

[3] Tessa Ramsky, "Perangkat Lunak Enkripsi Video MPEG-1 dengan Modifikasi Video

encryption algorithm (VEA)", Sekolah Teknik Elektro dan Informatika-Institut

Teknologi Bandung.

[4] Letivina Anggraini, Erina. 2008. “Secure Broadcast Distribution Menggunakan Java

Media Framework (Jmf) Plug-Ins Untuk Pendistribusian Video”.

[5] http://en.pudn.com/ tentang contoh implementasi pengiriman paket data RTP, diakses

tanggal 1 Februari 2012.

[6] http://id.wikipedia.org/wiki/MD5, diakses tanggal 1 Februari 2012.

[7] http://mpeg.htm/mpeg, diakses tanggal 5 Februari 2012.

[8] http://id.wikipedia.org/wiki/Moving-Picture-Expert-Group, diakses tanggal 5 Februari

2012.

[9] http://en.wikipedia.org/wiki/AForge.NET, diakses tanggal 10 Februari 2012.

[10] http://www.csharp-station.com/Tutorial.aspx, diakses tanggal 10 Februari 2012.

[11] http://msdn.microsoft.com/en-us/vstudio/hh388566, diakses tanggal 10 Februari 2012

[12] http://www.aforgenet.com/framework/, diakses tanggal 10 Februari 2012