Apa itu Scrypt?

Scrypt adalah fungsi derivasi kunci berbasis kata sandi (PBKDF) yang awalnya diusulkan sebagai alternatif fungsi derivasi kunci lainnya seperti PBKDF2 dan bcrypt. Ini dirancang agar lebih aman terhadap jenis serangan tertentu, terutama yang memanfaatkan perangkat keras khusus seperti Application-Specific Integrated Circuits (ASICs) dan Graphics Processing Units (GPU).

Fitur utama dan tujuan desain Scrypt adalah:

1. Kekerasan Memori: Scrypt memerlukan sejumlah besar memori untuk beroperasi, sehingga tahan terhadap serangan dari implementasi perangkat keras khusus seperti ASIC atau GPU, yang memiliki memori terbatas dibandingkan dengan daya komputasinya.

2. Resistensi Paralelisasi: Scrypt dirancang untuk bersifat sekuensial, artinya komputasi tidak dapat diparalelkan dengan mudah, sehingga membatasi potensi percepatan penggunaan beberapa unit pemrosesan atau inti.

3. Peregangan Kunci: Seperti PBKDF lainnya, Scrypt digunakan untuk peregangan kunci, yang melibatkan pembuatan kunci panjang dari kata sandi atau frasa sandi pendek, sehingga lebih tahan terhadap serangan brute force.

Scrypt digunakan dalam berbagai mata uang kripto, termasuk Litecoin, Dogecoin, dan Verge, sebagai fungsi derivasi utama untuk algoritma konsensus proof-of-work (PoW) mereka. Dengan menggunakan Scrypt, mata uang kripto ini bertujuan untuk membuat proses penambangannya lebih mudah diakses oleh komputer biasa dan menolak sentralisasi kekuatan penambangan yang dapat terjadi dengan perangkat keras khusus seperti ASIC.

Meskipun Scrypt dirancang agar lebih aman terhadap jenis serangan tertentu, penting untuk dicatat bahwa jaminan keamanannya bergantung pada parameter spesifik yang digunakan dan ketersediaan sumber daya memori yang memadai. Seiring berkembangnya daya komputasi dan kemampuan perangkat keras, efektivitas Scrypt mungkin perlu dievaluasi ulang, dan fungsi derivasi hard key memori alternatif dapat dieksplorasi.