enkripsi pada video

51
BAB I PENDAHULUAN Bab ini menjelaskan latar belakang, rumusan masalah, tujuan, batasan masalah, metodologi, dan sistematika penulisan laporan tugas akhir. I.1 Latar Belakang Teknologi video merupakan salah satu teknologi yang saat ini digunakan dalam berbagai bidang. Teknologi ini telah berkembang dengan pesat dan bahkan kini memegang banyak peranan penting, seperti dalam bidang komunikasi multimedia dan bidang hiburan. Seiring dengan perkembangan teknologi video, maka faktor keamanan data video merupakan salah satu hal penting yang harus diperhatikan. Faktor keamanan yang dimaksud adalah faktor confidentiality dan integrity dari video. Confidentiality berarti hanya orang yang memiliki otorisasi yang dapat melihat isi atau konten dari video. Integrity menjamin data video berasal dari sumber yang sebenarnya dan tidak mengalami modifikasi, baik modifikasi yang dilakukan secara sengaja oleh pihak lain yang tidak berhak maupun modifikasi yang dilakukan secara tidak sengaja oleh pihak yang berhak. 1

Upload: lukman-hakim

Post on 11-Jun-2015

1.506 views

Category:

Documents


0 download

DESCRIPTION

Sebuah Laporan Tugas Akhir tentang engkripsi pada video

TRANSCRIPT

Page 1: Enkripsi pada video

BAB I

PENDAHULUAN

Bab ini menjelaskan latar belakang, rumusan masalah, tujuan, batasan masalah,

metodologi, dan sistematika penulisan laporan tugas akhir.

I.1 Latar Belakang

Teknologi video merupakan salah satu teknologi yang saat ini digunakan dalam

berbagai bidang. Teknologi ini telah berkembang dengan pesat dan bahkan kini

memegang banyak peranan penting, seperti dalam bidang komunikasi multimedia

dan bidang hiburan. Seiring dengan perkembangan teknologi video, maka faktor

keamanan data video merupakan salah satu hal penting yang harus diperhatikan.

Faktor keamanan yang dimaksud adalah faktor confidentiality dan integrity dari

video.

Confidentiality berarti hanya orang yang memiliki otorisasi yang dapat melihat isi

atau konten dari video. Integrity menjamin data video berasal dari sumber yang

sebenarnya dan tidak mengalami modifikasi, baik modifikasi yang dilakukan

secara sengaja oleh pihak lain yang tidak berhak maupun modifikasi yang

dilakukan secara tidak sengaja oleh pihak yang berhak.

Salah satu solusi untuk meningkatkan faktor confidentiality dari video adalah

dengan melakukan proses enkripsi. Proses enkripsi video dapat dilakukan dengan

menggunakan metode complete encryption algorithm dan mengimplementasikan

konsep digital envelope. Konsep digital envelope memadukan kelebihan-

kelebihan yang terdapat pada symmetric dan asymmetric key cryptography untuk

meningkatkan faktor confidentiality.

Symmetric key cryptography membutuhkan waktu lebih cepat dibandingkan

dengan asymmetric key cryptography dalam melakukan proses enkripsi, namun

1

Page 2: Enkripsi pada video

memiliki kekurangan dalam masalah key distribution, yaitu kurang amannya

distribusi kunci pada jaringan dengan user yang banyak. Sedangkan asymmetric

key cryptography dapat mengatasi masalah key distribution dengan lebih baik.

Konsep digital envelope dapat diterapkan dengan menggunakan algoritma RC5

yang merupakan bagian dari symmetric key cryptography dan Elliptic Curve

Cryptography yang merupakan bagian dari asymmetric key cryptography.

Sedangkan untuk meningkatkan faktor integrity dari video, salah satu solusinya

yaitu dengan melakukan penambahan digital signature menggunakan algoritma

Elliptic Curve Digital Signature Algorithm. Penambahan digital signature ini

akan memastikan video berasal dari pihak pemberi digital signature dan tidak

mengalami modifikasi selama proses transmisi.

I.2 Rumusan Masalah

Berdasarkan pertimbangan faktor confidentiality dan integrity yang harus dimiliki

sebuah video, maka rumusan masalah yang diajukan dalam tugas akhir ini adalah

bagaimana meningkatkan faktor confidentiality dan integrity dari sebuah video.

I.3 Tujuan

Tujuan dari tugas akhir ini adalah mengembangkan sebuah perangkat lunak yang

mengimplementasikan algoritma enkripsi untuk dapat meningkatkan:

1. Confidentiality dari sebuah video digital dengan menggunakan konsep digital

envelope.

2. Integrity dari sebuah video digital dengan menggunakan konsep digital

signature.

Tugas akhir ini juga akan menunjukkan bahwa perangkat lunak yang

dikembangkan telah meningkatkan faktor confidentiality dan integrity dari video.

2

Page 3: Enkripsi pada video

I.4 Batasan Masalah

Selama pengerjaan hingga pada akhir tugas akhir ini, diharapkan tetap

berorientasi pada hal berikut:

1. Konsep digital envelope diimplementasikan menggunakan algoritma Elliptic

Curve Diffie-Hellman dan RC5.

2. Konsep digital signature diimplementasikan dengan algoritma Elliptic Curve

Digital Signature Algorithm yang menggunakan algoritma SHA1 untuk proses

hashing.

3. Aplikasi perangkat lunak yang dikembangkan dapat mendukung semua format

video.

4. Aplikasi perangkat lunak yang dikembangkan tidak mendukung proses

streaming video.

I.5 Metodologi

Metodologi penyelesaian tugas akhir ini diawali dengan melakukan studi literatur

guna memberi pemahaman mendalam mengenai video dan kriptografi.

Tugas akhir ini diselesaikan dengan berdasarkan pada metodologi berikut:

1. Studi literatur mengenai video untuk memahami dasar-dasar video.

2. Studi literatur mengenai kriptografi, khususnya mengenai konsep digital

envelope yang menggunakan algoritma Elliptic Curve Diffie-Hellman dan

RC5.

3. Studi literatur mengenai digital signature yang menggunakan algoritma

Elliptic Curve Digital Signature Algorithm.

4. Analisis sistem perangkat lunak yang akan dikembangkan.

5. Perancangan perangkat lunak yang mengimplementasikan algoritma

kriptografi.

6. Implementasi rancangan perangkat lunak yang mengimplementasikan

algoritma kriptografi untuk video.

3

Page 4: Enkripsi pada video

I.6 Sistematika Penulisan

