NAME
Digest::BMW - Perl interface to the Blue Midnight Wish digest algorithm
SYNOPSIS
# Functional interface
use Digest::BMW qw(bmw_256 bmw_256_hex bmw_256_base64);
$digest = bmw_256($data);
$digest = bmw_256_hex($data);
$digest = bmw_256_base64($data);
# Object-oriented interface
use Digest::BMW;
$ctx = Digest::BMW->new(256);
$ctx->add($data);
$ctx->addfile(*FILE);
$digest = $ctx->digest;
$digest = $ctx->hexdigest;
$digest = $ctx->b64digest;
DESCRIPTION
The Digest::BMW
module provides an interface to the Blue Midnight Wish message digest algorithm. Blue Midgnight Wish 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::BMW
module. None of these functions are exported by default.
bmw_224($data, ...)
bmw_256($data, ...)
bmw_384($data, ...)
bmw_512($data, ...)
Logically joins the arguments into a single string, and returns its BMW digest encoded as a binary string.
bmw_224_hex($data, ...)
bmw_256_hex($data, ...)
bmw_384_hex($data, ...)
bmw_512_hex($data, ...)
Logically joins the arguments into a single string, and returns its BMW digest encoded as a hexadecimal string.
bmw_224_base64($data, ...)
bmw_256_base64($data, ...)
bmw_384_base64($data, ...)
bmw_512_base64($data, ...)
Logically joins the arguments into a single string, and returns its BMW digest encoded as a Base64 string, without any trailing padding.
METHODS
The object-oriented interface to Digest::BMW
is identical to that described by Digest
, except for the following:
new
$bmw = Digest::BMW->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
http://www.q2s.ntnu.no/sha3_nist_competition/
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-BMW. 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::BMW
You can also look for information at:
GitHub Source Repository
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
RT: CPAN's request tracker
Search CPAN
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>