]> git.mxchange.org Git - friendica.git/blobdiff - src/Protocol/Salmon.php
code standards
[friendica.git] / src / Protocol / Salmon.php
index 29abd77d06f607890fe040276d1cc896c14cfbf1..f8fa2f0540f66ec56e546e4a421c2c3f2e11a9ea 100644 (file)
@@ -8,6 +8,7 @@ use Friendica\Core\Logger;
 use Friendica\Network\Probe;
 use Friendica\Util\Crypto;
 use Friendica\Util\Network;
+use Friendica\Util\Strings;
 use Friendica\Util\XML;
 
 /**
@@ -21,6 +22,7 @@ class Salmon
         * @param string $uri     Uniform Resource Identifier
         * @param string $keyhash encoded key
         * @return mixed
+        * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         */
        public static function getKey($uri, $keyhash)
        {
@@ -51,7 +53,7 @@ class Salmon
                                        } else {
                                                $ret[$x] = substr($ret[$x], 5);
                                        }
-                               } elseif (normalise_link($ret[$x]) == 'http://') {
+                               } elseif (Strings::normaliseLink($ret[$x]) == 'http://') {
                                        $ret[$x] = Network::fetchUrl($ret[$x]);
                                }
                        }
@@ -70,7 +72,7 @@ class Salmon
                        return $ret[0];
                } else {
                        foreach ($ret as $a) {
-                               $hash = base64url_encode(hash('sha256', $a));
+                               $hash = Strings::base64UrlEncode(hash('sha256', $a));
                                if ($hash == $keyhash) {
                                        return $a;
                                }
@@ -85,6 +87,7 @@ class Salmon
         * @param string $url   url
         * @param string $slap  slap
         * @return integer
+        * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         */
        public static function slapper($owner, $url, $slap)
        {
@@ -104,22 +107,22 @@ class Salmon
 
                // create a magic envelope
 
-               $data      = base64url_encode($slap);
+               $data      = Strings::base64UrlEncode($slap);
                $data_type = 'application/atom+xml';
                $encoding  = 'base64url';
                $algorithm = 'RSA-SHA256';
-               $keyhash   = base64url_encode(hash('sha256', self::salmonKey($owner['spubkey'])), true);
+               $keyhash   = Strings::base64UrlEncode(hash('sha256', self::salmonKey($owner['spubkey'])), true);
 
-               $precomputed = '.' . base64url_encode($data_type) . '.' . base64url_encode($encoding) . '.' . base64url_encode($algorithm);
+               $precomputed = '.' . Strings::base64UrlEncode($data_type) . '.' . Strings::base64UrlEncode($encoding) . '.' . Strings::base64UrlEncode($algorithm);
 
                // GNU Social format
-               $signature   = base64url_encode(Crypto::rsaSign($data . $precomputed, $owner['sprvkey']));
+               $signature   = Strings::base64UrlEncode(Crypto::rsaSign($data . $precomputed, $owner['sprvkey']));
 
                // Compliant format
-               $signature2  = base64url_encode(Crypto::rsaSign(str_replace('=', '', $data . $precomputed), $owner['sprvkey']));
+               $signature2  = Strings::base64UrlEncode(Crypto::rsaSign(str_replace('=', '', $data . $precomputed), $owner['sprvkey']));
 
                // Old Status.net format
-               $signature3  = base64url_encode(Crypto::rsaSign($data, $owner['sprvkey']));
+               $signature3  = Strings::base64UrlEncode(Crypto::rsaSign($data, $owner['sprvkey']));
 
                // At first try the non compliant method that works for GNU Social
                $xmldata = ["me:env" => ["me:data" => $data,
@@ -204,10 +207,11 @@ class Salmon
        /**
         * @param string $pubkey public key
         * @return string
+        * @throws \Exception
         */
        public static function salmonKey($pubkey)
        {
                Crypto::pemToMe($pubkey, $m, $e);
-               return 'RSA' . '.' . base64url_encode($m, true) . '.' . base64url_encode($e, true);
+               return 'RSA' . '.' . Strings::base64UrlEncode($m, true) . '.' . Strings::base64UrlEncode($e, true);
        }
 }