*/
namespace Friendica\Util;
+use ASN_BASE;
+use ASNValue;
use Friendica\Core\Config;
use Friendica\Core\Hook;
use Friendica\Core\Logger;
-use ASN_BASE;
-use ASNValue;
+use Friendica\Core\System;
/**
- * @brief Crypto class
+ * Crypto class
*/
class Crypto
{
*/
public static function rsaSign($data, $key, $alg = 'sha256')
{
+ if (empty($key)) {
+ Logger::warning('Empty key parameter', ['callstack' => System::callstack()]);
+ }
openssl_sign($data, $sig, $key, (($alg == 'sha1') ? OPENSSL_ALGO_SHA1 : $alg));
return $sig;
}
*/
public static function rsaVerify($data, $sig, $key, $alg = 'sha256')
{
+ if (empty($key)) {
+ Logger::warning('Empty key parameter', ['callstack' => System::callstack()]);
+ }
return openssl_verify($data, $sig, $key, (($alg == 'sha1') ? OPENSSL_ALGO_SHA1 : $alg));
}
$r = ASN_BASE::parseASNString($x);
- $m = Strings::base64UrlDecode($r[0]->asnData[1]->asnData[0]->asnData[0]->asnData);
- $e = Strings::base64UrlDecode($r[0]->asnData[1]->asnData[0]->asnData[1]->asnData);
+ if (isset($r[0])) {
+ $m = Strings::base64UrlDecode($r[0]->asnData[1]->asnData[0]->asnData[0]->asnData);
+ $e = Strings::base64UrlDecode($r[0]->asnData[1]->asnData[0]->asnData[1]->asnData);
+ }
}
/**