Skip to content
Pure perl6 implementation of SHA-256 and RIPEMD-160 digests
Other
  1. Other 100.0%
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib
t
.travis.yml
CREDITS
LICENSE
META6.json
README.md
TODO

README.md

This is a perl6 module implementing some digest algorithms in pure Perl6 (no parrot or nqp:: code).

The interface is minimal: functions only return Blob and only take a Blob as argument. It's up to the user to turn it into an hex string if they need to.

use Digest::SHA;
say my $sha256 = sha256 "hello".encode: 'utf8-c8';

use Digest::RIPEMD;
say rmd160 "bye".encode: 'utf8-c8';

sub buf_to_hex { [~] $^buf.list».fmt: "%02x" }
say buf_to_hex $sha256;

Currently implemented:

  • Digest
    • md5
  • Digest::SHA :
    • sha256
    • sha1
  • Digest::RIPEMD :
    • rmd160

PERFORMANCE WARNING: currently, execution is much slower than with most other programming languages.

This work is published under the terms of the artistic license, as rakudo is. See LICENSE file.

You can’t perform that action at this time.