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


NAME

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


SYNOPSIS

    # Functional interface
    use Digest::Hamsi qw(hamsi_256 hamsi_256_hex hamsi_256_base64);
    $digest = hamsi_256($data);
    $digest = hamsi_256_hex($data);
    $digest = hamsi_256_base64($data);
    # Object-oriented interface
    use Digest::Hamsi;
    $ctx = Digest::Hamsi->new(256);
    $ctx->add($data);
    $ctx->addfile(*FILE);
    $digest = $ctx->digest;
    $digest = $ctx->hexdigest;
    $digest = $ctx->b64digest;


DESCRIPTION

The Digest::Hamsi module provides an interface to the Hamsi message digest algorithm. Hamsi was a candidate in the NIST SHA-3 competition but did progress beyond round 2.

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


FUNCTIONS

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

hamsi_224($data, ...)

hamsi_256($data, ...)

hamsi_384($data, ...)

hamsi_512($data, ...)

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

hamsi_224_hex($data, ...)

hamsi_256_hex($data, ...)

hamsi_384_hex($data, ...)

hamsi_512_hex($data, ...)

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

hamsi_224_base64($data, ...)

hamsi_256_base64($data, ...)

hamsi_384_base64($data, ...)

hamsi_512_base64($data, ...)

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


METHODS

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

new

    $hamsi = Digest::Hamsi->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

the Task::Digest manpage

http://homes.esat.kuleuven.be/~okucuk/hamsi/

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. 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::Hamsi

You can also look for information at:


COPYRIGHT AND LICENSE

Copyright (C) 2010-2011 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>

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