Lompat ke konten Lompat ke sidebar Lompat ke footer

Metode Enkripsi Kata Sandi PHP untuk Mengamankan Data Dari Peretas

Php coding examples

Metode Enkripsi Kata Sandi PHP untuk Mengamankan Data Dari Peretas



Enkripsi PHP penting untuk privasi dan keamanan data Anda. Dalam istilah praktis, enkripsi PHP menggunakan algoritme (terkadang disebut algoritme hashing) untuk menerjemahkan data "jelas" menjadi teks terenkripsi yang memerlukan proses dekripsi yang sangat spesifik untuk "mendekode" data kembali ke versi bersih. Algoritme berbasis matematika ini mengacak teks biasa menjadi teks sandi nonsens yang hanya dapat diterjemahkan oleh penerima yang dituju yang memiliki "kunci". Contoh umum adalah enkripsi HTTPS yang melindungi komunikasi klien-server.

Metode Enkripsi Kata Sandi PHP

  1. Mengapa enkripsi penting untuk perlindungan data? 
  2. Metode Enkripsi PHP Hashing 
  3. Enkripsi Kunci Rahasia 
  4. Enkripsi amplop 
  5. Bagaimana cara mengenkripsi dan mendekripsi kata sandi menggunakan PHP? Kesimpulan

Mengapa enkripsi penting untuk perlindungan data? Enkripsi adalah komponen dasar, tetapi penting dari aplikasi apa pun karena memungkinkan Anda melindungi data dengan aman yang tidak Anda inginkan untuk diakses orang lain. Ini telah mencapai signifikansi yang lebih baru di zaman di mana informasi pribadi atau bisnis biasanya disimpan di server "cloud". Untuk bisnis, kurangnya enkripsi yang tepat dapat mengakibatkan kerusakan tinggi karena kebocoran data bisnis rahasia dapat menguntungkan pesaing. Kebocoran informasi pelanggan bukan hanya mimpi buruk PR; hal itu dapat menyebabkan tuntutan hukum dan pembubaran bisnis. Inilah sebabnya mengapa enkripsi, terutama enkripsi kata sandi yang sulit dipecahkan, adalah salah satu fitur keamanan PHP dasar yang diharapkan pelanggan dari aplikasi PHP apa pun. Metode Enkripsi PHP Saat ini, pengembang dapat memilih beberapa metode enkripsi, hashing umum, enkripsi kunci rahasia, dan metode enkripsi envelope. Setiap metode enkripsi hadir dengan banyak algoritma atau penyandian (masing-masing dengan kekuatan dan kelemahannya sendiri). Hashing Aplikasi memungkinkan pengguna memasukkan informasi pribadi yang kemudian disimpan dalam database. Sekarang pengembang perlu memastikan bahwa data ini tetap tidak dapat dibaca. Sekarang bayangkan skenario di mana seorang peretas memaksa masuk ke database dan mendapatkan akses ke data pengguna. Karena hashing, data ini akan tetap tidak terbaca. Di sini kita menggunakan fungsi PHP yang disebut password_hash yang merupakan algoritma hashing satu arah yang sangat kuat, kita akan menggunakan bcrypt yang merupakan algoritma yang dibangun ke dalam bahasa PHP yang diperbarui seiring berjalannya waktu yang memastikan metode ini selalu up-to-date jadi bandingkan dengan metode hash lain yang biasa kami gunakan sebelumnya yang disebut md5 atau state 256, metode ini selalu up-to-date dan harus digunakan ketika Anda ingin memiliki kata sandi untuk beberapa jenis informasi lain di dalam situs web. Fungsi Salt sudah termasuk di dalam password_hash, Salt pada dasarnya adalah ketika kita menambahkan string acak ke kata sandi kita sebelum memasukkannya ke dalam database untuk membuatnya lebih sulit bagi orang untuk mencari tahu apa itu kata sandi. Ini adalah contoh penggunaan teknik hashing 'bcrypt'.


Input:
<?php echo "Shahzeb Ahmed"; echo "<br>"; echo password_hash("Cloudways", PASSWORD_DEFAULT); ?>

Output:

