Anda di halaman 1dari 17

MAKALAH SISTEM KEAMANAN KOMPUTER

AUTHENTICATED ENCRYPTION

Dibuat Oleh :
TRI WAHYU SAPUTRO (1461600115)

JURUSAN INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS 17 AGUSTUS 1945 SURABAYA
KATA PENGANTAR

Assalamu’alaikum warahmatullahi wabarakatuh

Segala puji bagi Allah SWT yang telah memberikan kami kemudahan sehingga kami
dapat menyelesaikan makalah ini dengan tepat waktu. Tanpa pertolongan-Nya tentunya kami
tidak akan sanggup untuk menyelesaikan makalah ini dengan baik. Shalawat serta salam
semoga terlimpah curahkan kepada baginda tercinta kita yaitu Nabi Muhammad SAW yang
kita nanti-natikan syafa’atnya di akhirat nanti.

Kami mengucapkan syukur kepada Allah SWT atas limpahan nikmat sehat-Nya, baik
itu berupa sehat fisik maupun akal pikiran, sehingga kami mampu untuk menyelesaikan
pembuatan makalah dari mata kuliah Sistem Keamanan Komputer dengan judul
“Authenticated Encryption”.

Kami tentu menyadari bahwa makalah ini masih jauh dari kata sempurna dan masih
banyak terdapat kesalahan serta kekurangan di dalamnya. Untuk itu, kami mengharapkan
kritik serta saran dari pembaca untuk makalah ini, supaya makalah ini nantinya dapat menjadi
makalah yang lebih baik lagi. Kemudian apabila terdapat banyak kesalahan pada makalah ini
kami mohon maaf yang sebesar-besarnya.

Demikian, semoga makalah ini dapat bermanfaat. Terima kasih.

Sidoarjo, 13 Juni 2019


DAFTAR ISI

Kata pengantar ........................................................................................................ i


Daftar isi ................................................................................................................ ii
Bab I Pendahuluan ................................................................................................. 1
1.1 Latar belakang ........................................................................................... 1
1.2 Tujuan ........................................................................................................ 1
Bab II Isi ................................................................................................................ 2
2.1 Authenticated Encryption (AE) ................................................................. 2
2.2 Authenticated Encryption with Associated Data (AEAD) ........................ 3
2.3 Pendekatan Untuk Authenticated Encryption ............................................ 3
2.3.1 Encrypt-then-MAC (EtM) ................................................................ 3
2.3.2 Encrypt-and-MAC (E&M) ............................................................... 4
2.3.3 MAC-then-Encrypt (MtE) ................................................................. 5
2.4 CCM .......................................................................................................... 5
2.5 GCM ........................................................................................................ 11
Bab III Penutup .................................................................................................... 13
3.1 Kesimpulan .............................................................................................. 13
3.2 Saran ........................................................................................................ 13

iii
BAB I

PENDAHULUAN

1.1 Latar belakang

Seringkali ketika dua pihak berkomunikasi melalui suatu jaringan, ada dua tujuan
utama yang ingin mereka capai dalam menjaga keamanan data atau pesan, yaitu kerahasiaan
dan otentikasi pesan. Teknik kriptografi dapat digunakan untuk mencapai tujuan tersebut.
Tujuan kerahasiaan dapat dicapai dengan menggunakan teknik kriptografi berupa penyandian
pesan, sedangkan tujuan otentikasi dapat diraih dengan menggunakan teknik kriptografi
berupa otentikasi pesan yang secara implisit memberikan integritas data.

Sehubungan dengan pencapaian tujuan keamanan data, para ahli kriptogafi


berpendapat bahwa seseorang sebaiknya tidak melakukan penyandian pesan tanpa diikuti
otentikasi pesan. Baru-baru ini ada sejumlah konstruksi baru yang meraih kerahasiaan dan
otentikasi secara simultan dan seringkali lebih cepat daripada sembarang solusi yang
menggunakan generic composition. Konstruksi baru ini memanfaatkan modus-modus operasi
sandi blok sehingga dikenal dengan istilah “combined modes” atau istilah yang lebih sering
digunakan adalah “authenticated-encryption modes”.

