NAME

Crypt::RNCryptor - Perl implementation of RNCryptor

SYNOPSIS

use Crypt::RNCryptor;

# generate password-based encryptor
$cryptor = Crypt::RNCryptor->new(
    password => 'secret password',
);

# generate key-based encryptor
$cryptor = Crypt::RNCryptor->new(
    encryption_key => '',
    hmac_key => '',
);

# encrypt
$ciphertext = $cryptor->encrypt('plaintext');

# decrypt
$plaintext = $cryptor->decrypt($ciphertext);

DESCRIPTION

Crypt::RNCryptor is a Perl implementation of RNCryptor, which is one of data format for AES-256 (CBC mode) encryption.

Crypt::RNCryptor class is the base of Crypt::RNCryptor::V* class and declare some abstract methods.

METHODS

CLASS METHODS

my $cryptor = Crypt::RNCryptor->new(%opts);

Create a cryptor instance.

%opts = (
    # RNCryptor version. Currently support only version 3)
    version => $Crypt::RNCryptor::DefaultRNCryptorVersion,
    # See Crypt::RNCryptor::V*
    %version_dependent_opts
);

INSTANCE METHODS

$ciphertext = $cryptor->encrypt($plaintext, %version_dependent_opts)

Encrypt plaintext with options.

$plaintext = $cryptor->decrypt($ciphertext, %version_dependent_opts)

Decrypt ciphertext with options.

MODULE VARIABLES

$Crypt::RNCryptor::DefaultRNCryptorVersion = '3'

Default RNCryptor version.

@Crypt::RNCryptor::DefaultRNCryptorVersion

List of supporting RNCryptor versions.

LICENSE

Copyright (C) Shintaro Seki.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR

Shintaro Seki <s2pch.luck@gmail.com>