Shahzeb Ahmed $2y$10$LZExuh/rXamd/X5yuDatn.L8ROlKBry3xidvWc.O19nx85.CrSrO.Anda ingin dapat melihat kata sandi setelah kami de-hash karena dirancang pelaut mungkin. Artinya, ANDA sebagai pemilik situs web pun tidak boleh membaca kata sandi lain.

Secret Key Encryption

Enkripsi Kunci Rahasia juga disebut enkripsi Symmetric, Enkripsi Kunci Rahasia PHP hanya menggunakan satu kunci, yang disebut rahasia bersama, untuk mengenkripsi dan mendekripsi. Untuk mengenkripsi data, Disini satu kunci yang sama digunakan oleh pengirim (untuk enkripsi) dan penerima (untuk dekripsi). Jadi kuncinya dibagi. Kunci ini harus dirahasiakan dari semua pihak lain untuk memastikan privasi. Ini adalah metode enkripsi yang sederhana dan mudah digunakan, tetapi ada satu masalah dengannya: Kunci harus dibagikan antara pengirim dan penerima data, Juga tidak disukai untuk menggunakan metode enkripsi simetris di mana itu menggunakan jaringan publik untuk berbagi kunci. Jika tidak, jika pihak ketiga mencegat kunci selama pertukaran, orang yang tidak berwenang dapat dengan mudah mendekripsi data

Envelope encryption

Enveloping encryption adalah gagasan bahwa Anda meletakkan data dalam amplop virtual dengan mengenkripsinya, menguncinya untuk satu atau lebih penerima (mengenkripsi kunci enkripsi data, misalnya menggunakan RSA), dan kemudian memasukkan alamat penerima, jenis kunci (the algoritme) dan pengenal kunci yang diperlukan di luar. Kita dapat menggunakan layanan Cloud KMS yang dapat menggunakan kunci untuk mengenkripsi, mendekripsi, atau menandatangani data seperti rahasia untuk penyimpanan. yang sebenarnya disediakan oleh Google Cloud Key Management Service.

How to encrypt and decrypt passwords using PHP?

Cara termudah untuk melindungi kata sandi di PHP adalah dengan menggunakan password_hash dan memverifikasi fungsi. Contoh di bawah ini menunjukkan metode menggunakan metode password_hash ():

Input:

<?php // The unencrypted password to be hashed $unencrypted_password = "Cloudways@123"; // The hash of the password can be saved in the database $hash = password_hash($unencrypted_password, PASSWORD_DEFAULT); // Print the generated hash code echo "Generated hash code: ".$hash; ?>

Output:

Generated hash code: 2y10D6pwJsA5KKdUs7tlrIC3z.we7QZR58wx9gEiuLlQ/dr7E/Rtnj9CeSistem Syntax:bool password_verify(string $password, string $hash)Memverifikasi bahwa hash yang diberikan cocok dengan kata sandi yang diberikan. Fungsi password_verify () memverifikasi bahwa hash yang diberikan cocok dengan kata sandi yang diberikan, yang dihasilkan oleh fungsi password_hash (). Ini mengembalikan true jika kata sandi dan hash cocok, atau false sebaliknya.<?php // Plaintext password entered by the user $unencrypted_password = "Cloudways@123"; // The hashed password can be retrieved from database $hash ="2y10D6pwJsA5KKdUs7tlrIC3z.we7QZR58wx9gEiuLlQ/dr7E/Rtnj9Ce"; // Verify the hash code against the unencrypted password entered $verify = password_verify($unencrypted_password, $hash); // Print the result depending if they match if ($verify) { echo 'Correct Password!'; } else { echo 'Password is Incorrect'; } ?>

Output:

Correct Password! 

Conclusion

Saya harap Anda mempelajari pentingnya Enkripsi PHP dan bersama dengan berbagai jenis metode Enkripsi PHP dengan contohnya. Anda tidak dapat mengganti sertifikat SSL dengan sandi yang di-hash di sisi pengguna dan sebenarnya tidak perlu melakukan hash di awal. Hashing kata sandi hanya masuk akal di mesin server.

Gabung Hntuk sukses bersama

 

Program Referensi

Posting Komentar untuk "Metode Enkripsi Kata Sandi PHP untuk Mengamankan Data Dari Peretas"