From 105331f16455f085dd4bcec608d370843436fce7 Mon Sep 17 00:00:00 2001 From: Sun Yimin Date: Wed, 15 May 2024 09:36:38 +0800 Subject: [PATCH] sm3: kdf, reduce memory allocation times #220 --- sm3/sm3.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sm3/sm3.go b/sm3/sm3.go index 450e507e..89248462 100644 --- a/sm3/sm3.go +++ b/sm3/sm3.go @@ -220,7 +220,7 @@ func Kdf(z []byte, keyLen int) []byte { } var countBytes [4]byte var ct uint32 = 1 - var k []byte + k := make([]byte, keyLen) baseMD := new(digest) baseMD.Reset() baseMD.Write(z) @@ -229,8 +229,8 @@ func Kdf(z []byte, keyLen int) []byte { md := *baseMD md.Write(countBytes[:]) h := md.checkSum() - k = append(k, h[:]...) + copy(k[i*Size:], h[:]) ct++ } - return k[:keyLen] + return k }