From b39fe74dd0ff60c378ff936f0c65f20c5c5aade2 Mon Sep 17 00:00:00 2001 From: tobiasBora <> Date: Wed, 11 Dec 2024 12:46:39 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20leo-coli?= =?UTF-8?q?sson/website@56278250e6e253ce7319f15b97a60a4e35c8872d=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../advanced_crypto_td_03.pdf | Bin 139354 -> 139696 bytes .../advanced_crypto_tp_01.pdf | Bin 196559 -> 210749 bytes .../2024_2025_-_Advanced_crypto/tp/tp_01.py | 8 +- .../tp/tp_01_tests.py | 298 +++++++++++++++++- 4 files changed, 303 insertions(+), 3 deletions(-) diff --git a/teaching/2024_2025_-_Advanced_crypto/advanced_crypto_td_03.pdf b/teaching/2024_2025_-_Advanced_crypto/advanced_crypto_td_03.pdf index 49924a9a26fea80bf4f18817c6ad374feaa7f4b8..7cd2f7757fa5c7aedf7be23deffe6e8012c1da10 100644 GIT binary patch delta 20967 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 delta 20624 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 diff --git a/teaching/2024_2025_-_Advanced_crypto/advanced_crypto_tp_01.pdf b/teaching/2024_2025_-_Advanced_crypto/advanced_crypto_tp_01.pdf index a37b60643f1e98cb9a09bc61f14fdbb32ebd74d7..36ce86dc1234237062d36cb11b3a13585955863c 100644 GIT binary patch delta 84642 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

