簡體   English   中英

嘗試在php中編寫一個簡單的加密/解密功能

[英]Trying to write a simple encrypt/decrypt function in php

當有人加入我的網站時,我想創建一個“激活”密鑰。 這將通過電子郵件發送給他們,當他們單擊鏈接時,它將激活他們的帳戶。 我想在激活密鑰中包含一些信息(從安全角度來看,沒什么大不了的-它們在注冊時只是在哪個頁面上等,以便我可以將它們重定向回該頁面)。

我有以下幾點:

// THIS TO ENCRYPT THE DATA
$secret_key = "This is my SeCrEt key";
$etype = MCRYPT_RIJNDAEL_256;
$iv = mcrypt_create_iv(mcrypt_get_iv_size($etype, MCRYPT_MODE_ECB), MCRYPT_RAND);
$output = mcrypt_encrypt($etype, $secret_key, $string_to_encrypt, MCRYPT_MODE_CBC, $iv);
$output = base64_encode ($output);
$output = urlencode($output);


// THIS TO DECRYPT THE DATA - THIS ISN'T WORKING?
$secret_key = "This is my SeCrEt key";
$etype = MCRYPT_RIJNDAEL_256;
$iv = mcrypt_create_iv(mcrypt_get_iv_size($etype, MCRYPT_MODE_ECB), MCRYPT_RAND);

$string_to_decrypt = urldecode($string_to_decrypt);
$string_to_decrypt = base64_decode($string_to_decrypt);
$output = mcrypt_decrypt($etype, $secret_key, $string_to_decrypt, MCRYPT_MODE_CBC, $iv);

我正在使用base64編碼和urlencoding,因為我將通過電子郵件發送鏈接。

解密根本不起作用。 有任何想法嗎?

IV對於特定的加密/解密必須相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM