本文整理汇总了PHP中Crypt_Rijndael::setKeyLength方法的典型用法代码示例。如果您正苦于以下问题:PHP Crypt_Rijndael::setKeyLength方法的具体用法?PHP Crypt_Rijndael::setKeyLength怎么用?PHP Crypt_Rijndael::setKeyLength使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Crypt_Rijndael
的用法示例。
在下文中一共展示了Crypt_Rijndael::setKeyLength方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: generateKey
/**
* @param null|string $input
* @return string
*/
public function generateKey($input = NULL)
{
$text = $input === NULL ? $this->username . ';' . date('d/m/Y H:i:s') . ';' . $this->ip : $input;
$cipher = new \Crypt_Rijndael();
$cipher->setKeyLength(256);
$cipher->setBlockLength(128);
$cipher->setKey(base64_decode($this->key));
$cipher->setIV(base64_decode($this->iv));
return base64_encode($cipher->encrypt($text));
}
示例2: init
/**
* Initilizes cryptographic scheme
*/
private static function init()
{
if (is_null(self::$cryptographicScheme)) {
$key = KeyHandler::readKey();
$mysqlKey = "";
for ($a = 0; $a < strlen($key); $a++) {
$mysqlKey[$a % 16] = chr(ord($mysqlKey[$a % 16]) ^ ord($key[$a]));
}
$aes = new Crypt_Rijndael(CRYPT_RIJNDAEL_MODE_ECB);
$aes->setKeyLength(128);
$aes->setBlockLength(128);
$aes->setKey($mysqlKey);
self::$cryptographicScheme = $aes;
}
}
示例3: setKeyLength
/**
* Sets the key length
*
* Valid key lengths are 128, 192, and 256. If the length is less than 128, it will be rounded up to
* 128. If the length is greater than 128 and invalid, it will be rounded down to the closest valid amount.
*
* @see Crypt_Rijndael:setKeyLength()
* @access public
* @param Integer $length
*/
function setKeyLength($length)
{
switch ($length) {
case 160:
$length = 192;
break;
case 224:
$length = 256;
}
parent::setKeyLength($length);
}
示例4: encrypt
/**
*
* Encrypts given value, with given key, and hex encodes it before
* returning.
*
* Compatible with mysql: "hex(aes_encrypt($val, $key))
*
* @param string $val - value to encrypt
* @param string $ky - key
* @return string encrypted value
*/
public function encrypt($val, $key)
{
if (empty($val)) {
return $val;
}
$mysqlKey = "";
for ($a = 0; $a < strlen($key); $a++) {
$mysqlKey[$a % 16] = chr(ord($mysqlKey[$a % 16]) ^ ord($key[$a]));
}
$aes = new Crypt_Rijndael(CRYPT_RIJNDAEL_MODE_ECB);
$aes->setKeyLength(128);
$aes->setBlockLength(128);
$aes->setKey($mysqlKey);
$encrypt = $aes->encrypt($val);
$encrypt = strtoupper(bin2hex($encrypt));
return $encrypt;
}