summaryrefslogtreecommitdiff
path: root/sys/include
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2017-10-17 21:34:01 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2017-10-17 21:34:01 +0200
commit45b7d60bf385aa9ac0bab7bb8c694f8221893024 (patch)
treefc0cd92b12aa8c4815b68e33a84368c76218f1ed /sys/include
parent0db4f40629762d1be583c49756cbcfc2561cb0fa (diff)
libsec: add AES CFB and AES OFB stream ciphers
Diffstat (limited to 'sys/include')
-rw-r--r--sys/include/ape/libsec.h4
-rw-r--r--sys/include/libsec.h4
2 files changed, 8 insertions, 0 deletions
diff --git a/sys/include/ape/libsec.h b/sys/include/ape/libsec.h
index b76f5eb63..9a07054ee 100644
--- a/sys/include/ape/libsec.h
+++ b/sys/include/ape/libsec.h
@@ -29,6 +29,7 @@ typedef struct AESstate AESstate;
struct AESstate
{
ulong setup;
+ ulong offset;
int rounds;
int keybytes;
uchar key[AESmaxkey]; /* unexpanded key */
@@ -45,6 +46,9 @@ void aes_decrypt(ulong rk[], int Nr, uchar ct[16], uchar pt[16]);
void setupAESstate(AESstate *s, uchar key[], int keybytes, uchar *ivec);
void aesCBCencrypt(uchar *p, int len, AESstate *s);
void aesCBCdecrypt(uchar *p, int len, AESstate *s);
+void aesCFBencrypt(uchar *p, int len, AESstate *s);
+void aesCFBdecrypt(uchar *p, int len, AESstate *s);
+void aesOFBencrypt(uchar *p, int len, AESstate *s);
void setupAESXCBCstate(AESstate *s);
uchar* aesXCBCmac(uchar *p, int len, AESstate *s);
diff --git a/sys/include/libsec.h b/sys/include/libsec.h
index 99df9791b..cd4d4d402 100644
--- a/sys/include/libsec.h
+++ b/sys/include/libsec.h
@@ -21,6 +21,7 @@ typedef struct AESstate AESstate;
struct AESstate
{
ulong setup;
+ ulong offset;
int rounds;
int keybytes;
uchar key[AESmaxkey]; /* unexpanded key */
@@ -37,6 +38,9 @@ void aes_decrypt(ulong rk[], int Nr, uchar ct[16], uchar pt[16]);
void setupAESstate(AESstate *s, uchar key[], int keybytes, uchar *ivec);
void aesCBCencrypt(uchar *p, int len, AESstate *s);
void aesCBCdecrypt(uchar *p, int len, AESstate *s);
+void aesCFBencrypt(uchar *p, int len, AESstate *s);
+void aesCFBdecrypt(uchar *p, int len, AESstate *s);
+void aesOFBencrypt(uchar *p, int len, AESstate *s);
void setupAESXCBCstate(AESstate *s);
uchar* aesXCBCmac(uchar *p, int len, AESstate *s);