1.2 Tujuan

Tujuan di buatnya makalah ini adalah untuk memahami lebih dalam tentang authenticated
encryption.
BAB II

ISI

2.1 Authenticated encryption

Authenticated encryption adalah istilah yang digunakan untuk menggambarkan sistem


enkripsi dimana sistem enkripsi ini melindungi kerahasiaan dan keaslian (integrasi) suatu
komunikasi (Stallings, 2011). Untuk menggunakan modus authenticated encryption, terdapat
fungsi-fungsi yang harus dijalankan sebagai berikut:

 Enkripsi
o Input : plaintext, key, dan opsional header dalam plaintext yang tidak terenkripsi.
o Output : ciphertext dan tag otentikasi (Message Authentication Code).
 Dekripsi
o Input : ciphertext, kunci, tag otentikasi, dan opsional header.
o Output : plaintext, atau error jika tag otentikasi tidak sesuai dengan ciphertext
disediakan.

Selain melindungi integritas dan kerahasiaan pesan, authenticated encryption dapat


memberikan keamanan terhadap serangan ciphertext yang dipilih . Dalam serangan ini,
musuh mencoba untuk mendapatkan keuntungan terhadap cryptosystem (misalnya, informasi
tentang kunci dekripsi rahasia) dengan mengirimkan ciphertext yang dipilih dengan cermat
ke beberapa " oracle dekripsi " dan menganalisis hasil yang didekripsi. Skema enkripsi yang
diautentikasi dapat mengenali ciphertext yang dibuat secara tidak tepat dan menolak untuk
mendekripsi mereka. Ini pada gilirannya mencegah penyerang dari meminta dekripsi
ciphertext apa pun kecuali dia membuatnya dengan benar menggunakan algoritma enkripsi,
yang akan menyiratkan bahwa dia sudah tahu plaintext. Diimplementasikan dengan benar, ini
menghilangkan kegunaan dekripsi dekripsi, dengan mencegah penyerang mendapatkan
informasi berguna yang belum ia miliki.

Banyak mode authenticated encryption khusus telah dikembangkan untuk digunakan


dengan cipher blok simetris. Namun, enkripsi yang diautentikasi dapat dibuat secara umum
dengan menggabungkan skema enkripsi dan kode otentikasi pesan (MAC), asalkan:

v
 Skema enkripsi secara semantik aman di bawah serangan plaintext yang dipilih .
 Fungsi MAC tidak dapat dikalahkan di bawah serangan pesan yang dipilih .

Bellare dan Namprempre (2000) menganalisis tiga komposisi primitif ini, dan
menunjukkan bahwa mengenkripsi pesan dan kemudian menerapkan MAC ke ciphertext
(pendekatan Encrypt-then-MAC ) menyiratkan keamanan terhadap serangan ciphertext yang
dipilih secara adaptif , asalkan kedua fungsi memenuhi properti yang diperlukan. Katz dan
Yung menyelidiki gagasan tersebut dengan nama "enkripsi yang tidak bisa dimaafkan" dan
membuktikannya menyiratkan keamanan terhadap serangan ciphertext yang dipilih.

2.2 Authenticated encryption with associated data (AEAD)

Authenticated encryption with associated data (AEAD) adalah varian dari


Authenticated encryption (AE) di mana data yang akan dienkripsi membutuhkan otentikasi
dan integritas yang bertentangan dengan integritas yang adil. AEAD mengikat data terkait
(AD) ke ciphertext dan ke konteks di mana ia seharusnya muncul, sehingga upaya untuk
"memotong dan menempel" ciphertext yang valid ke dalam konteks yang berbeda terdeteksi
dan ditolak. Ini diperlukan, misalnya, dengan paket jaringan. Header membutuhkan integritas
, tetapi harus terlihat; payload, sebaliknya, membutuhkan integritas dan juga kerahasiaan .
Keduanya membutuhkan keaslian.

