Antara hashing dengan enkripsi…

I’m back!™

Hehe akhirnya nulis juga; setelah masa fake holiday yang nyebelin dan ngeselin (bikin kesel badan maksudnya) maka nulis menjadi susah. Kalau dulu sulit karena terlalu sedikit dan masalah kemampuan mengekspresikan (secara saya tu introvert, hehe). Nhaa…, sekarang karena aslinya terlalu banyak bahan yang pingin diceritakan tapi sedikit waktu yang tersedia (plus masalah introversi yang masih juga, hehe).

Seorang teman SMS malam kemarin (ini dini hari, jadi beberapa jam yang lalu adalah “kemarin” khan), isinya sebagai berikut:

“Mbah mo tany, sebenarny beda hashing dgn enkripsi itu gimana to? TerimaKasih b4.”

SMS tanpa diedit, jadi ya harap maklum ama bahasanya; tapi pasti ngerti tho. Bo’ong kalo’ ngaku ga ngerti🙂

Yah kita mulai saja; seperti biasa, gunakanlah 2 tool wajib: Google dan Wikipedia. Berikan kepada Google ini: “define:hash” (tanpa tanda kutip), dan telusurilah atau bacalah hasilnya. Yang paling “enak dan pas” IMHO adalah: “A short value calculated from digital data that serves to distinguish it from other data.” berasal dari sini. Ada lagi yang singkat juga: “A fixed-length value created mathematically to uniquely identify data.” dari sini asalnya. Karena itu, “hashing” tentunya merujuk kepada aktifitasnya, kata kerjanya. Cari saja definisinya jika ingin memeriksa, dengan cara seperti sebelumnya.

Wikipedia menyatakan bahwa, “Hashing may refer to: hash function, hash house harriers, geohash“; ya yang paling relevan tentunya “hash function“. Dari sini, hash function ialah “is any well-defined procedure or mathematical function for turning some kind of data into a relatively small integer, that may serve as an index into an array.” Dengan demikian, hashing kira-kira maksudnya ialah kegiatan memproses data menjadi satu deretan/susunan angka (integer) yang berfungsi untuk membedakan antara data tersebut dari data yang lain. Proses ini terjadi jika data tadi dilewatkan ke sebuah fungsi hash –artikan fungsi sesuai konteks pemrograman komputer, atau matematika. Deretan/susunan angka tadi pendek atau singkat saja, tidak panjang seperti mungkin data aslinya misalnya saja.

Sumber yang lain menyatakan bahwa, hash ialah “A technique for running data through mathematical operations in order to generate a unique “fingerprint”. Any change in the data, either accidental or intentional, results in a completely different fingerprint“.

Hash atau hashing

Hash atau hashing

Gambar di sebelah ini, diambil dari Wikipedia, dan seperti inilah gambaran tentang hash atau hashing itu. Perhatikan bahwa hash sum bersifat pendek dan fix (panjang/jumlah digitnya).

Di sini contohnya teks sederhana, walaupun demikian, data yang hendak diproses bisa apa saja: teks, program, atau file dengan format khusus semacam file DOC, XLS dan lain-lain.

Perubahan sedikit saja di data sumbernya akan menyebabkan “hash sum” juga berubah. Di contoh, “runs” diganti menjadi “walks“.

Lalu, enkripsi itu apa?

Menurut Wikipedia, enkripsi ialah “is the process of transforming information (referred to as plaintext) using an algorithm (called cipher) to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key.” Artinya sendiri jelas ya? Yang harus digali lebih dalam ialah hubungan keduanya sehingga terlihat bedanya. Berikut ini penjelasan tentang enkripsi dari sumber lain:

In cryptography, encryption applies mathematical operations to data in order to render it incomprehensible. The only way to read the data is apply the reverse mathematical operations. In technical speak, encryption is applies mathematical algorithms with a key that converts plaintext to ciphertext. Only someone in possession of the key can decrypt the message.

