ironclad

API Reference

ironclad

A cryptographic toolkit written in pure Common Lisp

IRONCLAD

  • Function BYTE-ARRAY-TO-HEX-STRING (vector &key (start 0) end (element-type 'base-char))
    Return a string containing the hexadecimal representation of the subsequence of VECTOR between START and END. ELEMENT-TYPE controls the element-type of the returned string.
  • Function HEX-STRING-TO-BYTE-ARRAY (string &key (start 0) (end nil))
    Parses a substring of STRING delimited by START and END of hexadecimal digits into a byte array.
  • Function ASCII-STRING-TO-BYTE-ARRAY (string &key (start 0) end)
    Convert STRING to a (VECTOR (UNSIGNED-BYTE 8)). It is an error if STRING contains any character whose CHAR-CODE is greater than 255.
  • Class AES  (CIPHER, 16-BYTE-BLOCK-MIXIN)
    ENCRYPTION-ROUND-KEYS   Accessor: ENCRYPTION-ROUND-KEYS
    DECRYPTION-ROUND-KEYS   Accessor: DECRYPTION-ROUND-KEYS
    N-ROUNDS   Accessor: N-ROUNDS
  • Class ARCFOUR  (STREAM-CIPHER)
    X   Accessor: ARCFOUR-X
    Y   Accessor: ARCFOUR-Y
    M   Accessor: ARCFOUR-SBOX
  • Class ARIA  (CIPHER, 16-BYTE-BLOCK-MIXIN)
    ROUNDS   Accessor: ROUNDS
    ENCRYPTION-ROUND-KEYS   Accessor: ENCRYPTION-ROUND-KEYS
    DECRYPTION-ROUND-KEYS   Accessor: DECRYPTION-ROUND-KEYS
  • Class BLOWFISH  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    P-ARRAY   Accessor: P-ARRAY
    S-BOXES   Accessor: S-BOXES
  • Class CAMELLIA  (CIPHER, 16-BYTE-BLOCK-MIXIN)
    ROUND-KEYS   Accessor: ROUND-KEYS
    GRAND-ROUNDS   Accessor: GRAND-ROUNDS
  • Class CAST5  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    MASK-VECTOR   Accessor: MASK-VECTOR
    ROTATE-VECTOR   Accessor: ROTATE-VECTOR
    N-ROUNDS   Accessor: N-ROUNDS
  • Class CHACHA  (STREAM-CIPHER)
    STATE   Reader: CHACHA-STATE
    KEYSTREAM-BUFFER   Reader: CHACHA-KEYSTREAM-BUFFER
    KEYSTREAM-BUFFER-REMAINING   Accessor: CHACHA-KEYSTREAM-BUFFER-REMAINING
    CORE-FUNCTION   Reader: CHACHA-CORE-FUNCTION
  • Class CHACHA/12  (CHACHA)
    No slots.
  • Class CHACHA/8  (CHACHA)
    No slots.
  • Function ENCRYPT (cipher plaintext ciphertext &key (plaintext-start 0) plaintext-end (ciphertext-start 0) handle-final-block)
    Encrypt the data in PLAINTEXT between PLAINTEXT-START and PLAINTEXT-END according to CIPHER. Places the encrypted data in CIPHERTEXT, beginning at CIPHERTEXT-START. Less data than (- PLAINTEXT-END PLAINTEXT-START) may be encrypted, depending on the alignment constraints of CIPHER and the amount of space available in CIPHERTEXT.
  • Function DECRYPT (cipher ciphertext plaintext &key (ciphertext-start 0) ciphertext-end (plaintext-start 0) handle-final-block)
    Decrypt the data in CIPHERTEXT between CIPHERTEXT-START and CIPHERTEXT-END according to CIPHER. Places the decrypted data in PLAINTEXT, beginning at PLAINTEXT-START. Less data than (- CIPHERTEXT-END CIPHERTEXT-START) may be encrypted, depending on the alignment constraints of CIPHER and the amount of space available in PLAINTEXT.
  • Function ENCRYPT-IN-PLACE (cipher text &key (start 0) end)
  • Function DECRYPT-IN-PLACE (cipher text &key (start 0) end)
  • Generic-Function KEY-LENGTHS (cipher)
    Return a list of possible lengths of a key for CIPHER. CIPHER may either be a cipher name as accepted by MAKE-CIPHER or a cipher object as returned by MAKE-CIPHER. NIL is returned if CIPHER does not name a known cipher or is not a cipher object.
  • Method KEY-LENGTHS (cipher)
  • Method KEY-LENGTHS ((cipher cipher))
  • Generic-Function BLOCK-LENGTH (cipher)
    Return the number of bytes in an encryption or decryption block for CIPHER. CIPHER may either be a cipher name as accepted by MAKE-CIPHER or a cipher object as returned by MAKE-CIPHER. NIL is returned if CIPHER does not name a known cipher or is not a cipher object.
  • Method BLOCK-LENGTH ((cipher symbol))
  • Method BLOCK-LENGTH ((cipher cipher))
  • Function LIST-ALL-CIPHERS
  • Function CIPHER-SUPPORTED-P (name)
    Return T if the cipher NAME is supported as an argument to MAKE-CIPHER.
  • Class DES  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    ENCRYPTION-KEYS   Accessor: ENCRYPTION-KEYS
    DECRYPTION-KEYS   Accessor: DECRYPTION-KEYS
  • Class 3DES  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    ENCRYPTION-KEYS-1   Accessor: ENCRYPTION-KEYS-1
    DECRYPTION-KEYS-1   Accessor: DECRYPTION-KEYS-1
    ENCRYPTION-KEYS-2   Accessor: ENCRYPTION-KEYS-2
    DECRYPTION-KEYS-2   Accessor: DECRYPTION-KEYS-2
    ENCRYPTION-KEYS-3   Accessor: ENCRYPTION-KEYS-3
    DECRYPTION-KEYS-3   Accessor: DECRYPTION-KEYS-3
  • Class IDEA  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    ENCRYPTION-KEYS   Accessor: ENCRYPTION-KEYS
    DECRYPTION-KEYS   Accessor: DECRYPTION-KEYS
  • Function KEYSTREAM-POSITION (cipher &optional position)
    Return or change the current POSITION within the key stream of a CIPHER.
  • Function MAKE-CIPHER (name &key key mode initialization-vector padding tweak)
    Return a cipher object using algorithm NAME with KEY in the specified MODE. If MODE requires an initialization vector, it must be provided as INITIALIZATION-VECTOR; otherwise, the INITIALIZATION-VECTOR argument is ignored. If the cipher can can use a tweak, it can be provided with the TWEAK argument.
  • Class MISTY1  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    ROUND-KEYS   Accessor: ROUND-KEYS
  • Function MODE-SUPPORTED-P (name)
  • Function LIST-ALL-MODES
  • Method ENCRYPT-MESSAGE (cipher msg &key (start 0) (end (length msg)))
  • Class RC2  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    ROUND-KEYS   Accessor: ROUND-KEYS
  • Class RC5  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    N-ROUNDS   Reader: N-ROUNDS
    ROUND-KEYS   Accessor: ROUND-KEYS
  • Class RC6  (CIPHER, 16-BYTE-BLOCK-MIXIN)
    N-ROUNDS   Reader: N-ROUNDS
    ROUND-KEYS   Accessor: ROUND-KEYS
  • Class SALSA20  (STREAM-CIPHER)
    STATE   Reader: SALSA20-STATE
    KEYSTREAM-BUFFER   Reader: SALSA20-KEYSTREAM-BUFFER
    KEYSTREAM-BUFFER-REMAINING   Accessor: SALSA20-KEYSTREAM-BUFFER-REMAINING
    CORE-FUNCTION   Reader: SALSA20-CORE-FUNCTION
  • Class SALSA20/12  (SALSA20)
    No slots.
  • Class SALSA20/8  (SALSA20)
    No slots.
  • Class SEED  (CIPHER, 16-BYTE-BLOCK-MIXIN)
    ROUND-KEYS   Accessor: ROUND-KEYS
  • Class SERPENT  (CIPHER, 16-BYTE-BLOCK-MIXIN)
    SUBKEYS   Accessor: SERPENT-SUBKEYS
  • Class SOSEMANUK  (STREAM-CIPHER)
    STATE   Accessor: SOSEMANUK-STATE
    STATE-R   Accessor: SOSEMANUK-STATE-R
    KEYSTREAM-BUFFER   Accessor: SOSEMANUK-KEYSTREAM-BUFFER
    KEYSTREAM-BUFFER-REMAINING   Accessor: SOSEMANUK-KEYSTREAM-BUFFER-REMAINING
    SUBKEYS   Accessor: SOSEMANUK-SUBKEYS
  • Class SQUARE  (CIPHER, 16-BYTE-BLOCK-MIXIN)
    ENCRYPTION-ROUND-KEYS   Accessor: ENCRYPTION-ROUND-KEYS
    DECRYPTION-ROUND-KEYS   Accessor: DECRYPTION-ROUND-KEYS
    N-ROUNDS   Reader: N-ROUNDS
  • Class TEA  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    KEY   Accessor: KEY
  • Class THREEFISH256  (CIPHER, 32-BYTE-BLOCK-MIXIN)
    KEY   Accessor: THREEFISH-KEY
    TWEAK   Accessor: THREEFISH-TWEAK
  • Class THREEFISH512  (CIPHER, 64-BYTE-BLOCK-MIXIN)
    KEY   Accessor: THREEFISH-KEY
    TWEAK   Accessor: THREEFISH-TWEAK
  • Class THREEFISH1024  (CIPHER, 128-BYTE-BLOCK-MIXIN)
    KEY   Accessor: THREEFISH-KEY
    TWEAK   Accessor: THREEFISH-TWEAK
  • Class TWOFISH  (CIPHER, 16-BYTE-BLOCK-MIXIN)
    ROUND-KEYS   Accessor: ROUND-KEYS
    S-BOXES   Accessor: S-BOXES
  • Class XCHACHA  (CHACHA)
    No slots.
  • Class XCHACHA/12  (XCHACHA)
    No slots.
  • Class XCHACHA/8  (XCHACHA)
    No slots.
  • Class XOR  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    KEY   Accessor: XOR-KEY
    KEY-INDEX   Accessor: XOR-KEY-INDEX
  • Class XSALSA20  (SALSA20)
    No slots.
  • Class XSALSA20/12  (XSALSA20)
    No slots.
  • Class XSALSA20/8  (XSALSA20)
    No slots.
  • Class XTEA  (CIPHER, 8-BYTE-BLOCK-MIXIN)
    KEY   Accessor: KEY
  • Struct ADLER32
    S1
    S2
  • Method COPY-DIGEST ((state adler32) &optional copy)
  • Method UPDATE-DIGEST ((state adler32) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state adler32) &key digest (digest-start 0))
  • Struct BLAKE2
    STATE
    OFFSET
    BUFFER
    BUFFER-INDEX
  • Struct BLAKE2/384
    No slots.
  • Struct BLAKE2/256
    No slots.
  • Struct BLAKE2/160
    No slots.
  • Method COPY-DIGEST ((state blake2) &optional copy)
  • Method UPDATE-DIGEST ((state blake2) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state blake2) &key digest (digest-start 0))
  • Struct BLAKE2S
    STATE
    OFFSET
    BUFFER
    BUFFER-INDEX
  • Struct BLAKE2S/224
    No slots.
  • Struct BLAKE2S/160
    No slots.
  • Struct BLAKE2S/128
    No slots.
  • Method COPY-DIGEST ((state blake2s) &optional copy)
  • Method UPDATE-DIGEST ((state blake2s) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state blake2s) &key digest (digest-start 0))
  • Struct CRC24
    CRC
  • Method COPY-DIGEST ((state crc24) &optional copy)
  • Method UPDATE-DIGEST ((state crc24) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state crc24) &key digest (digest-start 0))
  • Struct CRC32
    CRC
  • Method COPY-DIGEST ((state crc32) &optional copy)
  • Method UPDATE-DIGEST ((state crc32) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state crc32) &key digest (digest-start 0))
  • Generic-Function DIGEST-FILE (digest-spec pathname &rest args &key buffer start end digest digest-start)
    Return the digest of the contents of the file named by PATHNAME using the algorithm DIGEST-NAME. If DIGEST is provided, the digest will be placed into DIGEST starting at DIGEST-START. DIGEST must be a (SIMPLE-ARRAY (UNSIGNED-BYTE 8) (*)). An error will be signaled if there is insufficient room in DIGEST. If BUFFER is provided, the portion of BUFFER between START and END will be used to hold data read from the stream.
  • Method DIGEST-FILE ((digest-name cons) pathname &rest kwargs)
  • Method DIGEST-FILE ((digest-name symbol) pathname &rest kwargs)
  • Method DIGEST-FILE (state pathname &key buffer (start 0) end digest (digest-start 0))
  • Generic-Function DIGEST-STREAM (digest-spec stream &rest args &key buffer start end digest digest-start)
    Return the digest of the contents of STREAM using the algorithm DIGEST-NAME. STREAM-ELEMENT-TYPE of STREAM should be (UNSIGNED-BYTE 8). If DIGEST is provided, the digest will be placed into DIGEST starting at DIGEST-START. DIGEST must be a (SIMPLE-ARRAY (UNSIGNED-BYTE 8) (*)). An error will be signaled if there is insufficient room in DIGEST. If BUFFER is provided, the portion of BUFFER between START and END will be used to hold data read from the stream.
  • Method DIGEST-STREAM ((digest-name cons) stream &rest kwargs)
  • Method DIGEST-STREAM ((digest-name symbol) stream &rest kwargs)
  • Method DIGEST-STREAM (state stream &key buffer (start 0) end digest (digest-start 0))
  • Generic-Function DIGEST-SEQUENCE (digest-spec sequence &rest args &key start end digest digest-start)
    Return the digest of the subsequence of SEQUENCE specified by START and END using the algorithm DIGEST-NAME. For CMUCL and SBCL, SEQUENCE can be any vector with an element-type of (UNSIGNED-BYTE 8); for other implementations, SEQUENCE must be a (SIMPLE-ARRAY (UNSIGNED-BYTE 8) (*)). If DIGEST is provided, the digest will be placed into DIGEST starting at DIGEST-START. DIGEST must be a (SIMPLE-ARRAY (UNSIGNED-BYTE 8) (*)). An error will be signaled if there is insufficient room in DIGEST.
  • Method DIGEST-SEQUENCE ((digest-name symbol) sequence &rest kwargs)
  • Method DIGEST-SEQUENCE (state sequence &key (start 0) end digest (digest-start 0))
  • Function MAKE-DIGEST (digest-name &rest keys &key &allow-other-keys)
    Return a digest object which uses the algorithm DIGEST-NAME.
  • Generic-Function COPY-DIGEST (digester &optional copy)
    Return a copy of DIGESTER. If COPY is not NIL, it should be of the same type as DIGESTER and will receive the copied data, rather than creating a new object. The copy is a deep copy, not a shallow copy as might be returned by COPY-STRUCTURE.
  • Generic-Function UPDATE-DIGEST (digester thing &key &allow-other-keys)
    Update the internal state of DIGESTER with THING. The exact method is determined by the type of THING.
  • Generic-Function PRODUCE-DIGEST (digester &key digest digest-start)
    Return the hash of the data processed by DIGESTER so far. If DIGEST is provided, the hash will be placed into DIGEST starting at DIGEST-START. DIGEST must be a (SIMPLE-ARRAY (UNSIGNED-BYTE 8) (*)). An error will be signaled if there is insufficient room in DIGEST.
  • Function LIST-ALL-DIGESTS
  • Function DIGEST-SUPPORTED-P (name)
    Return T if the digest NAME is a valid digest name.
  • Generic-Function DIGEST-LENGTH (digest)
    Return the number of bytes in a digest generated by DIGEST.
  • Method DIGEST-LENGTH ((digest-name symbol))
  • Method DIGEST-LENGTH (digest-name)
  • Method UPDATE-DIGEST (digester (stream stream) &key buffer (start 0) end &allow-other-keys)
  • Struct GROESTL
    STATE
    BLOCK-COUNTER
    BUFFER
    BUFFER-INDEX
  • Struct GROESTL/384
    No slots.
  • Struct GROESTL/256
    No slots.
  • Struct GROESTL/224
    No slots.
  • Method COPY-DIGEST ((state groestl) &optional copy)
  • Method UPDATE-DIGEST ((state groestl) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state groestl) &key digest (digest-start 0))
  • Struct JH
    STATE
    DATA-LENGTH
    BUFFER
    BUFFER-INDEX
  • Struct JH/384
    No slots.
  • Struct JH/256
    No slots.
  • Struct JH/224
    No slots.
  • Method COPY-DIGEST ((state jh) &optional copy)
  • Method UPDATE-DIGEST ((state jh) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state jh) &key digest (digest-start 0))
  • Struct MD2
    REGS
    CHECKSUM
  • Method COPY-DIGEST ((state md2) &optional copy)
  • Method UPDATE-DIGEST ((state md2) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state md2) &key digest (digest-start 0))
  • Struct MD4
    REGS
    BLOCK
  • Method COPY-DIGEST ((state md4) &optional copy)
  • Method UPDATE-DIGEST ((state md4) (sequence vector) &key (start 0) (end (length sequence)))
    Update the given md4-state from sequence, which is either a simple-string or a simple-array with element-type (unsigned-byte 8), bounded by start and end, which must be numeric bounding-indices.
  • Method PRODUCE-DIGEST ((state md4) &key digest (digest-start 0))
    If the given md4-state has not already been finalized, finalize it, by processing any remaining input in its buffer, with suitable padding and appended bit-length, as specified by the MD4 standard. The resulting MD4 message-digest is returned as an array of sixteen (unsigned-byte 8) values. Calling UPDATE-MD4-STATE after a call to FINALIZE-MD4-STATE results in unspecified behaviour.
  • Struct MD5
    REGS
    BLOCK
  • Method COPY-DIGEST ((state md5) &optional copy)
  • Method UPDATE-DIGEST ((state md5) (sequence vector) &key (start 0) (end (length sequence)))
    Update the given md5-state from sequence, which is either a simple-string or a simple-array with element-type (unsigned-byte 8), bounded by start and end, which must be numeric bounding-indices.
  • Method PRODUCE-DIGEST ((state md5) &key digest (digest-start 0))
    If the given md5-state has not already been finalized, finalize it, by processing any remaining input in its buffer, with suitable padding and appended bit-length, as specified by the MD5 standard. The resulting MD5 message-digest is returned as an array of sixteen (unsigned-byte 8) values. Calling UPDATE-MD5-STATE after a call to FINALIZE-MD5-STATE results in unspecified behaviour.
  • Struct RIPEMD-128
    REGS
    BLOCK
  • Method COPY-DIGEST ((state ripemd-128) &optional copy)
  • Method UPDATE-DIGEST ((state ripemd-128) (sequence vector) &key (start 0) (end (length sequence)))
    Update the given ripemd-128-state from sequence, which is either a simple-string or a simple-array with element-type (unsigned-byte 8), bounded by start and end, which must be numeric bounding-indices.
  • Method PRODUCE-DIGEST ((state ripemd-128) &key digest (digest-start 0))
    If the given ripemd-128-state has not already been finalized, finalize it, by processing any remaining input in its buffer, with suitable padding and appended bit-length, as specified by the RIPEMD-128 standard. The resulting RIPEMD-128 message-digest is returned as an array of twenty (unsigned-byte 8) values. Calling UPDATE-RIPEMD-128-STATE after a call to FINALIZE-RIPEMD-128-STATE results in unspecified behaviour.
  • Struct RIPEMD-160
    REGS
    BLOCK
  • Method COPY-DIGEST ((state ripemd-160) &optional copy)
  • Method UPDATE-DIGEST ((state ripemd-160) (sequence vector) &key (start 0) (end (length sequence)))
    Update the given ripemd-160-state from sequence, which is either a simple-string or a simple-array with element-type (unsigned-byte 8), bounded by start and end, which must be numeric bounding-indices.
  • Method PRODUCE-DIGEST ((state ripemd-160) &key digest (digest-start 0))
    If the given ripemd-160-state has not already been finalized, finalize it, by processing any remaining input in its buffer, with suitable padding and appended bit-length, as specified by the RIPEMD-160 standard. The resulting RIPEMD-160 message-digest is returned as an array of twenty (unsigned-byte 8) values. Calling `update-ripemd-160-state' after a call to `finalize-ripemd-160-state' results in unspecified behaviour.
  • Struct SHA1
    REGS
    BLOCK
  • Method COPY-DIGEST ((state sha1) &optional copy)
  • Method UPDATE-DIGEST ((state sha1) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state sha1) &key digest (digest-start 0))
  • Struct SHA256
    REGS
    BLOCK
  • Struct SHA224
    No slots.
  • Method COPY-DIGEST ((state sha256) &optional copy)
  • Method UPDATE-DIGEST ((state sha256) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state sha256) &key digest (digest-start 0))
  • Struct SHA3
    STATE
    BIT-RATE
    BUFFER
    BUFFER-INDEX
    OUTPUT-LENGTH
  • Struct SHA3/384
    No slots.
  • Struct SHA3/256
    No slots.
  • Struct SHA3/224
    No slots.
  • Struct SHAKE256
    No slots.
  • Struct SHAKE128
    No slots.
  • Method DIGEST-LENGTH ((state shake256))
  • Method DIGEST-LENGTH ((state shake128))
  • Method COPY-DIGEST ((state sha3) &optional copy)
  • Method UPDATE-DIGEST ((state sha3) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state sha3) &key digest (digest-start 0))
  • Method PRODUCE-DIGEST ((state shake256) &key digest (digest-start 0))
  • Method PRODUCE-DIGEST ((state shake128) &key digest (digest-start 0))
  • Struct SHA512
    REGS
    BLOCK
  • Struct SHA384
    No slots.
  • Method COPY-DIGEST ((state sha512) &optional copy)
  • Method UPDATE-DIGEST ((state sha512) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state sha512) &key digest (digest-start 0))
  • Struct SKEIN256
    VALUE
    TWEAK
    CFG
    BUFFER
    BUFFER-LENGTH
    CIPHER
  • Struct SKEIN256/128
    No slots.
  • Struct SKEIN256/160
    No slots.
  • Struct SKEIN256/224
    No slots.
  • Method COPY-DIGEST ((state skein256) &optional copy)
  • Method UPDATE-DIGEST ((state skein256) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state skein256) &key digest (digest-start 0))
  • Struct SKEIN512
    VALUE
    TWEAK
    CFG
    BUFFER
    BUFFER-LENGTH
    CIPHER
  • Struct SKEIN512/128
    No slots.
  • Struct SKEIN512/160
    No slots.
  • Struct SKEIN512/224
    No slots.
  • Struct SKEIN512/256
    No slots.
  • Struct SKEIN512/384
    No slots.
  • Method COPY-DIGEST ((state skein512) &optional copy)
  • Method UPDATE-DIGEST ((state skein512) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state skein512) &key digest (digest-start 0))
  • Struct SKEIN1024
    VALUE
    TWEAK
    CFG
    BUFFER
    BUFFER-LENGTH
    CIPHER
  • Struct SKEIN1024/384
    No slots.
  • Struct SKEIN1024/512
    No slots.
  • Method COPY-DIGEST ((state skein1024) &optional copy)
  • Method UPDATE-DIGEST ((state skein1024) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-DIGEST ((state skein1024) &key digest (digest-start 0))
  • Struct TIGER
    REGS
    BLOCK
  • Method COPY-DIGEST ((state tiger) &optional copy)
  • Method UPDATE-DIGEST ((state tiger) (sequence vector) &key (start 0) (end (length sequence)))
    Update the given tiger-state from sequence, which is either a simple-string or a simple-array with element-type (unsigned-byte 8), bounded by start and end, which must be numeric bounding-indices.
  • Method PRODUCE-DIGEST ((state tiger) &key digest (digest-start 0))
    If the given tiger-state has not already been finalized, finalize it, by processing any remaining input in its buffer, with suitable padding and appended bit-length, as specified by the TIGER standard. The resulting TIGER message-digest is returned as an array of twenty-four (unsigned-byte 8) values. Calling UPDATE-TIGER-STATE after a call to FINALIZE-TIGER-STATE results in unspecified behaviour.
  • Struct TREE-HASH
    BLOCK-LENGTH
    STATE
    BLOCK-INDEX
    BRANCH
  • Function MAKE-TIGER-TREE-HASH
  • Method BLOCK-LENGTH ((x tree-hash))
  • Method DIGEST-LENGTH ((x tree-hash))
  • Method COPY-DIGEST ((state tree-hash) &optional copy)
  • Method UPDATE-DIGEST ((state tree-hash) (sequence vector) &key (start 0) (end (length sequence)))
    Update the given tree-hash state from sequence, which is a simple-array with element-type (unsigned-byte 8), bounded by start and end, which must be numeric bounding-indices.
  • Method PRODUCE-DIGEST ((state tree-hash) &key digest (digest-start 0))
  • Struct WHIRLPOOL
    REGS
    BLOCK
  • Method COPY-DIGEST ((state whirlpool) &optional copy)
  • Method UPDATE-DIGEST ((state whirlpool) (sequence vector) &key (start 0) (end (length sequence)))
    Update the given whirlpool state from sequence, which is either a simple-string or a simple-array with element-type (unsigned-byte 8), bounded by start and end, which must be numeric bounding-indices.
  • Method PRODUCE-DIGEST ((state whirlpool) &key digest (digest-start 0))
    If the given whirlpool-state has not already been finalized, finalize it, by processing any remaining input in its buffer, with suitable padding and appended bit-length, as specified by the Whirlpool standard. The resulting whirlpool message-digest is returned as an array of 64 (unsigned-byte 8) values. Calling UPDATE-WHIRLPOOL-STATE after a call to FINALIZE-WHIRLPOOL-STATE results in unspecified behaviour.
  • Method DERIVE-KEY ((kdf argon2i) passphrase salt iteration-count key-length)
  • Generic-Function DERIVE-KEY (kdf passphrase salt iteration-count key-length)
  • Class PBKDF1
    DIGEST   Reader: KDF-DIGEST
  • Class PBKDF2
    DIGEST-NAME   Reader: KDF-DIGEST
  • Class SCRYPT-KDF
    N   Reader: SCRYPT-KDF-N
    R   Reader: SCRYPT-KDF-R
    P   Reader: SCRYPT-KDF-P
  • Class ARGON2I
    BLOCK   Accessor: ARGON2I-BLOCK
    PASS-NUMBER   Accessor: ARGON2I-PASS-NUMBER
    SLICE-NUMBER   Accessor: ARGON2I-SLICE-NUMBER
    NB-BLOCKS   Accessor: ARGON2I-NB-BLOCKS
    BLOCK-COUNT   Accessor: ARGON2I-BLOCK-COUNT
    NB-ITERATIONS   Accessor: ARGON2I-NB-ITERATIONS
    COUNTER   Accessor: ARGON2I-COUNTER
    OFFSET   Accessor: ARGON2I-OFFSET
    ADDITIONAL-KEY   Accessor: ARGON2I-ADDITIONAL-KEY
    ADDITIONAL-DATA   Accessor: ARGON2I-ADDITIONAL-DATA
    WORK-AREA   Accessor: ARGON2I-WORK-AREA
    DIGESTER   Accessor: ARGON2I-DIGESTER
  • Function MAKE-KDF (kind &key digest (n 4096) (r 8) (p 2) (block-count 10000) additional-key additional-data)
    digest is used for pbkdf1 and pbkdf2. N, p, and r are cost factors for scrypt. block-count, additional-key and additional-data are parameters for argon2i
  • Function MAKE-RANDOM-SALT (&optional (size 16))
    Generate a byte vector of SIZE (default 16) random bytes, suitable for use as a password salt.
  • Function PBKDF2-HASH-PASSWORD (password &key (salt (make-random-salt)) (digest 'sha256) (iterations 1000))
    Given a PASSWORD as a byte vector, a SALT as a byte vector (MAKE-RANDOM-SALT is called to generate a random salt if none is provided), a digest function (SHA256 by default), and a number of iterations (1000), returns the PBKDF2-derived hash of the password (byte vector) as the first value, and the SALT (byte vector) as the second value.
  • Function PBKDF2-HASH-PASSWORD-TO-COMBINED-STRING (password &key (salt (make-random-salt)) (digest 'sha256) (iterations 1000))
    Given a PASSWORD byte vector, a SALT as a byte vector (MAKE-RANDOM-SALT is called to generate a random salt if none is provided), a digest function (SHA256 by default), and a number of iterations (1000), returns the salt and PBKDF2-derived hash of the password encoded in a single ASCII string, suitable for use with PBKDF2-CHECK-PASSWORD.
  • Function CONSTANT-TIME-EQUAL (data1 data2)
    Returns T if the elements in DATA1 and DATA2 are identical, NIL otherwise. All the elements of DATA1 and DATA2 are compared to prevent timing attacks.
  • Function PBKDF2-CHECK-PASSWORD (password combined-salt-and-digest)
    Given a PASSWORD byte vector and a combined salt and digest string produced by PBKDF2-HASH-PASSWORD-TO-COMBINED-STRING, checks whether the password is valid.
  • Method DERIVE-KEY ((kdf pbkdf1) passphrase salt iteration-count key-length)
  • Method DERIVE-KEY ((kdf pbkdf2) passphrase salt iteration-count key-length)
  • Method DERIVE-KEY ((kdf scrypt-kdf) passphrase salt iteration-count key-length)
  • Class BLAKE2-MAC
    DIGEST   Accessor: BLAKE2-DIGEST
    DIGEST-LENGTH   Accessor: DIGEST-LENGTH
  • Function MAKE-BLAKE2-MAC (key &key (digest-length 64))
  • Function UPDATE-BLAKE2-MAC (mac sequence &key (start 0) end)
  • Function BLAKE2-MAC-DIGEST (mac)
  • Method UPDATE-MAC ((mac blake2-mac) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-MAC ((mac blake2-mac) &key digest (digest-start 0))
  • Class BLAKE2S-MAC
    DIGEST   Accessor: BLAKE2S-DIGEST
    DIGEST-LENGTH   Accessor: DIGEST-LENGTH
  • Function MAKE-BLAKE2S-MAC (key &key (digest-length 32))
  • Function UPDATE-BLAKE2S-MAC (mac sequence &key (start 0) end)
  • Function BLAKE2S-MAC-DIGEST (mac)
  • Method UPDATE-MAC ((mac blake2s-mac) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-MAC ((mac blake2s-mac) &key digest (digest-start 0))
  • Class CMAC
    CIPHER   Reader: CMAC-CIPHER
    SUBKEY1   Reader: CMAC-SUBKEY1
    SUBKEY2   Reader: CMAC-SUBKEY2
    BUFFER   Reader: CMAC-BUFFER
    BUFFER-INDEX   Accessor: CMAC-BUFFER-INDEX
  • Function MAKE-CMAC (key cipher-name)
  • Function UPDATE-CMAC (cmac sequence &key (start 0) end)
  • Function CMAC-DIGEST (cmac)
  • Method UPDATE-MAC ((mac cmac) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-MAC ((mac cmac) &key digest (digest-start 0))
  • Class HMAC
    INNER-DIGEST   Reader: INNER-DIGEST
    OUTER-DIGEST   Reader: OUTER-DIGEST
  • Function MAKE-HMAC (key digest-name)
  • Function UPDATE-HMAC (hmac sequence &key (start 0) (end (length sequence)))
  • Function HMAC-DIGEST (hmac &key buffer (buffer-start 0))
  • Method UPDATE-MAC ((mac hmac) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-MAC ((mac hmac) &key digest (digest-start 0))
  • Generic-Function UPDATE-MAC (mac thing &key &allow-other-keys)
    Update the internal state of MAC with THING. The exact method is determined by the type of THING.
  • Generic-Function PRODUCE-MAC (mac &key digest digest-start)
    Return the hash of the data processed by MAC so far. If DIGEST is provided, the hash will be placed into DIGEST starting at DIGEST-START. DIGEST must be a (SIMPLE-ARRAY (UNSIGNED-BYTE 8) (*)). An error will be signaled if there is insufficient room in DIGEST.
  • Function LIST-ALL-MACS
  • Function MAC-SUPPORTED-P (name)
    Return T if the mac NAME is a valid mac name.
  • Function MAKE-MAC (mac-name key &rest args)
    Return a MAC object which uses the algorithm MAC-NAME initialized with a KEY.
  • Class POLY1305
    ACCUMULATOR   Accessor: POLY1305-ACCUMULATOR
    R   Accessor: POLY1305-R
    S   Accessor: POLY1305-S
    BUFFER   Accessor: POLY1305-BUFFER
    BUFFER-LENGTH   Accessor: POLY1305-BUFFER-LENGTH
  • Function MAKE-POLY1305 (key)
  • Function UPDATE-POLY1305 (mac data &key (start 0) (end (length data)))
  • Function POLY1305-DIGEST (mac)
  • Method UPDATE-MAC ((mac poly1305) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-MAC ((mac poly1305) &key digest (digest-start 0))
  • Class SKEIN-MAC
    VALUE   Accessor: SKEIN-VALUE
    TWEAK   Accessor: SKEIN-TWEAK
    CFG   Accessor: SKEIN-CFG
    BUFFER   Accessor: SKEIN-BUFFER
    BUFFER-LENGTH   Accessor: SKEIN-BUFFER-LENGTH
    CIPHER   Accessor: SKEIN-CIPHER
    BLOCK-LENGTH   Accessor: BLOCK-LENGTH
    DIGEST-LENGTH   Accessor: DIGEST-LENGTH
  • Function MAKE-SKEIN-MAC (key &key (block-length 64) (digest-length 64))
  • Function UPDATE-SKEIN-MAC (mac sequence &key (start 0) end)
  • Function SKEIN-MAC-DIGEST (mac)
  • Method UPDATE-MAC ((mac skein-mac) (sequence vector) &key (start 0) (end (length sequence)))
  • Method PRODUCE-MAC ((mac skein-mac) &key digest (digest-start 0))
  • Class FORTUNA-PRNG
    A Fortuna random number generator. Contains 32 entropy pools which are used to reseed GENERATOR.
    POOLS
    RESEED-COUNT
    LAST-RESEED
    GENERATOR
  • Function ADD-RANDOM-EVENT (source pool-id event &optional (prng *prng*))
  • Method PRNG-RESEED (seed (prng fortuna-prng))
  • Method MAKE-PRNG ((name (eql :fortuna)) &key seed (cipher :aes))
  • Method MAKE-PRNG ((name (eql 'fortuna)) &key seed (cipher :aes))
  • Class FORTUNA-GENERATOR
    Fortuna generator. KEY is the key used to initialise CIPHER as an instance of CIPHER-NAME (which must be a valid NAME recognised by MAKE-CIPHER).
    KEY
    COUNTER
    DIGEST
    CIPHER
  • Method PRNG-RESEED (seed (generator fortuna-generator))
  • Class OS-PRNG
    SOURCE
  • Method MAKE-PRNG ((name (eql :os)) &key seed)
  • Variable *PRNG*
    nil
    Default pseudo-random-number generator for use by all crypto functions. Defaults to a sensible OS-specific value.
  • Function LIST-ALL-PRNGS
  • Generic-Function MAKE-PRNG (name &key seed)
    Create a new NAME-type random number generator, seeding it from SEED. If SEED is a pathname or namestring, read data from the indicated file; if it is sequence of bytes, use those bytes directly; if it is :RANDOM then read from /dev/random; if it is :URANDOM then read from /dev/urandom; if it is NIL then the generator is not seeded.
  • Method MAKE-PRNG (name &key (seed :random))
  • Function RANDOM-DATA (num-bytes &optional (prng *prng*))
  • Generic-Function PRNG-RESEED (seed prng)
    Reseed PRNG with SEED; SEED must be (PRNG-SEED-LENGTH PRNG) bytes long.
  • Method PRNG-RESEED (seed prng)
  • Method PRNG-RESEED (seed prng)
  • Method PRNG-RESEED (seed prng)
  • Function READ-OS-RANDOM-SEED (source &optional (prng *prng*))
  • Function RANDOM-BITS (num-bits &optional (prng *prng*))
  • Function STRONG-RANDOM (limit &optional (prng *prng*))
    Return a strong random number from 0 to limit-1 inclusive. A drop-in replacement for COMMON-LISP:RANDOM.
  • Function READ-SEED (path &optional (prng *prng*))
    Reseed PRNG from PATH. If PATH doesn't exist, reseed from /dev/random and then write that seed to PATH.
  • Function WRITE-SEED (path &optional (prng *prng*))
  • Method MAKE-PUBLIC-KEY ((kind (eql :curve25519)) &key y &allow-other-keys)
  • Method DESTRUCTURE-PUBLIC-KEY ((public-key curve25519-public-key))
  • Method MAKE-PRIVATE-KEY ((kind (eql :curve25519)) &key x y &allow-other-keys)
  • Method DESTRUCTURE-PRIVATE-KEY ((private-key curve25519-private-key))
  • Method GENERATE-KEY-PAIR ((kind (eql :curve25519)) &key &allow-other-keys)
  • Method DIFFIE-HELLMAN ((private-key curve25519-private-key) (public-key curve25519-public-key))
  • Method MAKE-PUBLIC-KEY ((kind (eql :curve448)) &key y &allow-other-keys)
  • Method DESTRUCTURE-PUBLIC-KEY ((public-key curve448-public-key))
  • Method MAKE-PRIVATE-KEY ((kind (eql :curve448)) &key x y &allow-other-keys)
  • Method DESTRUCTURE-PRIVATE-KEY ((private-key curve448-private-key))
  • Method GENERATE-KEY-PAIR ((kind (eql :curve448)) &key &allow-other-keys)
  • Method DIFFIE-HELLMAN ((private-key curve448-private-key) (public-key curve448-public-key))
  • Function DSA-KEY-P (dsa-key)
  • Function DSA-KEY-Q (dsa-key)
  • Function DSA-KEY-G (dsa-key)
  • Method MAKE-PUBLIC-KEY ((kind (eql :dsa)) &key p q g y &allow-other-keys)
  • Method DESTRUCTURE-PUBLIC-KEY ((public-key dsa-public-key))
  • Method MAKE-PRIVATE-KEY ((kind (eql :dsa)) &key p q g y x &allow-other-keys)
  • Method DESTRUCTURE-PRIVATE-KEY ((private-key dsa-private-key))
  • Method GENERATE-KEY-PAIR ((kind (eql :dsa)) &key num-bits &allow-other-keys)
  • Method MAKE-SIGNATURE ((kind (eql :dsa)) &key r s n-bits &allow-other-keys)
  • Method DESTRUCTURE-SIGNATURE ((kind (eql :dsa)) signature)
  • Method SIGN-MESSAGE ((key dsa-private-key) message &key (start 0) end &allow-other-keys)
  • Method VERIFY-SIGNATURE ((key dsa-public-key) message signature &key (start 0) end &allow-other-keys)
  • Method MAKE-SIGNATURE ((kind (eql :ed25519)) &key r s &allow-other-keys)
  • Method DESTRUCTURE-SIGNATURE ((kind (eql :ed25519)) signature)
  • Method MAKE-PUBLIC-KEY ((kind (eql :ed25519)) &key y &allow-other-keys)
  • Method DESTRUCTURE-PUBLIC-KEY ((public-key ed25519-public-key))
  • Method MAKE-PRIVATE-KEY ((kind (eql :ed25519)) &key x y &allow-other-keys)
  • Method DESTRUCTURE-PRIVATE-KEY ((private-key ed25519-private-key))
  • Method SIGN-MESSAGE ((key ed25519-private-key) message &key (start 0) end &allow-other-keys)
  • Method VERIFY-SIGNATURE ((key ed25519-public-key) message signature &key (start 0) end &allow-other-keys)
  • Method GENERATE-KEY-PAIR ((kind (eql :ed25519)) &key &allow-other-keys)
  • Method MAKE-SIGNATURE ((kind (eql :ed448)) &key r s &allow-other-keys)
  • Method DESTRUCTURE-SIGNATURE ((kind (eql :ed448)) signature)
  • Method MAKE-PUBLIC-KEY ((kind (eql :ed448)) &key y &allow-other-keys)
  • Method DESTRUCTURE-PUBLIC-KEY ((public-key ed448-public-key))
  • Method MAKE-PRIVATE-KEY ((kind (eql :ed448)) &key x y &allow-other-keys)
  • Method DESTRUCTURE-PRIVATE-KEY ((private-key ed448-private-key))
  • Method SIGN-MESSAGE ((key ed448-private-key) message &key (start 0) end &allow-other-keys)
  • Method VERIFY-SIGNATURE ((key ed448-public-key) message signature &key (start 0) end &allow-other-keys)
  • Method GENERATE-KEY-PAIR ((kind (eql :ed448)) &key &allow-other-keys)
  • Function ELGAMAL-KEY-P (elgamal-key)
  • Function ELGAMAL-KEY-G (elgamal-key)
  • Method MAKE-PUBLIC-KEY ((kind (eql :elgamal)) &key p g y &allow-other-keys)
  • Method DESTRUCTURE-PUBLIC-KEY ((public-key elgamal-public-key))
  • Method MAKE-PRIVATE-KEY ((kind (eql :elgamal)) &key p g y x &allow-other-keys)
  • Method DESTRUCTURE-PRIVATE-KEY ((private-key elgamal-private-key))
  • Method GENERATE-KEY-PAIR ((kind (eql :elgamal)) &key num-bits compatible-with-key &allow-other-keys)
  • Method MAKE-MESSAGE ((kind (eql :elgamal)) &key c1 c2 n-bits &allow-other-keys)
  • Method DESTRUCTURE-MESSAGE ((kind (eql :elgamal)) message)
  • Method ENCRYPT-MESSAGE ((key elgamal-public-key) msg &key (start 0) end oaep &allow-other-keys)
  • Method DECRYPT-MESSAGE ((key elgamal-private-key) msg &key (start 0) end n-bits oaep &allow-other-keys)
  • Method MAKE-SIGNATURE ((kind (eql :elgamal)) &key r s n-bits &allow-other-keys)
  • Method DESTRUCTURE-SIGNATURE ((kind (eql :elgamal)) signature)
  • Method SIGN-MESSAGE ((key elgamal-private-key) msg &key (start 0) end &allow-other-keys)
  • Method VERIFY-SIGNATURE ((key elgamal-public-key) msg signature &key (start 0) end &allow-other-keys)
  • Method DIFFIE-HELLMAN ((private-key elgamal-private-key) (public-key elgamal-public-key))
  • Function OAEP-ENCODE (digest-name message num-bytes &optional label)
    Return a NUM-BYTES bytes vector containing the OAEP encoding of the MESSAGE using the DIGEST-NAME digest (and the optional LABEL octet vector).
  • Function OAEP-DECODE (digest-name message &optional label)
    Return an octet vector containing the data that was encoded in the MESSAGE with OAEP using the DIGEST-NAME digest (and the optional LABEL octet vector).
  • Function PSS-ENCODE (digest-name message num-bytes)
  • Function PSS-VERIFY (digest-name message encoded-message)
  • Generic-Function MAKE-PUBLIC-KEY (kind &key &allow-other-keys)
    Return a public key of KIND, initialized according to the specified keyword arguments.
  • Generic-Function DESTRUCTURE-PUBLIC-KEY (public-key)
    Return a plist containing the elements of a PUBLIC-KEY.
  • Generic-Function MAKE-PRIVATE-KEY (kind &key &allow-other-keys)
    Return a private key of KIND, initialized according to the specified keyword arguments.
  • Generic-Function DESTRUCTURE-PRIVATE-KEY (private-key)
    Return a plist containing the elements of a PRIVATE-KEY.
  • Generic-Function GENERATE-KEY-PAIR (kind &key num-bits &allow-other-keys)
    Generate a new key pair. The first returned value is the secret key, the second value is the public key. If KIND is :RSA or :DSA, NUM-BITS must be specified. If /kind/ is :ELGAMAL, NUM-BITS must be specified unless COMPATIBLE-WITH-KEY is specified.
  • Generic-Function MAKE-SIGNATURE (kind &key &allow-other-keys)
    Build the octet vector representing a signature from its elements.
  • Generic-Function DESTRUCTURE-SIGNATURE (kind signature)
    Return a plist containing the elements of a SIGNATURE.
  • Generic-Function SIGN-MESSAGE (key message &key start end &allow-other-keys)
    Produce a key-specific signature of MESSAGE; MESSAGE is a (VECTOR (UNSIGNED-BYTE 8)). START and END bound the extent of the message.
  • Generic-Function VERIFY-SIGNATURE (key message signature &key start end &allow-other-keys)
    Verify that SIGNATURE is the signature of MESSAGE using KEY. START and END bound the extent of the message.
  • Generic-Function MAKE-MESSAGE (kind &key &allow-other-keys)
    Build the octet vector representing a message from its elements.
  • Generic-Function DESTRUCTURE-MESSAGE (kind message)
    Return a plist containing the elements of an encrypted MESSAGE.
  • Generic-Function ENCRYPT-MESSAGE (key message &key start end &allow-other-keys)
    Encrypt MESSAGE with KEY. START and END bound the extent of the message. Returns a fresh octet vector.
  • Generic-Function DECRYPT-MESSAGE (key message &key start end n-bits &allow-other-keys)
    Decrypt MESSAGE with KEY. START and END bound the extent of the message. Returns a fresh octet vector. N-BITS can be used to indicate the expected size of the decrypted message.
  • Generic-Function DIFFIE-HELLMAN (private-key public-key)
    Compute a shared secret using Alice's PRIVATE-KEY and Bob's PUBLIC-KEY
  • Function OCTETS-TO-INTEGER (octet-vec &key (start 0) end (big-endian t) n-bits)
  • Function INTEGER-TO-OCTETS (bignum &key n-bits (big-endian t))
  • Method MAKE-PUBLIC-KEY ((kind (eql :rsa)) &key e n &allow-other-keys)
  • Method DESTRUCTURE-PUBLIC-KEY ((public-key rsa-public-key))
  • Method MAKE-PRIVATE-KEY ((kind (eql :rsa)) &key d n &allow-other-keys)
  • Method DESTRUCTURE-PRIVATE-KEY ((private-key rsa-private-key))
  • Method GENERATE-KEY-PAIR ((kind (eql :rsa)) &key num-bits &allow-other-keys)
  • Method MAKE-MESSAGE ((kind (eql :rsa)) &key m n-bits &allow-other-keys)
  • Method DESTRUCTURE-MESSAGE ((kind (eql :rsa)) message)
  • Method ENCRYPT-MESSAGE ((key rsa-public-key) msg &key (start 0) end oaep &allow-other-keys)
  • Method DECRYPT-MESSAGE ((key rsa-private-key) msg &key (start 0) end n-bits oaep &allow-other-keys)
  • Method MAKE-SIGNATURE ((kind (eql :rsa)) &key s n-bits &allow-other-keys)
  • Method DESTRUCTURE-SIGNATURE ((kind (eql :rsa)) signature)
  • Method SIGN-MESSAGE ((key rsa-private-key) msg &key (start 0) end pss &allow-other-keys)
  • Method VERIFY-SIGNATURE ((key rsa-public-key) msg signature &key (start 0) end pss &allow-other-keys)

Also exports

  • NIBBLES:UB64REF/BE
  • NIBBLES:UB32REF/LE
  • NIBBLES:UB32REF/BE
  • NIBBLES:UB16REF/LE
  • NIBBLES:UB64REF/LE
  • NIBBLES:UB16REF/BE
  • COMMON-LISP:STREAM

ironclad-text

No packages.