rsa key initialization
This commit is contained in:
@@ -1,15 +1,13 @@
|
||||
#include "cryptography.h"
|
||||
#include <assert.h>
|
||||
#include "tlibc/time.h"
|
||||
|
||||
void EncryptorAES_create(EncryptorAES* ptr, Array(u8) key){
|
||||
//TODO: use AES CTR encryption instead of my own padding algorithm
|
||||
|
||||
void EncryptorAES_init(EncryptorAES* ptr, Array(u8) key){
|
||||
assert(key.size == 16 || key.size == 24 || key.size == 32);
|
||||
|
||||
br_aes_ct64_cbcenc_init(&ptr->enc_ctx, key.data, key.size);
|
||||
|
||||
// uses CLOCK_REALTIME to seed rng
|
||||
nsec_t time_now = getTimeNsec();
|
||||
br_hmac_drbg_init(&ptr->rng_ctx, &br_sha256_vtable, &time_now, sizeof(time_now));
|
||||
rng_init_sha256_seedFromTime(&br_hmac_drbg_vtable, &ptr->rng_ctx.vtable);
|
||||
|
||||
memset(ptr->buf, 0, __AES_BUFFER_SIZE);
|
||||
memset(ptr->iv, 0, sizeof(ptr->iv));
|
||||
@@ -51,7 +49,7 @@ void EncryptorAES_encrypt(EncryptorAES* ptr, Array(u8) src, Array(u8) dst){
|
||||
}
|
||||
|
||||
|
||||
void DecryptorAES_create(DecryptorAES* ptr, Array(u8) key){
|
||||
void DecryptorAES_init(DecryptorAES* ptr, Array(u8) key){
|
||||
assert(key.size == 16 || key.size == 24 || key.size == 32);
|
||||
|
||||
br_aes_ct64_cbcdec_init(&ptr->dec_ctx, key.data, key.size);
|
||||
|
||||
Reference in New Issue
Block a user