Skip to content

Commit 6810443

Browse files
committed
fix: Fix unit tests
1 parent b852353 commit 6810443

File tree

7 files changed

+90
-21
lines changed

7 files changed

+90
-21
lines changed

src/test/java/com/danubetech/dataintegrity/DidBtc1PatchTest.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,4 +76,22 @@ public void testPatch3() throws JsonLDException, GeneralSecurityException, IOExc
7676

7777
assertTrue(verify);
7878
}
79+
80+
@Test
81+
public void testPatch4() throws JsonLDException, GeneralSecurityException, IOException {
82+
83+
JsonLDObject jsonLdObject = JsonLDObject.fromJson(new InputStreamReader(Objects.requireNonNull(DidBtc1PatchTest.class.getResourceAsStream("did-btc1-patch.4.jsonld"))));
84+
jsonLdObject.setDocumentLoader(DataIntegrityContexts.DOCUMENT_LOADER);
85+
86+
JsonLDObject verificationMethod = JsonLDObject.fromJson(new InputStreamReader(Objects.requireNonNull(DidBtc1PatchTest.class.getResourceAsStream("did-btc1-patch.verification-method.4.jsonld"))));
87+
String publicKeyMultibase = (String) verificationMethod.getJsonObject().get("publicKeyMultibase");
88+
byte[] publicKeyBytes = Arrays.copyOfRange(Multibase.decode(publicKeyMultibase), 2, 35);
89+
ECKey publicKey = PublicKeyBytes.bytes_to_secp256k1PublicKey(publicKeyBytes);
90+
91+
PublicKeyVerifier<?> publicKeyVerifier = PublicKeyVerifierFactory.publicKeyVerifierForKey(KeyTypeName.secp256k1, JWSAlgorithm.ES256KS, publicKey);
92+
DataIntegrityProofLdVerifier verifier = new DataIntegrityProofLdVerifier(publicKeyVerifier);
93+
boolean verify = verifier.verify(jsonLdObject);
94+
95+
assertTrue(verify);
96+
}
7997
}

src/test/resources/com/danubetech/dataintegrity/did-btc1-patch.2.jsonld

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,27 +9,27 @@
99
"op": "add",
1010
"path": "/service/3",
1111
"value": {
12-
"id": "did:btc1:k1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54#service-3",
12+
"id": "did:btc1:k1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack#service-3",
1313
"type": "SingletonBeacon",
14-
"serviceEndpoint": "bitcoin:bcrt1qmj7rad0en0tjsvtgdry4nmgyu98wkvne5ecw0e"
14+
"serviceEndpoint": "bitcoin:bcrt1qktf6vtfunylcgg62ltwj60k5rp4kr9h5y7kvyc"
1515
}
1616
}
1717
],
18-
"sourceHash": "6QWx7ozFnaQT9Ho66MqsJG9BF6snseYXRGNQNv44BxcW",
19-
"targetHash": "4zLUMPm47vrp5DZ42gN2QcQr4pprFA3uswx3zns5iBuc",
18+
"sourceHash": "5VyzaSL3x7ccqZD2DBUz6UqxHwSry72acuSBtd9qCeUh",
19+
"targetHash": "4D8WshMpQT5YLe4jL8KKfzAkobkwTSo3B9cuJn3acNoF",
2020
"targetVersionId": 2,
2121
"proof": {
2222
"type": "DataIntegrityProof",
2323
"cryptosuite": "bip340-jcs-2025",
24-
"verificationMethod": "did:btc1:k1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54#initialKey",
24+
"verificationMethod": "did:btc1:k1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack#initialKey",
2525
"proofPurpose": "capabilityInvocation",
26-
"capability": "urn:zcap:root:did%3Abtc1%3Ak1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54",
26+
"capability": "urn:zcap:root:did%3Abtc1%3Ak1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack",
2727
"capabilityAction": "Write",
2828
"@context": [
2929
"https://w3id.org/security/v2",
3030
"https://w3id.org/zcap/v1",
3131
"https://w3id.org/json-ld-patch/v1"
3232
],
33-
"proofValue": "z2nWY2KijLu1hfaGSSjwNFtMV256myt2etfXUpB6Wgt7UKepgmCMSuUxGunV1Rir2xAVcLxfkfmSt6rGm5zTMTy3w"
33+
"proofValue": "z257NSUxcuu4QhuQLviYgBWZJXZ5X2nN1vD9eVQKziFKah9cuiECQ8VQ7pQoxuLVCC8Aez8UziHv8JxTwPSWqFfKi"
3434
}
3535
}