Analogy: Some aliens come down to earth and give you a safe, and a key to the lock. For purposes of this discussion, the aliens use some magic technology that is beyond our human understanding, and that we will never be able to break into the safe. You steal something, put it into the safe, and lock it up with the key. You hide the key. The police arrest you and confiscate the safe. The only way the police will ever recover this stolen object is when you give them the key. Encryption is the same way; it creates an unbreakable box that you can put data in that nobody can ever get back out unless they have the appropriate key.

Controversy: Encryption has massive philosophical implications when put into widespread use. It means that citizens can hide their data from governments (especially repressive ones) and law enforcement (especially when you are committing a crime). This has the potential of making governments more accountable to the populace. It likewise has the potential of making crime easier.

Key point: Encryption tends to be the strongest link in the chain. When encryption is cracked, it is usually through some other weakness like key distribution or weak passwords.

Contrast: Asymmetric encryption uses different keys for encryption and decryption. Since the most useful form of this is one you keep one key private and make the other public, this is better known as public key encryption. In contrast, symmetric encryption uses the same key for both encryption and decryption.

Notes: Some algorithms popular in cryptography are: DES, rc4 Some popular applications that use encryption are: PGP, web browsers. Some protocols that use encryption are: SSL, IPsec.

Lumayan panjang ya😀

Terlalu panjang bisa bikin pembaca malah tambah mumet, bukan tambah ngerti; dan jangan salah sangka, saya juga tambah pening:mrgreen:

Kesimpulan. Enkripsi tidak sama dengan hashing –saya sulit menerjemahkan “hashing” ke bahasa Indon😉

Sebelumnya, ini IMHO loh. Kalo ada expert di bidang kriptografi, please, feel free to make a check against my article.

Keduanya beda, bukan cuma tulisannya.

  1. Secara konteks, saya mendapati bahwa “enkripsi” itu lebih umum, sementara hashing itu istilah yang lebih khusus.
  2. Enkripsi bukan hashing, dan sebaliknya tentu. Ini berdasar prakteknya loh. Setahu saya, hashing itu dipakai untuk membangkitkan (baca: membuat) “sidik jari”, atau finger print. Sidik jari dari data atau potongan data. Jadi untuk mengukur integritasnya; apakah data tersebut berubah atau tidak. Tapi tidak “menyembunyikan” si datanya sendiri. Saya cuma tahu sedikit contohnya, misal, password yang ada di file /etc/shadow itu, nah itu hasil hashing. Kalau misal, password-nya “The red fox runs across the ice” dan, memisalkan contoh sebelumnya, hash sum-nya “52ED879E“, maka hash sum itu “bukan” “The red fox runs across the ice“. Ah, maksud saya, itu hash sum, bukan teks “The red fox runs across the ice” yang disembunyikan sebagai “52ED879E” (sebagaimana tersirat dari pengertian tentang istilah “enkripsi”). Itu sidik jari; yang jika teks diubah, sidik jari itu menjadi tidak cocok lagi (karena berbeda). Pembandingan sesuatu yang diproses melalui hashing di contoh tersebut tidak seperti enkripsi yang pada pemahaman saya harusnya 2 arah, baik itu simetrik maupun asimetrik. Kalau contoh password itu, kita tak bisa mendapatkan teks “The red fox runs across the ice” bermodalkan “52ED879E“. Sifatnya searah. Tapi saya kurang mendalami bidang ini, ya siapa tahu saja ini sifat algoritmanya (dalam hal ini MD5). CMIIW… Tetapi benar atau bisa juga diartikan “sama”; pada prakteknya orang sering mengatakan “walau tersimpan di /etc/shadow tapi password-nya khan sudah dienkrip, tidak plain text lagi…” Pernah dengar semacam ini ga?😉 Yah, seseorang pernah bilang ke saya, jika kamu ubah sudut pandangmu, bisa jadi berubah pula penilaianmu…😀
  3. Penerapannya sedikit banyak berbeda. Umumnya pengertian yang dimaksud orang dengan enkripsi ialah: ada “teks asli“, dengan program atau algoritma tertentu plus sebuah “kunci” bisa diubah menjadi “teks sandi” yang berbeda dan tak dapat orang lain ketahui apa itu sebenarnya, kecuali setelah “teks sandi” yang dihasilkan tadi dilewatkan lagi ke program atau algoritma yang bisa membalikkan proses pengubahannya dulu (dari “teks asli” menjadi “teks sandi“). Yang mana, proses pembalikan ini pun meminta “kunci” yang dulu dipakai untuk mengubah “teks asli” menjadi “teks sandi“. Ini permisalan dari tipe yang simetrik. Yang asimetrik melibatkan banyak kunci, rumit ah ngejelasinnya😀 Nha, penerapan hashing kebanyakan untuk membantu memeriksa integritas data. Misal, ISO distro Linux yang bebas di-download itu, hash sum-nya dicantumkan untuk membantu memastikan bahwa ISO yang di-download benar-benar ISO yang “itu”. Yang asli dari pembuatnya, maksud saya🙂

