Jakarta Aktual
Jakarta Aktual

Berita Aktual dan Faktual

Jakarta Aktual
Jakarta Aktual© 2026
Jakarta Aktual
Jakarta Aktual

Berita Aktual dan Faktual

BerandaWikiKotak-S Rijndael
Artikel Wikipedia

Kotak-S Rijndael

Kotak-S Rijndael adalah kotak substitusi yang dipakai dalam penyandian Rijndael. Standar Enkripsi Lanjutan (AES) berdasar pada penyandian Rijndael sehingga juga memakai kotak substitusi ini.

Wikipedia article
Diperbarui 2 Agustus 2024

Sumber: Lihat artikel asli di Wikipedia

Kotak-S Rijndael adalah kotak substitusi (tabel pencarian) yang dipakai dalam penyandian Rijndael.[1] Standar Enkripsi Lanjutan (AES) berdasar pada penyandian Rijndael sehingga juga memakai kotak substitusi ini.

Kotak-S

[icon]
Bagian ini memerlukan pengembangan. Anda dapat membantu dengan mengembangkannya.

Kotak-S memetakan nilai 8 bit, c, ke keluaran 8 bit, s = S(c).

Kotak-S AES
000102030405060708090a0b0c0d0e0f
00 637c777bf26b6fc53001672bfed7ab76
10 ca82c97dfa5947f0add4a2af9ca472c0
20 b7fd9326363ff7cc34a5e5f171d83115
30 04c723c31896059a071280e2eb27b275
40 09832c1a1b6e5aa0523bd6b329e32f84
50 53d100ed20fcb15b6acbbe394a4c58cf
60 d0efaafb434d338545f9027f503c9fa8
70 51a3408f929d38f5bcb6da2110fff3d2
80 cd0c13ec5f974417c4a77e3d645d1973
90 60814fdc222a908846eeb814de5e0bdb
a0 e0323a0a4906245cc2d3ac629195e479
b0 e7c8376d8dd54ea96c56f4ea657aae08
c0 ba78252e1ca6b4c6e8dd741f4bbd8b8a
d0 703eb5664803f60e613557b986c11d9e
e0 e1f8981169d98e949b1e87e9ce5528df
f0 8ca1890dbfe6426841992d0fb054bb16
Tiap kolom ditentukan oleh nilai tempat satuan (nibel bawah) dan tiap baris ditentukan oleh nilai tempat enam belasan (nibel atas). Misalnya, 9a16 diubah ke b816.

Inversi kotak-S

[icon]
Bagian ini memerlukan pengembangan. Anda dapat membantu dengan mengembangkannya.

Inversi kotak-S sejatinya adalah kotak-S yang dibalik pemetaannya. Misal, b816 dikembalikan ke 9a16.

Inversi kotak-S
000102030405060708090a0b0c0d0e0f
00 52096ad53036a538bf40a39e81f3d7fb
10 7ce339829b2fff87348e4344c4dee9cb
20 547b9432a6c2233dee4c950b42fac34e
30 082ea16628d924b2765ba2496d8bd125
40 72f8f66486689816d4a45ccc5d65b692
50 6c704850fdedb9da5e154657a78d9d84
60 90d8ab008cbcd30af7e45805b8b34506
70 d02c1e8fca3f0f02c1afbd0301138a6b
80 3a9111414f67dcea97f2cfcef0b4e673
90 96ac7422e7ad3585e2f937e81c75df6e
a0 47f11a711d29c5896fb7620eaa18be1b
b0 fc563e4bc6d279209adbc0fe78cd5af4
c0 1fdda8338807c731b11210592780ec5f
d0 60517fa919b54a0d2de57a9f93c99cef
e0 a0e03b4dae2af5b0c8ebbb3c83539961
f0 172b047eba77d626e169146355210c7d

Kriteria desain

Kotak-S Rijndael didesain khusus untuk tahan terhadap serangan analisis kriptografi linear dan diferensial. Caranya adalah dengan meminimalkan kolerasi transformasi linear antara masukan dan keluaran sekaligus meminimalkan peluang rambantan selisih.

Kotak-S Rijndael dapat ditukar dalam penyandian Rijndael.[1] Hal tersebut melemahkan tuduhan bahwa suatu pintu belakang dibuat dengan menggunakan kotak-S statis. Para pembuat mengeklaim bahwa struktur penyandian Rijndael seharusnya sudah cukup tahan terhadap analisis kriptografi linear dan diferensial jika kotak-S yang memiliki sifat korelasi/rambatan selisih "rata-rata" dipakai.

Contoh implementasi dalam bahasa C

Kode C berikut menghitung nilai kotak-S.

#include <stdint.h>

#define ROTL8(x,shift) ((uint8_t) ((x) << (shift)) | ((x) >> (8 - (shift))))

void initialize_aes_sbox(uint8_t sbox[256]) {
	uint8_t p = 1, q = 1;

	/* perulangan: p * q == 1 dalam medan Galois */
	do {
		/* kalikan p dengan 3 */
		p = p ^ (p << 1) ^ (p & 0x80 ? 0x1B : 0);

		/* bagi q dengan 3 (sama dengan perkalian dengan 0xf6) */
		q ^= q << 1;
		q ^= q << 2;
		q ^= q << 4;
		q ^= q & 0x80 ? 0x09 : 0;

		/* hitung transformasi afinnya */
		uint8_t xformed = q ^ ROTL8(q, 1) ^ ROTL8(q, 2) ^ ROTL8(q, 3) ^ ROTL8(q, 4);

		sbox[p] = xformed ^ 0x63;
	} while (p != 1);

	/* 0 adalah kasus khusus karena ia tidak memiliki inversi */
	sbox[0] = 0x63;
}

Referensi

  1. 1 2 "The Rijndael Block Cipher" (PDF). Diakses tanggal 11 November 2013.

Bagikan artikel ini

Share:

Daftar Isi

  1. Kotak-S
  2. Inversi kotak-S
  3. Kriteria desain
  4. Contoh implementasi dalam bahasa C
  5. Referensi

Artikel Terkait

Kotak-S

komponen dasar yang melakukan pertukaran (substitusi) dalam algoritme kunci simetris

Standar Enkripsi Lanjutan

standar penyandian/enkripsi blok

Jaringan substitusi–permutasi

susunan desain sandi

Jakarta Aktual
Jakarta Aktual© 2026