導航:首頁 > 源碼編譯 > des加密演算法php

des加密演算法php

發布時間:2022-03-08 01:23:47

『壹』 php和js的des加密結果不一樣

加密的演算法都是一樣的,建議網上搜一個js的des加密腳本試下

『貳』 PHP DES加密

詳見這里的回答,http://..com/link?url=-JSxo3JUy_cGCbCDx00HIUkOMnSSlEEID-_ ,應該可以滿足你的需求。

『叄』 用PHP的方法解DES加密

<?php
$key='LY870513';
$ctext='j45Rrzxm0jD62U1w798yBg==';
$ptext=mcrypt_decrypt(MCRYPT_DES,$key,base64_decode($ctext),MCRYPT_MODE_CBC,"x12x34x56120x90xabxcdxef");
//echoiconv('UTF-8','GBK',$ptext);//GBK環境使用,UTF8環境多餘不用
echo$ptext;//UTF8環境用
20219241337

由於不清楚原代碼的塊鏈接模式,暫時用的CBC,對於短數據可解出。

『肆』 關於php des 加密 密鑰長度問題

php5.6的key長度要求是32位元組的,你這個明顯不滿足要求的。
參考以下寫法:
<?php
# --- ENCRYPTION ---

# the key should be random binary, use scrypt, bcrypt or PBKDF2 to
# convert a string into a key
# key is specified using hexadecimal
$key = pack('H*', "");

# show key size use either 16, 24 or 32 byte keys for AES-128, 192
# and 256 respectively
$key_size = strlen($key);
echo "Key size: " . $key_size . "\n";

$plaintext = "This string was AES-256 / CBC / ZeroBytePadding encrypted.";

# create a random IV to use with CBC encoding
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);

# creates a cipher text compatible with AES (Rijndael block size = 128)
# to keep the text confidential
# only suitable for encoded input that never ends with value 00h
# (because of default zero padding)
$ciphertext = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key,
$plaintext, MCRYPT_MODE_CBC, $iv);

# prepend the IV for it to be available for decryption
$ciphertext = $iv . $ciphertext;

# encode the resulting cipher text so it can be represented by a string
$ciphertext_base64 = base64_encode($ciphertext);

echo $ciphertext_base64 . "\n";

# === WARNING ===

# Resulting cipher text has no integrity or authenticity added
# and is not protected against padding oracle attacks.

# --- DECRYPTION ---

$ciphertext_dec = base64_decode($ciphertext_base64);

# retrieves the IV, iv_size should be created using mcrypt_get_iv_size()
$iv_dec = substr($ciphertext_dec, 0, $iv_size);

# retrieves the cipher text (everything except the $iv_size in the front)
$ciphertext_dec = substr($ciphertext_dec, $iv_size);

# may remove 00h valued characters from end of plain text
$plaintext_dec = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key,
$ciphertext_dec, MCRYPT_MODE_CBC, $iv_dec);

echo $plaintext_dec . "\n";
?>

『伍』 php的des加密用js解密解除亂碼,發現2個加密出的東西不一樣

JS加密和PHP加密是不同的,雖然都是md5加密,所以你不能直接判斷js加密和PHP加密是否相等,畢竟是兩種語言,要麼都用js的加密,要麼都是PHP的

『陸』 Java用Des方式加密之後,PHP怎麼解密

DES是一種標準的數據加密演算法,關於這個演算法的詳細介紹可以參考wiki和網路:
php中有一個擴展可以支持DES的加密演算法,是:extension=php_mcrypt.dll
在配置文件中將這個擴展打開還不能夠在windows環境下使用
需要將PHP文件夾下的 libmcrypt.dll 拷貝到系統的 system32 目錄下,這是通過phpinfo可以查看到mcrypt表示這個模塊可以正常試用了。
下面是PHP中使用DES加密解密的一個例子:
//$input - stuff to decrypt
//$key - the secret key to use
function do_mencrypt($input, $key)
{
$input = str_replace(""n", "", $input);
$input = str_replace(""t", "", $input);
$input = str_replace(""r", "", $input);
$key = substr(md5($key), 0, 24);
$td = mcrypt_mole_open('tripledes', '', 'ecb', '');
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
mcrypt_generic_init($td, $key, $iv);
$encrypted_data = mcrypt_generic($td, $input);
mcrypt_generic_deinit($td);
mcrypt_mole_close($td);
return trim(chop(base64_encode($encrypted_data)));
}
//$input - stuff to decrypt
//$key - the secret key to use
function do_mdecrypt($input, $key)
{
$input = str_replace(""n", "", $input);
$input = str_replace(""t", "", $input);
$input = str_replace(""r", "", $input);
$input = trim(chop(base64_decode($input)));
$td = mcrypt_mole_open('tripledes', '', 'ecb', '');
$key = substr(md5($key), 0, 24);
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
mcrypt_generic_init($td, $key, $iv);
$decrypted_data = mdecrypt_generic($td, $input);
mcrypt_generic_deinit($td);
mcrypt_mole_close($td);
return trim(chop($decrypted_data));
}

『柒』 PHP DES加密函數

兩個函數如下:
加密函數:encrypt
function encrypt($encrypt,$key="") {
$iv = mcrypt_create_iv ( mcrypt_get_iv_size ( MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB ), MCRYPT_RAND );
$passcrypt = mcrypt_encrypt ( MCRYPT_RIJNDAEL_256, $key, $encrypt, MCRYPT_MODE_ECB, $iv );
$encode = base64_encode ( $passcrypt );
return $encode;
}

解密函數:decrypt
function decrypt($decrypt,$key="") {
$decoded = base64_decode ( $decrypt );
$iv = mcrypt_create_iv ( mcrypt_get_iv_size ( MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB ), MCRYPT_RAND );
$decrypted = mcrypt_decrypt ( MCRYPT_RIJNDAEL_256, $key, $decoded, MCRYPT_MODE_ECB, $iv );
return $decrypted;
}

『捌』 php怎樣用des加密演算法給介面加密

所謂的介面加密 是對介面調用的參數加密, php des加密演算法 網上有很多. 如:
http://www.cnblogs.com/cocowool/archive/2009/01/07/1371309.html

如果還嫌不安全,那就制定一個token生成規則,按某些伺服器端和客戶端都擁有的共同屬性生成一個隨機串,客戶端生成這個串,伺服器收到請求也校驗這個串。.

再或者是用https方式傳輸

閱讀全文

與des加密演算法php相關的資料

熱點內容
如何在app上架自己的游戲 瀏覽:457
安卓系統車載導航支持什麼格式u盤 瀏覽:624
天翼雲伺服器怎麼打開埠 瀏覽:907
如何啟用對伺服器遠程的訪問 瀏覽:774
程序員環境分析 瀏覽:812
tsp演算法是數據挖掘演算法嗎 瀏覽:672
編譯原理好處 瀏覽:820
怎麼買伺服器主機 瀏覽:176
什麼app可以存檔游戲 瀏覽:430
那裡有螺桿壓縮機修理 瀏覽:31
什麼電腦軟體檢測安卓機 瀏覽:728
c語言編譯沒問題組件有錯誤 瀏覽:513
迅捷pdf編輯器破解版下載 瀏覽:14
電火花線切割怎麼編程 瀏覽:777
linux查看驅動命令 瀏覽:998
蘇州車輛解壓代辦大概多少錢 瀏覽:593
租房app什麼比較靠譜 瀏覽:678
運動app如何測量運動心率 瀏覽:784
蘋果手機文件夾圖標背景圖透明度 瀏覽:735
遼寧省解壓旅遊 瀏覽:273