Skip to content

Commit ed5eac1

Browse files
committed
wc_EncryptedInfoGet: add AES-CTR support
1 parent 6a1db27 commit ed5eac1

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

wolfcrypt/src/asn.c

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23259,6 +23259,15 @@ static wcchar kDecInfoHeader = "DEK-Info";
2325923259
#if !defined(NO_AES) && defined(HAVE_AES_CBC) && defined(WOLFSSL_AES_256)
2326023260
static wcchar kEncTypeAesCbc256 = "AES-256-CBC";
2326123261
#endif
23262+
#if !defined(NO_AES) && defined(WOLFSSL_AES_COUNTER) && defined(WOLFSSL_AES_128)
23263+
static wcchar kEncTypeAesCtr128 = "AES-128-CTR";
23264+
#endif
23265+
#if !defined(NO_AES) && defined(WOLFSSL_AES_COUNTER) && defined(WOLFSSL_AES_192)
23266+
static wcchar kEncTypeAesCtr192 = "AES-192-CTR";
23267+
#endif
23268+
#if !defined(NO_AES) && defined(WOLFSSL_AES_COUNTER) && defined(WOLFSSL_AES_256)
23269+
static wcchar kEncTypeAesCtr256 = "AES-256-CTR";
23270+
#endif
2326223271

2326323272
int wc_EncryptedInfoGet(EncryptedInfo* info, const char* cipherInfo)
2326423273
{
@@ -23314,6 +23323,30 @@ int wc_EncryptedInfoGet(EncryptedInfo* info, const char* cipherInfo)
2331423323
if (info->ivSz == 0) info->ivSz = AES_IV_SIZE;
2331523324
}
2331623325
else
23326+
#endif
23327+
#if !defined(NO_AES) && defined(WOLFSSL_AES_COUNTER) && defined(WOLFSSL_AES_128)
23328+
if (XSTRCMP(cipherInfo, kEncTypeAesCtr128) == 0) {
23329+
info->cipherType = WC_CIPHER_AES_CTR;
23330+
info->keySz = AES_128_KEY_SIZE;
23331+
if (info->ivSz == 0) info->ivSz = AES_IV_SIZE;
23332+
}
23333+
else
23334+
#endif
23335+
#if !defined(NO_AES) && defined(WOLFSSL_AES_COUNTER) && defined(WOLFSSL_AES_192)
23336+
if (XSTRCMP(cipherInfo, kEncTypeAesCtr192) == 0) {
23337+
info->cipherType = WC_CIPHER_AES_CTR;
23338+
info->keySz = AES_192_KEY_SIZE;
23339+
if (info->ivSz == 0) info->ivSz = AES_IV_SIZE;
23340+
}
23341+
else
23342+
#endif
23343+
#if !defined(NO_AES) && defined(WOLFSSL_AES_COUNTER) && defined(WOLFSSL_AES_256)
23344+
if (XSTRCMP(cipherInfo, kEncTypeAesCtr256) == 0) {
23345+
info->cipherType = WC_CIPHER_AES_CTR;
23346+
info->keySz = AES_256_KEY_SIZE;
23347+
if (info->ivSz == 0) info->ivSz = AES_IV_SIZE;
23348+
}
23349+
else
2331723350
#endif
2331823351
{
2331923352
ret = NOT_COMPILED_IN;

0 commit comments

Comments
 (0)