Updated GCM for SM4 (markdown)

Sun Yimin 2022-01-03 14:27:01 +08:00
parent b15cfdfe96
commit a711e72ec8

@ -1,5 +1,5 @@
为sm4实现的GCM汇编代码是从AES GCM实现中摘抄的。主要为以下三个函数 为sm4实现的GCM汇编代码是从AES GCM实现中摘抄的。主要为以下三个函数
''' ```
//go:noescape //go:noescape
func precomputeTableAsm(productTable *[256]byte, src *[16]byte) func precomputeTableAsm(productTable *[256]byte, src *[16]byte)
@ -8,7 +8,7 @@ func gcmSm4Data(productTable *[256]byte, data []byte, T *[16]byte)
//go:noescape //go:noescape
func gcmSm4Finish(productTable *[256]byte, tagMask, T *[16]byte, pLen, dLen uint64) func gcmSm4Finish(productTable *[256]byte, tagMask, T *[16]byte, pLen, dLen uint64)
''' ```
1. gcmSm4Finish没有改变和gcmAesFinish一模一样 1. gcmSm4Finish没有改变和gcmAesFinish一模一样
1. precomputeTableAsm和gcmAesInit的区别在于前者没有加密部分输入参数就是加密结果 1. precomputeTableAsm和gcmAesInit的区别在于前者没有加密部分输入参数就是加密结果