Skip to content

Commit

Permalink
Serialize ecdsa additional data as sequence
Browse files Browse the repository at this point in the history
  • Loading branch information
fmoletta committed Jan 17, 2024
1 parent b429d33 commit 9a6fcbe
Showing 1 changed file with 11 additions and 9 deletions.
20 changes: 11 additions & 9 deletions vm/src/vm/runners/cairo_pie.rs
Original file line number Diff line number Diff line change
Expand Up @@ -146,10 +146,7 @@ mod serde_impl {
};
use num_bigint::BigUint;
use num_traits::Num;
use serde::{
ser::{SerializeMap, SerializeSeq},
Serialize, Serializer,
};
use serde::{ser::SerializeSeq, Serialize, Serializer};

pub const ADDR_BYTE_LEN: usize = 8;
pub const FIELD_BYTE_LEN: usize = 32;
Expand Down Expand Up @@ -272,12 +269,18 @@ mod serde_impl {
where
S: Serializer,
{
let mut map_serializer = serializer.serialize_map(Some(values.len()))?;
let mut seq_serializer = serializer.serialize_seq(Some(values.len()))?;

for (key, (x, y)) in values {
map_serializer.serialize_entry(&key.to_string(), &format!("[{}, {}]", x, y))?;
seq_serializer.serialize_element(&[
[
Felt252Wrapper(&Felt252::from(key.segment_index)),
Felt252Wrapper(&Felt252::from(key.offset)),
],
[Felt252Wrapper(x), Felt252Wrapper(y)],
])?;
}
map_serializer.end()
seq_serializer.end()
}

pub fn serialize_hash_additional_data<S>(
Expand All @@ -290,8 +293,7 @@ mod serde_impl {
let mut seq_serializer = serializer.serialize_seq(Some(values.len()))?;

for value in values {
seq_serializer
.serialize_element(&[value.segment_index, value.offset as isize])?;
seq_serializer.serialize_element(&[value.segment_index, value.offset as isize])?;
}

seq_serializer.end()
Expand Down

0 comments on commit 9a6fcbe

Please sign in to comment.