Golang之AES/DES加密解密
AES/DES加密/解密涉及4个概念:
1. Block, 也叫分组, 相应加密/解密的算法.
2. BlockMode, 模式, 相应加密/解密的处理.
3. InitalVectory, 初始向量
4. Padding, 尾部填充
操作如下:
1. 调用xxx.NewXXXCipher(key)创建Block
2. 调用cipher.NewXXXEncrpter(block,iv) 或 cipher.NewXXXDecrpter(block,iv)创建BlockMode.
3. 调用BlockMode.CrptyBlocks(dst,src)进行加密或解密操作.
注意: 在第3前要做OrigData的Padding操作, 在第3后要做CrptedData的Unpadding操作.