Laporan tugas akhir ini disusun berdasarkan sistematika penulisan sebagai

berikut:

BAB I Bab ini menguraikan latar belakang masalah, rumusan masalah,

tujuan penyusunan, batasan masalah, metodologi dan sistematika

penulisan laporan tugas akhir.

BAB II Bab ini menjelaskan konsep dasar video, enkripsi video, konsep

digital envelope dan digital signature.

BAB III Bab ini menjelaskan analisis dan perancangan perangkat lunak

yang akan dikembangkan.

BAB IV Bab ini meliputi implementasi dan pengujian perangkat lunak yang

dikembangkan.

BAB V Bab ini berisi tentang kesimpulan dan saran yang diperoleh dari

pelaksanaan tugas akhir ini.

4

Page 5: Enkripsi pada video

BAB II

DASAR TEORI

Bab ini menjelaskan dasar teori yang digunakan dalam pengembangan perangkat

lunak, dasar teori tersebut terdiri dari konsep dasar video, konsep digital envelope

dan konsep digital signature. Pada bagian konsep dasar video dibahas tipe-tipe

picture yang terdapat dalam sebuah video, video coding standard dan enkripsi

video.

Pada bagian digital envelope dibahas konsep digital envelope yang menggunakan

algoritma Elliptic Curve Diffie-Hellman dan RC5. Pada bagian digital signature

dibahas konsep digital signature yang menggunakan algoritma Elliptic Curve

Digital Signature Algorithm.

II.1 Konsep Dasar Video

Suatu image digital direpresentasikan dengan sebuah matriks dua dimensi yang

masing-masing elemennya merepresentasikan nilai intensitas. Jika I adalah sebuah

matriks, I(x,y) adalah nilai intensitas yang sesuai pada posisi baris x dan kolom y

pada matriks tersebut. Elemen-elemen dari matriks tersebut juga disebut picture

elements, atau sering dikenal sebagai piksel (pixel) [YON02].

Proses video coding yang dilakukan akan menghasilkan beberapa macam tipe

gambar (picture) dalam sebuah video digital. Sebuah video digital tersusun atas

sekumpulan group of pictures (GOP). Group of pictures sendiri merupakan

kumpulan dari beberapa picture/frame. Setiap picture terbagi atas sekumpulan

macroblock yang disebut slice. Sebuah slice dapat memiliki ukuran yang berbeda-

beda dalam sebuah picture. Satu slice terbagi atas beberapa macroblock yang

berukuran 16 x 16 pixel. Macroblock dibagi lagi menjadi block-block berukuran 8

x 8 pixel.

5

Page 6: Enkripsi pada video

Gambar II.1 Video structure

II.1.1 Tipe Picture

Group of pictures terdiri dari sekumpulan picture. Terdapat empat macam tipe

picture: I picture, P picture, B picture dan D picture. Susunan picture dalam

group of pictures selalu dimulai dengan I picture, kemudian dilanjutkan dengan

susunan P dan B picture. Panjang dari group of pictures didefinisikan sebagai

jarak antara I picture.

Tipe I picture merupakan picture yang dikodekan tanpa referensi ke picture

sebelumnya. Tipe picture ini menyediakan access point untuk proses decoding.

Tipe P picture atau predictively coded picture merupakan picture yang dikodekan

dengan referensi ke I picture atau P picture sebelumnya. Tipe picture ini

digunakan sebagai referensi untuk coding picture-picture sesudahnya.

6

Page 7: Enkripsi pada video

Tipe B picture atau bidirectionally coded picture merupakan picture yang

dikodekan dengan referensi ke picture-picture sebelumnya, sesudahnya atau

sebelum dan sesudahnya. Tipe terakhir, yaitu D picture memiliki kualitas gambar

yang buruk dan biasanya hanya digunakan untuk fast forward. D picture bukan

merupakan bagian dari GOP [GHA03].

II.1.2 Video Coding Standard

Terdapat beberapa standar video coding yang dikembangkan oleh beberapa

organisasi internasional. International Telecommunication Union (ITU-T) yang

berbasis di Geneva, Switzerland merupakan organisasi yang mengembangkan

standar video coding untuk bidang telekomunikasi. Selain ITU-T, terdapat pula

organisasi lain yaitu Motion Picture Experts Group (MPEG), organisasi ini

mengembangkan standar untuk video dan audio coding.

Berikut adalah beberapa standar video coding yang dikembangkan oleh

International Telecommunication Union (ITU-T):

1. H.261

Standar video coding ini diresmikan pada tahun 1990. Pada awalnya didesain

untuk transmisi di atas ISDN. Algoritma video coding ini didesain untuk dapat

beroperasi pada bitrate antara 40 kbit/s sampai 2 Mbit/s. Standar ini

mendukung dua ukuran video frame: CIF (352 x 288 luma dengan 176 x 144

chroma) dan QCIF (176 x 144 luma dengan 88 x 72 chroma).

2. H.262

Standar video coding H.262 serupa dengan standar video ISO/IEC MPEG-2.

Standar ini dikembangkan secara bersamaan oleh ITU-T dan ISO/IEC.

3. H.263

H.263 merupakan standar yang didesain ITU-T pada tahun 1995/1996 sebagai

format kompresi dengan bitrate rendah untuk videoconference. H.263

dikembangkan sebagai hasil perkembangan evolusi dari H.261, MPEG-1 dan

MPEG-2. Versi pertama standar ini diselesaikan pada tahun 1995 dan

merupakan pengganti yang cocok untuk H.261. Kemudian dikembangkan lagi

7

Page 8: Enkripsi pada video

pada proyek yang dikenal dengan nama H.263v2 (juga dikenal sebagai

H.263+ atau H.263 1998) dan H.263v3 (juga dikenal sebagai H.263++ atau

H.263 2000).

4. H.264

Standar video coding berikutnya yang dikembangkan adalah H.264. H.264

menyediakan perkembangan yang signifikan melebihi H.263. Sebagian besar

produk videoconferencing sekarang mengikutsertakan standar video H.264,

H.263 dan H.261. H.264 dikenal juga sebagai MPEG-4 Part 10 atau MPEG-4

AVC (Advanced Video Coding).

Sedangkan berikut ini adalah standar video coding yang dikembangkan oleh

Motion Picture Experts Group (MPEG) [CHI94]:

1. MPEG-1

MPEG-1 merupakan standar untuk audio dan video coding dengan tipe

kompresi lossy. Standar ini didesain untuk kompresi video dengan kualitas

