Merge branch 'master-crypt-fix-old-openssl'

This commit is contained in:
terrafrost 2017-05-14 15:35:22 -05:00
commit c25eb3ed9b
2 changed files with 20 additions and 1 deletions

View File

@ -333,6 +333,9 @@ class Blowfish extends BlockCipher
public function isValidEngine($engine)
{
if ($engine == self::ENGINE_OPENSSL) {
if (version_compare(PHP_VERSION, '5.3.7') < 0 && $this->key_length != 16) {
return false;
}
if ($this->key_length < 16) {
return false;
}

View File

@ -145,7 +145,23 @@ class RC4 extends StreamCipher
public function isValidEngine($engine)
{
if ($engine == self::ENGINE_OPENSSL) {
$this->cipher_name_openssl = 'rc4-40';
if (version_compare(PHP_VERSION, '5.3.7') >= 0) {
$this->cipher_name_openssl = 'rc4-40';
} else {
switch (strlen($this->key)) {
case 5:
$this->cipher_name_openssl = 'rc4-40';
break;
case 8:
$this->cipher_name_openssl = 'rc4-64';
break;
case 16:
$this->cipher_name_openssl = 'rc4';
break;
default:
return false;
}
}
}
return parent::isValidEngine($engine);