Perbedaan encoding, encryption dan hashing

Perbedaan encoding, encryption dan hashing

965
0
SHARE

Halo kawan jumpa lagi.. kali ini bukan tutorial dulu ya.. lagi nggak ada ide bikin tutorial apaan. kali ini kita bahas tentang perbedaan encoding, encryption dan hashing.

Terkadang kita salah mengartikan bahwa encoding, encryption dan hashing merupakan hal yang sama. Pendapat tersebut tidak sepenuhnya salah karena memang ketiganya memiliki kesamaan yaitu mengubah data kedalam format yang lain. Namun demikian ada perbedaan mendasar diantara kegitanya yaitu untuk encoding dan encryption bisa dikembalikan ke nilai awal, sedangkan hashing tidak dapat dikembalikan ke nilai awal.

Mari kita bedah satu persatu

Encoding

Tujuan utama dari encoding sebenarnya bukan untuk menjaga kerahasiaan data, namun lebih kepada agar data bisa digunakan oleh aplikasi lain. Oleh karena itu pada umumnya pada encoding tidak diperlukan key untuk decode ke data awal.

Contoh dari encoding adalah ASCII, Unicode, Base64, URL Encoding

Encryption

Encryption ditujukan untuk menjaga kerahasiaan data. Oleh karena itu encryption dilengkapi dengan key yang bersifat rahasia. Hanya yang mengetahui key tersebut yang bisa melakukan decode ke data awal. Sebagai contoh pada pertukaran data internet, data dilakukan enkripsi saat  melalui jaringan kemudian dilakukan dekripsi saat diterima oleh pihak yang berhak.

Contoh dari encryption adalah AES, RSA, Blowfish

Hashing

Hashing ditujukan untuk menjaga integritas suatu data. Hashing tidak dapat di decode sehingga pengguna juga harus melakukan hashing untuk mengetahui apakah data awal berbeda dengan data saat ini. Jadi cara kerjanya lebih pada mencocokan antara hasil awal hashing dengan hasil akhir hashing.

Sebagai ilustrasi :
Devita bisa mengerjakan soal matematika yang sulit. Devita menantang John untuk mengerjakannya juga. Devita memberikan hash atas jawaban soal tersebut kepada John. John kemudian mengerjakan soal tersebut. Kemudian john juga melakukan hash atas jawaban tersebut. Jika hasil hash john dan devita sama, berarti jawaban john juga benar. Demikian kira-kira sederhananya.

Hashing memiliki sifat sifat sebagai berikut :
– Input yang sama akan menghasilkan output yang sama
– Sedikit perubahan pada input akan menghasilkan perubahan yang sangat besar pada output
– Tidak dapat dikembalikan ke nilai awal

Contoh dari hashing adalah SHA-3, MD5

Demikianlah perbedaan encoding, encryption dan hashing, semoga bermanfaat. Terima kasih telah berkunjung ke harviacode.com

Bagikan artikel ini ya.. terima kasih

NO COMMENTS

LEAVE A REPLY