VHS dan CD audio. Saat ini MPEG-1 telah menjadi standar lossy audio/video

coding paling kompatibel di dunia dan banyak digunakan dalam produk-

produk dan teknologi yang ada.

2. MPEG-2

MPEG-2 digunakan secara luas sebagai format TV digital. Standar video

coding ini juga digunakan sebagai format film atau program lain yang

didistribusikan melalui DVD.

3. MPEG-4

MPEG-4 merupakan kumpulan metoda-metoda yang mendefinisikan

kompresi data audio dan visual (AV) digital. Penggunaan standar MPEG-4 ini

termasuk kompresi data AV untuk web dan distribusi CD, suara (telephone,

videophone) dan aplikasi TV broadcast.

4. MPEG-7

MPEG-7 adalah standar deskripsi content multimedia. Deskripsi ini akan

diasosiasikan dengan content-nya untuk membuat pencarian menjadi cepat

dan efisien. MPEG-7 disebut juga Multimedia Content Description Interface.

8

Page 9: Enkripsi pada video

Standar ini tidak berurusan dengan encoding dari gambar bergerak dan audio

seperti MPEG-1, MPEG-2 dan MPEG-4.

II.1.3 Enkripsi Video

Salah satu solusi untuk meningkatkan faktor keamanan, dalam hal ini faktor

confidentiality dari video adalah dengan melakukan proses enkripsi video.

Berdasarkan proses enkripsi yang dilakukan, maka enkripsi video dapat

dikelompokkan menjadi tiga bagian [WAN07]:

1. Complete encryption algorithm

Konsep complete encryption algorithm sangat berfokus pada peningkatan

faktor confidentiality dari video dan kurang berfokus pada faktor efisiensi

proses komputasi. Algoritma enkripsi ini akan mengenkripsi keseluruhan

frame dari awal hingga akhir video, sehingga menghasilkan tingkat

confidentiality paling tinggi. Namun proses enkripsi yang dilakukan memakan

waktu paling lama bila dibandingkan dengan dua konsep algoritma enkripsi

video yang lain.

2. Compression encryption combined algorithm

Proses enkripsi yang dilakukan dikombinasikan dengan proses kompresi

video. Dengan demikian, proses komputasi yang dilakukan lebih sedikit,

namun membutuhkan tabel tambahan untuk menyimpan hasil Huffman coding

yang tentunya memakan tempat lebih banyak. Tingkat confidentiality yang

dihasilkan bergantung pada struktur pohon Huffman atau algoritma kompresi

yang digunakan.

3. Selective encryption algorithm

Konsep selective encryption algorithm meningkatkan faktor confidentiality

dari video namun lebih berfokus pada efisiensi proses komputasi. Algoritma

yang menerapkan konsep selective encryption algorithm akan melakukan

enkripsi video hanya pada frame-frame tertentu saja, sehingga meminimalisasi

9

Page 10: Enkripsi pada video

proses komputasi. Hal tersebut meningkatkan efisiensi dari proses enkripsi

yang dilakukan, namun tingkat confidentiality yang dihasilkan lebih rendah

bila dibandingkan complete encryption algorithm.

II.2 Digital Envelope

Konsep digital envelope memanfaatkan kelebihan-kelebihan yang terdapat dalam

symmetric key cryptography dan asymmetric key cryptography. Dengan

menggunakan konsep digital envelope, plaintext akan dienkripsi dengan

menggunakan symmetric key cryptography, sementara kunci yang digunakan

untuk melakukan enkripsi plaintext akan dienskripsi dengan menggunakan

asymmetric key cryptography [PIN07].

Gambar II.2 Digital envelope

Dengan demikian proses key distribution sudah tidak menjadi masalah lagi karena

dilakukan dengan menggunakan asymmetric key cryptography, pengirim pesan

mengenkripsi kunci rahasia yang digunakan untuk mengenkripsi pesan dengan

menggunakan public key penerima pesan. Sehingga hanya pengirim dan penerima

pesan yang mengetahui kunci rahasia yang dipakai dalam melakukan enkripsi dan

dekripsi pesan. Selain itu, proses enkripsi juga tidak memakan waktu lama karena

dilakukan dengan menggunakan symmetric key cryptography.

10

Page 11: Enkripsi pada video

Dalam tugas akhir ini, konsep digital envelope diterapkan dengan menggunakan

algoritma RC5 (Rivest Cipher) yang merupakan salah satu algoritma symmetric

key cryptography. Sementara proses key distribution dilakukan dengan

menggunakan Elliptic Curve Diffie-Hellman yang merupakan bagian dari Elliptic

Curve Cryptography.

II.2.1 Protokol Pertukaran Kunci

Algoritma pertukaran kunci Diffie-Hellman yang pertama kali diperkenalkan oleh

Whitfield Diffie dan Martin Hellman pada tahun 1976 merupakan cryptosystem

pertama yang memanfaatkan konsep asymmetric key cryptography [PAL06].

Algoritma ini merupakan salah satu algoritma kriptografi yang berbasiskan pada

kesulitan menghitung logaritma diskrit dalan finite field.

Tidak seperti algoritma enkripsi yang pada umumnya mengenkripsi suatu data,

algoritma pertukaran kunci ini memungkinkan dua user atau lebih untuk bertukar

public key pada jaringan yang tidak aman dan kemudian menghasilkan shared

secret key yang sama pada masing-masing pihak. Shared secret key tersebut yang

kemudian dapat digunakan sebagai symmetric key untuk melakukan proses

enkripsi data menggunakan symmetric key algorithm.

II.2.1.1 Pertukaran Kunci Diffie-Hellman

Penjelasan protokol pertukaran kunci ini dapat diilustrasikan antara dua orang,

misalkan saja A dan B, yang keduanya sepakat mengenai bilangan prima yang

besar misalkan n dan g di mana g merupakan modulo n. Selanjutnya akan terdapat

dua buah integer yang tidak dirahasiakan atau merupakan public key dan dapat

didistribusikan dalam saluran bebas. Proses berikutnya dijelaskan dalam tahapan-

tahapan di bawah ini:

1. A memilih secara acak sebuah bilangan integer x yang besar, menghitung X =

gx mod n, dan mengirimkan X pada B.

2. B memilih secara acak sebuah bilangan integer y yang besar, menghitung Y =

gy mod n, dan mengirimkan Y pada A.

11

Page 12: Enkripsi pada video

3. A menghitung nilai k1 = Yx mod n

4. B menghitung nilai k2 = Xy mod n

