Jadual Kandungan
Bagaimanakah Fungsi Hashing berfungsi?
1. MD5()
2. SHA1 ()
Fungsi Pencincangan dalam PHP
1. Hash_equals
2. Hash_final
3. Hash_init
4. Hash_copy
Examples of Hashing Function in PHP
Example #3
Conclusion

Fungsi Hashing dalam PHP

Aug 29, 2024 pm 12:47 PM
php

Fungsi pencincangan dalam PHP ialah kaedah khas yang dipratakrifkan dan digunakan untuk menunjukkan rentetan dalam bentuk nilai pasti yang diukur daripada aksara rentetan. Ia popular untuk aplikasinya sebagai algoritma penyulitan dan sebagai perwakilan nilai indeks untuk item dalam pangkalan data. Jenis algoritma pencincangan yang paling biasa digunakan dalam proses penyulitan data ialah SHA1() dan MD5(). Dalam PHP, fungsi pencincangan terdiri daripada empat jenis yang berbeza, seperti Hash_equals, Hash_final, Hash_init dan Hash_copy.

IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olok

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Bagaimanakah Fungsi Hashing berfungsi?

PHP ialah bahasa pengaturcaraan sebelah pelayan dan peranan utamanya ialah ia perlu memproses kefungsian bahagian belakang yang diperlukan untuk aplikasi tertentu. Dalam proses ini, pengesahan memainkan peranan penting kerana kelemahan boleh mengeksploitasi data dengan mudah. Salah satu cara untuk melindungi data adalah dengan menyimpannya dalam pangkalan data dalam bentuk asalnya tetapi ini boleh membawa kepada situasi di mana penceroboh/orang yang tidak dibenarkan boleh mengambil data dengan mudah dan ia boleh dikompromi. Keadaan ini boleh dikendalikan dengan mudah dengan menggunakan fungsi Hashing.

Fungsi hash menyulitkan data dalam bentuk sebenar tanpa mengubah maksudnya. Jadi, apabila pengguna memasukkan data dalam bentuk sebenar, data akan disulitkan di bahagian belakang dan dengan itu pengesahan dan kebenaran proses data berlaku. Algoritma cincang yang paling biasa digunakan ialah md5 (), sha1 () dan beberapa fungsi cincang. Algoritma ini digunakan oleh pembangun untuk mengesahkan data yang dimasukkan oleh pengguna adalah betul atau tidak untuk meneruskan proses selanjutnya.

1. MD5()

Algoritma ini ialah salah satu algoritma pencincangan berkuasa yang mengira cincang md5 iaitu cincangan nombor perenambelasan 16 atau 32 aksara bagi rentetan tertentu. Rentetan yang diluluskan ini akan ditukar kepada bentuk perenambelasan yang disulitkan.

Sintaks:

string md5 ($string, $getRawOutput)
Salin selepas log masuk

Sintaks di atas menunjukkan $string sebagai rentetan input. Output mentah adalah input pilihan kerana pembangun ingin menukarnya kepada 16 bit atau 32 bit. Jika 16 bit perlu mendayakan ia perlu ditetapkan TRUE Boolean dan dihantar ke fungsi. Jika ia tidak ditetapkan maka lalai 32 bit ditetapkan secara automatik.

Contoh:

md5 (EduCBA, TRUE)
Salin selepas log masuk

2. SHA1 ()

Algoritma ini ialah salah satu algoritma pencincangan berkuasa yang mengira cincangan sha1 iaitu cincangan format perduaan 20 aksara atau nombor perenambelasan 40 aksara bagi rentetan tertentu. Rentetan yang diluluskan ini akan ditukar kepada bentuk perenambelasan yang disulitkan.

Sintaks:

string sha1 ($string, $getRawOutput)
Salin selepas log masuk

Sintaks di atas menunjukkan $string sebagai rentetan input. Output mentah adalah input pilihan kerana pembangun mahu ia menjadi 20 bit atau 40 bit. Jika 20 bit perlu mendayakan ia perlu ditetapkan TRUE Boolean dan dihantar ke fungsi. Jika ia tidak ditetapkan maka lalai 40 bit ditetapkan secara automatik.

