crypto.blake2s #
Copyright (c) 2023 Kim Shrier. All rights reserved. Use of this source code is governed by an MIT license that can be found in the LICENSE file. Package blake2s implements the Blake2s 256, 224, 160, and 128 bit hash algorithms as defined in IETF RFC 7693. Based off: https://datatracker.ietf.org/doc/html/rfc7693 Last updated: November 2015
Constants #
const size128 = 16
size128 is the size, in bytes, of a Blake2s 128 checksum.
const size160 = 20
size160 is the size, in bytes, of a Blake2s 160 checksum.
const size224 = 28
size224 is the size, in bytes, of a Blake2s 224 checksum.
const size256 = 32
size256 is the size, in bytes, of a Blake2s 256 checksum.
const block_size = 64
block_size is the block size, in bytes, of the Blake2s hash functions.
fn new128 #
fn new128() !&Digest
new126 initializes the digest structure for a Blake2s 128 bit hash
fn new160 #
fn new160() !&Digest
new160 initializes the digest structure for a Blake2s 160 bit hash
fn new224 #
fn new224() !&Digest
new224 initializes the digest structure for a Blake2s 224 bit hash
fn new256 #
fn new256() !&Digest
new256 initializes the digest structure for a Blake2s 256 bit hash
fn new_digest #
fn new_digest(hash_size u8, key []u8) !&Digest
new_digest creates an initialized digest structure based on the hash size and whether or not you specify a MAC key.
hash_size - the number of bytes in the generated hash. Legal values are between 1 and 32.
key - key used for generating a prefix MAC. A zero length key is used for just generating a hash. A key of 1 to 32 bytes can be used for generating a prefix MAC.
fn new_pmac128 #
fn new_pmac128(key []u8) !&Digest
new_pmac128 initializes the digest structure for a Blake2s 128 bit prefix MAC
fn new_pmac160 #
fn new_pmac160(key []u8) !&Digest
new_pmac160 initializes the digest structure for a Blake2s 160 bit prefix MAC
fn new_pmac224 #
fn new_pmac224(key []u8) !&Digest
new_pmac224 initializes the digest structure for a Blake2s 224 bit prefix MAC
fn new_pmac256 #
fn new_pmac256(key []u8) !&Digest
new_pmac256 initializes the digest structure for a Blake2s 256 bit prefix MAC
fn pmac128 #
fn pmac128(data []u8, key []u8) []u8
pmac128 returns the Blake2s 128 bit prefix MAC of the data.
fn pmac160 #
fn pmac160(data []u8, key []u8) []u8
pmac160 returns the Blake2s 160 bit prefix MAC of the data.
fn pmac224 #
fn pmac224(data []u8, key []u8) []u8
pmac224 returns the Blake2s 224 bit prefix MAC of the data.
fn pmac256 #
fn pmac256(data []u8, key []u8) []u8
pmac256 returns the Blake2s 256 bit prefix MAC of the data.
fn sum128 #
fn sum128(data []u8) []u8
sum128 returns the Blake2s 128 bit checksum of the data.
fn sum160 #
fn sum160(data []u8) []u8
sum160 returns the Blake2s 160 bit checksum of the data.
fn sum224 #
fn sum224(data []u8) []u8
sum224 returns the Blake2s 224 bit checksum of the data.
fn sum256 #
fn sum256(data []u8) []u8
sum256 returns the Blake2s 256 bit checksum of the data.
fn (Digest) str #
fn (d Digest) str() string
string makes a formatted string representation of a Digest structure
fn (Digest) write #
fn (mut d Digest) write(data []u8) !
write adds bytes to the hash
fn (Digest) checksum #
fn (mut d Digest) checksum() []u8
checksum finalizes the hash and returns the generated bytes.