This is the sha3 Reference Manual, version 1.1.2, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 15 07:41:12 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
sha3
Secure Hash Algorithm 3 (Keccak) Implementation
Pierre R. Mai <pmai@pmsf.de>
Pierre R. Mai <pmai@pmsf.de>
MIT/X11
1.1.2
sb-rotate-byte
(system).
pkgdef.lisp
(file).
common.lisp
(file).
keccak-64bit.lisp
(file).
sha3.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
sha3/common.lisp
pkgdef.lisp
(file).
sha3
(system).
*keccak-f-rotate-offsets*
(special variable).
*keccak-f-round-constants*
(special variable).
*optimize-declaration*
(special variable).
+keccak-1600-lane-byte-width+
(constant).
+keccak-1600-lane-width+
(constant).
+keccak-state-columns+
(constant).
+keccak-state-lanes+
(constant).
+keccak-state-rows+
(constant).
dotimes-unrolled
(macro).
get-rotate-offset
(macro).
keccak-1600-lane
(type).
pad-message-to-width
(function).
trivial-macroexpand-all
(function).
sha3/keccak-64bit.lisp
pkgdef.lisp
(file).
common.lisp
(file).
sha3
(system).
keccak-1600-state
(type).
keccak-f
(function).
keccak-f-rot
(function).
keccak-f-round-constant
(function).
keccak-state-extract-output
(function).
keccak-state-merge-input
(function).
make-keccak-1600-state
(function).
with-state-accessors
(macro).
with-temp-rows
(macro).
with-temp-state
(macro).
sha3/sha3.lisp
pkgdef.lisp
(file).
common.lisp
(file).
keccak-64bit.lisp
(file).
sha3
(system).
sha3-copy
(function).
sha3-digest-file
(function).
sha3-digest-stream
(function).
sha3-digest-vector
(function).
sha3-final
(function).
sha3-init
(function).
sha3-state
(structure).
sha3-state-p
(function).
sha3-update
(function).
+buffer-size+
(constant).
buffer-index
(type).
copy-sha3-state
(function).
make-sha3-state
(function).
sha3-state-bit-rate
(reader).
sha3-state-buffer
(reader).
sha3-state-buffer-index
(reader).
(setf sha3-state-buffer-index)
(writer).
sha3-state-finalized-p
(reader).
(setf sha3-state-finalized-p)
(writer).
sha3-state-state
(reader).
Packages are listed by definition order.
sha3
common-lisp
.
sha3-copy
(function).
sha3-digest-file
(function).
sha3-digest-stream
(function).
sha3-digest-vector
(function).
sha3-final
(function).
sha3-init
(function).
sha3-state
(structure).
sha3-state-p
(function).
sha3-update
(function).
*keccak-f-rotate-offsets*
(special variable).
*keccak-f-round-constants*
(special variable).
*optimize-declaration*
(special variable).
+buffer-size+
(constant).
+keccak-1600-lane-byte-width+
(constant).
+keccak-1600-lane-width+
(constant).
+keccak-state-columns+
(constant).
+keccak-state-lanes+
(constant).
+keccak-state-rows+
(constant).
buffer-index
(type).
copy-sha3-state
(function).
dotimes-unrolled
(macro).
get-rotate-offset
(macro).
keccak-1600-lane
(type).
keccak-1600-state
(type).
keccak-f
(function).
keccak-f-rot
(function).
keccak-f-round-constant
(function).
keccak-state-extract-output
(function).
keccak-state-merge-input
(function).
make-keccak-1600-state
(function).
make-sha3-state
(function).
pad-message-to-width
(function).
sha3-state-bit-rate
(reader).
sha3-state-buffer
(reader).
sha3-state-buffer-index
(reader).
(setf sha3-state-buffer-index)
(writer).
sha3-state-finalized-p
(reader).
(setf sha3-state-finalized-p)
(writer).
sha3-state-state
(reader).
trivial-macroexpand-all
(function).
with-state-accessors
(macro).
with-temp-rows
(macro).
with-temp-state
(macro).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Return an independent copy of the SHA-3 state ‘state’.
Calculate an SHA-3 message-digest of the file specified by ‘pathname’. The bit length of the message digest produced is controlled by ‘output-bit-length’, which can take on the values 224, 256, 288, 384 and 512, which is the default value. Using the optional ‘raw-keccak-p’ keyword argument the SHA-3 mandated 01 suffix that is appended to the actual message prior to padding can be elided to yield message digests that match the original Keccak submission instead of the actual SHA-3 standard. Use this option only for compatibility with historical implementations.
Calculate an SHA-3 message-digest of data read from ‘stream’, which should be a stream with element type (unsigned-byte 8). The bit length of the message digest produced is controlled by ‘output-bit-length’, which can take on the values 224, 256, 288, 384 and 512, which is the default value. Using the optional ‘raw-keccak-p’ keyword argument the SHA-3 mandated 01 suffix that is appended to the actual message prior to padding can be elided to yield message digests that match the original Keccak submission instead of the actual SHA-3 standard. Use this option only for compatibility with historical implementations.
Calculate an SHA-3 message-digest of data in ‘vector’, which should be a 1d simple-array with element type (unsigned-byte 8), bounded by ‘start’ and ‘end’. The bit length of the message digest produced is controlled by ‘output-bit-length’, which can take on the values 224, 256, 288, 384 and 512, which is the default value. Using the optional ‘raw-keccak-p’ keyword argument the SHA-3 mandated 01 suffix that is appended to the actual message prior to padding can be elided to yield message digests that match the original Keccak submission instead of the actual SHA-3 standard. Use this option only for compatibility with historical implementations.
If the given SHA-3 state ‘state’ has not already been finalized, finalize it by processing any remaining input in its buffer, with the specified suffix of 01 and suitable padding as specified by the SHA-3 standard (the specified SHA-3 suffix can be elided with the optional keyword argument ‘raw-keccak-p’ to generate digests as the initial Keccak submission would have generated). Returns the message digest as a simple-array of (unsigned-byte 8). The length of the returned digest is determined either by the output bit length or bit rate specified on state creation, or for the special case of default parameters being used, by the optional keyword argument ‘output-bit-length’. If the state has previously been finalized, the function will return the digest again.
Create and return a new SHA-3 state. If ‘output-bit-length’ is specified then the state will run at the bit rate specified for the given output bit length. If ‘output-bit-length’ is unspecified, ‘bit-rate’ can be specified to select a suitable bit rate. If both are left unspecified then a default bit rate of 1024 bits is selected, which is suitable for arbitrary output bit lengths of up to 288 bits.
Update the given SHA-3 state ‘state’ from ‘vector’, which must be a simple-array with element-type (unsigned-byte 8), bounded by ‘start’ and ‘end’, which must be numeric bounding-indices.
sha3
.
structure-object
.
sha3::keccak-1600-state
(sha3::make-keccak-1600-state)
This slot is read-only.
(integer 0 1600)
1024
This slot is read-only.
(simple-array (unsigned-byte 8) (200))
(make-array 200 :element-type (quote (unsigned-byte 8)))
This slot is read-only.
(integer 0 199)
0
Size of internal buffer to use for ‘sha3-digest-stream’ and ‘sha3-digest-file’ operations.
Global optimize declaration used for performance critical functions. This can be changed prior to compiling the package for debugging/testing purposes.
sha3
.
Unroll the loop body at compile-time.
sha3
.
Bind the contents of the state(s) array(s) to local variables, and save the content on normal form exit.
sha3
.
Bind local variables for each temporary row.
sha3
.
Bind local variables for each temporary state.
sha3
.
Destructively pad the given message to the given bit-width according to the Keccak 10*1 padding rules, optionally appending the FIPS 202/SHA-3 mandated 01 suffix first, and return the padded message.
sha3
.
sha3
.
sha3
.
Trivial and very restricted code-walker used in partial evaluation macros. Only supports atoms and function forms, no special forms.
sha3
.
Jump to: | (
C D F G K M P S T W |
---|
Jump to: | (
C D F G K M P S T W |
---|
Jump to: | *
+
B C F S |
---|
Jump to: | *
+
B C F S |
---|
Jump to: | B C F K P S T |
---|
Jump to: | B C F K P S T |
---|