Skip to content

Commit

Permalink
Merge 67db2d1 into 775a75a
Browse files Browse the repository at this point in the history
  • Loading branch information
greenhat committed Jul 9, 2020
2 parents 775a75a + 67db2d1 commit 7985586
Showing 1 changed file with 15 additions and 7 deletions.
22 changes: 15 additions & 7 deletions sigma-tree/src/serialization/sigmaboolean.rs
Expand Up @@ -15,7 +15,7 @@ impl SigmaSerializable for SigmaBoolean {
match self {
SigmaBoolean::ProofOfKnowledge(proof) => match proof {
SigmaProofOfKnowledgeTree::ProveDHTuple { .. } => todo!(),
SigmaProofOfKnowledgeTree::ProveDlog(v) => v.h.sigma_serialize(w),
SigmaProofOfKnowledgeTree::ProveDlog(v) => v.sigma_serialize(w),
},
SigmaBoolean::CAND(_) => todo!(),
}
Expand All @@ -24,13 +24,21 @@ impl SigmaSerializable for SigmaBoolean {
fn sigma_parse<R: vlq_encode::ReadSigmaVlqExt>(r: &mut R) -> Result<Self, SerializationError> {
let op_code = OpCode::sigma_parse(r)?;
match op_code {
OpCode::PROVE_DLOG => {
let p = EcPoint::sigma_parse(r)?;
Ok(SigmaBoolean::ProofOfKnowledge(
SigmaProofOfKnowledgeTree::ProveDlog(ProveDlog::new(p)),
))
}
OpCode::PROVE_DLOG => Ok(SigmaBoolean::ProofOfKnowledge(
SigmaProofOfKnowledgeTree::ProveDlog(ProveDlog::sigma_parse(r)?),
)),
_ => todo!(),
}
}
}

impl SigmaSerializable for ProveDlog {
fn sigma_serialize<W: vlq_encode::WriteSigmaVlqExt>(&self, w: &mut W) -> Result<(), io::Error> {
self.h.sigma_serialize(w)
}

fn sigma_parse<R: vlq_encode::ReadSigmaVlqExt>(r: &mut R) -> Result<Self, SerializationError> {
let p = EcPoint::sigma_parse(r)?;
Ok(ProveDlog::new(p))
}
}

0 comments on commit 7985586

Please sign in to comment.