2.3 Pendekatan Untuk Authenticated Encryption

2.3.1 Encrypt-then-MAC (EtM)

Plaintext pertama kali dienkripsi, kemudian MAC diproduksi berdasarkan


ciphertext yang dihasilkan. Ciphertext dan MAC-nya dikirim bersamaan. Digunakan
dalam, misalnya, IPsec. Metode standar menurut ISO / IEC 19772: 2009. Ini adalah
satu-satunya metode yang dapat mencapai definisi keamanan tertinggi di AE, tetapi
ini hanya dapat dicapai ketika MAC yang digunakan "sangat tidak bisa dijangkau".
Pada November 2014, ekstensi TLS dan DTLS untuk EtM telah diterbitkan sebagai
RFC 7366 . Berbagai ciphersuites EtM juga ada untuk SSHv2 (mis. Hmac-sha1-
etm@openssh.com).
Perhatikan bahwa pemisahan kunci adalah wajib (kunci berbeda harus
digunakan untuk enkripsi dan untuk hash yang dikunci), jika tidak maka berpotensi
tidak aman tergantung pada metode enkripsi spesifik dan fungsi hash yang digunakan

Gambar 1. EtM

2.3.2 Encrypt-and-MAC (E&M)

MAC diproduksi berdasarkan plaintext, dan plaintext dienkripsi tanpa MAC.


MAC plaintext dan ciphertext dikirim bersamaan. Digunakan dalam, misalnya, SSH.
Meskipun pendekatan E&M belum terbukti sangat tidak bisa dimaafkan,
dimungkinkan untuk menerapkan beberapa modifikasi kecil pada SSH untuk
membuatnya sangat tidak bisa dikalahkan meskipun ada pendekatan.

Gambar 1. E&M

vii
2.3.3 MAC-then-Encrypt (MtE)

MAC diproduksi berdasarkan plaintext, kemudian plaintext dan MAC


bersama-sama dienkripsi untuk menghasilkan ciphertext berdasarkan keduanya.
Ciphertext (berisi MAC terenkripsi) dikirimkan. Digunakan dalam, misalnya, SSL /
TLS. Meskipun pendekatan MtE belum terbukti sangat tidak bisa dimaafkan,
implementasi SSL / TLS telah terbukti sangat tidak bisa dikalahkan oleh Krawczyk
yang menunjukkan bahwa SSL / TLS sebenarnya aman karena pengkodean digunakan
bersama mekanisme MtE. Meskipun memiliki keamanan teoretis, analisis mendalam
SSL / TLS memodelkan perlindungan sebagai MAC-then-pad-then-encrypt, yaitu
plaintext yang pertama kali diisi dengan ukuran blok fungsi enkripsi. Kesalahan
padding sering mengakibatkan kesalahan terdeteksi pada sisi penerima, yang pada
gilirannya menyebabkan serangan padding oracle , seperti Lucky Thirteen .

Gambar 3. MtE

2.4 CCM / CCM mode (Counter with CBC-MAC)

Algoritma Counter with Cipher Block Chaining-Message Authentication Code


(CCM) diajukan oleh Doug Whiting, Russ Housley, dan Niels Ferguson pada tahun 2002.
CCM didasarkan pada algoritma blok kunci simetrik yang telah diakui dengan ukuran blok
128 bit, seperti algoritma AES yang dipublikasikan dalam FIPS 197. Berikut ini adalah
uraian lengkap mengenai algoritma CCM.
 Algoritma Blok untuk CCM

Algoritma blok yang akan mendasari CCM pada penelitian ini adalah
algoritma AES. CCM hanya memerlukan fungsi forward cipher dari AES. Kunci
CCM, disimbolkan dengan K, adalah kunci untuk algoritma AES. Fungsi forward
cipher dengan kunci ini dinyatakan dengan CIPHK, sedangkan panjang K dinyatakan
dengan Klen.

 Elemen-elemen Data

