diff --git a/crypto/secp256k1/secp256_rand.go b/crypto/secp256k1/secp256_rand.go
index 027b5f38694166a22ba3bfd81271ba6c02cf825a..bb10025fc0e58c1ff46c099a5f469040828c57bd 100644
--- a/crypto/secp256k1/secp256_rand.go
+++ b/crypto/secp256k1/secp256_rand.go
@@ -49,7 +49,8 @@ func init() {
 	_rand = mrand.New(mrand.NewSource(int64(seed1 ^ seed2 ^ seed3)))
 }
 
-func saltByte(buff []byte) []byte {
+func saltByte(n int) []byte {
+	buff := make([]byte, n)
 	for i := 0; i < len(buff); i++ {
 		var v uint64 = uint64(_rand.Int63())
 		var b byte