Setelah empat langkah di atas selesai dilakukan, maka kedua nilai k1 dan k2 adalah

sebuah shared secret yang sama untuk gxy mod n, sehingga k adalah kunci rahasia

A dan B yang dihitung secara terpisah.

II.2.1.2 Pertukaran Kunci Diffie-Hellman pada Elliptic Curve

Pertukaran kunci Diffie-Hellman juga dapat diterapkan pada kurva elips dengan

menggunakan titik-titik pada kurva sebagai public key dan shared secret key.

Misal E adalah sebuah kurva elips dan P = (x, y) merupakan sebuah titik pada

kurva E, maka proses pertukaran kunci berdasarkan Elliptic Curve Diffie-Hellman

adalah sebagai berikut:

1. A memilih kunci rahasia a, misalkan a = 2 dan menghitung public key-nya,

yaitu: P x a. Public key ini kemudian dikirimkan ke B.

2. B memilih kunci rahasia b, misalkan b = 3 dan menghitung public key-nya,

yaitu: P x b. Public key ini kemudian dikirimkan ke A.

3. A menghitung nilai shared secret key dari public key yang telah diterimanya,

yaitu: SA = (P x b) x a.

4. B menghitung nilai shared secret key dari public key yang telah diterimanya,

yaitu: SB = (P x a) x b.

Setelah keempat langkah tersebut selesai dilakukan, maka nilai SA dan SB yang

dihasilkan merupakan sebuah shared secret key yang bernilai sama pada pihak A

dan B.

II.2.2 Rivest Cipher (RC5)

RC5 dikembangkan oleh Ron Rivest dan merupakan algoritma symmetric key

cryptography yang menerapkan konsep block cipher. Algoritma RC5

dikategorikan cukup cepat dan tidak membutuhkan terlalu banyak memori karena

hanya menggunakan operasi-operasi komputasi dasar, seperti penjumlahan, XOR

dan shift. Pada sebuah jurnal yang berjudul “A Performance Evaluation of

Intrusiontolerant Routing in Wireless Sensor Networks”, RC5 dilaporkan

12

Page 13: Enkripsi pada video

memiliki performansi yang lebih cepat bila dibandingkan dengan Rinjdael

[VIT06].

RC5 dapat menerima input berupa variabel ukuran block, variabel ukuran kunci

rahasia yang akan digunakan dan variabel jumlah round. Berbagai input variabel

tersebut menghasilkan fleksibilitas tingkat confidentiality dan efisiensi yang

diinginkan.

Tabel II.1 Tabel parameter RC5

Parameter Nilai yang diijinkan

Ukuran block 16, 32, 64

Ukuran kunci rahasia (dalam bit) 0-2040

Jumlah round 0-255

Sebelum melakukan enkripsi, algoritma RC5 akan melakukan proses key

expansion yang memperluas atau mengembangkan kunci rahasia sehingga

memenuhi sub key yang disebut S. Sub key S berupa array yang memiliki panjang

2 * (jumlah round + 1). Dalam proses key expansion digunakan dua buah

konstanta, yaitu P dan Q. Nilai P adalah B7E15163 dan nilai Q adalah 9E3779B9.

Kedua nilai tersebut didefinisikan dalam bentuk heksadesimal.

Proses key expansion terdiri dari tiga buah langkah [RIV95] :

1. Mengkonversi kunci rahasia dari byte menjadi word.

2. Menginisialisasi sub key S.

Nilai sub key S[0] pertama kali didefinisikan dengan nilai konstanta P. Nilai S

selanjutnya (S[1], S[2], …) dihitung berdasarkan nilai S sebelumnya dan nilai

konstanta Q yang kemudian dikalkulasi dengan operasi modulo 232. Proses

inisialisasi array S ini dilakukan sebanyak 2 * (jumlah round + 1) - 1.

3. Memadukan kunci rahasia.

Pada proses ini sub key S (S[0], S[1], …) dipadukan dengan kunci rahasia (L)

yang berupa array (L[0], L[1], …). Proses ini akan dilakukan sebanyak tiga

13

Page 14: Enkripsi pada video

kali, namun karena ukuran S dan L yang berbeda, bisa saja proses ini

dilakukan lebih dari tiga kali.

Setelah melakukan proses key expansion, algoritma RC5 akan melakukan proses

enkripsi. Langkah dari proses enkripsi yang dilakukan adalah sebagai berikut:

1. Membagi plaintext input menjadi dua block dengan ukuran yang sama (A dan

B).

2. Tambahkan sub key pertama (S[0]) dengan A, yang kemudian menghasilkan

C.

3. Tambahkan sub key selanjutnya (S[1]) dengan B, yang kemudian

menghasilkan D.

4. Lakukan XOR C dan D, yang menghasilkan E.

5. Shift atau geser E ke kiri sebanyak D.

6. Tambahkan E yang sudah di-shift dengan sub key selanjutnya (S[2]) untuk

menghasilkan F.

7. Lakukan XOR D dan F, yang menghasilkan G.

8. Shift atau geser G ke kiri sebanyak F.

9. Tambahkan G yang sudah di-shift dengan sub key selanjutnya (S[3]) untuk

menghasilkan H.

10. Tambahkan counter (i) dan cek apakah i masih lebih kecil dari jumlah

parameter round yang diinput.

Sebagai catatan, implementasi algoritma RC5 pada perangkat lunak yang

dikembangkan akan menggunakan kunci yang didapat dari proses pertukaran

kunci menggunakan algoritma Elliptic Curve Diffie-Hellman.

14

Page 15: Enkripsi pada video

Berikut flowchart dari proses enkripsi yang dilakukan algoritma RC5 [KAH03]:

Gambar II.3 Skema proses enkripsi algoritma RC5

II.3 Digital Signature

Digital signature merupakan salah satu implementasi kriptografi untuk

meningkatkan faktor integrity dari suatu data. Digital signature berguna untuk

memastikan bahwa suatu pesan yang sudah memiliki digital signature merupakan

pesan yang berasal dari pihak penanda tangan dan tidak mengalami modifikasi

selama proses transmisi. Bila pesan mengalami perubahan baik secara sengaja

15

Page 16: Enkripsi pada video

maupun tidak sengaja, maka pihak penerima pesan akan dengan segera

mengetahuinya [PIN07].

Gambar II.4 Digital signature

Untuk menciptakan sebuah digital signature, suatu pesan di-hash terlebih dahulu

agar menghasilkan message digest. Message digest dapat dikatakan sebagai

fingerprint dari suatu pesan. Kemudian message digest yang dihasilkan dienkripsi

