mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-05-13 11:36:37 +00:00
crypto/bn256: refactor to use bitutil.TestBytes (#32435)
This commit is contained in:
parent
ccf684f1ba
commit
88922d2bf5
2 changed files with 4 additions and 11 deletions
|
|
@ -5,6 +5,7 @@ import (
|
||||||
"math/big"
|
"math/big"
|
||||||
|
|
||||||
"github.com/consensys/gnark-crypto/ecc/bn254"
|
"github.com/consensys/gnark-crypto/ecc/bn254"
|
||||||
|
"github.com/ethereum/go-ethereum/common/bitutil"
|
||||||
)
|
)
|
||||||
|
|
||||||
// G1 is the affine representation of a G1 group element.
|
// G1 is the affine representation of a G1 group element.
|
||||||
|
|
@ -43,7 +44,7 @@ func (g *G1) Unmarshal(buf []byte) (int, error) {
|
||||||
return 0, errors.New("invalid G1 point size")
|
return 0, errors.New("invalid G1 point size")
|
||||||
}
|
}
|
||||||
|
|
||||||
if allZeroes(buf[:64]) {
|
if !bitutil.TestBytes(buf[:64]) {
|
||||||
// point at infinity
|
// point at infinity
|
||||||
g.inner.X.SetZero()
|
g.inner.X.SetZero()
|
||||||
g.inner.Y.SetZero()
|
g.inner.Y.SetZero()
|
||||||
|
|
@ -82,12 +83,3 @@ func (p *G1) Marshal() []byte {
|
||||||
|
|
||||||
return output
|
return output
|
||||||
}
|
}
|
||||||
|
|
||||||
func allZeroes(buf []byte) bool {
|
|
||||||
for i := range buf {
|
|
||||||
if buf[i] != 0 {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import (
|
||||||
"errors"
|
"errors"
|
||||||
|
|
||||||
"github.com/consensys/gnark-crypto/ecc/bn254"
|
"github.com/consensys/gnark-crypto/ecc/bn254"
|
||||||
|
"github.com/ethereum/go-ethereum/common/bitutil"
|
||||||
)
|
)
|
||||||
|
|
||||||
// G2 is the affine representation of a G2 group element.
|
// G2 is the affine representation of a G2 group element.
|
||||||
|
|
@ -31,7 +32,7 @@ func (g *G2) Unmarshal(buf []byte) (int, error) {
|
||||||
return 0, errors.New("invalid G2 point size")
|
return 0, errors.New("invalid G2 point size")
|
||||||
}
|
}
|
||||||
|
|
||||||
if allZeroes(buf[:128]) {
|
if !bitutil.TestBytes(buf[:128]) {
|
||||||
// point at infinity
|
// point at infinity
|
||||||
g.inner.X.A0.SetZero()
|
g.inner.X.A0.SetZero()
|
||||||
g.inner.X.A1.SetZero()
|
g.inner.X.A1.SetZero()
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue