The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Crypt::SDTree::Subscribe - Decrypt Broadcast Messages

SYNOPSIS

  use Crypt::SDTree::Subscribe;

  my $client = Crypt::SDTree::Subscribe->new('keyfile');
  my $decrypted = $subscriber->decrypt($message);

ABSTRACT

Perl interface for the decryption of broadcast messages

DESCRIPTION

This package allows the decryption of messages that have been encrypted by Crypt::SDTree::Publish.

Please note that this module has not been reviewed by anyone other than myself. I am not sure that it actually is secure - while the theoretical basis should be sound it might leak key material or have other implementation defects.

Hence, please consult a cryptographer before using this for anything that is actually important.

FUNCTIONS

new($filename)

Create a new class instance. Key information is loaded from $filename. Key material can be created using Crypt::SDTree::Publish

newFromClientData($data)

Same as new, just that the client key information is directly provided and not loaded from a file.

decrypt($data)

Try to decrypt the encrypted data block in $data. Returns the decrypted data or undef, if it cannot be decrypted.

printEcInformation

Print information about the publishers EC-key to STDOUT.

printSDKeyList

Print the subset-difference key list to STDOUT

AUTHOR

Bernhard Amann, <bernhard@icsi.berkeley.edu>

COPYRIGHT AND LICENSE

Copyright (C) 2010-2012 by Bernhard Amann

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA