Crypt-SSSS

 view release on metacpan or  search on metacpan

lib/Crypt/SSSS.pm  view on Meta::CPAN

require Exporter;

our @ISA    = qw(Exporter);
our @EXPORT = qw(ssss_distribute ssss_reconstruct);

use POSIX qw(ceil pow);
use Crypt::SSSS::Message;

require Carp;

sub ssss_distribute(%) {
    my (%data) = @_;

    my $message = $data{message} or Carp::croak 'Missed "message" argument';

    my $k = $data{k} or Carp::croak 'Missed "k" argument';
    my $n = $data{n} || $k;

    my $p = $data{p} || 257;

    my $shares = {};

lib/Crypt/SSSS.pm  view on Meta::CPAN

            }

            # print "$x → ", $res % $p, "\n";
            $shares->{$x}->push_data($res % $p);
        }
    }

    $shares;
}

sub ssss_reconstruct(%) {
    my (%data) = @_;

    my $shares = $data{shares};
    my $p = $data{p} || '257';

    my @xs = keys %$shares;
    my $k = @xs;

    my %mdata;
    foreach my $x (@xs) {



( run in 0.315 second using v1.01-cache-2.11-cpan-1f129e94a17 )