Contoh:

sha1 (EduCBA, TRUE)
Salin selepas log masuk

Fungsi Pencincangan dalam PHP

Di bawah yang disenaraikan ialah beberapa fungsi pencincangan yang digunakan dalam PHP untuk menyulitkan/menukar data daripada bentuk asal kepada bentuk cincang.

1. Hash_equals

Fungsi ini membandingkan dua rentetan pada masa yang sama sama ada sama atau tidak. Fungsi ini mengembalikan TRUE apabila rentetan adalah sama dan FALSE jika rentetan tidak sama. Kedua-dua hujah harus sama untuk membandingkan rentetan jika tidak, ia akan segera kembali palsu tanpa membandingkan rentetan mengikut abjad dan kadangkala panjang rentetan juga boleh didedahkan sekiranya berlaku serangan masa.

2. Hash_final

Fungsi ini mengembalikan ringkasan cincang rentetan input yang dihantar ke fungsi ini. Apabila output mentah ditetapkan kepada TRUE maka ia memberikan data binari mentah dan apabila ia ditetapkan kepada FALSE ia memberikan nombor perenambelasan huruf kecil. Fungsi ini mengembalikan ringkasan perenambelasan terkira rentetan sebagai output.

3. Hash_init

Fungsi ini digunakan bersama-sama dengan algoritma pencincangan iaitu md5 (), sha (), dsb. Fungsi ini bersama-sama dengan algoritma pencincangan menghasilkan output untuk digunakan dengan hash_update (), cincang akhir (), dll. Output bagi hash_init disimpan dalam rentetan atau pembolehubah dan dihantar ke mana-mana satu fungsi.

4. Hash_copy

Fungsi ini digunakan untuk menyalin konteks pencincangan. Rentetan yang diluluskan sebagai input kepada fungsi dicincang oleh salah satu algoritma yang digunakan dalam fungsi hash_init() dan output yang sepadan ialah rentetan cincang yang dihantar ke fungsi ini. Fungsi ini mengembalikan bentuk cincang keluaran yang diberikan oleh fungsi hash_init.

Examples of Hashing Function in PHP

The following is a list of hashing function in PHP explained in detail,

Example #1

Code:

<?php
$c = hash_init("md5");
hash_update($c, "content");
$copy_c = hash_copy($c);
echo hash_final($c);
hash_update($copy_c, "content");
echo hash_final($copy_c), "\n";
?>
Salin selepas log masuk

Output:

Fungsi Hashing dalam PHP

Example #2

Code:

<?php
$expected  = crypt('leela123', '$2a$07$user$');
$right   = crypt('leela123', '$2a$07$user$');
$wrong = crypt('leeeela233',  '$2a$07$usedwrongstring$');
var_dump(hash_equals($expected, $right));
var_dump(hash_equals($expected, $wrong));
?>
Salin selepas log masuk

Output:

Fungsi Hashing dalam PHP

Example #3

Code:

<?php
$hash = hash_init('sha1');
hash_update($hash, 'This is an example of PHP Hash function');
echo hash_final($hash);
?>
Salin selepas log masuk

Output:

Fungsi Hashing dalam PHP

Conclusion

In this article, we discussed what is hashing and its various algorithms. Also, we discussed a few hashing functions used in PHP to encrypt the data to prevent malicious and vulnerable attacks. Because of these attacks, the data is not secure and loss of data occurs. So, the hashing technique was introduced so that there will be no loss of data and it will be secured by various attacks.

Atas ialah kandungan terperinci Fungsi Hashing dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Konfigurasi Projek CakePHP Konfigurasi Projek CakePHP Sep 10, 2024 pm 05:25 PM

Konfigurasi Projek CakePHP

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian

Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

Tarikh dan Masa CakePHP

Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

Muat naik Fail CakePHP

Penghalaan CakePHP Penghalaan CakePHP Sep 10, 2024 pm 05:25 PM

Penghalaan CakePHP

Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

Bincangkan CakePHP

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP

Panduan Ringkas CakePHP Panduan Ringkas CakePHP Sep 10, 2024 pm 05:27 PM

Panduan Ringkas CakePHP

See all articles