src/test/resources/com/danubetech/dataintegrity/did-btc1-patch.3.jsonld

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,28 +9,28 @@
99
"op": "add",
1010
"path": "/verificationMethod/1",
1111
"value": {
12-
"id": "did:btc1:k1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54#key-1",
12+
"id": "did:btc1:k1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack#key-1",
1313
"type": "Multikey",
14-
"controller": "did:btc1:k1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54",
15-
"publicKeyMultibase": "zQ3shoxRij8DaCaAn2hfuZrkKgrWKAL8dC8yvUJY1tjDp5HL5"
14+
"controller": "did:btc1:k1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack",
15+
"publicKeyMultibase": "zQ3shcZoWPNt46dp9o7iCSjMrXrFTkftKezEGJpZdQNzxfkn3"
1616
}
1717
}
1818
],
19-
"sourceHash": "4zLUMPm47vrp5DZ42gN2QcQr4pprFA3uswx3zns5iBuc",
20-
"targetHash": "EoJa8o4VJzybm68pYesiTuBMarwaLkYoT1fTSWiZedtX",
19+
"sourceHash": "4D8WshMpQT5YLe4jL8KKfzAkobkwTSo3B9cuJn3acNoF",
20+
"targetHash": "GWsfxFqgMJs29FakCXw7veGeUh1tE83GHGH4tyNLKdEA",
2121
"targetVersionId": 3,
2222
"proof": {
2323
"type": "DataIntegrityProof",
2424
"cryptosuite": "bip340-jcs-2025",
25-
"verificationMethod": "did:btc1:k1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54#initialKey",
25+
"verificationMethod": "did:btc1:k1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack#initialKey",
2626
"proofPurpose": "capabilityInvocation",
27-
"capability": "urn:zcap:root:did%3Abtc1%3Ak1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54",
27+
"capability": "urn:zcap:root:did%3Abtc1%3Ak1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack",
2828
"capabilityAction": "Write",
2929
"@context": [
3030
"https://w3id.org/security/v2",
3131
"https://w3id.org/zcap/v1",
3232
"https://w3id.org/json-ld-patch/v1"
3333
],
34-
"proofValue": "z5iSt7bBZscy8BZ2LNU6Jm4DwAQArXksFroQwxX8vFKdkgeEYTW4BQR7WWEZX8Q7wE15D3m8GXQr7jEE7LYqmgoty"
34+
"proofValue": "z2yCtyRxcMH6XDmGNtzNUNaQf6AGjm1nPQjUtYG6bf6A4mmac6dCSw3pZdpEZGYfdSHHndyTVpfAvqDkjsRpPHnuf"
3535
}
3636
}
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
{
2+
"@context": [
3+
"https://w3id.org/security/v2",
4+
"https://w3id.org/zcap/v1",
5+
"https://w3id.org/json-ld-patch/v1"
6+
],
7+
"patch": [
8+
{
9+
"op": "add",
10+
"path": "/service/1",
11+
"value": {
12+
"id": "did:btc1:x1q20n602dgh7awm6akhgne0mjcmfpnjpc9jrqnrzuuexglrmklzm6u98hgvp#service-1",
13+
"type": "SingletonBeacon",
14+
"serviceEndpoint": "bitcoin:bcrt1qser62ssp8n49yh5famt93m7tdgwqv76r3j9d5n"
15+
}
16+
},
17+
{
18+
"op": "add",
19+
"path": "/verificationMethod/2",
20+
"value": {
21+
"id": "did:btc1:x1q20n602dgh7awm6akhgne0mjcmfpnjpc9jrqnrzuuexglrmklzm6u98hgvp#key-2",
22+
"type": "Multikey",
23+
"controller": "did:btc1:x1q20n602dgh7awm6akhgne0mjcmfpnjpc9jrqnrzuuexglrmklzm6u98hgvp",
24+
"publicKeyMultibase": "zQ3shXtnYKjkm5a17b65bJ63TdqqP6cLMC6EEubVRvMtoR8DY"
25+
}
26+
}
27+
],
28+
"sourceHash": "8Kpts1zHd1xxCEbXiL53phu8Xts9DUUnXHKvTHhM4m3u",
29+
"targetHash": "8PjNUsm7aytqVC1BpcJE7WFmYobxRtqpsP4GPoLRW1s7",
30+
"targetVersionId": 2,
31+
"proof": {
32+
"type": "DataIntegrityProof",
33+
"cryptosuite": "bip340-jcs-2025",
34+
"verificationMethod": "did:btc1:x1q20n602dgh7awm6akhgne0mjcmfpnjpc9jrqnrzuuexglrmklzm6u98hgvp#key-1",
35+
"proofPurpose": "capabilityInvocation",
36+
"capability": "urn:zcap:root:did%3Abtc1%3Ax1q20n602dgh7awm6akhgne0mjcmfpnjpc9jrqnrzuuexglrmklzm6u98hgvp",
37+
"capabilityAction": "Write",
38+
"@context": [
39+
"https://w3id.org/security/v2",
40+
"https://w3id.org/zcap/v1",
41+
"https://w3id.org/json-ld-patch/v1"
42+
],
43+
"proofValue": "z3SvqrVEjVur24zh1vnYHB3SxQPMvxXP1XMxjtqBptezKASXtUUTsotQh2rabGLDyBf8riJkcL9wbHkZjDRSYRVYC"
44+
}
45+
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
2-
"id": "did:btc1:k1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54#initialKey",
2+
"id": "did:btc1:k1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack#initialKey",
33
"type": "Multikey",
4-
"controller": "did:btc1:k1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54",
5-
"publicKeyMultibase": "zQ3shf8sfBZB9DWwG2Qkc5vhmruKMWbQsS8gRhezr5axytxv6"
4+
"controller": "did:btc1:k1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack",
5+
"publicKeyMultibase": "zQ3shrDPUokmEsCT3Q9aRwzonncPLD6HBwSELReoUdHbgw19w"
66
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
2-
"id": "did:btc1:k1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54#initialKey",
2+
"id": "did:btc1:k1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack#initialKey",
33
"type": "Multikey",
4-
"controller": "did:btc1:k1qgpswh5adnhrvk9vpppgcx08k4eek75c52dr9pcvu2zt5zgakartekc4uzg54",
5-
"publicKeyMultibase": "zQ3shf8sfBZB9DWwG2Qkc5vhmruKMWbQsS8gRhezr5axytxv6"
4+
"controller": "did:btc1:k1qgp6haekj3w5zgk56h92juynjl4ag4pt2p9wl4ajwu7yhklyp0ngcfskwzack",
5+
"publicKeyMultibase": "zQ3shrDPUokmEsCT3Q9aRwzonncPLD6HBwSELReoUdHbgw19w"
66
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"id": "did:btc1:x1q20n602dgh7awm6akhgne0mjcmfpnjpc9jrqnrzuuexglrmklzm6u98hgvp#key-1",
3+
"type": "Multikey",
4+
"controller": "did:btc1:x1q20n602dgh7awm6akhgne0mjcmfpnjpc9jrqnrzuuexglrmklzm6u98hgvp",
5+
"publicKeyMultibase": "zQ3shNmrN4M1vcMtT57dfyYvVPhSVnzo8QUgcz4E5ZzJSzi4w"
6+
}

0 commit comments

Comments
 (0)