X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fsec%2Fcipher.c;h=ba4ae981d6da8298447671086022d77927fac872;hb=5da4f300ba34aa4457914b28fc6be3452eac1ddb;hp=7977cc4632b83460dbc1cb59da77e5c22dc50773;hpb=20491f5ce0cb9b92b33e52d1d1015930618b00e8;p=bertos.git diff --git a/bertos/sec/cipher.c b/bertos/sec/cipher.c index 7977cc46..ba4ae981 100644 --- a/bertos/sec/cipher.c +++ b/bertos/sec/cipher.c @@ -85,3 +85,19 @@ void cipher_ctr_decrypt(BlockCipher *c, void *block) { cipher_ctr_encrypt(c, block); } + +static void ofb_step(BlockCipher *c) +{ + c->enc_block(c, c->buf); +} + +void cipher_ofb_encrypt(BlockCipher *c, void *block) +{ + ofb_step(c); + xor_block(block, block, c->buf, c->block_len); +} + +void cipher_ofb_decrypt(BlockCipher *c, void *block) +{ + cipher_ofb_encrypt(c, block); +}