Message ID | 20230711165917.2629866-15-max.chou@sifive.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add RISC-V vector cryptographic instruction set support | expand |
On Tue, Jul 11, 2023 at 1:01 PM Max Chou <max.chou@sifive.com> wrote: > > Adds sm4_ck constant for use in sm4 cryptography across different targets. > > Signed-off-by: Max Chou <max.chou@sifive.com> > Reviewed-by: Frank Chang <frank.chang@sifive.com> > Signed-off-by: Max Chou <max.chou@sifive.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Alistair > --- > crypto/sm4.c | 10 ++++++++++ > include/crypto/sm4.h | 1 + > 2 files changed, 11 insertions(+) > > diff --git a/crypto/sm4.c b/crypto/sm4.c > index 9f0cd452c78..2987306cf7a 100644 > --- a/crypto/sm4.c > +++ b/crypto/sm4.c > @@ -47,3 +47,13 @@ uint8_t const sm4_sbox[] = { > 0x79, 0xee, 0x5f, 0x3e, 0xd7, 0xcb, 0x39, 0x48, > }; > > +uint32_t const sm4_ck[] = { > + 0x00070e15, 0x1c232a31, 0x383f464d, 0x545b6269, > + 0x70777e85, 0x8c939aa1, 0xa8afb6bd, 0xc4cbd2d9, > + 0xe0e7eef5, 0xfc030a11, 0x181f262d, 0x343b4249, > + 0x50575e65, 0x6c737a81, 0x888f969d, 0xa4abb2b9, > + 0xc0c7ced5, 0xdce3eaf1, 0xf8ff060d, 0x141b2229, > + 0x30373e45, 0x4c535a61, 0x686f767d, 0x848b9299, > + 0xa0a7aeb5, 0xbcc3cad1, 0xd8dfe6ed, 0xf4fb0209, > + 0x10171e25, 0x2c333a41, 0x484f565d, 0x646b7279 > +}; > diff --git a/include/crypto/sm4.h b/include/crypto/sm4.h > index de8245d8a71..382b26d9224 100644 > --- a/include/crypto/sm4.h > +++ b/include/crypto/sm4.h > @@ -2,6 +2,7 @@ > #define QEMU_SM4_H > > extern const uint8_t sm4_sbox[256]; > +extern const uint32_t sm4_ck[32]; > > static inline uint32_t sm4_subword(uint32_t word) > { > -- > 2.34.1 >
diff --git a/crypto/sm4.c b/crypto/sm4.c index 9f0cd452c78..2987306cf7a 100644 --- a/crypto/sm4.c +++ b/crypto/sm4.c @@ -47,3 +47,13 @@ uint8_t const sm4_sbox[] = { 0x79, 0xee, 0x5f, 0x3e, 0xd7, 0xcb, 0x39, 0x48, }; +uint32_t const sm4_ck[] = { + 0x00070e15, 0x1c232a31, 0x383f464d, 0x545b6269, + 0x70777e85, 0x8c939aa1, 0xa8afb6bd, 0xc4cbd2d9, + 0xe0e7eef5, 0xfc030a11, 0x181f262d, 0x343b4249, + 0x50575e65, 0x6c737a81, 0x888f969d, 0xa4abb2b9, + 0xc0c7ced5, 0xdce3eaf1, 0xf8ff060d, 0x141b2229, + 0x30373e45, 0x4c535a61, 0x686f767d, 0x848b9299, + 0xa0a7aeb5, 0xbcc3cad1, 0xd8dfe6ed, 0xf4fb0209, + 0x10171e25, 0x2c333a41, 0x484f565d, 0x646b7279 +}; diff --git a/include/crypto/sm4.h b/include/crypto/sm4.h index de8245d8a71..382b26d9224 100644 --- a/include/crypto/sm4.h +++ b/include/crypto/sm4.h @@ -2,6 +2,7 @@ #define QEMU_SM4_H extern const uint8_t sm4_sbox[256]; +extern const uint32_t sm4_ck[32]; static inline uint32_t sm4_subword(uint32_t word) {