openssl_enrypt в php альтернатив для дартс - PullRequest
0 голосов
/ 13 февраля 2020

есть ли альтернативные пакеты для dart для создания точного результата, например openssl_encrypt?

в настоящее время я использую

$output = openssl_encrypt($string, $encrypt_method, $key, 0, $iv);

есть этот пакет https://pub.dev/packages/encrypt, который использует аналогичный параметр, но при сравнении результата кодирования и попытке декодировать его с помощью openssl_decrypt он всегда возвращает false

есть ли другой пакет рекомендаций?

my PHP код

    $output = false;
    $string = "admin";
    $method = "AES-256-CBC";
    $key = 'mykey';
    $iv = 'myiv';
    $key = hash('sha256', $secret_key);

    $iv = substr(hash('sha256', $secret_iv), 0, 16);
    if ( $action == 'encrypt' ) {
        $output = openssl_encrypt($string, $encrypt_method, $key, 0, $iv);
        $output = base64_encode($output);
    } else if( $action == 'decrypt' ) {
        $output = openssl_decrypt(base64_decode($string), $encrypt_method, $key, 0, $iv);
    }

и вот мой код дротика

final plainText = 'admin';
final key = Key.fromUtf8('mykey');
final iv = IV.fromLength(16);

final encrypter = Encrypter(AES(key));

final encrypted = encrypter.encrypt(plainText, iv: iv);
final decrypted = encrypter.decrypt(encrypted, iv: iv);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...