Skip to content

Choices between G1Point and Point<Bls12_381_1> in v0.10.0 #175

@traffictse

Description

@traffictse

I noticed that in Module bls12_381, the implementation of trait ECPoint for struct G1Point is kept from v0.7.0 till the current v0.10.0, while since v0.8.0, the wrapper Point<E: Curve> has been recommended instead of the low-level trait ECPoint. Also, the significant function hash_to_curve still outputs a struct G1Point.

Seemingly, there is some convenience when choosing Point<Bls12_381_1> over G1Point. For example, the traits Serialize and Deserialize are implemented for Point<E: Curve> but not G1Point.

I am wondering if there is any reason to keep the specific notation G1Point (as well as the implementation of trait ECPoint for it) for BLS12-381 when there is a generic struct Point<E: Curve> (namely Point<Bls12_381_1> as an instantiation)?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions