⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 aes_cbc.h

📁 免费压缩软件7zip的源码
💻 H
字号:
// AES_CBC.h

#ifndef __AES_CBC_H
#define __AES_CBC_H

#include "aescpp.h"

class CAES_CBC: public AESclass
{
protected:
  Byte _prevBlock[16];
public:
  void Init(const Byte *iv)
  {
    for (int i = 0; i < 16; i++)
      _prevBlock[i] = iv[i];
  }
  void Encode(const Byte *inBlock, Byte *outBlock)
  {
    int i;
    for (i = 0; i < 16; i++)
      _prevBlock[i] ^= inBlock[i];
    enc_blk(_prevBlock, outBlock);
    for (i = 0; i < 16; i++)
      _prevBlock[i] = outBlock[i];
  }

  void Decode(const Byte *inBlock, Byte *outBlock)
  {
    dec_blk(inBlock, outBlock);
    int i;
    for (i = 0; i < 16; i++)
      outBlock[i] ^= _prevBlock[i];
    for (i = 0; i < 16; i++)
      _prevBlock[i] = inBlock[i];
  }
};

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -