commit 25905212abe4b8d5880c40a4c93363a908d02d5c parent be1aadc3d2380475cc47ea19022d7dc761fa3a50 Author: Mikolai Gütschow <mikolai.guetschow@tu-dresden.de> Date: Mon, 11 May 2026 15:37:08 +0200 test-vectors: add refresh/link Diffstat:
| M | Makefile | | | 6 | +++--- |
| M | draft-guetschow-taler-protocol.md | | | 16 | ---------------- |
| M | draft-guetschow-taler-protocol.xml | | | 1882 | +++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------- |
| M | test-vectors/test-case-1.md | | | 815 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------- |
4 files changed, 1849 insertions(+), 870 deletions(-)
diff --git a/Makefile b/Makefile @@ -1,6 +1,6 @@ all: txt html -draft-guetschow-taler-protocol.xml: draft-guetschow-taler-protocol.md +draft-guetschow-taler-protocol.xml: draft-guetschow-taler-protocol.md $(wildcard test-vectors/*) kdrfc -c draft-guetschow-taler-protocol.md mv draft-guetschow-taler-protocol.v2v3.xml draft-guetschow-taler-protocol.xml @@ -8,5 +8,4 @@ html: draft-guetschow-taler-protocol.xml xml2rfc --html draft-guetschow-taler-protocol.xml txt: draft-guetschow-taler-protocol.xml - xml2rfc draft-guetschow-taler-protocol.xml - + xml2rfc draft-guetschow-taler-protocol.xml +\ No newline at end of file diff --git a/draft-guetschow-taler-protocol.md b/draft-guetschow-taler-protocol.md @@ -1418,22 +1418,6 @@ Big numbers for RSA are represented in big-endian byte order (most significant b {::include ./test-vectors/test-case-1.md} -### Refund {#tc1-refund} - -### Refresh {#tc1-refresh} - -### Link {#tc1-link} - -### Account Creation {#tc1-w2w-account} - -### Push Payment {#tc1-w2w-push} - -### Pull Payment {#tc1-w2w-pull} - -### Recoup Withdrawal {#tc1-withdraw-recoup} - -### Recoup Refresh {#tc1-refresh-recoup} - ## Test Case 2 # Change log diff --git a/draft-guetschow-taler-protocol.xml b/draft-guetschow-taler-protocol.xml @@ -24,7 +24,7 @@ <email>mikolai.guetschow@tu-dresden.de</email> </address> </author> - <date year="2026" month="May" day="08"/> + <date year="2026" month="May" day="11"/> <workgroup>independent</workgroup> <keyword>taler</keyword> <keyword>cryptography</keyword> @@ -1396,195 +1396,273 @@ Big numbers for RSA are represented in big-endian byte order (most significant b <section anchor="test-case-1"> <name>Test Case 1</name> <sourcecode type="pseudocode"><![CDATA[ -exchange.master_pub = 3cb5e9823db2b335fdb3f284ae960e56be8b081c6819b8b0217f38b095 - b4313b -exchange.priv = 1bf4149fa644b3c7f2bf02da4703ff2de3fa160dce0c750eabfa0f7ac70a2442 -exchange.pub = 4c130aae3246831808a162e2d4330de394e5f0d7dff75a80f3fa045b1a43eabb -exchange.url = https://exchange.taler.example.org/ -denom₀.pub.n = ba42b9e75e48847bab175ed4797384d68a430fd849a914aa68438349743b2728 - d9ca97709c15d5c81c7d9d11c84ec9c60cec03aed4b36ad153768eb30cf98454 - 74e97ee9d7475ebc926d87135d56926b7df1cea3ec38897a74bc3e245e59ffa7 - 6e5aff2c2f2eb84e7133a879f4229221f91c7bddf96088e4020e16444d94acc3 - 0708069f4a1bde3dcbead32e3916a9f6722adb3d63bb9075dde49258fbd28a9a - 09251fa08b64faee53a506b9f637136c72af7382b9243fa8996ad4d72cc1b05c - fb45271cb3187b4eeec0b5f9e847cdcc0c3ddef9787164a1aee7e4e1ee6de1b9 - 5282c1ff646aa70aabd1df0003f75d3585e9e740916cee4f7bca0cd82f72104d -denom₀.pub.e = 010001 -denom₀.priv.d = 07bc432fbc6eeb0f9ec2a4f5d2886d65228f57ee5ddac788af355493bd9fc247 - d449b161e41d95080f44d93bd6938d162c4db5f6720f7479768ba73000f330df - 780e856e8d3a01d1778c546e85b3157820de24bc9290238782271a3694f38c66 - 45f3420331ff70f8930377f4fea25beaccc775ce796f9ca7c97d0fc82ce7a688 - 0dd437e6b30695ca51a58f0239aef7481932550ce61b5b085313cb888c893cc1 - bbef6b47c607e1189f8cccb04eeb9f87b9e53f414850f8b923ce83e2859c0434 - a3d14d861e864fd5ce701af11611398a73515b7056b2828e564cdec6052bdbb4 - 3ff435178577198de0676e5d378ade9b31844e81e2218ba3b3aec5bff9a26621 -denom₀.hash = 8653090e3f3f5efac9770a5dd0c97813940c191c9fa1713367f8bb1279b1e3d2 - 7f32d16ea7699501e5fc4d176725d76ab0307f9bdf9d0d263c2256a7f1c63143 -denom₀.value = KUDOS:5.12 -denom₀.fee_withdraw = KUDOS:0.01 -denom₀.fee_deposit = KUDOS:0.01 -denom₀.fee_refresh = KUDOS:0.01 -denom₀.fee_refund = KUDOS:0.01 -denom₁.pub.n = d5455fb79449df7bf548e384d5201d75f4f7697ef9b8051eb8536f66783e70ca - 2d524fefa6840c1f87d9d881486815d5ace866a32269b05bdba7ff6024811c19 - 456026b0a59da4db96f58729d286c90be8cd9cbf575d346202b43282d601b575 - 1ff77a88a0742a692349a0e3fa8ed5518fc5378fcf434929b541c942573abef3 - 10b87776e976e81cf650a04399fabddbde677163918250c4d45f5e90ee7539de - 500a8e915be1d5f17d79cb9585ccdf5dba42ef53c24eae7d7c93c4e0a4327882 - 45b7c76a587f0ac6889d30389531362d51c2ad65cb1e28b4ad4cc97fcd2a4aed - d6612ae8888eb2dbc4de0cf30f46a43b76cc8c3245eefe013195a237f02d13b5 -denom₁.pub.e = 010001 -denom₁.priv.d = 5a520e0e663bbeecf55d5015d258ce8145247ec62aa5d76d422cfbb1cedccad1 - a4ce06527d17d1368d47221ce678463eff02516d6746914ce5c2c9318364366d - 31675e1b539866d8249f89059a4640e0cd503ec0fe13d7fa6620c07f8e789ccb - a4a51f7cbb4f5722bdb211f45b09a0a7f11659c88ac37939b3accfba4bccf24e - a260e21aaec0dfbf857178438986e963e9e356277c3badc34fc91b705d9956b4 - bedc0947d65924d7dd31e564de798eb06837380caed6813d3761d119901c5540 - eb74c3cb674fdfd64b67d78ebd40de0cafd53c038a0a8e87890b953b8b94a977 - 1a6efb3142ca02db873053f8d1de2082db4366fc072aafc723c036a2fb999605 -denom₁.hash = 1de6052bce12feaa2d26e3bba1789b0c2295028279f3eaff8e1345448ba05390 - cff49656ed72a1f7ef6ee2c4a80f80eefa0d0f906e74305b0215c4194ab1c7b8 -denom₁.value = KUDOS:2.56 -denom₁.fee_withdraw = KUDOS:0.01 -denom₁.fee_deposit = KUDOS:0.01 -denom₁.fee_refresh = KUDOS:0.01 -denom₁.fee_refund = KUDOS:0.01 -denom₂.pub.n = d1320993658042f995f09ed66ad2283e457a1f44cad96f1cf5a6299ac93d6172 - 4a7448d70e56a38666ec66352a5810ca3e544d957dedb5789e135589fcb8b139 - c65a2f70d7c421dfd4e27cf38d463074d286730be23d446fc07811519b068346 - b28b86b94acff35524eb62436852714c92f03b0bac21bb6bf727734be7871b70 - 2f928c3ced4bad9ba2d49cec6a86d1019181c65c16abf7b391f103c90c3eaaaa - 9d5298a4a60c71bdaf0f08246327a62399bf4c424c1ed7718cb5df178daa9710 - ec9d098e99ed0456de2fbaf7865ba47931c52d1cac78cacc1bc451782587487a - 6189addfe5dcdf6f190f28816707e3d1e104b5a1f7a570b75c1951588f3289ef -denom₂.pub.e = 010001 -denom₂.priv.d = 311849a8066faa083218b4e6444e8af44650e94ab7427d31b232eb5bb0b3cf8d - 478cefd54cbfa783f0deb503f02a97d226fb98f3a708a508a82c886c285bddf7 - dda5a7b19769a7bb84961cd5f9c749b2f8ff65bb99be6033cbdb41d1418d2f3c - e5c519fa9d649d4a53ae4c32dea64e81b6905b831b44155cbab5cef8b6defde0 - 9295662cdf2189f2763ede05bea0acb707b9b6b087dcebb9ca81f1c2785d6560 - f93bf1a1860676cccceb079c22b48b9fdef68e1d286164f132ffddeab29fa7a7 - 04e1bc3f9f5e28c39675f17136aed8542aa4470a14a7380a4016b21d43ef5b9e - 2b241ced017c54247c12fd6beccb7bd356820b0246553c751b3e071468c2efdd -denom₂.hash = 4f8c487d21ffb5bb7571f5d66bcf6f93f4f5c043df5483669383128700064e86 - 37afecd6029cb36dfc5a60d20ff3112ff1b5ad1b53c78cf39ad13cd2531ba24e -denom₂.value = KUDOS:0.16 -denom₂.fee_withdraw = KUDOS:0.01 -denom₂.fee_deposit = KUDOS:0.01 -denom₂.fee_refresh = KUDOS:0.01 -denom₂.fee_refund = KUDOS:0.01 -denom₃.pub.n = bddb1806b7b7663d94bedbeccbb515987fcae457b5920d85b8485edac6ab0e73 - e6991780e9f1fa6f88e500e0ccd9eeb80d8e3b66289a7cf1b25bd56d05081d58 - 3864ad225a36f8d38391782a85bfe320d439443e8ea19f555edb36fcb58af81c - a5168ca7c42dda68f191bd1587b4da27703384f2aad300a043549c67fc6defd9 - 8bd1074b3bab1bc0d89b87d81f8a1f555a3b4ce2b4ca7b0b1d8f446fa93258db - 511cc3bc2ff62871cb4c746f6806d0b839db8cc560da06eb5619d9d42309a771 - 61373708db18e453ff0a1d6f63281c54ffacada7c8bf5ca7281ffe7e2e5be03f - c006c064d820f719e672429628837399a565dd9d70f6e9ed91e1eb0567978015 -denom₃.pub.e = 010001 -denom₃.priv.d = 1e3370867d0a0d1705b18e0d848d73f7d422f920e4aec23cea7184b9463a26c1 - e9704d4cacaa5952b8683eb403e78a5c628cfa1b9da0e44d9462f1b7f66c1c88 - 3b419f484ed3de257e113c1828e4e5e3592f1a3bddf78d7f88927ee99892c336 - 2ca2c226dbd90971d68a54404d069d5f5704b304e131fb3058959338781a2039 - 93804f64def2980210dc3f4e77c1207400e922032952cb154bb1b776d164cce6 - 9e418844f2f4b20850c0a23d30059362edadfe00fbfa04b6833fc4606deda441 - eb345c49b52d91063da7c55ecea7b32e99a49a823264955803ce3ee220a2cc64 - cd4321e18ae28bb1071c7746e8a3d69adef5113e21a01cab6809668793c2a94f -denom₃.hash = 96524d30b4398d0d5bbe2eff902c4df1cc8286629d149bee0530edcfb361c468 - ea5fdb1b41d538223c8b3fe1a974951bb3290bbfffc6f10cbf0326585041ca4d -denom₃.value = KUDOS:0.08 -denom₃.fee_withdraw = KUDOS:0.01 -denom₃.fee_deposit = KUDOS:0.01 -denom₃.fee_refresh = KUDOS:0.01 -denom₃.fee_refund = KUDOS:0.01 -merchant.priv = 7607240acc4563ebe2e38e76eaf61d74160d71c9a6670ae2e5147ce848767037 -merchant.pub = f54d646619723f7fa2ce79267953fdd8654cfcd0f2cfc0c5e880e3e0d0ab19f0 -merchant.url = https://merchant.taler.example.org/ -merchant.payto = payto://x-taler-bank/bank.taler.example.org/merchant +exchange.master_pub = 3cb5e9823db2b335fdb3f284ae960e56be8b081c6819b8 + b0217f38b095b4313b +exchange.priv = 1bf4149fa644b3c7f2bf02da4703ff2de3fa160dce0c75 + 0eabfa0f7ac70a2442 +exchange.pub = 4c130aae3246831808a162e2d4330de394e5f0d7dff75a + 80f3fa045b1a43eabb +exchange.url = https://exchange.taler.example.org/ +denom₀.pub.n = ba42b9e75e48847bab175ed4797384d68a430fd849a914 + aa68438349743b2728d9ca97709c15d5c81c7d9d11c84e + c9c60cec03aed4b36ad153768eb30cf9845474e97ee9d7 + 475ebc926d87135d56926b7df1cea3ec38897a74bc3e24 + 5e59ffa76e5aff2c2f2eb84e7133a879f4229221f91c7b + ddf96088e4020e16444d94acc30708069f4a1bde3dcbea + d32e3916a9f6722adb3d63bb9075dde49258fbd28a9a09 + 251fa08b64faee53a506b9f637136c72af7382b9243fa8 + 996ad4d72cc1b05cfb45271cb3187b4eeec0b5f9e847cd + cc0c3ddef9787164a1aee7e4e1ee6de1b95282c1ff646a + a70aabd1df0003f75d3585e9e740916cee4f7bca0cd82f + 72104d +denom₀.pub.e = 010001 +denom₀.priv.d = 07bc432fbc6eeb0f9ec2a4f5d2886d65228f57ee5ddac7 + 88af355493bd9fc247d449b161e41d95080f44d93bd693 + 8d162c4db5f6720f7479768ba73000f330df780e856e8d + 3a01d1778c546e85b3157820de24bc9290238782271a36 + 94f38c6645f3420331ff70f8930377f4fea25beaccc775 + ce796f9ca7c97d0fc82ce7a6880dd437e6b30695ca51a5 + 8f0239aef7481932550ce61b5b085313cb888c893cc1bb + ef6b47c607e1189f8cccb04eeb9f87b9e53f414850f8b9 + 23ce83e2859c0434a3d14d861e864fd5ce701af1161139 + 8a73515b7056b2828e564cdec6052bdbb43ff435178577 + 198de0676e5d378ade9b31844e81e2218ba3b3aec5bff9 + a26621 +denom₀.hash = 8653090e3f3f5efac9770a5dd0c97813940c191c9fa171 + 3367f8bb1279b1e3d27f32d16ea7699501e5fc4d176725 + d76ab0307f9bdf9d0d263c2256a7f1c63143 +denom₀.value = KUDOS:5.12 +denom₀.fee_withdraw = KUDOS:0.01 +denom₀.fee_deposit = KUDOS:0.01 +denom₀.fee_refresh = KUDOS:0.01 +denom₀.fee_refund = KUDOS:0.01 +denom₁.pub.n = d5455fb79449df7bf548e384d5201d75f4f7697ef9b805 + 1eb8536f66783e70ca2d524fefa6840c1f87d9d8814868 + 15d5ace866a32269b05bdba7ff6024811c19456026b0a5 + 9da4db96f58729d286c90be8cd9cbf575d346202b43282 + d601b5751ff77a88a0742a692349a0e3fa8ed5518fc537 + 8fcf434929b541c942573abef310b87776e976e81cf650 + a04399fabddbde677163918250c4d45f5e90ee7539de50 + 0a8e915be1d5f17d79cb9585ccdf5dba42ef53c24eae7d + 7c93c4e0a432788245b7c76a587f0ac6889d3038953136 + 2d51c2ad65cb1e28b4ad4cc97fcd2a4aedd6612ae8888e + b2dbc4de0cf30f46a43b76cc8c3245eefe013195a237f0 + 2d13b5 +denom₁.pub.e = 010001 +denom₁.priv.d = 5a520e0e663bbeecf55d5015d258ce8145247ec62aa5d7 + 6d422cfbb1cedccad1a4ce06527d17d1368d47221ce678 + 463eff02516d6746914ce5c2c9318364366d31675e1b53 + 9866d8249f89059a4640e0cd503ec0fe13d7fa6620c07f + 8e789ccba4a51f7cbb4f5722bdb211f45b09a0a7f11659 + c88ac37939b3accfba4bccf24ea260e21aaec0dfbf8571 + 78438986e963e9e356277c3badc34fc91b705d9956b4be + dc0947d65924d7dd31e564de798eb06837380caed6813d + 3761d119901c5540eb74c3cb674fdfd64b67d78ebd40de + 0cafd53c038a0a8e87890b953b8b94a9771a6efb3142ca + 02db873053f8d1de2082db4366fc072aafc723c036a2fb + 999605 +denom₁.hash = 1de6052bce12feaa2d26e3bba1789b0c2295028279f3ea + ff8e1345448ba05390cff49656ed72a1f7ef6ee2c4a80f + 80eefa0d0f906e74305b0215c4194ab1c7b8 +denom₁.value = KUDOS:2.56 +denom₁.fee_withdraw = KUDOS:0.01 +denom₁.fee_deposit = KUDOS:0.01 +denom₁.fee_refresh = KUDOS:0.01 +denom₁.fee_refund = KUDOS:0.01 +denom₂.pub.n = d1320993658042f995f09ed66ad2283e457a1f44cad96f + 1cf5a6299ac93d61724a7448d70e56a38666ec66352a58 + 10ca3e544d957dedb5789e135589fcb8b139c65a2f70d7 + c421dfd4e27cf38d463074d286730be23d446fc0781151 + 9b068346b28b86b94acff35524eb62436852714c92f03b + 0bac21bb6bf727734be7871b702f928c3ced4bad9ba2d4 + 9cec6a86d1019181c65c16abf7b391f103c90c3eaaaa9d + 5298a4a60c71bdaf0f08246327a62399bf4c424c1ed771 + 8cb5df178daa9710ec9d098e99ed0456de2fbaf7865ba4 + 7931c52d1cac78cacc1bc451782587487a6189addfe5dc + df6f190f28816707e3d1e104b5a1f7a570b75c1951588f + 3289ef +denom₂.pub.e = 010001 +denom₂.priv.d = 311849a8066faa083218b4e6444e8af44650e94ab7427d + 31b232eb5bb0b3cf8d478cefd54cbfa783f0deb503f02a + 97d226fb98f3a708a508a82c886c285bddf7dda5a7b197 + 69a7bb84961cd5f9c749b2f8ff65bb99be6033cbdb41d1 + 418d2f3ce5c519fa9d649d4a53ae4c32dea64e81b6905b + 831b44155cbab5cef8b6defde09295662cdf2189f2763e + de05bea0acb707b9b6b087dcebb9ca81f1c2785d6560f9 + 3bf1a1860676cccceb079c22b48b9fdef68e1d286164f1 + 32ffddeab29fa7a704e1bc3f9f5e28c39675f17136aed8 + 542aa4470a14a7380a4016b21d43ef5b9e2b241ced017c + 54247c12fd6beccb7bd356820b0246553c751b3e071468 + c2efdd +denom₂.hash = 4f8c487d21ffb5bb7571f5d66bcf6f93f4f5c043df5483 + 669383128700064e8637afecd6029cb36dfc5a60d20ff3 + 112ff1b5ad1b53c78cf39ad13cd2531ba24e +denom₂.value = KUDOS:0.16 +denom₂.fee_withdraw = KUDOS:0.01 +denom₂.fee_deposit = KUDOS:0.01 +denom₂.fee_refresh = KUDOS:0.01 +denom₂.fee_refund = KUDOS:0.01 +denom₃.pub.n = bddb1806b7b7663d94bedbeccbb515987fcae457b5920d + 85b8485edac6ab0e73e6991780e9f1fa6f88e500e0ccd9 + eeb80d8e3b66289a7cf1b25bd56d05081d583864ad225a + 36f8d38391782a85bfe320d439443e8ea19f555edb36fc + b58af81ca5168ca7c42dda68f191bd1587b4da27703384 + f2aad300a043549c67fc6defd98bd1074b3bab1bc0d89b + 87d81f8a1f555a3b4ce2b4ca7b0b1d8f446fa93258db51 + 1cc3bc2ff62871cb4c746f6806d0b839db8cc560da06eb + 5619d9d42309a77161373708db18e453ff0a1d6f63281c + 54ffacada7c8bf5ca7281ffe7e2e5be03fc006c064d820 + f719e672429628837399a565dd9d70f6e9ed91e1eb0567 + 978015 +denom₃.pub.e = 010001 +denom₃.priv.d = 1e3370867d0a0d1705b18e0d848d73f7d422f920e4aec2 + 3cea7184b9463a26c1e9704d4cacaa5952b8683eb403e7 + 8a5c628cfa1b9da0e44d9462f1b7f66c1c883b419f484e + d3de257e113c1828e4e5e3592f1a3bddf78d7f88927ee9 + 9892c3362ca2c226dbd90971d68a54404d069d5f5704b3 + 04e131fb3058959338781a203993804f64def2980210dc + 3f4e77c1207400e922032952cb154bb1b776d164cce69e + 418844f2f4b20850c0a23d30059362edadfe00fbfa04b6 + 833fc4606deda441eb345c49b52d91063da7c55ecea7b3 + 2e99a49a823264955803ce3ee220a2cc64cd4321e18ae2 + 8bb1071c7746e8a3d69adef5113e21a01cab6809668793 + c2a94f +denom₃.hash = 96524d30b4398d0d5bbe2eff902c4df1cc8286629d149b + ee0530edcfb361c468ea5fdb1b41d538223c8b3fe1a974 + 951bb3290bbfffc6f10cbf0326585041ca4d +denom₃.value = KUDOS:0.08 +denom₃.fee_withdraw = KUDOS:0.01 +denom₃.fee_deposit = KUDOS:0.01 +denom₃.fee_refresh = KUDOS:0.01 +denom₃.fee_refund = KUDOS:0.01 +merchant.priv = 7607240acc4563ebe2e38e76eaf61d74160d71c9a6670a + e2e5147ce848767037 +merchant.pub = f54d646619723f7fa2ce79267953fdd8654cfcd0f2cfc0 + c5e880e3e0d0ab19f0 +merchant.url = https://merchant.taler.example.org/ +merchant.payto = payto://x-taler-bank/bank.taler.example.org/merchant ]]></sourcecode> <section anchor="tc1-withdraw"> <name>Withdrawal</name> <sourcecode type="pseudocode"><![CDATA[ (W1) reserve key generation (wallet) -reserve.priv = d9641dab5c7f2474573871c25cae2f6c8924ace4157a56d128b1432e55a6c6ba -reserve.pub = ec8ad5e4c6abcf4d0d597f0066a0e3ea0370d221973e06e73f4287148cb93c38 +reserve.priv = d9641dab5c7f2474573871c25cae2f6c8924ace4157a56 + d128b1432e55a6c6ba +reserve.pub = ec8ad5e4c6abcf4d0d597f0066a0e3ea0370d221973e06 + e73f4287148cb93c38 ]]></sourcecode> <sourcecode type="pseudocode"><![CDATA[ (W2) coin generation and blinding (wallet) -batch_seed = 466431296486ed9cd71fc207254820a2c4a85aeb0b2041494f8bf1f8cd30f113 -coin_seed₀ = 88899daa409b8c4c4a91c8e39030d247d00b292eff952e36067fbe33f2d7ce48 -coin_seed₁ = f5be0b8790719072c7043c257f2c114cd8cb45ea5d98c4aa25d9025f45f1caeb -blind_secret₀ = a3cbe2b0babf5bdfb98f45804acf63225c16e09be1677f705393df3f5de98ebf -blind_secret₁ = 8ea6335ed3ff8a41f9fae95e9fd87382be402d6c26ef972381dee6b3c1e9d775 -coin₀.priv = a5a38bb23a9f36564f9d4e566cdd7e3521b04f8ea4175da726ac4e3ac540b485 -coin₁.priv = ae98c5207fe31e20a7b7a8677b780c6735ce69df32d3085d504010f23c59064a -coin₀.pub = afbdf99f1a794add25bad59c9a3f442714e166adc99c57db991947669a36b185 -coin₁.pub = aa7118596b1adf89543e9afcf2925e516a782eed9d75c8abc4a470e7efdd7fe4 -planchet₀ = 64ede0cf40a952b95af4b09b22c6fd27a1ff6d0ae3920ea03fe14a8b547f1e14 - a2eea98443e7aa092075f6585103fb06c1d68fb4616bf33ae30a207e51840f1a - e655a734184a73d804df42650ce296954c9b61e249486468f7fda8a74f85ec6c - cdb34a66819fbeaf846b10087ffaf8e734428a907b96c6a112f8f943b3a8d554 - 55c01b0daf55456acf0715874ff90fba45b265e2021a70997100fb18bfbef822 - c8475820b4855f141730751bcfad2e7eb46dd6c6a400a8a6a98486c4a2bce4d3 - 407a0d0ba612faebb49428ba3a1986eddadb04b6790fbb7bd27cc0bd98341c60 - ec5b980275202aedd4b0cf3b7ee1732c67c84db4b30b60b551cbf849222c60e1 -planchet₁ = 41f8a6622c99b6a9c30d52d19fc2c20a39a481219de4b0f3e7f604efed5d9625 - 54ea13255785d10a037e14abd75d80a0aa9861df9d80a051c418ff197e68bd0e - ee61e6fd5d3214633734659e8bbd7dd2fe566bd41c537a5759bad9bbca6b2eb7 - e3217e7d3cbefff192d83bd0527dbe0eff56df0b2e2062670d2873ca7766a7c1 - 255e6fcf2c37e95de19fcad244f3986bab45c0a3aca726fc682455ea1166a238 - 9152d7a67d181f035de6bdb97633888f0594c2f63dd3965134372507faf84f75 - 3759abd662d4c7e8df7e01149ff44da3499ed49406d9398e86c4abf12a1f57f3 - 8002115ef7283e4d5422b41c752a0cce8c2c1a9b84e109b4554fc1150ef578b9 -h_planchet₀ = 888da42dbf4897a5d6d9420b827e340c74c0b0e973e140ad1c7b9abfc400a9ec - 5a86b3185e4c656dbe8e01125604616de83fa28910fae513d016f56c3ca94eb4 -h_planchet₁ = f20015bbe0147313e59f9e64ee9e836c192b5d504dbd3328fcfce41fbe9310d6 - aa96d91fdd77599c122cc5390ad7cb86d2c6d4261bd5950e7ec0f86959613841 -sig = 2ae0027dd4a196c4741d60e3e7ff933d7374fa5534d15f1cc2e96e9ab3392894 - c65ab6a0af31ccdb395db5c526770077642502e27d4619d385a91dd13854e706 +batch_seed = 466431296486ed9cd71fc207254820a2c4a85aeb0b2041 + 494f8bf1f8cd30f113 +coin_seed₀ = 88899daa409b8c4c4a91c8e39030d247d00b292eff952e + 36067fbe33f2d7ce48 +coin_seed₁ = f5be0b8790719072c7043c257f2c114cd8cb45ea5d98c4 + aa25d9025f45f1caeb +blind_secret₀ = a3cbe2b0babf5bdfb98f45804acf63225c16e09be1677f + 705393df3f5de98ebf +blind_secret₁ = 8ea6335ed3ff8a41f9fae95e9fd87382be402d6c26ef97 + 2381dee6b3c1e9d775 +coin₀.priv = a5a38bb23a9f36564f9d4e566cdd7e3521b04f8ea4175d + a726ac4e3ac540b485 +coin₁.priv = ae98c5207fe31e20a7b7a8677b780c6735ce69df32d308 + 5d504010f23c59064a +coin₀.pub = afbdf99f1a794add25bad59c9a3f442714e166adc99c57 + db991947669a36b185 +coin₁.pub = aa7118596b1adf89543e9afcf2925e516a782eed9d75c8 + abc4a470e7efdd7fe4 +planchet₀ = 64ede0cf40a952b95af4b09b22c6fd27a1ff6d0ae3920e + a03fe14a8b547f1e14a2eea98443e7aa092075f6585103 + fb06c1d68fb4616bf33ae30a207e51840f1ae655a73418 + 4a73d804df42650ce296954c9b61e249486468f7fda8a7 + 4f85ec6ccdb34a66819fbeaf846b10087ffaf8e734428a + 907b96c6a112f8f943b3a8d55455c01b0daf55456acf07 + 15874ff90fba45b265e2021a70997100fb18bfbef822c8 + 475820b4855f141730751bcfad2e7eb46dd6c6a400a8a6 + a98486c4a2bce4d3407a0d0ba612faebb49428ba3a1986 + eddadb04b6790fbb7bd27cc0bd98341c60ec5b98027520 + 2aedd4b0cf3b7ee1732c67c84db4b30b60b551cbf84922 + 2c60e1 +planchet₁ = 41f8a6622c99b6a9c30d52d19fc2c20a39a481219de4b0 + f3e7f604efed5d962554ea13255785d10a037e14abd75d + 80a0aa9861df9d80a051c418ff197e68bd0eee61e6fd5d + 3214633734659e8bbd7dd2fe566bd41c537a5759bad9bb + ca6b2eb7e3217e7d3cbefff192d83bd0527dbe0eff56df + 0b2e2062670d2873ca7766a7c1255e6fcf2c37e95de19f + cad244f3986bab45c0a3aca726fc682455ea1166a23891 + 52d7a67d181f035de6bdb97633888f0594c2f63dd39651 + 34372507faf84f753759abd662d4c7e8df7e01149ff44d + a3499ed49406d9398e86c4abf12a1f57f38002115ef728 + 3e4d5422b41c752a0cce8c2c1a9b84e109b4554fc1150e + f578b9 +h_planchet₀ = 888da42dbf4897a5d6d9420b827e340c74c0b0e973e140 + ad1c7b9abfc400a9ec5a86b3185e4c656dbe8e01125604 + 616de83fa28910fae513d016f56c3ca94eb4 +h_planchet₁ = f20015bbe0147313e59f9e64ee9e836c192b5d504dbd33 + 28fcfce41fbe9310d6aa96d91fdd77599c122cc5390ad7 + cb86d2c6d4261bd5950e7ec0f86959613841 +sig = 2ae0027dd4a196c4741d60e3e7ff933d7374fa5534d15f + 1cc2e96e9ab3392894c65ab6a0af31ccdb395db5c52677 + 0077642502e27d4619d385a91dd13854e706 ]]></sourcecode> <sourcecode type="pseudocode"><![CDATA[ (E1) coin issuance and signing (exchange) -total = KUDOS:7.7 -blind_sig₀ = 139af4e7e7f6e9e0391e22f78cb0b2c334e6d6667633a192f56fde38ac9feec7 - 841be59b2aa993084c50f70dfd9673dc723eec9d84c28ebd5f8104d1b0b29cf1 - 18cd64cbe33925524a3363a1a6f24f59d47a404cf74680eee97cdeb8cc44a0b8 - 4f3db4496d9bed1224c0fbda64d40f84ef5447d764fb714ca8e72a23a882e749 - e47a519310f6d87b3e8ddc3e4ac4e541cdbfe7550c92f41c511b544d9fbdc2a7 - 296b958e9df0b1394210aef4f1a780a129883d4bcb45425eef96204a7eaa9daa - 7d21827ecbf4571cefe6dbe65314e61c688175c1e81e01d4f0377c9c2312b6cc - 3487f2dd2cf8d85efde346f4d1a12de70bec4038b0bea0c505087c0e67ce4694 -blind_sig₁ = 89649cf83e2ba2cd75c7a1d01809c33d5d02fec81649256215f13a8965ad37d8 - d47c264668ec187e46d75210ce601362fbb15f61a24ec1d337dd2589b5a4ee0e - 77a8d9734aca6a149b9f9b3a78c158b1f8cb243b8cbe9c2212290e8bc731d023 - 82463f3e1cf0fc86c5472b8c96c5eaeac9c9064fdf7411f97935f27fd0bf8820 - 0440c7cc3e6960c5c5156aedb5a820077be08f1ac4b00780258d7b843b21d7ba - f2d969d1b3c77a08b4fe14b216fe78c7e4c0ae964fc06bf3dfe7ff20ec85fa4d - 5e5aec24d89848645ffadb0de3da80c6e41b96571ef28e3d132b7c3fd16a289e - 32389cffb653b4744fabf882342f0db9aef110351d8ffd7a3b86701f0f5034c8 +total = KUDOS:7.7 +blind_sig₀ = 139af4e7e7f6e9e0391e22f78cb0b2c334e6d6667633a1 + 92f56fde38ac9feec7841be59b2aa993084c50f70dfd96 + 73dc723eec9d84c28ebd5f8104d1b0b29cf118cd64cbe3 + 3925524a3363a1a6f24f59d47a404cf74680eee97cdeb8 + cc44a0b84f3db4496d9bed1224c0fbda64d40f84ef5447 + d764fb714ca8e72a23a882e749e47a519310f6d87b3e8d + dc3e4ac4e541cdbfe7550c92f41c511b544d9fbdc2a729 + 6b958e9df0b1394210aef4f1a780a129883d4bcb45425e + ef96204a7eaa9daa7d21827ecbf4571cefe6dbe65314e6 + 1c688175c1e81e01d4f0377c9c2312b6cc3487f2dd2cf8 + d85efde346f4d1a12de70bec4038b0bea0c505087c0e67 + ce4694 +blind_sig₁ = 89649cf83e2ba2cd75c7a1d01809c33d5d02fec8164925 + 6215f13a8965ad37d8d47c264668ec187e46d75210ce60 + 1362fbb15f61a24ec1d337dd2589b5a4ee0e77a8d9734a + ca6a149b9f9b3a78c158b1f8cb243b8cbe9c2212290e8b + c731d02382463f3e1cf0fc86c5472b8c96c5eaeac9c906 + 4fdf7411f97935f27fd0bf88200440c7cc3e6960c5c515 + 6aedb5a820077be08f1ac4b00780258d7b843b21d7baf2 + d969d1b3c77a08b4fe14b216fe78c7e4c0ae964fc06bf3 + dfe7ff20ec85fa4d5e5aec24d89848645ffadb0de3da80 + c6e41b96571ef28e3d132b7c3fd16a289e32389cffb653 + b4744fabf882342f0db9aef110351d8ffd7a3b86701f0f + 5034c8 ]]></sourcecode> <sourcecode type="pseudocode"><![CDATA[ (W3) coin unblinding (wallet) -coin₀.sig = 9303650b8896b6619ca061f4bf44c1b02fb60784a2659de7512b599e7e6524ad - 5a283c81d289d3ec75fc81e7f336bd41dd67a41b72a98d9171f0461c188535b5 - 55019079a18b4491903797f62a034e5f277ce8f7f3f56fbe47e44113561fd414 - c841c2da97da1ae92df0e2cfbe3c26ad37f8bab9bd71365ac536204cda7c21dc - 39891b5cbb4e213f75d4e09c248a7a59f6322fd011619b29ec25ad621dfa2d6f - ae9f8b91935caf54d0d30f4a03bf6beed6637a4054efbad7a41f9da434f07cfd - 2f7619e8a3c82b30e079ff9fe13fc023fba7d627f4fb21e14467ce1db2776783 - 1eb1c3ad5c39f61437a0a70c300fd84cd9280474bb507768a868ea92fa905428 -coin₁.sig = 355aa5b6bf10591375f22a014640cd242f470834759fab4421b4d237a149bc3e - 5fbc8f073e1348da770983cd36df9cf72a30bfe55776744b2d787acb06ba25cc - def36e5269771fe4a38a1109e8b96437a3cc625003f7fdf4d0cc879335584c5b - 13f2b29be1ea4d8a2da7826d608179d98b5edb11261e2048fbbba217a52ae862 - d1e78e30c0787ee40908f1bca708c434d5412a262eca6bcd0ac5890bfbbe7df6 - d69a5544d0054716dfda47791546c177223606c0645858a15b36887619a9d70a - 515f42897758bbe181765d7184cc92b5e2d743df1db9b30394b697117ad24811 - 812febe0a3c57cbb5cf7f6857378f57cd1149f745ed95fd1d342e9860f516469 +coin₀.sig = 9303650b8896b6619ca061f4bf44c1b02fb60784a2659d + e7512b599e7e6524ad5a283c81d289d3ec75fc81e7f336 + bd41dd67a41b72a98d9171f0461c188535b555019079a1 + 8b4491903797f62a034e5f277ce8f7f3f56fbe47e44113 + 561fd414c841c2da97da1ae92df0e2cfbe3c26ad37f8ba + b9bd71365ac536204cda7c21dc39891b5cbb4e213f75d4 + e09c248a7a59f6322fd011619b29ec25ad621dfa2d6fae + 9f8b91935caf54d0d30f4a03bf6beed6637a4054efbad7 + a41f9da434f07cfd2f7619e8a3c82b30e079ff9fe13fc0 + 23fba7d627f4fb21e14467ce1db27767831eb1c3ad5c39 + f61437a0a70c300fd84cd9280474bb507768a868ea92fa + 905428 +coin₁.sig = 355aa5b6bf10591375f22a014640cd242f470834759fab + 4421b4d237a149bc3e5fbc8f073e1348da770983cd36df + 9cf72a30bfe55776744b2d787acb06ba25ccdef36e5269 + 771fe4a38a1109e8b96437a3cc625003f7fdf4d0cc8793 + 35584c5b13f2b29be1ea4d8a2da7826d608179d98b5edb + 11261e2048fbbba217a52ae862d1e78e30c0787ee40908 + f1bca708c434d5412a262eca6bcd0ac5890bfbbe7df6d6 + 9a5544d0054716dfda47791546c177223606c0645858a1 + 5b36887619a9d70a515f42897758bbe181765d7184cc92 + b5e2d743df1db9b30394b697117ad24811812febe0a3c5 + 7cbb5cf7f6857378f57cd1149f745ed95fd1d342e9860f + 516469 ]]></sourcecode> </section> <section anchor="tc1-payment"> @@ -1592,25 +1670,27 @@ coin₁.sig = 355aa5b6bf10591375f22a014640cd242f470834759fab4421b4d237a149b <sourcecode type="pseudocode"><![CDATA[ (M1) order generation (merchant) -wire_salt = 4c5249caea865380e0e519fc38177686 -order.id = ORDER-40 -order.price = KUDOS:7.42 +wire_salt = 4c5249caea865380e0e519fc38177686 +order.id = ORDER-40 +order.price = KUDOS:7.42 ]]></sourcecode> <sourcecode type="pseudocode"><![CDATA[ (W1) nonce generation (wallet) -nonce.pub = 6729d69abd7d8218e02c953317b46bba2522efc2c19a7da63194e9ef40fcbd0d +nonce.pub = 6729d69abd7d8218e02c953317b46bba2522efc2c19a7d + a63194e9ef40fcbd0d ]]></sourcecode> <sourcecode type="pseudocode"><![CDATA[ (M2) contract generation (merchant) -h_wire = ec4e7258747a4de49628a27907b74f0aad097cfafaa595320f81786375430b67 - ae1ada754299bbc0472f5a1e8bae6fe8e5dc52683dd09490ff06fb2fa4f20ec2 -timestamp = Sat Feb 14 13:37:42 2026 -pay_deadline = Sat Feb 14 14:07:42 2026 -refund_deadline = Sun Feb 15 13:37:42 2026 -wire_deadline = Mon Feb 16 13:37:42 2026 -contract = { +h_wire = ec4e7258747a4de49628a27907b74f0aad097cfafaa595 + 320f81786375430b67ae1ada754299bbc0472f5a1e8bae + 6fe8e5dc52683dd09490ff06fb2fa4f20ec2 +timestamp = Sat Feb 14 13:37:42 2026 +pay_deadline = Sat Feb 14 14:07:42 2026 +refund_deadline = Sun Feb 15 13:37:42 2026 +wire_deadline = Mon Feb 16 13:37:42 2026 +contract = { "version": 0, "summary": "Free Software Support", "order_id": "ORDER-40", @@ -1645,20 +1725,24 @@ contract = { "amount": "KUDOS:7.42", "max_fee": "KUDOS:0.01" } -h_contract = cc934a29efa612754edba0453d1b0ba175d6830d3ec2b2839a9a539d845a5da4 - 622498e3819cb49206810688a93de1989c6542d2cf1d71f64dc998193e76d535 -sig = c249ee766b4dd256560d48b367d05a41cf7169306247ec56c51c39412b34c110 - 15e365c2b2836761ba020b7175e60870572a6c7f780eeabb6f0777783064d602 +h_contract = cc934a29efa612754edba0453d1b0ba175d6830d3ec2b2 + 839a9a539d845a5da4622498e3819cb49206810688a93d + e1989c6542d2cf1d71f64dc998193e76d535 +sig = c249ee766b4dd256560d48b367d05a41cf7169306247ec + 56c51c39412b34c11015e365c2b2836761ba020b7175e6 + 0870572a6c7f780eeabb6f0777783064d602 ]]></sourcecode> <sourcecode type="pseudocode"><![CDATA[ (W2) payment preparation (wallet) -contribution₀ = KUDOS:5.12 -contribution₁ = KUDOS:2.3 -sig₀ = 8876dce4ca504df355f17c783e8327ea29b2cbcd7dde608b473644af3580621d - 3eb429022f6d1c4937328db478c6ed9784f6788e2e18dc16927efd4bc9c10908 -sig₁ = 031283a02cb413308cea4b69bd3d1b7beef87be7788fcfc1d7b83f8d97cd4ede - 218d0f753ba8fc92e22415a66065f5c1dff402368de8e85eca0c0ac7358e3602 +contribution₀ = KUDOS:5.12 +contribution₁ = KUDOS:2.3 +sig₀ = 8876dce4ca504df355f17c783e8327ea29b2cbcd7dde60 + 8b473644af3580621d3eb429022f6d1c4937328db478c6 + ed9784f6788e2e18dc16927efd4bc9c10908 +sig₁ = 031283a02cb413308cea4b69bd3d1b7beef87be7788fcf + c1d7b83f8d97cd4ede218d0f753ba8fc92e22415a66065 + f5c1dff402368de8e85eca0c0ac7358e3602 ]]></sourcecode> <sourcecode type="pseudocode"><![CDATA[ (M3) deposit preparation (merchant) @@ -1667,25 +1751,346 @@ sig₁ = 031283a02cb413308cea4b69bd3d1b7beef87be7788fcfc1d7b83f8d97cd4 <sourcecode type="pseudocode"><![CDATA[ (E1) deposit check (exchange) -time_exchange = Sat Feb 14 13:37:44 2026 -sig = 09338dd4b1e692431290355b7df62d627a894718db68cf4a8e083bfed7b6c98a - 0dde3c5724f3cb3db0e6737f57c9eb35136997eaf403f27f82c0a9f1cf27d308 +time_exchange = Sat Feb 14 13:37:44 2026 +sig = 09338dd4b1e692431290355b7df62d627a894718db68cf + 4a8e083bfed7b6c98a0dde3c5724f3cb3db0e6737f57c9 + eb35136997eaf403f27f82c0a9f1cf27d308 ]]></sourcecode> <sourcecode type="pseudocode"><![CDATA[ (M2) deposit verification (merchant) -sig = e66d503c843d72da4b6eb95f872396449de25cbf80b9c243d8c9ed2bde533d24 - 60542c685bfdbf2eabc755510a60b97ed289711fd3f353cd80aa791e2e2f1e0d +sig = e66d503c843d72da4b6eb95f872396449de25cbf80b9c2 + 43d8c9ed2bde533d2460542c685bfdbf2eabc755510a60 + b97ed289711fd3f353cd80aa791e2e2f1e0d ]]></sourcecode> </section> <section anchor="tc1-refund"> <name>Refund</name> + <sourcecode type="pseudocode"><![CDATA[ +(W1) refund request (wallet) + +]]></sourcecode> + <sourcecode type="pseudocode"><![CDATA[ +(M1) refund processing (merchant) + +id = 14365434601518496594 +value₀ = KUDOS:2.1 +sig₀ = a626cc04101e3abe295c217de5636be135be8935dfaf0b + 3589a8c7de22c3e6c7a581a031c0691476e82ee0e9798c + 3c8c8be6bc1066bd955acf4d1ce59eb7e10d +]]></sourcecode> + <sourcecode type="pseudocode"><![CDATA[ +(E1) refund check and confirmation (exchange) + +sig₀ = be9dd11dec0e2fb2a2dfbc778b2d9bb21c665ecfa4d1b6 + c9d42747902f071631f84a946881bc787f8627a6871226 + 4b06410b445f37e569edb7dbf77193b5990b +]]></sourcecode> + <sourcecode type="pseudocode"><![CDATA[ +(M2) refund confirmation (merchant) + +value = KUDOS:2.1 +]]></sourcecode> </section> <section anchor="tc1-refresh"> <name>Refresh</name> + <sourcecode type="pseudocode"><![CDATA[ +(W1) coin melting (wallet) + +refresh_seed = 466431296486ed9cd71fc207254820a2c4a85aeb0b2041 + 494f8bf1f8cd30f11394223cf8a82995804957876e9fa7 + 1163506b4e5b8c8fa4db1b95d3e8c5c5fb5a +for k = 0: + batch_seedₖ = 415e62ec89f6397c834087efe396b127c6d5bdfe360145 + a6abbfc7a88c6504eee6e3f59db026cc5742c4065fd917 + bbf2b7f52e82e88409263130300279e52617 + transferₖ₀.priv = 5a08ea181dddd480b2e1e2294e1d886efe45070858adb3 + 26e2d562dc330c8ca4 + transferₖ₁.priv = dccf4e1880b343687c7f39df603386a27510bd356ae1bc + 86f45ef9b7a8927613 + transferₖ₀.pub = ab4a35f7fc78a3d07e5828f0fae0295ebbe93e9ecc63c1 + 09703f15816af8d000 + transferₖ₁.pub = 09893d5ef58fe696207e93cbd0cceb311265aa89745705 + 9c40f366d59b028a29 + sharedₖ₀ = a7a9524dfc565b8006470ab90cba091a809f1de14eeda0 + dc98408f880d5cf587c2aa338ea1e3153ed8c624044f15 + 19f3d8e8d6c731d7af6d0383b136a48a8e7f + sharedₖ₁ = dd7051d4c4b03d78f0c5365ea0a2947f48604beee2e792 + 0349d7a4371dbff00d9986202459277250461ab936d5f7 + 45bb6c6c28e8badd7936002f25d9b97a65b2 + coinₖ₀.priv = c4fe7e3e64453e477e736ebabe2e5a7c4919eb2fa4bf02 + 9e536d56a7eec59c9a + coinₖ₁.priv = 409db2ea007fff35506607da6c67e52204097be8a114b7 + a654f53da392886e48 + coinₖ₀.pub = 65a93d56a84e8110fc2ae9c6ace89ddd9c625bd632501b + 663fefd047ee31feed + coinₖ₁.pub = 7c61cf322d34ead1de43869690c70e22d9bae8f2354e0d + d07e71c5736b506f41 + blind_secretₖ₀ = 0f53bafa492d5d90dd3ad13ba7b37b3c4a8b167dffc63f + 7940dcb340275be90b + blind_secretₖ₁ = 799169aeddfec48aaab23a88df8d74318870c7b6cb3922 + 5a3c43d4576db61f88 + planchetₖ₀ = 90997841cb9d3b4bef237213b1ee1da9286e775c1cc10d + c78e32f836d7897500a587babeefed3f310a5b509c29d1 + 91804b89d2aee75073f4d49d7ff5f60be991e0ae1a148e + 134b92c5c9537a59bc30516e0244e714ec2b6067337ffd + 970fd3987799d2ac7b3e3430068c923974751864ed8f4d + 087b0cd62e0edb807d9ac4bf70e68c9d774a0f26947413 + 0f4fa5a8f4e0a5ac67ef6c73a1cb486792605f447384ea + 9deb040f851953db240a5f23401e0d75f93f810132ed9e + 782ba05b4f78ce7cafc501925ce0bde12e58ef48861969 + 038a95802a1d943b2ce31a3278a1cb4f14cc12ff2ffee1 + 3aba0ee151145a3b7abdd1a00e0684a57a1b2a0fd97348 + 81243b + planchetₖ₁ = 0562f874175e223f087e7950f2082e869bca1ded7087be + 27a98f1f9be30a38f33e9a98ca5efb6f15536df774ce32 + 1efd36909d67869e704db3ff352c76298c0d33014a32ff + 636c22866b5e5d6dbc5e6c50f630d95112e8916fd23ec4 + 88eb457f55ad3a29d50c3c7387b4ee1045cbe4d37241e9 + b958d1642b34f4a15a259b344163dbf73bc55e5b99e0d4 + 6ba59b7dca0a1fbe859f6f7d5756d6afff58571fdac617 + 48a81e5e94e784c2d5de60a192d86c0529e35f2efa29d4 + 2e0ce8526db5fd3258a470a43d55c184287fe0c639ff8a + eea1ee64a61d6466d15e20c8203a73ce1b2fc7b2949947 + f9804b0710e41351af67cc30b86108dca7ea0208062ae6 + 0be2e5 + h_planchetₖ₀ = ba016fdedb6c5033f1f870edd9ab10d0dd116c0e3a8483 + 0ddd44c9aed5a2844aea96146cf7c72153a910ca3d3de1 + faab7fca5e1c4079e2e0c680410cf68ee27b + h_planchetₖ₁ = c4f4451f85f02c950fba164ccc52fd2123576ddad6ab87 + c25b175a33aed8afff5c5866b2fbcec6ef67a1367f91e5 + da56041371bc9e8cefd2a93ad386504568a3 + h_planchetsₖ = 7e420d01a6413fb6cc300257031f37ab2d456583d3189c + 3e5f7049c1c61f49c7918289b7cd169cebd0bb81ca0a83 + 2f2c4c6c7529e861a88d65c6d3ef5fd540ff +for k = 1: + batch_seedₖ = 0311a9766673b9df343498afcd6f6926b9bd6352201351 + 5c072a0b5a3af98aeb8158869f3ece08532473980a652d + d6479f296a28504b850791f9775e3b0f8436 + transferₖ₀.priv = 4a3d33228a7c1d6330fb2ec827256aad75f7ea56712072 + f8ff69238b47e98895 + transferₖ₁.priv = ad0b2c176a9564ea7aee7c55ddd92af22d777ea4a8605b + d486d8ccc31bb1402f + transferₖ₀.pub = 1839010739d0450e9a0702167d5106dbcb0a81641e0080 + 716785850e60bc541d + transferₖ₁.pub = 16a20ed27a63c204d94ef3d0c2b554343567d319afc70d + 856cc6a61c3bdaa142 + sharedₖ₀ = 32751bb2cf2a3106593aac0fb38172943c54a96992b22a + 7927ce37fcf0b9b4aa4671033c93ece3c70f2033e4c52a + 953bf46254db7f6d7feb926d78b28bb60901 + sharedₖ₁ = 2c4118e0d52fe1851410fb70b60cc5b3fa6bbb53df8acc + 5a379c65d9f89c2ba37ea732e76d081e03d845dd2f3ef8 + a53b682941d4e598a17823ea06cd28058e8d + coinₖ₀.priv = 16977a220b0bfcb2a0ef82faa3afea901d0cf3e6829905 + 85b63d9c855be5d5aa + coinₖ₁.priv = 1b5bab529c09f313f2a18e3d2712c1a7e0548f15651b40 + af12b22c17ca861273 + coinₖ₀.pub = 4b53ebc94ca1a96ca4795a0ce1254f70ba2fdd72528d57 + 4f4bb47d26fe845239 + coinₖ₁.pub = 6de1ac4370a5336349ed50cfd4d6298b193504c1325614 + 9cb0fa85c1f9a178c7 + blind_secretₖ₀ = 30e3a32819cdc5a2e9b28d7953bba0038eaf701ceaf691 + a6bf44833ae6f305a9 + blind_secretₖ₁ = 62ac62d9df0b5f71f0b43329baa15c5e79f46b09fe432f + cdeb3a9100b31a0fa2 + planchetₖ₀ = 73cbbfab1a58b12c55b4eecf705c9db8fb953f52bfb4fa + 9922f39641efb85802659d266f979c819294af91cb395c + f93f67a0a6b561e445b0a138f04e6428222ccb5ef92a21 + 1da2218953e8aa108f339bbce666a71640f555570d6fec + a446b67be82edfa3f90697d5558d7b7707bb87bf790d35 + 35e429d705367f0ceb3fea30f7666ed428679bed440540 + 3f2a9cf5cf75a43f16fc5b63276e9a18bea0c0864587c0 + a884d1a474f3a248e36183a067e59496d8968427c55e63 + ac3f0052fc20fea5b9f01b19ee776e7c1bdfa576be42d2 + 1e7214606bea3277878cb7beb7015a242bd9bfaee620dc + ccdfda8f34b7174ed28766000d22dd552cd487fdaf9cd0 + cc1f5f + planchetₖ₁ = 922bf6290e8f5e8746f68cda30cee9d368f3988b93d26d + c753e082fe56db8191430ce8ef78f1175d651b491e6cc6 + 7e0cf34253abcf3c3bbae44b4620ca0879171710caac83 + 89704d99d5d49da5de04b44f03d03b30df9d872611d779 + 6c6903fdee77a68a29aabac5c332588aaecf2a5e8cbfe4 + 446d33f423040e7eda99268f2ca558615b541cd912ef30 + 2a9f079705b9d1785839a593d07d8b79756f0077cb5169 + a3a88f08ee7371419c940f35250d2aa52bcfc6beab73b9 + 72f31d3b5de16e55c590788cb4443dc0de7d2cb6993555 + 0b04b8bcc2c33669f97ed1d36f29c594c6f0f84a72bd73 + f76c7617e748356f7989a98deca97f360fcf2d087f9bcc + d61732 + h_planchetₖ₀ = 6523f04c8eacea9af24c08905eb009c8e15a6c62adfae2 + fcee6813bba22ba014c3c831cae6fb63a2a889af0e99ea + d40a39b57d42043dd67fe4e446c7691558c3 + h_planchetₖ₁ = f86bf5d2bf56d182ff70b0ecf635401bce1dab4bd52f40 + 023adef27ca2a4165d19b0de911a6a6e41e5811ea1d9cd + 9bb17dbf9ee518b1f3bfec644e8a36f7fb2e + h_planchetsₖ = f63471c1555835b7032ffa41db189f013d1f26dd5bf1fd + c79bf18ea8c3f24ec7f31f0b4c1688d7a6a729c7b2c2ee + f42a5ce3524ca23a566d74e708eac487b1dc +for k = 2: + batch_seedₖ = 35e8f7b41e25d3ca2c8e70d02be85843b53703f199809f + 98527e316bda6a457a2fab9d327f96242c4e0afbd6214f + aee6a5172aca2b49ad37a12590dc3bbc3f58 + transferₖ₀.priv = 1ca613b8fbe4a341b2fc617687553e778de9b8d40c462a + 88bc1ac169d2984da7 + transferₖ₁.priv = bb8196a4a5b9a646c5424664b8505eb8781ded006c74e7 + cc719e7a2cc730ae88 + transferₖ₀.pub = e21056df9fdf4cd94a4175f94a48fce623db6f2bc4097d + 818f839ec421fe974f + transferₖ₁.pub = 0409b44ddfed03111d7dab5af1b71d8b2597ee50772a9f + 272e799133718fd571 + sharedₖ₀ = 01a355feafd4daafcd6341597b73eee6ca7ad5dfb78758 + 88a373434043d17087ab882cca24e580985068eb1b39b8 + c0e7f81f03ccca337961cd1d6a528abd3cd1 + sharedₖ₁ = 39cdc5377c7295d1e997a43fdc2aac0f5005e64211f7f0 + 9da36db035ddad5bc32c2dcc4bd5fe1e0d3e471ae8fcfa + 9cac0fefa8078570b894164194829e54dabf + coinₖ₀.priv = 343d0b591fc0c495d2e7cb68f2cb0c24d9b274e3ae8504 + 1dd94454d2856059f6 + coinₖ₁.priv = 57c9447a9a34e4b7ed5f4bc71122d76dee9583cb578eb8 + eff2e837bc9a0591e6 + coinₖ₀.pub = 3b9fb220f7679b3488f8e2710f41d5e6cfee1b6c23bef3 + 04d9dbfc404341fccd + coinₖ₁.pub = 6ee277e7bcd2584c5ee8f46cc24b531515a33388e6035d + 00b33df8ce6a7edaee + blind_secretₖ₀ = f5d25d0124dce3b3529325b6512fd34293448b710217fa + 885ba5d80705d16a64 + blind_secretₖ₁ = 974dc1b68e4a7613346375372ead838842bab6335d1696 + af3b6a2ad249fee4ee + planchetₖ₀ = 55e3f72dfd4c53ba21f6f9e108c34f8f6bf0b69dd8daab + bf4386a7e3a31c7e33ecda1dc54a31a1d5f97b810806f9 + d845af20716f4aad733026ff0f6ad0219a1f92d937ade7 + 6b268f8d436fdf6ca63d9051008efa3af022c9846fdecc + 79ce27c8e59042795f2f8a4bc0a792b44bc64c8e6e7c27 + 3a107d96081142b1d06718e28b32bc733ff36e7b95538f + b2ec30d1242965f9ab40debe4ed845227b7a4a4d795286 + 6b798253cf1eb664a1d832c2397d044122d24982fb88bd + 68f81efa45f80bdbe918680004bdea5dc2e4e76dfed297 + af200350793f820aa094e1b26c79e2c2faff866410e741 + 1bb662c94be10a841ec9db1432d198a4a01c2911326cec + da502a + planchetₖ₁ = 978fca7d513afac1d6ec6561fd967218bf0d84e388a23f + b085f1c37493d765090b90c0c23ba20647114c0f34d8db + 1041809a66dfeab96c36477be8342ff4f2660cfd8f0011 + 14f2aab3d12d983d82b92fcfb38e97fa83142980a9f919 + 7e794859f439b18491600ea92bcdc1af7ebe4784eb0229 + bd287b9c71cdde177d4576d7907f9d643a363e09685293 + b7474c990d5d8cdc119d7448d768412e40e8461ea88109 + 461e37f3a76178df074c942e99062ce717eba48903c7a0 + cd27889429ac5a657ca50efd441363c18f9968b33962e4 + 960bf2005fc0fb2b8050024bf34e8f608f4dade5554aab + 1d28478f5bc1c5939c939ff5b9b11f225e7eb275887d3a + 475a34 + h_planchetₖ₀ = 5c9603dc7240248f0a93107bce217562d60943c9976770 + d11c1fd4c9f73fe7f2f3696696b37fb0fa73331c301e8d + d7adceafb23456bfcb6d44063d61f5db239e + h_planchetₖ₁ = d905de829b86b21eb19c036320d3e11571e6ca8390e81f + 86e4569e3cc12189ea10cd752c738972a809fa292818a1 + f13367c389a3f505f084c5001615de3b647e + h_planchetsₖ = 802838537720786bbe61a0752397056c3a7f7bc332a54d + c5a649452a9a74fef79c2c59deaf1e03cf73f85f241f28 + 61a50f2f859d95c3c660ab5e57b448526036 +value = KUDOS:0.25 +commitment = ba2a18eb9cc878b20dde4679910aede08b37b58e47df25 + 2a245598e0671ed6fc012c9cc245d13f9759d777d80d51 + d4a29bcdba486109d83075b8bf47fc518928 +sig = 62ce04a6a6dd6b3f50792e34b51ccc10d2552425800566 + 90248790f6280db11f6f29753f601f19e8504ea378574a + dec5b1fc6f5509f3ec79af3110bb4cd4670a +]]></sourcecode> + <sourcecode type="pseudocode"><![CDATA[ +(E1) gamma selection and coin signing (exchange) + +ɣ = 1 +blind_sig₀ = 1885a01f26936f28dfd201a7dd615dacd68a287e17aa8d + d1e4f3a1925047049a491c1b76ca687431faf6fd290deb + 4dc80601ba79d7754c84a8d8550a0b166104b6ec7e611f + bc577aff339033d421035578029068a84bd4fe5e212670 + fd2ce7091ef9950ee48778aae2855a99555308ae90b72a + b1fb53fea714841c94e256705aae8efeebc877efd376a8 + 78c6e2cb4e811a267484e4da8e13206c1dde7ef3646528 + c1d8bf48096eabcc454ed5ee180e3fe7229785a51a3b8b + d3fba176c05baf0eb82e99d225cfa5f9359d07d2510013 + 301a7bdf815a7db36d400bc00ca861dbe1402ec6dacbba + 901e8c8e4e8f1912e63e2a440e667cea243d46e08026d3 + 738fab +blind_sig₁ = 9c10e5b88fe3563bdaba5934447baad4d05e66a9075102 + 7a5cbdd2cf0cd9bcaaec68935d3c85509894247ab569d9 + 7fd4825a7972d48dbab1c9cbf791776c96a8dcf48caf2e + 542f5e50f86d794066b7bc82e975c55995b40cf10d00e6 + 4904530dad5c396543fadf88b79f81b00c8ebbaf2f6731 + f434c5c3d72b451586d0412b0272a6c6ac5ba5ef59af57 + 969d4f985ea513187c8020a318d4a9c9711ccfdb5aa8b9 + ebd93b20e129c3447771a1dfb1b1bbdccaef56323005c5 + 6116b1df97ace4ae6f6865e5467a96d2fad9cb4c9cf0c0 + 3cf774ad1dd8f5b0a0fe218ac78b37c4435e4f5616c2fd + 96dba36f3c7c1973835fe53c95839ed11c792ad011c9fb + 1ce55c +sig = 6eb68d755e7e554ade9f9f21e3a04b83a74753ec136f98 + 981ec2369d0fd56f88c274fe44482f425f1142a447627b + 71e2117d9991d89dfbf97441b881963a360a +]]></sourcecode> + <sourcecode type="pseudocode"><![CDATA[ +(W2) secret revelation (wallet) + +revealed_seed₀ = 415e62ec89f6397c834087efe396b127c6d5bdfe360145 + a6abbfc7a88c6504eee6e3f59db026cc5742c4065fd917 + bbf2b7f52e82e88409263130300279e52617 +revealed_seed₂ = 35e8f7b41e25d3ca2c8e70d02be85843b53703f199809f + 98527e316bda6a457a2fab9d327f96242c4e0afbd6214f + aee6a5172aca2b49ad37a12590dc3bbc3f58 +]]></sourcecode> + <sourcecode type="pseudocode"><![CDATA[ +(E2) commitment validation (exchange) + +]]></sourcecode> + <sourcecode type="pseudocode"><![CDATA[ +(W3) coin unblinding (wallet) + +coinᵧ₀.sig = 68773443fe6cf88ddea6f6614213f12ec7ded4fbb39fa0 + a4ffc1a68bbfc363be0b33bd03a41d31c8ffe331614ee4 + b986679ac8e51aaa0903eee492d0ff81327589c842ac80 + a6b47e0833840935e9cd543fbbb91c5b80a591e01eb34d + 7bb5aa3fe837b22f8dcfcaf0ee9d71d93c866f00a8f787 + def0b79eaa4e6e96c420990b05c2b82c378757ce220e96 + 734e547a6962148848d2ebb66e9c67a40115a958d21c05 + c7e0a0db72e505076e35ddca7b09b603b55dad394c1d12 + ff4b6b219feafc3ca24c43c36ad2da9fa632ec1bcfc057 + 2db80d0afcc9875182def7983385f872005033d7ea7080 + bce0df982a134f5ae2dccb2cdc304278c809979252ac28 + 2a76e1 +coinᵧ₁.sig = 1551b2dcf6daa264d4c96452f46c88e7b4ca3955642da4 + 5e375cb319602897ceb75eda64060afd17002b63fdd39c + c0f86c473a530813c23958573431e2fcd2277cc853f5ab + 6a20a9e7499154420f0cd8d13990d45423e61a6651a614 + 7e8a146a10fd5d63e085c2c4c133d4db0827df1d4fed10 + d1e6eadc566e167a17fd36ee884900db9a8cc4b82a02b7 + ca0cfacb7d391f535da3011ca469146f239d621fcdfc10 + 563bfe6ac4c962109e2fc39aa236151f15a9c85b8e0e4e + 2ee4f6b6b5f54337c184936e2fe4029e2d39ffe6953f7d + cf208ba062334e8595dbb9784857df770377a59dee2a8b + ee4e9c10e662f15dedd0379849ebc4a7a02a31f1ebd8a8 + e55432 +coin₂ = coinᵧ₀ +coin₃ = coinᵧ₁ +]]></sourcecode> </section> <section anchor="tc1-link"> <name>Link</name> + <sourcecode type="pseudocode"><![CDATA[ +(W1) history request (wallet) + +sig = ceb8dc24e263252b479376b15ae141e4da28dd712c37c4 + 81a163d549b44afdd018d04fe709462a56739b3cc0671c + 2cc0333b7e5da25210b8bda54d83d25f5407 +]]></sourcecode> + <sourcecode type="pseudocode"><![CDATA[ +(E1) refresh secret lookup (exchange) + +]]></sourcecode> + <sourcecode type="pseudocode"><![CDATA[ +(W2) coin acquisition (wallet) + +]]></sourcecode> </section> <section anchor="tc1-w2w-account"> <name>Account Creation</name> @@ -1718,462 +2123,631 @@ Education and Research (BMBF) within the project Concrete Contracts.</t> </section> </back> <!-- ##markdown-source: -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 -2kw4TNlMqmIXh6SR0uFyPEHUTOuoTv+Miy21nqf6tMGFIlYx3Ru25Gig0quy -n7+ct8RpDbXiAcWenASZyCHBMYa2uUrRXFr4eUTO4tsukSMqu0SuI2H9k0Tu -c8sFvFsJXOsqyFe5OsyJWj8ANXeukyI1CQ0pUqbANtqeNnVVG4Frp67LEvzy -prOK4YgizEwxsbN4gzm0htRMobWmHTOolkH2nC4z2pvVN7r0ojc7kRQ5U2GF -NQy6vqKyLj0aDR7Bg7/WKy4r9zfE07ZXFU/Te9vKD9opXYupVdP2ZzNg3tZr -IDpN2srEmfagEtbL0sSpeawD5asn0jxXzeRNwnNFIeyY6fDKSLw9U9Tcnn6f -GG7IF4ajdjRNln49zjuVxVzvo8UbqIsdhnqnHswvVG2WY6swNaVXLdK1eXy9 -xJdjyhaVhCp1onDWLfLEtV87+vmNMr+SO7E9m9yJTZvc3pp1SF5hea7cAWU5 -ft55uDbb8tGsGCi183GdnerrdvZodI1FnoMRA0oZHFN562xGVTx38dzicip1 -1WRdCImH9y8o/z0HhmX6N2BYe42SGyvlSjoDRBUYtlBOVSgMphSw6FWUea89 -H6fq6im9RPCH1l7G8oy1quxU0sXWPoKflDaayTG/3O6p0qWCfDFIPjWBIChZ -jk1pIKWDzpdjQVHPRTka4TEocd+Tg3RrQ5sKV9k/K8qCgeeZKk+OmAk9UpVC -STXRFYarWwEQe34ux/KVzogJW6lga5q2TSA4psX6iot1YejYOdUcJ3nqqXLC -OOzrS0O9HGWwbuDby5YNdMdWhHo+nIa+bUnbOtWZvGcltGzBLqYIPvbz+WS0 -pIqM6uLa/IIPlo5GaeSb1WqSni4P5bMJTKe6hkib40kvS9yB6+F/juvuuq5z -cHj87NTp0/NfP374jSOnE36+NVT4Wi1rIT7Wi3Kn7pt7K/9Oa9rmzh3F6DvD -3m9/NRjUORqd1KRlOiltJagili96T+VIC9n7jBgqXklac6jvRTuwkKF+MPid -mplmJLk/GllrOG+BgVrfQD30Q60pMedcMippNXXPRixLPFT+SRIDesxUDc01 -RKkWFgFYZ1BbyBWGPZNnJaWmyIBdOvf3H+8bAe59h8B4DIdY0eg80e/Nv+9X -mS82Zs36fP3roLKWc3PlpL4yPF9cjOCSVL+zy6Ee2mAmtRU1tM3NWBErea7r -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 -7TQ0808lBzPRm0PKxXJEm98bGy0UlCf57TXzIRUGbduQquoTNuTew6dH7Xlf -mfVqRpus7NUur8H7ehZbBrK3OvNdc/zD9Za6o2CpPUW2YqklA92Fea0156uw -JcUTnSmVpqv5iTHDx5mdypN1Tc6VgOXnnJtOdWyn42r4vMEVPtl/cXSIn189 -el9nuKG8qjNrU0cVtyTnVpFCo/aIJoQOo1O/0DkeNplCZ5eZ7Y70VSr9oKkQ -0jH3Wn2Qo+uDSvWRBTh2Oa6KWkSreqVn9gHbIiWgeVWXrTeGt5qsWpoyikIA -JFY3MPb1d5jMy6fdknhqTpCo2qXqP3V0ApvqLMXi3MbQzquSqaqXnMr+6btx -o8lZyXUNvTrlVarshpCcTpRdVJsvzcZIU/ukG+sZQKOAjdoXr5ILn1Z6X+0V -0CdN9KtqIdqjzWaL0eUWncVDG66pvH7Y21dMbrGAmMTA3ulC7XmuBmLmTx+I -oqumdAmYOf6hrsDS+0YJPQ2bBWMGo4FDXOqNBWh5JhEtmhk0f9IM1n2YqZjb -83Nx50Kfe9dDC4aC5Rjz8pLl5ahc0GaDhxAWOnFlUfeOOZCjQo1O1ygZlqGR -VlHSdq/U8qo+4LFSNbWSvwJxo8nrn61eyS5Vrj13faWSGd2JccX6YmWNN/3b -nEslXW3Ahp85eb2+LHhdO9W21KaodixTfix6bvrgjdvpXME2w32vNWyn37D4 -t6fnmgffv52NywcdRWE3qFEzLFJGRx+n3LX0+BHoWSHu6ts3X7121BYqSEVD -O5uCcRuK9KkQKqJormLTCsTtx7a2cq2SYrcb3TW3P/Da8AdYvDZ8/3nWrv9t -lq6d/tqSs5pJoujfWzWLX8/QZFyUtlT931M1i150tue3IHjRAzJZS03H7bnd -VNab1zK1dzO04iX14SJ1iKCK+y/Khdq9cOOWrxnAhyx19RuwgVDvf4RS11vu -lm6eTE4LKf/yv/72r3/5v01ZenUOe8eG6hbaet9FrLXD0W9IQrd7X0+sN6ip -85X2xQneykeyZ5LoOgnV3ijQ3mNXLTGWtLv3sxvuzVtPMlpfSxUCmhYT8VVK -NZ+O1KYYxC2XXfnQKox/enjv68d3bS50NfHS3LL7A5w5/lP1vZKcNIRcsSCz -npVQqynvO4VrPpOt2uZmjrwd1GyYl5p/VVSey8YBZSae1F/NtAEWdauiQgWm -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 -natLVdZQfyMW1v5sooO82WR5dt4+oqVxJI49UngyGk3U3gu1Z0pX7D63H9km -Ks3eGW3O/6z3Vpi/flwtUD41X+g7tbGsNZGqnN8f0kxUG2ns19Dqymmaq2oH -RbtHva+lZOsP/Hi6vpFlSLtK9P6UxptmBwpt1KnaVhsd9SlsmvXnNWGrW1WG -vXBY7TxS20smrwdqua9BC+0IAdcau470rb+0OPfX0/Vof9iLqHk7lxtfvGJ3 -RZMb1S6KeKg1SapP0BktOlWjhTpUDnxezVlD1+j9ZAgFMVOg9Yg2hFTtXD19 -fzndNpkPkjFz8b+dNvtSaksdpTR8ey5WV1/b5qAn+uwdHVp1ddf/ravr/2ul -a5gC6jobWjtMza22hJda2ZvmxiGS/5oZK2JvbTl14blX9vHXlT6qnU2qg9XJ -XfEV1H6jJsqfwrbo7JzijDmgiuz768ns5byKd/SpoeYsqte0wUBfI67/Sc4m -n+l9Sy0DpQwHZgAgealm6Fx9uZHcScsM0SDvP/7aGDHlVySdm7zyoenXMzoO -gTYHOgfD3j6ozcsxgwNTZ86rDxwqk6kSU+fyDaPDwegLeeOJbmHY+xwQYby8 -yKUxn/DvyirO5JTs0dhktfLybEBcoZza5cJ+QrF/McHgVJ0BnRU3Xuib6mue -W0Pte2n4B3SElrcWI1SLNxdsDi94ohP1Ac8jmaV+IHI/D4KoEHlQ+GnIZBa7 -MopzmeZu6vE49bIcv/peUgT4mUXrGDAPAy/Ie63VNwd9eHkRemFWsDgM84An -hZ8Xri9YmLhBUfhCBgXzYldw6fIkciXLC+YWCeOJy/ww9Hut1S1qMeRe4DIm -Az+M08BL3RQN+NIXYRC4aC8LZVS4IhFFkUQsdQv04IZR7rEwQPMNGpezkWqR -Toed7+5U6eih2qc0xCySEAwns7MdXc4BW0xkDMfqtZyFfp7JJJJhmoZJznIP -v4swyZIgDUWcokO3EGmYscwLGYvTMEiDMEvCIPcTP11nosg4y5LEzbgXiYiD -9YnIhOfxNJQ847HLJXcDhj7yIGbCi4IkTmUeuLzI0jAK11tMQpklUmYiCUFb -zjM/FmniBWg+xu85uORxyQLJgzTNEpaEOQ+kH0YyyoqCJestxjJimDjuF77M -QRcaC1iaZEXo+5nve0UGqnMhCshQmsrQ9V3pYfJDkYUwQMF6i27ipm6MBpiX -Y/4EzyUTgY+Z9GKWFXHi+wySKeIgzzM3iYSQYeZHaZELP2UZ62gRtz3MeprH -YcGkjAIWuXGOtgKQG/PEZwXmCLPnh5CONMvAzVAkPude7kZ8vcUiDyM/8XgO -gUvyUEpMRB4VmcTEc8G5ywOQVWQJmBtjIOg0kaH0pIyF9PJsvcXIT33uFUUc -xoxB2FkuPFG4LtQCQwyiFKopk9AFE7iUYZHknLlcpH6R+J4birZESiWRrof3 -vcYdKOFQqDt4PQz8IuexlLkLwrnPwiICB9NYxJHvp0UEQQFzoXppyoogisIs -yEVWcD/skAMRhlnuxZ4MPZFFmMGCphgvxFmQCmgkDwU4hNmDOpNOxGnOkgAE -FqSnRYespq5Mo1imImCuJ7wkSXkU4u8IXI+S1Id2+yHJcOb6QYoLmBEWxFkI -q8TjeL3FMCqC0HeDAHxO3CLNAjdIkiIsJPMjSBnnPEkiLpMsLqB6Cc8S4RYc -EyMTqGuHhroCZiaRMXQuziLOIo9BEEFOxiSGCUMZINiEnsZeHsF4RrCKPE/T -lKNzSFeH4cxlEeeQothNpOelWZGCrNyFjEFgIWwZxJdsaBphBJDYgMsUKppG -GXfDoEPnWSC8UKSYmhTiL2h8rscKD5PlBVmKSYi8KE9cGHjIYApDH3K4q9iN -/FzkeUeLsNQhXkrSKEm8LBXSjRPYAREkKRxdRkoRhjL1JPQfsxzksFE8yosi -Y34c+w2JVF8aULKaxlHgZi7sf1BEsmCcDB+D/Ln4LQWhocs92BK4Do9sTJxg -9LnnJ5A6GAm/Q36KwIfgSZbEGSTSgxuADHoJRDASScxyN3CTIsthmoQr/Djg -vh/FLIEFjAMvDGoqNeohKh99ffer491o6Pn13WZSpXrEHTYVr3ls9OYnLHi6 -8gmKBboe+LHhiUQURlGRJxl0UsBSFFGYSvJBkQ9FSiJIPHiSwD7lqRt5sNtR -EBdxnECQEpd3WFAfr0JNCnJamAfIIRxRmkIKAQbgPBiEMI5Z4PtxBosJuQEf -i9j1oQIe5q1LF3E3zjHFGby/yKFyUZr4GSxQzDMXWIPD/YF0sn5h7Ls+IAXk -U8QuVCnpgByk1AmDrXKT0GdwZ/CtjASKpVJEkZcWHA4S/4XwwmFkeRRCnEI/ -SgIGpevwRJ6bp0kC0Ya1gjjzIo5cYIcggxDCpcE7xVCAGI4p9aHkoYCBgZl2 -YeyjIBMdqbHIdUFNBn2TnogKLxEJBpnBunMuYH4JQ8gigiiGkknc5TAToXQB -HXyY4Q4pB5JJOKQZzCtcBmyWZgJmLc3I1MSYNw+WHRadQ038NA/h2Dg0quAC -Bp+pI95X/ok49nwmYaSAJXwBRwEF5wWwC1wTsEoSc57ygEAB4LHrBV4WMT9I -CMcB80VtiezyRD82PFHEIJTSlTG5c7jRIoI4uZApeHQIlQc/GyawRj5jpLUC -sIIXUHwu4WaBeTrsXQjwCBeWQNdBUJwCgsEQwQYnaRgHsgChkQcvl4QxgBiX -EffBZi8N4jCI4w6OBF4MtASxg7nEA6kPAJtmbpSxMA5BPAfFgExuIb1AJFAS -iCuHbUllkmYw3l00wlUUCYd5hYT7ZGh9zyswmS5klmyQF8OgQ5h5kGQBTCqc -UwHpyPEDstHRog+M7nsAwhzeNC9gm2GggTBBMvB7APQQRLGfJDzImeBBWPDM -I6svYBzjLiufg8NuFiYQHuAiAGgReOQcBPwjJMMF2gZogrmQwLYYOMAnvLSX -Za7HARbc9RZlnoQc/g+cL0Qh4hC/iQRtidAlGWPwTgEQLVQYWgKPDjsAOUas -AawIf9ChoSyWBfxN6AMNQVZTIAq4RwAOYAMX1iKnKS0wGZCfAkCPmo8ZgE8G -kOc2ZLX2RHhV+T4uPR/IgPnwDRLCCb+TwrjBS8CbwBIB4yKAKDDLXgCwHcLT -oe+sY9wc/jKLAWUAKRmmHR5eSgAiikYAcmBWXeCMzI0B8EA/RVYRDz0MOifw -nNZUrnoifxjF9d1rPdGP13qiH6/1RD9e54n+0vREXuC7WRbEUeqGfgFRK9wM -8gJ8DYgZyDBKwJAwhCbDAcDCRiz2swzeH/jeS7rsHWKSMBUJBaQsgDrGMA5x -EPmwgB5EKJARAc8oQfANP5FmmJ0oAowC7MoBIzpmJ4b5Ah6EsQ19YG4RSj+B -vYPdiIEQQvJIEKtcIjAOQyVMcGoRYmBSgbADZwJH5WlMQouZR+9Q2DxGaBGn -FDSEQKyFG+Ruzrjv5XmcA8InSRDmksIF6GSH/y0yHzaXU6gHVuUQyjBD9Bcz -wHXPBTCiuDziiJDQWg6PVHhuAD+K6I3h33qLGTw6wF/IEEWiU8EKt4DCYMg+ -sC4AbIZIHQxBeA2xTbyU5xGCwyQVDKrodWk3B46CZcgwwQiwEehAzRBYAdnB -cMGKwSzAQ3AKKPAfhFY8JBAJQw+knHTQGAP+MoSOgJbwjpCPzC0QoMAaAxsD -1UoEPnlEGsWixM0B3eGKvChNgfww8UVbIrs80V8anigA2gZiQOwZFwzBYkDg -NZQUq0oEQJj6yJWkk4AXCWxh7iMoBarHRAYcJqdDVjFQCZsWAscwgKsCVi6H -q4ADAg+hATHsEIhFvJciIk0ZIg3EXxxgniLmrihLsIgluQdAkuEnAu4s9uB+ -EK4kiL/8IgXqAkmYPRixALYWFhBWOfRS4RdBRyQL7wdRLlgGc5wJuCVgdRhp -X0gWE4bPYzi6PMVww9CLACNYjggC2BvzW8Bod0gW7CM8IGbMp/DFT+B88CAF -WAAoEG/EMBB6FxiSS5DKWQpp5cA3EVxN3NFigTiy8JiXxhRoIBzCey6AE/wm -rG4GMooYVpgUFdF2AZtTFAi/We5jYElX1gLhFMQvKDLgNVKsDA6+oLgihjdL -I+BHFoaIPzyYG/g4FroeoiMPwR7QGUKwDg3N/ZBAiesliFKBWTi8h4hzCf+f -5AjgYwSssOyQIvi4JPLyQLowBnHKgfiEqCWy9kQhYj9ohvABbUnQEvh0gMQ4 -zgFFwRTg+IiCPkEAH34OkXbg+WkCCae567BMQcIKyYGhfcDOIBaAxDAAAjF5 -AfEH2wByAKpyIjGFDYT6IWAFFsP8M8IdFZWrnsgdenF991pP9JdrPdFfrvVE -f7nOE/21mZ0DXveg25iMBP5CZDC3Qs1ODpORAT0DyMAd5QA7LkQAqpVGUgBR -I1CUSUd0IBFWepSkyAoPmK8AXAa8B4xB4IJgPUUrgA3QBBgx+BPYC2g1zKIL -TQf478gmwJ2F5BgjhnAsFZhN6sBnoKaQcKQQP4R0gUwlg8pGEejDJMKzRbBP -cAAdqBBAN6VMRujDdMQpTChsPUxkkoeCwevARqRhAXFH0KBimwh+BbE1V+rd -4S1TvA6nmAeU38yBNYGJIKJQ4RSGGDQh3AemhmaiW5hGT6RkOmFgAhh60YGF -I0SIAKUc0gdeUVIthDFDPIrZEojAEEnlKeewDIIBIuVR7GWIPkM/AFaGZ+ry -G0CmsKk045jTAIifeQItwi3ACYVFwQA4wJUU8SXIxNWikIn0JYwUzHMHRoBG -cSgVsL9bJF6GWMIP/Qz0EggGYIniSICoxAW0g//L4Jtgo6I4ySAhXtSWyC5P -9NeGJ/JkQOQDHGNKEMXAdmIgYDUBn6BIKAgCIHAlAjhOCSAG/xwCb8QBwoCu -rBIiWBfhKdwuwqgM4BZxeyDzEGFLAteD8ArazrwcsThapdxs7ENikyJGc7wr -84VZhgyGaShFAE8fUbIq4B4lkEIZIdYAyPEgC+THQDW0I/Mp85zhJw+CDtsE -CO/DpMeIqzMXEIMy5sByoNuNgVYQJ8HbB2S5Aw+Y3wWoi7KAEn8e890uZAd7 -6IYFRSwFsA5QtYvApwhlQsYZQgxtzXy8CoflIz6OQsSVOeJ9AS8CH9NBYybh -SdMQGlOEOQIMRP0uYl9SHtAS+zAYgCuuW9CyBcKbNAgKHsJtAY3Co3TNTI7g -gcN3AxtlngvLBLmEZtOk5gAYkC0CJcAa8M8AskB1MkD04KNfzuOOuI3DTPiQ -v5RRwJ9DWxFEJJQ4ZQDVsOhwYZgrChYRqTEQ6WZxnAKgccCSsKglsvZEiF4Q -AgIEwwKlwhVwRtCWAjEL5XXhvTkmHqYuA9QA9IC3D1yEj5gmwBP4uI5xM1pf -8gidREHqQ4rTPEAADWCEcQIWY1bcPC8KmCJgWSAozBPCiMiFm2V1vvuvHZ7I -Teu713qiv17rif56rSf660ZPtPKFlz0niRGLhgBCAL8ARsTGIJVJjEgS4XMS -0uIXJixjMVAuI5PkAUtIqH6CC0HSax3STi3C+QO7xbCKCG+LpGCUrs58mB5Y -PiEAv0NecASYPn64PJIpfBbAB4wLgGTh1i2uLoBVNzoWwGoy6JM7tOuXfuKl -NwN9rB99Mm6H/tPxtn25rid6Xi9Ov/1kwb1BVYOx4dxyVbGhtgp0fhvbPGA/ -rININIshagRekwLoDJ4+IF/jw/4jTok5zBLCNag3IlI4acCo3IMeSTi0mMc5 -q1tUbEeLkqdMRADLQAi8CEkrsqSAo4gp6wiwCxsOZ45pAbMR2sPykHsLEUlB -1YJUDX5j8WZjVOpbWOsbV+qtWY4mCDIQAv9hoGkMF8QhRwWHnfOBDpW5CIEk -GNwSLBctwgJeAlYDY0KxC1iEni7XVHu9/mzaTGG34RQAgOHmOQJClsEfyCBz -AwwuhIdCa5kyBREkmQB6kcN9FT7CaRmmzTZ/NG0W5GUBGjJYJvzf5zDssD0R -JoZ7CI8FOBRGMBAiQ5eM+fjF9aMiBETHbOW9dmHmn6lNhlAHoAMxNVx6LlRc -FVLSASE43L5PobHEGCSCxwTBfhRkgM0B0LSkZFax0uaPauwIgYIAIAsAApGy -h2iBySwC3hOpWi6k1UyBcC2mlT4/AKqTtBSEiBlIIIl6pl6n/roT6AQ+glH2 -A5YVAaKdsACSkYiXuBCIaSPfy+Gy0HPoJRFcgR8zHsqAAbXA+Ka2zR9bbWII -CK3dBCDRk5hpQFwG9IAfqQswFyBggwel5ZAALkvAhAJ7FDC5UQZMw2o6tWir -NgtaFwGyZQlCXoEIIIewZ7BLEOOQshjgZMwEzzIeJQIBp5eFANa4HwOsNOhs -tAmYglsZHoCXhPcGlM1YweGc/Qh2LkaM7ENSwLwIupVj7hGDAZfBimFsYa8u -j/2zbRNxjspOw6ISrMkiBOo55tn34TaET9mlAiiSQWKBl6CTcDFQgzwKkwI+ -smu5DCSwLCWcnTDm4jWEhuR4PLycAwYSMCnyEKFmXgSIlgOolpuA/jSEGnWk -MSRCPoSRQA4UTQoIpYApiGlZEMoKNnDEw5g4aCQCADSeFIKlLIEcAAfEHbCe -A/eH8BAp7DfC6iINwVMXETWQLWWdA0xRyjKKtGG8GEV2aZGFtBCXiqirMACR -vQvREwwQHo4JWgPlpMQM+XhKPEc5KIZwATUkbkYZIFz2YEByWcB9d9CYhklE -MS+kFooLeQ5cCnuBM4WPSQUHhSDqQloTYTHxPI0x55R5BdboSKe4CSVKcxZj -PLADORjm0/oioiGyeMBeOYGuhCimoNtPOHeBJlPwnnclFmhVkoBhAu3xEfkL -yA6i3hxAFeRChBAihCIn2JnHbh5FCE7AbIBG3HOl15DIH61EhhQJAQr5UI0c -o+IwlJT3ooVzWGOGmDpMPbgFIdFbASkrYoDaQgqYudjvWNiKQsR7tI5MGRLP -JcdCQpxDTSBMzGVgHbADLAn9BRohaYjks0TGiNbcjmQFzJQnoR+RAFJE1IAY -JoyjTMIyUZ7fL8gi5QJciwLKrUWZyjrmnMW5L/OOhArCUy+RiSAzXFDnvkgB -/l1ahoG1xzU41QK+AiIUA5vAecCGIvaCzQDg7QDGGC9IhHHgGG4GO00chOgA -fNMyDAw9cDPYySiAw4Nx6od4BcKOFmGMO8C7h3lIGMIqDwGfG6BNDDLPEjAA -fq4AhA8RhQKCiwCA1wvCAL4TZpUUrOhacgzAGcwDZhuxVSJTxDrS9ai+iaof -WBBSLhRSCvyfgWip5Bs+l1YB4O46ZDx1oWFeJItEpcdFFFKSCwA+8pmLmCSF -EAEjU6WNBzOHEYcFnGYEDkM88qx16NeftURibAg+fJEjXMswnQLUhFDMFAFZ -ELoItqElCIWAUzzYUUFrDhgWAhdoZiY77E8E90Kr/Ar9YGJzmdK4fcToZBeF -TAPA0BTxDPQUjBSuF0MAOCY8C6H5LSp/1FQWPqJhiitcAN4A8UmUFYizQ8SM -aA5mN/Nz5bsQHwYI5CEaBNdgf7IAgV1HsAa9wEg98h6YpwwxHyImWqFhwCaI -gAWUGKF07OXwbBE5Gu4WKQxyFntBimCNqvgb//Yc2AjMDzQkhMnBXAKui5jA -HgwvQlEE5zCYLIqCUHgEVjjitxg+Lg/gftKsK1iLI0Rg0OEiwOMw65B0YNQI -KpK4LrQjhARCaRDzU9ojAIDLPCFAH6xC4sadIPLQHptWzudLRuWLBCG7TiXS -HyptjFCHLskw6VWbFWow6MF2UfhMJguzgpibSjwQ33PClIjqQxlDGWJSKDDI -x5QXAuEN4xniI95hNsDlHBOd+5irDOAk5JFLSzEFTCFcJS3YSVpXwA2f1gmj -IqViJ4/6y3jRYTY8wFlE74RBgSoQtbIgiEENiwH7iwhoK4HHQUSEiJjW3iD2 -XEhKMIUhg050uJ0igAsISZZyicDAh7oAHbE4FHD4UEQEYADCmKoip9UdBgfs -wwKxFGgGwWyHsQQNkUdiW1D5XR7AcggOdSesR1UJUFWZUN0QeEhG2PNytaqF -bhGjd/AROIKqCIA7YWOpWMaHn5BFSPgNTgFBQZoG8G4ErCFREoA1RhDAEgnG -i671Ico6k4GAw0Os5HE4KNLzOAoA/WIqAk09WnChMh/XE2FBpVQ84z4ikDzm -HUYjQAiLsABaV6QCpoNEI4wROHmgT0CYcwmLQwWltFIAQYgAaLgrYwokYihP -QyJtKJEi2IEcUAFUjgCHgCMgH8xN6sLxBnBwLpwZT72YSgRjn7QSEwPrzkSQ -iK6aS0TbPoXTqeRemqBnNApuAkK7VFBBtQfAgx5lwwEF4ToJHKdZHjGYqi5n -S0UpAsYVswuUQ/kRGDYgMagNEFZOAVjuA5vhh6Q1DUhY5sIVc1hBkN/lJGiZ -DsjBA0orOJwK0KyP92GS4AAl1I0TsC/gjkIPYUuSBVHhA1W6QC+AZF3rIeQH -OGQwzmLwHiIX0VIIRoXnYYdgllMIEwdkcSFRlMpN4IQCWhRJ8g75wUwD20JT -Aw4GuGkeEvLG4zFEO4WzhBZRYTHcl0tAWhRkRIHReRoVlN9ZaxEhAqU7Q5Eq -pIhosCDARyWijOIcOAPAXciqLGArAlp6zhMeFAKBBS0HdkgkYAKkp8gh1TmM -OWy3YlAQ+oULYAAN8oD6I8phF0AOmCMgF0CHInKDkG+I4K88bcKGWpVr2XOo -ChHBQI5IO84pjcOZG3sIY2hdHJYOIheD5wDGgGjQkwgKBncGM0xJOdbFKYw3 -gNADY8FlwPBGkBIP/IUpJFQH3A0j6OUwUxlE00swJLgXyHsaBVHeBUEjl0L1 -jNGSaIhYD9qewQsAlARUX011JZICl4BsPgJjzC9EL4gwEHTY5fhg+rkvaB2U -ymOBFwtXUmmPDKB/pJ0FoH2eAZBC7SIEwAFZLE7pUchcl33JADjgOxEXSN9T -ZbMhQn5IDGIpFmUqDwAdoMJHeBwqeYUViGnJnyGM78j6gywqsYSljjijNJtL -mRK4iSAv4lxSHUNA3gSuGCGSSFSOAFArgDVMeNExM3CW6JwysTz1EVVI8BTQ -gQqHoAc+AkyWgCSqSc0phxuGZP08kYPBVJ7X4e9k7vEAsTkPMEIPkJXqh1xE -HarWnAsADxeynecRwYkUyC1FfIsAKgPdfloF6g2JDBCvsogKEzxgYg8ot/Ax -0x5VO3EgcDilxEVQBVQFjUGs6eWh8NEzGTfYkA75KXIOgE0IE24Ac4gYEiIq -aAkSGghBRISFqCOiYYYwEyJJEwZYAZzvR13eRMgiiCVwUpZAfOE6ATOgrBTD -wKiAloBzRFOqfhqGEHPHOeW4qRgEKKNjHQpT4EMsculJ2J8UMkH5CAAaF54u -QxSZ03obUC7F6m6YwhOAOA+iRdVycUcILKBzsERUCwZPIkM3IyOKKArc45AS -oHuEAn7sSwqsuHAh5VTzhJYRShUdkJby9xFBAReTlwBpF7R1IkFkEwIhJ4nv -UwqOVqqiNAJDojyAoyaZY7Q41WGnYegpLwkuwhdh7BhrHAlaT+KcELfEVNAK -M2QQTguQDwE2on8MW6jizg7vRGVT8BeYgYgq3CLMbxGnUULFl7giVICUhOBm -FsE6C5hbiYgOVhVuOs7qpPCTxldp7poEvc4O201znV+U1Ftkmmnhxifa6NN1 -J3M2WlhhhzD4wBBwm1SCnFItIhVE8ACcgL7EvZVvuO85Xz29e/h0ELrmznRW -cqnvWPQc+t2uAcSN6Ysl3TlrdauZMIupHjamCBNQxaclQJ9nURB4SR7GJHyR -70tKK2B6YUbjwEN0lQH2ARUg9hadRBypDLP5UOEGJp2fqC/8OdWQgcwAaikf -BCNH+y1iHwpCGdwcEY/LmHCBoxEoq+XFwAcu9pIU1jEKKXXSgViZ9GgJFiYo -o8QCTBTCBQY4mTOE/YgnI0FREFArmg4ztyhcOBaYrVCBBF997nO+YBdTS+Mx -Wzj3ZO54IVR5N0h2Q9/xXT/uQVhO7DcN154Md936Sb2CUz+MR5dj/Wi00qiS -o7rVPedoYp6MV56smG0JfQtu3HlFW6wn4zu7jktb3e/MlxcXbHaJv+/co0+t -HU+KxWvaD3a8nE4ns8Ud9ZSSuJNS0GNWDPWdqd5EPced775XVyoG4dJbNQF3 -Fid0H3LtuUnsK5P1Tj27MvCuN7yYaverN5pM7e4gdRuPK3bVp6Ff8SKUsfmi -lUrao0ajfvE4fpIe3z8+TL/9/bfpk8N74aPki6Nvv/mD98XR8bfx/RefJ8+9 -B/fS+8GDF95R9HmQPDUcqlrK2VyeLGcjau4GS13tt2uSx+yCBnBHbxU8svcr -yrUS0RPfPEiS8ElwdC+LX2TRg/Qoe37/3t1n97z9J/e/+DZ59u3+F8f7B/fv -3Y+ex/E3+4F399Gz5/GTZ4ePvezR4Qs3ff77x0fJ0eePj3//4sHx4fP97Cj4 -w1F49EXw7f27L47vHT06dr+5f/9OzekLuTifKCn5Bv/0DRv2KxFRQ3hr1PLO -CjOu2Ph2x36j9o76eGi5IIn1XD+srtdbCqnJ5ItnLx65D755sn/86PNv7z56 -se/vfxPdP9x/hsnz3ed33YM/PDjwvHvPn3/uRXeP4vCb+3dUU+/wXy3Iyi5S -YwfPj765Gz/+5t4Tz3vw1DvAjD+4dzf4/PfpF19Ef3jhP43vJn/IHjz44tHR -ixf3k+e/P4oNU/SHeamN2kSbeWVvTgop61u0bHun9675BWSttvCHiOGAGwtK -QMNyAQ3QTsJApSMYrdfAXLkEuIEj0gAul9E2gDSMWAQ33VGn4kPYaWcGMH+O -ANWNUw//T1kWULoTsUkM+0gBs0dreXFIyy20p0gmsQBSX09QAexmEndjADKE -pVROJ8IUICARLgJUBIwADQg4YlVUHyFeBHjMgEJyxDNeV1WnF0nAbz2iGEAC -Q/bdPKGtjQBGiRsBu8U8KagQirZTxkB5+AdGgNzY3eAI4YPsVunpTNJnx1Z8 -YfMzjmaJr7H3pn33x2Y9dNBrpKwsWwgCCY6Qk1H+kEpyCy/htN0lDfxEYlJz -nwOAIZanUSEWDOIwpE1vZMS8ri0BMg9p35lfxMLjYRYkgZ+KnCo+ae0V4VoB -vJ5KH4hKcPDcp2Us2q3GPYKBvUYaw1LpUvFeAP5CGLwgAEYEEAXaygWJGEJw -Sfu/JJirkp8UeKdU604ZLFoG6wg30LmLQCjIGV7JfAmB8yIWAyNGRYQWCmAF -n7ZIwOHSYhOjehaeYNy0lts9eUcIcG25RGvyGgBiU1bSvqc/Fd3KRMJbnVSf -Le1056H2p2tC71IVEK3deDKmHZweJgZTTJtZY5+iKZZmAMuYnjjlCN+Ao1JE -cBL8i3mWdm0YhRwQevXDIuB5IHLKQiEiBXrNZB5EiEizDHID7gWUWEl9sC2j -+nWqDHa7EwMEvOz4X9EhLiVfZ9za4GQc0+4ShMuBSGijdB7LHLg5TfwAgU6Y -UfEVrUq5OYW6gUhBovBzIQEUAdE7rA7FfTymokKRFz6UlidRFHkui9FGIilr -AHdfiADyjxgtBbxLKNMr/cKTBlXa79lSwYuG5ObAidUv3Zpb5mu3jXMn6YY5 -e3LD8SmqDOS6I1TsQ+YYlY7TU+on1AkqjdNrNhad1KfZNJ7uHFPzycaWe5+O -VDnQsjyanNFf+9yefEF0zXtvd/Xufyn27qjzsO+8ax3doo5goYMPnNds7sw1 -CtRnAqiP5drDCuTsghHypONdRs4RnUm9mNGXWnuHAIR1BclTOZcMcub0Pz/6 -/N6WOk3BHKcC7Ph39GnHAzjamVxI+kV5vvmw9/8DuLRzoWj+AAA= +H4sIAAAAAAAAA+y93XYcx5UueF9PkU1fGLABMDIzMjKTx7SHIilRP6RokrIk +uzVA/BLVLFThVBX4Y0m9WvaZV5jbs9b0hWce4Nz0mru56pt+h+4nmW9H5G9V +BQBKlNrd52DZIlCVGRmxY/98e8feOw8PDycvbyX5ZLKermf2VnLj2alNPnj0 +WfJMzuwyebxcrBd6MbsxMQs9l2e4wiylWx8+v7DrlT5dvDpc04WH582FEy3X +9vli+eZWMp27xWQyPV/eStbLi9U6Y6xm2eTVYvni+XJxcU5XGHtu8Z/5erJa +L608G3/2wr7B1ebWJEkOE/8c/5tevjlfL54v5fnpG/+B1XJ16n87l2/OcOdq +MvnZSzu/sLcmP0uSpT1f3EpO1+vz1a2bN59P10fP5xdzuz5aLJ/fnK0Mw8SO +8PFNuniG+a/W/eX4fsflNycTebE+XSwxt0M8OUkCcR5OXyxmcpp88P/9v4E8 +/jvceCt59tm95N7SrrCy5LP59KVdrqbrN8nCJc+sPp0vZovnb/zVUqmlfUk3 +tNf7j4lAFhN7YGdnp4vZ+o/44ChJmf9SY6hbo8v1wmA+9w5ZykTdfHIxX9PG +fGCXZ3IeHmbP5HR2KzkL8z7qtvV/W18cmjDckbGTyXyBe9aYNW3Gk/fvZqz9 +JWW8+bWoRN38KrK8/bQsedX8WrE8o18ffHzvfczt0w+PUob/sfJmXVaH+aHg +2WHKce9heZxzXPj0wdPuOsGy6uajD58+O3r/w8dPj9KKHXKwF5ism9lkcnh4 +CPqBMlKvJ5O//UPy7L3Pk7/9KnxxNjVmhrX8LPkQhFiYC72eLuajy96zr+TS +JutTucZ/pqsEbH9BHJXg99V6OpslxL+H0zlx/HMQaJXIuUnO5BvQd76W03li +l8vFcnU0+WxlEwzzZnGxTBav5slyunrxN/T0R4u1DE8+TE5uSKVvnCSg8wKM +h4faZDZd26Wc0Y5P58+TE1xxktg57ahJ5Cq58/Tuhx8mf/C78BWNIZNvEjUe +A5MhSZz7BxGTyeTVdH2aKLp+Zud7cn/joXb+HN9j/uoNfYZb6GP6o52IpHvP +pfm9XS723hwkm0OMrj1I/ojLDnE5zXq9GD4EY78Jj6ER1XS92nu9f3LzxH9E +v46GPZvOp2cgx/ziTEEl4Wa642aY5txq7IFcvqFHQNCxI7Rb/r6L2Xp6PrMJ +PtTTFdFhOodywhiv6bkX+IuWsfm8kzcnmKhcrZPV9Pl86qZaYkR6ZkuUdpiT +1yfjZRIrtBsFSkJpELcEwkCR4ZY9NX2OS8xUzvfbSXzpl/zq1ILzTr48IVaT +yfkC6gFc3T2sWT6+tP/1YvoS2pDWuWjW8aVfB424xCQWZ3tvBquSSfhw9iZ5 +bufgrTXmt8IwmKttdgPLC6z0i0Qle2cLkzzCCDf9J6OPRlsTSAwKeTa7mdjX +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 --> diff --git a/test-vectors/test-case-1.md b/test-vectors/test-case-1.md @@ -1,218 +1,298 @@ ~~~ pseudocode -exchange.master_pub = 3cb5e9823db2b335fdb3f284ae960e56be8b081c6819b8b0217f38b095 - b4313b -exchange.priv = 1bf4149fa644b3c7f2bf02da4703ff2de3fa160dce0c750eabfa0f7ac70a2442 -exchange.pub = 4c130aae3246831808a162e2d4330de394e5f0d7dff75a80f3fa045b1a43eabb -exchange.url = https://exchange.taler.example.org/ -denom₀.pub.n = ba42b9e75e48847bab175ed4797384d68a430fd849a914aa68438349743b2728 - d9ca97709c15d5c81c7d9d11c84ec9c60cec03aed4b36ad153768eb30cf98454 - 74e97ee9d7475ebc926d87135d56926b7df1cea3ec38897a74bc3e245e59ffa7 - 6e5aff2c2f2eb84e7133a879f4229221f91c7bddf96088e4020e16444d94acc3 - 0708069f4a1bde3dcbead32e3916a9f6722adb3d63bb9075dde49258fbd28a9a - 09251fa08b64faee53a506b9f637136c72af7382b9243fa8996ad4d72cc1b05c - fb45271cb3187b4eeec0b5f9e847cdcc0c3ddef9787164a1aee7e4e1ee6de1b9 - 5282c1ff646aa70aabd1df0003f75d3585e9e740916cee4f7bca0cd82f72104d -denom₀.pub.e = 010001 -denom₀.priv.d = 07bc432fbc6eeb0f9ec2a4f5d2886d65228f57ee5ddac788af355493bd9fc247 - d449b161e41d95080f44d93bd6938d162c4db5f6720f7479768ba73000f330df - 780e856e8d3a01d1778c546e85b3157820de24bc9290238782271a3694f38c66 - 45f3420331ff70f8930377f4fea25beaccc775ce796f9ca7c97d0fc82ce7a688 - 0dd437e6b30695ca51a58f0239aef7481932550ce61b5b085313cb888c893cc1 - bbef6b47c607e1189f8cccb04eeb9f87b9e53f414850f8b923ce83e2859c0434 - a3d14d861e864fd5ce701af11611398a73515b7056b2828e564cdec6052bdbb4 - 3ff435178577198de0676e5d378ade9b31844e81e2218ba3b3aec5bff9a26621 -denom₀.hash = 8653090e3f3f5efac9770a5dd0c97813940c191c9fa1713367f8bb1279b1e3d2 - 7f32d16ea7699501e5fc4d176725d76ab0307f9bdf9d0d263c2256a7f1c63143 -denom₀.value = KUDOS:5.12 -denom₀.fee_withdraw = KUDOS:0.01 -denom₀.fee_deposit = KUDOS:0.01 -denom₀.fee_refresh = KUDOS:0.01 -denom₀.fee_refund = KUDOS:0.01 -denom₁.pub.n = d5455fb79449df7bf548e384d5201d75f4f7697ef9b8051eb8536f66783e70ca - 2d524fefa6840c1f87d9d881486815d5ace866a32269b05bdba7ff6024811c19 - 456026b0a59da4db96f58729d286c90be8cd9cbf575d346202b43282d601b575 - 1ff77a88a0742a692349a0e3fa8ed5518fc5378fcf434929b541c942573abef3 - 10b87776e976e81cf650a04399fabddbde677163918250c4d45f5e90ee7539de - 500a8e915be1d5f17d79cb9585ccdf5dba42ef53c24eae7d7c93c4e0a4327882 - 45b7c76a587f0ac6889d30389531362d51c2ad65cb1e28b4ad4cc97fcd2a4aed - d6612ae8888eb2dbc4de0cf30f46a43b76cc8c3245eefe013195a237f02d13b5 -denom₁.pub.e = 010001 -denom₁.priv.d = 5a520e0e663bbeecf55d5015d258ce8145247ec62aa5d76d422cfbb1cedccad1 - a4ce06527d17d1368d47221ce678463eff02516d6746914ce5c2c9318364366d - 31675e1b539866d8249f89059a4640e0cd503ec0fe13d7fa6620c07f8e789ccb - a4a51f7cbb4f5722bdb211f45b09a0a7f11659c88ac37939b3accfba4bccf24e - a260e21aaec0dfbf857178438986e963e9e356277c3badc34fc91b705d9956b4 - bedc0947d65924d7dd31e564de798eb06837380caed6813d3761d119901c5540 - eb74c3cb674fdfd64b67d78ebd40de0cafd53c038a0a8e87890b953b8b94a977 - 1a6efb3142ca02db873053f8d1de2082db4366fc072aafc723c036a2fb999605 -denom₁.hash = 1de6052bce12feaa2d26e3bba1789b0c2295028279f3eaff8e1345448ba05390 - cff49656ed72a1f7ef6ee2c4a80f80eefa0d0f906e74305b0215c4194ab1c7b8 -denom₁.value = KUDOS:2.56 -denom₁.fee_withdraw = KUDOS:0.01 -denom₁.fee_deposit = KUDOS:0.01 -denom₁.fee_refresh = KUDOS:0.01 -denom₁.fee_refund = KUDOS:0.01 -denom₂.pub.n = d1320993658042f995f09ed66ad2283e457a1f44cad96f1cf5a6299ac93d6172 - 4a7448d70e56a38666ec66352a5810ca3e544d957dedb5789e135589fcb8b139 - c65a2f70d7c421dfd4e27cf38d463074d286730be23d446fc07811519b068346 - b28b86b94acff35524eb62436852714c92f03b0bac21bb6bf727734be7871b70 - 2f928c3ced4bad9ba2d49cec6a86d1019181c65c16abf7b391f103c90c3eaaaa - 9d5298a4a60c71bdaf0f08246327a62399bf4c424c1ed7718cb5df178daa9710 - ec9d098e99ed0456de2fbaf7865ba47931c52d1cac78cacc1bc451782587487a - 6189addfe5dcdf6f190f28816707e3d1e104b5a1f7a570b75c1951588f3289ef -denom₂.pub.e = 010001 -denom₂.priv.d = 311849a8066faa083218b4e6444e8af44650e94ab7427d31b232eb5bb0b3cf8d - 478cefd54cbfa783f0deb503f02a97d226fb98f3a708a508a82c886c285bddf7 - dda5a7b19769a7bb84961cd5f9c749b2f8ff65bb99be6033cbdb41d1418d2f3c - e5c519fa9d649d4a53ae4c32dea64e81b6905b831b44155cbab5cef8b6defde0 - 9295662cdf2189f2763ede05bea0acb707b9b6b087dcebb9ca81f1c2785d6560 - f93bf1a1860676cccceb079c22b48b9fdef68e1d286164f132ffddeab29fa7a7 - 04e1bc3f9f5e28c39675f17136aed8542aa4470a14a7380a4016b21d43ef5b9e - 2b241ced017c54247c12fd6beccb7bd356820b0246553c751b3e071468c2efdd -denom₂.hash = 4f8c487d21ffb5bb7571f5d66bcf6f93f4f5c043df5483669383128700064e86 - 37afecd6029cb36dfc5a60d20ff3112ff1b5ad1b53c78cf39ad13cd2531ba24e -denom₂.value = KUDOS:0.16 -denom₂.fee_withdraw = KUDOS:0.01 -denom₂.fee_deposit = KUDOS:0.01 -denom₂.fee_refresh = KUDOS:0.01 -denom₂.fee_refund = KUDOS:0.01 -denom₃.pub.n = bddb1806b7b7663d94bedbeccbb515987fcae457b5920d85b8485edac6ab0e73 - e6991780e9f1fa6f88e500e0ccd9eeb80d8e3b66289a7cf1b25bd56d05081d58 - 3864ad225a36f8d38391782a85bfe320d439443e8ea19f555edb36fcb58af81c - a5168ca7c42dda68f191bd1587b4da27703384f2aad300a043549c67fc6defd9 - 8bd1074b3bab1bc0d89b87d81f8a1f555a3b4ce2b4ca7b0b1d8f446fa93258db - 511cc3bc2ff62871cb4c746f6806d0b839db8cc560da06eb5619d9d42309a771 - 61373708db18e453ff0a1d6f63281c54ffacada7c8bf5ca7281ffe7e2e5be03f - c006c064d820f719e672429628837399a565dd9d70f6e9ed91e1eb0567978015 -denom₃.pub.e = 010001 -denom₃.priv.d = 1e3370867d0a0d1705b18e0d848d73f7d422f920e4aec23cea7184b9463a26c1 - e9704d4cacaa5952b8683eb403e78a5c628cfa1b9da0e44d9462f1b7f66c1c88 - 3b419f484ed3de257e113c1828e4e5e3592f1a3bddf78d7f88927ee99892c336 - 2ca2c226dbd90971d68a54404d069d5f5704b304e131fb3058959338781a2039 - 93804f64def2980210dc3f4e77c1207400e922032952cb154bb1b776d164cce6 - 9e418844f2f4b20850c0a23d30059362edadfe00fbfa04b6833fc4606deda441 - eb345c49b52d91063da7c55ecea7b32e99a49a823264955803ce3ee220a2cc64 - cd4321e18ae28bb1071c7746e8a3d69adef5113e21a01cab6809668793c2a94f -denom₃.hash = 96524d30b4398d0d5bbe2eff902c4df1cc8286629d149bee0530edcfb361c468 - ea5fdb1b41d538223c8b3fe1a974951bb3290bbfffc6f10cbf0326585041ca4d -denom₃.value = KUDOS:0.08 -denom₃.fee_withdraw = KUDOS:0.01 -denom₃.fee_deposit = KUDOS:0.01 -denom₃.fee_refresh = KUDOS:0.01 -denom₃.fee_refund = KUDOS:0.01 -merchant.priv = 7607240acc4563ebe2e38e76eaf61d74160d71c9a6670ae2e5147ce848767037 -merchant.pub = f54d646619723f7fa2ce79267953fdd8654cfcd0f2cfc0c5e880e3e0d0ab19f0 -merchant.url = https://merchant.taler.example.org/ -merchant.payto = payto://x-taler-bank/bank.taler.example.org/merchant +exchange.master_pub = 3cb5e9823db2b335fdb3f284ae960e56be8b081c6819b8 + b0217f38b095b4313b +exchange.priv = 1bf4149fa644b3c7f2bf02da4703ff2de3fa160dce0c75 + 0eabfa0f7ac70a2442 +exchange.pub = 4c130aae3246831808a162e2d4330de394e5f0d7dff75a + 80f3fa045b1a43eabb +exchange.url = https://exchange.taler.example.org/ +denom₀.pub.n = ba42b9e75e48847bab175ed4797384d68a430fd849a914 + aa68438349743b2728d9ca97709c15d5c81c7d9d11c84e + c9c60cec03aed4b36ad153768eb30cf9845474e97ee9d7 + 475ebc926d87135d56926b7df1cea3ec38897a74bc3e24 + 5e59ffa76e5aff2c2f2eb84e7133a879f4229221f91c7b + ddf96088e4020e16444d94acc30708069f4a1bde3dcbea + d32e3916a9f6722adb3d63bb9075dde49258fbd28a9a09 + 251fa08b64faee53a506b9f637136c72af7382b9243fa8 + 996ad4d72cc1b05cfb45271cb3187b4eeec0b5f9e847cd + cc0c3ddef9787164a1aee7e4e1ee6de1b95282c1ff646a + a70aabd1df0003f75d3585e9e740916cee4f7bca0cd82f + 72104d +denom₀.pub.e = 010001 +denom₀.priv.d = 07bc432fbc6eeb0f9ec2a4f5d2886d65228f57ee5ddac7 + 88af355493bd9fc247d449b161e41d95080f44d93bd693 + 8d162c4db5f6720f7479768ba73000f330df780e856e8d + 3a01d1778c546e85b3157820de24bc9290238782271a36 + 94f38c6645f3420331ff70f8930377f4fea25beaccc775 + ce796f9ca7c97d0fc82ce7a6880dd437e6b30695ca51a5 + 8f0239aef7481932550ce61b5b085313cb888c893cc1bb + ef6b47c607e1189f8cccb04eeb9f87b9e53f414850f8b9 + 23ce83e2859c0434a3d14d861e864fd5ce701af1161139 + 8a73515b7056b2828e564cdec6052bdbb43ff435178577 + 198de0676e5d378ade9b31844e81e2218ba3b3aec5bff9 + a26621 +denom₀.hash = 8653090e3f3f5efac9770a5dd0c97813940c191c9fa171 + 3367f8bb1279b1e3d27f32d16ea7699501e5fc4d176725 + d76ab0307f9bdf9d0d263c2256a7f1c63143 +denom₀.value = KUDOS:5.12 +denom₀.fee_withdraw = KUDOS:0.01 +denom₀.fee_deposit = KUDOS:0.01 +denom₀.fee_refresh = KUDOS:0.01 +denom₀.fee_refund = KUDOS:0.01 +denom₁.pub.n = d5455fb79449df7bf548e384d5201d75f4f7697ef9b805 + 1eb8536f66783e70ca2d524fefa6840c1f87d9d8814868 + 15d5ace866a32269b05bdba7ff6024811c19456026b0a5 + 9da4db96f58729d286c90be8cd9cbf575d346202b43282 + d601b5751ff77a88a0742a692349a0e3fa8ed5518fc537 + 8fcf434929b541c942573abef310b87776e976e81cf650 + a04399fabddbde677163918250c4d45f5e90ee7539de50 + 0a8e915be1d5f17d79cb9585ccdf5dba42ef53c24eae7d + 7c93c4e0a432788245b7c76a587f0ac6889d3038953136 + 2d51c2ad65cb1e28b4ad4cc97fcd2a4aedd6612ae8888e + b2dbc4de0cf30f46a43b76cc8c3245eefe013195a237f0 + 2d13b5 +denom₁.pub.e = 010001 +denom₁.priv.d = 5a520e0e663bbeecf55d5015d258ce8145247ec62aa5d7 + 6d422cfbb1cedccad1a4ce06527d17d1368d47221ce678 + 463eff02516d6746914ce5c2c9318364366d31675e1b53 + 9866d8249f89059a4640e0cd503ec0fe13d7fa6620c07f + 8e789ccba4a51f7cbb4f5722bdb211f45b09a0a7f11659 + c88ac37939b3accfba4bccf24ea260e21aaec0dfbf8571 + 78438986e963e9e356277c3badc34fc91b705d9956b4be + dc0947d65924d7dd31e564de798eb06837380caed6813d + 3761d119901c5540eb74c3cb674fdfd64b67d78ebd40de + 0cafd53c038a0a8e87890b953b8b94a9771a6efb3142ca + 02db873053f8d1de2082db4366fc072aafc723c036a2fb + 999605 +denom₁.hash = 1de6052bce12feaa2d26e3bba1789b0c2295028279f3ea + ff8e1345448ba05390cff49656ed72a1f7ef6ee2c4a80f + 80eefa0d0f906e74305b0215c4194ab1c7b8 +denom₁.value = KUDOS:2.56 +denom₁.fee_withdraw = KUDOS:0.01 +denom₁.fee_deposit = KUDOS:0.01 +denom₁.fee_refresh = KUDOS:0.01 +denom₁.fee_refund = KUDOS:0.01 +denom₂.pub.n = d1320993658042f995f09ed66ad2283e457a1f44cad96f + 1cf5a6299ac93d61724a7448d70e56a38666ec66352a58 + 10ca3e544d957dedb5789e135589fcb8b139c65a2f70d7 + c421dfd4e27cf38d463074d286730be23d446fc0781151 + 9b068346b28b86b94acff35524eb62436852714c92f03b + 0bac21bb6bf727734be7871b702f928c3ced4bad9ba2d4 + 9cec6a86d1019181c65c16abf7b391f103c90c3eaaaa9d + 5298a4a60c71bdaf0f08246327a62399bf4c424c1ed771 + 8cb5df178daa9710ec9d098e99ed0456de2fbaf7865ba4 + 7931c52d1cac78cacc1bc451782587487a6189addfe5dc + df6f190f28816707e3d1e104b5a1f7a570b75c1951588f + 3289ef +denom₂.pub.e = 010001 +denom₂.priv.d = 311849a8066faa083218b4e6444e8af44650e94ab7427d + 31b232eb5bb0b3cf8d478cefd54cbfa783f0deb503f02a + 97d226fb98f3a708a508a82c886c285bddf7dda5a7b197 + 69a7bb84961cd5f9c749b2f8ff65bb99be6033cbdb41d1 + 418d2f3ce5c519fa9d649d4a53ae4c32dea64e81b6905b + 831b44155cbab5cef8b6defde09295662cdf2189f2763e + de05bea0acb707b9b6b087dcebb9ca81f1c2785d6560f9 + 3bf1a1860676cccceb079c22b48b9fdef68e1d286164f1 + 32ffddeab29fa7a704e1bc3f9f5e28c39675f17136aed8 + 542aa4470a14a7380a4016b21d43ef5b9e2b241ced017c + 54247c12fd6beccb7bd356820b0246553c751b3e071468 + c2efdd +denom₂.hash = 4f8c487d21ffb5bb7571f5d66bcf6f93f4f5c043df5483 + 669383128700064e8637afecd6029cb36dfc5a60d20ff3 + 112ff1b5ad1b53c78cf39ad13cd2531ba24e +denom₂.value = KUDOS:0.16 +denom₂.fee_withdraw = KUDOS:0.01 +denom₂.fee_deposit = KUDOS:0.01 +denom₂.fee_refresh = KUDOS:0.01 +denom₂.fee_refund = KUDOS:0.01 +denom₃.pub.n = bddb1806b7b7663d94bedbeccbb515987fcae457b5920d + 85b8485edac6ab0e73e6991780e9f1fa6f88e500e0ccd9 + eeb80d8e3b66289a7cf1b25bd56d05081d583864ad225a + 36f8d38391782a85bfe320d439443e8ea19f555edb36fc + b58af81ca5168ca7c42dda68f191bd1587b4da27703384 + f2aad300a043549c67fc6defd98bd1074b3bab1bc0d89b + 87d81f8a1f555a3b4ce2b4ca7b0b1d8f446fa93258db51 + 1cc3bc2ff62871cb4c746f6806d0b839db8cc560da06eb + 5619d9d42309a77161373708db18e453ff0a1d6f63281c + 54ffacada7c8bf5ca7281ffe7e2e5be03fc006c064d820 + f719e672429628837399a565dd9d70f6e9ed91e1eb0567 + 978015 +denom₃.pub.e = 010001 +denom₃.priv.d = 1e3370867d0a0d1705b18e0d848d73f7d422f920e4aec2 + 3cea7184b9463a26c1e9704d4cacaa5952b8683eb403e7 + 8a5c628cfa1b9da0e44d9462f1b7f66c1c883b419f484e + d3de257e113c1828e4e5e3592f1a3bddf78d7f88927ee9 + 9892c3362ca2c226dbd90971d68a54404d069d5f5704b3 + 04e131fb3058959338781a203993804f64def2980210dc + 3f4e77c1207400e922032952cb154bb1b776d164cce69e + 418844f2f4b20850c0a23d30059362edadfe00fbfa04b6 + 833fc4606deda441eb345c49b52d91063da7c55ecea7b3 + 2e99a49a823264955803ce3ee220a2cc64cd4321e18ae2 + 8bb1071c7746e8a3d69adef5113e21a01cab6809668793 + c2a94f +denom₃.hash = 96524d30b4398d0d5bbe2eff902c4df1cc8286629d149b + ee0530edcfb361c468ea5fdb1b41d538223c8b3fe1a974 + 951bb3290bbfffc6f10cbf0326585041ca4d +denom₃.value = KUDOS:0.08 +denom₃.fee_withdraw = KUDOS:0.01 +denom₃.fee_deposit = KUDOS:0.01 +denom₃.fee_refresh = KUDOS:0.01 +denom₃.fee_refund = KUDOS:0.01 +merchant.priv = 7607240acc4563ebe2e38e76eaf61d74160d71c9a6670a + e2e5147ce848767037 +merchant.pub = f54d646619723f7fa2ce79267953fdd8654cfcd0f2cfc0 + c5e880e3e0d0ab19f0 +merchant.url = https://merchant.taler.example.org/ +merchant.payto = payto://x-taler-bank/bank.taler.example.org/merchant ~~~ ### Withdrawal {#tc1-withdraw} ~~~ pseudocode (W1) reserve key generation (wallet) -reserve.priv = d9641dab5c7f2474573871c25cae2f6c8924ace4157a56d128b1432e55a6c6ba -reserve.pub = ec8ad5e4c6abcf4d0d597f0066a0e3ea0370d221973e06e73f4287148cb93c38 +reserve.priv = d9641dab5c7f2474573871c25cae2f6c8924ace4157a56 + d128b1432e55a6c6ba +reserve.pub = ec8ad5e4c6abcf4d0d597f0066a0e3ea0370d221973e06 + e73f4287148cb93c38 ~~~ ~~~ pseudocode (W2) coin generation and blinding (wallet) -batch_seed = 466431296486ed9cd71fc207254820a2c4a85aeb0b2041494f8bf1f8cd30f113 -coin_seed₀ = 88899daa409b8c4c4a91c8e39030d247d00b292eff952e36067fbe33f2d7ce48 -coin_seed₁ = f5be0b8790719072c7043c257f2c114cd8cb45ea5d98c4aa25d9025f45f1caeb -blind_secret₀ = a3cbe2b0babf5bdfb98f45804acf63225c16e09be1677f705393df3f5de98ebf -blind_secret₁ = 8ea6335ed3ff8a41f9fae95e9fd87382be402d6c26ef972381dee6b3c1e9d775 -coin₀.priv = a5a38bb23a9f36564f9d4e566cdd7e3521b04f8ea4175da726ac4e3ac540b485 -coin₁.priv = ae98c5207fe31e20a7b7a8677b780c6735ce69df32d3085d504010f23c59064a -coin₀.pub = afbdf99f1a794add25bad59c9a3f442714e166adc99c57db991947669a36b185 -coin₁.pub = aa7118596b1adf89543e9afcf2925e516a782eed9d75c8abc4a470e7efdd7fe4 -planchet₀ = 64ede0cf40a952b95af4b09b22c6fd27a1ff6d0ae3920ea03fe14a8b547f1e14 - a2eea98443e7aa092075f6585103fb06c1d68fb4616bf33ae30a207e51840f1a - e655a734184a73d804df42650ce296954c9b61e249486468f7fda8a74f85ec6c - cdb34a66819fbeaf846b10087ffaf8e734428a907b96c6a112f8f943b3a8d554 - 55c01b0daf55456acf0715874ff90fba45b265e2021a70997100fb18bfbef822 - c8475820b4855f141730751bcfad2e7eb46dd6c6a400a8a6a98486c4a2bce4d3 - 407a0d0ba612faebb49428ba3a1986eddadb04b6790fbb7bd27cc0bd98341c60 - ec5b980275202aedd4b0cf3b7ee1732c67c84db4b30b60b551cbf849222c60e1 -planchet₁ = 41f8a6622c99b6a9c30d52d19fc2c20a39a481219de4b0f3e7f604efed5d9625 - 54ea13255785d10a037e14abd75d80a0aa9861df9d80a051c418ff197e68bd0e - ee61e6fd5d3214633734659e8bbd7dd2fe566bd41c537a5759bad9bbca6b2eb7 - e3217e7d3cbefff192d83bd0527dbe0eff56df0b2e2062670d2873ca7766a7c1 - 255e6fcf2c37e95de19fcad244f3986bab45c0a3aca726fc682455ea1166a238 - 9152d7a67d181f035de6bdb97633888f0594c2f63dd3965134372507faf84f75 - 3759abd662d4c7e8df7e01149ff44da3499ed49406d9398e86c4abf12a1f57f3 - 8002115ef7283e4d5422b41c752a0cce8c2c1a9b84e109b4554fc1150ef578b9 -h_planchet₀ = 888da42dbf4897a5d6d9420b827e340c74c0b0e973e140ad1c7b9abfc400a9ec - 5a86b3185e4c656dbe8e01125604616de83fa28910fae513d016f56c3ca94eb4 -h_planchet₁ = f20015bbe0147313e59f9e64ee9e836c192b5d504dbd3328fcfce41fbe9310d6 - aa96d91fdd77599c122cc5390ad7cb86d2c6d4261bd5950e7ec0f86959613841 -sig = 2ae0027dd4a196c4741d60e3e7ff933d7374fa5534d15f1cc2e96e9ab3392894 - c65ab6a0af31ccdb395db5c526770077642502e27d4619d385a91dd13854e706 +batch_seed = 466431296486ed9cd71fc207254820a2c4a85aeb0b2041 + 494f8bf1f8cd30f113 +coin_seed₀ = 88899daa409b8c4c4a91c8e39030d247d00b292eff952e + 36067fbe33f2d7ce48 +coin_seed₁ = f5be0b8790719072c7043c257f2c114cd8cb45ea5d98c4 + aa25d9025f45f1caeb +blind_secret₀ = a3cbe2b0babf5bdfb98f45804acf63225c16e09be1677f + 705393df3f5de98ebf +blind_secret₁ = 8ea6335ed3ff8a41f9fae95e9fd87382be402d6c26ef97 + 2381dee6b3c1e9d775 +coin₀.priv = a5a38bb23a9f36564f9d4e566cdd7e3521b04f8ea4175d + a726ac4e3ac540b485 +coin₁.priv = ae98c5207fe31e20a7b7a8677b780c6735ce69df32d308 + 5d504010f23c59064a +coin₀.pub = afbdf99f1a794add25bad59c9a3f442714e166adc99c57 + db991947669a36b185 +coin₁.pub = aa7118596b1adf89543e9afcf2925e516a782eed9d75c8 + abc4a470e7efdd7fe4 +planchet₀ = 64ede0cf40a952b95af4b09b22c6fd27a1ff6d0ae3920e + a03fe14a8b547f1e14a2eea98443e7aa092075f6585103 + fb06c1d68fb4616bf33ae30a207e51840f1ae655a73418 + 4a73d804df42650ce296954c9b61e249486468f7fda8a7 + 4f85ec6ccdb34a66819fbeaf846b10087ffaf8e734428a + 907b96c6a112f8f943b3a8d55455c01b0daf55456acf07 + 15874ff90fba45b265e2021a70997100fb18bfbef822c8 + 475820b4855f141730751bcfad2e7eb46dd6c6a400a8a6 + a98486c4a2bce4d3407a0d0ba612faebb49428ba3a1986 + eddadb04b6790fbb7bd27cc0bd98341c60ec5b98027520 + 2aedd4b0cf3b7ee1732c67c84db4b30b60b551cbf84922 + 2c60e1 +planchet₁ = 41f8a6622c99b6a9c30d52d19fc2c20a39a481219de4b0 + f3e7f604efed5d962554ea13255785d10a037e14abd75d + 80a0aa9861df9d80a051c418ff197e68bd0eee61e6fd5d + 3214633734659e8bbd7dd2fe566bd41c537a5759bad9bb + ca6b2eb7e3217e7d3cbefff192d83bd0527dbe0eff56df + 0b2e2062670d2873ca7766a7c1255e6fcf2c37e95de19f + cad244f3986bab45c0a3aca726fc682455ea1166a23891 + 52d7a67d181f035de6bdb97633888f0594c2f63dd39651 + 34372507faf84f753759abd662d4c7e8df7e01149ff44d + a3499ed49406d9398e86c4abf12a1f57f38002115ef728 + 3e4d5422b41c752a0cce8c2c1a9b84e109b4554fc1150e + f578b9 +h_planchet₀ = 888da42dbf4897a5d6d9420b827e340c74c0b0e973e140 + ad1c7b9abfc400a9ec5a86b3185e4c656dbe8e01125604 + 616de83fa28910fae513d016f56c3ca94eb4 +h_planchet₁ = f20015bbe0147313e59f9e64ee9e836c192b5d504dbd33 + 28fcfce41fbe9310d6aa96d91fdd77599c122cc5390ad7 + cb86d2c6d4261bd5950e7ec0f86959613841 +sig = 2ae0027dd4a196c4741d60e3e7ff933d7374fa5534d15f + 1cc2e96e9ab3392894c65ab6a0af31ccdb395db5c52677 + 0077642502e27d4619d385a91dd13854e706 ~~~ ~~~ pseudocode (E1) coin issuance and signing (exchange) -total = KUDOS:7.7 -blind_sig₀ = 139af4e7e7f6e9e0391e22f78cb0b2c334e6d6667633a192f56fde38ac9feec7 - 841be59b2aa993084c50f70dfd9673dc723eec9d84c28ebd5f8104d1b0b29cf1 - 18cd64cbe33925524a3363a1a6f24f59d47a404cf74680eee97cdeb8cc44a0b8 - 4f3db4496d9bed1224c0fbda64d40f84ef5447d764fb714ca8e72a23a882e749 - e47a519310f6d87b3e8ddc3e4ac4e541cdbfe7550c92f41c511b544d9fbdc2a7 - 296b958e9df0b1394210aef4f1a780a129883d4bcb45425eef96204a7eaa9daa - 7d21827ecbf4571cefe6dbe65314e61c688175c1e81e01d4f0377c9c2312b6cc - 3487f2dd2cf8d85efde346f4d1a12de70bec4038b0bea0c505087c0e67ce4694 -blind_sig₁ = 89649cf83e2ba2cd75c7a1d01809c33d5d02fec81649256215f13a8965ad37d8 - d47c264668ec187e46d75210ce601362fbb15f61a24ec1d337dd2589b5a4ee0e - 77a8d9734aca6a149b9f9b3a78c158b1f8cb243b8cbe9c2212290e8bc731d023 - 82463f3e1cf0fc86c5472b8c96c5eaeac9c9064fdf7411f97935f27fd0bf8820 - 0440c7cc3e6960c5c5156aedb5a820077be08f1ac4b00780258d7b843b21d7ba - f2d969d1b3c77a08b4fe14b216fe78c7e4c0ae964fc06bf3dfe7ff20ec85fa4d - 5e5aec24d89848645ffadb0de3da80c6e41b96571ef28e3d132b7c3fd16a289e - 32389cffb653b4744fabf882342f0db9aef110351d8ffd7a3b86701f0f5034c8 +total = KUDOS:7.7 +blind_sig₀ = 139af4e7e7f6e9e0391e22f78cb0b2c334e6d6667633a1 + 92f56fde38ac9feec7841be59b2aa993084c50f70dfd96 + 73dc723eec9d84c28ebd5f8104d1b0b29cf118cd64cbe3 + 3925524a3363a1a6f24f59d47a404cf74680eee97cdeb8 + cc44a0b84f3db4496d9bed1224c0fbda64d40f84ef5447 + d764fb714ca8e72a23a882e749e47a519310f6d87b3e8d + dc3e4ac4e541cdbfe7550c92f41c511b544d9fbdc2a729 + 6b958e9df0b1394210aef4f1a780a129883d4bcb45425e + ef96204a7eaa9daa7d21827ecbf4571cefe6dbe65314e6 + 1c688175c1e81e01d4f0377c9c2312b6cc3487f2dd2cf8 + d85efde346f4d1a12de70bec4038b0bea0c505087c0e67 + ce4694 +blind_sig₁ = 89649cf83e2ba2cd75c7a1d01809c33d5d02fec8164925 + 6215f13a8965ad37d8d47c264668ec187e46d75210ce60 + 1362fbb15f61a24ec1d337dd2589b5a4ee0e77a8d9734a + ca6a149b9f9b3a78c158b1f8cb243b8cbe9c2212290e8b + c731d02382463f3e1cf0fc86c5472b8c96c5eaeac9c906 + 4fdf7411f97935f27fd0bf88200440c7cc3e6960c5c515 + 6aedb5a820077be08f1ac4b00780258d7b843b21d7baf2 + d969d1b3c77a08b4fe14b216fe78c7e4c0ae964fc06bf3 + dfe7ff20ec85fa4d5e5aec24d89848645ffadb0de3da80 + c6e41b96571ef28e3d132b7c3fd16a289e32389cffb653 + b4744fabf882342f0db9aef110351d8ffd7a3b86701f0f + 5034c8 ~~~ ~~~ pseudocode (W3) coin unblinding (wallet) -coin₀.sig = 9303650b8896b6619ca061f4bf44c1b02fb60784a2659de7512b599e7e6524ad - 5a283c81d289d3ec75fc81e7f336bd41dd67a41b72a98d9171f0461c188535b5 - 55019079a18b4491903797f62a034e5f277ce8f7f3f56fbe47e44113561fd414 - c841c2da97da1ae92df0e2cfbe3c26ad37f8bab9bd71365ac536204cda7c21dc - 39891b5cbb4e213f75d4e09c248a7a59f6322fd011619b29ec25ad621dfa2d6f - ae9f8b91935caf54d0d30f4a03bf6beed6637a4054efbad7a41f9da434f07cfd - 2f7619e8a3c82b30e079ff9fe13fc023fba7d627f4fb21e14467ce1db2776783 - 1eb1c3ad5c39f61437a0a70c300fd84cd9280474bb507768a868ea92fa905428 -coin₁.sig = 355aa5b6bf10591375f22a014640cd242f470834759fab4421b4d237a149bc3e - 5fbc8f073e1348da770983cd36df9cf72a30bfe55776744b2d787acb06ba25cc - def36e5269771fe4a38a1109e8b96437a3cc625003f7fdf4d0cc879335584c5b - 13f2b29be1ea4d8a2da7826d608179d98b5edb11261e2048fbbba217a52ae862 - d1e78e30c0787ee40908f1bca708c434d5412a262eca6bcd0ac5890bfbbe7df6 - d69a5544d0054716dfda47791546c177223606c0645858a15b36887619a9d70a - 515f42897758bbe181765d7184cc92b5e2d743df1db9b30394b697117ad24811 - 812febe0a3c57cbb5cf7f6857378f57cd1149f745ed95fd1d342e9860f516469 +coin₀.sig = 9303650b8896b6619ca061f4bf44c1b02fb60784a2659d + e7512b599e7e6524ad5a283c81d289d3ec75fc81e7f336 + bd41dd67a41b72a98d9171f0461c188535b555019079a1 + 8b4491903797f62a034e5f277ce8f7f3f56fbe47e44113 + 561fd414c841c2da97da1ae92df0e2cfbe3c26ad37f8ba + b9bd71365ac536204cda7c21dc39891b5cbb4e213f75d4 + e09c248a7a59f6322fd011619b29ec25ad621dfa2d6fae + 9f8b91935caf54d0d30f4a03bf6beed6637a4054efbad7 + a41f9da434f07cfd2f7619e8a3c82b30e079ff9fe13fc0 + 23fba7d627f4fb21e14467ce1db27767831eb1c3ad5c39 + f61437a0a70c300fd84cd9280474bb507768a868ea92fa + 905428 +coin₁.sig = 355aa5b6bf10591375f22a014640cd242f470834759fab + 4421b4d237a149bc3e5fbc8f073e1348da770983cd36df + 9cf72a30bfe55776744b2d787acb06ba25ccdef36e5269 + 771fe4a38a1109e8b96437a3cc625003f7fdf4d0cc8793 + 35584c5b13f2b29be1ea4d8a2da7826d608179d98b5edb + 11261e2048fbbba217a52ae862d1e78e30c0787ee40908 + f1bca708c434d5412a262eca6bcd0ac5890bfbbe7df6d6 + 9a5544d0054716dfda47791546c177223606c0645858a1 + 5b36887619a9d70a515f42897758bbe181765d7184cc92 + b5e2d743df1db9b30394b697117ad24811812febe0a3c5 + 7cbb5cf7f6857378f57cd1149f745ed95fd1d342e9860f + 516469 ~~~ ### Payment and Deposit {#tc1-payment} ~~~ pseudocode (M1) order generation (merchant) -wire_salt = 4c5249caea865380e0e519fc38177686 -order.id = ORDER-40 -order.price = KUDOS:7.42 +wire_salt = 4c5249caea865380e0e519fc38177686 +order.id = ORDER-40 +order.price = KUDOS:7.42 ~~~ ~~~ pseudocode (W1) nonce generation (wallet) -nonce.pub = 6729d69abd7d8218e02c953317b46bba2522efc2c19a7da63194e9ef40fcbd0d +nonce.pub = 6729d69abd7d8218e02c953317b46bba2522efc2c19a7d + a63194e9ef40fcbd0d ~~~ ~~~ pseudocode (M2) contract generation (merchant) -h_wire = ec4e7258747a4de49628a27907b74f0aad097cfafaa595320f81786375430b67 - ae1ada754299bbc0472f5a1e8bae6fe8e5dc52683dd09490ff06fb2fa4f20ec2 -timestamp = Sat Feb 14 13:37:42 2026 -pay_deadline = Sat Feb 14 14:07:42 2026 -refund_deadline = Sun Feb 15 13:37:42 2026 -wire_deadline = Mon Feb 16 13:37:42 2026 -contract = { +h_wire = ec4e7258747a4de49628a27907b74f0aad097cfafaa595 + 320f81786375430b67ae1ada754299bbc0472f5a1e8bae + 6fe8e5dc52683dd09490ff06fb2fa4f20ec2 +timestamp = Sat Feb 14 13:37:42 2026 +pay_deadline = Sat Feb 14 14:07:42 2026 +refund_deadline = Sun Feb 15 13:37:42 2026 +wire_deadline = Mon Feb 16 13:37:42 2026 +contract = { "version": 0, "summary": "Free Software Support", "order_id": "ORDER-40", @@ -247,20 +327,24 @@ contract = { "amount": "KUDOS:7.42", "max_fee": "KUDOS:0.01" } -h_contract = cc934a29efa612754edba0453d1b0ba175d6830d3ec2b2839a9a539d845a5da4 - 622498e3819cb49206810688a93de1989c6542d2cf1d71f64dc998193e76d535 -sig = c249ee766b4dd256560d48b367d05a41cf7169306247ec56c51c39412b34c110 - 15e365c2b2836761ba020b7175e60870572a6c7f780eeabb6f0777783064d602 +h_contract = cc934a29efa612754edba0453d1b0ba175d6830d3ec2b2 + 839a9a539d845a5da4622498e3819cb49206810688a93d + e1989c6542d2cf1d71f64dc998193e76d535 +sig = c249ee766b4dd256560d48b367d05a41cf7169306247ec + 56c51c39412b34c11015e365c2b2836761ba020b7175e6 + 0870572a6c7f780eeabb6f0777783064d602 ~~~ ~~~ pseudocode (W2) payment preparation (wallet) -contribution₀ = KUDOS:5.12 -contribution₁ = KUDOS:2.3 -sig₀ = 8876dce4ca504df355f17c783e8327ea29b2cbcd7dde608b473644af3580621d - 3eb429022f6d1c4937328db478c6ed9784f6788e2e18dc16927efd4bc9c10908 -sig₁ = 031283a02cb413308cea4b69bd3d1b7beef87be7788fcfc1d7b83f8d97cd4ede - 218d0f753ba8fc92e22415a66065f5c1dff402368de8e85eca0c0ac7358e3602 +contribution₀ = KUDOS:5.12 +contribution₁ = KUDOS:2.3 +sig₀ = 8876dce4ca504df355f17c783e8327ea29b2cbcd7dde60 + 8b473644af3580621d3eb429022f6d1c4937328db478c6 + ed9784f6788e2e18dc16927efd4bc9c10908 +sig₁ = 031283a02cb413308cea4b69bd3d1b7beef87be7788fcf + c1d7b83f8d97cd4ede218d0f753ba8fc92e22415a66065 + f5c1dff402368de8e85eca0c0ac7358e3602 ~~~ ~~~ pseudocode (M3) deposit preparation (merchant) @@ -269,13 +353,350 @@ sig₁ = 031283a02cb413308cea4b69bd3d1b7beef87be7788fcfc1d7b83f8d97cd4 ~~~ pseudocode (E1) deposit check (exchange) -time_exchange = Sat Feb 14 13:37:44 2026 -sig = 09338dd4b1e692431290355b7df62d627a894718db68cf4a8e083bfed7b6c98a - 0dde3c5724f3cb3db0e6737f57c9eb35136997eaf403f27f82c0a9f1cf27d308 +time_exchange = Sat Feb 14 13:37:44 2026 +sig = 09338dd4b1e692431290355b7df62d627a894718db68cf + 4a8e083bfed7b6c98a0dde3c5724f3cb3db0e6737f57c9 + eb35136997eaf403f27f82c0a9f1cf27d308 ~~~ ~~~ pseudocode (M2) deposit verification (merchant) -sig = e66d503c843d72da4b6eb95f872396449de25cbf80b9c243d8c9ed2bde533d24 - 60542c685bfdbf2eabc755510a60b97ed289711fd3f353cd80aa791e2e2f1e0d +sig = e66d503c843d72da4b6eb95f872396449de25cbf80b9c2 + 43d8c9ed2bde533d2460542c685bfdbf2eabc755510a60 + b97ed289711fd3f353cd80aa791e2e2f1e0d ~~~ + +### Refund {#tc1-refund} +~~~ pseudocode +(W1) refund request (wallet) + +~~~ +~~~ pseudocode +(M1) refund processing (merchant) + +id = 14365434601518496594 +value₀ = KUDOS:2.1 +sig₀ = a626cc04101e3abe295c217de5636be135be8935dfaf0b + 3589a8c7de22c3e6c7a581a031c0691476e82ee0e9798c + 3c8c8be6bc1066bd955acf4d1ce59eb7e10d +~~~ +~~~ pseudocode +(E1) refund check and confirmation (exchange) + +sig₀ = be9dd11dec0e2fb2a2dfbc778b2d9bb21c665ecfa4d1b6 + c9d42747902f071631f84a946881bc787f8627a6871226 + 4b06410b445f37e569edb7dbf77193b5990b +~~~ +~~~ pseudocode +(M2) refund confirmation (merchant) + +value = KUDOS:2.1 +~~~ + +### Refresh {#tc1-refresh} +~~~ pseudocode +(W1) coin melting (wallet) + +refresh_seed = 466431296486ed9cd71fc207254820a2c4a85aeb0b2041 + 494f8bf1f8cd30f11394223cf8a82995804957876e9fa7 + 1163506b4e5b8c8fa4db1b95d3e8c5c5fb5a +for k = 0: + batch_seedₖ = 415e62ec89f6397c834087efe396b127c6d5bdfe360145 + a6abbfc7a88c6504eee6e3f59db026cc5742c4065fd917 + bbf2b7f52e82e88409263130300279e52617 + transferₖ₀.priv = 5a08ea181dddd480b2e1e2294e1d886efe45070858adb3 + 26e2d562dc330c8ca4 + transferₖ₁.priv = dccf4e1880b343687c7f39df603386a27510bd356ae1bc + 86f45ef9b7a8927613 + transferₖ₀.pub = ab4a35f7fc78a3d07e5828f0fae0295ebbe93e9ecc63c1 + 09703f15816af8d000 + transferₖ₁.pub = 09893d5ef58fe696207e93cbd0cceb311265aa89745705 + 9c40f366d59b028a29 + sharedₖ₀ = a7a9524dfc565b8006470ab90cba091a809f1de14eeda0 + dc98408f880d5cf587c2aa338ea1e3153ed8c624044f15 + 19f3d8e8d6c731d7af6d0383b136a48a8e7f + sharedₖ₁ = dd7051d4c4b03d78f0c5365ea0a2947f48604beee2e792 + 0349d7a4371dbff00d9986202459277250461ab936d5f7 + 45bb6c6c28e8badd7936002f25d9b97a65b2 + coinₖ₀.priv = c4fe7e3e64453e477e736ebabe2e5a7c4919eb2fa4bf02 + 9e536d56a7eec59c9a + coinₖ₁.priv = 409db2ea007fff35506607da6c67e52204097be8a114b7 + a654f53da392886e48 + coinₖ₀.pub = 65a93d56a84e8110fc2ae9c6ace89ddd9c625bd632501b + 663fefd047ee31feed + coinₖ₁.pub = 7c61cf322d34ead1de43869690c70e22d9bae8f2354e0d + d07e71c5736b506f41 + blind_secretₖ₀ = 0f53bafa492d5d90dd3ad13ba7b37b3c4a8b167dffc63f + 7940dcb340275be90b + blind_secretₖ₁ = 799169aeddfec48aaab23a88df8d74318870c7b6cb3922 + 5a3c43d4576db61f88 + planchetₖ₀ = 90997841cb9d3b4bef237213b1ee1da9286e775c1cc10d + c78e32f836d7897500a587babeefed3f310a5b509c29d1 + 91804b89d2aee75073f4d49d7ff5f60be991e0ae1a148e + 134b92c5c9537a59bc30516e0244e714ec2b6067337ffd + 970fd3987799d2ac7b3e3430068c923974751864ed8f4d + 087b0cd62e0edb807d9ac4bf70e68c9d774a0f26947413 + 0f4fa5a8f4e0a5ac67ef6c73a1cb486792605f447384ea + 9deb040f851953db240a5f23401e0d75f93f810132ed9e + 782ba05b4f78ce7cafc501925ce0bde12e58ef48861969 + 038a95802a1d943b2ce31a3278a1cb4f14cc12ff2ffee1 + 3aba0ee151145a3b7abdd1a00e0684a57a1b2a0fd97348 + 81243b + planchetₖ₁ = 0562f874175e223f087e7950f2082e869bca1ded7087be + 27a98f1f9be30a38f33e9a98ca5efb6f15536df774ce32 + 1efd36909d67869e704db3ff352c76298c0d33014a32ff + 636c22866b5e5d6dbc5e6c50f630d95112e8916fd23ec4 + 88eb457f55ad3a29d50c3c7387b4ee1045cbe4d37241e9 + b958d1642b34f4a15a259b344163dbf73bc55e5b99e0d4 + 6ba59b7dca0a1fbe859f6f7d5756d6afff58571fdac617 + 48a81e5e94e784c2d5de60a192d86c0529e35f2efa29d4 + 2e0ce8526db5fd3258a470a43d55c184287fe0c639ff8a + eea1ee64a61d6466d15e20c8203a73ce1b2fc7b2949947 + f9804b0710e41351af67cc30b86108dca7ea0208062ae6 + 0be2e5 + h_planchetₖ₀ = ba016fdedb6c5033f1f870edd9ab10d0dd116c0e3a8483 + 0ddd44c9aed5a2844aea96146cf7c72153a910ca3d3de1 + faab7fca5e1c4079e2e0c680410cf68ee27b + h_planchetₖ₁ = c4f4451f85f02c950fba164ccc52fd2123576ddad6ab87 + c25b175a33aed8afff5c5866b2fbcec6ef67a1367f91e5 + da56041371bc9e8cefd2a93ad386504568a3 + h_planchetsₖ = 7e420d01a6413fb6cc300257031f37ab2d456583d3189c + 3e5f7049c1c61f49c7918289b7cd169cebd0bb81ca0a83 + 2f2c4c6c7529e861a88d65c6d3ef5fd540ff +for k = 1: + batch_seedₖ = 0311a9766673b9df343498afcd6f6926b9bd6352201351 + 5c072a0b5a3af98aeb8158869f3ece08532473980a652d + d6479f296a28504b850791f9775e3b0f8436 + transferₖ₀.priv = 4a3d33228a7c1d6330fb2ec827256aad75f7ea56712072 + f8ff69238b47e98895 + transferₖ₁.priv = ad0b2c176a9564ea7aee7c55ddd92af22d777ea4a8605b + d486d8ccc31bb1402f + transferₖ₀.pub = 1839010739d0450e9a0702167d5106dbcb0a81641e0080 + 716785850e60bc541d + transferₖ₁.pub = 16a20ed27a63c204d94ef3d0c2b554343567d319afc70d + 856cc6a61c3bdaa142 + sharedₖ₀ = 32751bb2cf2a3106593aac0fb38172943c54a96992b22a + 7927ce37fcf0b9b4aa4671033c93ece3c70f2033e4c52a + 953bf46254db7f6d7feb926d78b28bb60901 + sharedₖ₁ = 2c4118e0d52fe1851410fb70b60cc5b3fa6bbb53df8acc + 5a379c65d9f89c2ba37ea732e76d081e03d845dd2f3ef8 + a53b682941d4e598a17823ea06cd28058e8d + coinₖ₀.priv = 16977a220b0bfcb2a0ef82faa3afea901d0cf3e6829905 + 85b63d9c855be5d5aa + coinₖ₁.priv = 1b5bab529c09f313f2a18e3d2712c1a7e0548f15651b40 + af12b22c17ca861273 + coinₖ₀.pub = 4b53ebc94ca1a96ca4795a0ce1254f70ba2fdd72528d57 + 4f4bb47d26fe845239 + coinₖ₁.pub = 6de1ac4370a5336349ed50cfd4d6298b193504c1325614 + 9cb0fa85c1f9a178c7 + blind_secretₖ₀ = 30e3a32819cdc5a2e9b28d7953bba0038eaf701ceaf691 + a6bf44833ae6f305a9 + blind_secretₖ₁ = 62ac62d9df0b5f71f0b43329baa15c5e79f46b09fe432f + cdeb3a9100b31a0fa2 + planchetₖ₀ = 73cbbfab1a58b12c55b4eecf705c9db8fb953f52bfb4fa + 9922f39641efb85802659d266f979c819294af91cb395c + f93f67a0a6b561e445b0a138f04e6428222ccb5ef92a21 + 1da2218953e8aa108f339bbce666a71640f555570d6fec + a446b67be82edfa3f90697d5558d7b7707bb87bf790d35 + 35e429d705367f0ceb3fea30f7666ed428679bed440540 + 3f2a9cf5cf75a43f16fc5b63276e9a18bea0c0864587c0 + a884d1a474f3a248e36183a067e59496d8968427c55e63 + ac3f0052fc20fea5b9f01b19ee776e7c1bdfa576be42d2 + 1e7214606bea3277878cb7beb7015a242bd9bfaee620dc + ccdfda8f34b7174ed28766000d22dd552cd487fdaf9cd0 + cc1f5f + planchetₖ₁ = 922bf6290e8f5e8746f68cda30cee9d368f3988b93d26d + c753e082fe56db8191430ce8ef78f1175d651b491e6cc6 + 7e0cf34253abcf3c3bbae44b4620ca0879171710caac83 + 89704d99d5d49da5de04b44f03d03b30df9d872611d779 + 6c6903fdee77a68a29aabac5c332588aaecf2a5e8cbfe4 + 446d33f423040e7eda99268f2ca558615b541cd912ef30 + 2a9f079705b9d1785839a593d07d8b79756f0077cb5169 + a3a88f08ee7371419c940f35250d2aa52bcfc6beab73b9 + 72f31d3b5de16e55c590788cb4443dc0de7d2cb6993555 + 0b04b8bcc2c33669f97ed1d36f29c594c6f0f84a72bd73 + f76c7617e748356f7989a98deca97f360fcf2d087f9bcc + d61732 + h_planchetₖ₀ = 6523f04c8eacea9af24c08905eb009c8e15a6c62adfae2 + fcee6813bba22ba014c3c831cae6fb63a2a889af0e99ea + d40a39b57d42043dd67fe4e446c7691558c3 + h_planchetₖ₁ = f86bf5d2bf56d182ff70b0ecf635401bce1dab4bd52f40 + 023adef27ca2a4165d19b0de911a6a6e41e5811ea1d9cd + 9bb17dbf9ee518b1f3bfec644e8a36f7fb2e + h_planchetsₖ = f63471c1555835b7032ffa41db189f013d1f26dd5bf1fd + c79bf18ea8c3f24ec7f31f0b4c1688d7a6a729c7b2c2ee + f42a5ce3524ca23a566d74e708eac487b1dc +for k = 2: + batch_seedₖ = 35e8f7b41e25d3ca2c8e70d02be85843b53703f199809f + 98527e316bda6a457a2fab9d327f96242c4e0afbd6214f + aee6a5172aca2b49ad37a12590dc3bbc3f58 + transferₖ₀.priv = 1ca613b8fbe4a341b2fc617687553e778de9b8d40c462a + 88bc1ac169d2984da7 + transferₖ₁.priv = bb8196a4a5b9a646c5424664b8505eb8781ded006c74e7 + cc719e7a2cc730ae88 + transferₖ₀.pub = e21056df9fdf4cd94a4175f94a48fce623db6f2bc4097d + 818f839ec421fe974f + transferₖ₁.pub = 0409b44ddfed03111d7dab5af1b71d8b2597ee50772a9f + 272e799133718fd571 + sharedₖ₀ = 01a355feafd4daafcd6341597b73eee6ca7ad5dfb78758 + 88a373434043d17087ab882cca24e580985068eb1b39b8 + c0e7f81f03ccca337961cd1d6a528abd3cd1 + sharedₖ₁ = 39cdc5377c7295d1e997a43fdc2aac0f5005e64211f7f0 + 9da36db035ddad5bc32c2dcc4bd5fe1e0d3e471ae8fcfa + 9cac0fefa8078570b894164194829e54dabf + coinₖ₀.priv = 343d0b591fc0c495d2e7cb68f2cb0c24d9b274e3ae8504 + 1dd94454d2856059f6 + coinₖ₁.priv = 57c9447a9a34e4b7ed5f4bc71122d76dee9583cb578eb8 + eff2e837bc9a0591e6 + coinₖ₀.pub = 3b9fb220f7679b3488f8e2710f41d5e6cfee1b6c23bef3 + 04d9dbfc404341fccd + coinₖ₁.pub = 6ee277e7bcd2584c5ee8f46cc24b531515a33388e6035d + 00b33df8ce6a7edaee + blind_secretₖ₀ = f5d25d0124dce3b3529325b6512fd34293448b710217fa + 885ba5d80705d16a64 + blind_secretₖ₁ = 974dc1b68e4a7613346375372ead838842bab6335d1696 + af3b6a2ad249fee4ee + planchetₖ₀ = 55e3f72dfd4c53ba21f6f9e108c34f8f6bf0b69dd8daab + bf4386a7e3a31c7e33ecda1dc54a31a1d5f97b810806f9 + d845af20716f4aad733026ff0f6ad0219a1f92d937ade7 + 6b268f8d436fdf6ca63d9051008efa3af022c9846fdecc + 79ce27c8e59042795f2f8a4bc0a792b44bc64c8e6e7c27 + 3a107d96081142b1d06718e28b32bc733ff36e7b95538f + b2ec30d1242965f9ab40debe4ed845227b7a4a4d795286 + 6b798253cf1eb664a1d832c2397d044122d24982fb88bd + 68f81efa45f80bdbe918680004bdea5dc2e4e76dfed297 + af200350793f820aa094e1b26c79e2c2faff866410e741 + 1bb662c94be10a841ec9db1432d198a4a01c2911326cec + da502a + planchetₖ₁ = 978fca7d513afac1d6ec6561fd967218bf0d84e388a23f + b085f1c37493d765090b90c0c23ba20647114c0f34d8db + 1041809a66dfeab96c36477be8342ff4f2660cfd8f0011 + 14f2aab3d12d983d82b92fcfb38e97fa83142980a9f919 + 7e794859f439b18491600ea92bcdc1af7ebe4784eb0229 + bd287b9c71cdde177d4576d7907f9d643a363e09685293 + b7474c990d5d8cdc119d7448d768412e40e8461ea88109 + 461e37f3a76178df074c942e99062ce717eba48903c7a0 + cd27889429ac5a657ca50efd441363c18f9968b33962e4 + 960bf2005fc0fb2b8050024bf34e8f608f4dade5554aab + 1d28478f5bc1c5939c939ff5b9b11f225e7eb275887d3a + 475a34 + h_planchetₖ₀ = 5c9603dc7240248f0a93107bce217562d60943c9976770 + d11c1fd4c9f73fe7f2f3696696b37fb0fa73331c301e8d + d7adceafb23456bfcb6d44063d61f5db239e + h_planchetₖ₁ = d905de829b86b21eb19c036320d3e11571e6ca8390e81f + 86e4569e3cc12189ea10cd752c738972a809fa292818a1 + f13367c389a3f505f084c5001615de3b647e + h_planchetsₖ = 802838537720786bbe61a0752397056c3a7f7bc332a54d + c5a649452a9a74fef79c2c59deaf1e03cf73f85f241f28 + 61a50f2f859d95c3c660ab5e57b448526036 +value = KUDOS:0.25 +commitment = ba2a18eb9cc878b20dde4679910aede08b37b58e47df25 + 2a245598e0671ed6fc012c9cc245d13f9759d777d80d51 + d4a29bcdba486109d83075b8bf47fc518928 +sig = 62ce04a6a6dd6b3f50792e34b51ccc10d2552425800566 + 90248790f6280db11f6f29753f601f19e8504ea378574a + dec5b1fc6f5509f3ec79af3110bb4cd4670a +~~~ +~~~ pseudocode +(E1) gamma selection and coin signing (exchange) + +ɣ = 1 +blind_sig₀ = 1885a01f26936f28dfd201a7dd615dacd68a287e17aa8d + d1e4f3a1925047049a491c1b76ca687431faf6fd290deb + 4dc80601ba79d7754c84a8d8550a0b166104b6ec7e611f + bc577aff339033d421035578029068a84bd4fe5e212670 + fd2ce7091ef9950ee48778aae2855a99555308ae90b72a + b1fb53fea714841c94e256705aae8efeebc877efd376a8 + 78c6e2cb4e811a267484e4da8e13206c1dde7ef3646528 + c1d8bf48096eabcc454ed5ee180e3fe7229785a51a3b8b + d3fba176c05baf0eb82e99d225cfa5f9359d07d2510013 + 301a7bdf815a7db36d400bc00ca861dbe1402ec6dacbba + 901e8c8e4e8f1912e63e2a440e667cea243d46e08026d3 + 738fab +blind_sig₁ = 9c10e5b88fe3563bdaba5934447baad4d05e66a9075102 + 7a5cbdd2cf0cd9bcaaec68935d3c85509894247ab569d9 + 7fd4825a7972d48dbab1c9cbf791776c96a8dcf48caf2e + 542f5e50f86d794066b7bc82e975c55995b40cf10d00e6 + 4904530dad5c396543fadf88b79f81b00c8ebbaf2f6731 + f434c5c3d72b451586d0412b0272a6c6ac5ba5ef59af57 + 969d4f985ea513187c8020a318d4a9c9711ccfdb5aa8b9 + ebd93b20e129c3447771a1dfb1b1bbdccaef56323005c5 + 6116b1df97ace4ae6f6865e5467a96d2fad9cb4c9cf0c0 + 3cf774ad1dd8f5b0a0fe218ac78b37c4435e4f5616c2fd + 96dba36f3c7c1973835fe53c95839ed11c792ad011c9fb + 1ce55c +sig = 6eb68d755e7e554ade9f9f21e3a04b83a74753ec136f98 + 981ec2369d0fd56f88c274fe44482f425f1142a447627b + 71e2117d9991d89dfbf97441b881963a360a +~~~ +~~~ pseudocode +(W2) secret revelation (wallet) + +revealed_seed₀ = 415e62ec89f6397c834087efe396b127c6d5bdfe360145 + a6abbfc7a88c6504eee6e3f59db026cc5742c4065fd917 + bbf2b7f52e82e88409263130300279e52617 +revealed_seed₂ = 35e8f7b41e25d3ca2c8e70d02be85843b53703f199809f + 98527e316bda6a457a2fab9d327f96242c4e0afbd6214f + aee6a5172aca2b49ad37a12590dc3bbc3f58 +~~~ +~~~ pseudocode +(E2) commitment validation (exchange) + +~~~ +~~~ pseudocode +(W3) coin unblinding (wallet) + +coinᵧ₀.sig = 68773443fe6cf88ddea6f6614213f12ec7ded4fbb39fa0 + a4ffc1a68bbfc363be0b33bd03a41d31c8ffe331614ee4 + b986679ac8e51aaa0903eee492d0ff81327589c842ac80 + a6b47e0833840935e9cd543fbbb91c5b80a591e01eb34d + 7bb5aa3fe837b22f8dcfcaf0ee9d71d93c866f00a8f787 + def0b79eaa4e6e96c420990b05c2b82c378757ce220e96 + 734e547a6962148848d2ebb66e9c67a40115a958d21c05 + c7e0a0db72e505076e35ddca7b09b603b55dad394c1d12 + ff4b6b219feafc3ca24c43c36ad2da9fa632ec1bcfc057 + 2db80d0afcc9875182def7983385f872005033d7ea7080 + bce0df982a134f5ae2dccb2cdc304278c809979252ac28 + 2a76e1 +coinᵧ₁.sig = 1551b2dcf6daa264d4c96452f46c88e7b4ca3955642da4 + 5e375cb319602897ceb75eda64060afd17002b63fdd39c + c0f86c473a530813c23958573431e2fcd2277cc853f5ab + 6a20a9e7499154420f0cd8d13990d45423e61a6651a614 + 7e8a146a10fd5d63e085c2c4c133d4db0827df1d4fed10 + d1e6eadc566e167a17fd36ee884900db9a8cc4b82a02b7 + ca0cfacb7d391f535da3011ca469146f239d621fcdfc10 + 563bfe6ac4c962109e2fc39aa236151f15a9c85b8e0e4e + 2ee4f6b6b5f54337c184936e2fe4029e2d39ffe6953f7d + cf208ba062334e8595dbb9784857df770377a59dee2a8b + ee4e9c10e662f15dedd0379849ebc4a7a02a31f1ebd8a8 + e55432 +coin₂ = coinᵧ₀ +coin₃ = coinᵧ₁ +~~~ + +### Link {#tc1-link} +~~~ pseudocode +(W1) history request (wallet) + +sig = ceb8dc24e263252b479376b15ae141e4da28dd712c37c4 + 81a163d549b44afdd018d04fe709462a56739b3cc0671c + 2cc0333b7e5da25210b8bda54d83d25f5407 +~~~ +~~~ pseudocode +(E1) refresh secret lookup (exchange) + +~~~ +~~~ pseudocode +(W2) coin acquisition (wallet) + +~~~ + +### Account Creation {#tc1-w2w-account} + +### Push Payment {#tc1-w2w-push} + +### Pull Payment {#tc1-w2w-pull} + +### Recoup Withdrawal {#tc1-withdraw-recoup} + +### Recoup Refresh {#tc1-refresh-recoup}