* 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>
* WIP: Drafting API for OT
* Added implmentation of new OT API for sender
* WIP: Redesigning OT API
* WIP: added draft
* WIP: Reworking crate architecture
* Readded pa to defaults
* Tidied up and added some signatures
* Removed unnecessary dependencies for now
* Implement ObliviousSend for KOS15IOSender
* Added ObliviousSend for RandSetup
* Added Kos15IOReceiver and implemented ObliviousReceive
* Added first KOS15-aio test
Also added a DuplexStream for testing
* Finished adding KOS15 mpc-aio unit tests
* Removed kos15 aio implementation for standard extended OT
* work on muxer
* more work on muxer
* delete base ot and rename extension to kos
* relocate ot error
* change OT receive trait and add mock
* mock ot send
* rename mocks
* remove Protocol types from ot traits
* refactor duplex channel
* add static bound
* update kos
* Remove unnecessary test implementations due to improvements in
DuplexChannel Error
* Remove pin from channel
* move duplex to utils-aio
* refactor duplex channel to use futures instead of tokio
* move Channel trait to utils-aio
* update mpc-aio
* update kos to use utils-aio
* expose InputLabels constructor
* mock ot and wirelabels
* expose constructor
* delete obsolete examples
* remove dummy mod
* mock feature
* disable muxer test
* cargo cleanup
Co-authored-by: th4s <th4s@metavoid.xyz>
* First compiling example using SIMD instructions in WASM
* WIP: Added first implementation of transpose_bytes
* WIP: Matrix transposition
- bugfix in transpose_bytes implementation
- added test case
- return error for N = 1 case
* Added a simple bench
* Improved byte transposition
Now need to only allocate the first half of the matrix
* Improved transpose_bytes to only use one pass per round
* Put pointer alloc before loop
* Now benching both versions
* WIP: Matrix tranpose
- made implementation generic
- improved documentation
- removed slower variant
* WIP: Implementing bit transpose
* Added transpose_bits implementation for wasm architecture
* Improved matrix transpose implementation
- added x86_64 bit-level transpose
- improved api and documentation
* Removed transmute and unused dependencies
* WIP: Various bugfixes
- added test for transpose_bits_unchecked
* Added a bench and removed double implementation of
bitmask_shift_unchecked
* It works
- bugfix in test_transpose_bits
* Renamed crate and made part of tlsn
* Added feature simd-transpose
* Bugfix for row dimension
* Added errors and little bugfix in error-check of transpose_bits function
* WIP: Added non-simd matrix-transpose
* Small bugfix and added doc
* Moved benches to criterion
* Added baseline implementation to criterion benches
* improved non-simd vesion
* Improved simd version
* Reverted changes in mpc-core
* Added feedback
* KOS15 check
* prost->core try_into
misc rename
* add new states
replace unwrap
* fix xor()
* add clmul crate
* remove debug info
* add license file
* replace unwrap with match
* move emptool ref clmul128 into clmul.rs to avoid cfg_if in lib.rs
test all backends from lib.rs
* idiomatic error assert in tests
* 6x speed up with clmul_reuse. add benchmarks
* simplify autodetection logic
* resolve endianness issue
* add a dummy "tests" dir to make mod tests happy
* fix path
* add MIT license and README
Co-authored-by: themighty1 <you@example.com>
Co-authored-by: sinuio <>