RISC-V ISA Explorer · Cryptography (Zk*)
Zk: Scalar Crypto Base
Ratified 2022-02 · version 1.0.1
Shorthand bundle for the NIST scalar crypto suite, the entropy source CSR, and timing-safety guarantees.
Typical use: Selecting the standard scalar crypto bundle
Open Zk in the explorerDependencies
Requires
Members
Instructions (51)
| Mnemonic | Name | Encoding | Match | Mask |
|---|---|---|---|---|
AES32DSI | AES final round decryption instruction for RV32 | --10101----------000-----0110011 | 0x2a000033 | 0x3e00707f |
AES32DSMI | AES middle round decryption instruction for RV32 | --10111----------000-----0110011 | 0x2e000033 | 0x3e00707f |
AES32ESI | --10001----------000-----0110011 | 0x22000033 | 0x3e00707f | |
AES32ESMI | --10011----------000-----0110011 | 0x26000033 | 0x3e00707f | |
AES64DS | AES decrypt final round | 0011101----------000-----0110011 | 0x3a000033 | 0xfe00707f |
AES64DSM | AES decrypt middle round | 0011111----------000-----0110011 | 0x3e000033 | 0xfe00707f |
AES64ES | AES encrypt final round | 0011001----------000-----0110011 | 0x32000033 | 0xfe00707f |
AES64ESM | AES encrypt middle round | 0011011----------000-----0110011 | 0x36000033 | 0xfe00707f |
AES64IM | AES Decrypt KeySchedule MixColumns | 001100000000-----001-----0010011 | 0x30001013 | 0xfff0707f |
AES64KS1I | AES Key Schedule Instruction 1 | 00110001---------001-----0010011 | 0x31001013 | 0xff00707f |
AES64KS2 | AES Key Schedule Instruction 2 | 0111111----------000-----0110011 | 0x7e000033 | 0xfe00707f |
ANDN | AND with inverted operand | 0100000----------111-----0110011 | 0x40007033 | 0xfe00707f |
BREV8 | Reverse bits in bytes | 011010000111-----101-----0010011 | 0x68705013 | 0xfff0707f |
CLMUL | Carry-less multiply (low-part) | 0000101----------001-----0110011 | 0xa001033 | 0xfe00707f |
CLMULH | Carry-less multiply (high-part) | 0000101----------011-----0110011 | 0xa003033 | 0xfe00707f |
CSRRAND | 00000001010100000010-----1110011 | 0x1502073 | 0xfffff07f | |
CSRRAND64 | 00000001010100000010-----1110011 | 0x1502073 | 0xfffff07f | |
ORN | OR with inverted operand | 0100000----------110-----0110011 | 0x40006033 | 0xfe00707f |
PACK | 0000100----------100-----0110011 | 0x8004033 | 0xfe00707f | |
PACKH | 0000100----------111-----0110011 | 0x8007033 | 0xfe00707f | |
PACKW | 0000100----------100-----0111011 | 0x800403b | 0xfe00707f | |
REV8.RV32 | 011010011000-----101-----0010011 | 0x69805013 | 0xfff0707f | |
ROL | Rotate left (Register) | 0110000----------001-----0110011 | 0x60001033 | 0xfe00707f |
ROLW | Rotate left word (Register) | 0110000----------001-----0111011 | 0x6000103b | 0xfe00707f |
ROR | Rotate right (Register) | 0110000----------101-----0110011 | 0x60005033 | 0xfe00707f |
RORI | Rotate right (Immediate) | 011000-----------101-----0010011 | 0x60005013 | 0xfc00707f |
RORIW | Rotate right word (Immediate) | 0110000----------101-----0011011 | 0x6000501b | 0xfe00707f |
RORW | Rotate right word (Register) | 0110000----------101-----0111011 | 0x6000503b | 0xfe00707f |
SHA256SIG0 | 000100000010-----001-----0010011 | 0x10201013 | 0xfff0707f | |
SHA256SIG1 | 000100000011-----001-----0010011 | 0x10301013 | 0xfff0707f | |
SHA256SUM0 | 000100000000-----001-----0010011 | 0x10001013 | 0xfff0707f | |
SHA256SUM1 | 000100000001-----001-----0010011 | 0x10101013 | 0xfff0707f | |
SHA512SIG0 | 000100000110-----001-----0010011 | 0x10601013 | 0xfff0707f | |
SHA512SIG0H | 0101110----------000-----0110011 | 0x5c000033 | 0xfe00707f | |
SHA512SIG0L | 0101010----------000-----0110011 | 0x54000033 | 0xfe00707f | |
SHA512SIG1 | 000100000111-----001-----0010011 | 0x10701013 | 0xfff0707f | |
SHA512SIG1H | 0101111----------000-----0110011 | 0x5e000033 | 0xfe00707f | |
SHA512SIG1L | 0101011----------000-----0110011 | 0x56000033 | 0xfe00707f | |
SHA512SUM0 | 000100000100-----001-----0010011 | 0x10401013 | 0xfff0707f | |
SHA512SUM0R | 0101000----------000-----0110011 | 0x50000033 | 0xfe00707f | |
SHA512SUM1 | 000100000101-----001-----0010011 | 0x10501013 | 0xfff0707f | |
SHA512SUM1R | 0101001----------000-----0110011 | 0x52000033 | 0xfe00707f | |
SM3P0 | 000100001000-----001-----0010011 | 0x10801013 | 0xfff0707f | |
SM3P1 | 000100001001-----001-----0010011 | 0x10901013 | 0xfff0707f | |
SM4ED | --11000----------000-----0110011 | 0x30000033 | 0x3e00707f | |
SM4KS | --11010----------000-----0110011 | 0x34000033 | 0x3e00707f | |
UNZIP | Bit deinterleave | 000010001111-----101-----0010011 | 0x08f05013 | 0xfff0707f |
XNOR | Exclusive NOR | 0100000----------100-----0110011 | 0x40004033 | 0xfe00707f |
XPERM4 | Crossbar permutation (nibbles) | 0010100----------010-----0110011 | 0x28002033 | 0xfe00707f |
XPERM8 | Crossbar permutation (bytes) | 0010100----------100-----0110011 | 0x28004033 | 0xfe00707f |
ZIP | Bit interleave | 000010001111-----001-----0010011 | 0x08f01013 | 0xfff0707f |