From f640e4f5027991ef0f66bfb8ae96d4e34944e219 Mon Sep 17 00:00:00 2001 From: hu55a1n1 Date: Thu, 29 Feb 2024 07:11:16 -0800 Subject: [PATCH] Fix PoP(Nonce) verification --- Cargo.lock | 6 +++--- enclaves/quartz/src/server.rs | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 45b39a6..fddca4c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -835,7 +835,7 @@ dependencies = [ [[package]] name = "cw-tee-mtcs" version = "0.1.0" -source = "git+ssh://git@github.com/informalsystems/bisenzone-cw-mvp.git?branch=hu55a1n1/11-use-quartz#e2ce14cb275e9668739b63659535ea721f95b0ff" +source = "git+ssh://git@github.com/informalsystems/bisenzone-cw-mvp.git?branch=hu55a1n1/11-use-quartz#cbf2f52a82247606d700a65d8ddca75b4a769b71" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -2455,7 +2455,7 @@ dependencies = [ [[package]] name = "quartz-cw" version = "0.1.0" -source = "git+ssh://git@github.com/informalsystems/bisenzone-cw-mvp.git?branch=hu55a1n1/11-use-quartz#e2ce14cb275e9668739b63659535ea721f95b0ff" +source = "git+ssh://git@github.com/informalsystems/bisenzone-cw-mvp.git?branch=hu55a1n1/11-use-quartz#cbf2f52a82247606d700a65d8ddca75b4a769b71" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -2532,7 +2532,7 @@ dependencies = [ [[package]] name = "quartz-tee-ra" version = "0.1.0" -source = "git+ssh://git@github.com/informalsystems/bisenzone-cw-mvp.git?branch=hu55a1n1/11-use-quartz#e2ce14cb275e9668739b63659535ea721f95b0ff" +source = "git+ssh://git@github.com/informalsystems/bisenzone-cw-mvp.git?branch=hu55a1n1/11-use-quartz#cbf2f52a82247606d700a65d8ddca75b4a769b71" dependencies = [ "cosmwasm-schema", "cosmwasm-std", diff --git a/enclaves/quartz/src/server.rs b/enclaves/quartz/src/server.rs index ba4c5de..45e2bf5 100644 --- a/enclaves/quartz/src/server.rs +++ b/enclaves/quartz/src/server.rs @@ -16,7 +16,7 @@ use quartz_cw::{ execute::{session_create::SessionCreate, session_set_pub_key::SessionSetPubKey}, instantiate::CoreInstantiate, }, - state::{Config, Nonce}, + state::{Config, Nonce, Session}, }; use quartz_proto::quartz::{ core_server::Core, InstantiateRequest as RawInstantiateRequest, @@ -153,10 +153,10 @@ where ) .map_err(|e: ProofError| Status::internal(e.to_string()))?; - let nonce_onchain: Nonce = serde_json::from_slice(&proof.value).unwrap(); + let session: Session = serde_json::from_slice(&proof.value).unwrap(); let nonce = self.nonce.lock().unwrap(); - if nonce_onchain != *nonce { + if session.nonce() != *nonce { return Err(Status::unauthenticated("nonce mismatch")); }