arnaucube
arnaucube/arkeddsaPublic Self-hosted repository
wip2
arnaucube git@arnaucube.com
Fri, 27 Dec 2024 16:01:39 +0100
commit

0a9ea7ac1df07363af0fda723e313e775563b9f4

parent

67c077e0e564d5f8d193a44f67357dfd1180cb64

2 files changed, 7 insertions(+), 11 deletions(-)

jump to
M src/eddsa.rs → src/eddsa.rs

@@ -4,8 +4,9 @@ poseidon::{PoseidonConfig, PoseidonSponge},

Absorb, CryptographicSponge, }; use ark_ec::{ - twisted_edwards::{Affine, TECurveConfig}, - AffineRepr, CurveGroup, + // twisted_edwards::{Affine, TECurveConfig}, + AffineRepr, + CurveGroup, }; use ark_ff::{BigInteger, PrimeField}; use ark_serialize::{CanonicalDeserialize, CanonicalSerialize};
M src/signature.rs → src/signature.rs

@@ -1,8 +1,5 @@

-use ark_ec::twisted_edwards::Affine; -use ark_ec::twisted_edwards::TECurveConfig; -use ark_ec::CurveGroup; -use ark_serialize::CanonicalDeserialize; -use ark_serialize::CanonicalSerialize; +use ark_ec::{AffineRepr, CurveGroup}; +use ark_serialize::{CanonicalDeserialize, CanonicalSerialize}; /// `SignatureComponents` contains the realized parts of a signature #[derive(Copy, Clone, Debug, PartialEq, CanonicalSerialize, CanonicalDeserialize)]

@@ -12,7 +9,6 @@ pub s: C::ScalarField,

} impl<C: CurveGroup + Clone> Signature<C> { - /* /// Serializes the signature components to bytes as uncompressed. /// Expect output size to be `size_of(C::BaseField) * 2 + size_of(C::ScalarField)` pub fn to_bytes(&self) -> Vec<u8> {

@@ -25,8 +21,8 @@

/// Checked deserialization of the signature components from bytes. /// Expects input size to be `size_of(C::BaseField) * 2 + size_of(C::ScalarField)` pub fn from_bytes(bytes: &[u8]) -> Result<Self, Box<dyn ark_std::error::Error>> { - let point_size = C::Affine::Config::serialized_size(ark_serialize::Compress::No); - (bytes.len() == 32 + C::Affine::Config::serialized_size(ark_serialize::Compress::No)) + let point_size = C::Affine::generator().serialized_size(ark_serialize::Compress::No); + (bytes.len() == 32 + point_size) .then_some(true) .ok_or(ark_serialize::SerializationError::InvalidData)?;

@@ -37,7 +33,6 @@ let r = C::Affine::deserialize_uncompressed(&bytes[00..off1])?;

let s = C::ScalarField::deserialize_uncompressed(&bytes[off1..off2])?; Ok(Signature { r, s }) } - */ pub fn new(r: C::Affine, s: C::ScalarField) -> Self { Self { r, s }