menggunakan private key dari pengirim pesan sehingga hanya public key yang

merupakan pasangan dari private key tersebut yang dapat digunakan untuk

melakukan dekripsi. Hal tersebut menjamin bahwa suatu pesan benar-benar

dikirm oleh penanda tangan pesan. Digital signature kemudian digabungkan

dengan pesan yang akan ditransmisikan.

Gambar II.5 Proses verifikasi digital signature

16

Page 17: Enkripsi pada video

Setelah pesan diterima, penerima pesan memisahkan digital signature dari pesan

yang diterima, kemudian melakukan proses hash yang sama untuk menghasilkan

message digest dari pesan tersebut. Digital signature yang diterima kemudian

didekripsi menggunakan public key pengirim pesan. Hasil dari proses dekripsi

tersebut adalah message digest dari proses hash yang dilakukan oleh pengirim

pesan. Penerima pesan kini cukup membandingkan message digest yang

diperolehnya dari proses hash pesan dengan message digest yang diperolehnya

dari hasil dekripsi digital signature. Bila kedua message digest tersebut sama,

maka dapat dipastikan pesan tidak mengalami modifikasi selama proses transmisi.

II.3.1 Elliptic Curve Digital Signature Algorithm (ECDSA)

Eliliptic Curve Digital Signature Algorithm (ECDSA) adalah varian dari Digital

Signature Algorithm (DSA) yang dioperasikan pada kurva elips. ECDSA

memiliki tingkat keamanan yang lebih tiggi bila dibandingkan dengan DSA.

Sebagai perbandingan, level keamanan yang dihasilkan oleh DSA dengan public

key berukuran 1024 bit sebanding dengan level keamanan yang dihasilkan oleh

ECDSA dengan public key hanya 160 bit.

Untuk mengirimkan pesan yang telah dibubuhi digital signature dari pengirim

(dalam contoh ini A) ke penerima (dalam contoh ini B) dan memastikan bahwa

digital signature tersebut berasal dari A, kedua belah pihak harus terlebih setuju

pada Elliptic Curve domain parameters, di mana Elliptic Curve domain

parameters merupakan parameter-parameter kurva elips yang digunakan dalam

proses pembuatan dan verifikasi digital signature.

Pihak A memiliki key pair yang terdiri dari private key dA (bilangan integer yang

nilainya kurang dari n) dan public key QA = dA * G (G adalah titik generator).

Sebelum melakukan signature generation, algoritma ECDSA akan mengkalkulasi

message digest dari suatu pesan dengan menggunakan algoritma hash Secure

Hash Algorithm-1 (SHA1).

17

Page 18: Enkripsi pada video

Algoritma Secure Hash Algorithm (SHA) dikembangkan oleh National Institute

of Standards and Technology (NIST) bersama dengan US National Security

Agency (NSA). Pada tahun 1993, SHA dipublikasikan sebagai Federal

Information Processing Standard (FIPS PUB 180). Kemudian pada tahun 1995

direvisi menjadi FIPS PUB 180-1 dan namanya diganti menjadi SHA-1.

SHA merupakan algoritma hash yang dibuat berdasarkan algoritma MD4. SHA

menerima input dengan panjang kurang dari 264 bit. Output dari SHA berupa

message digest dengan panjang 160 bit. Kata ‘secure’ dalam Secure Hash

Algorithm didasarkan pada dua hal, yaitu:

1. SHA didesain agar seseorang tidak dapat mendapatkan pesan sebenarnya bila

diberikan message digest dari pesan tersebut.

2. SHA didesain agar tidak ditemukan dua pesan yang menghasilkan message

digest yang sama.

Proses signature generation untuk menandai pesan m oleh pengirim (A)

menggunakan private key A (dA) adalah sebagai berikut:

1. Kalkulasi e = hash (m), di mana hash adalah fungsi hash kriptografi seperti

SHA-1

2. Pilih sebuah bilangan integer k dari [1, n-1]

3. Hitung r = x1 (mod n), di mana (x1, y1) = k * G. Jika r = 0, kembali ke langkah

nomor 2

4. Hitung s = k -1 (e + rdA)(mod n). Jika s = 0, kembali ke langkah nomor 2

5. Nilai signature pair yang didapat adalah (r, s).

Digital signature dalam notasi (r, s) selanjutnya akan dikirimkan ke B. Setelah

diterima oleh B, maka proses verifikasi signature dapat dilakukan bila B memiliki

public key A (QA). Proses verifikasi yang dilakukan adalah sebagai berikut:

18

Page 19: Enkripsi pada video

1. Verifikasi bahwa r dan s merupakan bilangan integer dalam range [1, n-1].

Bila r atau s tidak berada dalam range tersebut, maka dapat dipastikan

signature tidak valid.

2. Kalkulasi e = hash (m), di mana hash adalah fungsi hash kriptografi yang

sama dengan yang digunakan dalam proses signature generation.

3. Hitung w = s -1 (mod n)

4. Hitung u1 = ew (mod n) dan u2 = rw (mod n)

5. Hitung (x1, y1) = u1G + u2QA

6. Bila nilai x1 = r (mod n), maka signature dinyatakan valid.

Setelah enam langkah tersebut dilakukan oleh B, maka B dapat memastikan

apakah digital signature yang diterimanya merupakan digital signature yang valid

atau tidak.

19

Page 20: Enkripsi pada video

BAB III

ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi tentang analisis dan perancangan dari sistem yang akan

dikembangkan. Pembahasan meliputi analisis dari complete encryption algorithm,

selective encryption algorithm dan compression encryption combined algorithm.

Pada bagian perancangan dijelaskan rancangan sistem yang dikembangkan dalam

tugas akhir ini. Pembahasan meliputi rancangan layer yang akan diterapkan dan

rancangan cara kerja perangkat lunak yang dikembangkan.

III.1 Analisis Sistem

Analisis sistem yang dikembangkan, yakni aplikasi kriptografi yang

mengimplementasikan konsep digital envelope dan digital signature untuk

meningkatkan faktor confidentiality dan integrity dari video.

Untuk meningkatkan faktor confidentiality dilakukan proses enkripsi video.

Seperti telah dijelaskan pada bab II, terdapat beberapa metoda untuk melakukan

enkripsi data video, yaitu: complete encryption algorithm, selective encryption

algorithm dan compression encryption combined algorithm.

Complete encryption algorithm akan mengenkripsi keseluruhan frame video dari

awal hingga akhir. Algoritma ini sedikit lambat dalam melakukan proses enkripsi,

