* feat(mpc-tls): prove server mac key
* remove stray dep
* move mac key into `SessionKeys`
* fix key translation
* remove dangling dep
* move ghash mod to tlsn-common
* fix clippy lints
* treat all recv recs as unauthenticated
* detach zkvm first, then prove
* decrypt with aes_gcm, decode mac key only in zkvm
* encapsulate into `fn verify_tags`; inline mod `zk_aes_ecb`
* handle error
* fix dangling and clippy
* bump Cargo.lock
* feat(prf): reduced MPC variant
* move sending `client_random` from `alloc` to `preprocess`
* rename `Config` -> `Mode` and rename variants
* add feedback for handling of prf config
* fix formatting to nightly
* simplify `MpcPrf`
* improve external flush handling
* improve control flow
* improved inner control flow for normal prf version
* rename leftover `config` -> `mode`
* remove unnecessary pub(crate)
* rewrite state flow for reduced prf
* improve state transition for reduced prf
* repair prf bench
* WIP: Adapting to new `Sha256` from mpz
* repair failing test
* fixed all tests
* remove output decoding for p
* do not use mod.rs file hierarchy
* remove pub(crate) from function
* improve config handling
* use `Array::try_from`
* simplify hmac to function
* remove `merge_vecs`
* move `mark_public` to allocation
* minor fixes
* simplify state logic for reduced prf even more
* simplify reduced prf even more
* set reduced prf as default
* temporarily fix commit for mpz
* add part of feedback
* simplify state transition
* adapt comment
* improve state transition in flush
* simplify flush
* fix wasm prover config
---------
Co-authored-by: sinu <65924192+sinui0@users.noreply.github.com>
* Init.
* Cover range in order of preference of kinds.
* Fix comment.
* Adjust error message.
* Return tuple from set cover and address comments.
* Fix comments.
* Update utils version.
---------
Co-authored-by: yuroitaki <>
Co-authored-by: dan <themighty1@users.noreply.github.com>
* WIP: Adding actor sender for share conversion...
* WIP: Added actor for share-conversion sender
* Added actor for recevier
* Added state enum to allow verify functionality
* Added tests
* Adapted trait bounds to rebase of async-factory PR
* Added part of feedback
* Added more tests
* Completed feedback
* Simplify code with let-else
* code comments + test
* Introduce additional `Error` state for share-conversion sender/receiver
* Added feedback
* misc comments
* Cherry-picked from 870e4a1 and merged
Added more let-else and changed error handling
* Add critical errors which stop actor when out-of-order messages arrive
* Made setup to be a message handled by handler and added it to the
corresponding control
Co-authored-by: themighty1 <you@example.com>
* fix ot split methods in mpc-aio
* OT factory actor impl
* merge fixes
* committed ot
* scope stream futs
* trigger CI
* pr feedback
* alias in test for readability
* misc comments
* error handling and comments
Co-authored-by: themighty1 <you@example.com>
* WIP: Refactoring a2m/m2a...
* WIP: Refactor homomorphic subcrate...
* Implemented aio homomorph sender
* Removed integration test for now and renamed things
* Implemented homomorph aio receiver
* Improved API
* Rename crate homomorph -> share_conversion
* Rename errors and traits
* Migrated changes from branch `ghash-refactor-again`
* Improvements to share-conversion
- Renamed share_conversion to share-conversion
- Got rid of PhantomData for aio layer
* Improved variable naming and some doc
* Added aio unit tests and various improvements
- documentation
- variable naming
* Added TODO comment for OT integration test
* Added part of feedback
* Separated share-conversion into {share-converison-core, share-conversion-aio}
* WIP: Added recorder and implemented on sender side
* Implemented recorder on receiver side
* WIP: Added first draft for traits
* Implemented SendTape for Sender
* Removed TapeAccept trait
- implemented shell of TapeVerify for receiver
* WIP: Adapted verify function...
* Added verify trait and implemented it for AddShare and MulShare
* WIP: Refactoring replay functionality...
* Reapply feedback
* WIP: Refactoring and simplifing implementation...
* Tidied up and simplified recorder implementation
* Added unit tests for recorder in share-conversion-aio
* Added some comments
* Added barrier for sender
* Added feedback
* Added feedback
* Added feedback
* misc comments
* Fixed imports
* Added feedback
Co-authored-by: themighty1 <you@example.com>
* WIP: Refactoring a2m/m2a...
* WIP: Refactor homomorphic subcrate...
* Implemented aio homomorph sender
* Removed integration test for now and renamed things
* Implemented homomorph aio receiver
* Improved API
* Rename crate homomorph -> share_conversion
* Rename errors and traits
* Migrated changes from branch `ghash-refactor-again`
* Improvements to share-conversion
- Renamed share_conversion to share-conversion
- Got rid of PhantomData for aio layer
* Improved variable naming and some doc
* Added aio unit tests and various improvements
- documentation
- variable naming
* Added TODO comment for OT integration test
* Added part of feedback
* Separated share-conversion into {share-converison-core, share-conversion-aio}
* Sample from NonZeroU128 for `random` in a2m
* misc comments and code simplifications
Co-authored-by: themighty1 <you@example.com>