3364 Commits

Author SHA1 Message Date
Daniel Lubarov
e22da77b34 Include the FRI prover's PoW witness in the transcript
We don't think this is required for soundness, but just to remove any doubt.

Old protocol:
```
...
P sends final_poly
V samples random r
P sends pow_witness (not in transcript)
V computes pow_response = H(r, pow_witness)
V asserts pow_response has N leading 0s
...
```

New protocol:
```
...
P sends final_poly
P sends pow_witness
V samples random pow_response
V asserts pow_response has N leading 0s
...
```
2022-11-17 12:08:11 -08:00
Daniel Lubarov
d2bd64f83f
Merge pull request #814 from mir-protocol/randomize_pi_wires
Randomize unused wires of PublicInputGate
2022-11-17 12:07:49 -08:00
Brandon H. Gomes
65d106bc31
chore: remove derivative dependency as non-crucial
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-15 16:26:43 -05:00
Brandon H. Gomes
2520bd62c6
chore: match hashbrown ahash dependency
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-15 16:14:07 -05:00
Jacqueline Nabaglo
205bd58f98 Witness generation work 2022-11-15 09:26:54 -08:00
Brandon H. Gomes
812a5d468a
chore: merge branch main
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-15 01:54:30 -05:00
Brandon H. Gomes
289498e854
fix: address review comments
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-15 01:52:27 -05:00
Brandon H. Gomes
14c2a6dd1f
Fork Update (#3)
* Use static `KERNEL` in tests

* Print opcode count

* Update criterion

* Combine all syscalls into one flag (#802)

* Combine all syscalls into one flag

* Minor: typo

* Daniel PR comments

* Check that `le_sum` won't overflow

* security notes

* Test reverse_index_bits

Thanks to Least Authority for this

* clippy

* EVM shift left/right operations (#801)

* First parts of shift implementation.

* Disable range check errors.

* Tidy up ASM.

* Update comments; fix some .sum() expressions.

* First full draft of shift left/right.

* Missed a +1.

* Clippy.

* Address Jacqui's comments.

* Add comment.

* Fix missing filter.

* Address second round of comments from Jacqui.

* Remove signed operation placeholders from arithmetic table. (#812)

Co-authored-by: wborgeaud <williamborgeaud@gmail.com>
Co-authored-by: Daniel Lubarov <daniel@lubarov.com>
Co-authored-by: Jacqueline Nabaglo <jakub@mirprotocol.org>
Co-authored-by: Hamish Ivey-Law <426294+unzvfu@users.noreply.github.com>
2022-11-15 01:51:29 -05:00
Daniel Lubarov
7eb0c74166 Randomize unused wires of PublicInputGate 2022-11-14 14:53:06 -08:00
Hamish Ivey-Law
56e291cf4e
Remove signed operation placeholders from arithmetic table. (#812) 2022-11-11 15:09:56 +11:00
Hamish Ivey-Law
1c87fbb712
EVM shift left/right operations (#801)
* First parts of shift implementation.

* Disable range check errors.

* Tidy up ASM.

* Update comments; fix some .sum() expressions.

* First full draft of shift left/right.

* Missed a +1.

* Clippy.

* Address Jacqui's comments.

* Add comment.

* Fix missing filter.

* Address second round of comments from Jacqui.
2022-11-09 10:47:15 +11:00
Daniel Lubarov
7126231b52
Merge pull request #811 from mir-protocol/test_reverse_index_bits
Test reverse_index_bits
2022-11-08 13:56:34 -08:00
Daniel Lubarov
624dabb9e3 clippy 2022-11-08 13:06:01 -08:00
Daniel Lubarov
c622e45246 Test reverse_index_bits
Thanks to Least Authority for this
2022-11-08 12:27:55 -08:00
Daniel Lubarov
692ad9399e
Merge pull request #810 from mir-protocol/le_sum_check
Check that `le_sum` won't overflow
2022-11-08 12:20:12 -08:00
Daniel Lubarov
882297877c security notes 2022-11-08 12:03:58 -08:00
Daniel Lubarov
cab6c18ed6 Check that le_sum won't overflow 2022-11-08 11:55:02 -08:00
Jacqueline Nabaglo
626c2583de
Combine all syscalls into one flag (#802)
* Combine all syscalls into one flag

* Minor: typo

* Daniel PR comments
2022-11-07 12:29:28 -08:00
Daniel Lubarov
98b9f3a462
Merge pull request #809 from mir-protocol/update_criterion
Update criterion
2022-11-07 12:06:24 -08:00
Daniel Lubarov
3dcc0c257e Update criterion 2022-11-07 11:28:24 -08:00
wborgeaud
ce21d134a5
Merge pull request #804 from mir-protocol/static_kernel_in_tests
Use static `KERNEL` in tests
2022-11-07 09:18:49 +01:00
wborgeaud
873f4583f9
Merge pull request #805 from mir-protocol/opcode_count_interpreter
Print opcode count
2022-11-07 09:17:46 +01:00
Brandon H. Gomes
9431fd7448
chore: add missing documentation in serialization trait
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-05 10:59:46 -07:00
Brandon H. Gomes
7e432bd6cc
feat: add serialization documentation
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-04 16:47:02 -07:00
Brandon H. Gomes
9e33310ee7
feat: add no-std support for insertion gate
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-04 16:26:22 -07:00
Brandon H. Gomes
5dfe1b412e
feat: add no-std support for starky
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-04 16:04:10 -07:00
wborgeaud
4bc2e05702 Print opcode count 2022-11-04 14:38:23 +01:00
wborgeaud
47e6093e37 Use static KERNEL in tests 2022-11-04 13:55:13 +01:00
Brandon H. Gomes
9f4dc3464e
fix: add architecture gating for inline-assembly
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-03 20:04:57 -07:00
Brandon H. Gomes
fc3f63398d
wip: start moving starky to no-std
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-03 12:17:03 -07:00
Brandon H. Gomes
38e467f1c0
chore: fix serde-cbor and run cargo-sort
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-03 11:41:12 -07:00
Brandon H. Gomes
703d2c3c95
wip: start plonky2_u32 and plonky2_ecdsa no-std impl
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-03 10:58:55 -07:00
Brandon H. Gomes
e2cdd5a954
feat: upgrade Sampling APIs
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-03 08:26:03 -07:00
Brandon H. Gomes
4aaf57e9a9
feat: separate reading and writing to get infallible writers
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-02 21:07:51 -07:00
Brandon H. Gomes
7a81c5d46a
feat: move to alloc for Vec/String/Box
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-02 19:59:12 -07:00
Brandon H. Gomes
6fd0da216a
fix: remove unstable features from plonky2
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-02 17:50:31 -07:00
Brandon H. Gomes
11600b93c0
fix: do a first round of a core replacement
Signed-off-by: Brandon H. Gomes <bhgomes@pm.me>
2022-11-02 16:54:41 -07:00
Jacqueline Nabaglo
ea7fbed33a
Constrain mem_channel.used flag to be binary (#800) 2022-11-02 10:14:33 -07:00
BGluth
0293a65a55 Fixed bad PR merge 2022-11-02 09:45:52 -06:00
BGluth
35e8f282e4
Merge pull request #792 from mir-protocol/eth_trie_utils_0_3_0
Bumped `eth_trie_utils` to `0.4.0`
2022-11-02 09:34:26 -06:00
wborgeaud
0066f079bb
Merge pull request #796 from mir-protocol/account_code_opcodes
Implement `EXTCODEHASH, (EXT)CODESIZE, (EXT)CODECOPY`
2022-11-02 13:53:44 +01:00
wborgeaud
68107502df Merge branch 'main' into account_code_opcodes
# Conflicts:
#	evm/src/cpu/kernel/aggregator.rs
#	evm/src/cpu/kernel/tests/mod.rs
2022-11-02 13:46:14 +01:00
wborgeaud
313402de02
Merge pull request #797 from mir-protocol/balance
Implement `(SELF)BALANCE`
2022-11-02 13:44:29 +01:00
wborgeaud
8198355565 Fix + Use context=0 2022-11-02 11:06:14 +01:00
wborgeaud
70b5dda399 Merge branch 'main' into account_code_opcodes 2022-11-02 10:43:35 +01:00
wborgeaud
35c00fa6a7 Return 0 if account doesn't exist 2022-11-02 10:37:19 +01:00
wborgeaud
ff4210ea78 Return 0 if account doesn't exist 2022-11-02 10:03:40 +01:00
wborgeaud
215e9a6e04
Merge pull request #798 from mir-protocol/use_address_macro
Use address macro instead of opcode
2022-11-01 08:34:07 +01:00
BGluth
8736435ea9 Updated eth_trie_utils to 0.4.0 2022-10-31 15:15:20 -06:00
BGluth
2e7da17554 Bumped eth_trie_utils to 0.3.1 2022-10-31 15:03:34 -06:00