Wah, kayaknya sampai di sini saja batas kemampuan saya menjelaskan; selain cukup binun mengungkapkan tentu mengandung kesalahan. Mohon yang tahu membetulkannya🙂

Kesalahan itu kadang bukan cuma karena si penyaji “salah”, tapi bisa karena kurang mampu mengungkapkan sehingga yang diungkapkan “salah” (salah kata, salah bahasa, salah urutan, etc). Akhirnya ya “salah” pula lah persepsi pembaca😀

Ups, koq malah ketawa…😕

12 responses to “Antara hashing dengan enkripsi…

  1. Hmmm… pemahaman yang baik!
    menjadi penulis (baca=sampingan/tetap) sebenarnya cocok dan bisa bagi Mr. Fath..
    mungkin masih ingat di kos dulu pernah saya bilang, tp mungkin “memulainya” yg susah.
    Jika P Fath. berpendapat waktu yang tersedia sedikit, apalagi saya sir… ah becanda sampean… Bujang kok waktunya lebih sedikit dengan yang sudah berkeluarga, hehe :-))

  2. wah smsnya itu juga sempat mampir ke inbox saya, tp sayang ngga ada pulsa untuk balasin.. jadi hanya bisa berdoa semoga yg nanya diberi petunjuk oleh ALLAH.. minimal dapet jawaban di mimpi..

    kalo setahu saya, hashing itu untuk fingerprinting file, “enkripsi” / metode hashing nya biasanya udah baku.. dan standar..
    kalo enkripsi itu yasch tadi metode pengubahan plain text menjadi acak atau chiper text (kalo ngga salah, tp kayaknya salah deh ??..)

  3. @ herr:
    Wah mas, emang kalo beda disiplin ilmu yg didalami ya pusing, baca aja koment dr mbak Yella di bawah. Sama lah, coba saya disuruh koment ttg posting khusus bidangnya mas Her, mumet! Lebih mudah memahami komputer😀 *no offence*

    @ Rafki:
    Apalagi baca literatur aslinya, waktu saya ngumpulin bahannya pak; itu tuh, biasa, Wikipedia. Musti pelaaaaan bgt😀
    Klo ngebut, malah gak masuk kepala alias gak faham (saya-nya).

    @ jokohb:
    Yap.
    Mungkin klo situasi mendukung; maksut saya, modul PBM gak harus buat sendiri (krn sekolah udah nyiapin) trus gak usah kebanyakeun “acara” ini n ituh; bisa jadi waktu utk menulis buku akan benar2 “ada”.
    Sayangnya, ini tidak “ada”, at least utk bbrp tahun lagi (wah, mau mpe brp tahun sibuk karena itu semua?).

    @ Mada:
    Jazaakallah; ini yg antum tulis nambah jelas…🙂

    @ yellashakti:
    Libur?😯
    Libur itu apa…❓
    Sama gak mudengnya kalo saya baca blog panjenengan yg ttg resep, masak memasak n sejenisnya, hehe😉

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s