NAME
Net::SSH::Perl::Cipher::ChachaPoly - provides Chacha20 encryption with Poly1305 Authentication support for Net::SSH::Perl.
SYNOPSIS
my
$eight_byte_iv
=
pack
(
'N'
,0) .
pack
(
'N'
,1);
my
$eight_byte_counter
=
chr
(1) . 7 x
"\0"
;
# little endian
my
$cipher
= Net::SSH::Perl::Cipher->new(
'ChachaPoly'
,
$key
);
# generate poly key
$cipher
->ivsetup(
$eight_byte_iv
,
undef
);
my
$poly_key
=
"\0"
x POLY1305_KEYLEN;
# 32 byte key
$poly_key
=
$ciph
->encrypt(
$poly_key
);
$cipher
->ivsetup(
$eight_byte_iv
,
$eight_byte_counter
);
my
$enc
=
$cipher
->encrypt(
$plaintext
);
my
$tag
=
$cipher
->poly1305(
$enc
,
$poly_key
);
DESCRIPTION
Net::SSH::Perl::Cipher::Chacha provides Chacha20 encryption with Poly1305 support for Net::SSH::Perl.
This module requires Crypt::OpenSSH::ChachaPoly which provides a wrapper to the OpenSSH Chacha and Poly1305 functions.
AUTHOR & COPYRIGHTS
Lance Kinley E<lkinley@loyaltymethods.com>
Copyright (c) 2015 Loyalty Methods, Inc.
LICENSE
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 149:
Unknown E content in E<lkinley@loyaltymethods.com>