NAME

Digest::Luffa - Perl interface to the Luffa digest algorithm

SYNOPSIS

# Functional interface
use Digest::Luffa qw(luffa_256 luffa_256_hex luffa_256_base64);

$digest = luffa_256($data);
$digest = luffa_256_hex($data);
$digest = luffa_256_base64($data);

# Object-oriented interface
use Digest::Luffa;

$ctx = Digest::Luffa->new(256);

$ctx->add($data);
$ctx->addfile(*FILE);

$digest = $ctx->digest;
$digest = $ctx->hexdigest;
$digest = $ctx->b64digest;

DESCRIPTION

The Digest::Luffa module provides an interface to the Luffa message digest algorithm. Luffa is a candidate in the NIST SHA-3 competition.

This interface follows the conventions set forth by the Digest module.

FUNCTIONS

The following functions are provided by the Digest::Luffa module. None of these functions are exported by default.

luffa_224($data, ...)

luffa_256($data, ...)

luffa_384($data, ...)

luffa_512($data, ...)

Logically joins the arguments into a single string, and returns its Luffa digest encoded as a binary string.

luffa_224_hex($data, ...)

luffa_256_hex($data, ...)

luffa_384_hex($data, ...)

luffa_512_hex($data, ...)

Logically joins the arguments into a single string, and returns its Luffa digest encoded as a hexadecimal string.

luffa_224_base64($data, ...)

luffa_256_base64($data, ...)

luffa_384_base64($data, ...)

luffa_512_base64($data, ...)

Logically joins the arguments into a single string, and returns its Luffa digest encoded as a Base64 string, without any trailing padding.

METHODS

The object-oriented interface to Digest::Luffa is identical to that described by Digest, except for the following:

new

$luffa = Digest::Luffa->new(256)

The constructor requires the algorithm to be specified. It must be one of: 224, 256, 384, 512.

algorithm

hashsize

Returns the algorithm used by the object.

SEE ALSO

Digest

Task::Digest

http://www.sdl.hitachi.co.jp/crypto/luffa/

http://en.wikipedia.org/wiki/NIST_hash_function_competition

http://www.saphir2.com/sphlib/

REQUESTS AND BUGS

Please report any bugs or feature requests to http://rt.cpan.org/Public/Bug/Report.html?Digest-Luffa. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Digest::Luffa

You can also look for information at:

COPYRIGHT AND LICENSE

Copyright (C) 2010 gray <gray at cpan.org>, all rights reserved.

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

AUTHOR

gray, <gray at cpan.org>