berita

Cara terbaik untuk mengenkripsi adalah dengan mempublikasikannya? Mengapa kriptografi modern begitu aneh?

2024-07-18

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


Klik pada gambar untuk melompat ke video!



Sekarang! Pikirkan angka lima digit di benak Anda, jadi bagaimana Anda menyampaikannya kepada pengulas negatif secara diam-diam?

Mari kita lihat ide yang bagus. Misalkan angka yang Anda inginkan adalah 66666 atau 12345, dst.

Silakan kalikan dengan angka keberuntungan pengulas buruk 2359, ambil hanya lima digit terakhir dari hasilnya dan ketik di layar publik, dan saya akan tahu nomor apa yang Anda pikirkan. Apakah kamu siap?


Selanjutnya adalah waktu untuk debugging. Kalikan lima digit yang Anda dapatkan dengan 12039. Lima digit terakhir hasilnya adalah angka yang Anda inginkan. Sepertinya ajaib kan?

Faktanya, selain sihir, ia memiliki asal usul yang lebih mengesankan – kriptografi modern. Bahkan kartu bank, email, dan perangkat lunak obrolan Anda terkait erat dengannya.

Lalu apa hubungannya dengan kriptografi modern, dan apa prinsipnya? Mengapa didesain seperti ini?Mari kita lihat kriptografi yang berbeda!

Ide matematikawan jenius tentang kriptografi modern

Ketika berbicara tentang kriptografi, kita harus menyebut orang itu!Claude Elwood Shannon.


Dalam bukunya “Communication Theory of Secrecy Systems” yang diterbitkan pada tahun 1949, ia secara matematis membagi kriptografi menjadi kriptografi klasik dan kriptografi modern. Namun karena teori kriptografi modern terdengar terlalu mendasar, teori tersebut dibiarkan dalam kegelapan selama lebih dari tiga puluh tahun setelah kelahirannya.

Misalnya, Prinsip Kerckhoffs dalam kriptografi modern menyatakan: Setiap orang dalam sistem kriptografi harus mengetahui apa itu metode enkripsi. Bukankah ini pernyataan yang gila? Semua orang mengetahui metode enkripsi, namun mereka masih mempelajarinya ah?

Contoh lainnya adalah teori one-time pad yang diajukan oleh Vernam yang sejalan dengan kerahasiaan sempurna Shannon. Kedengarannya lebih neurotik. Namun jika Anda membaca kesulitan-kesulitan yang dialami oleh kode-kode klasik, Anda akan mengetahui betapa masuk akal pernyataan ini!

sandi klasik

Di era kriptografi klasik, konsep kriptografi masih relatif kabur. Meskipun banyak digunakan di bidang militer, metode enkripsi lebih bersifat artistik.


Bagaimanapun, hanya sebuah konsep:Coba tebak perubahan acaknya.

Saya tidak bercanda, itulah yang tertulis di koran. Meskipun di Wikipedia, sandi klasik dirangkum sebagai sandi substitusi, sandi geser, atau campuran keduanya.

Namun perlu dicatat bahwa ini diringkas sebagai daripada didefinisikan sebagai, yang menunjukkan bahwa kriptografi klasik masih merupakan istilah yang imajinatif.

Misalnya bagi orang asing, bahasa Mandarin sendiri sebenarnya merupakan kode klasik.

Misalnya kita mengganti kalimat "siapa namamu" dengan bahasa Mandarin satu per satu, lalu memindahkan itemnya, menjadi: "Siapa namamu". Bukankah ini sejalan dengan persyaratan migrasi penggantian kata sandi klasik?


Tentu saja penalaran seperti ini memang sangat imajinatif, namun bagaimanapun juga, buku kode klasik menggunakan imajinasi untuk menciptakan bahasa baru yang Anda pahami, saya pahami, dan bahasa lain yang tidak.

MisalnyaJimat Yin disebutkan dalam Buku Pra-Perang Qin "Enam Tao", ini ditemukan oleh Jiang Ziya, seorang nelayan. Untuk mengirimkan laporan pertempuran dengan cepat dari depan tanpa diketahui oleh musuh, dia menemukan metode untuk mengirimkan laporan pertempuran menggunakan pancing dengan panjang yang berbeda Catatan sejarah Tiongkok.


Contoh lainnya adalah pada tahun 700 SM, tentara Yunani kuno menggunakan senjata yang disebutLog stick Scytale untuk komunikasi rahasia.

Penggunaannya adalah:

Bungkus selembar perkamen panjang di sekitar batang kayu, lalu tulis di atasnya; setelah melepaskan ikatan perkamen, hanya ada karakter kacau di atasnya. Hanya dengan membungkusnya lagi dengan cara yang sama di sekitar batang dengan ketebalan yang sama, isi tulisan dapat dibuat dilihat.


