#include "xf_security/ofb.hpp"
static void desOfbEncrypt ( hls::stream <ap_uint <64>>& plaintextStrm, hls::stream <bool>& endPlaintextStrm, hls::stream <ap_uint <64>>& cipherkeyStrm, hls::stream <ap_uint <64>>& IVStrm, hls::stream <ap_uint <64>>& ciphertextStrm, hls::stream <bool>& endCiphertextStrm )
desOfbEncrypt is OFB encryption mode with DES single block cipher.
The algorithm reference is : “Recommendation for Block Cipher Modes of Operation - Methods and Techniques” The implementation is modified for better performance.
Parameters:
| plaintextStrm | Input block stream text to be encrypted, each block is 64 bits. |
| endPlaintextStrm | End flag of block stream plaintext, 1 bit. |
| cipherkeyStrm | Input cipher key used in encryption, 64 bits for each key. |
| IVStrm | Initialization vector for the fisrt iteration of DES encrypition, 64 bits. |
| ciphertextStrm | Output encrypted block stream text, each block is 64 bits. |
| endCiphertextStrm | End flag of block stream ciphertext, 1 bit. |