NAME
FTN::Crypt - Encryption of the FTN messages.
VERSION
0.5.1
SYNOPSIS
use FTN::Crypt;
my $obj = FTN::Crypt->new(
Nodelist => 'NODELIST.*',
Pointlist => [
'pointlist_1.*',
'pointlist_2',
],
) or die FTN::Crypt->error;
$obj->encrypt_message(
Address => $ftn_address,
Message => $msg,
) or die $obj->error;
DESCRIPTION
The possibility of FTN netmail encryption may be sometimes a useful option. Corresponding nodelist flag was proposed in FSC-0073.
Although current FidoNet Policy (version 4.07 dated June 9, 1989) clearly forbids routing of encrypted traffic without the express permission of all the links in the delivery system, it's still possible to deliver such messages directly. And, obviously, such routing may be allowed in FTN networks other than FidoNet.
The proposed nodelist userflag is ENCRYPT:[TYPE], where [TYPE] is one of 'PGP2', 'PGP5', 'GnuPG'. So encryption-capable node should have something like U,ENCRYPT:PGP5 in his nodelist record.
METHODS
new()
Constructor.
Parameters:
Nodelist
: Path to nodelist file(s), either scalar or arrayref. If contains wildcard, file with maximum number in digital extension will be selected.Optional
Pointlist
: Path to pointlist file(s), either scalar or arrayref. If contains wildcard, file with maximum number in digital extension will be selected.Optional
Keyserver
Keyserver (defaults to 'https://zimmermann.mayfirst.org/pks/lookup').Optional
Pubring
Public keyring file.Optional
Secring
Secret keyring file.
Returns:
Created object or error in FTN::Crypt->error
.
Sample:
my $obj = FTN::Crypt->new(
Nodelist => 'NODELIST.*',
Pointlist => [
'pointlist_1.*',
'pointlist_2',
],
) or die FTN::Crypt->error;
encrypt_message()
Message encryption.
Parameters:
Address
: Recipient's FTN address.Message
: FTN message text with kludges.
Returns:
Encrypted message or error in $obj->error
.
Sample:
my $res = $obj->encrypt_message(
Address => $ftn_address,
Message => $msg,
) or die $obj->error;
decrypt_message()
Message decryption.
Parameters:
Address
: Recipient's FTN address.Message
: FTN message text with kludges.Passphrase
: Key passphrase.
Returns:
Decrypted message or error in $obj->error
.
Sample:
my $res = $obj->decrypt_message(
Address => $ftn_address,
Message => $msg,
Passphrase => $pass,
) or die $obj->error;
AUTHOR
Petr Antonov, <pietro@cpan.org>
COPYRIGHT AND LICENSE
Copyright (C) 2019 by Petr Antonov
This library is free software; you can redistribute it and/or modify it under the same terms as Perl 5.10.0. For more details, see the full text of the licenses at https://opensource.org/licenses/Artistic-1.0, and http://www.gnu.org/licenses/gpl-2.0.html.
This package is provided "as is" and without any express or implied warranties, including, without limitation, the implied warranties of merchantability and fitness for a particular purpose.
INSTALLATION
Using cpan
:
$ cpan FTN::Crypt
Manual install:
$ perl Makefile.PL
$ make
$ make test
$ make install