namun demikian memiliki tingkat confidentiality yang paling tinggi. Di lain

pihak, selective encryption algorithm hanya mengenkripsi I picture dari video

sehingga cukup cepat dalam melakukan proses enkripsi, namun tingkat

confidentiality yang dihasilkan algoritma ini jelas berada di bawah complete

encryption algorithm.

20

Page 21: Enkripsi pada video

Secara teori, selective encryption algorithm memiliki waktu komputasi yang lebih

cepat dalam melakukan proses enkripsi dibandingkan dengan complete encryption

algorithm. Hal tersebut disebabkan karena selective encryption algorithm hanya

akan mengenkripsi I pictures dari sebuah video. Namun, jika data video hanya

tersusun atas I pictures saja, maka selective encryption algorithm dapat secara

tidak langsung berubah menjadi complete encryption algorithm. Hal ini membuat

complete encryption algorithm menjadi pilihan yang lebih baik bila dibandingkan

dengan selective encryption algorithm [QIA96].

Selain complete encryption algorithm dan selective encryption algorithm, terdapat

pula compression encryption combined algorithm. Metoda enkripsi compression

encryption combined algorithm dikatakan tidak fleksibel dan memiliki dua

masalah fatal, yaitu: peningkatan ukuran image sebesar 25% sampai 60% dan

vulnerable-nya algoritma ini terhadap known plaintext attack [QIA96].

Berdasarkan pertimbangan faktor-faktor di atas, maka complete encryption

algorithm diharapkan mampu menjawab kebutuhan faktor confidentiality dari

sebuah video meski complete encryption algorithm memiliki waktu komputasi

yang lebih lama dibandingkan selective encryption algorithm.

Complete encryption algorithm yang diterapkan pada enkripsi simetris masih

memiliki masalah dalam hal distribusi kunci, khususnya dalam jaringan dengan

jumlah user yang banyak. Sehingga, dibutuhkan algoritma pertukaran kunci untuk

melakukan proses pertukaran public key yang akan menghasilkan kunci simetris.

Algoritma pertukaran kunci ini memungkinkan dua atau lebih user bertukar kunci

dalam jaringan yang tidak aman.

Untuk meningkatkan faktor integrity, perlu dilakukan penambahan digital

signature. Penambahan digital signature ini akan menjamin video tidak

mengalami modifikasi selama proses transmisi, juga menjamin bahwa video

tersebut berasal dari pihak pemberi digital signature. Setelah perangkat lunak

21

Page 22: Enkripsi pada video

mengenkripsi keseluruhan berkas video, barulah perangkat lunak akan

menambahkan digital signature pada berkas video tersebut.

III.2 Perancangan Sistem

Secara umum, perangkat lunak yang dikembangkan terdiri dari empat buah layer:

1. Layer video

Pada layer pertama ini, data video dapat dikatakan merupakan plain video dan

dapat dimainkan oleh aplikasi video player yang bersesuaian.

2. Layer enkripsi/dekripsi

Pada layer ini terjadi proses enkripsi ataupun dekripsi video menggunakan

algoritma Elliptic Curve Diffie-Hellman dan RC5.

3. Layer signature

Pada layer ini dilakukan penambahan ataupun pemisahan digital signature

dengan berkas cipher video atau berkas video yang telah dienkripsi dengan

menggunakan algoritma Elliptic Curve Digital Signature Algorithm yang

menerapkan algoritma SHA1 untuk proses hashing.

4. Layer transport

Pada layer ini, berkas video yang telah dienkripsi dan dibubuhi digital

signature siap untuk ditransmisikan.

22

Page 23: Enkripsi pada video

Gambar III.1 Layer dari aplikasi yang akan dikembangkan

Untuk lebih memahami perancangan layer yang telah dibuat, maka dimisalkan

terdapat dua user yang saling berinteraksi pada jaringan peer to peer. Dalam

contoh ini dua user tersebut adalah sender dan receiver. Pihak sender atau

pengirim data video akan memulai prosesnya dari layer teratas, yaitu layer video.

Video kemudian akan dienkripsi dan dibubuhi digital signature sebelum akhirnya

ditransmisikan ke receiver. Pihak receiver akan menerima data video, kemudian

memisahkan digital signature dari file video yang diterimanya, hingga akhirnya

file video dapat dimainkan kembali dengan video player yang bersesuaian.

Baik sender maupun receiver memiliki jumlah layer yang sama, namun proses

pada layer enkripsi/dekripsi dan layer signature memiliki perbedaan. Pada sisi

sender, akan dilakukan proses enkripsi dan penambahan digital signature.

23

Page 24: Enkripsi pada video

Sedangkan pada sisi receiver akan dilakukan proses dekripsi dan pemisahan

digital signature untuk memverifikasi apakah digital signature yang diterima

valid.

III.2.1 Use Case Diagram

Berikut use case diagram dari perangkat lunak yang dikembangkan:

Gambar III.2 Use case diagram

Pembuatan dan pertukaran key

Pada use case ini akan berisi fungsi atau prosedur yang berkaitan dengan

proses pembuatan key pair, pertukaran public key hingga proses pembuatan

shared secret key.

Mengenkripsi video

24

Page 25: Enkripsi pada video

Pada use case ini akan berisi fungsi atau prosedur yang berkaitan dengan

proses enkripsi file video.

Membuat digital signature

Pada use case ini akan berisi fungsi atau prosedur yang berkaitan dengan

proses pembuatan digital signature.

Memverifikasi digital signature

Pada use case ini akan berisi fungsi atau prosedur yang berkaitan dengan

proses verifikasi digital signature.

Mendekripsi video

Pada use case ini akan berisi fungsi atau prosedur yang berkaitan dengan

proses dekripsi file video.

Bila use case diagram pada gambar III.2 diimplementasikan dengan dua user,

maka akan terdapat pihak sender dan pihak receiver. Kedua pihak akan

berinteraksi pada jaringan peer to peer. Pihak sender akan bertindak sebagai pihak

pengirim video, sedangkan receiver akan bertindak sebagai pihak penerima video.

Pada proses tersebut, pihak sender hanya akan menggunakan use case pembuatan

dan pertukaran key, mengenkripsi video dan membuat digital signature.

Sementara pihak receiver akan menggunakan use case pembuatan dan pertukaran

key, memverifikasi digital signature dan mendekripsi video.

III.2.2 Activity Diagram

Sesuai dengan use case diagram pada gambar III.2 yang diimplementasikan