Dari sinilah inspirasi cipher stick di Conan berasal.

Tentu saja banyak juga sandi klasik yang menarik, seperti sandi Caesar, sandi pagar, dll. . .

Saya serahkan kepada teman-teman saya untuk menambahkan di sini, namun ada kelemahan fatal dalam kriptografi klasik, yaitu terlalu simetris. Apa artinya?

Simetri ini memiliki dua arti. Pertama, enkripsi kriptografi klasik bersifat reversibel. Setelah Anda mengetahui cara mengenkripsi, Anda dapat dengan mudah menyimpulkan cara mendekripsi. Jadi orang dahulu hanyalah orang dahulu dan mereka tidak bodoh. Jika mereka menangkap seseorang hidup-hidup, tidakkah mereka tahu cara menggunakan kode ini?


Arti lain dari simetri adalah bagaimana pun Anda mengganti teks biasa, akan selalu ada korespondensi satu-satu antara teks biasa dan teks tersandi .

Misalnya, bagan ini adalah laporan analisis frekuensi penggunaan huruf dan kata dari analisis Pitt.com terhadap 3,5 triliun manuskrip. Ini menunjukkan bahwa tidak peduli bagaimana Anda menggantinya, atau berapa banyak lapisan penggantian yang dilakukan, selama teks sandi disadap. Jika jumlahnya terlalu banyak, maka akan selalu diambil dengan metode analisis frekuensi.


Tentu saja meskipun permasalahan telah ditemukan, namun terlihat jelas bahwa para kriptografer klasik belum menyelesaikan permasalahan tersebut dengan baik, bahkan secara tidak langsung membuktikan bahwa kriptografi klasik memang tidak efektif.

Misalnya, selama Perang Dunia II,Puncak kriptografi klasik adalah Enigma.


Saat mengenkripsi, cukup masukkan teks biasa (dianzan) yang ingin Anda enkripsi pada keyboard mesin, dan yang menyala adalah teks sandi terenkripsi. Selain itu, huruf yang sama dalam teks biasa juga akan dienkripsi menjadi teks tersandi yang berbeda, yang secara efektif mencegah metode analisis frekuensi.

Selain ituBahkan mengetahui cara kerjanya pun sulit untuk dipecahkan.

Bagaimana hal ini dilakukan?

Kita sampai pada bagian dalam mesin Enigma, perangkat rotor. Di ujung kanan roda input perangkat ini, terdapat 26 kontak, yang dihubungkan dengan 26 huruf pada keyboard.


Bagian tengah perangkat terdiri dari beberapa roda dengan 26 kontak yang sama, tetapi agak berbeda dari roda masukan. Ada beberapa mekanisme peralihan tambahan yang rumit di dalam roda, yang berarti bahwa setiap kali huruf-huruf dari papan masukan lewat melalui roda, diganti satu kali.


Pada ujung alat tersebut terdapat alat yang disebut reflektor yang masih mempunyai 26 titik kontak. Titik kontak disini digabungkan berpasangan sehingga membentuk titik pembalikan yang sama seperti pada perlombaan renang.

Dan setelah surat-surat tersebut tertukar lagi disini, masih harus kembali ke kemudi dan diganti lagi sebelum akhirnya kembali ke titik awal.


Ini menyelesaikan proses enkripsi. Terlihat bahwa ini adalah superposisi dari beberapa penggantian, namun nyatanya mesin Enigma memiliki sentuhan akhir. Setiap kali keyboard ditekan, perangkat tuas khusus akan menggerakkan roda untuk berputar satu kali. , dan terdapat pola roda khusus pada roda tersebut. Setelah roda sebelumnya berputar satu kali, roda berikutnya juga akan berputar satu kali.

Hal ini membuat rangkaian enkripsi yang digunakan saat menekan setiap huruf menjadi berbeda, sehingga metode analisis frekuensi menjadi tidak valid.


Selain itu, sangat sulit untuk merekayasa balik desain seperti itu, meskipun seseorang mengetahui cara kerjanya.

Ambil contoh mesin Enigma asli, ia memiliki tiga baris roda roulette berpola yang baru saja disebutkan. Setiap roda memiliki 26 huruf dan dapat diputar atur posisi awal roda rolet.

Selain itu, demi keamanan, seperangkat mekanisme pertukaran dipasang di bagian luar. Artinya, jika o dan e disambung, ketika o ditekan, sebenarnya setara dengan menekan e.

Asumsikan kita memilih 6 pasangan secara acak untuk ditukar setiap kali. Menurut algoritma teori probabilitas, kita telah menghasilkan lebih dari 100 miliar kemungkinan. Sudah ada 1700 triliun kemungkinan untuk posisi awal ini saja.


Mesin Enigma generasi selanjutnya bahkan meningkatkan jumlah roda roulette menjadi 8 sekaligus, dan jumlah kalkulasi yang diperlukan untuk melakukan kalkulasi terbalik meningkat secara eksponensial. Tan.

