Updated SM4分组密码 (markdown)

Zhi Guan
2016-04-25 19:36:28 +02:00
parent a769886aa3
commit ed3b190ae3

@@ -8,6 +8,21 @@ GmSSL提供了SMS4的实现。
## SMS4的工作模式
GmSSL已经实现如下工作模式
* SMS4-ECB该模式不推荐
* SMS4-CBC该模式的实现提供自动的填充无需应用对明文数据进行填充。
* SMS4-CFB根据输出比特序列的长度包含SMS4-CFB1、SMS4-CFB8和SMS4-CFB128三个实现。
* SMS4-OFB
* SMS4-CTR由于SMS4软实现性能较低因此在后续的优化中会首先提供经过Intel AVX2指令集优化的CTR实现。
* SMS4-WRAP将SMS4用于加密密钥其中被加密的数据为密钥而SMS4的密钥为KEK (Key Encryption Key)。
GmSSL预期还将实现如下工作模式
* SMS4-GCM该模式同时提供数据加密以及完整性保护通过该模式在加密数据时无需再提供格外的HMAC。
* SMS4-OCB该模式功能与GCM模式相同。
* SMS4-XTS该模式为磁盘加密模式用于加密以512字节、4096字节为单位的磁盘扇区。
* SMS4-FFX该模式为保留格式加密可以用于加密信用卡号码等具有特定格式的字符串。
## 在命令行中使用SMS4
@@ -27,4 +42,3 @@ hello
GmSSL提供了SMS4的`EVP_sms4_cbc()``EVP_CIPHER`对象,应用可以通过`EVP_EncryptInit/Update/Final()`函数访问,具体调用方法请参考`EVP_EncryptInit(3)`手册页。