dengan dua user (sender dan receiver), maka berikut adalah activity diagram dari

perangkat lunak yang dikembangkan:

25

Page 26: Enkripsi pada video

Gambar III.3 Activity diagram

26

Page 27: Enkripsi pada video

Sebelum dapat melakukan proses enkripsi, sender dan receiver harus membuat

key pair, yaitu sepasang public key dan private key. Setelah itu, sender dan

receiver menukar public key mereka berdasarkan protokol ECDH. Dari private

key dan public key yang telah ditukar, masing-masing pihak dapat membuat

shared secret key, yaitu sebuah symmetric secret key yang sama di kedua belah

pihak.

Symmetric secret key yang didapat kemudian dipakai oleh sender yang dianggap

sebagai pihak pengirim untuk melakukan enkripsi video menggunakan algoritma

kunci simetris RC5. Proses enkripsi pada video ini dilakukan menggunakan

metode complete encryption algorithm, di mana enkripsi akan dilakukan pada

keseluruhan frame dari awal hinga akhir video. Hal tersebut dilakukan untuk

menjamin confidentiality dari video.

Setelah proses enkripsi pada video selesai dilakukan, maka akan terbentuk cipher

video. Cipher video ini kemudian di-hash menggunakan fungsi hash SHA-1

untuk mendapatkan message digest-nya. Message digest yang didapat kemudian

dienkripsi menggunakan private key untuk menjamin bahwa video tersebut tidak

mengalami modifikasi. Message digest yang telah dienkripsi ini disebut sebagai

digital signature. Cipher video dan digital signature yang dihasilkan kemudian

dikirimkan ke receiver.

Pihak receiver yang dianggap sebagai penerima kemudian akan melakukan proses

hash pada cipher video menggunakan fungsi hash yang sama dengan fungsi hash

yang digunakan oleh sender. Proses hash ini akan menghasilkan sebuah message

digest.

Digital signature yang didapat akan didekripsi menggunakan public key receiver,

sehingga didapat sebuah message digest. Receiver kemudian membandingkan

message digest yang didapat dari proses hash cipher video dengan message digest

27

Page 28: Enkripsi pada video

yang didapat dari proses dekripsi digital signature. Jika kedua message digest

tersebut bernilai sama, maka dapat dipastikan cipher video tersebut belum

mengalami modifikasi. Bila cipher video belum mengalami modifikasi, maka

aplikasi yang akan dikembangkan akan melakukan proses dekripsi untuk

mendapatkan data video semula.

28

Page 29: Enkripsi pada video

BAB IV

IMPLEMENTASI DAN PENGUJIAN

Bab ini membahas lingkungan pengembangan perangkat lunak, meliputi

perangkat keras dan perangkat lunak yang digunakan, juga implementasi class-

class yang dikembangkan.

Pada bagian pengujian akan memperlihatkan hasil pengujian perangkat lunak

yang didasarkan pada tiga faktor: confidentiality dan integrity, waktu pemrosesan

dan perbandingan ukuran berkas yang dihasilkan.

IV.1 Lingkungan Pengembangan

Dalam lingkungan pengembangan, dijelaskan tentang perangkat-perangkat yang

digunakan dalam pengembangan perangkat lunak kriptografi video. Berikut

spesifikasi yang digunakan:

IV.1.1 Perangkat Keras

Spesifikasi komputer yang digunakan dalam pengembangan perangkat lunak

kriptografi video ini adalah sebagai berikut:

1. PC dengan processor Intel® Pentium® 4 CPU 2.40GHz

2. Hardisk 40 GB

3. RAM 512 MB

4. Monitor, keyboard dan mouse.

IV.1.2 Perangkat Lunak

Spesifikasi perangkat lunak yang digunakan antara lain:

1. Sistem operasi Microsoft Windows XP service pack 2

2. Microsoft Visual Studio C#.NET 2005.

29

Page 30: Enkripsi pada video

IV.2 Implementasi Aplikasi

Berikut pemaparan implementasi class-class dari perangkat lunak yang

dikembangkan:

Tabel IV.1 Implementasi class-class dari perangkat lunak yang dikembangkan

Class Method Deskripsi

FormAwal FormAwal Inisialisasi class

  btnSender_Click Menampilkan form Sender

  btnReceiver_Click Menampilkan form Receiver

FormAsReceiver FormAsReceiver Inisialisasi class

  btnStart_Click Menjalankan service pada port 2311

  btnGenerate_Click Membuat key pair

  btnSendPub_Click Mengirim public key ke Sender

  btnGenSecret_Click Membuat shared secret key

 

btnAccFile_Click Menerima file video yang dikirim Sender, membaca digital signature, bila digital signature valid, maka file video akan didekripsi

FormAsSender FormAsSender Inisialisasi class

  btnConnect_Click Melakukan koneksi ke Receiver

  btnGenerate_Click Membuat key pair

  btnSendPub_Click Mengirim public key ke Receiver

  btnGenSecret_Click Membuat shared secret key

  btnBrowse_Click Mem-browse file

  btnEncFile_Click Mengenkripsi file video

 

btnSend_Click Menambahkan digital signature dan mengirim file video

 

getByte Membaca file video dan membuatnya menjadi byte[]

  openFile Membuka file

Encryptor Encryptor Inisialisasi class

  callCipher Melakukan proses enkripsi atau dekripsi

 

decrypt Memeriksa apakah data yang akan didekripsi valid, kemudian melakukan proses dekripsi dengan memanggil fungsi callCipher

 

encrypt Memeriksa apakah data yang akan dienkripsi valid, kemudian melakukan proses enkripsi dengan memanggil fungsi callCipher

30

Page 31: Enkripsi pada video

IV.3 Pengujian Aplikasi

Pengujian aplikasi dilakukan berdasarkan beberapa faktor: confidentiality dan

integrity, waktu komputasi proses enkripsi maupun dekripsi, dan perbandingan

ukuran berkas sebelum dan setelah proses enkripsi dilakukan.

IV.3.1 Confidentiality dan Integrity

Faktor confidentiality dan integrity merupakan faktor utama dalam pengembangan

aplikasi kriptografi ini. Pada pengujian faktor confidentiality, dilakukan uji coba

pada layer enkripsi/dekripsi dengan membuka file video yang telah dienkripsi,

hasil dari uji coba tersebut file video tersebut tidak dapat dimainkan oleh video

player.

Pengujian faktor integrity dilakukan pada layer signature sesudah file video

terenkripsi dibubuhi digital signature. Pengujian dilakukan dengan mencoba