Terlebih lagi, mesin Enigma pada saat itu akan mengubah rencana awalnya setiap hari. Artinya juga jika penghitungan tidak dapat dilakukan pada hari yang sama, maka akan dihitung ulang pada hari berikutnya. Hal ini menambah tingkat kesulitan pada brute force cracking.


Namun teman-teman yang mengetahui tentang Perang Dunia II pasti tahu bahwa mesin Enigma akhirnya berhasil dipecahkan, bahkan sebelum komputer itu lahir.

1940, bapak komputer, ahli matematika InggrisAlan Turing, memecahkan mesin Enigma.


Tapi bukankah saya baru saja mengatakan bahwa tidak mungkin memecahkannya tanpa komputer? Pernyataan ini memang benar, tapi orang Jerman terlalu sombong dan sombong apapun yang mereka posting, mereka harus mengatakan "heil hitle".


Hei, tidak hanya itu, orang Jerman juga suka melapor, dan dari waktu ke waktu mereka akan mengirimkan pesan kepada atasan: Melapor ke atasan, tidak terjadi apa-apa! Satu kalimat lagi: heil hitle.

Menurut etiket, komandan harus menjawab (Heilhitle) untuk menyatakan bahwa saya menerimanya~ Berbicara secara logis, akan lebih baik untuk melaporkan masalah besar ini secara langsung keadaan harus dijaga, termasuk Yu Zhong ini! Harus penuh teka-teki!

Operasi yang ketat dan bebas ini segera memungkinkan Turing memperoleh banyak petunjuk terkait dengan rahasia dan rahasia tersebutGordon WelchmanDia menemukan mesin dekripsi yang disebut "Mesin Bom" dan merekayasa balik mesin Enigma.

Jadi ini sekali lagi menunjukkan bahwa seperti sandi klasik, metode enkripsi simetris yang mengetahui cara mengenkripsi dapat mengetahui cara mendekripsi pada dasarnya akan terpecahkan.


kriptografi modern

Apakah ada metode enkripsi di mana pengirim pesan hanya mengetahui cara mengenkripsi tetapi tidak mengetahui cara mendekripsi, sedangkan penerima pesan mengetahui cara mengenkripsi dan mendekripsi?

Padahal, inilah salah satu arah penelitian kriptografi modern, yaitu bagaimana penerapan enkripsi asimetris.


Metode enkripsi ini berdasarkan kriptografi klasik, memperkenalkan konsep kunci dan membagi kunci menjadi kunci publik dan kunci privat. Kunci publik digunakan untuk enkripsi dan kunci privat digunakan untuk dekripsi. Dengan cara ini, meskipun metode enkripsi dipublikasikan, selama kunci pribadi masih aman, sistem enkripsi tidak akan dibobol.

Oleh karena itu, praktik kriptografer modern yang mengungkapkan metode enkripsi sebenarnya tidak akan mempengaruhi keamanan sistem enkripsi.

Ingat permainan ajaib yang kita mulai?

2359 adalah kunci publik yang dapat digunakan siapa saja untuk mengenkripsi. Secara teori, selama Anda melindungi kunci pribadi 12039 yang digunakan untuk dekripsi, ini adalah enkripsi asimetris.

Prinsipnya juga sangat sederhana. Jika kunci publik dan kunci privat dikalikan, hasilnya adalah 28400001, artinya bilangan dalam lima digit dikalikan dua digit sama dengan perkalian 00001.


Namun ini jelas tidak cukup aman untuk enkripsi asimetris tingkat aplikasi. Jika Anda ingin melangkah lebih jauh, Anda perlu menggunakan fungsi khusus dalam matematika.

diteleponFungsi satu arah pintu jebakan, juga disebut fungsi pintu jebakan satu arah. Sangat mudah untuk menghitung arah maju dari fungsi ini, tetapi hampir tidak mungkin untuk mendorongnya kembali. Namun, jika Anda mengetahui beberapa informasi penting, akan sangat mudah untuk mendorongnya kembali .

MisalnyaAlgoritma RSA yang sangat terkenal,Perangkat lunak perbankan, email, dan obrolan, hampir semua area yang melibatkan nomor yang dapat Anda pikirkan, berada di bawah perlindungannya. Ini dapat dianggap sebagai tingkat aplikasi yang tepat. Prinsip enkripsinya menggunakan fungsi pintu jebakan tunggal.


Saat mengenkripsi, Anda hanya perlu mengeksponenkan data kunci publik dan kemudian mencari sisanya untuk mendapatkan ciphertext. Contoh sederhananya, misalnya angka yang akan dienkripsi adalah 5, dan kunci publiknya adalah (7, 33). Anda hanya perlu menaikkan plaintext 5 ke pangkat 7 sesuai dengan data kunci publik lalu mencarinya modulus 33 untuk mendapatkan ciphertext 14.

