diff --git a/docs/sm4.md b/docs/sm4.md index 4f0f491..3e984a0 100644 --- a/docs/sm4.md +++ b/docs/sm4.md @@ -32,6 +32,9 @@ Go语言实现的工作模式,主要有三类: ### 使用建议 常用的对称加解密应用场合,推荐优先使用GCM模式,其次CBC模式(一些安全扫描工具,也会把CBC工作模式列为安全性不高的工作模式)。我能想到的GCM模式的缺点是:加解密的相关方不支持GCM模式,或者实现性能不好。 +#### 关于ECB模式 +1. 请使用本软件库提供的`NewECBEncrypter/NewECBDecrypter`方法,否则大概率不会得到性能优化。 +2. 基于安全考虑,最好不要使用该模式。 ## 填充(padding) 有些分组密码算法的工作模式(譬如实现了```cipher.BlockMode```接口的模式)的输入要求是其长度必须是分组大小的整数倍。《GB/T 17964-2021 信息安全技术 分组密码算法的工作模式》附录C中列出了以下几种填充模式: