Bagaimana untuk melaksanakan penyulitan data pada pelayan Linux melalui skrip PHP, contoh kod khusus diperlukan
Langkah-langkah untuk menggunakan OpenSSL untuk menyulitkan data dalam skrip PHP adalah seperti berikut:
Langkah 1: Hasilkan pasangan kunci
Mula-mula anda perlu menjana pasangan kunci, kunci awam untuk menyulitkan data dan kunci peribadi untuk menyahsulit data. Anda boleh menggunakan kod berikut untuk menjana pasangan kunci:
$config = [ "digest_alg" => "sha512", "private_key_bits" => 4096, "private_key_type" => OPENSSL_KEYTYPE_RSA, ]; $res = openssl_pkey_new($config); openssl_pkey_export($res, $privateKey); $publicKey = openssl_pkey_get_details($res)['key']; // 保存私钥和公钥到文件 file_put_contents("private_key.pem", $privateKey); file_put_contents("public_key.pem", $publicKey);
Kod di atas akan menjana pasangan kunci RSA 4096-bit dan menyimpan kunci peribadi dan awam ke private_key.pem
dan public_key . pem
fail. private_key.pem
和public_key.pem
文件中。
步骤二:使用公钥加密数据
在需要加密数据的地方,可以使用以下代码将数据加密:
$publicKey = file_get_contents("public_key.pem"); $data = "要加密的数据"; openssl_public_encrypt($data, $encryptedData, $publicKey); // 将加密后的数据保存到文件或传输到网络 file_put_contents("encrypted_data.txt", base64_encode($encryptedData));
上述代码将数据使用公钥进行加密,并将加密后的数据保存到encrypted_data.txt
Di mana data perlu disulitkan, anda boleh menggunakan kod berikut untuk menyulitkan data:
$privateKey = file_get_contents("private_key.pem"); $encryptedData = file_get_contents("encrypted_data.txt"); $encryptedData = base64_decode($encryptedData); openssl_private_decrypt($encryptedData, $decryptedData, $privateKey); echo $decryptedData;
encrypted_data.txt
. Langkah 3: Nyahsulit data menggunakan kunci persendirianAtas ialah kandungan terperinci Bagaimana untuk melaksanakan penyulitan data pada pelayan Linux melalui skrip PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!