1. 程式人生 > >PHP簡單對稱加密

PHP簡單對稱加密

/**
* 簡單對稱加密演算法之加密
* @param String $string 需要加密的字串
* @param String $skey 加密EKY
* @author Anyon Zou <[email protected]>
* @date 2013-08-13 19:30
* @update 2014-10-10 10:10
* @return String
*/
function encode($string = "", $skey = 'cxphp') {
$strArr = str_split(base64_encode($string));
$strCount = count($strArr);
foreach (str_split($skey) as $key => $value)
$key < $strCount && $strArr[$key].=$value;
return str_replace(array('=', '+', '/'), array('O0O0O', 'o000o', 'oo00o'), join($strArr));
}
/**
* 簡單對稱加密演算法之解密
* @param String $string 需要解密的字串
* @param String $skey 解密KEY
* @author Anyon Zou <

[email protected]>
* @date 2013-08-13 19:30
* @update 2014-10-10 10:10
* @return String
*/
function decode($string = "", $skey = 'cxphp') {
$strArr = str_split(str_replace(array('O0O0O', 'o000o', 'oo00o'), array('=', '+', '/'), $string), 2);
$strCount = count($strArr);
foreach (str_split($skey) as $key => $value)
$key <= $strCount && $strArr[$key][1] === $value && $strArr[$key] = $strArr[$key][0];
return base64_decode(join($strArr));
}
echo '<pre>';
$str = '56,15123365247,54,四大古典風格';
echo "string : " . $str . " <br />";
echo "encode : " . ($enstring = encode($str)) . '<br />';
echo "decode : " . decode($enstring);
die();

輸出結果

string : 56,15123365247,54,四大古典風格 
encode : NcTxYpshMpTUxMjMzNjUyNDcsNTQs5Zub5aSn5Yo000ok5YW46aOO5qC8
decode : 56,15123365247,54,四大古典風格

相關推薦

PHP簡單對稱加密

