Up to bi_init_customer serializing
This commit is contained in:
parent
574aa693eb
commit
2d08655292
|
@ -11,27 +11,27 @@ use bincode::SizeLimit::Infinite;
|
||||||
use bincode::rustc_serialize::encode;
|
use bincode::rustc_serialize::encode;
|
||||||
use sodiumoxide::crypto::hash::sha512;
|
use sodiumoxide::crypto::hash::sha512;
|
||||||
|
|
||||||
use serde::{Serialize};
|
use serde::{Serialize, Deserialize};
|
||||||
|
|
||||||
#[derive(Copy, Clone, Serialize)]
|
#[derive(Copy, Clone, Serialize, Deserialize)]
|
||||||
pub struct PublicKey {
|
pub struct PublicKey {
|
||||||
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable")]
|
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable", deserialize_with = "serialization_wrappers::deserialize_g_two")]
|
||||||
g: G2,
|
g: G2,
|
||||||
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable")]
|
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable", deserialize_with = "serialization_wrappers::deserialize_g_two")]
|
||||||
h: G2
|
h: G2
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Copy, Clone, Serialize)]
|
#[derive(Copy, Clone, Serialize, Deserialize)]
|
||||||
pub struct Commitment {
|
pub struct Commitment {
|
||||||
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable")]
|
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable", deserialize_with = "serialization_wrappers::deserialize_g_two")]
|
||||||
pub c: G2,
|
pub c: G2,
|
||||||
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable")]
|
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable", deserialize_with = "serialization_wrappers::deserialize_fr")]
|
||||||
pub r: Fr
|
pub r: Fr
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Serialize)]
|
#[derive(Clone, Serialize, Deserialize)]
|
||||||
pub struct CSParams {
|
pub struct CSParams {
|
||||||
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable_vec")]
|
#[serde(serialize_with = "serialization_wrappers::serialize_generic_encodable_vec", deserialize_with = "serialization_wrappers::deserialize_g_two_vec")]
|
||||||
pub pub_bases: Vec<G2>
|
pub pub_bases: Vec<G2>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -701,7 +701,7 @@ pub mod bidirectional {
|
||||||
}
|
}
|
||||||
|
|
||||||
// part of channel state
|
// part of channel state
|
||||||
#[derive(Clone, Serialize)]
|
#[derive(Clone, Serialize, Deserialize)]
|
||||||
pub struct PubKeyMap {
|
pub struct PubKeyMap {
|
||||||
wpk: secp256k1::PublicKey,
|
wpk: secp256k1::PublicKey,
|
||||||
revoke_token: Option<secp256k1::Signature>
|
revoke_token: Option<secp256k1::Signature>
|
||||||
|
@ -1492,6 +1492,8 @@ pub mod ffishim {
|
||||||
|
|
||||||
use bidirectional;
|
use bidirectional;
|
||||||
use clsigs;
|
use clsigs;
|
||||||
|
use commit_scheme;
|
||||||
|
|
||||||
use serde::{Serialize};
|
use serde::{Serialize};
|
||||||
|
|
||||||
use libc::{c_char};
|
use libc::{c_char};
|
||||||
|
@ -1620,7 +1622,7 @@ pub mod ffishim {
|
||||||
|
|
||||||
|
|
||||||
#[no_mangle]
|
#[no_mangle]
|
||||||
pub extern fn ffishim_bidirectional_init_customer(serialized_pp: *mut c_char, serializd_channel: *mut c_char, balance_customer: u32, balance_merchant: u32, serialized_commitment_setup: *mut c_char, serialized_customer_keypair: *mut c_char) -> *mut c_char {
|
pub extern fn ffishim_bidirectional_init_customer(serialized_pp: *mut c_char, serializd_channel: *mut c_char, balance_customer: i32, balance_merchant: i32, serialized_commitment_setup: *mut c_char, serialized_customer_keypair: *mut c_char) -> *mut c_char {
|
||||||
// Deserialize the pp
|
// Deserialize the pp
|
||||||
let bytes_pp = unsafe { CStr::from_ptr(serialized_pp).to_bytes() };
|
let bytes_pp = unsafe { CStr::from_ptr(serialized_pp).to_bytes() };
|
||||||
let name_pp: &str = str::from_utf8(bytes_pp).unwrap(); // make sure the bytes are UTF-8
|
let name_pp: &str = str::from_utf8(bytes_pp).unwrap(); // make sure the bytes are UTF-8
|
||||||
|
|
Loading…
Reference in New Issue