Data yang dilindungi CCM terdiri dari tiga elemen, yaitu:

1. Sebuah pesan atau data, yaitu suatu bitstring disebut payload (P), dengan
panjang bit Plen. P akan diotentikasi dan dienkripsi sehingga CCM
menyediakan jaminan keaslian dan kerahasiaan P.
2. Suatu bit string disebut associated data, (A). A bersifat opsional. A akan
diotentikasi tetapi tidak dienkripsi sehingga CCM hanya menyediakan jaminan
keaslian namun tidak memberikan jaminan kerahasiaan A.
3. Suatu bit string unik yang disebut nonce (N), diberikan pada pasangan data
yang akan dilindungi, yaitu P dan A. MAC yang dibangkitkan dalam CCM
dinyatakan dengan T. Panjang bit T, dinyatakan dengan Tlen, merupakan
suatu parameter yang akan ditetapkan untuk semua proses CCM dengan kunci
yang diberikan.

 Pemformatan Input

Elemen-elemen data CCM yaitu N, P, dan A akan diformat dengan sebuah


fungsi pemformatan menjadi rangkaian tak-kosong dari blok data lengkap, dinyatakan
dengan B0, B1, …, Br untuk r bilangan bulat tak-negatif. Nilai r tergantung pada
fungsi pemformatan dan elemen input. Tiga sifat berikut harus dimiliki oleh fungsi
pemformatan:

1. Blok pertama, B0, secara unik menentukan nonce N.


2. Data yang diformat secara unik menentukan P dan A; selain itu, jika (N, P, A)

dan (N, P', A') adalah input triplet yang berbeda dengan format B0, B1, …, Br

ix
dan B0', B1', …, Br'', maka Bi berbeda dari Bi' untuk indeks i sedemikian

sehingga i ≤ r dan i ≤ r'.

3. Blok pertama, B0, berbeda dari sembarang blok counter yang digunakan untuk
semua proses CCM menggunakan kunci yang diberikan.

 Fungsi Pemformatan

1. Syarat Panjang Peubah dalam CCM

Panjang bit untuk setiap string input, yaitu N, A, dan P, merupakan kelipatan
dari 8 bit, yaitu setiap string input merupakan string oktet. Panjang oktet dari
string ini dinyatakan dengan n, a, dan p. Demikian pula dengan parameter t yang
menyatakan panjang oktet T. Panjang oktet dari P (yaitu bilangan bulat p)
direpresentasikan dalam blok pertama dari data terformat sebagai sebuah string
oktet disimbolkan dengan Q. Panjang oktet Q yang dinyatakan dengan q, adalah
sebuah parameter untuk fungsi pemformatan. Jadi, Q ekuivalen dengan [p]8q,
representasi biner p dalam oktet q. Fungsi pemformatan yang digunakan dalam
penelitian ini mensyaratkan panjang dari peubah berikut:

o t adalah elemen dari {4, 6, 8, 10, 12, 14, 16}


o q adalah elemen dari {2, 3, 4, 5, 6, 7, 8}
o n adalah elemen dari {7, 8, 9, 10, 11, 12, 13}
o n + q = 15
o a < 264.

2. Pemformatan Kontrol Informasi dan Nonce

Oktet awal blok pertama dari pemformatan, B0, berisi empat flag (lihat Tabel
1) untuk mengontrol informasi: yaitu dua bit tunggal (disebut Reserved dan
Adata) dan dua string terdiri dari tiga bit yang digunakan untuk menyandikan nilai
t dan q. Penyandian t adalah [(t-2)/2]3, dan penyandian q adalah [q-1]3. Bit
Reserved dicadangkan untuk memungkinkan perluasan pemformatan di masa
mendatang dan akan di-set dengan nilai ‘0’. Bit Adata bernilai ‘0’ jika a = 0 dan
‘1’ jika a > 0. Tabel 2 memperlihatkan pemformatan B0.
Bit 7 6 5 4 3 2 1 0
Isi Reserved Adata [(t-2)/2]3 [q-1]3