Jika Anda ingin mendekripsi teks biasa sesuai dengan cara enkripsinya, Anda akan terjebak pada langkah pertama, karena ada kemungkinan tak terbatas untuk menemukan sisa angka 14 dari 33, yang juga berarti tidak mungkin menentukan apa teks biasa tersebut. . Apa.


Namun jika kita memegang kunci privat (3, 33), kita hanya perlu mengeksponenkan kembali ciphertext tersebut sesuai dengan data kunci privat tersebut untuk mencari sisanya. Anda dapat mengembalikan teks biasa 5. Hal ini mencapai pemisahan proses enkripsi dan dekripsi karena tidak dapat dibalik, dapatkah kunci privat dihitung melalui kunci publik?

Mari kita lihat proses produksi kunci privat dan kunci publik:

Pertama, kita pilih dua bilangan prima. Hasil kali bilangan prima dicatat sebagai N. Kita menghitung fungsi φ melalui fungsi Euler φ(n) = (p-1) * (q-1). E. E perlu Kunci privat yang memenuhi 1 diperoleh dengan menghitung invers perkalian dari E modulo φ ( n ).

Ketika kita hanya mengetahui kunci publik dan ingin menghitung kunci privat, kita harus mendapatkan dua bilangan prima pertama.

Karena bilangan prima yang diambil di sini relatif kecil untuk memudahkan pemahaman semua orang, dan biasanya bilangan prima ini sangat besar. Sekalipun kita dapat mengetahui hasil kali dua bilangan prima dalam kunci publik, kita ingin menyimpulkan kedua bilangan prima tersebut secara terbalik angka melalui faktorisasi, menurut tingkat perhitungan saat ini, setidaknya video ini akan melebihi 10 juta.


Tapi secara teori, komputer kuantum bisa berfungsi, ya. . Kecuali Anda dapat mengumpulkan 4096 qubit logis pada komputer kuantum untuk menjalankan algoritma Shor secara efektif. Namun karena kuantum memerlukan koreksi kesalahan, komputer kuantum yang Anda operasikan memerlukan setidaknya jutaan qubit fisik.


Nah, yang tercanggih saat ini hanya memiliki skala puluhan hingga ratusan qubit. Ini juga berarti bahwa brute force cracking pada fungsi pintu jebakan satu arah yang serupa dengan algoritma RSA pada dasarnya tidak mungkin dilakukan dalam beberapa dekade mendatang.

Jadi, bagi kita saat ini,Algoritma enkripsi sudah sangat kuat, namun ini tidak berarti keamanan mutlak.

akhirnya

Karena algoritma enkripsi yang kuat ini hanya dapat memastikan bahwa uang di kartu bank Anda tidak dirusak sesuka hati.

Namun, jika kesadaran pengguna akan pencegahan tidak cukup kuat, mereka memasukkan kata sandi di situs web tertentu, atau mendaftarkan banyak aplikasi berbeda dengan nama pengguna dan kata sandi yang sama, kemungkinan besar ini akan digunakan oleh peretas untuk melakukan brute force crack.


Melihat kembali setiap era kriptografi, tampaknya manusia selalu menjadi celah terbesar dalam kriptografi ketat.

Seperti yang dikatakan oleh pakar kriptografi Amerika, Bruce Schneier: "Keamanan itu seperti sebuah rantai, bergantung pada mata rantai yang paling lemah."

Dalam dunia keamanan informasi, teknologi dapat membangun tembok tinggi, namun dalam dunia manusia, emosi telah menjadi kerentanan terbesar dalam keamanan.

Meskipun kriptografi itu membosankan, kami tetap semangat dan berharap semakin banyak orang yang mengetahui dan menyadarinyaWaspada dan lindungi diri Anda sendiri. Ini adalah tujuan akhir kriptografi modern.

Menulis sebuah artikel:oranye

Produksi video:Resensi buruk dari stasiun B

Penyunting seni:Huanyan

Gambar, sumber

Perkembangan dan teknologi kriptografi—Xiao Wei

Kriptografi klasik—Tan Yifu, Song Peifei, dan Li Zichen (Institut Seni Grafis Beijing)

Algoritma yang bahkan dapat dipahami oleh mereka yang tidak pandai matematika—Technical Egg Teacher

Sandi Caesar, enkripsi sempurna, dan studi pendahuluan tentang kriptografi modern—Le Zhengchuixing

Algoritma enkripsi berdasarkan fungsi pintu jebakan satu arah - Guo Shushi dan Zhang Xinyu

"Ilustrasi Teknologi Kriptografi" - ditulis oleh Hiroshi Yuki dan diterjemahkan oleh Zhou Ziheng

Perebutan kata sandi - Xiaolangdibulang