Dokumen tersebut membahas tentang Advanced Encryption Standard (AES) yang merupakan standar kriptografi simetri baru yang ditetapkan oleh pemerintah AS pada tahun 2001. AES dikembangkan berdasarkan hasil lomba yang dimenangkan oleh algoritma Rijndael yang diciptakan oleh Vincent Rijmen dan Joan Daemen. AES mendukung panjang kunci 128, 192, dan 256 bit dan melakukan enkripsi blok data 128 bit melalui serangkaian transformasi seperti substitusi byte, ges
1. Metode Golden Section adalah metode optimisasi numerik untuk mencari nilai maksimum dan minimum suatu fungsi pada interval tertentu dengan mempersempit selang interval secara iteratif.
2. Metode ini digunakan untuk menentukan nilai minimum fungsi ((sin(x))x).arccos(1/x) pada interval [-5,-4] secara manual menggunakan 2 iterasi.
3. Hasil akhir menunjukkan nilai minimum fungsi tersebut adalah -4.6181.
Dokumen tersebut membahas fungsi Bessel, termasuk definisi, persamaan diferensial Bessel, fungsi Bessel jenis pertama dan kedua, rumus-rumus penting seperti rumus pengulangan dan asimtotik, serta sifat-sifat seperti nilai nol dan ketegaan-lurusan fungsi Bessel.
Distribusi binomial dan distribusi poissonSuci Agustina
Dokumen tersebut membahas tentang distribusi binomial dan distribusi Poisson. Distribusi binomial digunakan ketika proses sampling dapat diasumsikan sesuai dengan proses Bernoulli, sedangkan distribusi Poisson menyatakan peluang jumlah peristiwa yang terjadi pada periode waktu tertentu. Dokumen ini juga menjelaskan ciri-ciri, rumus, dan contoh soal distribusi binomial dan Poisson.
Modul ini membahas tentang kriptografi, yaitu ilmu yang mempelajari sistem pengkodean pesan rahasia. Sistem pengkodean rahasia didasarkan pada transformasi huruf menjadi bilangan dan sebaliknya menggunakan aritmetika modulo 26. Proses mengubah pesan biasa menjadi pesan rahasia disebut enkripsi, sedangkan proses sebaliknya disebut dekripsi."
1. Metode Golden Section adalah metode optimisasi numerik untuk mencari nilai maksimum dan minimum suatu fungsi pada interval tertentu dengan mempersempit selang interval secara iteratif.
2. Metode ini digunakan untuk menentukan nilai minimum fungsi ((sin(x))x).arccos(1/x) pada interval [-5,-4] secara manual menggunakan 2 iterasi.
3. Hasil akhir menunjukkan nilai minimum fungsi tersebut adalah -4.6181.
Dokumen tersebut membahas fungsi Bessel, termasuk definisi, persamaan diferensial Bessel, fungsi Bessel jenis pertama dan kedua, rumus-rumus penting seperti rumus pengulangan dan asimtotik, serta sifat-sifat seperti nilai nol dan ketegaan-lurusan fungsi Bessel.
Distribusi binomial dan distribusi poissonSuci Agustina
Dokumen tersebut membahas tentang distribusi binomial dan distribusi Poisson. Distribusi binomial digunakan ketika proses sampling dapat diasumsikan sesuai dengan proses Bernoulli, sedangkan distribusi Poisson menyatakan peluang jumlah peristiwa yang terjadi pada periode waktu tertentu. Dokumen ini juga menjelaskan ciri-ciri, rumus, dan contoh soal distribusi binomial dan Poisson.
Modul ini membahas tentang kriptografi, yaitu ilmu yang mempelajari sistem pengkodean pesan rahasia. Sistem pengkodean rahasia didasarkan pada transformasi huruf menjadi bilangan dan sebaliknya menggunakan aritmetika modulo 26. Proses mengubah pesan biasa menjadi pesan rahasia disebut enkripsi, sedangkan proses sebaliknya disebut dekripsi."
Bab ini membahas integral lipat dua pada berbagai koordinat dan daerah integrasi. Integral lipat dua digunakan untuk menghitung volume, pusat massa, dan momen inersia. Contoh soal mendemonstrasikan teknik penyelesaian integral lipat dua dengan merubah urutan integrasi sesuai bentuk daerah integrasinya.
Dokumen tersebut membahas tentang persamaan diferensial orde dua homogen dan non homogen. Secara garis besar dibahas tentang bentuk umum persamaan diferensial orde dua, solusi homogen, dan metode penyelesaian persamaan non homogen seperti metode koefisien tak tentu dan metode variasi parameter beserta contoh soalnya.
Dokumen tersebut membahas tentang hubungan antara primal dan dual dalam linear programming. Secara singkat, dokumen menjelaskan bahwa setiap masalah primal memiliki masalah dual terkait, dan solusi optimum primal memberikan solusi optimum dual. Dokumen juga memberikan contoh untuk memahami bentuk standar primal dan dual.
Dokumen tersebut membahas tentang Perencanaan dan Pengendalian Durasi Proyek (PDM) yang merupakan jaringan kerja yang menggambarkan kegiatan proyek beserta hubungan antar kegiatan. PDM memiliki kelebihan dibandingkan Network Flow Diagram (NWP) karena tidak memerlukan kegiatan fiktif dan hubungan overlapping dapat dibuat tanpa menambah kegiatan. Dokumen ini juga menjelaskan simbol-simbol dan kaidah dasar dalam membu
Persamaan Diferensial Biasa ( Kalkulus 2 )Kelinci Coklat
Dokumen tersebut membahas tentang persamaan diferensial biasa (PDB), yang didefinisikan sebagai persamaan yang memuat satu atau lebih turunan fungsi satu peubah bebas yang tidak diketahui. PDB dibedakan berdasarkan orde dan derajat turunan tertinggi yang terlibat. Ada beberapa jenis PDB dan cara penyelesaiannya, seperti PDB dengan variabel terpisah, PDB dengan koefisien fungsi homogen, dan PDB linear.
Dokumen tersebut membahas metode posisi palsu untuk menyelesaikan persamaan non-linear. Metode ini mempercepat konvergensi dari metode bagi dua dengan menentukan titik potong garis lurus antara dua titik awal yang memiliki nilai fungsi berlawanan tanda. Langkah-langkahnya meliputi penentuan nilai awal x1 dan x2, kalkulasi x3 berdasarkan rumus, dan penentuan subinterval baru berdasarkan tanda nilai fungsi x1 dan
Program Perkuliahan Dasar Umum Sekolah Tinggi Teknologi Telkom membahas tentang barisan dan deret, termasuk definisi barisan dan deret, kekonvergensian barisan dan deret, serta contoh-contoh soal.
Acceptance sampling untuk data variabelMahros Darsin
Dokumen tersebut membahas tentang acceptance sampling untuk data variabel. Dibahas mengenai keunggulan dan kelemahan metode sampling variabel dibandingkan dengan atribut, tipe-tipe rencana sampling variabel, dasar-dasar rencana sampling untuk variabel, serta peringatan dalam menggunakan metode tersebut. Juga dibahas mengenai standar military standard MIL STD 414 dan ANSI/ASQC Z1.9-1993 untuk rencana sampling variabel.
Presentasi ini merupakan presentasi power point yang memaparkan mengenai mesin frais, bor dan gurdi. Ketiga mesin tersebut merupakan permesinan yang sering digunakan pada proses produksi.
Dokumen tersebut membahas konsep dasar turunan, termasuk definisi turunan sebagai batas dari turunan rata-rata, hubungan antara turunan dengan kecepatan dan garis singgung, aturan pangkat untuk turunan fungsi pangkat, serta hubungan antara keberlangsungan dan kemampuan diferensiasi suatu fungsi. Diberikan juga contoh penghitungan turunan beberapa fungsi sederhana.
Metode sampling kerja adalah teknik untuk mengukur prosentase waktu yang digunakan untuk bekerja dan menganggur melalui pengamatan acak terhadap aktivitas pekerja. Metode ini digunakan untuk mengukur rasio penundaan, tingkat kinerja, dan waktu standar suatu proses. Prosedurnya meliputi pendefinisian aktivitas kerja dan menganggur, pengambilan contoh acak, pengamatan, dan analisis data untuk menghitung prosentase waktu
Dokumen tersebut membahas tentang algoritma kriptografi Advanced Encryption Standard (AES) yang merupakan standar baru pengganti DES. AES merupakan hasil lomba yang dimenangkan oleh algoritma Rijndael yang kemudian ditetapkan sebagai standar kriptografi baru oleh NIST pada tahun 2001.
Bab ini membahas integral lipat dua pada berbagai koordinat dan daerah integrasi. Integral lipat dua digunakan untuk menghitung volume, pusat massa, dan momen inersia. Contoh soal mendemonstrasikan teknik penyelesaian integral lipat dua dengan merubah urutan integrasi sesuai bentuk daerah integrasinya.
Dokumen tersebut membahas tentang persamaan diferensial orde dua homogen dan non homogen. Secara garis besar dibahas tentang bentuk umum persamaan diferensial orde dua, solusi homogen, dan metode penyelesaian persamaan non homogen seperti metode koefisien tak tentu dan metode variasi parameter beserta contoh soalnya.
Dokumen tersebut membahas tentang hubungan antara primal dan dual dalam linear programming. Secara singkat, dokumen menjelaskan bahwa setiap masalah primal memiliki masalah dual terkait, dan solusi optimum primal memberikan solusi optimum dual. Dokumen juga memberikan contoh untuk memahami bentuk standar primal dan dual.
Dokumen tersebut membahas tentang Perencanaan dan Pengendalian Durasi Proyek (PDM) yang merupakan jaringan kerja yang menggambarkan kegiatan proyek beserta hubungan antar kegiatan. PDM memiliki kelebihan dibandingkan Network Flow Diagram (NWP) karena tidak memerlukan kegiatan fiktif dan hubungan overlapping dapat dibuat tanpa menambah kegiatan. Dokumen ini juga menjelaskan simbol-simbol dan kaidah dasar dalam membu
Persamaan Diferensial Biasa ( Kalkulus 2 )Kelinci Coklat
Dokumen tersebut membahas tentang persamaan diferensial biasa (PDB), yang didefinisikan sebagai persamaan yang memuat satu atau lebih turunan fungsi satu peubah bebas yang tidak diketahui. PDB dibedakan berdasarkan orde dan derajat turunan tertinggi yang terlibat. Ada beberapa jenis PDB dan cara penyelesaiannya, seperti PDB dengan variabel terpisah, PDB dengan koefisien fungsi homogen, dan PDB linear.
Dokumen tersebut membahas metode posisi palsu untuk menyelesaikan persamaan non-linear. Metode ini mempercepat konvergensi dari metode bagi dua dengan menentukan titik potong garis lurus antara dua titik awal yang memiliki nilai fungsi berlawanan tanda. Langkah-langkahnya meliputi penentuan nilai awal x1 dan x2, kalkulasi x3 berdasarkan rumus, dan penentuan subinterval baru berdasarkan tanda nilai fungsi x1 dan
Program Perkuliahan Dasar Umum Sekolah Tinggi Teknologi Telkom membahas tentang barisan dan deret, termasuk definisi barisan dan deret, kekonvergensian barisan dan deret, serta contoh-contoh soal.
Acceptance sampling untuk data variabelMahros Darsin
Dokumen tersebut membahas tentang acceptance sampling untuk data variabel. Dibahas mengenai keunggulan dan kelemahan metode sampling variabel dibandingkan dengan atribut, tipe-tipe rencana sampling variabel, dasar-dasar rencana sampling untuk variabel, serta peringatan dalam menggunakan metode tersebut. Juga dibahas mengenai standar military standard MIL STD 414 dan ANSI/ASQC Z1.9-1993 untuk rencana sampling variabel.
Presentasi ini merupakan presentasi power point yang memaparkan mengenai mesin frais, bor dan gurdi. Ketiga mesin tersebut merupakan permesinan yang sering digunakan pada proses produksi.
Dokumen tersebut membahas konsep dasar turunan, termasuk definisi turunan sebagai batas dari turunan rata-rata, hubungan antara turunan dengan kecepatan dan garis singgung, aturan pangkat untuk turunan fungsi pangkat, serta hubungan antara keberlangsungan dan kemampuan diferensiasi suatu fungsi. Diberikan juga contoh penghitungan turunan beberapa fungsi sederhana.
Metode sampling kerja adalah teknik untuk mengukur prosentase waktu yang digunakan untuk bekerja dan menganggur melalui pengamatan acak terhadap aktivitas pekerja. Metode ini digunakan untuk mengukur rasio penundaan, tingkat kinerja, dan waktu standar suatu proses. Prosedurnya meliputi pendefinisian aktivitas kerja dan menganggur, pengambilan contoh acak, pengamatan, dan analisis data untuk menghitung prosentase waktu
Dokumen tersebut membahas tentang algoritma kriptografi Advanced Encryption Standard (AES) yang merupakan standar baru pengganti DES. AES merupakan hasil lomba yang dimenangkan oleh algoritma Rijndael yang kemudian ditetapkan sebagai standar kriptografi baru oleh NIST pada tahun 2001.
Teks dokumen membahas tentang sistem keamanan data dan kriptografi. Kriptografi digunakan untuk mengacak data agar tidak bisa dibaca pihak ketiga dengan menggunakan kunci enkripsi. Algoritma Rijndael populer yang menggunakan teknik subsitusi, permutasi, dan putaran untuk mengenkripsi dan mendekripsi data. Proses kriptografi Rijndael meliputi langkah-langkah seperti addroundkey, subbytes, shiftrows, mixcolumns,
Dokumen ini membahas algoritma kriptografi modern yang beroperasi dalam mode bit dan meliputi blok cipher, stream cipher, hash function, dan kriptografi kunci publik seperti RSA dan Diffie-Hellman. Algoritma-algoritma ini lebih rumit dari algoritma klasik dan menggunakan operasi XOR sebagai contoh algoritma enkripsi sederhana.
Dokumen tersebut membahas tentang keamanan jaringan dan kriptografi. Secara ringkas, dibahas mengenai:
1) Perlindungan jaringan melalui firewall dan password
2) Prinsip-prinsip kriptografi seperti enkripsi, dekripsi, dan kunci
3) Algoritma enkripsi konvensional seperti substitusi dan transposisi
Dokumen tersebut membahas tentang algoritma kriptografi modern yang beroperasi dalam mode bit. Algoritma ini menggunakan operasi XOR dan memblok-blokkan pesan menjadi bit sebelum dienkripsi menggunakan kunci rahasia. Salah satu contoh algoritmanya adalah enkripsi XOR sederhana.
Dokumen ini membahas tentang dasar-dasar sistem komputer meliputi konsep bit, byte, satuan data, satuan waktu dan frekuensi, sistem pengkodean karakter seperti ASCII, EBCDIC, dan Unicode, serta konversi antara sistem biner dan desimal. Terdapat tugas untuk mengkonversi nama, tempat dan tanggal lahir menjadi kode ASCII dan EBCDIC beserta representasinya dalam biner.
Ringkasan dokumen tersebut adalah:
1) Algoritma adalah urutan langkah logis untuk memecahkan masalah yang dapat dimengerti komputer
2) Terdiri dari tipe data, kondisional, looping, dan diagram alir seperti flowchart dan pseudocode
3) Digunakan untuk menulis program komputer
AES adalah algoritma enkripsi standar yang menggunakan kunci 128, 192, atau 256 bit untuk mengenkripsi blok data 128 bit melalui serangkaian operasi seperti substitusi, pergeseran baris, campuran kolom, dan penambahan kunci. AES digunakan sebagai pengganti DES karena keamanannya yang lebih baik.
Mikrokontroler memiliki CPU, RAM, ROM, dan I/O ports yang terintegrasi dalam satu chip. Mikrokontroler dirancang khusus untuk menjalankan satu tugas tertentu secara efisien.
Dokumen tersebut membahas sejarah dan teknologi mikroprosesor, mulai dari pengenalan mikroprosesor pertama oleh Intel pada tahun 1971 hingga perkembangan teknologi mikroprosesor Intel selanjutnya."
Similar to 19.advanced encryption standard (aes) (20)
Dokumen tersebut membahas tentang metode pengiriman form (POST dan GET) serta penggunaan session dalam PHP. Metode POST menyembunyikan variabel yang dikirim di alamat web, sedangkan metode GET menampilkan variabelnya. Session digunakan untuk menyimpan sementara variabel antar halaman dengan mendaftarkan, mengisi, dan menampilkan variabel session. Contoh koding mendemonstrasikan penggunaan form dengan metode POST, penyimpanan variabel ke session, dan penampil
Dokumen ini membahas penggunaan beberapa tag HTML penting untuk format tampilan dokumen seperti heading, paragraph, line break, dan daftar termasuk ordered list, unordered list, dan menu list.
The PHP script connects to a database to log website visitor statistics including the visitor's IP address, date, number of page hits, and time online. It checks if the IP address already exists for the current date, and if not, inserts a new entry, otherwise it updates the existing entry by incrementing the hits count and setting the online time. Various metrics are then calculated from the database like current visitors, total visitors, hits for the day, total hits, and current online users. These statistics are output in an HTML table.
Web/HTML Editor digunakan untuk membuat halaman web statis dan dinamis secara visual atau menggunakan teks editor. Editor web profesional menyediakan fitur yang mempercepat pembuatan halaman seperti GUI, otomatisasi kode, dan sambungan basis data. Browser menerjemahkan kode HTML menjadi tampilan yang diinginkan. Microsoft Internet Explorer, Firefox, dan Safari adalah contoh browser web. Ada dua model pembuatan halaman web statis yaitu secara lokal dan di server. Str
CSS digunakan untuk mengubah tampilan halaman website seperti warna dan format dengan mudah. CSS memungkinkan pengguna untuk mempercantik tampilan teks, tombol, tabel dan elemen lainnya. CSS dapat ditempatkan langsung di tag HTML, di dalam file HTML, atau di file CSS terpisah yang dapat digunakan untuk semua halaman website. Kelas CSS memungkinkan pengguna untuk menerapkan gaya yang sama pada elemen-elemen yang berbeda.
Dokumen ini membahas konsep dasar penggunaan basis data pada sistem berbasis web. Terdapat penjelasan tentang koneksi database, mengeksekusi query, dan fungsi-fungsi PHP untuk MySQL. Juga dijelaskan cara membuat database, tabel, dan file-file pendukung seperti config, connection, dan SQL. Selanjutnya dijelaskan cara menampilkan, menambahkan, mengubah, dan menghapus data kota pada tabel melalui beberapa file seperti form input, tampil, edit
This document discusses PHP control structures including if/else statements, switch statements, and looping structures like while, do-while and for loops.
If/else statements allow for conditional execution of code based on simple or compound expressions. Switch statements allow checking a variable against multiple case values.
While and do-while loops check a condition at the start or end of each loop iteration. For loops allow iterating with a counter variable through initialization, condition checking, and increment/decrement each loop.
HTML dikembangkan oleh Tim Berners-Lee di CERN dan dipopulerkan oleh browser Mosaic pada tahun 1990-an. HTML menggunakan tag yang diletakkan di antara tanda kurung siku untuk menandai teks dan elemen lainnya. Struktur dasar file HTML terdiri atas bagian Header dan Body.
The document discusses visualizing an HTML table containing poll results using Highcharts. It includes instructions to include necessary JavaScript libraries, initialize a chart on page load by passing the table and chart options to a Highcharts visualization function, and output the poll response counts from a database into the table. This will generate an interactive column chart of the poll results from the data in the HTML table.
ANALISIS PENGARUH INDUSTRI BATU BARA TERHADAP PENCEMARAN UDARA.pdfnarayafiryal8
Industri batu bara telah menjadi salah satu penyumbang utama pencemaran udara global. Proses ekstraksi batu bara, baik melalui penambangan terbuka maupun penambangan bawah tanah, menghasilkan debu dan gas beracun yang dilepaskan ke atmosfer. Gas-gas tersebut termasuk sulfur dioksida (SO2), nitrogen oksida (NOx), dan partikel-partikel halus (PM2.5) yang berbahaya bagi kesehatan manusia dan lingkungan. Selain itu, pembakaran batu bara di pembangkit listrik dan industri menyebabkan emisi karbon dioksida (CO2), yang merupakan penyebab utama perubahan iklim global dan pemanasan global.
Pencemaran udara yang disebabkan oleh industri batu bara juga memiliki dampak lokal yang signifikan. Di sekitar area penambangan, debu batu bara yang dihasilkan dapat mengganggu kesehatan masyarakat dan ekosistem lokal. Paparan terus-menerus terhadap debu batu bara dapat menyebabkan masalah pernapasan seperti asma dan bronkitis, serta berkontribusi pada penyakit paru-paru yang lebih serius. Selain itu, hujan asam yang disebabkan oleh emisi sulfur dioksida dapat merusak tanaman, air tanah, dan ekosistem sungai, mengancam keberlanjutan lingkungan di sekitar lokasi industri batu bara.
2. Rinaldi Munir/Prodi IF/STEI ITB
Latar Belakang
• DES dianggap sudah tidak aman.
• Perlu diusulkan standard algoritma baru sebagai
pengganti DES.
• National Institute of Standards and Technology
(NIST) mengusulkan kepada Pemerintah Federal AS
untuk sebuah standard kriptografi kriptografi yang
baru.
• NIST mengadakan lomba membuat standard
algoritma kriptografi yang baru. Standard tersebut
kelak diberi nama Advanced Encryption Standard
(AES).
3. Rinaldi Munir/Prodi IF/STEI ITB
• Persyaratan algoritma baru:
1. Termasuk ke dalam kelompok algoritma
kriptografi simetri berbasis cipher blok.
2. Seluruh rancangan algoritma harus publik
(tidak dirahasiakan)
3. Panjang kunci fleksibel: 128, 192, dan 256 bit.
4. Ukuran blok yang dienkripsi adalah 128 bit.
5. Algoritma dapat diimplementasikan baik
sebagai software maupun hardware.
4. Rinaldi Munir/Prodi IF/STEI ITB
Lima finalis lomba:
1. Rijndael (dari Vincent Rijmen dan Joan
Daemen – Belgia, 86 suara)
2. Serpent (dari Ross Anderson, Eli Biham, dan
Lars Knudsen – Inggris, Israel, dan Norwegia,
59 suara).
3. Twofish (dari tim yang diketuai oleh Bruce
Schneier – USA, 31 suara)
4. RC6 (dari Laboratorium RSA – USA, 23 suara)
5. MARS (dari IBM, 13 suara)
5. Rinaldi Munir/Prodi IF/STEI ITB
• Pada bulan Oktober 2000, NIST
mengumumkan untuk memilih Rijndael
(dibaca: Rhine-doll)
• Pada bulan November 2001, Rijndael
ditetapkan sebagai AES
• Diharapkan Rijndael menjadi standard
kriptografi yang dominan paling sedikit
selama 10 tahun.
6. Rinaldi Munir/Prodi IF/STEI ITB
Spesifikasi Algoritma Rijndael
• Rijndael mendukung panjang kunci 128 bit
sampai 256 bit dengan step 32 bit.
• Panjang kunci dan ukuran blok dapat dipilih
secara independen.
• Setiap blok dienkripsi dalam sejumlah putaran
tertentu, sebagaimana halnya pada DES.
• Karena AES menetapkan panjang kunci adalah
128, 192, dan 256, maka dikenal AES-128, AES-
192, dan AES-256.
7. Rinaldi Munir/Prodi IF/STEI ITB
• Secara de-fakto, hanya ada dua varian
AES, yaitu AES-128 dan AES-256, karena
akan sangat jarang pengguna
menggunakan kunci yang panjangnya 192
bit.
Panjang Kunci
(Nk words)
Ukuran Blok
(Nb words)
Jumlah Putaran
(Nr)
AES-128 4 4 10
AES-192 6 4 12
AES-256 8 4 14
Catatan: 1 word = 32 bit
8. Rinaldi Munir/Prodi IF/STEI ITB
• Dengan panjang kunci 128-bit, maka terdapat
sebanyak
2128
= 3,4 × 1038
kemungkinan kunci.
• Jika komputer tercepat dapat mencoba 1 juta
kunci setiap detik, maka akan dibutuhkan waktu
5,4 × 1024
tahun untuk mencoba seluruh kunci.
• Jika tercepat yang dapat mencoba 1 juta kunci
setiap milidetik, maka dibutuhkan waktu 5,4 ×
1018
tahun untuk mencoba seluruh kunci.
9. Rinaldi Munir/Prodi IF/STEI ITB
Algoritma Rijndael
• Tidak seperti DES yang berorientasi bit,
Rijndael beroperasi dalam orientasi byte.
• Setiap putaran mengunakan kunci internal
yang berbeda (disebut round key).
• Enciphering melibatkan operasi substitusi
dan permutasi.
10. Rinaldi Munir/Prodi IF/STEI ITB
• Garis besar Algoritma Rijndael yang beroperasi pada blok 128-bit dengan kunci 128-bit
adalah sebagai berikut (di luar proses pembangkitan round key):
1. AddRoundKey: melakukan XOR antara state awal (plainteks) dengan cipher key.
Tahap ini disebut juga initial round.
2. Putaran sebanyak Nr – 1 kali. Proses yang dilakukan pada setiap putaran adalah:
a. SubBytes: substitusi byte dengan menggunakan tabel substitusi (S-box).
b. ShiftRows: pergeseran baris-baris array state secara wrapping.
c. MixColumns: mengacak data di masing-masing kolom array state.
d. AddRoundKey: melakukan XOR antara state sekarang round key.
3. Final round: proses untuk putaran terakhir:
a. SubBytes
b. ShiftRows
c. AddRoundKey
12. Rinaldi Munir/Prodi IF/STEI ITB
#define LENGTH 16 /* Jumlah byte di dalam blok atau kunci */
#define NROWS 4 /* Jumlah baris di dalam state */
#define NCOLS 4 /* Jumlah kolom di dalam state */
#define ROUNDS 10 /* Jumlah putaran */
typedef unsigned char byte; /* unsigned 8-bit integer */
rijndael (byte plaintext[LENGTH], byte ciphertext[LENGTH],
byte key[LENGTH])
{
int r; /* pencacah pengulangan */
byte state[NROWS][NCOLS]; /* state sekarang */
struct{byte k[NROWS][NCOLS];} rk[ROUNDS + 1]; /* kunci pada setiap putaran */
KeyExpansion(key, rk); /* bangkitkan kunci setiap putaran */
CopyPlaintextToState(state, plaintext); /* inisialisasi
state sekarang */
AddRoundKey(state, rk[0]); /* XOR key ke dalam state */
for (r = 1; r<= ROUNDS - 1; r++)
{
SubBytes(state); /* substitusi setiap byte dengan S-box */
ShiftRows(state); /* rotasikan baris i sejauh i byte */
MixColumns(state); /* acak masing-masing kolom */
AddRoundKey(state, rk[r]); /* XOR key ke dalam state */
}
SubBytes(state); /* substitusi setiap byte dengan S-box */
ShiftRows(state); /* rotasikan baris i sejauh i byte */
AddRoundKey(state, rk[ROUNDS]); /* XOR key ke dalam state */
CopyStateToCiphertext(ciphertext, state); /* blok cipherteks yang dihasilkan */
}
13. Rinaldi Munir/Prodi IF/STEI ITB
Algoritma Rijndael mempunyai 3 parameter:
• 1. plaintext : array berukuran 16-byte,
yang berisi data masukan.
• 2. ciphertext : array berukuran 16-byte,
yang berisi hasil enkripsi.
• 3. key : array berukuran 16-byte, yang berisi
kunci ciphering (disebut juga cipher key).
• Dengan 16 byte, maka blok data dan kunci yang
berukuran 128-bit dapat disimpan di dalam array
(128 = 16 × 8).
14. Rinaldi Munir/Prodi IF/STEI ITB
• Selama kalkulasi plainteks menjadi
cipherteks, status sekarang dari data
disimpan di dalam array of bytes dua
dimensi, state, yang berukuran NROWS
× NCOLS.
• Untuk blok data 128-bit, ukuran state
adalah 4 × 4.
15. Rinaldi Munir/Prodi IF/STEI ITB
• Elemen array state diacu sebagai S[r,c],
0 ≤ r < 4 dan 0 ≤ c < Nb
(Nb adalah panjang blok dibagi 32.
Pada AES-128, Nb = 128/32 = 4)
P la in t e k s 1 2 8 - b it
s t a t e
16. Rinaldi Munir/Prodi IF/STEI ITB
• Pada awal enkripsi, 16-byte data masukan, in0
, in1
, …, in15
disalin ke dalam array state (direalisasikan oleh
fungsi:
CopyPlaintextToState(state, plaintext))
• Operasi enkripsi/dekripsi dilakukan terhadap array S, dan
keluarannya ditampung didalam array out.
in 8
in 7
in 3
in 4
in 6
in 5
in 0
in 1
in 2
in 9
in 1 0
in 1 1
in 1 2
in 1 3
in 1 4
in 1 5
S 0 , 2
S 3 , 1
S 3 , 0
S 0 , 1
S 2 , 1
S 1 , 1
S 0 , 0
S 1 , 0
S 2 , 0
S 1 , 2
S 2 , 2
S 3 , 2
S 0 , 3
S 1 , 3
S 2 , 3
S 3 , 3
o u t 8
o u t7
o u t3
o u t4
o u t6
o u t5
o u t0
o u t1
o u t2
o u t 9
o u t 1 0
o u t 1 1
o u t 1 2
o u t 1 3
o u t 1 4
o u t 1 5
in p u t b y t e s s t a t e a r r a y o u t p u t b y t e s
20. Rinaldi Munir/Prodi IF/STEI ITB
Transformasi ShiftRows()
• Transformasi ShiftRows() melakukan
pergeseran secara wrapping (siklik) pada 3
baris terakhir dari array state.
• Jumlah pergeseran bergantung pada nilai
baris (r). Baris r = 1 digeser sejauh 1 byte,
baris r = 2 digeser sejauh 2 byte, dan baris
r = 3 digeser sejauh 3 byte. Baris r = 0
tidak digeser.
27. Rinaldi Munir/Prodi IF/STEI ITB
Transformasi AddRoundKey()
• Transformasi ini melakukan operasi XOR
terhadap sebuah round key dengan array
state, dan hasilnya disimpan di array state.
32. Rinaldi Munir/Prodi IF/STEI ITB
URL yang terkait dengan AES:
1. AES Homepage, http://www.nist.gov/CryptoToolkit
2. J. Daemen, V. Rijmen, AES Proposal: Rijndael,
http://www.esat.kuleuven.ac.be/~rizmen/
33. Rinaldi Munir/Prodi IF/STEI ITB
Beberapa algoritma kriptografi simetri:
Cipher Pembuat Panjang Kunci Keterangan
Blowfish Bruce Schneier 1 – 448 bit Old and slow
DES IBM 56 bit Too weak to use now
IDEA Massey dan Xuejia 128 bit Good, but patented
RC4 Ronald Rivest 1 – 2048 bit Caution: some keys
are weak
RC5 Ronald Rivest 128 – 256 bit Good, but patented
Rijndael Daemen dan Rijmen 128 – 256 bit Best choice
Serpent Anderson, Biham, Knudsen 128 – 256 bit Very strong
Triple DES IBM 168 bit Second best choice
Twofish Bruce Schneier 128 – 256 bit Very strong; widely
used