We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent e80c805 commit 3d9cda1Copy full SHA for 3d9cda1
dcrec/secp256k1/field.go
@@ -218,12 +218,12 @@ func (f *fieldVal) SetBytes(b *[32]byte) *fieldVal {
218
// f := new(fieldVal).SetByteSlice(byteSlice)
219
func (f *fieldVal) SetByteSlice(b []byte) *fieldVal {
220
var b32 [32]byte
221
- for i := 0; i < len(b); i++ {
222
- if i < 32 {
223
- b32[i+(32-len(b))] = b[i]
224
- }
225
226
- return f.SetBytes(&b32)
+ b = b[:constantTimeMin(uint32(len(b)), 32)]
+ copy(b32[:], b32[:32-len(b)])
+ copy(b32[32-len(b):], b)
+ f.SetBytes(&b32)
+ zeroArray32(&b32)
+ return f
227
}
228
229
// SetHex decodes the passed big-endian hex string into the internal field value
0 commit comments