Salt

2 min read


Momen ini pass banget yahh untuk bahas salt karna berita hari ini emang lagi rame Tokopedia kena hek.. yapp database tokopedia udah dijual ke publik.. total 91jt data user,, dengan 15jt data sebagai trialnya.. well pihak tokopedia khususnya VP sudah menjamin perihal keamanan password karena mereka mengaku sudah menggunakan salt.. excuse me pak boss?? walau begitu didalamnya masih ada data pribadi user lohh.. wkwkwk oke aku gak bahas itu yahh,, yang menarik disini adalah tentang salt.. apa sih salt??

Salt merupakan sebuah string yang dibangun secara acak untuk ditambahkan ke data sebelum proses hashing maupun enkripsi

kalau tanpa salt, hash masih bisa di crack lohh.. salah satu teknik cracking adalah rainbow table wkwkw… dengan salt,, simplenya sih dikasih bumbu lagi ya guyss.. jadi akan sulit bagi heker bisa crack hash nya,, karna harus tahu salt nya dulu.. caranya heker harus bisa bongkar code nya atau bisa juga dengan decompile..

ada pelajaran yg bisa diambil ya guyss. kalo kamu punya website yang konek dengan database, gunakanlah hash(include salt) pada password semua user, dijamin aman passwordnya.. oke no bacot lagi,,

Latihan salt

buka terminal root dan generate password dengan saltnya..

sudo su
apt install mkpasswd
mkpasswd kresec:: -s garam

akan berbeda yahh jika tanpa salt.. coba aja ilangin -s garam nya.. kalau pada php code nya seperti ini..

<?php echo crypt("kresec::", "garam"); ?>

pada code tersebut menggunakan salt dengan string garam. kamu bisa ganti dengan yang lebih sulit/acak. lebih lengkap disini.

<?php 
if (CRYPT_SHA512 == 1) {
echo 'SHA-256:' . crypt('kresec::', '$5$rounds=5000$takselamanyasaltitugaram$') . "\n";
}
?>

Latihan Hash

generate hash

md5sum<<<kresec::
sha1sum<<<kresec::
sha256sum<<<kresec::
atau
echo kresec:: | md5sum
echo kresec:: | sha1sum
echo kresec:: | sha256sum

Latihan Encrypt

generate rsa key dengan openssl..

openssl genrsa -out key.txt 2048

cek key nya dulu dan lakukan encrypt menggunakan key yg udah di generate tadi,, dan akan muncul file baru lagi..

nano key.txt
echo "kresec::" | openssl rsautl -inkey key.txt -encrypt > kresec.txt

decrypt kembali..

openssl rsautl -inkey key.txt -decrypt < kresec.txt

encrypt menggunakan rsa key + AES key.

generate rsa + 128 bit AES chiper

openssl genrsa -aes128 -out key.txt

proses encrypt..

echo "kresec::" | openssl rsautl -inkey key.txt -encrypt > kresec.txt

proses decrypt..

openssl rsautl -inkey key.txt -decrypt < kresec.txt

High secure menggunakan salt dan base64..

buat file yang ingin di encrypt..

echo kresec:: > file.txt

encrypt file menggunaka AES 256 bit + random salt..

openssl enc -aes-256-cbc -md sha512 -pbkdf2 -iter 100000 -salt -a -in file.txt -out password.txt

cek file nya .. dan decrypt kembali ..

nano password.txt
openssl enc -aes-256-cbc -d -md sha512 -pbkdf2 -iter 100000 -salt -in password.txt -out hasilpassword.txt

oke cukup sekian byee…

Bima Sena

Leave a Reply

Your email address will not be published. Required fields are marked *