|
|
@ -31,6 +31,9 @@ const IO_EC_AFFINE = C.MCLBN_IO_EC_AFFINE |
|
|
|
// IO_EC_PROJ --
|
|
|
|
// IO_EC_PROJ --
|
|
|
|
const IO_EC_PROJ = C.MCLBN_IO_EC_PROJ |
|
|
|
const IO_EC_PROJ = C.MCLBN_IO_EC_PROJ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// IRTF -- for SetMapToMode
|
|
|
|
|
|
|
|
const IRTF = 5 /* MCL_MAP_TO_MODE_HASH_TO_CURVE_07 */ |
|
|
|
|
|
|
|
|
|
|
|
// GetFrUnitSize --
|
|
|
|
// GetFrUnitSize --
|
|
|
|
func GetFrUnitSize() int { |
|
|
|
func GetFrUnitSize() int { |
|
|
|
return int(C.MCLBN_FR_UNIT_SIZE) |
|
|
|
return int(C.MCLBN_FR_UNIT_SIZE) |
|
|
@ -170,8 +173,8 @@ func (x *Fr) SetString(s string, base int) error { |
|
|
|
// Deserialize --
|
|
|
|
// Deserialize --
|
|
|
|
func (x *Fr) Deserialize(buf []byte) error { |
|
|
|
func (x *Fr) Deserialize(buf []byte) error { |
|
|
|
// #nosec
|
|
|
|
// #nosec
|
|
|
|
err := C.mclBnFr_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
n := C.mclBnFr_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
if err == 0 { |
|
|
|
if n == 0 || int(n) != len(buf) { |
|
|
|
return fmt.Errorf("err mclBnFr_deserialize %x", buf) |
|
|
|
return fmt.Errorf("err mclBnFr_deserialize %x", buf) |
|
|
|
} |
|
|
|
} |
|
|
|
return nil |
|
|
|
return nil |
|
|
@ -197,6 +200,16 @@ func (x *Fr) SetLittleEndianMod(buf []byte) error { |
|
|
|
return nil |
|
|
|
return nil |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// SetBigEndianMod --
|
|
|
|
|
|
|
|
func (x *Fr) SetBigEndianMod(buf []byte) error { |
|
|
|
|
|
|
|
// #nosec
|
|
|
|
|
|
|
|
err := C.mclBnFr_setBigEndianMod(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
|
|
|
|
if err != 0 { |
|
|
|
|
|
|
|
return fmt.Errorf("err mclBnFr_setBigEndianMod %x", err) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return nil |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// IsEqual --
|
|
|
|
// IsEqual --
|
|
|
|
func (x *Fr) IsEqual(rhs *Fr) bool { |
|
|
|
func (x *Fr) IsEqual(rhs *Fr) bool { |
|
|
|
return C.mclBnFr_isEqual(x.getPointer(), rhs.getPointer()) == 1 |
|
|
|
return C.mclBnFr_isEqual(x.getPointer(), rhs.getPointer()) == 1 |
|
|
@ -340,8 +353,8 @@ func (x *Fp) SetString(s string, base int) error { |
|
|
|
// Deserialize --
|
|
|
|
// Deserialize --
|
|
|
|
func (x *Fp) Deserialize(buf []byte) error { |
|
|
|
func (x *Fp) Deserialize(buf []byte) error { |
|
|
|
// #nosec
|
|
|
|
// #nosec
|
|
|
|
err := C.mclBnFp_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
n := C.mclBnFp_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
if err == 0 { |
|
|
|
if n == 0 || int(n) != len(buf) { |
|
|
|
return fmt.Errorf("err mclBnFp_deserialize %x", buf) |
|
|
|
return fmt.Errorf("err mclBnFp_deserialize %x", buf) |
|
|
|
} |
|
|
|
} |
|
|
|
return nil |
|
|
|
return nil |
|
|
@ -367,6 +380,16 @@ func (x *Fp) SetLittleEndianMod(buf []byte) error { |
|
|
|
return nil |
|
|
|
return nil |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// SetBigEndianMod --
|
|
|
|
|
|
|
|
func (x *Fp) SetBigEndianMod(buf []byte) error { |
|
|
|
|
|
|
|
// #nosec
|
|
|
|
|
|
|
|
err := C.mclBnFp_setBigEndianMod(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
|
|
|
|
if err != 0 { |
|
|
|
|
|
|
|
return fmt.Errorf("err mclBnFp_setBigEndianMod %x", err) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return nil |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// IsEqual --
|
|
|
|
// IsEqual --
|
|
|
|
func (x *Fp) IsEqual(rhs *Fp) bool { |
|
|
|
func (x *Fp) IsEqual(rhs *Fp) bool { |
|
|
|
return C.mclBnFp_isEqual(x.getPointer(), rhs.getPointer()) == 1 |
|
|
|
return C.mclBnFp_isEqual(x.getPointer(), rhs.getPointer()) == 1 |
|
|
@ -493,8 +516,8 @@ func (x *Fp2) Clear() { |
|
|
|
// Deserialize --
|
|
|
|
// Deserialize --
|
|
|
|
func (x *Fp2) Deserialize(buf []byte) error { |
|
|
|
func (x *Fp2) Deserialize(buf []byte) error { |
|
|
|
// #nosec
|
|
|
|
// #nosec
|
|
|
|
err := C.mclBnFp2_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
n := C.mclBnFp2_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
if err == 0 { |
|
|
|
if n == 0 || int(n) != len(buf) { |
|
|
|
return fmt.Errorf("err mclBnFp2_deserialize %x", buf) |
|
|
|
return fmt.Errorf("err mclBnFp2_deserialize %x", buf) |
|
|
|
} |
|
|
|
} |
|
|
|
return nil |
|
|
|
return nil |
|
|
@ -599,8 +622,8 @@ func (x *G1) SetString(s string, base int) error { |
|
|
|
// Deserialize --
|
|
|
|
// Deserialize --
|
|
|
|
func (x *G1) Deserialize(buf []byte) error { |
|
|
|
func (x *G1) Deserialize(buf []byte) error { |
|
|
|
// #nosec
|
|
|
|
// #nosec
|
|
|
|
err := C.mclBnG1_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
n := C.mclBnG1_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
if err == 0 { |
|
|
|
if n == 0 || int(n) != len(buf) { |
|
|
|
return fmt.Errorf("err mclBnG1_deserialize %x", buf) |
|
|
|
return fmt.Errorf("err mclBnG1_deserialize %x", buf) |
|
|
|
} |
|
|
|
} |
|
|
|
return nil |
|
|
|
return nil |
|
|
@ -796,8 +819,8 @@ func (x *G2) SetString(s string, base int) error { |
|
|
|
// Deserialize --
|
|
|
|
// Deserialize --
|
|
|
|
func (x *G2) Deserialize(buf []byte) error { |
|
|
|
func (x *G2) Deserialize(buf []byte) error { |
|
|
|
// #nosec
|
|
|
|
// #nosec
|
|
|
|
err := C.mclBnG2_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
n := C.mclBnG2_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
if err == 0 { |
|
|
|
if n == 0 || int(n) != len(buf) { |
|
|
|
return fmt.Errorf("err mclBnG2_deserialize %x", buf) |
|
|
|
return fmt.Errorf("err mclBnG2_deserialize %x", buf) |
|
|
|
} |
|
|
|
} |
|
|
|
return nil |
|
|
|
return nil |
|
|
@ -976,8 +999,8 @@ func (x *GT) SetString(s string, base int) error { |
|
|
|
// Deserialize --
|
|
|
|
// Deserialize --
|
|
|
|
func (x *GT) Deserialize(buf []byte) error { |
|
|
|
func (x *GT) Deserialize(buf []byte) error { |
|
|
|
// #nosec
|
|
|
|
// #nosec
|
|
|
|
err := C.mclBnGT_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
n := C.mclBnGT_deserialize(x.getPointer(), unsafe.Pointer(&buf[0]), C.size_t(len(buf))) |
|
|
|
if err == 0 { |
|
|
|
if n == 0 || int(n) != len(buf) { |
|
|
|
return fmt.Errorf("err mclBnGT_deserialize %x", buf) |
|
|
|
return fmt.Errorf("err mclBnGT_deserialize %x", buf) |
|
|
|
} |
|
|
|
} |
|
|
|
return nil |
|
|
|
return nil |
|
|
|