Kriptografi
Kriptografi (atau kriptologi; dari bahasa Yunani  kryptós, "tersembunyi, rahasia"; dan  graphein, "menulis", atau- logi, "ilmu") atau sandisastra merupakan keahlian dan ilmu dari cara-cara untuk komunikasi aman pada kehadirannya di pihak ketiga. Secara umum, kriptografi ialah mengenai mengkonstruksi dan menganalisis protokol komunikasi yang dapat
memblokir lawan; berbagai aspek dalam keamanan informasi seperti data rahasia, integritas data, autentikasi, dan non-repudansi merupakan pusat dari kriptografi modern. Kriptografi modern terjadi karena terdapat titik temu antara disiplin ilmu matematika, ilmu komputer, dan teknik elektro. Aplikasi dari kriptografi termasuk ATM, password komputer, dan E-commerce.
Kriptografi sebelum merupakan sinonim dari "enkripsi", konversi dari kalimat-kalimat yang dapat dibaca menjadi kelihatan tidak masuk akal. Pembuat dari pesan enkripsi membagi teknik pemecahan sandi yang dibutuhkan untuk mengembalikan informasi asli jika hanya dengan penerima yang diinginkan, sehingga dapat mencegah orang yang tidak diinginkan melakukan hal yang sama.
Sejak Perang Dunia I dan kedatangan komputer, metode yang digunakan untuk mengelola kriptologi telah meningkat secara komplek dan pengaplikasiannya telah tersebar luar.
Kriptografi modern sangat didasari pada teori matematis dan aplikasi komputer; algoritme kriptografi didesain pada asumsi ketahanan komputasional, membuat algoritme ini sangat sulit dipecahkan oleh musuh. Secara teoretis, sangat sulit memecahkan sistem kriptografi, namun tidak layak melakukannya dengan cara-cara praktis. Skema ini oleh karena itu disebut sangat aman secara
komputasional; kemajuan teoretis dapat meningkatkan algoritme faktorisasi integer, dan meningkatkan teknologi komputasi yang membutuhkan solusi ini untuk diadaptasi terus-menerus. Terdapat skema keamanan informasi yang benar-benar tidak boleh dapat ditembus bahkan dengan komputasi yang tak terbatas namun skema ini sangat sulit diimplementasikan.
Teknologi yang berhubungan dengan kriptologi memiliki banyak masalah legal. Di Inggris, penambahan Regulasi Penyelidikan Aksi Wewenang membutuhkan kriminal yang tertuduh harus menyerahkan kunci dekripsinya jika diminta oleh penegah hukum. Jika tidak pengguna akan menghadapi hukum pidana. Electronic Frontier Foundation (EFF) terlibat dalam sebuah kasus di Amerika Serikat yang mempertanyakan jika
seorang tersangka harus untuk menyerahkan kunci dekripsi mereka kepada pengak hukum merupakan inkonstitusionil. EFF memperdebatkan bahwa regulasi ini merupakan pelanggaran hak untuk tidak dipaksa mencurigai dirinya sendiri, seperti dalam Amendemen Kelima Konsitusi Amerika.
Hingga zaman modern kriptografi mengacu hampir secara ekslusif pada enkripsi, yang merupakan proses mengkonversikan informasi biasa menjadi teks yang tak dapat dipahami (disebut teks sandi). Deskripsi merupakan kebalikan, dengan kata lain, memindahkan teks sandi yang tidak dapat dibaca menjadi teks yang dapat dibaca. sandi atau (cypher) merupakan sepasang algoritme yang
menciptakan enkripsi dan membalikan dekripsi. Operasi yang lebih mendalam dari sandi diatur baik oleh algoritme dan pada setiap permintaan dekripsi dengan kunci. Kunci ini bersifat rahasia (yang biasanya diketahui hanya oleh orang yang berkomunikasi), dan biasanya terdiri dengan karakter string singkat, yang dibutuhkan untuk mendekripsi teks sandi. Sebelumnya dinamakan
"kriptosistem" yang merupakan daftar teratur dari elemen-elemen teks terbatas, teks sandi terbatas, kunci terbatas, dan algoritme dekripsi dan enkripsi yang berkoresponden pada setiap kunci. Kunci sangat penting baik pada penggunaan secara teoretis maupun sebenarnya, dimana sandi tanpa kunci variabel dapat dengan mudah rusak dengan hanya pengetahuan yang
digunakan dari sandi dan dengan kemungkinan tidak berguna (atau malam tidak produktif) untuk banyak tujuan. Secara historis, sandi sering digunakan secara langsung untuk enkripsi atau deskripsi tanpa prosedur tambahan seperti autentikasi atau pengecekan integritas.
Dalam penggunaan bahasa sehari-hari, istilah "sandi" sering digunakan untuk menunjukkan setiap metode enkripsi atau penyembunyian arti. Bagaimanapun, dalam kriptografi, sandi telah memiliki arti yang lebih spesifik. Itu berarti pemindahan unit teks (contoh kata atau frasa yang berarti) dengan sebuah kata sandi (sebagai contoh, "wallaby" berarti "menyerang
saat fajar"). Sandi tidak lagi digunakan pada kriptografi serius-kecuali sesekali untuk beberapa hal yang menyangkut istilah tertentu-sejak sandi yang dipilih secara tepat lebih praktis dan lebih aman daripada sandi terbaik dan juga dapat diadaptasikan pada komputer.
Kriptanalisis merupakan istilah yang digunakan untuk mempelajari metode untuk memperoleh arti dari informasi enkripsi tanpa mengakses sandi secara normal yang dibutuhkan untuk melakukannya; sebagai contoh ilmu yang mempelajari cara untuk memecahkan algoritme enkripsi atau implementasinya.
Beberapa kegunaan dari istilah kriptografi dan kriptologi selalu berubah di Bahasa Inggris, sedang lainnya menggunakan kriptografi untuk merujuk secara spesifik pada penggunakan dan pengaplikasikan dari teknik kriptografi dan kriptologi untuk merujuk pada ilmu kombinasi dari kriptografi dan kriptanalisis. Bahasa Inggris lebih fleksibel dari istilah umum yang
digunakan pada beberapa bahasa lain yang dimana kriptologi (dilakukan oleh kriptolog) selalu digunakan pada arti kedua di atas.
Ilmu karateristik dari bahasa yang memiliki aplikasi pada kriptografi (atau kriptologi) (seperti data frekuensi, kombinasi surat, pola universal, dll.) disebuh kriptolinguistik.
Sebelum zaman modern, kriptografi dilihat hanya semata-mata berhubungan dengan pesan rahasia (seperti enkripsi)-konversi pesan dari bentuk dapat dipahami menjadi bentuk yang tak dapat dipahami dan kembali lagi satu dengan yang lain, menjadikannya tak dapat dibaca oleh pencegat atau penyadap tanpa ilmu khusus (dimana sandi dibutuhkan untuk dekripsi pesan
itu). Enkripsi digunakan untuk menyakinkan kerahasiaan di komunikasi, termasuk teknik untuk pemeriksaan integritas pesan, autentikasi identitas pengirim/penerima, tanda-tangan digital, bukti interaktif dan komputasi keamanan, serta banyak lagi yang lain.
Bentuk awal dari penulisan rahasia membutuhkan lebih sedikit dari implementasi penulisan sejak banyak orang tidak dapat membaca. lawan yang lebih terpelajar, membutuhkan kriptografi yang nyata. Tipe sandi klasik utama ialah sandi transposisi, dimana mengatur aturan huruf pada pesan (contoh 'hello world' menajdi 'ehlol owrdl' pada skema pengubahan sederhana
ini), dan sandi subtitusi, dimana secara sistematis mengganti huruf atau grup kata dengan kata lainnya dari grup kata (contoh 'fly at once' menjadi 'gmz bu podf' dengan mengganti setiap huruf dengan yang lain di alfabet Latin. Substitusi sandi pada awalnya disebut sandi Caesar, dimana setiap kata pada teks diganti degan huruf dari jumlah tetap pada posisi di alfabet. Laporan
Suetonius menyebutkan Julius Caesar mengunakannya untuk berkomunikasi dengan jendral-jendralnya. Atbash merupakan contoh dari sandi Ibrani pada mulanya. Penggunaan awal kriptografi yang diketahui merupakan teks sandi yang diukir pada batu di Mesir (1900 sebelum Masehi), namun teks sandi ini digunakan hanya sebagai hiburan untuk pengamat terpelajar daripada cara untuk menyimpan informasi.
Yunani kuno menyebutkan telah mengetahui sandi (contoh sandi transposisi scytale yang diklaim telah digunakan oleh militer Sparta. Steganografi (menyembunyikan kehadiran pesan sehingga pesan tersebut menjadi rahasia) juga pertama kali diperkenalkan pada masa kuno. Contoh awal seperti, dari Herodotus, menyembunyikan pesan- sebuah tato pada kepala
budaknya- di bawah rambut yang kembali tumbuh. COntoh yang lebih modern dari steganografi termasuk penggunaan tinta tak tampak, mikrodot, dan tanda air digital untuk menyembunyikan informasi.