mdc.h
来自「伯克利做的SFTP安全文件传输协议」· C头文件 代码 · 共 42 行
H
42 行
// mdc.h - written and placed in the public domain by Wei Dai#ifndef MDC_H#define MDC_H#include "cryptlib.h"#include "misc.h"template <class T> class MDC : public BlockTransformation{public: enum {KEYLENGTH=T::DATASIZE, BLOCKSIZE=T::DIGESTSIZE}; MDC(const byte *userKey) : key(KEYLENGTH/4) { T::CorrectEndianess(key, (word32 *)userKey, KEYLENGTH); } void ProcessBlock(byte *inoutBlock) { T::CorrectEndianess((word32 *)inoutBlock, (word32 *)inoutBlock, BLOCKSIZE); T::Transform((word32 *)inoutBlock, key); T::CorrectEndianess((word32 *)inoutBlock, (word32 *)inoutBlock, BLOCKSIZE); } void ProcessBlock(const byte *inBlock, byte *outBlock) { T::CorrectEndianess((word32 *)outBlock, (word32 *)inBlock, BLOCKSIZE); T::Transform((word32 *)outBlock, key); T::CorrectEndianess((word32 *)outBlock, (word32 *)outBlock, BLOCKSIZE); } unsigned int BlockSize() const {return BLOCKSIZE;}private: SecBlock<word32> key;};#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?