-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathOT4.mli
More file actions
29 lines (21 loc) · 1.09 KB
/
Copy pathOT4.mli
File metadata and controls
29 lines (21 loc) · 1.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
(** Oblivious transfer 1 among 4 *)
(* Copyright Xavier Leroy.
License: LGPL 2.1 or later with OCaml LGPL Linking Exception *)
type value = Algebra.P256.t
val request: provider:Multiparty.participant -> int -> value
(** Request one value among four from the provider.
The integer argument is the value number, between 0 and 3. *)
val provide: requester:Multiparty.participant ->
value -> value -> value -> value -> unit
(** Provide four values [v0] to [v3] to the requester.
The requester will learn [vi] if it requests [i].
Nothing else is learned. *)
(** Specialization to Boolean values *)
val request_bool: provider:Multiparty.participant -> int -> bool
(** Request one Boolean among four from the provider.
The integer argument is the value number, between 0 and 3. *)
val provide_bool: requester:Multiparty.participant ->
bool -> bool -> bool -> bool -> unit
(** Provide four Boolean values [v0] to [v3] to the requester.
The requester will learn [vi] if it requests [i].
Nothing else is learned. *)