mirror of
https://github.com/friendica/friendica
synced 2024-11-10 05:02:58 +00:00
move encryption functions to crypto file
This commit is contained in:
parent
6aa633efc8
commit
0d9d576aa6
5 changed files with 47 additions and 43 deletions
|
@ -74,7 +74,7 @@ function DerToRsa($Der)
|
|||
//Encode:
|
||||
$Der = base64_encode($Der);
|
||||
//Split lines:
|
||||
$lines = str_split($Der, 65);
|
||||
$lines = str_split($Der, 64);
|
||||
$body = implode("\n", $lines);
|
||||
//Get title:
|
||||
$title = 'RSA PUBLIC KEY';
|
||||
|
@ -184,3 +184,43 @@ function salmon_key($pubkey) {
|
|||
}
|
||||
|
||||
|
||||
|
||||
if(! function_exists('aes_decrypt')) {
|
||||
function aes_decrypt($val,$ky)
|
||||
{
|
||||
$key="\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
|
||||
for($a=0;$a<strlen($ky);$a++)
|
||||
$key[$a%16]=chr(ord($key[$a%16]) ^ ord($ky[$a]));
|
||||
$mode = MCRYPT_MODE_ECB;
|
||||
$enc = MCRYPT_RIJNDAEL_128;
|
||||
$dec = @mcrypt_decrypt($enc, $key, $val, $mode, @mcrypt_create_iv( @mcrypt_get_iv_size($enc, $mode), MCRYPT_DEV_URANDOM ) );
|
||||
return rtrim($dec,(( ord(substr($dec,strlen($dec)-1,1))>=0 and ord(substr($dec, strlen($dec)-1,1))<=16)? chr(ord( substr($dec,strlen($dec)-1,1))):null));
|
||||
}}
|
||||
|
||||
|
||||
if(! function_exists('aes_encrypt')) {
|
||||
function aes_encrypt($val,$ky)
|
||||
{
|
||||
$key="\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
|
||||
for($a=0;$a<strlen($ky);$a++)
|
||||
$key[$a%16]=chr(ord($key[$a%16]) ^ ord($ky[$a]));
|
||||
$mode=MCRYPT_MODE_ECB;
|
||||
$enc=MCRYPT_RIJNDAEL_128;
|
||||
$val=str_pad($val, (16*(floor(strlen($val) / 16)+(strlen($val) % 16==0?2:1))), chr(16-(strlen($val) % 16)));
|
||||
return mcrypt_encrypt($enc, $key, $val, $mode, mcrypt_create_iv( mcrypt_get_iv_size($enc, $mode), MCRYPT_DEV_URANDOM));
|
||||
}}
|
||||
|
||||
|
||||
function pkcs5_pad ($text, $blocksize)
|
||||
{
|
||||
$pad = $blocksize - (strlen($text) % $blocksize);
|
||||
return $text . str_repeat(chr($pad), $pad);
|
||||
}
|
||||
|
||||
function pkcs5_unpad($text)
|
||||
{
|
||||
$pad = ord($text{strlen($text)-1});
|
||||
if ($pad > strlen($text)) return false;
|
||||
if (strspn($text, chr($pad), strlen($text) - $pad) != $pad) return false;
|
||||
return substr($text, 0, -1 * $pad);
|
||||
}
|
||||
|
|
|
@ -141,6 +141,7 @@ function diaspora_decode($importer,$xml) {
|
|||
|
||||
$decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $outer_key, $ciphertext, MCRYPT_MODE_CBC, $outer_iv);
|
||||
|
||||
|
||||
$decrypted = pkcs5_unpad($decrypted);
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
<?php
|
||||
|
||||
require_once('bbcode.php');
|
||||
require_once('oembed.php');
|
||||
require_once('include/bbcode.php');
|
||||
require_once('include/oembed.php');
|
||||
require_once('include/salmon.php');
|
||||
require_once('include/crypto.php');
|
||||
|
||||
function get_feed_for(&$a, $dfrn_id, $owner_nick, $last_update, $direction = 0) {
|
||||
|
||||
|
|
|
@ -620,32 +620,6 @@ function valid_email($x){
|
|||
}}
|
||||
|
||||
|
||||
if(! function_exists('aes_decrypt')) {
|
||||
function aes_decrypt($val,$ky)
|
||||
{
|
||||
$key="\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
|
||||
for($a=0;$a<strlen($ky);$a++)
|
||||
$key[$a%16]=chr(ord($key[$a%16]) ^ ord($ky[$a]));
|
||||
$mode = MCRYPT_MODE_ECB;
|
||||
$enc = MCRYPT_RIJNDAEL_128;
|
||||
$dec = @mcrypt_decrypt($enc, $key, $val, $mode, @mcrypt_create_iv( @mcrypt_get_iv_size($enc, $mode), MCRYPT_DEV_URANDOM ) );
|
||||
return rtrim($dec,(( ord(substr($dec,strlen($dec)-1,1))>=0 and ord(substr($dec, strlen($dec)-1,1))<=16)? chr(ord( substr($dec,strlen($dec)-1,1))):null));
|
||||
}}
|
||||
|
||||
|
||||
if(! function_exists('aes_encrypt')) {
|
||||
function aes_encrypt($val,$ky)
|
||||
{
|
||||
$key="\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0";
|
||||
for($a=0;$a<strlen($ky);$a++)
|
||||
$key[$a%16]=chr(ord($key[$a%16]) ^ ord($ky[$a]));
|
||||
$mode=MCRYPT_MODE_ECB;
|
||||
$enc=MCRYPT_RIJNDAEL_128;
|
||||
$val=str_pad($val, (16*(floor(strlen($val) / 16)+(strlen($val) % 16==0?2:1))), chr(16-(strlen($val) % 16)));
|
||||
return mcrypt_encrypt($enc, $key, $val, $mode, mcrypt_create_iv( mcrypt_get_iv_size($enc, $mode), MCRYPT_DEV_URANDOM));
|
||||
}}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Function: linkify
|
||||
|
@ -903,20 +877,6 @@ function generate_user_guid() {
|
|||
}
|
||||
|
||||
|
||||
function pkcs5_pad ($text, $blocksize)
|
||||
{
|
||||
$pad = $blocksize - (strlen($text) % $blocksize);
|
||||
return $text . str_repeat(chr($pad), $pad);
|
||||
}
|
||||
|
||||
function pkcs5_unpad($text)
|
||||
{
|
||||
$pad = ord($text{strlen($text)-1});
|
||||
if ($pad > strlen($text)) return false;
|
||||
if (strspn($text, chr($pad), strlen($text) - $pad) != $pad) return false;
|
||||
return substr($text, 0, -1 * $pad);
|
||||
}
|
||||
|
||||
|
||||
function base64url_encode($s, $strip_padding = false) {
|
||||
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
|
||||
require_once('include/salmon.php');
|
||||
require_once('include/crypto.php');
|
||||
|
||||
|
||||
function zot_get($url,$args) {
|
||||
$argstr = '';
|
||||
|
|
Loading…
Reference in a new issue