]> git.mxchange.org Git - friendica.git/commitdiff
Switch to new php-encryption library version
authorHypolite Petovan <mrpetovan@gmail.com>
Thu, 9 Nov 2017 07:21:37 +0000 (02:21 -0500)
committerHypolite Petovan <mrpetovan@gmail.com>
Thu, 9 Nov 2017 07:21:37 +0000 (02:21 -0500)
- Remove references to library/ files
- Add namespace to library classes

include/items.php
mod/dfrn_notify.php
src/Protocol/DFRN.php

index 64aeabceab13206b1754cf4e4650084a2bd91716..6d4d30e7cbd76d52020756b0090138eb4ffbbc99 100644 (file)
@@ -33,9 +33,6 @@ require_once 'mod/share.php';
 require_once 'include/enotify.php';
 require_once 'include/group.php';
 
-/// @TODO one day with composer autoloader no more needed
-require_once 'library/defuse/php-encryption-1.2.1/Crypto.php';
-
 function construct_verb($item) {
        if ($item['verb']) {
                return $item['verb'];
index e0e30a24883032751c3dbfaf925628644ab140bb..c8dc093d17e6280aee023e66118ad8dcf56fd46b 100644 (file)
@@ -11,10 +11,8 @@ use Friendica\Core\Config;
 use Friendica\Database\DBM;
 use Friendica\Protocol\DFRN;
 
-require_once('include/items.php');
-require_once('include/event.php');
-
-require_once('library/defuse/php-encryption-1.2.1/Crypto.php');
+require_once 'include/items.php';
+require_once 'include/event.php';
 
 function dfrn_notify_post(App $a) {
        logger(__function__, LOGGER_TRACE);
@@ -185,8 +183,8 @@ function dfrn_notify_post(App $a) {
                                break;
                        case 2:
                                try {
-                                       $data = Crypto::decrypt(hex2bin($data), $final_key);
-                               } catch (InvalidCiphertext $ex) { // VERY IMPORTANT
+                                       $data = \Defuse\Crypto\Crypto::decrypt(hex2bin($data), $final_key);
+                               } catch (\Defuse\Crypto\Exception\WrongKeyOrModifiedCiphertextException $ex) { // VERY IMPORTANT
                                        /*
                                         * Either:
                                         *   1. The ciphertext was modified by the attacker,
@@ -196,12 +194,9 @@ function dfrn_notify_post(App $a) {
                                         */
                                        logger('The ciphertext has been tampered with!');
                                        xml_status(0, 'The ciphertext has been tampered with!');
-                               } catch (Ex\CryptoTestFailed $ex) {
+                               } catch (\Defuse\Crypto\Exception\EnvironmentIsBrokenException $ex) {
                                        logger('Cannot safely perform dencryption');
                                        xml_status(0, 'CryptoTestFailed');
-                               } catch (Ex\CannotPerformOperation $ex) {
-                                       logger('Cannot safely perform decryption');
-                                       xml_status(0, 'Cannot safely perform decryption');
                                }
                                break;
                        default:
index f400d033ea3536124f6334860fff544ceff32e3e..6ba8ed7d10e57f2d5fd9a8c87719d5bbd68d132d 100644 (file)
@@ -1296,26 +1296,20 @@ class DFRN
                                case 2:
                                        // RINO 2 based on php-encryption
                                        try {
-                                               $key = Crypto::createNewRandomKey();
-                                       } catch (CryptoTestFailed $ex) {
+                                               $key = \Defuse\Crypto\Key::createNewRandomKey();
+                                       } catch (\Defuse\Crypto\Exception\CryptoException $ex) {
                                                logger('Cannot safely create a key');
                                                return -4;
-                                       } catch (CannotPerformOperation $ex) {
-                                               logger('Cannot safely create a key');
-                                               return -5;
                                        }
                                        try {
-                                               $data = Crypto::encrypt($postvars['data'], $key);
-                                       } catch (CryptoTestFailed $ex) {
+                                               $data = \Defuse\Crypto\Crypto::encrypt($postvars['data'], $key);
+                                       } catch (\Defuse\Crypto\Exception\CryptoException $ex) {
                                                logger('Cannot safely perform encryption');
                                                return -6;
-                                       } catch (CannotPerformOperation $ex) {
-                                               logger('Cannot safely perform encryption');
-                                               return -7;
                                        }
                                        break;
                                default:
-                                       logger("rino: invalid requested verision '$rino_remote_version'");
+                                       logger("rino: invalid requested version '$rino_remote_version'");
                                        return -8;
                        }