/** * 簡單對稱加密演算法之加密 * @param String $string 需要加密的字串 * @param String $skey 加密EKY * @author Anyon Zou <[email protected]> * @dat

PHP對稱加密函式password_hash() 替代Md5()

$hashed_password = password_hash('mypassword',PASSWORD_BCRYPT); var_dump(password_verify ('mypassword', $hashed_password.''));#結果true 我們一般習慣性的使用MD5方

php 簡單對稱加密

<?php header("content-type:text/html;charset=utf-8"); /***@param $string目標字串*@param $key 加密key*@return string */function encryption($string="",$key="c

簡單PHP對稱加密解密方法

最近在專案中使用ThinkPHP自帶的各種對稱加密,在經過URL傳輸後出現解釋不了的情況,無論使用URL轉碼還是什麼,都不起作用,時好時壞,所以就自己隨便寫了一個加密解密的方法,希望能暫時滿足專案的需求吧,目前至少一沒有看到程式碼的人,是很難找到破解的方法的,而且滿足在網路

對稱加密詳解,以及JAVA簡單實現

turn bsp 十進制 stat mage 需要 對稱密鑰 else ges (原) 常用的加密有3種 1、正向加密,如MD5,加密後密文固定,目前還沒辦法破解,但是可以能過數據庫撞庫有一定概率找到,不過現在一般用這種方式加密都會加上鹽值。 2、對稱加密,通過一個固定

對稱加密php

rijndael ofb win ring subst 向量 creat and aes /** * 常用對稱加密算法類 * 支持密鑰:64/128/256 bit(字節長度8/16/32) * 支持算法:DES/AES(根據密鑰長度自動匹配使用:DES:64bit

php提供的對稱加密算法

() public and base 加密算法 decode roo ces stat KEY 是之前定義的常量 Mcrypt::encrypt(); Mcrypt::decrypt(); defined(‘ROOT‘) or exit(‘Access Denied

php中使用對稱加密DES3,開發銀行卡綁定,實名驗證……

3des 省市區 返回 就是 unp type 邏輯 ati fun 對稱加密:對稱加密是一種數據加密算法,對一組數據的加密和解密都使用一樣的密鑰(key),可以有效保護金融數據,常見的對稱加密有DES,3DES,AES、RC2、RC4、RC5。 DES3: 對DES算法的

php openssl_sign() 語法+RSA公私鑰加密解密,非對稱加密演算法詳解

其實有時候覺得寫部落格好煩,就個函式就開篇部落格。很小的意見事情而已,知道的人看來多取一舉,或者說沒什麼必要,浪費時間,不知道的人就會很鬱悶。技術就是這樣的,懂的人覺得真的很簡單啊,不知道的人真的好難。。。 一般在跟第三方介面對接資料的時候,為了保證很多都使用的RSA簽名,沒性趣瞭解的同學只需要

php rsa非對稱加密

class Rsa { private static $PRIVATE_KEY = '-----BEGIN RSA PRIVATE KEY-----MIICXgIBAAKBgQCoZZ8iUBprOIc0kGckr5ax6/Fd9IKKMc/XHayKEAvqpS0oz0b1ojEkpkdZB

php實現openssl RSA非對稱加密解密

今天跟第三方公司對接別人看了我寫的文件當時文件寫的是DES加密,然後我的一個回答都讓我覺得對不起別人,我說了是AES加密,當時AES和RSA加解密的原理我不瞭解導致我也誤解了別人,今天就特意去理解了一下,下面就看一下RSA非對稱的加解密吧 首先先來說一下RSA和AES的區別

php RSA非對稱加密演算法

class Rsa { private static $PRIVATE_KEY = '-----BEGIN RSA PRIVATE KEY-----MIICXgIBAAKBgQCoZZ8iUBprOIc0kGckr5ax6/Fd9IKKMc/XHayKEAvqpS0oz0b1ojEkpk

php簡單混淆類加密檔案如何解密?

      最近在整理單位購買的原始碼時,發現原始碼裡好多檔案都混淆加密了。雖然不解密也不影響使用,但是心裡總覺得有些彆扭,便試著將加密的檔案解密。       首先,百度了一下,看網上是否有現成的混淆類解密工具,搜到了一個http://www.z

php簡單混淆類加密文件如何解密?

怎麽 發現 出發 而不是 code whl pan 一個 die() 最近在整理單位購買的源碼時,發現源碼裏好多文件都混淆加密了。雖然不解密也不影響使用,但是心裏總覺得有些別扭,便試著將加密的文件解密。 首先,百度了一下,看網上是否有現成的混淆類解密

簡單易懂的非對稱加密

        北京的張三發了一個快遞到廣州的李四,途中經過了上海,上海快遞中心出現了一個黑客老王,他偷偷打開了張三給李四的快遞,然後偷偷把裡邊的衣服剪爛,再按照原樣包裝好發往廣州,可以看到對於這樣簡單包裝的傳輸在中途是可以偷偷修改裡邊的東西。        HTTP的資料包

php使用openssl來實現非對稱加密

使用非對稱加密主要是藉助openssl的公鑰和私鑰,用公鑰加密私鑰解密,或者私鑰加密公鑰解密。 1.安裝openssl和php的openssl擴充套件 2.生成私鑰:openssl genrsa 用於生成rsa私鑰檔案,生成是可以指定私鑰長度和密碼保護 openssl g

php中使用對稱加密DES3,開發銀行卡繫結,實名驗證……

對稱加密:對稱加密是一種資料加密演算法,對一組資料的加密和解密都使用一樣的金鑰(key),可以有效保護金融資料,常見的對稱加密有DES,3DES,AES、RC2、RC4、RC5。DES3: 對DES演算法的組合,指定3個KEY,運算3次DES,金鑰KEY的總字元長度為24位。

常用對稱加密演算法(DES/AES)類(PHP

看註釋,啥也不說了,歡迎各種跨平臺測試! /** * 常用對稱加密演算法類 * 支援金鑰:64/128/256 bit(位元組長度8/16/32) * 支援演算法:DES/AES(根據金鑰長度自動匹配使用:DES:64bit AES:128/256bit) * 支

對稱加密——AES的php程式碼

對稱加密是相對於非對稱加密存在的。 對稱加密,是通過金鑰加密後,可以再通過之前加密的金鑰進行解密,得到加密之前的資訊。 非對稱加密,是有公鑰和私鑰,如果使用公鑰加密,那麼需要用私鑰解密,得到加密之前的資訊;同樣,如果使用私鑰加密,那麼需要用公鑰解密,得到加密之前的資訊。

php使用openssl來實現RSA(非對稱加密)

使用非對稱加密主要是藉助openssl的公鑰和私鑰,用公鑰加密私鑰解密,或者私鑰加密公鑰解密。 1.安裝openssl和PHP的openssl擴充套件 2.生成私鑰:openssl genrsa 用於