Tabel 1. Pemformatan oktet flag dalam B0

Oktet 0 1... 15-q 16-q ... 15


Isi Flags N Q

Tabel 2. Pemformatan B0

3. Pemformatan Associated Data


Jika a = 0 maka tidak ada blok yang disediakan untuk associated data dalam
data yang diformat. Jika a > 0, maka a disandikan seperti dijelaskan di bawah ini,
dan sandi dari a digabung dengan associated data A, diikuti oleh jumlah minimum
bit-bit ‘0’ (mungkin juga tidak) sedemikian sehingga string yang dihasilkan bisa
dipartisi ke dalam 16-blok oktet. Blok-blok ini dinyatakan dalam data terformat
sebagai B1, B2, … Bu untuk u bilangan bulat positif yang tergantung dari nilai a.
Nilai a disandikan berdasarkan tiga kasus berikut:
o Jika 0 < a < 216-28, maka a disandikan sebagai [a]16, yaitu dua oktet.
o Jika 216-28 ≤ a < 232, maka a disandikan sebagai 0xff || 0xfe || [a]32, yaitu
enam oktet.
o Jika 232 ≤ a < 264, maka a disandikan sebagai 0xff || 0xff || [a]64, yaitu
sepuluh oktet.

4. Pemformatan Payload

Payload digabungkan dengan jumlah minimum bit-bit ‘0’ (mungkin juga tidak
ada) sedemikian sehingga hasilnya bisa dipartisi menjadi 16-blok oktet. Blok-blok
ini dinyatakan dalam data yang telah diformat sebagai Bu+1, Bu+2, … Br, dengan
r = u + ⎡p/16⎤.

 Fungsi Pembangkitan Counter

Blok-blok counter Ctri dibentuk seperti terlihat pada Tabel 3. Dalam setiap
blok Ctri, flag dibentuk seperti terlihat pada Tabel 4. Bit Reserved disediakan untuk
perluasan di masa mendatang dan akan di-set dengan nilai ‘0’. Bit 3, 4, dan 5 juga
akan di-set dengan nilai ‘0’ untuk memastikan bahwa semua blok counter berbeda
dari B0. Bit 0, 1, dan 2 berisi penyandian q yang sama seperti dalam B0.

xi
Oktet 0 1... 15-q 16-q ... 15
Isi Flags N [i]8q

Tabel 3. Pemformatan Ctri

Bit 7 6 5 4 3 2 1 0
Isi Reserved Reserved 0 0 0 [q-1]3

Tabel 4. Pemformatan oktet flag dalam Ctri

 Proses Generation-Encryption
Berikut ini adalah langkah-langkah proses generation-encryption CCM:
1. Jalankan fungsi pemformatan pada (N, A, P) untuk menghasilkan blok-blok B0,
B1, …, Br.
2. Tetapkan Y0 = CIPHK(B0).
3. Untuk i = 1 sampai dengan r, lakukan Yi = CIPHK(Bi ⊕ Yi-1).
4. T = MSBTlen(Yr).
5. Jalankan fungsi pembangkitan counter untuk membangkitkan blok-blok counter
Ctr0, Ctr1, …, Ctrm dengan m = ⎡Plen / 128⎤
6. Untuk j = 0 sampai dengan m, lakukan Sj = CIPHK(Ctrj).
7. S = S1 || S2 || …|| Sm.
8. C = (P ⊕ MSBPlen(S))||(T ⊕ MSBTlen(S0)).

Gambar 4. Proses generation-encryption CCM


 Proses Decryption-Verification
Berikut ini adalah langkah-langkah proses decryption-verification CCM:
1. Jika Clen < Tlen, maka kembalikan INVALID.
2. Jalankan fungsi pembangkitan counter untuk membangkitkan blok-blok counter
Ctr0, Ctr1,…, Ctrm, dengan m = ⎡(Clen - Tlen) / 128⎤
3. Untuk j = 0 sampai dengan m, lakukan Sj = CIPHK(Ctrj).
4. S = S1 || S2 || …|| Sm.