b8miq6uq#-$ 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 diff --git a/teaching/2024_2025_-_Advanced_crypto/tp/tp_01.py b/teaching/2024_2025_-_Advanced_crypto/tp/tp_01.py index 66c8eaa..6835f06 100644 --- a/teaching/2024_2025_-_Advanced_crypto/tp/tp_01.py +++ b/teaching/2024_2025_-_Advanced_crypto/tp/tp_01.py @@ -125,12 +125,18 @@ def verify(g, commitments, b, openings, options=Options()): return (False, "TODO, give here the reason of a potential failure") def get_bit(bytes_str, i): - """Function provided: Returns the i-th bit of the byte string bytes_str""" + """Function provided (don't modify it!): Returns the i-th bit of the byte string bytes_str""" return 0 if (bytes_str[i // 8] & (128 >> (i % 8))) == 0 else 1 +def fiat_shamir_randomness(options, commitments, message): + """Returns a list of integers 0/1, as used in the fiat-shamir transform.""" + print("TODO") + return [0, 1, 1] + def fiat_shamir_proof(g, path, message=b'', options=Options()): """Fiat-shamir transform, extended to also allow signature. The output is the concatenation of the commitments followed by the concatenation of all openings.""" + print("TODO") return b'' def verify_fiat_shamir_proof(g, proof, message=b'', options=Options()): diff --git a/teaching/2024_2025_-_Advanced_crypto/tp/tp_01_tests.py b/teaching/2024_2025_-_Advanced_crypto/tp/tp_01_tests.py index efe8b5b..af3fd43 100644 --- a/teaching/2024_2025_-_Advanced_crypto/tp/tp_01_tests.py +++ b/teaching/2024_2025_-_Advanced_crypto/tp/tp_01_tests.py @@ -1,7 +1,5 @@ from tp_01_correction import * -print(Options().secpar) - import unittest @@ -59,6 +57,8 @@ def test_commit(self): self.assertEqual(r2 != r, True, "The randomness is not random") self.assertEqual(c2 != c, True, "The randomness is not random") self.assertEqual(len(r), math.ceil(options.secpar/8), "The randomness should have the proper size") + self.assertEqual(check_commit(Options(), bytes.fromhex("0b04c09abd3803bf921fc68d60d3bcbebbbc24c38edb4db2c8b7fd5f"), bytes.fromhex("87872e1e2c7e66ac102f"), b'coucou'), True, "This commit should be valid. Have you used sha3_224?") + self.assertEqual(check_commit(Options(), bytes.fromhex("0b04c09abd3803bf921fc68d60d3bcbebbbc24c38edb4db2c8b7fd5f"), bytes.fromhex("87872e1e2c7e66ac102a"), b'coucou'), False, "This commit should be invalid.") def test_zk_protocol(self): g = Graph() @@ -82,6 +82,45 @@ def test_zk_protocol(self): (res, reason) = verify(g, commitments, 1, openings1) self.assertEqual(res, True, f"The opening of 1 is not correct ({reason})") + def test_fiat_shamir_randomness(self): + self.assertEqual(fiat_shamir_randomness(Options(rounds=10), b'randomcommitment', b'my message'), + [1, 0, 0, 1, 1, 0, 1, 1, 0, 1], + "The randomness extracted for the Fiat-Shamir transform is incorrect (single application of sha3-224)") + self.assertEqual(fiat_shamir_randomness(Options(rounds=300), b'randomcommitment', b'my message'), + [ + 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, + 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, + 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, + 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, + 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, + 0, 0, 1, 1, 1, 0, 1, 1, 0, 1, + 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, + 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, + 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, + 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, + 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, + 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, + 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, + 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, + 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, + 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, + 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, + 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, + 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, + 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, + 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, + 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, + 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, + 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, + 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, + 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, + 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, + 0, 0, 0, 1, 0, 1, 0, 0, 1, 1 + ], + "The randomness extracted for the Fiat-Shamir transform is incorrect (multiple applications of sha3-224)") + def test_fiat_shamir(self): g = Graph() a = g.add_node() @@ -91,6 +130,255 @@ def test_fiat_shamir(self): fiat_proof = fiat_shamir_proof(g, path) (ok, reason) = verify_fiat_shamir_proof(g, fiat_proof) self.assertEqual(ok, True, "The Fiat-Shamir proof should pass the verification step") + # If we change the signed message, this should not pass anymore + (ok, reason) = verify_fiat_shamir_proof(g, fiat_proof, message=b"unrelated message") + self.assertEqual(ok, False, "The same Fiat-Shamir proof should NOT pass the verification when changing the message") + # If we change the security, this should not pass the test + ok = False + (ok, reason) = verify_fiat_shamir_proof(g, fiat_proof, options=Options(130)) + self.assertEqual(ok, False, "The same Fiat-Shamir proof should NOT pass the verification with higher security") + # We try to send an explicit proof to check if the test passes: + (ok, reason) = verify_fiat_shamir_proof(g, bytes.fromhex( + "ee74b82ec5056e4528d1d49600e627b0cfcf6b6b15021d28fd86527ddb6120175974527e3798233f8e06b75a7c2757dd26a6" + + "fc7b5c14269c0e12bfe952866f72db435aaa829fba222c183815f47f6d3d8f2b90c4c12c9e37b101015ab186f27a906beb17" + + "192fdf6c7a7090e8758bdede0a710562f51bba996db5a4c37e1bb3bfbc3987de711c6e315b41d7084601957e778494e4b5cf" + + "3bc7a731a12b1f05fd7c688c7395974121f22106f2c44d2c1384a9eec8cecd955b69e0d652a373f13d18508f8b04f96b5b7c" + + "9214ae12aabf3697337edd69fc7abc5b273d4c3c96b117b2a434a257a129838cb7638aa7afda04f00b8fd3d1d6b28edf7352" + + "ec58a3d9070c87f214e00f037631397ef760edddab737e4dc9386b058234ab0022f5c763a4586766c96343e3c3638552ed21" + + "aa5b1024cbd6ec385971b79991c4f2201bca3f7b7723e5da4d0c3465082c1a1f140028ebceecd2ca1c09278086a1471d3d28" + + "c8cfe5c47c66098a20fdbe3140a3c81ad74222b87cb5ba8689b61f67453ca1935d05f8cf640246c2cb6946b609efd79ad6bf" + + "9785e253e59f040995456b4e89d80b4585ac57234e5bd58e1c8ebb4140717c52efba6a6d1ab76e3c79f5b90bd00d02c33b2d" + + "e34d1eba4af3a2d546b9e2022fd844f57a64f12d7b335d2e5ce88ce1557a048a53a0928f468efe57dca64badfd14d465e994" + + "09579d9f2e24f8171579b097cae8a6df441f91a42ad9cbb6df7575d87853ff6195946ee18f8ba36b5c1be37d43b518c20083" + + "03371187224a73ae95b565f1157d84cd78f6a1603350cb358e5923d39973c0b1bc20c10935ebfa1c18c4ec4c9e0f99ce099d" + + "ba1e83c4810a219c79bdb86120a656777a2c257de074d9cb28ded38529ccde09ce7988635d452b9c95b2a01a9a0fd92330ef" + + "20b33e71cc8408cb9af6579aa5906cad873eb75782e04232068b77667071d13113296288f3f4df4751678ebec01f29bdbe80" + + "94eceacb8eb1b3744edce1c77080167a6098eec1436394ba24253d1c3dcf8e390d51481aa4463f04d27cbf4c27b7929beb56" + + "62172655782e73b621ebc28caa5754b260e5a2357bdc8ad1f137fcb743ea9f2c5e8cb73830ddd025db84640672f52eb0aaf3" + + "99edef13000183a0e9ac42ea9ce73f0160467ec736a4108c9cba3abf77fac83f13dbbb310d4d89b7b65c91f878d72e01d469" + + "84959f96e26e8ee5966125267710a0118a8dd89582e4866c0a62b697ca8964020260776ae1f089c64b6b50e8afe1b388c9ee" + + "d2f10eeedc53ecfc4fc3440d41ebf53e9b87e58c0de1ae2c06eef43986916279a2a8b57dfbf996686ff95e2f3a04e457eb62" + + "0e4f268adb3ca1a6d1569a3310b92a7c01d66190774762bb49574f7ff85c561a65a9b59b046b72e2fa231cd419cf4aed24be" + + "a05676c810aaab6afac03224d6a5fc5a7c54c21ce57c039f0e443db74ecbc793b6baed563dd63e8f4ad02d0c0c4b8d266105" + + "8a0f7b63ba1e5e714f687d47288f8cbef330ccb2245a1a2f43ad9c302c88311e4016603cb8146db37a80b5be15679245117a" + + "cde728e8dfe6443f76518305f0bccd57b77cd1af5e4d529b910ba970fd2df5e35210d8ea59dc46c126a395cb04d988b04e3c" + + "e5c2323b32b4aa49d3d66ff20e8f9c27378a51c44d666119c6aae836c9114f9992cfb13449dd33b49b2f5bb698f8c25de904" + + "4fbd4b88fde838bf392c8ee029aad6bc2a606e22f30e741f95c64271359a3ef622179559ff74050c087635b498dc2d12ac97" + + "11d7f88140e979da79d191ec0922d7826b2a5b4570af624264410f2c08a9b8309f998bb09e6b0330a1c3ea42d0268d66219c" + + "f6d19b80560a7337fc2c94b70da9450750d82f8a7907df978adc180138e12631cd23bc2e7c8700913e9c269028e7f63daaf9" + + "fa3eec0526f85e9f4fed95abdd6b3c9c09a0fb8b8f88f63bef63e1b4943a1fbc1641b62be59a25740ebb98c978576a4f85bd" + + "7ffc4183ba3f322ce233a805e26f9e655431fc47dc4446bddcea0e693204339ba3fbf18e357a53765ee5cb60f134b1753076" + + "1db0e859e1a7a9a514da5595a179e1fc285be8fb0e82a1064e74f877778c1a0f2f1f11bd6df59bbc281247108a5ef934dc59" + + "c611130acc27cc92f61fb793fd6706ab6138c1dd46dea2c4f051c400cc668c97eb17093afe3cf7be358006713bb0aae77c7f" + + "b66a77d47a107c42769933f9f76c36624212e6c6328e2c971a7455f8761b45e2e7aecf48ead51099ea8ed26868382c67fb67" + + "36607ff9394587284e9743a11a3b67a7f14807bea419708a0a4ba717731dc9be3462214401c70c7a97817e36e57d64f8ac79" + + "141e2cf899ac392524a3d25e76d9e3411e228242d283d8273e6ba79d5f5b470ea770aab2fea593a913055b1b65b6e911ce28" + + "d84c95eb218bd24c9ae86ddf6a0d1f0458b0f506916ce151c2c543cb2baebb098ebecec5362373a47b1b5792c2343fca70a6" + + "9d1c5e696954e8fdd405dfa58099f563f1f6c9b34225fb90c4ca27bdba234927c6af1a4f3907d7a4bfae1dd9879f7eb8e536" + + "1d92e73fb1cdc8980ac325a9b319d37be3e52b165465699e8eb13a4710182f99052fdab9e39b6d56f0d93fc151d7429ae5fc" + + "4beabc439e28ee9c423f9c778eecb3fab83822ca3f6098357ad2f06684b2f22a7b4b692bf23c765cd58a26f1e06776a380de" + + "2f2d8b72c685cc8576b426b2e4b5a3847ef193deb83ab6ce2a86c760c79cd96ea45438c189fa609c4c8ffb122e0e2f0f9ac5" + + "1da35427d213cf5bb2caa1b73e96e5087c87a15c03dcd6e313cc6abe96634edb91e3b6ccba828ad995fa7adbb7ec6f2d6434" + + "e007c406e0d3be6f2b52c5afa54547a4fe191f32e202fae7b1ed85561715d30672336e7b000b67ad9cfa518fc74347df99a2" + + "76ef5e47737c09f69224ca140616dea0ef10324185846832a1feb072b19d0777ef20fd5ef6b1adbcd303509a903f54e2bded" + + "f49a4a63d655888cc9a70ef478d2562dee494012fae5be250e5ec7704770bcdc328546976e3ec218c77f41576d13f8ecdba4" + + "d64cd2dde412deabfa7475128a25bee815caec16bac6fe3af72a5b42ab28655fc4c51dfb7196d55bdf260c4a7378a6bbd3fa" + + "8a10b1b94918089d44279209ef84081d88e6ad6614efe4a0a20e575dea153e897100c04e3318795556563dd13a948aeae2e9" + + "5dc7f590febadf4871f8a6c20d9a3c2fd8d71303485750dda8cd38edb70052a6d6100268c110e9740dc7523bf73a82338831" + + "5d043ad565e906fbe79cc9bdcb7d27d2342a57fb8ca5d34617a4ac38ec1e20b66e3fdbed6f31adeaaf182f14d24f803acf11" + + "5bbb4e5240437336cafbfee0f4c0c6756800b6b9232d7f31924c699d5e436ec0dc93a8c7331ba6d03ace29787a9925e77adf" + + "a6ee77b41352f2f69e9f2ccaa77d1b3fd1d0d747a6d89f26dba893fc5a165856c7f8b47773b6cf7705ec52b3785e24cf17a3" + + "cfae67ac071f669a7363e83a4aab842b9cccb8beb1381ca9742ec9e4cfc3872f3b813696da1c53b92fce84e7b96f6f26d8a2" + + "d7941899c6c765bcde22d09b4e86c8dfe19e2a393d08b283a97110d66a2f130767c3d2b28401e2175a833c808f976196fc8b" + + "f03cbddd285b88312ed21a40d44664e26d5d712bb98caa3c33730d9ba94f089c102d7b364ecd40d3958dfcb6b2e4599b4fc3" + + "0b659501b5a1e0db6421bbefaa2bcfaf8f7de592936be9ee9332a11a345335d257ddee41263b7f4fc0e8e333a261f424912d" + + "1f8c04847a7c98ac727c182ecb3be76b79ea62e15981869ad14bea81e3307c428126eaa693258720ccef3bbc3189bd93dd77" + + "47b1224cd34b8f8dda9fcc99dd076be9b99b2cbfc051756a5f0c3c2cadc1891b27c128bcfb6c42fa6e38aa25efcff1fd5e18" + + "c523fb2b4773aae68403f664cd19ca0c3f693b5e2fd800c30bddd5e922bf90515f63381053f2a9e2b497e1e8ca6853665aca" + + "be98b3401f64203ead46203ecbac21c1a96de016a39fb57bc98d0b3d5b72d5218526b47289a78986aced7f5ebae6e93660a6" + + "f50355a23cca061210af46fd71236980c28fcf562e1c7c156a364ed625d56d8a7eb3f33e1f6b21d01e28f2856d84e2ba580c" + + "ada9328468830777f85326a354a178e6b8a34ecf365529a281e35e2f71088e38dcdedc041393ec4c91a65f8bd9b74f8e93c3" + + "8edaa4a590a75621ecc163532e544c1d28127fdaa8918e1c026bfb43fb02852a920122c8eff12493ff4e90849344c6c3bf31" + + "cccc05798b2bba873b93c9fa9832666448fd8be746131bf6225d5bf17ff58bcb391b6eff4e7809f5582fa90c5a2f1b8927cf" + + "a235fe96de94befc06667ea20218f7979c8637172bf947ae8de73faa3cc4f1db55669390abcb2bead1099f794e60cc83a772" + + "4bce52b40335fe28d515eb0944679333ff23c37ffdced19b8ea222575bb04f77950f55dff8d6fb2573ef95b7e8f6137d1022" + + "dee1c095179b6fc540a89cba783838839f5dcf0fe8ce7131c20169a601459388f3370fbeea126ae86cfdcebd78c705f2f389" + + "4dccaf9945346f478d4975782c59a8f8d618eadae3635b8d8d86f13e501c7885351c61ede2e06924075b8c272a004966eff9" + + "b73eecb58fd29644297a2eeba30cdd8f601d210c5c3e060959a9bcf5e776a1234d8529b21dd2f0954927ca43cc7121f41858" + + "5018e6e030893426544e7549fd507694c946cde2c09254befb03dd9e32b2f206587b532f026d83e5feb1f96193c1291ef9f2" + + "4bc21ba3c5ebfd359b2b99c5cd8ca14c44a090ac5f1ae464d59d874b49261c496cc91071d757b1f4dca7cd4b8249de1b7444" + + "ab95a8f9da5a5b77b451533abf8817e955f41b4db77c377ba76b6e537b40dfa1bc6882106a0a761b26ea0c952d355344d176" + + "bf0f858bf129fd65cc9062d1c9c08f23dade68a83f595656ceacd9108d98aa3fb00eb9b34a3afec9f61bf7bab093974445a6" + + "49afc2d77b4a94c6b977655e1a1e78ad79fe2cbaecb6392dc353252419be70206e567a4661972b4d27b30e523bab36320eaa" + + "ba3c8aa24da43e18655c96acbca313f8b9048c6b30eedb25c635015c0f7cc319385ec719cb163bb0e29ca11cfacc83af46c0" + + "59b7eddeedd68f35eee81a94651907a2940e09f6207678b67240f664afe92e0b084aad994a7b78c8ab64a15cbb80065d544f" + + "1dad4e16f20f10c744e0f89ab513454c99982746e66f5ec77f0832577b3aa16880fced6ad6b24d8c5088ddf32f637668d187" + + "855ad20a0e71bf27de19979b8dbcc807d48f038446421dbb5d2817301a6dd131b4fc34e1fa6bcf60f0d9ce91a47e2b95bf4d" + + "c00ff36f150398dc9ca9af22c15998012b10cc073a9b567ad551edd8ec767632eb78d67fc347b263a0633d24a85a7b079e9e" + + "1ae3a7027820e6bd2418d07b1e3016abfa02155d9c23471f41a20b6e179518265e4254331015117808646196f4411d0aedf1" + + "0abe59c2fb3574f221c8a95999fa2cb69c7457168d7c055bcb51b3e88e405a945182fa4283af9084e6892a51b4b9596f161d" + + "cec2cf94a66efe12bd750fc877d315f98ecd679ac3823d60887c34f79ede0f64e0cc7e1bde5baf640eb93f54a620813105a5" + + "90e5b39ec66cfa535c8e57952526c5854c5a92bf2527b19ea274256721daa544d83a7780aed863c89f420e0621b2fe2c0415" + + "f723f732b106e3b9148161a667ad12e2e83ef5a427c4dfbfb76e12517f19d2705b407cdcd18aefb2fa70e68919857db9432f" + + "d7dee76c2a1313de78e60f6aa6d6a1627aeed190f1cc414a2a56f33490e4847fd034a2be2a0d00afe692ddd6a8dee55932c4" + + "2107169557bbf45e2f77da912790b988cd972362d47e172c458550356a4c4594b7d7a46ba9a1758098063925f1f0703baa29" + + "d78553981345e969eaf366709f550515f91a4fdd6c4054a230ad51303f3605ea75057b2c02a73d9617377a0be44a5aada95c" + + "89adddf6b8bd31d51ea56bfdd280a99ef7249f35b860c387d11483b343b6003ebe871fa7cda47e41f82ab1cb18a71f95f265" + + "fea86369ec257a1902937e1dccc62fbb3745826faa03c6c48fdb275ed9d9c0f7bad78dc9eb1c0f71b66ec1f2afb66d699ef3" + + "7e805cf4d860d8cb381c926cdefe2fad4d77cf003d040a285ab46ddb9d8a8e1fb868383e0e091a29bfbd85f8d09bd10e873d" + + "db5555be8ac35d105f2bb300258388b48a5846d95036d04ec6059e6fcde83d23abbce3d157caeb5f3646c56e8107e0043aea" + + "5961a0382d90c9d6b0f9d7760b921d0f05b4a19509427fe6410e9caf07177904763eebee0c7911987d154ff0e3b5df36da83" + + "7de18bf59c49851565f3497e02fc011c2159cbec6ec315e0f05760d3de480001b389e5af921e7cc6717c014920080d18f45c" + + "f5f1000101fa2ac508c8910584412500010c976668ba7056bc6f15000001612494ee909c4af26a6cb6c73976771a5fce7a1a" + + "0001001c666e4b97c6d69394d4010169b2e0a1e3aec525e1c00001d3f63abedf5e88f530ec000082b480373debea628f8701" + + "010008d30d3260fba3500c3b9dad4934fa585fb987940100013c2c5b86fdf94be3972300000198fc9a7e564cb8a23704c482" + + "7ebd8c2ab6d02d1800010122c0530b32d6853f2148000061700fffd0e5410762320101a1d7ca9a35173e7faa8f000100674b" + + "9b578b7f24887f89668d9d4b36caf6ca2ca5010001a9deecb6d636a3d061ea0001985d2fdcac27a9c1033600014da6280819" + + "c9c3eb881f00003ceefe3ec1006ac09a5f0101ce1309c91dd23b118160000138865edd2be524eb5f1c000100c62aa7e46b2f" + + "69adde195ec62235bbbfd1497189010000e7a1b91859e241c0803e010001f34281d8570ca71b6c6b060e7861a716a42cb860" + + "000100fba2a29d68abe55752f1010100e09d2e14bf8ce48a8160013da1570843945ab96b01000001fb8bee3d3dfbe6eefa68" + + "2f341024bcfbcc84bfa5000101094d2c8470875c23d1f0000001a8b9d5c799311e7e91703ff9805c5ece87cf800400010001" + + "aa3a9eb113d9086dd51d093c2dedfc8aa054b8890001001cd4117cdef56ab1b352010100ca4663561e184146736087b60591" + + "cfc444918c750100010329770f803df4392ae0000100dddfd099a97de424522712d22d9254c7559b4207010001bb5930b511" + + "5e93ba57840001265da70d33e15bfdb8dc0000654801e2e36d570fb5b401019eb6fe06d9a9f5e4aa7e00000103e17dd4a5e7" + + "90fa47d612c4f486bfa023f05bbb0001000165470a9ad4cdd077dad921ac172346183eba78d5000101b8653293591b7fe2ff" + + "5300010002b63751a8235cfb9e38b2b252effcda19b5e98c010000018762d72c83088cb6916353847850bdf53b7e9ae80001" + + "000123ce051b93648cc36424ebac7d71cac72ea3f19c0001012e65bb10b0fea95e3fcb00012925ec1ca13e984557f8000001" + + "e31e96518d498733f2a06d4fd5306d98bcc03674000100a517d27267ab5d4ace63010028229b2cd1115e0ef777010100ca58" + + "38fac30288403d41d0b3bf02ffe3693828190100016bf29aed8f3b770bc57200010040fdbae21bf2c08c0cf30adda0c6b516" + + "83bfb8fe0100004980264576812e9461f10101000fcdabe667f60669195fc5ff4a5daef1b918cebd010001368bc069b82076" + + "23152a000100dab46a82a1552eff649f9ee254df14b743c83b7e01000001bcbc3331ab70da075c1199481e7458f0f918283f" + + "0001014e83fdd1be23c126f4d5000001378ca7ab8e1813a734a9c378d781ef7d11508358000100801a9b857d94ed23f69001" + + "0001cb8d849873a47520891748d8896f521cbd31d5c000010100f5eefc51d580debb82d393501a9a5a5c476c525a01000043" + + "cebb14fe7636f0ce73010100121edaabf78f47bb438ce56618d5309f9a6d022e010000017d4ea8be6371b2a01b783d1094c2" + + "c28258ed1c28000100b57b2f24c48074f61340010001a5bfaa3b54f415bf15f24444f926579b76a2d65900010001bc2b59e1" + + "52394f7452c64de0bf46c21e67bd73ea00010104afe6c3546bf4a674c0000156f62071a47a6cf9c5c50001004302607d318c" + + "7f324f4a80b0346bdd59890848500100000127cf61fea370187af284879ef4d3b201f62dc7c9000101d60087ef7232c9ea0c" + + "19000047308ae1b15e4d0b25770100017a928172dae3670eb520e3ede7b105986b48890700010142b2c8d308fbe99d918600" + + "0052b965fcf544c68e160f010100558b02d10a8b0428d7bbd5e0817f84e75f9f65d101000001fd8df7722f4d48d2bc74977c" + + "fa8425eeb62c0da2000100a423fae29ee2fb9afce101")) + self.assertEqual(ok, True, "We expect this fiat-shamir proof to be true") + # We try to send an explicit (unvalid) proof to check if the test passes: + (ok, reason) = verify_fiat_shamir_proof(g, bytes.fromhex( + "ee74b82ec5056e4528d1d4a600e627b0cfcf6b6b15021d28fd86527ddb6120175974527e3798233f8e06b75a7c2757dd26a6" + + "fc7b5c14269c0e12bfe952866f72db435aaa829fba222c183815f47f6d3d8f2b90c4c12c9e37b101015ab186f27a906beb17" + + "192fdf6c7a7090e8758bdede0a710562f51bba996db5a4c37e1bb3bfbc3987de711c6e315b41d7084601957e778494e4b5cf" + + "3bc7a731a12b1f05fd7c688c7395974121f22106f2c44d2c1384a9eec8cecd955b69e0d652a373f13d18508f8b04f96b5b7c" + + "9214ae12aabf3697337edd69fc7abc5b273d4c3c96b117b2a434a257a129838cb7638aa7afda04f00b8fd3d1d6b28edf7352" + + "ec58a3d9070c87f214e00f037631397ef760edddab737e4dc9386b058234ab0022f5c763a4586766c96343e3c3638552ed21" + + "aa5b1024cbd6ec385971b79991c4f2201bca3f7b7723e5da4d0c3465082c1a1f140028ebceecd2ca1c09278086a1471d3d28" + + "c8cfe5c47c66098a20fdbe3140a3c81ad74222b87cb5ba8689b61f67453ca1935d05f8cf640246c2cb6946b609efd79ad6bf" + + "9785e253e59f040995456b4e89d80b4585ac57234e5bd58e1c8ebb4140717c52efba6a6d1ab76e3c79f5b90bd00d02c33b2d" + + "e34d1eba4af3a2d546b9e2022fd844f57a64f12d7b335d2e5ce88ce1557a048a53a0928f468efe57dca64badfd14d465e994" + + "09579d9f2e24f8171579b097cae8a6df441f91a42ad9cbb6df7575d87853ff6195946ee18f8ba36b5c1be37d43b518c20083" + + "03371187224a73ae95b565f1157d84cd78f6a1603350cb358e5923d39973c0b1bc20c10935ebfa1c18c4ec4c9e0f99ce099d" + + "ba1e83c4810a219c79bdb86120a656777a2c257de074d9cb28ded38529ccde09ce7988635d452b9c95b2a01a9a0fd92330ef" + + "20b33e71cc8408cb9af6579aa5906cad873eb75782e04232068b77667071d13113296288f3f4df4751678ebec01f29bdbe80" + + "94eceacb8eb1b3744edce1c77080167a6098eec1436394ba24253d1c3dcf8e390d51481aa4463f04d27cbf4c27b7929beb56" + + "62172655782e73b621ebc28caa5754b260e5a2357bdc8ad1f137fcb743ea9f2c5e8cb73830ddd025db84640672f52eb0aaf3" + + "99edef13000183a0e9ac42ea9ce73f0160467ec736a4108c9cba3abf77fac83f13dbbb310d4d89b7b65c91f878d72e01d469" + + "84959f96e26e8ee5966125267710a0118a8dd89582e4866c0a62b697ca8964020260776ae1f089c64b6b50e8afe1b388c9ee" + + "d2f10eeedc53ecfc4fc3440d41ebf53e9b87e58c0de1ae2c06eef43986916279a2a8b57dfbf996686ff95e2f3a04e457eb62" + + "0e4f268adb3ca1a6d1569a3310b92a7c01d66190774762bb49574f7ff85c561a65a9b59b046b72e2fa231cd419cf4aed24be" + + "a05676c810aaab6afac03224d6a5fc5a7c54c21ce57c039f0e443db74ecbc793b6baed563dd63e8f4ad02d0c0c4b8d266105" + + "8a0f7b63ba1e5e714f687d47288f8cbef330ccb2245a1a2f43ad9c302c88311e4016603cb8146db37a80b5be15679245117a" + + "cde728e8dfe6443f76518305f0bccd57b77cd1af5e4d529b910ba970fd2df5e35210d8ea59dc46c126a395cb04d988b04e3c" + + "e5c2323b32b4aa49d3d66ff20e8f9c27378a51c44d666119c6aae836c9114f9992cfb13449dd33b49b2f5bb698f8c25de904" + + "4fbd4b88fde838bf392c8ee029aad6bc2a606e22f30e741f95c64271359a3ef622179559ff74050c087635b498dc2d12ac97" + + "11d7f88140e979da79d191ec0922d7826b2a5b4570af624264410f2c08a9b8309f998bb09e6b0330a1c3ea42d0268d66219c" + + "f6d19b80560a7337fc2c94b70da9450750d82f8a7907df978adc180138e12631cd23bc2e7c8700913e9c269028e7f63daaf9" + + "fa3eec0526f85e9f4fed95abdd6b3c9c09a0fb8b8f88f63bef63e1b4943a1fbc1641b62be59a25740ebb98c978576a4f85bd" + + "7ffc4183ba3f322ce233a805e26f9e655431fc47dc4446bddcea0e693204339ba3fbf18e357a53765ee5cb60f134b1753076" + + "1db0e859e1a7a9a514da5595a179e1fc285be8fb0e82a1064e74f877778c1a0f2f1f11bd6df59bbc281247108a5ef934dc59" + + "c611130acc27cc92f61fb793fd6706ab6138c1dd46dea2c4f051c400cc668c97eb17093afe3cf7be358006713bb0aae77c7f" + + "b66a77d47a107c42769933f9f76c36624212e6c6328e2c971a7455f8761b45e2e7aecf48ead51099ea8ed26868382c67fb67" + + "36607ff9394587284e9743a11a3b67a7f14807bea419708a0a4ba717731dc9be3462214401c70c7a97817e36e57d64f8ac79" + + "141e2cf899ac392524a3d25e76d9e3411e228242d283d8273e6ba79d5f5b470ea770aab2fea593a913055b1b65b6e911ce28" + + "d84c95eb218bd24c9ae86ddf6a0d1f0458b0f506916ce151c2c543cb2baebb098ebecec5362373a47b1b5792c2343fca70a6" + + "9d1c5e696954e8fdd405dfa58099f563f1f6c9b34225fb90c4ca27bdba234927c6af1a4f3907d7a4bfae1dd9879f7eb8e536" + + "1d92e73fb1cdc8980ac325a9b319d37be3e52b165465699e8eb13a4710182f99052fdab9e39b6d56f0d93fc151d7429ae5fc" + + "4beabc439e28ee9c423f9c778eecb3fab83822ca3f6098357ad2f06684b2f22a7b4b692bf23c765cd58a26f1e06776a380de" + + "2f2d8b72c685cc8576b426b2e4b5a3847ef193deb83ab6ce2a86c760c79cd96ea45438c189fa609c4c8ffb122e0e2f0f9ac5" + + "1da35427d213cf5bb2caa1b73e96e5087c87a15c03dcd6e313cc6abe96634edb91e3b6ccba828ad995fa7adbb7ec6f2d6434" + + "e007c406e0d3be6f2b52c5afa54547a4fe191f32e202fae7b1ed85561715d30672336e7b000b67ad9cfa518fc74347df99a2" + + "76ef5e47737c09f69224ca140616dea0ef10324185846832a1feb072b19d0777ef20fd5ef6b1adbcd303509a903f54e2bded" + + "f49a4a63d655888cc9a70ef478d2562dee494012fae5be250e5ec7704770bcdc328546976e3ec218c77f41576d13f8ecdba4" + + "d64cd2dde412deabfa7475128a25bee815caec16bac6fe3af72a5b42ab28655fc4c51dfb7196d55bdf260c4a7378a6bbd3fa" + + "8a10b1b94918089d44279209ef84081d88e6ad6614efe4a0a20e575dea153e897100c04e3318795556563dd13a948aeae2e9" + + "5dc7f590febadf4871f8a6c20d9a3c2fd8d71303485750dda8cd38edb70052a6d6100268c110e9740dc7523bf73a82338831" + + "5d043ad565e906fbe79cc9bdcb7d27d2342a57fb8ca5d34617a4ac38ec1e20b66e3fdbed6f31adeaaf182f14d24f803acf11" + + "5bbb4e5240437336cafbfee0f4c0c6756800b6b9232d7f31924c699d5e436ec0dc93a8c7331ba6d03ace29787a9925e77adf" + + "a6ee77b41352f2f69e9f2ccaa77d1b3fd1d0d747a6d89f26dba893fc5a165856c7f8b47773b6cf7705ec52b3785e24cf17a3" + + "cfae67ac071f669a7363e83a4aab842b9cccb8beb1381ca9742ec9e4cfc3872f3b813696da1c53b92fce84e7b96f6f26d8a2" + + "d7941899c6c765bcde22d09b4e86c8dfe19e2a393d08b283a97110d66a2f130767c3d2b28401e2175a833c808f976196fc8b" + + "f03cbddd285b88312ed21a40d44664e26d5d712bb98caa3c33730d9ba94f089c102d7b364ecd40d3958dfcb6b2e4599b4fc3" + + "0b659501b5a1e0db6421bbefaa2bcfaf8f7de592936be9ee9332a11a345335d257ddee41263b7f4fc0e8e333a261f424912d" + + "1f8c04847a7c98ac727c182ecb3be76b79ea62e15981869ad14bea81e3307c428126eaa693258720ccef3bbc3189bd93dd77" + + "47b1224cd34b8f8dda9fcc99dd076be9b99b2cbfc051756a5f0c3c2cadc1891b27c128bcfb6c42fa6e38aa25efcff1fd5e18" + + "c523fb2b4773aae68403f664cd19ca0c3f693b5e2fd800c30bddd5e922bf90515f63381053f2a9e2b497e1e8ca6853665aca" + + "be98b3401f64203ead46203ecbac21c1a96de016a39fb57bc98d0b3d5b72d5218526b47289a78986aced7f5ebae6e93660a6" + + "f50355a23cca061210af46fd71236980c28fcf562e1c7c156a364ed625d56d8a7eb3f33e1f6b21d01e28f2856d84e2ba580c" + + "ada9328468830777f85326a354a178e6b8a34ecf365529a281e35e2f71088e38dcdedc041393ec4c91a65f8bd9b74f8e93c3" + + "8edaa4a590a75621ecc163532e544c1d28127fdaa8918e1c026bfb43fb02852a920122c8eff12493ff4e90849344c6c3bf31" + + "cccc05798b2bba873b93c9fa9832666448fd8be746131bf6225d5bf17ff58bcb391b6eff4e7809f5582fa90c5a2f1b8927cf" + + "a235fe96de94befc06667ea20218f7979c8637172bf947ae8de73faa3cc4f1db55669390abcb2bead1099f794e60cc83a772" + + "4bce52b40335fe28d515eb0944679333ff23c37ffdced19b8ea222575bb04f77950f55dff8d6fb2573ef95b7e8f6137d1022" + + "dee1c095179b6fc540a89cba783838839f5dcf0fe8ce7131c20169a601459388f3370fbeea126ae86cfdcebd78c705f2f389" + + "4dccaf9945346f478d4975782c59a8f8d618eadae3635b8d8d86f13e501c7885351c61ede2e06924075b8c272a004966eff9" + + "b73eecb58fd29644297a2eeba30cdd8f601d210c5c3e060959a9bcf5e776a1234d8529b21dd2f0954927ca43cc7121f41858" + + "5018e6e030893426544e7549fd507694c946cde2c09254befb03dd9e32b2f206587b532f026d83e5feb1f96193c1291ef9f2" + + "4bc21ba3c5ebfd359b2b99c5cd8ca14c44a090ac5f1ae464d59d874b49261c496cc91071d757b1f4dca7cd4b8249de1b7444" + + "ab95a8f9da5a5b77b451533abf8817e955f41b4db77c377ba76b6e537b40dfa1bc6882106a0a761b26ea0c952d355344d176" + + "bf0f858bf129fd65cc9062d1c9c08f23dade68a83f595656ceacd9108d98aa3fb00eb9b34a3afec9f61bf7bab093974445a6" + + "49afc2d77b4a94c6b977655e1a1e78ad79fe2cbaecb6392dc353252419be70206e567a4661972b4d27b30e523bab36320eaa" + + "ba3c8aa24da43e18655c96acbca313f8b9048c6b30eedb25c635015c0f7cc319385ec719cb163bb0e29ca11cfacc83af46c0" + + "59b7eddeedd68f35eee81a94651907a2940e09f6207678b67240f664afe92e0b084aad994a7b78c8ab64a15cbb80065d544f" + + "1dad4e16f20f10c744e0f89ab513454c99982746e66f5ec77f0832577b3aa16880fced6ad6b24d8c5088ddf32f637668d187" + + "855ad20a0e71bf27de19979b8dbcc807d48f038446421dbb5d2817301a6dd131b4fc34e1fa6bcf60f0d9ce91a47e2b95bf4d" + + "c00ff36f150398dc9ca9af22c15998012b10cc073a9b567ad551edd8ec767632eb78d67fc347b263a0633d24a85a7b079e9e" + + "1ae3a7027820e6bd2418d07b1e3016abfa02155d9c23471f41a20b6e179518265e4254331015117808646196f4411d0aedf1" + + "0abe59c2fb3574f221c8a95999fa2cb69c7457168d7c055bcb51b3e88e405a945182fa4283af9084e6892a51b4b9596f161d" + + "cec2cf94a66efe12bd750fc877d315f98ecd679ac3823d60887c34f79ede0f64e0cc7e1bde5baf640eb93f54a620813105a5" + + "90e5b39ec66cfa535c8e57952526c5854c5a92bf2527b19ea274256721daa544d83a7780aed863c89f420e0621b2fe2c0415" + + "f723f732b106e3b9148161a667ad12e2e83ef5a427c4dfbfb76e12517f19d2705b407cdcd18aefb2fa70e68919857db9432f" + + "d7dee76c2a1313de78e60f6aa6d6a1627aeed190f1cc414a2a56f33490e4847fd034a2be2a0d00afe692ddd6a8dee55932c4" + + "2107169557bbf45e2f77da912790b988cd972362d47e172c458550356a4c4594b7d7a46ba9a1758098063925f1f0703baa29" + + "d78553981345e969eaf366709f550515f91a4fdd6c4054a230ad51303f3605ea75057b2c02a73d9617377a0be44a5aada95c" + + "89adddf6b8bd31d51ea56bfdd280a99ef7249f35b860c387d11483b343b6003ebe871fa7cda47e41f82ab1cb18a71f95f265" + + "fea86369ec257a1902937e1dccc62fbb3745826faa03c6c48fdb275ed9d9c0f7bad78dc9eb1c0f71b66ec1f2afb66d699ef3" + + "7e805cf4d860d8cb381c926cdefe2fad4d77cf003d040a285ab46ddb9d8a8e1fb868383e0e091a29bfbd85f8d09bd10e873d" + + "db5555be8ac35d105f2bb300258388b48a5846d95036d04ec6059e6fcde83d23abbce3d157caeb5f3646c56e8107e0043aea" + + "5961a0382d90c9d6b0f9d7760b921d0f05b4a19509427fe6410e9caf07177904763eebee0c7911987d154ff0e3b5df36da83" + + "7de18bf59c49851565f3497e02fc011c2159cbec6ec315e0f05760d3de480001b389e5af921e7cc6717c014920080d18f45c" + + "f5f1000101fa2ac508c8910584412500010c976668ba7056bc6f15000001612494ee909c4af26a6cb6c73976771a5fce7a1a" + + "0001001c666e4b97c6d69394d4010169b2e0a1e3aec525e1c00001d3f63abedf5e88f530ec000082b480373debea628f8701" + + "010008d30d3260fba3500c3b9dad4934fa585fb987940100013c2c5b86fdf94be3972300000198fc9a7e564cb8a23704c482" + + "7ebd8c2ab6d02d1800010122c0530b32d6853f2148000061700fffd0e5410762320101a1d7ca9a35173e7faa8f000100674b" + + "9b578b7f24887f89668d9d4b36caf6ca2ca5010001a9deecb6d636a3d061ea0001985d2fdcac27a9c1033600014da6280819" + + "c9c3eb881f00003ceefe3ec1006ac09a5f0101ce1309c91dd23b118160000138865edd2be524eb5f1c000100c62aa7e46b2f" + + "69adde195ec62235bbbfd1497189010000e7a1b91859e241c0803e010001f34281d8570ca71b6c6b060e7861a716a42cb860" + + "000100fba2a29d68abe55752f1010100e09d2e14bf8ce48a8160013da1570843945ab96b01000001fb8bee3d3dfbe6eefa68" + + "2f341024bcfbcc84bfa5000101094d2c8470875c23d1f0000001a8b9d5c799311e7e91703ff9805c5ece87cf800400010001" + + "aa3a9eb113d9086dd51d093c2dedfc8aa054b8890001001cd4117cdef56ab1b352010100ca4663561e184146736087b60591" + + "cfc444918c750100010329770f803df4392ae0000100dddfd099a97de424522712d22d9254c7559b4207010001bb5930b511" + + "5e93ba57840001265da70d33e15bfdb8dc0000654801e2e36d570fb5b401019eb6fe06d9a9f5e4aa7e00000103e17dd4a5e7" + + "90fa47d612c4f486bfa023f05bbb0001000165470a9ad4cdd077dad921ac172346183eba78d5000101b8653293591b7fe2ff" + + "5300010002b63751a8235cfb9e38b2b252effcda19b5e98c010000018762d72c83088cb6916353847850bdf53b7e9ae80001" + + "000123ce051b93648cc36424ebac7d71cac72ea3f19c0001012e65bb10b0fea95e3fcb00012925ec1ca13e984557f8000001" + + "e31e96518d498733f2a06d4fd5306d98bcc03674000100a517d27267ab5d4ace63010028229b2cd1115e0ef777010100ca58" + + "38fac30288403d41d0b3bf02ffe3693828190100016bf29aed8f3b770bc57200010040fdbae21bf2c08c0cf30adda0c6b516" + + "83bfb8fe0100004980264576812e9461f10101000fcdabe667f60669195fc5ff4a5daef1b918cebd010001368bc069b82076" + + "23152a000100dab46a82a1552eff649f9ee254df14b743c83b7e01000001bcbc3331ab70da075c1199481e7458f0f918283f" + + "0001014e83fdd1be23c126f4d5000001378ca7ab8e1813a734a9c378d781ef7d11508358000100801a9b857d94ed23f69001" + + "0001cb8d849873a47520891748d8896f521cbd31d5c000010100f5eefc51d580debb82d393501a9a5a5c476c525a01000043" + + "cebb14fe7636f0ce73010100121edaabf78f47bb438ce56618d5309f9a6d022e010000017d4ea8be6371b2a01b783d1094c2" + + "c28258ed1c28000100b57b2f24c48074f61340010001a5bfaa3b54f415bf15f24444f926579b76a2d65900010001bc2b59e1" + + "52394f7452c64de0bf46c21e67bd73ea00010104afe6c3546bf4a674c0000156f62071a47a6cf9c5c50001004302607d318c" + + "7f324f4a80b0346bdd59890848500100000127cf61fea370187af284879ef4d3b201f62dc7c9000101d60087ef7232c9ea0c" + + "19000047308ae1b15e4d0b25770100017a928172dae3670eb520e3ede7b105986b48890700010142b2c8d308fbe99d918600" + + "0052b965fcf544c68e160f010100558b02d10a8b0428d7bbd5e0817f84e75f9f65d101000001fd8df7722f4d48d2bc74977c" + + "fa8425eeb62c0da2000100a423fae29ee2fb9afce101")) + self.assertEqual(ok, False, "We expect this fiat-shamir proof to be false") def test_graph_from_sat(self): g = graph_from_sat([[1]]) @@ -196,6 +484,12 @@ def test_game_110(self): (proof, last_position) = game_110_zk_proof(starting_position, n) (ok, reason) = game_110_zk_verify(last_position, n, proof) self.assertEqual(ok, True, "The test should pass the verification procedure") + with open("proof_110_five_true.proof", "rb") as in_file: + proof = in_file.read() + (ok, reason) = game_110_zk_verify([True] * 5, 4, proof) + self.assertEqual(ok, True, "Why don't you trust my proof that I know a configuration going to TTTTT in 4 iterations?") + (ok, reason) = game_110_zk_verify([False] * 5, 4, proof) + self.assertEqual(ok, False, "Impossible to have a proof proving that the last position is TTTTT and FFFFF at the same time!") if __name__ == '__main__': unittest.main()