merubah private key yang digunakan untuk membuat digital signature. Hasil dari

uji coba tersebut, digital signature yang dikirimkan tidak dikenali oleh receiver.

Demikian pula bila dilakukan perubahan pada public key yang digunakan untuk

memverifikasi digital signature, maka digital signature yang dikirimkan oleh

sender tidak akan dikenali oleh receiver. Selain kedua hal tersebut, dilakukan pula

pengujian dengan mengubah digital signature yang dikirimkan ke receiver.

Hasilnya, perangkat lunak tidak akan mengenali digital signature tersebut dan

tidak akan mendekripsi file video dengan digital signature yang tidak valid.

IV.3.2 Waktu Pemrosesan

Waktu pemrosesan mencakup waktu yang dibutuhkan untuk melakukan proses

enkripsi dan proses dekripsi. Untuk melihat waktu yang dibutuhkan dalam

melakukan proses enkripsi menggunakan algoritma RC5 pada berkas video,

dilakukan percobaan sebanyak 3 kali menggunakan ukuran berkas yang berbeda-

beda, seperti terlihat pada tabel berikut:

31

Page 32: Enkripsi pada video

Tabel IV.2 Lama waktu enkripsi RC5 pada berkas video

Ukuran berkas (bytes) Lama enkripsi (s)

55.027.716 1125.629.890 516.467.142 1

Berdasarkan hasil pada tabel di atas, maka dapat dilihat bahwa semakin besar

ukuran berkas yang dienkripsi, maka semakin lama pula waktu yang dibutuhkan

untuk melakukan proses enkripsi.

Selanjutnya, untuk melihat waktu yang dibutuhkan dalam melakukan proses

dekripsi menggunakan algoritma RC5 pada berkas video, dilakukan pula

percobaan sebanyak 3 kali menggunakan berkas yang telah dienkripsi pada

percobaan sebelumnya, hasil percobaan waktu proses dekripsi dapat dilihat pada

tabel berikut:

Tabel IV.3 Lama waktu dekripsi RC5 pada berkas video

Ukuran berkas (bytes) Lama dekripsi (s)

55.027.720 10

25.629.896 516.467.144 1

Berdasarkan hasil pada tabel di atas, maka dapat dilihat bahwa sama seperti

proses enkripsi, bila ukuran berkas yang akan didekripsi semakin besar, maka

semakin lama pula waktu yang dibutuhkan untuk melakukan proses dekripsi.

IV.3.3 Ukuran Berkas

Algoritma yang dikembangkan akan menambah ukuran berkas video yang telah

dienkripsi maksimal sebanyak 8 bytes. Untuk melihat lebih jelas perbedaan

ukuran berkas, dilakukan percobaan sebanyak 3 kali dengan menggunakan berkas

yang ukuran awalnya berbeda-beda, hasil pengujian dapat dilihat pada tabel

berikut:

32

Page 33: Enkripsi pada video

Tabel IV.4 Perbandingan ukuran berkas video

Ukuran berkas (bytes)Perbandingan (%)

Awal Setelah proses enkripsi

55.027.716 55.027.720 100,000007225.629.890 25.629.896 100,0000234

16.467.142 16.467.144 100,0000121

Rata-rata perbandingan = 100.0000142

Berdasarkan hasil pada tabel di atas, dapat disimpulkan bahwa setelah proses

enkripsi dilakukan, aplikasi akan menambah ukuran berkas rata-rata sebesar

0,0000142%.

33

Page 34: Enkripsi pada video

BAB V

SIMPULAN DAN SARAN

Bab ini berisi simpulan dan saran dari perangkat lunak yang dikembangkan.

V.1 Simpulan

Simpulan yang didapat dari pembuatan aplikasi kriptografi ini adalah:

1. Konsep digital envelope meningkatkan tingkat confidentiality dari proses

enkripsi karena memadukan asymmetric key cryptography dengan symmetric

key cryptography.

2. Digital signature meningkatkan faktor integrity dari suatu data, karena

memastikan suatu data berasal dari pihak penanda tangan dan tidak

mengalami perubahan selama proses transmisi.

3. Proses enkripsi menggunakan metode complete encryption algorithm pada

berkas video menghasilkan tingkat confidentiality yang paling tinggi, namun

memakan waktu lebih lama bila dibandingkan dengan dua meotda enkripsi

lainnya.

V.2 Saran

Hal-hal berikut dapat dijadikan masukan dalam pengembangan perangkat lunak

lebih lanjut:

1. Aplikasi kriptografi ini dapat dikembangkan lebih jauh untuk meningkatkan

keamanan dari video streaming, dengan mencoba memotong-motong berkas

video yang akan dikirimkan sesuai dengan ukuran buffer yang akan dipakai

pada proses streaming.

34

Page 35: Enkripsi pada video

DAFTAR PUSTAKA

[CHI94] Chiariglione, Leonardo (1994). Official Web Page of the Moving

Pictures Experts Group (MPEG), [online]. Available:

http://www.chiariglione.org/mpeg/ [Rabu, 9 April 2008].

[GHA03] Ghanbari, Mohammed (2003). Standard Codecs: Image

Compression to Advanced Video Coding. The Institution of

Electrical Engineers, London, United Kingdom.

[KAH03] Kahate, Atul (2003). Cryptography and Network Security.

McGraw-Hill.

[PAL06] Palmgren, Keith, CISSP (2006). Diffie-Hellman Key Exchange,

[online]. Avaiable: http://www.netip.com/articles.htm [Selasa, 11

Maret 2008].

[PIN07] Pingrey, Sarah (2007). Encryption Today. The George Washington

University.

[QIA96] Qiao, Lintian dan Nahrstedt, Klara. A New Algorithm for MPEG

Video Encryption. Department of Computer Science, University of

Illinois, Urbana.

[RIV95] Rivest, Ronald L. (1995). The RC5 Encryption Algorithm. MIT

Laboratory for Computer Science. Cambridge.

[VIT06] Vitaletti, Andre dan Palombizio, Gianni (2006). Rijndael for

Sensor Networks: Is Speed the Main Issue?. Dipartimento di

Informatica e Sistemistica, University “La Sapienza”, Rome, Italy.

[WAN07] Wang, Yajun dan Cai, Mian dan Tang, Feng (2007). Design of A

New Selective Video Encryption Scheme Based on H.264. Beijing

University of Technology.

[YON02] Yonata, Yosi (2002). Singkat Tepat Jelas Kompresi Video. PT.

Elex Media Komputindo, Jakarta.

35