* Improvements for padding in KOS15
- Remove `self.padding` of KOS15Receiver
- Remove the entire padding after transposition for both sender and
receiver
* Adapted comment
* WIP: Turning matrix of receiver into one-dimensional Vec
* Adapted KOS15Receiver to use a Vec<u8> for matrix encoding
* WIP: Adapted sender to new table format and minor other improvements
* WIP: Small bugfixes
* Debugging tests...
* Small bugfix, KOS15 implementation working with new matrix format
* Bugfix in benchmarks
* Adapted drainage for KOS check to new matrix encoding
* Added comments about KOS check and extra bytes
* Minor improvements
* Added feedback
* Bugfix of wrong padding
* Made input random for KOS15 test
* Added feedback
- comment about 256
- DOS prevention
- variable rename
* Padding on sender side now calculated based on matrix
* Added correct formula for derivation of padding
* Adapted comment
* Fixed bug in test case
* Adapted test cases
* fix padding, randomize tests
(cherry picked from commit 2b005b442c2c1cb1b8273205b334eb4f3eeab765)
Co-authored-by: themighty1 <you@example.com>
* more work on mpc-circuits
* export InputValue OutputValue
* switch from Result to Option
* add invariants to Circuit constructor
* expose inner
* PartialEq for io
* relax constraint on gate wires
* break up circuit validation and add comments
Co-authored-by: sinuio <>
* 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
* initial work on std crypto
* enable tls12 for rustls
* clean up unused
* temp disable kx groups
* set server random
* setup record layer in ExpectServerDone
* refactor enc/decrypter setup
* disable currently unsupported version and suites
* enable RSA
* fix decrypt keys
* use constructor
* fix comment
* disable some cipher suites from tests
* prepare decrypter
* begin support for ems
Co-authored-by: themighty1 <>
* 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 <>