class
Crypto::Poly1305::Fast
- Crypto::Poly1305::Fast
- Crypto::Poly1305::MAC
- Reference
- Object
Overview
Poly1305 message authentication code (pure Crystal limb-arithmetic backend).
Uses 3×44-bit limbs in UInt64 with UInt128 intermediate products, following the poly1305-donna algorithm. Avoids heap-allocated BigInt entirely.
Defined in:
crypto/poly1305/fast.crConstructors
-
.chacha20(key : Bytes, nonce : Bytes) : self
Generating the Poly1305 Key Using ChaCha20
-
.chacha20(cipher : ChaCha20::Cipher) : self
Generating the Poly1305 Key Using ChaCha20
-
.new(key : Bytes)
Initializes the Poly1305 context with a given 32-byte key.
-
.new(key : String)
Initializes the Poly1305 context with a given 32-byte hex-encoded key.
Class Method Summary
-
.auth(key : Bytes, message : Bytes) : Bytes
A convenience method to compute a Poly1305 MAC for a single message.
Instance Method Summary
-
#final : Bytes
Finalizes the MAC computation and returns the 16-byte authenticator.
- #key : Bytes
-
#update(msg : Bytes)
Processes a message fragment.
Instance methods inherited from class Crypto::Poly1305::MAC
final : Bytes
final,
key : Bytes
key,
update(msg : Bytes)
update
Constructor Detail
Generating the Poly1305 Key Using ChaCha20
Class Method Detail
def self.auth(key : Bytes, message : Bytes) : Bytes
#
A convenience method to compute a Poly1305 MAC for a single message.