Ответ 1
Кажется, что модуль OpenSSL
обеспечивает доступ к различным шифрам AES. Это зависит от доступности библиотеки openssl (хотя в Windows я полагаю, что она загружает DLL как часть процесса установки модуля).
С этим установленным (zef install OpenSSL
) можно:
use OpenSSL::CryptTools;
А затем используйте encrypt
/decrypt
:
# Fake IV and key
my $iv = ('0' x 16).encode;
my $key = ('xy' x 16).encode;
# Encrypt.
my $ciphertext = encrypt("asdf".encode, :aes256, :$iv, :$key);
say $ciphertext;
# Decrypt.
say decrypt($ciphertext, :aes256, :$iv, :$key).decode;
Смотрите эти тесты для большего количества примеров.