43 Commits

Author SHA1 Message Date
th4s
6c9c40e68a chore: clippy, fmt, warnings (#64)
* clippy fixes

* fmt fixes

* mirgrate to 2024 and fix workspace warning

* fix profile

* rustfmt

---------

Co-authored-by: sinu <65924192+sinui0@users.noreply.github.com>
2025-05-01 10:09:50 -07:00
sinu.eth
e6e64ee9a5 feat(rangeset): rangeset crate (#56) 2025-03-19 16:59:28 -07:00
sinu
76d9424238 feat(utils): cover_by method 2025-03-18 13:59:35 -07:00
yuroitaki
ab433b9240 feat(utils): add find exact subset cover for rangesets. (#54)
* Add set cover.

* Fix clippy, fmt.

* Apply clippy fix.

* Clipp fix.

* fmt fix.

* return Option and Vec, + clean up

---------

Co-authored-by: sinu <65924192+sinui0@users.noreply.github.com>
2025-03-18 11:35:29 -07:00
yuroitaki
8555275722 perf(utils): further optimise subset check. (#48)
* Enhance subset check.

* Add benchmarks.
2025-01-21 16:20:44 +08:00
yuroitaki
5779070820 Fix clippy warning from rust 1.83.0. 2025-01-03 15:00:28 +08:00
Hendrik Eeckhaut
09f1abe261 chore: fix clippy issues + run clippy in CI (#45)
* Chore: fix clippy issues + run clippy in CI

* clippy

* clippy

* clippy

* Formatting
2024-11-11 08:18:40 +00:00
sinu.eth
6f629684d0 feat(utils): Inplace operations and std traits (#41)
* move traits into submodules

* add inplace methods and std ops

* impl for references

* fix symmetric difference
2024-10-08 10:07:29 -07:00
sinu.eth
83a9554cd5 feat(utils): extract_if backport (#40) 2024-10-01 10:47:22 -07:00
sinu.eth
e7b2db6a0c feat(utils): additional set operations (#39)
* rename traits

* subset

* intersection

* prove set intersection

* assert invariants

* fix doctest
2024-09-04 19:29:29 -07:00
sinu.eth
50b9102f9d refactor: replace Identity trait with Step (#19)
* refactor: replace Identity trait with Step

* rename macro

* Apply suggestions from code review

Co-authored-by: dan <themighty1@users.noreply.github.com>

---------

Co-authored-by: dan <themighty1@users.noreply.github.com>
2024-02-04 22:27:25 -08:00
sinu
371b954f7c feat: add ToRangeSet impl for RangeSet 2024-01-31 19:30:43 -08:00
sinu.eth
def9af0ffa feat: add ToRangeSet trait (#17) 2024-01-31 19:15:07 -08:00
sinu.eth
368980ffed refactor: remove type bound from struct def (#16) 2024-01-31 19:12:05 -08:00
sinu.eth
c9a8c0b5a5 feat: add fallible conversion to Range and len_ranges method (#15) 2024-01-30 11:13:11 -08:00
sinu.eth
85f498e98a bug: fix incorrect RangeSet::max (#13) 2024-01-30 11:12:33 -08:00
sinu.eth
e424002a52 feat: RangeSet::shift_(left/right) (#12) 2024-01-30 11:09:06 -08:00
sinu.eth
88d274c73b feat: RangeSet::split_off (#11) 2024-01-30 11:02:52 -08:00
sinu
ee879220f4 feat: add PartialEq impls for refs 2024-01-28 15:40:54 -08:00
sinu.eth
1b929fe5a9 feat: IndexRanges (#9) 2023-10-30 08:47:25 -07:00
sinu.eth
8ac91563ce feat: impl ExactSizeIterator and DoubleEndedIterator (#6) 2023-09-18 08:12:53 -07:00
sinu.eth
827b6875fa Range utils fixes (#5)
* fix test names

* fix Range-Range union, and comment

* add subset test case

* simplify logic in Range-Range diff

* fix Range.is_subset(RangeSet)

* remove intersects trait

* add is_disjoint for RangeSet-RangeSet

* serde into attribute
2023-09-18 08:03:27 -07:00
sinu.eth
c42405c6b9 feat: range utils (#4)
* range utils

* reorg modules

* comments

* switch to mod 8 rather than max

* add serde derives for RangeSet

* add range iter

* add min/max methods

* fuzz invariants, docs, tweaks

* remove redundant clone bound

* update size_hint

* fix size_hint lower bound

* add must_use
2023-09-14 08:05:39 -07:00
sinu.eth
b182066f88 remove bits module (#2) 2023-08-21 18:58:10 -07:00
sinu.eth
30733c6fd6 Refactor IO traits (#1)
* duplex trait

* move expect stream trait

* factor out IoStream and IoSink traits

* io provider

* remove IoProvider trait

* rustfmt

* rename MpscDuplex -> MemoryDuplex
2023-08-21 18:54:03 -07:00
Hendrik Eeckhaut
caf6e409da Moved utils files to the top level
tlsnotary/tlsn#266
2023-06-07 15:11:30 +02:00
sinu
48439068b8 remove unused import 2023-05-24 15:01:11 -07:00
sinu.eth
073b94da78 TLS-MPC minimal functionality (#252)
* tls-mpc

* rebase fixes

* fixes
2023-05-24 15:00:11 -07:00
sinu.eth
5a8f619fcd integration tests (#251) 2023-05-23 13:29:16 -07:00
sinu.eth
973edd8348 IO trait refactor (#250)
* refactor mux + io traits

* update uid-mux

* refactor macro

* update macro dependents

* remove unexpected msg error variant

* more fixes

* fix actor-ot

* add Sync bound

* rust fmt
2023-05-23 11:14:06 -07:00
sinu.eth
eab2a8a4a1 Simplified Muxer (#249)
* uid-mux

* deprecate actor-mux

* update dependents

* rustfmt

* fix actor-ot

* fix mpc crate

* rustfmt

* handle err
2023-05-23 08:57:17 -07:00
sinu
7cd41af8b6 Remove generic from MockChannelFactory 2023-05-12 09:27:52 -07:00
sinu
73cc1e3ba4 rustfmt fix 2023-05-10 09:19:00 -07:00
sinu.eth
7050798fe6 OT Actor cleanup (#237)
* ot actor cleanup

* typo
2023-05-10 09:12:02 -07:00
sinu.eth
949e3ff84e Redesign mpc-garble (#220)
* mpc-garble

* move semihonest test to integration, expose some more types

* value config doc

* reenable all mpc crates

* rename msg type

* simplify config a bit

* typo

* add bound to StaticValueType

* clean up setup_inputs

* appease clippy

* add more flexible methods to memory trait

* add getter for value type

* comments and tweaks

* rename append -> append_string

* fix registry corruption

* drain filter

* finalize bug

* use matches!

* use as_ref

* remove default

* make decode public

* lower visibility for evaluator fn

* eval doc fix

* update buffering to be per value id

* input buffer methods

* move memory impl into separate module

* encapsulate finalized state

* flatten logic in value config

* fixes in utils

* docs
2023-05-08 09:12:04 -07:00
sinu.eth
4b081ca915 remove Result from spawn method (#217) 2023-05-08 09:12:04 -07:00
sinu.eth
dc0183a2f7 mpc-circuits-v2 (#212)
* mpc-circuits-v2

* update .gitignore

* little things

* reverse order of generics in add_array_input
2023-05-08 09:12:04 -07:00
th4s
617a4f3d14 Async backend general (#206)
* Added rayon backend for OTSender

* Added new SpawnRayon trait

* Remove &self reference

* Typo

* Improved implementation and added a test

* Undo changes in mpc

* Backend is now a global static ZST

- OT setup now uses backend

* Replaced old RayonBackend for Garbling with new Backend

* Move tokio to dev-dependencies

* Added feedback

* Added correct feature flags to dev-dependency tokio in
actor-share-conversion

* WIP: Repairing rebase...
2023-03-24 11:28:55 +00:00
sinu.eth
66da186abc Moar bitvec utils (#207) 2023-03-09 09:41:48 -08:00
sinu.eth
db429cfc82 Boolvec Utils (#203)
* bit utilities

* replace old helpers

* panic warning and rename trait methods

* update mpc-circuits

* switch to IntoIterator

* remove redundant into_iter

* panic on wrong bit length

* pr feedback

* uint conversion

* rename byte -> value

* use or instead of xor

---------

Co-authored-by: sinu.eth <>
2023-03-06 14:35:43 -08:00
sinu.eth
ea10bc4bdc Mock mux channel factory (#160) 2023-01-15 23:17:13 -08:00
sinu
6c65591b76 Partition Workspaces 2023-01-12 12:00:05 -08:00
sinu.eth
fdf08da8ed Consolidate utils (#127)
* move utils into dedicated crate

* update dependents

* fix Cargo.toml
2022-12-13 15:37:33 -08:00