<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Security on kenji.blog</title><link>http://kenji.blog/id/tags/security/</link><description>Recent content in Security on kenji.blog</description><generator>Hugo -- gohugo.io</generator><language>id</language><copyright>kenjinote</copyright><lastBuildDate>Fri, 11 Sep 2026 17:00:00 +0900</lastBuildDate><atom:link href="http://kenji.blog/id/tags/security/index.xml" rel="self" type="application/rss+xml"/><item><title>Bagaimana Blockchain dan Mata Uang Kripto Berubah di Era Pasca-Kuantum?</title><link>http://kenji.blog/id/p/post-quantum-blockchain-and-crypto/</link><pubDate>Fri, 11 Sep 2026 17:00:00 +0900</pubDate><guid>http://kenji.blog/id/p/post-quantum-blockchain-and-crypto/</guid><description>&lt;img src="http://kenji.blog/p/post-quantum-blockchain-and-crypto/img/eyecatch.jpg" alt="Featured image of post Bagaimana Blockchain dan Mata Uang Kripto Berubah di Era Pasca-Kuantum?" />&lt;h2 id="1-pendahuluan-langkah-era-pasca-kuantum-dan-krisis-blockchain">1. Pendahuluan: Langkah Era Pasca-Kuantum dan Krisis Blockchain
&lt;/h2>&lt;p>Sejak Bitcoin diciptakan oleh Satoshi Nakamoto pada tahun 2009, teknologi blockchain telah berkembang menjadi fondasi sistem keuangan dan aplikasi di seluruh dunia sebagai &amp;ldquo;buku besar yang terdesentralisasi dan tidak dapat diubah&amp;rdquo;. Keamanan yang kuat ini didukung oleh teknologi kriptografi modern yaitu &lt;strong>Kriptografi Kunci Publik (Public Key Cryptography)&lt;/strong> dan &lt;strong>Fungsi Hash Kriptografi (Cryptographic Hash Functions)&lt;/strong>.&lt;/p>
&lt;p>Teknologi kriptografi ini menjamin keamanan berdasarkan &amp;ldquo;kesulitan komputasi&amp;rdquo; matematis, di mana komputer klasik (PC dan superkomputer yang kita gunakan saat ini) tidak akan dapat memecahkannya bahkan jika menghabiskan waktu selama umur alam semesta.&lt;/p>
&lt;p>Namun, premis ini akan segera runtuh dari akarnya akibat perkembangan pesat dan komersialisasi &lt;strong>Komputer Kuantum (Quantum Computers)&lt;/strong>, yang merupakan batas terdepan dari fisika dan ilmu informasi. Komputer kuantum, yang memanfaatkan &amp;ldquo;Superposisi (Superposition)&amp;rdquo; dan &amp;ldquo;Keterikatan Kuantum (Entanglement)&amp;rdquo; khusus untuk mekanika kuantum, menunjukkan daya komputasi yang mengalahkan komputer klasik konvensional dalam masalah matematika tertentu, yang disebut &amp;ldquo;Keunggulan Kuantum (Quantum Supremacy)&amp;rdquo;.&lt;/p>
&lt;p>Dalam artikel ini, kami akan menjelaskan secara mendalam dari perspektif teknis dan matematis tentang ancaman spesifik apa yang dihadapi teknologi blockchain dari komputer kuantum, serta tren terbaru dalam &lt;strong>Kriptografi Pasca-Kuantum (PQC: Post-Quantum Cryptography)&lt;/strong> yang akan menjadi solusinya, dan skenario transisi untuk jaringan aset kripto.&lt;/p>
&lt;hr>
&lt;h2 id="2-dasar-dasar-komputer-kuantum-dan-2-ancaman-utama-terhadap-blockchain">2. Dasar-dasar Komputer Kuantum dan 2 Ancaman Utama terhadap Blockchain
&lt;/h2>&lt;p>Sistem blockchain saat ini pada dasarnya terdiri dari dua elemen kriptografi berikut, yang masing-masing terpapar pada ancaman berbeda oleh algoritma kuantum.&lt;/p>
&lt;div class="mermaid">graph TD
A["Daya komputasi komputer kuantum yang luar biasa"] --> B["Algoritma Shor (Shor's Algorithm)"]
A --> C["Algoritma Grover (Grover's Algorithm)"]
B --> D["Runtuhnya Kriptografi Kunci Publik (ECDSA/RSA/DSA)"]
C --> E["Dampak pada Fungsi Hash Kriptografi (SHA-256)"]
D --> F["Identifikasi kunci privat orang lain &amp; Pemalsuan transaksi"]
E --> G["Keunggulan penambangan PoW &amp; Serangan pada sebagian alamat"]
F --> H["Ancaman fatal dan langsung pada blockchain"]
G --> I["Ancaman yang dapat diatasi dengan penyesuaian algoritma (misalnya perpanjangan panjang kunci)"]
style H fill:#ff9999,stroke:#cc0000,stroke-width:2px;
style I fill:#ffff99,stroke:#cccc00,stroke-width:2px;&lt;/div>
&lt;h3 id="21-dasar-dan-kesulitan-komputasi-kriptografi-kurva-eliptik-ecdsa">2.1. Dasar dan Kesulitan Komputasi Kriptografi Kurva Eliptik (ECDSA)
&lt;/h3>&lt;p>Banyak blockchain, termasuk Bitcoin dan Ethereum, menggunakan &lt;strong>Algoritma Tanda Tangan Digital Kurva Eliptik (ECDSA: Elliptic Curve Digital Signature Algorithm)&lt;/strong> sebagai algoritma tanda tangan digital. Secara khusus, Bitcoin menggunakan kurva eliptik dengan parameter &lt;code>secp256k1&lt;/code>.&lt;/p>
&lt;p>Keamanan kriptografi kurva eliptik bergantung pada kesulitan komputasi dari &lt;strong>Masalah Logaritma Diskrit Kurva Eliptik (ECDLP: Elliptic Curve Discrete Logarithm Problem)&lt;/strong>.
Kurva eliptik didefinisikan oleh persamaan dalam bentuk standar Weierstrass berikut.&lt;/p>
$$
y^2 \equiv x^3 + ax + b \pmod{p}
$$
&lt;p>Pada &lt;code>secp256k1&lt;/code> Bitcoin, $a = 0, b = 7$, dan $p$ adalah bilangan prima yang sangat besar.
Misalkan titik dasar (base point) pada kurva ini adalah $G$, dan kunci privat adalah bilangan bulat raksasa 256-bit yang dipilih secara acak $k$. Pada saat ini, kunci publik $K$ diperoleh dengan menambahkan titik dasar sebanyak $k$ kali (perkalian skalar).&lt;/p>
$$
K = k \times G = \underbrace{G + G + \dots + G}_{k \text{ times}}
$$
&lt;p>Menghitung mundur (mencari logaritma diskrit) kunci privat $k$ dari kunci publik yang dipublikasikan $K$ dan titik dasar $G$ menggunakan komputer klasik akan memakan waktu komputasi eksponensial $\mathcal{O}(\sqrt{p})$ bahkan menggunakan algoritma klasik terbaik seperti metode faktorisasi rho Pollard. Untuk kunci 256-bit, diperlukan sekitar $2^{128}$ operasi, yang merupakan tingkat yang tidak dapat dipecahkan bahkan jika superkomputer saat ini dioperasikan selama miliaran tahun.&lt;/p>
&lt;h3 id="22-keruntuhan-oleh-algoritma-shor-shors-algorithm">2.2. Keruntuhan oleh Algoritma Shor (Shor&amp;rsquo;s Algorithm)
&lt;/h3>&lt;p>Namun, &lt;strong>Algoritma Shor&lt;/strong> yang diumumkan oleh Peter Shor pada tahun 1994, menghancurkan premis ini sepenuhnya. Algoritma Shor pada awalnya diusulkan untuk memecahkan masalah faktorisasi prima (dasar kriptografi RSA) dalam waktu polinomial, tetapi algoritma ini juga dapat diterapkan pada masalah logaritma diskrit dan masalah logaritma diskrit kurva eliptik.&lt;/p>
&lt;p>Inti dari Algoritma Shor terletak pada penggunaan &lt;strong>Transformasi Fourier Kuantum (QFT: Quantum Fourier Transform)&lt;/strong> untuk menemukan &amp;ldquo;Periode (Period)&amp;rdquo; dari suatu fungsi dengan kecepatan tinggi.&lt;/p>
$$
\text{Kompleksitas komputasi klasik} = \mathcal{O}(2^{n/2}) \quad (n\text{ adalah panjang bit})
$$
$$
\text{Kompleksitas algoritma kuantum} = \mathcal{O}(n^3)
$$
&lt;p>Dengan cara ini, Algoritma Shor secara dramatis mempersingkat waktu eksponensial menjadi &lt;strong>Waktu Polinomial (Polynomial Time)&lt;/strong>. Setelah komputer kuantum dengan qubit logis yang memadai selesai dibangun, akan memungkinkan untuk mengidentifikasi kunci privat $k$ dalam beberapa menit atau detik dari kunci publik $K$ yang dipublikasikan di jaringan. Akibatnya, penyerang dapat dengan mudah mendapatkan kunci privat dompet orang lain dan sepenuhnya mengendalikan dana mereka.&lt;/p>
&lt;h4 id="221-langkah-demi-langkah-pemecahan-ecdlp-oleh-algoritma-shor">2.2.1 Langkah-demi-Langkah Pemecahan ECDLP oleh Algoritma Shor
&lt;/h4>&lt;p>Mari kita ikuti langkah demi langkah bagaimana komputer kuantum memecahkan Masalah Logaritma Diskrit Kurva Eliptik (ECDLP).&lt;/p>
&lt;p>Pengaturan masalah: Dalam $K = k \times G$, $G$ dan $K$ diketahui, dan kita ingin mencari bilangan bulat $k$ (kunci privat) yang tidak diketahui. Misalkan orde dari kurva eliptik adalah $N$.&lt;/p>
&lt;p>&lt;strong>Langkah 1: Membuat Status Superposisi&lt;/strong>
Pertama, siapkan dua register kuantum dan terapkan Gerbang Hadamard (Hadamard Gate) pada masing-masingnya untuk membuat status superposisi dari semua kombinasi bilangan bulat yang mungkin.
&lt;/p>
$$
|\psi_1\rangle = \frac{1}{N} \sum_{x=0}^{N-1} \sum_{y=0}^{N-1} |x\rangle |y\rangle |0\rangle
$$
&lt;p>&lt;strong>Langkah 2: Menerapkan Oracle Kuantum (Evaluasi Fungsi)&lt;/strong>
Selanjutnya, dengan menggunakan sirkuit kuantum (oracle) yang melakukan penambahan titik pada kurva eliptik, hitung fungsi $f(x, y) = x \times G + y \times K$ ke dalam register ketiga.
&lt;/p>
$$
|\psi_2\rangle = \frac{1}{N} \sum_{x=0}^{N-1} \sum_{y=0}^{N-1} |x\rangle |y\rangle |x \times G + y \times K\rangle
$$
&lt;p>
Hal penting di sini adalah, karena $K = k \times G$, maka dapat ditulis ulang sebagai $f(x, y) = (x + y \cdot k) \times G$.&lt;/p>
&lt;p>&lt;strong>Langkah 3: Pengukuran Register Ketiga&lt;/strong>
Ketika mengukur register ketiga, status akan menyusut ke titik $R$ pada suatu kurva eliptik tertentu. Akibatnya, register pertama dan kedua menyusut ke status superposisi dari pasangan $(x, y)$ yang memenuhi $x + y \cdot k \equiv c \pmod{N}$ ($c$ adalah konstanta).
&lt;/p>
$$
|\psi_3\rangle = \frac{1}{\sqrt{N}} \sum_{y=0}^{N-1} |c - y \cdot k \pmod{N}\rangle |y\rangle
$$
&lt;p>&lt;strong>Langkah 4: Menerapkan Transformasi Fourier Kuantum (QFT)&lt;/strong>
Status ini memiliki periodisitas yang berkaitan dengan periode $k$. Dengan menerapkan Transformasi Fourier Kuantum Invers (Inverse QFT) pada titik ini, hal itu menyebabkan interferensi fase dan mengubah informasi periode menjadi amplitudo.&lt;/p>
&lt;p>&lt;strong>Langkah 5: Pengukuran dan Pasca-pemrosesan Klasik&lt;/strong>
Ketika mengukur register pertama dan kedua, dengan probabilitas tinggi akan diperoleh nilai yang berisi informasi tentang $k$. Dengan menerapkan algoritma teori bilangan klasik seperti Ekspansi Fraksi Berlanjut (Continued Fractions) pada nilai yang diukur, kunci privat $k$ yang tidak diketahui dapat diidentifikasi sepenuhnya.&lt;/p>
&lt;p>Jumlah gerbang kuantum yang diperlukan dalam seluruh proses ini adalah $\mathcal{O}(\log^3 N)$, yang akan mengungkapkan kunci privat dengan kecepatan super tinggi yang tidak sebanding dengan pencarian $\mathcal{O}(\sqrt{N})$ oleh komputer klasik.&lt;/p>
&lt;h3 id="23-algoritma-grover-grovers-algorithm-dan-dampak-pada-fungsi-hash">2.3. Algoritma Grover (Grover&amp;rsquo;s Algorithm) dan Dampak pada Fungsi Hash
&lt;/h3>&lt;p>Ancaman lainnya adalah &lt;strong>Algoritma Grover&lt;/strong>, yang diusulkan oleh Lov Grover pada tahun 1996. Ini berdampak besar pada fungsi hash (misalnya SHA-256).&lt;/p>
&lt;p>Dalam blockchain, fungsi hash digunakan untuk memastikan integritas data, menghasilkan alamat, dan sebagai dasar penambangan &lt;strong>PoW (Proof of Work)&lt;/strong> pada Bitcoin. Perhitungan mundur dari fungsi hash (komputasi pracitra) dapat dianggap sebagai &amp;ldquo;masalah pencarian basis data tidak terstruktur&amp;rdquo; untuk menemukan nilai input $x$ sehingga $H(x) = y$ untuk nilai output tertentu $y$.&lt;/p>
&lt;p>Dalam komputer klasik, diperlukan rata-rata $\frac{N}{2}$ percobaan, dan paling banyak $N$ percobaan, untuk menemukan jawaban yang benar dari $N$ kemungkinan. Artinya, kompleksitas komputasi adalah $\mathcal{O}(N)$.
Namun, algoritma Grover menggunakan teknologi kuantum yang disebut &amp;ldquo;Amplifikasi Amplitudo (Amplitude Amplification)&amp;rdquo;. Dengan memperkuat amplitudo probabilitas status yang menjadi jawaban yang benar secara iteratif dari semua kemungkinan dalam status superposisi, waktu pencarian dipersingkat menjadi akar kuadrat.&lt;/p>
$$
\text{Kompleksitas Algoritma Grover} = \mathcal{O}(\sqrt{N})
$$
&lt;p>Dalam kasus SHA-256, karena $N = 2^{256}$, pencarian brute-force klasik membutuhkan sekitar $2^{256}$ percobaan. Namun, dengan algoritma Grover, hanya diperlukan $\sqrt{2^{256}} = 2^{128}$ percobaan. Ini berarti fungsi hash 256-bit akan dibelah dua menjadi &lt;strong>kekuatan keamanan yang efektif sebesar 128-bit&lt;/strong> terhadap komputer kuantum.&lt;/p>
&lt;h4 id="231-akankah-sha-256-bertahan-quantum-supremacy-in-hashing">2.3.1. Akankah SHA-256 Bertahan? (Quantum Supremacy in Hashing)
&lt;/h4>&lt;p>Bahkan jika keamanannya dibelah dua, &amp;ldquo;keamanan 128-bit&amp;rdquo; masih sangat kuat. Sebanyak $2^{128}$ operasi merupakan angka astronomis bahkan dari tingkat teknologi saat ini dan membutuhkan skala waktu setara umur alam semesta.
Oleh karena itu, secara luas diyakini bahwa &lt;strong>&amp;ldquo;SHA-256 akan mempertahankan keamanan praktisnya bahkan terhadap komputer kuantum&amp;rdquo;&lt;/strong>. Jika diperlukan untuk meningkatkan margin keamanan di masa depan, kita cukup menggandakan panjang keluaran hash (misalnya transisi dari SHA-256 ke SHA-512) untuk mempertahankan keamanan klasik 256-bit di dunia kuantum.&lt;/p>
&lt;p>Kesimpulannya, ancaman kuantum terhadap fungsi hash &amp;ldquo;ringan dan dapat diatasi&amp;rdquo;, sedangkan ancaman terhadap kriptografi kunci publik (ECDSA) adalah &amp;ldquo;fatal&amp;rdquo;.&lt;/p>
&lt;hr>
&lt;h2 id="3-analisis-dampak-spesifik-pada-aset-kripto-saat-ini-bitcoin-ethereum">3. Analisis Dampak Spesifik pada Aset Kripto Saat Ini (Bitcoin, Ethereum)
&lt;/h2>&lt;p>Di dunia di mana komputer kuantum dapat memecahkan ECDSA, kerentanan spesifik apa yang akan dihadapi oleh jaringan aset kripto? Di sini, dengan menggunakan mekanisme Bitcoin sebagai contoh, kita akan melakukan analisis terperinci dari perspektif &lt;strong>&amp;ldquo;waktu pemaparan kunci publik&amp;rdquo;&lt;/strong>.&lt;/p>
&lt;h3 id="31-pembuatan-alamat-dan-sifat-tertutup-dari-kunci-publik">3.1. Pembuatan Alamat dan Sifat &amp;ldquo;Tertutup&amp;rdquo; dari Kunci Publik
&lt;/h3>&lt;p>Alamat Bitcoin (seperti P2PKH: Pay-to-Public-Key-Hash atau P2WPKH: Pay-to-Witness-Public-Key-Hash) tidak menggunakan kunci publik itu sendiri, melainkan hash dari kunci publik yang diproses beberapa kali.&lt;/p>
$$
\text{Bitcoin Address} = \text{Base58Check}(\text{RIPEMD160}(\text{SHA256}(\text{Public Key})))
$$
&lt;p>Seperti disebutkan di atas, karena fungsi hash tahan terhadap serangan kuantum (Algoritma Grover), komputer kuantum tidak dapat menghitung mundur &amp;ldquo;kunci publik&amp;rdquo; asli dari &amp;ldquo;alamat&amp;rdquo; yang merupakan nilai hash.
Artinya, untuk &lt;strong>&amp;ldquo;alamat yang belum digunakan (alamat yang belum pernah mengirim dana sekalipun)&amp;rdquo;&lt;/strong>, kunci publik sama sekali tidak diekspos di blockchain, dan hanya nilai hash yang dicatat. Oleh karena itu, selama kunci publik tidak diketahui, tidak ada target untuk menjalankan algoritma Shor, dan kunci privat tidak dapat diidentifikasi. Dompet dalam status ini dapat dikatakan aman secara kuantum (Quantum-safe).&lt;/p>
&lt;h3 id="32-kerentanan-fatal-saat-mengirim-transaksi-serangan-front-running">3.2. Kerentanan Fatal saat Mengirim Transaksi (Serangan Front-running)
&lt;/h3>&lt;p>Masalah muncul ketika pengguna mengirim dana.
Saat menyiarkan (mengirim) transaksi ke jaringan, pengguna harus menyertakan &lt;strong>kunci publik mereka sendiri dalam data transaksi dan mempublikasikannya ke seluruh jaringan&lt;/strong> bersama dengan tanda tangan digital untuk keperluan verifikasi.&lt;/p>
&lt;div class="mermaid">sequenceDiagram
participant User as "Pengguna (Alice)"
participant Mempool as "Mempool (Kolam Transaksi Belum Dikonfirmasi)"
participant QuantumAttacker as "Penyerang Kuantum"
participant Miner as "Penambang (Pembuatan Blok)"
User->>Mempool: Kirim Transaksi (Termasuk Kunci Publik + Tanda Tangan)
Mempool-->>QuantumAttacker: Menyadap kunci publik di jaringan
note right of QuantumAttacker: Menjalankan algoritma Shor dalam beberapa menit&lt;br/>(Menghitung kunci privat dari kunci publik)
QuantumAttacker->>QuantumAttacker: Membuat tanda tangan baru menggunakan kunci privat Alice
QuantumAttacker->>Mempool: Menyiarkan transfer palsu dengan biaya penambang yang lebih tinggi
Miner->>Miner: Memprioritaskan transaksi palsu dengan biaya (Gas) tinggi untuk dimasukkan ke dalam blok
Miner-->>User: Dicatat di blockchain (Alice kehilangan dana)&lt;/div>
&lt;p>Setelah kunci publik dikirim ke Mempool (tempat tunggu untuk transaksi yang belum dikonfirmasi), data tersebut dibagikan dengan node di seluruh dunia. Jika penyerang memiliki komputer kuantum super cepat, mereka dapat mencuri dana dengan proses berikut.&lt;/p>
&lt;ol>
&lt;li>Menyadap transaksi pengguna yang sah (Alice) dari Mempool, dan &lt;strong>mengekstrak kunci publik&lt;/strong>.&lt;/li>
&lt;li>Menjalankan algoritma Shor, dan &lt;strong>menghitung kunci privat dari kunci publik dalam beberapa menit (sebelum blok dikonfirmasi)&lt;/strong>.&lt;/li>
&lt;li>Menggunakan kunci privat yang diperoleh untuk &lt;strong>membuat transaksi palsu&lt;/strong> yang mengirimkan dana Alice ke alamat penyerang.&lt;/li>
&lt;li>Menyiarkan transaksi palsu ini ke jaringan dengan &lt;strong>menetapkan biaya penambang (Fee) yang jauh lebih tinggi&lt;/strong> daripada transaksi asli Alice.&lt;/li>
&lt;/ol>
&lt;p>Penambang, mengikuti insentif ekonomi, memprioritaskan transaksi dengan biaya tinggi untuk dimasukkan ke dalam blok. Akibatnya, transfer palsu penyerang disetujui (Confirm) lebih dulu, dan transfer sah Alice dibuang sebagai &amp;ldquo;Dana Tidak Cukup (Double Spend)&amp;rdquo;.
Rangkaian aliran ini disebut &lt;strong>Serangan Front-running (Front-running Attack)&lt;/strong>, dan di dunia di mana komputer kuantum direalisasikan, akan menyebabkan situasi mengerikan di mana dana dicuri oleh peretas pada saat seseorang menekan tombol kirim.&lt;/p>
&lt;h3 id="33-krisis-alamat-penggunaan-ulang-dan-alamat-lama-p2pk">3.3. Krisis Alamat Penggunaan Ulang dan Alamat Lama (P2PK)
&lt;/h3>&lt;p>Masalah yang lebih serius adalah alamat yang pernah digunakan untuk mengirim dana sekali saja di masa lalu (misalnya jika digunakan kembali sebagai alamat kembalian) memiliki kunci publik yang telah dicatat secara permanen di blockchain. Alamat-alamat ini selalu berisiko kehilangan saldonya dengan kunci privat yang dihitung tanpa harus menunggu transaksi dikirim.&lt;/p>
&lt;p>Selain itu, hadiah penambangan awal Satoshi Nakamoto (lebih dari 1 juta BTC), format yang lazim dari tahun 2009 hingga 2010 yaitu &lt;strong>P2PK (Pay-to-Public-Key)&lt;/strong>, mencatat kunci publik secara langsung ke dalam blockchain, bukan sebagai hash. Bitcoin dorman dalam jumlah besar ini akan menjadi target paling mudah bagi komputer kuantum, dan berpotensi memicu keruntuhan harga besar-besaran karena dicuri sekaligus dan di-dump di pasar.&lt;/p>
&lt;hr>
&lt;h2 id="4-skenario-transisi-ke-kriptografi-pasca-kuantum-pqc">4. Skenario Transisi ke Kriptografi Pasca-Kuantum (PQC)
&lt;/h2>&lt;p>Untuk menghindari bencana &amp;ldquo;Q-Day (Hari di mana komputer kuantum menembus kriptografi)&amp;rdquo;, komunitas kriptografi dan blockchain merencanakan transisi ke &lt;strong>Kriptografi Pasca-Kuantum (PQC)&lt;/strong> yang sulit dipecahkan bahkan oleh algoritma kuantum.
Institut Standar dan Teknologi Nasional AS (NIST) telah melakukan proses standardisasi PQC selama bertahun-tahun, dan setelah melalui evaluasi ketat yang berurutan, beberapa metode kriptografi yang menjanjikan dipilih sebagai standar final.&lt;/p>
&lt;p>Kami akan menjelaskan secara terperinci algoritma PQC utama yang menarik perhatian sebagai alternatif tanda tangan digital blockchain, beserta mekanisme matematisnya.&lt;/p>
&lt;h3 id="41-tanda-tangan-berbasis-hash-hash-based-signatures">4.1. Tanda Tangan Berbasis Hash (Hash-Based Signatures)
&lt;/h3>&lt;p>Tanda tangan berbasis hash adalah metode kriptografi yang keamanannya hanya bergantung pada dasar yang sangat sederhana dan kuat: &amp;ldquo;ketahanan benturan dari fungsi hash&amp;rdquo;. Karena keamanan fungsi hash terhadap komputer kuantum telah terbukti (seperti disebutkan di atas, margin keamanan 128-bit sudah cukup), ini adalah pendekatan yang sangat andal.
Contoh yang menonjol adalah &lt;strong>Tanda Tangan Lamport (Lamport Signatures)&lt;/strong>, atau ekstensinya WOTS (Winternitz One-Time Signature), dan kandidat standardisasi NIST &lt;strong>SPHINCS+&lt;/strong> (saat ini distandardisasi sebagai FIPS 205 dan disebut SLH-DSA).&lt;/p>
&lt;h4 id="411-detail-matematis-tanda-tangan-lamport-one-time-signature">4.1.1. Detail Matematis Tanda Tangan Lamport (One-Time Signature)
&lt;/h4>&lt;p>Mari kita perhatikan mekanisme Tanda Tangan Lamport secara lebih terperinci secara matematis.
Misalkan fungsi hash $H: \{0, 1\}^* \to \{0, 1\}^{256}$.&lt;/p>
&lt;p>&lt;strong>【Pembuatan Kunci】&lt;/strong>
Alice (pengirim) menggunakan Generator Angka Acak Sejati (TRNG) untuk menghasilkan 256 pasang pasangan kunci privat.
&lt;/p>
$$
\text{sk}_{i,0} \in \{0, 1\}^{256}, \quad \text{sk}_{i,1} \in \{0, 1\}^{256} \quad (1 \le i \le 256)
$$
&lt;p>
Akibatnya, kunci privat $\text{sk}$ terdiri dari total 512 string 256-bit (ukuran: $512 \times 32 = 16.384$ byte).&lt;/p>
&lt;p>Selanjutnya, hitung kunci publik $\text{pk}$. Hash-kan setiap komponen kunci privat satu per satu.
&lt;/p>
$$
\text{pk}_{i,0} = H(\text{sk}_{i,0}), \quad \text{pk}_{i,1} = H(\text{sk}_{i,1})
$$
&lt;p>
Kunci publik juga akan berukuran $16.384$ byte. Publikasikan ini ke jaringan blockchain.&lt;/p>
&lt;p>&lt;strong>【Pembuatan Tanda Tangan】&lt;/strong>
Untuk menandatangani data transaksi $M$, Alice pertama-tama menghitung nilai hash-nya.
&lt;/p>
$$
h = H(M) \in \{0, 1\}^{256}
$$
&lt;p>
Misalkan bit ke-$i$ dari nilai hash $h$ adalah $h_i \in \{0, 1\}$.
Tanda tangan Alice $\sigma$ akan menjadi kumpulan komponen kunci privat yang sesuai dengan setiap bit $h_i$.
&lt;/p>
$$
\sigma = (\text{sk}_{1, h_1}, \text{sk}_{2, h_2}, \dots, \text{sk}_{256, h_{256}})
$$
&lt;p>
Dengan kata lain, jika bit hash pesan adalah &lt;code>0&lt;/code>, ekspos $\text{sk}_{i,0}$, dan jika &lt;code>1&lt;/code>, ekspos $\text{sk}_{i,1}$. Ukuran tanda tangan akan menjadi $256 \times 32 = 8.192$ byte.&lt;/p>
&lt;p>&lt;strong>【Verifikasi Tanda Tangan】&lt;/strong>
Penambang (pemverifikasi) memverifikasi menggunakan transaksi yang diterima $M$, tanda tangan $\sigma = (s_1, s_2, \dots, s_{256})$, dan kunci publik $\text{pk}$.
Hitung ulang hash transaksi $h = H(M)$, dan pastikan apakah setiap nilai hash dari $s_i$ cocok dengan elemen kunci publik yang sesuai $\text{pk}_{i, h_i}$.
&lt;/p>
$$
H(s_i) \overset{?}{=} \text{pk}_{i, h_i} \quad (\text{untuk semua } 1 \le i \le 256)
$$
&lt;p>Proses ini sangat sederhana secara matematis, dan tidak mungkin untuk memalsukan tanda tangan kecuali jika komputer kuantum dapat menghitung mundur $H$. Namun, karena setengah dari kunci privat diekspos ke jaringan setelah ditandatangani, terdapat kendala kuat bahwa ini hanya dapat digunakan &amp;ldquo;satu kali (One-Time)&amp;rdquo;, karena menandatangani pesan lain dengan pasangan kunci yang sama akan menggabungkan kunci privat yang terekspos dan memberikan ruang bagi penyerang untuk melakukan pemalsuan.
Untuk membuatnya praktis, teknologi seperti &lt;strong>XMSS&lt;/strong>, yang menggunakan Merkle Tree untuk mengelompokkan sejumlah besar kunci sekali pakai ke dalam satu kunci publik root, dan &lt;strong>SPHINCS+&lt;/strong> yang stateless, telah dikembangkan, tetapi mereka memiliki kelemahan ukuran tanda tangan mencapai puluhan kilobyte.&lt;/p>
&lt;h3 id="42-kriptografi-berbasis-kisi-lattice-based-cryptography">4.2. Kriptografi Berbasis Kisi (Lattice-Based Cryptography)
&lt;/h3>&lt;p>Saat ini, yang paling diharapkan sebagai arus utama PQC dan diadopsi sebagai standar utama NIST (FIPS 204: ML-DSA / sebelumnya CRYSTALS-Dilithium, Falcon, dll.) adalah &lt;strong>Kriptografi Kisi&lt;/strong>.&lt;/p>
&lt;p>Keamanan kriptografi kisi bergantung pada masalah yang terbukti secara matematis sulit seperti &amp;ldquo;Masalah Vektor Terpendek dalam kisi multidimensi (SVP: Shortest Vector Problem)&amp;rdquo; dan &amp;ldquo;Pembelajaran dengan Masalah Galat (LWE: Learning With Errors)&amp;rdquo;. Tidak ada algoritma yang ditemukan yang dapat memecahkan masalah kisi secara efisien bahkan menggunakan komputer kuantum.&lt;/p>
&lt;p>&lt;strong>Model Matematis LWE (Learning With Errors):&lt;/strong>
Gagasan dasar masalah LWE adalah untuk membuat masalah menjadi lebih sulit secara dramatis dengan secara sengaja menambahkan &amp;ldquo;noise (galat) kecil&amp;rdquo; ke dalam sistem persamaan linear.
Misalkan vektor rahasia adalah $\mathbf{s} \in \mathbb{Z}_q^n$.
Ada matriks publik raksasa yang dipilih secara acak $\mathbf{A} \in \mathbb{Z}_q^{m \times n}$, dan vektor noise kecil yang sengaja ditambahkan $\mathbf{e} \in \mathbb{Z}_q^m$.
Kunci publik $\mathbf{b}$ dihitung sebagai berikut.&lt;/p>
$$
\mathbf{b} = \mathbf{A}\mathbf{s} + \mathbf{e} \pmod{q}
$$
&lt;p>Meskipun matriks $\mathbf{A}$ dan vektor $\mathbf{b}$ (kunci publik) dipublikasikan, sangat sulit untuk menghitung mundur kunci privat $\mathbf{s}$ dari sana karena adanya noise $\mathbf{e}$. Tanpa noise, itu bisa diselesaikan dengan eliminasi Gauss sederhana, tetapi dengan noise, ruang pencarian meledak di semua dimensi, memberikan keamanan yang kuat baik terhadap komputer klasik maupun kuantum.
Dalam algoritma yang sebenarnya digunakan di blockchain dan sejenisnya (seperti Dilithium), ini diperluas pada cincin polinomial menggunakan &lt;strong>Ring-LWE (atau Module-LWE)&lt;/strong>, yang mengurangi ukuran kunci dan mempercepat komputasi.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Kelebihan&lt;/strong>: Dibandingkan dengan tanda tangan berbasis hash, ukuran kunci publik dan tanda tangan relatif kecil (sekitar beberapa kilobyte), dan kecepatan perhitungan pembuatan dan verifikasi tanda tangan sangat cepat (setara atau lebih cepat dari ECDSA).&lt;/li>
&lt;li>&lt;strong>Kekurangan&lt;/strong>: Struktur matematisnya kompleks, dan karena periode verifikasi historisnya pendek, risiko ditemukannya algoritma dekripsi baru di masa depan bukanlah nol.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="5-tantangan-teknis-transisi-pqc-di-blockchain">5. Tantangan Teknis Transisi PQC di Blockchain
&lt;/h2>&lt;p>Fakta bahwa algoritma PQC (seperti Dilithium dan SPHINCS+) ada tidak berarti bahwa mereka dapat segera diterapkan ke Bitcoin atau Ethereum. Terdapat beberapa tantangan berat yang khusus untuk sistem terdesentralisasi.&lt;/p>
&lt;h3 id="51-peningkatan-ukuran-tanda-tangan-dan-keruntuhan-skalabilitas">5.1. Peningkatan Ukuran Tanda Tangan dan Keruntuhan Skalabilitas
&lt;/h3>&lt;p>Hambatan terbesar dalam mengadopsi PQC adalah peningkatan ukuran data yang signifikan.
Sementara ukuran tanda tangan ECDSA saat ini sekitar 70 byte, ukuran tanda tangan untuk ML-DSA (Dilithium) kriptografi kisi adalah sekitar 2.420 byte hingga 4.595 byte (tergantung pada tingkat keamanan), dan ukuran kunci publik melebihi 1.300 byte. Untuk SPHINCS+ berbasis hash, ukuran tanda tangan mencapai puluhan ribu byte.&lt;/p>
&lt;p>Jika Bitcoin mengadopsi PQC sambil mempertahankan batas ukuran blok saat ini (berat sekitar 4MB termasuk SegWit), jumlah transaksi yang dapat ditampung dalam satu blok akan menurun drastis. Throughput jaringan (TPS: Transactions Per Second) akan turun secara tak terhindarkan, dan kemacetan transfer akan menjadi normal.
Untuk mengatasi ini, batas ukuran blok perlu ditingkatkan secara signifikan, namun ini akan meningkatkan persyaratan penyimpanan dan bandwidth jaringan node penuh, membuat operasi node oleh individu menjadi sulit, yang pada akhirnya mengarah pada dilema &lt;strong>sentralisasi jaringan&lt;/strong>.&lt;/p>
&lt;div class="mermaid">pie title "Perbandingan Ukuran Data Tanda Tangan di Blockchain (Diagram Konsep)"
"ECDSA (Sekitar 70 Bytes)" : 2
"Dilithium ML-DSA (Sekitar 2,500 Bytes)" : 58
"SPHINCS+ (Sekitar 17,000 Bytes)" : 40&lt;/div>
&lt;p>&lt;em>(※ Peningkatan ukuran data transaksi karena pengenalan PQC akan menjadi hambatan fatal bagi skalabilitas)&lt;/em>&lt;/p>
&lt;h3 id="52-dampak-pada-ethereum-virtual-machine-evm-dan-precompiled-contracts">5.2. Dampak pada Ethereum Virtual Machine (EVM) dan Precompiled Contracts
&lt;/h3>&lt;p>Di platform kontrak pintar Turing-complete seperti Ethereum, adopsi PQC membutuhkan peningkatan fundamental pada EVM (Ethereum Virtual Machine).
Saat ini EVM menyediakan kontrak pra-kompilasi (Precompiled Contract) yang disebut &lt;code>ecrecover&lt;/code> (alamat: &lt;code>0x01&lt;/code>) untuk memverifikasi tanda tangan ECDSA, yang dioptimalkan untuk memverifikasi tanda tangan dengan biaya gas yang sangat rendah (3000 Gas).&lt;/p>
&lt;p>Namun, proses verifikasi algoritma kriptografi kisi baru seperti Dilithium dan Falcon melibatkan operasi polinomial kompleks dan operasi matriks, dan jika diimplementasikan menggunakan opcode (Opcode) EVM yang ada, memverifikasi satu tanda tangan saja dapat memakan biaya jutaan hingga puluhan juta gas. Ini merupakan tingkat yang dapat menghabiskan batas gas blok (sekitar 30 juta Gas) saat ini dalam satu transaksi.&lt;/p>
&lt;p>Untuk menghindari ini, diperlukan untuk mengintegrasikan kontrak pra-kompilasi baru (Precompiled Contract) untuk verifikasi PQC (misalnya, menugaskan &lt;code>0x10&lt;/code> untuk DilithiumVerify) ke dalam EVM itu sendiri melalui pembaruan sistem yang besar pada jaringan (Hard Fork). Hal ini membutuhkan pengembang inti masing-masing klien Ethereum (Geth, Nethermind, Erigon, dll.) untuk bekerja sama dalam mengoptimalkan logika verifikasi kriptografi kisi di tingkat bahasa pemrograman seperti C++, Go, atau Rust, dan melakukan audit keamanan, yang merupakan proses yang akan memakan waktu bertahun-tahun.&lt;/p>
&lt;h3 id="53-kesulitan-membangun-konsensus-melalui-hard-fork">5.3. Kesulitan Membangun Konsensus melalui Hard Fork
&lt;/h3>&lt;p>Untuk mengubah algoritma tanda tangan yang mendasarinya, &lt;strong>Hard Fork&lt;/strong>, yang memperbarui protokol di seluruh jaringan, sangat penting. Namun, dalam komunitas seperti Bitcoin yang berfokus pada &amp;ldquo;tidak mengubah aturan dan tetap terdesentralisasi&amp;rdquo;, proses membangun konsensus sangat sulit dari sudut pandang politik. Mulai dari mengajukan BIP (Bitcoin Improvement Proposal) mengenai transisi PQC hingga diimplementasikan, kemungkinan akan memakan waktu perdebatan dan pengujian bertahun-tahun.&lt;/p>
&lt;hr>
&lt;h2 id="6-kapan-q-day-akan-tiba-peta-jalan-menuju-transisi">6. Kapan &amp;ldquo;Q-Day&amp;rdquo; akan Tiba? Peta Jalan menuju Transisi
&lt;/h2>&lt;p>Kapan akan tiba hari di mana &amp;ldquo;komputer kuantum sepenuhnya memecahkan kriptografi kurva eliptik 256-bit (Q-Day)&amp;rdquo;?
Pendapat para ahli terbagi, namun sebagian besar memprediksi kemunculan komputer kuantum berskala besar yang memiliki setidaknya beberapa ribu hingga puluhan ribu qubit logis stabil (qubit toleran noise dan dikoreksi galat) pada &lt;strong>&amp;ldquo;pertengahan 2030-an hingga 2040-an&amp;rdquo;&lt;/strong>. Namun, waktu ini tidak dapat disangkal bisa lebih awal (sekitar 2030) tergantung pada terobosan dalam arsitektur perangkat keras atau penemuan algoritma kuantum yang lebih efisien.&lt;/p>
&lt;p>Berikut adalah peta jalan yang harus diambil ekosistem aset kripto sebelum terlambat.&lt;/p>
&lt;h3 id="fase-1-tanda-tangan-hibrida-dan-abstraksi-akun-sekarang-hingga-sekitar-2028">Fase 1: Tanda Tangan Hibrida dan Abstraksi Akun (Sekarang hingga sekitar 2028)
&lt;/h3>&lt;p>Kalangan blockchain saat ini, terutama tim pengembangan Ethereum (seperti Vitalik Buterin), sedang mempertimbangkan &lt;strong>&amp;ldquo;Tanda Tangan Hibrida&amp;rdquo;&lt;/strong> yang menggabungkan ECDSA dan PQC (tanda tangan berbasis hash atau kriptografi kisi). Pendekatan ini menyertakan tanda tangan ECDSA yang aman saat ini bersama dengan tanda tangan PQC ke dalam transaksi, sehingga jika salah satu ditembus, keamanan masih tetap terjaga.
Selain itu, melalui pemanfaatan abstraksi akun (Account Abstraction, ERC-4337), ada upaya untuk mengimplementasikan dan mendukung tanda tangan PQC secara opsional (bagi pengguna yang menginginkannya saja) di atas dompet kontrak pintar, tanpa harus menunggu hard fork tingkat protokol.&lt;/p>
&lt;h3 id="fase-2-pemanfaatan-zero-knowledge-proofs-zk-rollups-dari-2025-dan-seterusnya">Fase 2: Pemanfaatan Zero-Knowledge Proofs (ZK-Rollups) (Dari 2025 dan seterusnya)
&lt;/h3>&lt;p>Sebagai kartu truf untuk menyelesaikan &amp;ldquo;peningkatan ukuran tanda tangan&amp;rdquo;, yang merupakan kelemahan terbesar PQC, harapan diletakkan pada penggunaan &lt;strong>ZK-Rollups (Zero-Knowledge Proofs)&lt;/strong> yang merupakan teknologi layer 2.
Daripada menulis data tanda tangan PQC berukuran sangat besar langsung ke Layer 1 (rantai utama), banyak transaksi PQC diverifikasi dan diagregasikan di atas Layer 2. Kemudian, mereka dikompresi menjadi sebuah &amp;ldquo;data bukti (Proof)&amp;rdquo; yang sangat kecil menggunakan ZK-SNARKs atau ZK-STARKs untuk direkam di Layer 1.
Perlu dicatat, karena beberapa konfigurasi SNARKs (seperti Groth16) rentan secara kuantum, penerapan &lt;strong>ZK-STARKs&lt;/strong> yang hanya bergantung pada fungsi hash tahan kuantum akan menjadi kunci.&lt;/p>
&lt;h3 id="fase-3-hard-fork-tingkat-protokol-sekitar-2030">Fase 3: Hard Fork Tingkat Protokol (Sekitar 2030)
&lt;/h3>&lt;p>Setelah standardisasi NIST untuk PQC sepenuhnya mapan, dan standar industri dirilis dan diuji secara memadai, diharapkan bahwa blockchain utama seperti Bitcoin dan Ethereum akan melakukan hard fork yang sepenuhnya mentransisikan metode tanda tangan default ke PQC. Selama masa transisi ini, akan ada pengumuman besar-besaran kepada pengguna yang mendesak mereka untuk &amp;ldquo;memindahkan dana dari dompet lama ke dompet baru yang mendukung PQC&amp;rdquo;.&lt;/p>
&lt;h3 id="studi-kasus-proyek-perintis">Studi Kasus Proyek Perintis
&lt;/h3>&lt;p>Beberapa proyek blockchain telah mengantisipasi ancaman kuantum ini, dan dikembangkan sejak tahap awal dengan mempromosikan ketahanan kuantum.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>QRL (Quantum Resistant Ledger)&lt;/strong>: Sebuah blockchain tahap awal yang mengimplementasikan PQC berbasis hash, XMSS (Skema Tanda Tangan Merkle yang Diperluas) secara natif pada tingkat protokol.&lt;/li>
&lt;li>&lt;strong>Algorand / Cellframe&lt;/strong>: Proyek-proyek ini memiliki arsitektur modular dari lapisan kriptografi yang fleksibel untuk mengantisipasi pembaruan PQC di masa depan, secara proaktif mengeksplorasi integrasi kriptografi kisi.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="7-kesimpulan-masa-depan-aset-kripto-dan-perlindungan-aset-kita">7. Kesimpulan: Masa Depan Aset Kripto dan Perlindungan Aset Kita
&lt;/h2>&lt;p>Ketibaan &amp;ldquo;Era Pasca-Kuantum&amp;rdquo; bukan lagi sekadar khayalan fiksi ilmiah, melainkan sudah berada tepat di hadapan kita sebagai tantangan teknis nyata terhadap sistem kriptografi saat ini.&lt;/p>
&lt;p>Dua pedang komputer kuantum, algoritma Shor dan algoritma Grover, secara berurutan mengancam kriptografi kunci publik dan fungsi hash yang menjadi fondasi blockchain saat ini. Khususnya, kerentanan ECDSA berakibat fatal, dan transisi ke kriptografi tahan kuantum (PQC) adalah rute yang mutlak tak terhindarkan untuk mencegah risiko pencurian dana dari serangan front-running.&lt;/p>
&lt;p>Namun, dunia teknologi dan komunitas blockchain tidak hanya duduk diam menunggu kehancuran. Pemilihan dan standardisasi algoritma PQC seperti kriptografi kisi dan tanda tangan berbasis hash terus berkembang dengan stabil, dan melalui penggunaan zero-knowledge proofs (ZK-STARKs) serta teknologi penskalaan Layer 2, kita mulai melihat jalan keluar untuk mengatasi &amp;ldquo;peningkatan ukuran data&amp;rdquo; yang merupakan hambatan terbesar adopsi PQC.&lt;/p>
&lt;p>Tidak perlu bagi kita pengguna dan investor aset kripto pada umumnya untuk panik saat ini dan menjual seluruh dana. Akan tetapi, sangat penting untuk memiliki literasi mendasar dan kesadaran pertahanan diri sebagai berikut.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Hindari menggunakan ulang alamat&lt;/strong>: Untuk menegakkan keamanan, bukan hanya privasi, disarankan untuk tidak menyimpan dana dalam jangka waktu lama di &amp;ldquo;alamat yang telah digunakan (alamat yang pernah digunakan untuk mengirim dana sekali saja, sehingga kunci publiknya terpapar di blockchain)&amp;rdquo;.&lt;/li>
&lt;li>&lt;strong>Mengamati tren teknologi&lt;/strong>: Terus awasi diskusi tentang transisi PQC di jaringan utama seperti BIP Bitcoin atau EIP Ethereum, serta berita mengenai hard fork, agar Anda dapat melakukan operasi migrasi dompet pada waktu yang diperlukan dengan benar.&lt;/li>
&lt;/ul>
&lt;p>Sejarah blockchain adalah sejarah berkelanjutan antara ketahanan (resiliensi) dan pembaruan sistem dalam menghadapi ancaman teknis baru. Sama seperti mereka yang mengatasi masalah skalabilitas dan isu lingkungan (seperti transisi dari PoW ke PoS), seluruh ekosistem kemungkinan besar akan mencari solusi dan beradaptasi terhadap ancaman kuantum yang belum pernah terjadi ini.
Kita dapat berharap pada masa depan di mana komputer kuantum sebagai kearifan baru umat manusia dan teknologi tepercaya berupa buku besar terdesentralisasi, bukan bertabrakan dan hancur, namun menyatu menjadi sistem kuat di dimensi yang lebih tinggi.&lt;/p>
&lt;hr>
&lt;p>&lt;em>Referensi &amp;amp; Tautan Terkait:&lt;/em>&lt;/p>
&lt;ul>
&lt;li>National Institute of Standards and Technology (NIST) - Post-Quantum Cryptography Standardization Project&lt;/li>
&lt;li>Shor, P. W. (1994). Algorithms for quantum computation: discrete logarithms and factoring.&lt;/li>
&lt;li>Grover, L. K. (1996). A fast quantum mechanical algorithm for database search.&lt;/li>
&lt;li>Buterin, V. (2024). How to hard-fork to save most users&amp;rsquo; funds in a quantum emergency.&lt;/li>
&lt;/ul></description></item><item><title>Sejarah Kriptografi: Dari Sandi Caesar hingga Kriptografi Pasca-Kuantum (PQC)</title><link>http://kenji.blog/id/p/history-of-cryptography-caesar-to-pqc/</link><pubDate>Fri, 11 Sep 2026 15:00:00 +0900</pubDate><guid>http://kenji.blog/id/p/history-of-cryptography-caesar-to-pqc/</guid><description>&lt;img src="http://kenji.blog/p/history-of-cryptography-caesar-to-pqc/img/eyecatch.jpg" alt="Featured image of post Sejarah Kriptografi: Dari Sandi Caesar hingga Kriptografi Pasca-Kuantum (PQC)" />&lt;h1 id="1-pendahuluan-apa-itu-kriptografi">1. Pendahuluan: Apa itu Kriptografi?
&lt;/h1>&lt;p>Kriptografi (Cryptography) adalah teknologi untuk menjaga kerahasiaan informasi, dan telah berevolusi bersamaan dengan sejarah umat manusia. Dari transmisi perintah rahasia dalam perang kuno hingga perlindungan informasi kartu kredit di internet modern, tujuan kriptografi tetap konsisten. Tujuannya adalah &amp;ldquo;memastikan bahwa hanya penerima yang dituju yang dapat memahami informasi tersebut, dan tidak dapat diuraikan oleh pihak ketiga&amp;rdquo;.&lt;/p>
&lt;p>Dalam keamanan informasi modern, kriptografi tidak hanya terbatas pada &amp;ldquo;kerahasiaan informasi (Kerahasiaan: Confidentiality)&amp;rdquo;, tetapi juga memainkan peran penting dalam &amp;ldquo;Integritas (Integrity)&amp;rdquo;, &amp;ldquo;Otentikasi (Authentication)&amp;rdquo;, dan &amp;ldquo;Nirsangkal (Non-repudiation)&amp;rdquo; dari data.&lt;/p>
&lt;p>Dalam artikel ini, kita akan mengungkap sejarah evolusi kriptografi dari perspektif teknis dan matematis, dimulai dari sandi substitusi sederhana kuno, mesin sandi mekanis, kriptografi kunci simetris dan kunci publik modern, hingga era &amp;ldquo;Kriptografi Pasca-Kuantum (PQC)&amp;rdquo; yang tiba dengan komersialisasi komputer kuantum.&lt;/p>
&lt;hr>
&lt;h1 id="2-era-kriptografi-klasik-substitusi-dan-transposisi-karakter">2. Era Kriptografi Klasik: Substitusi dan Transposisi Karakter
&lt;/h1>&lt;p>Asal-usul kriptografi berawal sejak sebelum masehi. Kriptografi awal terutama terdiri dari dua pendekatan: &amp;ldquo;Transposisi (penyusunan ulang)&amp;rdquo; dan &amp;ldquo;Substitusi (penggantian)&amp;rdquo;.&lt;/p>
&lt;h2 id="sandi-scytale-sandi-transposisi">Sandi Scytale (Sandi Transposisi)
&lt;/h2>&lt;p>&amp;ldquo;Scytale&amp;rdquo;, yang digunakan di Sparta, Yunani Kuno pada abad ke-5 SM, adalah salah satu perangkat kriptografi tertua. Sepotong perkamen tipis dililitkan pada tongkat kayu dengan ketebalan tertentu, dan pesan ditulis secara horizontal di atasnya. Ketika perkamen dibuka, huruf-huruf tersusun dalam urutan yang tidak dapat dipahami, tetapi penerima yang memiliki tongkat dengan ketebalan yang sama dapat membaca pesan asli dengan melilitkan kembali perkamen tersebut.&lt;/p>
&lt;h2 id="sandi-caesar-sandi-substitusi-monoalfabetik">Sandi Caesar (Sandi Substitusi Monoalfabetik)
&lt;/h2>&lt;p>&amp;ldquo;Sandi Caesar&amp;rdquo;, yang konon digunakan oleh pahlawan Romawi Kuno Julius Caesar pada abad ke-1 SM, adalah sandi substitusi monoalfabetik (Monoalphabetic substitution) yang menggeser alfabet sejumlah tertentu (biasanya 3 huruf).&lt;/p>
&lt;p>Secara matematis, dengan menganggap huruf sebagai angka dari $0$ hingga $25$, dan jumlah pergeseran adalah $K$, transformasi dari plainteks $P$ menjadi cipherteks $C$ direpresentasikan oleh kongruensi berikut:&lt;/p>
$$C \equiv P + K \pmod{26}$$
&lt;p>Dekripsi dilakukan dengan operasi kebalikannya:&lt;/p>
$$P \equiv C - K \pmod{26}$$
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Contoh implementasi sederhana Sandi Caesar dengan Python&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">caesar_cipher&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">text&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">shift&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">mode&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;encrypt&amp;#34;&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">result&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">mode&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="s2">&amp;#34;decrypt&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">shift&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">shift&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span> &lt;span class="n">char&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="n">text&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">char&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">isalpha&lt;/span>&lt;span class="p">():&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">base&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">ord&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;A&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="k">if&lt;/span> &lt;span class="n">char&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">isupper&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="k">else&lt;/span> &lt;span class="nb">ord&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;a&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1"># Perhitungan pergeseran&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">result&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="nb">chr&lt;/span>&lt;span class="p">((&lt;/span>&lt;span class="nb">ord&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">char&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="n">base&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="n">shift&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">26&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="n">base&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">result&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="n">char&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">result&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Contoh eksekusi&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">plaintext&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;HELLO WORLD&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">ciphertext&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">caesar_cipher&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">plaintext&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">3&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s2">&amp;#34;encrypt&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Cipherteks: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">ciphertext&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="c1"># KHOOR ZRUOG&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="analisis-frekuensi-dan-sandi-vigenère">Analisis Frekuensi dan Sandi Vigenère
&lt;/h2>&lt;p>Sandi substitusi monoalfabetik dengan mudah dipecahkan oleh &amp;ldquo;Analisis Frekuensi (Frequency Analysis)&amp;rdquo; yang diciptakan oleh cendekiawan Arab abad ke-9, Al-Kindi. Ini memanfaatkan karakteristik statistik bahasa, seperti fakta bahwa &amp;ldquo;E&amp;rdquo; dan &amp;ldquo;T&amp;rdquo; sering muncul dalam bahasa Inggris.&lt;/p>
&lt;p>Untuk melawan hal ini, &amp;ldquo;Sandi Vigenère (Vigenère cipher)&amp;rdquo; diciptakan pada abad ke-16. Ini adalah sandi substitusi polialfabetik (Polyalphabetic substitution) yang secara periodik mengganti beberapa pergeseran (kunci), dan selama sekitar 300 tahun disebut &amp;ldquo;Sandi yang tidak dapat dipecahkan (Le Chiffre Indéchiffrable)&amp;rdquo;.&lt;/p>
&lt;p>Secara matematis, huruf ke-$i$ dari plainteks $P_i$ dan huruf ke-$i$ dari kunci yang berulang $K_i$ dienkripsi sebagai berikut:&lt;/p>
$$C_i \equiv P_i + K_i \pmod{26}$$
&lt;p>Sandi ini juga akhirnya dipecahkan pada abad ke-19 ketika Charles Babbage dan Friedrich Kasiski menemukan &amp;ldquo;Ujian Kasiski (Kasiski examination)&amp;rdquo;, yang menentukan panjang kunci dari pola yang berulang dalam cipherteks.&lt;/p>
&lt;div class="mermaid">graph TD
subgraph "Klasifikasi Kriptografi Klasik"
A["Kriptografi Klasik"] --> B["Sandi Transposisi"]
A --> C["Sandi Substitusi"]
B --> D["Sandi Scytale"]
C --> E["Substitusi Monoalfabetik"]
C --> F["Substitusi Polialfabetik"]
E --> G["Sandi Caesar"]
F --> H["Sandi Vigenère"]
end&lt;/div>
&lt;hr>
&lt;h1 id="3-kriptografi-mekanis-dan-perang-dunia-enigma-dan-pemecahannya">3. Kriptografi Mekanis dan Perang Dunia: Enigma dan Pemecahannya
&lt;/h1>&lt;p>Memasuki abad ke-20, alat komunikasi beralih dari surat ke telegraf dan radio, menuntut kecepatan dan kompleksitas dalam enkripsi. Di sinilah muncul &amp;ldquo;Sandi Mekanis&amp;rdquo; yang menggabungkan rotor (piringan berputar).&lt;/p>
&lt;h2 id="ancaman-enigma">Ancaman Enigma
&lt;/h2>&lt;p>Selama Perang Dunia II, &amp;ldquo;Enigma&amp;rdquo; yang digunakan oleh Nazi Jerman adalah mesin sandi paling terkenal dalam sejarah kriptografi. Enigma terdiri dari beberapa rotor (biasanya 3-4), sebuah plugboard (Steckerbrett) yang menukar koneksi huruf, dan sebuah reflektor (rotor pembalik).&lt;/p>
&lt;p>Setiap kali sebuah huruf diketik pada keyboard, rotor berputar, sehingga meskipun huruf yang sama diketik berturut-turut, huruf sandi yang berbeda akan dihasilkan (puncak dari sandi polialfabetik). Ruang kunci (kombinasi pengaturan) mencapai sekitar $1.58 \times 10^{19}$ (sekitar 15,8 kuintiliun), dan dengan teknologi saat itu dianggap tidak mungkin untuk dipecahkan dengan serangan brute force.&lt;/p>
&lt;h2 id="alan-turing-dan-bombe">Alan Turing dan &amp;ldquo;Bombe&amp;rdquo;
&lt;/h2>&lt;p>Tim pemecah kode Bletchley Park di Inggris, yang melanjutkan pencapaian awal ahli matematika Polandia seperti Marian Rejewski, menantang Enigma yang tampaknya tidak dapat ditembus ini.&lt;/p>
&lt;p>Secara khusus, Alan Turing mengembangkan mesin pemecah sandi elektromekanis yang disebut &amp;ldquo;Bombe&amp;rdquo;, yang memanfaatkan tebakan plainteks (Crib) yang sesuai dengan bagian dari cipherteks. Bombe mendeteksi kontradiksi logis pada kecepatan tinggi, berhasil memecahkan Enigma dengan terus menerus menghilangkan pengaturan rotor yang tidak mungkin. Pencapaian ini konon telah mempercepat kemenangan pihak Sekutu selama beberapa tahun.&lt;/p>
&lt;hr>
&lt;h1 id="4-awal-kriptografi-modern-kriptografi-kunci-simetris-des-dan-aes">4. Awal Kriptografi Modern: Kriptografi Kunci Simetris (DES dan AES)
&lt;/h1>&lt;p>Setelah perang, dengan munculnya komputer, kriptografi mengalami pergeseran paradigma yang dramatis dari manipulasi &amp;ldquo;karakter&amp;rdquo; menjadi manipulasi &amp;ldquo;bit (0 dan 1)&amp;rdquo;.&lt;/p>
&lt;h2 id="claude-shannon-dan-teori-informasi">Claude Shannon dan Teori Informasi
&lt;/h2>&lt;p>Pada tahun 1949, Claude Shannon menerbitkan makalah &amp;ldquo;Teori Komunikasi Sistem Kerahasiaan (Communication Theory of Secrecy Systems)&amp;rdquo;, yang meletakkan dasar matematika untuk kriptografi modern. Dia mengusulkan &amp;ldquo;Konfusi (Confusion)&amp;rdquo; dan &amp;ldquo;Difusi (Diffusion)&amp;rdquo; sebagai prinsip desain kriptografi yang aman.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Konfusi (Confusion)&lt;/strong>: Membuat hubungan antara kunci dan cipherteks serumit mungkin. (Dicapai melalui substitusi / S-box)&lt;/li>
&lt;li>&lt;strong>Difusi (Diffusion)&lt;/strong>: Memastikan bahwa perubahan 1 bit dari plainteks mempengaruhi banyak bit dari cipherteks. (Dicapai melalui transposisi / permutasi)&lt;/li>
&lt;/ul>
&lt;h2 id="des-data-encryption-standard">DES (Data Encryption Standard)
&lt;/h2>&lt;p>Pada tahun 1977, Institut Nasional Standar dan Teknologi AS (NIST, saat itu NBS) menetapkan &amp;ldquo;DES&amp;rdquo;, yang berdasarkan desain IBM, sebagai standar kriptografi.
DES mengadopsi arsitektur yang disebut &amp;ldquo;Jaringan Feistel (Feistel Network)&amp;rdquo;, dengan panjang blok 64 bit dan panjang kunci 56 bit. Ia memiliki keuntungan implementasi di mana algoritma enkripsi dan dekripsi memiliki struktur yang hampir sama.&lt;/p>
&lt;p>Namun, seiring dengan peningkatan daya komputasi komputer, menjadi jelas bahwa panjang kunci 56 bit (sekitar $7.2 \times 10^{16}$ kemungkinan) tidak mencukupi. Pada tahun 1998, Electronic Frontier Foundation (EFF) mengembangkan mesin khusus &amp;ldquo;Deep Crack&amp;rdquo; dan mendemonstrasikan pemecahan DES dalam hitungan hari.&lt;/p>
&lt;h2 id="aes-advanced-encryption-standard">AES (Advanced Encryption Standard)
&lt;/h2>&lt;p>Sebagai standar baru untuk menggantikan DES, &amp;ldquo;AES&amp;rdquo; ditetapkan pada tahun 2001. Algoritma &amp;ldquo;Rijndael&amp;rdquo; yang diciptakan oleh kriptografer Belgia, yang dipilih melalui kompetisi publik, diadopsi.&lt;/p>
&lt;p>AES tidak menggunakan struktur Feistel melainkan &amp;ldquo;Jaringan Substitusi-Permutasi (SPN: Substitution-Permutation Network)&amp;rdquo; dan memanfaatkan operasi matematika di atas medan Galois (medan berhingga) $GF(2^8)$. Panjang kunci dapat dipilih dari 128, 192, atau 256 bit, dan hingga saat ini digunakan secara luas sebagai kriptografi kunci simetris standar di seluruh dunia.&lt;/p>
&lt;div class="mermaid">graph TD
subgraph "Pemrosesan 1 Putaran AES (Struktur SPN)"
A["Status Input (128-bit)"] --> B("SubBytes (Substitusi Byte / S-Box)")
B --> C("ShiftRows (Pergeseran Baris)")
C --> D("MixColumns (Pencampuran Kolom / Perkalian di GF(2^8))")
D --> E("AddRoundKey (XOR dengan Kunci Putaran)")
E --> F["Ke putaran berikutnya"]
end&lt;/div>
&lt;hr>
&lt;h1 id="5-revolusi-kriptografi-kunci-publik-dari-diffie-hellman-ke-rsa">5. Revolusi Kriptografi Kunci Publik: Dari Diffie-Hellman ke RSA
&lt;/h1>&lt;p>Kriptografi kunci simetris memiliki kelemahan fatal: &amp;ldquo;Masalah Distribusi Kunci (Key Distribution Problem)&amp;rdquo;. Masalahnya adalah bagaimana berbagi &amp;ldquo;kunci bersama&amp;rdquo; dengan aman dengan pihak yang berada jauh sebelum memulai komunikasi terenkripsi. &amp;ldquo;Kriptografi Kunci Publik&amp;rdquo; yang lahir pada tahun 1970-an memecahkan masalah ini.&lt;/p>
&lt;h2 id="pertukaran-kunci-diffie-hellman">Pertukaran Kunci Diffie-Hellman
&lt;/h2>&lt;p>Pada tahun 1976, Whitfield Diffie dan Martin Hellman menerbitkan makalah terobosan &amp;ldquo;Arah Baru dalam Kriptografi (New Directions in Cryptography)&amp;rdquo;. Mereka mengusulkan metode untuk berbagi kunci dengan aman bahkan melalui saluran komunikasi yang disadap, menggunakan kesulitan matematis yang disebut &amp;ldquo;Masalah Logaritma Diskrit (Discrete Logarithm Problem)&amp;rdquo;.&lt;/p>
&lt;ol>
&lt;li>Publikasikan bilangan prima besar $p$ dan generator $g$.&lt;/li>
&lt;li>Alice memilih nilai rahasia $a$, menghitung $A = g^a \pmod{p}$, dan mengirimkannya ke Bob.&lt;/li>
&lt;li>Bob memilih nilai rahasia $b$, menghitung $B = g^b \pmod{p}$, dan mengirimkannya ke Alice.&lt;/li>
&lt;li>Alice menghitung $K = B^a \pmod{p}$, dan Bob menghitung $K = A^b \pmod{p}$.&lt;/li>
&lt;li>Melalui hukum eksponen, $K = (g^b)^a = (g^a)^b = g^{ab} \pmod{p}$, memungkinkan mereka untuk dengan sukses berbagi kunci yang sama $K$.&lt;/li>
&lt;/ol>
&lt;h2 id="kriptografi-rsa">Kriptografi RSA
&lt;/h2>&lt;p>Tahun berikutnya, pada tahun 1977, &amp;ldquo;Kriptografi RSA&amp;rdquo; diciptakan oleh tiga orang: Ron Rivest, Adi Shamir, dan Leonard Adleman. Ini didasarkan pada properti bahwa &amp;ldquo;memfaktorkan bilangan komposit besar menjadi bilangan prima adalah sulit&amp;rdquo;.&lt;/p>
&lt;p>&lt;strong>Mekanisme Matematis RSA:&lt;/strong>&lt;/p>
&lt;ol>
&lt;li>Pilih dua bilangan prima besar $p$ dan $q$, hitung $n = p \times q$.&lt;/li>
&lt;li>Hitung fungsi totient Euler $\phi(n) = (p-1)(q-1)$.&lt;/li>
&lt;li>Pilih bilangan bulat $e$ (kunci publik) yang relatif prima terhadap $\phi(n)$.&lt;/li>
&lt;li>Hitung bilangan bulat $d$ (kunci privat) sehingga $e \times d \equiv 1 \pmod{\phi(n)}$.&lt;/li>
&lt;/ol>
&lt;p>Enkripsi: Untuk plainteks $M$, $C \equiv M^e \pmod{n}$
Dekripsi: Untuk cipherteks $C$, $M \equiv C^d \pmod{n}$&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Kode Python menunjukkan konsep kriptografi RSA (bukan untuk penggunaan praktis)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">ext_euclid&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">b&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1"># Perhitungan invers modular menggunakan algoritma Euclidean yang diperluas&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">b&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="k">return&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">a&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">x&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">y&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">g&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">ext_euclid&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">b&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">a&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="n">b&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">y&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">x&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span> &lt;span class="o">//&lt;/span> &lt;span class="n">b&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="n">y&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">g&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">rsa_example&lt;/span>&lt;span class="p">():&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1"># Contoh menggunakan bilangan prima kecil&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">p&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">q&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">61&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">53&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">n&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">p&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="n">q&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">phi&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">p&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">q&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">e&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">17&lt;/span> &lt;span class="c1"># nilai yang relatif prima dengan phi&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">d&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">_&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">_&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">ext_euclid&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">e&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">phi&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">d&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">d&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="n">phi&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Kunci Publik: (e=&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">e&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">, n=&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">)&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Kunci Privat: (d=&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">d&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">, n=&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">)&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1"># Enkripsi dan dekripsi pesan&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">message&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">65&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ciphertext&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">pow&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">message&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">e&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">n&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">decrypted&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">pow&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ciphertext&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">d&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">n&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Plainteks: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">message&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2"> -&amp;gt; Cipherteks: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">ciphertext&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2"> -&amp;gt; Setelah dekripsi: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">decrypted&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">rsa_example&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;h1 id="6-bangkitnya-kriptografi-kurva-eliptik-ecc">6. Bangkitnya Kriptografi Kurva Eliptik (ECC)
&lt;/h1>&lt;p>Meskipun kriptografi RSA kuat, dengan peningkatan kinerja komputer, menjadi perlu untuk memperpanjang kunci (saat ini 2048 atau 3072 bit) untuk menjaga keamanan, yang mengakibatkan masalah peningkatan biaya komputasi.&lt;/p>
&lt;p>Sebagai solusinya, &amp;ldquo;Kriptografi Kurva Eliptik (ECC: Elliptic Curve Cryptography)&amp;rdquo; diusulkan pada tahun 1985. Ini menggunakan penambahan titik pada kurva eliptik di atas medan berhingga (umumnya dalam bentuk $y^2 = x^3 + ax + b$).&lt;/p>
&lt;p>Masalah logaritma diskrit pada kurva eliptik (ECDLP) diketahui lebih sulit dipecahkan daripada masalah faktorisasi prima, sehingga &lt;strong>ECC dapat mencapai tingkat keamanan yang setara dengan RSA 3072-bit hanya dengan panjang kunci 256-bit&lt;/strong>. Hal ini memungkinkan komunikasi terenkripsi yang cepat dan aman (seperti ECDSA dan ECDH) bahkan di lingkungan dengan sumber daya komputasi terbatas seperti smartphone dan perangkat IoT.&lt;/p>
&lt;hr>
&lt;h1 id="7-ancaman-komputer-kuantum-dan-kriptografi-pasca-kuantum-pqc">7. Ancaman Komputer Kuantum dan Kriptografi Pasca-Kuantum (PQC)
&lt;/h1>&lt;p>Teknologi kriptografi tampaknya sangat solid, tetapi algoritma Shor yang diterbitkan oleh Peter Shor pada tahun 1994 memberikan kejutan besar.&lt;/p>
&lt;p>Komputer kuantum melakukan komputasi menggunakan sifat mekanika kuantum dari &amp;ldquo;superposisi&amp;rdquo; dan &amp;ldquo;keterikatan kuantum (quantum entanglement)&amp;rdquo;. Telah terbukti secara matematis bahwa ketika algoritma Shor dieksekusi pada komputer kuantum dengan kinerja yang memadai, masalah faktorisasi prima dan masalah logaritma diskrit dapat diselesaikan dalam &amp;ldquo;waktu polinomial&amp;rdquo;. Ini berarti bahwa pada hari ketika komputer kuantum yang praktis selesai (Q-Day), semua kriptografi kunci publik yang digunakan saat ini seperti RSA dan ECC akan hancur seketika.&lt;/p>
&lt;h2 id="kemunculan-pqc-post-quantum-cryptography">Kemunculan PQC (Post-Quantum Cryptography)
&lt;/h2>&lt;p>Untuk mempersiapkan diri terhadap ancaman yang belum pernah terjadi sebelumnya ini, penelitian mengenai &amp;ldquo;Kriptografi Pasca-Kuantum (PQC)&amp;rdquo; dengan cepat dimajukan. PQC didasarkan pada masalah matematika baru yang sulit dipecahkan bahkan oleh komputer kuantum. NIST (Institut Nasional Standar dan Teknologi AS) telah memajukan proses standardisasi PQC selama bertahun-tahun, dan pendekatan matematika berikut ini sebagian besar dianggap paling menjanjikan:&lt;/p>
&lt;h3 id="1-kriptografi-berbasis-kisi-lattice-based-cryptography">1. Kriptografi Berbasis Kisi (Lattice-based Cryptography)
&lt;/h3>&lt;p>Ini adalah pendekatan paling menjanjikan saat ini, dan telah diadopsi dalam algoritma standardisasi NIST (ML-KEM / Kyber, ML-DSA / Dilithium). Hal ini didasarkan pada kesulitan menemukan titik tertentu pada &amp;ldquo;kisi (Lattice)&amp;rdquo; dalam ruang multidimensi (seperti Shortest Vector Problem: SVP) dan kesulitan masalah LWE (Learning With Errors).&lt;/p>
&lt;p>Konsep masalah LWE memanfaatkan sifat bahwa jika &amp;ldquo;derau kecil (kesalahan)&amp;rdquo; secara sengaja ditambahkan ke sistem persamaan linear, maka secara tiba-tiba akan menjadi sangat sulit untuk menemukan solusinya.
Sistem Persamaan: $\mathbf{A}\mathbf{s} + \mathbf{e} \equiv \mathbf{b} \pmod{q}$
($\mathbf{A}$ dan $\mathbf{b}$ adalah publik, $\mathbf{s}$ adalah kunci rahasia, $\mathbf{e}$ adalah derau mikroskopis)&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Kode pseudo konseptual dari masalah LWE (untuk tujuan pembelajaran)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">numpy&lt;/span> &lt;span class="k">as&lt;/span> &lt;span class="nn">np&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">n&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">256&lt;/span> &lt;span class="c1"># Dimensi&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">q&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">3329&lt;/span> &lt;span class="c1"># Modulus&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">m&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">512&lt;/span> &lt;span class="c1"># Jumlah persamaan&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Kunci rahasia s dan kesalahan kecil e&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">s&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">np&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">random&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">randint&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">5&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">size&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">e&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">np&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">random&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">randint&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">size&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">m&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Matriks publik A dan vektor publik b&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">A&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">np&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">random&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">randint&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">q&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">size&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">m&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">n&lt;/span>&lt;span class="p">))&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">b&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">np&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">dot&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">A&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">s&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="n">e&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="n">q&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># Bahkan dengan menggunakan komputer kuantum, sangat sulit untuk memulihkan s dari A dan b&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h3 id="2-kriptografi-berbasis-hash-hash-based-cryptography">2. Kriptografi Berbasis Hash (Hash-based Cryptography)
&lt;/h3>&lt;p>Ini adalah skema tanda tangan digital yang mendasarkan keamanannya semata-mata pada ketahanan bentrokan (collision resistance) dari fungsi hash. Ia kuat terhadap serangan kuantum karena tidak memiliki struktur matematis, tetapi cenderung menghasilkan ukuran tanda tangan yang besar (seperti SPHINCS+).&lt;/p>
&lt;h3 id="3-kriptografi-berbasis-kode-code-based-cryptography">3. Kriptografi Berbasis Kode (Code-based Cryptography)
&lt;/h3>&lt;p>Ini adalah skema kriptografi berdasarkan teori kode koreksi kesalahan (error-correcting codes). Kriptografi McEliece yang diusulkan pada tahun 1978 terkenal dan memiliki sejarah panjang serta reputasi keamanan yang baik, tetapi memiliki kelemahan yaitu ukuran kunci publik yang sangat besar (terkadang mencapai beberapa megabyte).&lt;/p>
&lt;div class="mermaid">timeline
title "Sejarah Evolusi Teknologi Kriptografi dan Komputer"
"Kuno hingga Pertengahan" : "Sandi Caesar" : "Sandi Vigenère" : "Kelahiran Analisis Frekuensi"
"Tahun 1930 - 1940-an" : "Pengoperasian dan Pemecahan Enigma" : "Pengembangan Mesin Turing / Bombe"
"Tahun 1970-an" : "Standardisasi DES (1977)" : "Pertukaran Kunci Diffie-Hellman (1976)" : "Kelahiran Kriptografi RSA (1977)"
"Tahun 1980 - 1990-an" : "Usulan Kriptografi Kurva Eliptik (ECC)" : "Publikasi Algoritma Shor (1994)"
"Tahun 2000-an" : "Standardisasi AES (2001)"
"Tahun 2010-an hingga kini" : "Akselerasi Penelitian Komputer Kuantum" : "Dimulainya Proyek Standardisasi PQC oleh NIST"
"Masa Depan Dekat (Q-Day)" : "Realisasi Komputer Kuantum Skala Besar?" : "Transisi Penuh ke PQC (ML-KEM/ML-DSA)"&lt;/div>
&lt;hr>
&lt;h1 id="8-kesimpulan-pertarungan-tanpa-akhir-antara-perisai-dan-tombak">8. Kesimpulan: Pertarungan Tanpa Akhir antara Perisai dan Tombak
&lt;/h1>&lt;p>Sejarah teknologi kriptografi adalah sejarah pertarungan tanpa akhir antara penemuan metode kriptografi baru (perisai) dan metode dekripsi baru (tombak) yang memecahkannya.&lt;/p>
&lt;p>Sandi Caesar dikalahkan oleh analisis frekuensi, dan Enigma yang konon tak terkalahkan dihancurkan oleh otak jenius Turing dan kekuatan mesin. Dan kini, kriptografi kuat seperti RSA dan ECC yang mendukung fondasi masyarakat internet modern, dihadapkan pada ancaman dari &amp;ldquo;tombak&amp;rdquo; baru yang disebut komputer kuantum.&lt;/p>
&lt;p>Namun, umat manusia telah melihat masa depan dan sedang bersiap dengan &amp;ldquo;perisai&amp;rdquo; baru yang disebut Kriptografi Pasca-Kuantum (PQC). Saat ini, mempersiapkan transisi dari kriptografi kunci publik yang ada menuju PQC (memastikan Crypto Agility) adalah tugas mendesak di infrastruktur TI di seluruh dunia.&lt;/p>
&lt;p>Kriptografi bukan sekadar teka-teki matematika yang sulit, melainkan benteng pertahanan terkuat untuk melindungi privasi, properti, dan infrastruktur sosial kita.&lt;/p></description></item></channel></rss>