diff --git a/crates/lox-library/src/proto/open_invite.rs b/crates/lox-library/src/proto/open_invite.rs index a818376..45ce347 100644 --- a/crates/lox-library/src/proto/open_invite.rs +++ b/crates/lox-library/src/proto/open_invite.rs @@ -22,7 +22,8 @@ use zkp::CompactProof; use zkp::ProofError; use zkp::Transcript; -use super::super::{{bridge_table, BridgeLine}}; +use super::super::bridge_table; +use super::super::bridge_table::BridgeLine; use super::super::cred; use super::super::dup_filter::SeenType; use super::super::OPENINV_LENGTH; @@ -190,8 +191,7 @@ impl BridgeAuth { // of the bucket id (u32) and the bucket's decryption key ([u8; 16]) let bucket_key = self.bridge_table.keys[bucket_id]; let bucket: Scalar = bridge_table::to_scalar(bucket_id_u32, &bucket_key); - let pre_line = self.bridge_table.decrypt_bucket_id(bucket_id_u32, &bucket_key).unwrap().0; - let bridge_line: BridgeLine = pre_line[0]; + let bridge_line = self.bridge_table.buckets[bucket_id][0]; // Create the level_since attribute (Scalar), which is today's // Julian date @@ -267,7 +267,7 @@ pub fn handle_response( state: State, resp: Response, lox_pub: &IssuerPubKey, -) -> Result<(cred::Lox, bridge_table::BridgeLine), ProofError> { +) -> Result<(cred::Lox, BridgeLine), ProofError> { let A: &RistrettoPoint = &CMZ_A; let B: &RistrettoPoint = &CMZ_B; let Btable: &RistrettoBasepointTable = &CMZ_B_TABLE; @@ -311,16 +311,17 @@ pub fn handle_response( // Decrypt EncQ let Q = resp.EncQ.1 - (state.d * resp.EncQ.0); - Ok((cred::Lox { - P: resp.P, - Q, - id, - bucket: resp.bucket, - trust_level: Scalar::zero(), - level_since: resp.level_since, - invites_remaining: Scalar::zero(), - blockages: Scalar::zero(), - }, - resp.bridge_line, + Ok(( + cred::Lox { + P: resp.P, + Q, + id, + bucket: resp.bucket, + trust_level: Scalar::zero(), + level_since: resp.level_since, + invites_remaining: Scalar::zero(), + blockages: Scalar::zero(), + }, + resp.bridge_line, )) } diff --git a/crates/lox-library/src/tests.rs b/crates/lox-library/src/tests.rs index e681d5e..d2861b8 100644 --- a/crates/lox-library/src/tests.rs +++ b/crates/lox-library/src/tests.rs @@ -141,7 +141,7 @@ fn test_open_invite() { let mut th = TestHarness::new(); // Join an untrusted user - let cred = th.open_invite().0; + let (cred, bridgeline) = th.open_invite(); // Check that we can use the credential to read a bucket let (id, key) = bridge_table::from_scalar(cred.bucket).unwrap(); @@ -150,8 +150,10 @@ fn test_open_invite() { bridge_table::BridgeTable::decrypt_bucket(id, &key, &encbuckets[id as usize]).unwrap(); println!("cred = {:?}", cred); println!("bucket = {:?}", bucket); + println!("bridgeline = {:?}", bridgeline); assert!(bucket.1.is_none()); assert!(th.ba.verify_lox(&cred)); + assert!(bridgeline == bucket.0[0]); } #[test]