You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
1. **SecretKey**: Used for operations within a single node or across multiple nodes. It contains cryptographic material for encryption, decryption, and other operations. The `SecretKey` uses blinding masks, which are held only by the client. This ensures that even if all servers in the cluster collude, the client retains ultimate control over their data.
57
+
58
+
2. **ClusterKey**: Represents a cluster configuration without cryptographic material. It is used for managing multi-node clusters. Unlike the `SecretKey`, the `ClusterKey` does not use blinding masks, meaning the servers hold shares of the data.
59
+
60
+
Thresholds are supported for summation operations in multi-node clusters. A threshold specifies the minimum number of nodes required to reconstruct the original data. For example, Shamir's secret sharing is used when a threshold is set, ensuring that data can only be reconstructed if the required number of shares is available.
61
+
52
62
Installation and Usage
53
63
----------------------
54
64
The library can be imported in the usual ways:
@@ -58,19 +68,49 @@ The library can be imported in the usual ways:
58
68
import nilql
59
69
from nilql import*
60
70
61
-
Example
62
-
^^^^^^^^
63
-
An example workflow that demonstrates use of the library is presented below:
71
+
Examples and Usage
72
+
------------------
73
+
74
+
Generating Keys
75
+
^^^^^^^^^^^^^^^
76
+
77
+
To generate a `SecretKey` for a single-node cluster:
0 commit comments