mirror of
https://github.com/emmansun/gmsm.git
synced 2025-05-11 03:26:17 +08:00
Updated GCM for SM4 (markdown)
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的区别在于前者没有加密部分,输入参数就是加密结果;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user