5. P = MSBClen-Tlen(C) ⊕ MSBClen-Tlen(S).

6. T = LSBTlen(C) ⊕ MSBTlen(S0).

7. Jika N, A, atau P tidak valid, maka kembalikan INVALID, selainnya lakukan


fungsi pemformatan pada (N, A, P) untuk menghasilkan blok-blok B0, B1, …, Br.
8. Tetapkan Y0 = CIPHK(B0).

9. Untuk i = 1 sampai dengan r, lakukan Yj = CIPHK(Bi ⊕ Yi-1).

10. Jika T ≠ MSBTlen(Yr), maka kembalikan INVALID, selainnya kembalikan P.

xiii
Gambar 5. Proses decryption-verification CCM

2.5 GCM / Galois Counter Mode

Modus operasi GCM menggunakan NIST standar SP 800-38D. Modus ini dirancang
untuk model paralel sehingga dapat memberikan throughput yang tinggi dengan biaya
rendah. Pesan dienkripsi dalam varian modus CTR. Ciphertext yang dihasilkan dikalikan
dengan key material dan panjang pesan untuk menghasilkan authenticator tag.

Modus GCM menggunakan dua fungsi utama yaitu:

 GHASH, yang merupakan fungsi keyed hash


 GCTR, modus CTR dengan counter operasi increment sederhana.

1. GHASH

Fungsi GHASH membutuhkan input berupa hash key H dan bit string X. Plaintext
di-XOR-kan dengan inputan dan kemudian dikalikan dengan key pada fungsi
GF(2128) untuk menghasilkan authenticator tag. Gambar 6 berikut adalah langkah
algoritma GHASH. Sedangkan ilustrasi proses GHASH dapat dilihat pada Gambar 7.

Gambar 6. Algoritma GHASH


Gambar 7. GHASH

2. GCTR

Langkah algoritma GHASH dapat dilihat pada Gambar 8. Sedangkan ilustrasi


proses GCTR dapat dilihat pada Gambar 9.

Gambar 8. Algoritma GCTR

xv
Gambar 9. GCTR

BAB III

PENUTUP

3.1 Kesimpulan

Inti dari keamanan komputer adalah melindungi komputer dan jaringannya dengan
tujuan mengamankan informasi yang berada di dalamnya. Mencegah terjadinya suatu
serangan terhadap sistem. Dengan demikian kita perlu memperhatikan desain dari sistem,
aplikasi yang dipakai, dan human (admin). Ketiga faktor tersebut merupakan cara yang baik
untuk mencegah terjadinya kebocoran sistem, serangan, dan lain-lain.

Beberapa orang sudah membuat password dengan menggabungkan beberapa jenis


karakter sehingga sulit untuk ditebak. Ini membuktikan bahwa mereka tidak ingin informasi
yang tersimpan didalamnya di-hack oleh pihak lain. Password yang mereka punya juga tidak
ditulis disembarang tempat atau diberikan kepada sembarang orang. Bentuk apa pun yang
membutuhkan validasi (login) untuk mengaksesnya, tidak akan dibiarkan terbuka jika ingin
ditinggalkan. Hanya pembatasan saja yang masih jarang ditemukan. Namun, tanpa mengerti
policy password, orang sudah mengerti bagaimana cara membuat password yang baik
sehingga otentikasinya kuat.
3.2 Saran

Begitu banyak teknik dalam mengamankan data dan informasi yang tersimpan pada
sebuah media penyimpanan di komputer. Teknik tersebut patut diterapkan apabila kita tidak
menginginkan terjadinya resiko kehilangan data penting. Namun, pemilihan teknik tersebut
perlu dilakukan dengan cermat.

Untuk yang mempunyai password dalam jumlah yang banyak, lebih baik memakai
password management daripada ditulis disuatu tempat.

xvii

Anda mungkin juga menyukai