Skip to content

Commit 55d74d5

Browse files
authored
fix: no statement format (#43)
1 parent ad4a145 commit 55d74d5

File tree

2 files changed

+39
-4
lines changed

2 files changed

+39
-4
lines changed

relay_rpc/src/auth/cacao.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,14 +89,14 @@ impl Cacao {
8989

9090
pub fn caip122_message(&self, chain_name: &str) -> Result<String, CacaoError> {
9191
let mut message = format!(
92-
"{} wants you to sign in with your {} account:\n{}\n",
92+
"{} wants you to sign in with your {} account:\n{}\n\n",
9393
self.p.domain,
9494
chain_name,
9595
self.p.address()?
9696
);
9797

9898
if let Some(statement) = &self.p.statement {
99-
write!(message, "\n{}\n", statement)?;
99+
write!(message, "{}\n", statement)?;
100100
}
101101

102102
write!(

relay_rpc/src/auth/cacao/tests.rs

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ fn verify_success() {
88
"t": "eip4361"
99
},
1010
"p": {
11-
"iss": "did:pkh:eip155:1:0xf457f233ab23f863cabc383ebb37b29d8929a17a",
11+
"iss": "did:pkh:eip155:1:0x262f4f5DC82ad9b803680F07Da7d901D4F71d8D1",
1212
"domain": "http://10.0.2.2:8080",
1313
"aud": "http://10.0.2.2:8080",
1414
"version": "1",
@@ -20,10 +20,45 @@ fn verify_success() {
2020
},
2121
"s": {
2222
"t": "eip191",
23-
"s": "0x1b39982707c70c95f4676e7386052a07b47ecc073b3e9cf47b64b579687d3f68181d48fa9e926ad591ba6954f1a70c597d0772a800bed5fa906384fcd83bcf4f1b"
23+
"s": "0xf2f0e5dc8875ef1e3d40472078b06ebe4af5fc832e464338996fb0d3134cde7613bc36416519e8dd8959655f0e89c6b7a9de55f7c95f43e8d2240f89939ed7171c"
2424
}
2525
} "#;
2626
let cacao: Cacao = serde_json::from_str(cacao_serialized).unwrap();
27+
println!("{}", cacao.siwe_message().unwrap());
28+
let result = cacao.verify();
29+
assert!(result.is_ok());
30+
assert!(result.map_err(|_| false).unwrap());
31+
32+
let identity_key = cacao.p.identity_key();
33+
assert!(identity_key.is_ok());
34+
}
35+
36+
/// Test that we can verify a Cacao with a statement
37+
#[test]
38+
fn verify_success_statement() {
39+
let cacao_serialized = r#"{
40+
"h": {
41+
"t": "eip4361"
42+
},
43+
"p": {
44+
"iss": "did:pkh:eip155:1:0x262f4f5DC82ad9b803680F07Da7d901D4F71d8D1",
45+
"domain": "http://10.0.2.2:8080",
46+
"aud": "http://10.0.2.2:8080",
47+
"statement": "Test statement",
48+
"version": "1",
49+
"nonce": "[B@c3772c7",
50+
"iat": "2023-01-17T12:15:05+01:00",
51+
"resources": [
52+
"did:key:z6MkkG9nM8ksS37sq5mgeoCn5kihLkWANcm9pza5WTkq3tWZ"
53+
]
54+
},
55+
"s": {
56+
"t": "eip191",
57+
"s": "0xafedb7505846dc691a4f3f70266624a91a232d68ec61454f4426e016bcb0483773296097687429c47af82b5bf16324ec4ede13e67aee5b4597c9d34b3af0e3681c"
58+
}
59+
} "#;
60+
let cacao: Cacao = serde_json::from_str(cacao_serialized).unwrap();
61+
println!("{}", cacao.siwe_message().unwrap());
2762
let result = cacao.verify();
2863
assert!(result.is_ok());
2964
assert!(result.map_err(|_| false).unwrap());

0 commit comments

Comments
 (0)