Home
last modified time | relevance | path

Searched refs:lrw (Results 1 – 9 of 9) sorted by relevance

/optee_os/core/lib/libtomcrypt/src/modes/lrw/
A Dlrw_process.c28 …rocess(const unsigned char *pt, unsigned char *ct, unsigned long len, int mode, symmetric_LRW *lrw) in lrw_process() argument
38 LTC_ARGCHK(lrw != NULL); in lrw_process()
46 XMEMCPY(prod, lrw->pad, 16); in lrw_process()
50 lrw->IV[x] = (lrw->IV[x] + 1) & 255; in lrw_process()
51 if (lrw->IV[x]) { in lrw_process()
62 …FAST_TYPE_PTR_CAST(lrw->pad + y)) ^= *(LTC_FAST_TYPE_PTR_CAST(&lrw->PC[x][lrw->IV[x]][y])) ^ *(LTC… in lrw_process()
66 lrw->pad[y] ^= lrw->PC[x][lrw->IV[x]][y] ^ lrw->PC[x][(lrw->IV[x]-1)&255][y]; in lrw_process()
71 gcm_gf_mult(lrw->tweak, lrw->IV, lrw->pad); in lrw_process()
87 if ((err = cipher_descriptor[lrw->cipher]->ecb_encrypt(ct, ct, &lrw->key)) != CRYPT_OK) { in lrw_process()
91 if ((err = cipher_descriptor[lrw->cipher]->ecb_decrypt(ct, ct, &lrw->key)) != CRYPT_OK) { in lrw_process()
A Dlrw_test.c72 symmetric_LRW lrw; in lrw_test()
91 lrw_done(&lrw); in lrw_test()
96 if ((err = lrw_encrypt(tests[x].P, buf[0], 16, &lrw)) != CRYPT_OK) { in lrw_test()
97 lrw_done(&lrw); in lrw_test()
102 lrw_done(&lrw); in lrw_test()
107 if ((err = lrw_setiv(tests[x].IV, 16, &lrw)) != CRYPT_OK) { in lrw_test()
108 lrw_done(&lrw); in lrw_test()
112 if ((err = lrw_decrypt(buf[0], buf[1], 16, &lrw)) != CRYPT_OK) { in lrw_test()
113 lrw_done(&lrw); in lrw_test()
118 lrw_done(&lrw); in lrw_test()
[all …]
A Dlrw_setiv.c26 int lrw_setiv(const unsigned char *IV, unsigned long len, symmetric_LRW *lrw) in lrw_setiv() argument
34 LTC_ARGCHK(lrw != NULL); in lrw_setiv()
40 if ((err = cipher_is_valid(lrw->cipher)) != CRYPT_OK) { in lrw_setiv()
45 XMEMCPY(lrw->IV, IV, 16); in lrw_setiv()
48 …if (cipher_descriptor[lrw->cipher]->accel_lrw_encrypt != NULL && cipher_descriptor[lrw->cipher]->a… in lrw_setiv()
54 XMEMCPY(T, &lrw->PC[0][IV[0]][0], 16); in lrw_setiv()
58 *(LTC_FAST_TYPE_PTR_CAST(T + y)) ^= *(LTC_FAST_TYPE_PTR_CAST(&lrw->PC[x][IV[x]][y])); in lrw_setiv()
62 T[y] ^= lrw->PC[x][IV[x]][y]; in lrw_setiv()
66 XMEMCPY(lrw->pad, T, 16); in lrw_setiv()
68 gcm_gf_mult(lrw->tweak, IV, lrw->pad); in lrw_setiv()
A Dlrw_start.c35 symmetric_LRW *lrw) in lrw_start() argument
46 LTC_ARGCHK(lrw != NULL); in lrw_start()
63 if ((err = cipher_descriptor[cipher]->setup(key, keylen, num_rounds, &lrw->key)) != CRYPT_OK) { in lrw_start()
66 lrw->cipher = cipher; in lrw_start()
69 XMEMCPY(lrw->tweak, tweak, 16); in lrw_start()
77 gcm_gf_mult(tweak, B, &lrw->PC[0][y][0]); in lrw_start()
84 t = lrw->PC[x-1][y][15]; in lrw_start()
86 lrw->PC[x][y][z] = lrw->PC[x-1][y][z-1]; in lrw_start()
88 lrw->PC[x][y][0] = gcm_shift_table[t<<1]; in lrw_start()
89 lrw->PC[x][y][1] ^= gcm_shift_table[(t<<1)+1]; in lrw_start()
[all …]
A Dlrw_decrypt.c26 int lrw_decrypt(const unsigned char *ct, unsigned char *pt, unsigned long len, symmetric_LRW *lrw) in lrw_decrypt() argument
32 LTC_ARGCHK(lrw != NULL); in lrw_decrypt()
34 if ((err = cipher_is_valid(lrw->cipher)) != CRYPT_OK) { in lrw_decrypt()
38 if (cipher_descriptor[lrw->cipher]->accel_lrw_decrypt != NULL) { in lrw_decrypt()
39 …return cipher_descriptor[lrw->cipher]->accel_lrw_decrypt(ct, pt, len, lrw->IV, lrw->tweak, &lrw->k… in lrw_decrypt()
42 return lrw_process(ct, pt, len, LRW_DECRYPT, lrw); in lrw_decrypt()
A Dlrw_encrypt.c26 int lrw_encrypt(const unsigned char *pt, unsigned char *ct, unsigned long len, symmetric_LRW *lrw) in lrw_encrypt() argument
32 LTC_ARGCHK(lrw != NULL); in lrw_encrypt()
34 if ((err = cipher_is_valid(lrw->cipher)) != CRYPT_OK) { in lrw_encrypt()
38 if (cipher_descriptor[lrw->cipher]->accel_lrw_encrypt != NULL) { in lrw_encrypt()
39 …return cipher_descriptor[lrw->cipher]->accel_lrw_encrypt(pt, ct, len, lrw->IV, lrw->tweak, &lrw->k… in lrw_encrypt()
42 return lrw_process(pt, ct, len, LRW_ENCRYPT, lrw); in lrw_encrypt()
A Dlrw_done.c24 int lrw_done(symmetric_LRW *lrw) in lrw_done() argument
28 LTC_ARGCHK(lrw != NULL); in lrw_done()
30 if ((err = cipher_is_valid(lrw->cipher)) != CRYPT_OK) { in lrw_done()
33 cipher_descriptor[lrw->cipher]->done(&lrw->key); in lrw_done()
A Dlrw_getiv.c26 int lrw_getiv(unsigned char *IV, unsigned long *len, const symmetric_LRW *lrw) in lrw_getiv() argument
30 LTC_ARGCHK(lrw != NULL); in lrw_getiv()
36 XMEMCPY(IV, lrw->IV, 16); in lrw_getiv()
/optee_os/core/lib/libtomcrypt/src/headers/
A Dtomcrypt_cipher.h930 symmetric_LRW *lrw);
931 int lrw_encrypt(const unsigned char *pt, unsigned char *ct, unsigned long len, symmetric_LRW *lrw);
932 int lrw_decrypt(const unsigned char *ct, unsigned char *pt, unsigned long len, symmetric_LRW *lrw);
933 int lrw_getiv(unsigned char *IV, unsigned long *len, const symmetric_LRW *lrw);
934 int lrw_setiv(const unsigned char *IV, unsigned long len, symmetric_LRW *lrw);
935 int lrw_done(symmetric_LRW *lrw);
939 …ocess(const unsigned char *pt, unsigned char *ct, unsigned long len, int mode, symmetric_LRW *lrw);

Completed in 15 milliseconds