The multi-party paradigm of threshold cryptography enables threshold schemes, for a secure distribution of trust in the operation of cryptographic primitives.
2025: NIST IR 8214B ipd, with notes on Threshold EdDSA, is being revised to integrate notes about related protocol approaches published since the initial public draft (ipd), including solutions with adaptive security.
Using a “secret sharing” mechanism, the secret key is split across multiple "parties". Then, if some (up to a threshold f out of n) of these parties are corrupted, the key secrecy remains uncompromised. The cryptographic operation that depends on the key is then performed via a threshold scheme, using secure multi-party computation (MPC), so that the key does not have to be reconstructed (i.e., the secret-sharing remains in place even during the computation). This threshold approach can be used to distribute trust across various operators, and is also useful to avoid various single-points of failure in the implementation.
Threshold schemes can be applied to any cryptographic primitive, such as key generation, signing, encryption and decryption. The MPTC project will consider devising recommendations and guidelines pertinent to threshold schemes that are interchangeable (in the sense of NISTIR 8214A, Section 2.4) with selected primitives of interest. For example, a threshold-produced signature should be verifiable by the verification algorithm that is used for signatures produced by the conventional (non-threshold) algorithm.
The NIST Threshold Call motivates the community of cryptography experts to submit threshold schemes and other primitives in scope, to form a public body of reference material. Each submission will include (i) technical specification, (ii) open-source reference implementation, and (iii) experimental performance evaluation. The analysis will support future recommendations for subsequent processes, which may include development of technical recommendations. The final version of the call (upcoming in 2025) will set a period for submissions, followed by a period of public analysis of the gathered reference material.
The primitives in scope are organized into multiple categories, across two classes:
Sign | PKE | Symm | KeyGen | FHE | ZKPoK | Gadgets | |
---|---|---|---|---|---|---|---|
Class N | N1 | N2 | N3 | N4 | |||
Class S | S1 | S2 | S3 | S4 | S5 | S6 | S7 |
Scope updates in the second public draft:
Public drafts and feedback:
Table 1. Categories of interest in Class N
Subcategory: Type | Families of specifications |
Sections (in the call) |
---|---|---|
N1: Signing |
[PreQ] EdDSA sign; ECDSA sign; RSADSA sign |
9.1, A.1 |
N2: PKE |
[PreQ] RSA encryp & decrypt [QR] K-PKE (from ML-KEM) encrypt & decrypt |
9.2, A.2 |
N3: Symmetric |
Ciphers: AES encipher/decipher, ASCON-AEAD encrypt/decrypt |
9.3, A.3 |
N4: Keygen (aka DKG) |
ECC keygen; ECC-CDH & ECC-MQV primitives RSA keygen; bitstring keygen QR keygen for ML, SLH, and stateful-HBS |
9.4, A.4 |
Legend: 2KA = pair-wise key-agreement; AES = Advanced Encryption Standard; CDH = Cofactor Diffie-Hellman; DKG = Distributed key-generation. ECC = Elliptic-curve cryptography; ECDSA = Elliptic-curve Digital Signature Algorithm; EdDSA = Edwards-Curve Digital Signature Algorithm; KC = Key confirmation; KDM = Key derivation mechanism; Keygen = Key-generation; ML = Module Lattice (based). MQV = Menezes-Qu-Vanstone; PKE = Public-key encryption; PQC = Post-Quantum Cryptography. PreQ = pre-quantum; QR = quantum resistant; RSA = Rivest-Shamir-Adleman; RSADSA = RSA digital signature algorithm; stfl-HBS = stateful hash-based signatures.
Note: This table reflects the categories in NISTIR 8214C 2pd (mar-2025). The initial public draft (jan-2023) had a different organization.
Table 2. Subcategories and examples of primitives in Cat2
Subcategory: Type | Example related schemes | Example primitive |
---|---|---|
S1: Signing | TF succinct & verifiable-deterministic signatures; TF-PQ signatures | Sign |
S2: PKE | TF-PQ public-key encryption (PKE) | Sign |
S4: Symmetric |
TF cipher/PRP, TF PRF/MAC, hash/XOF |
Decrypt, Encrypt (a secret value), TagGen, hash |
S5: Keygen | Any of the above or below (inc. non-PKE primitives for key-establishment) | KeyGen |
S5: FHE | Fully-homomorphic encryption (FHE) | Decryption; keyGen |
S6: ZKPoK | ZKPoK of private key | ZKPoK.Generate |
S7: Gadgets | Garbled circuit (GC) | GC.generate; GC.evaluate |
TF-PQ is a desired combination for any type of scheme; some examples show just TF to emphasize that it is welcome even if not PQ.
Legend: Keygen = key-generation; PKE = Public-key encryption; PRF = pseudorandom function (family); PRP = pseudorandom permutation (family); PQ = post-quantum (i.e., quantum resistant); TagGen = Tag generation. TF = threshold friendly; XOF = eXtendable output function. ZKPoK = Zero-knowledge proof of knowledge.
Note: This table reflects the categories in NISTIR 8214C 2pd (mar-2025). The initial public draft (jan-2023) had a different organization: class S was category 2; categories N1...N7 were subcategories C2.1...C2.8. Category S5 is now focused on FHE (whereas the previous C2.6 was more open-ended to special types of encryption).
Documents:
Presentations:
Note: The old "single-device track" about masked circuits for block-ciphers has become a separate project.
Each NIST-organized workshop has a dedicated webpage with detailed information. These events are also listed in the "Events" page associated with the MPTC project.
NIST Internal Reports (NISTIR):
So far, the main publications in the project are in the form of NIST Internal Reports (NISTIR), elaborated internally at NIST and made publicly available for comments and consultation.
The MPTC project intends to drive an open and transparent process (see IR 7977), welcoming and considering feedback from the community of stakeholders, including researchers and practitioners in academia, industry and government. The project has received useful community feedback about the multi-party threshold setting, including the references listed below:
To receive announcements pertinent to opportunities for collaboration, feedback, and workshops, consider subscribing to the MPTC-forum. The messages are publicly available at https://groups.google.com/a/list.nist.gov/g/mptc-forum
An earlier related call for focused feedback on criteria for threshold schemes (Call 2021a) solicited anticipated comments on the following topics: scope of proposals; security idealization; security vs. adversary types; system model; threshold profiles; building blocks.
The NIST reports on threshold schemes have benefited from public comments, as described in:
Topics of various presentation at NTCW 2019, MPTS 2020, MPTS 2023, WPEC 2024:
Standardization setting: [2019] I1.2 (TC readiness); [2020] 2a1 (MPC settings), 2a2 (composability); [2023] 1a1 (diversity).
Threshold RSA keygen: 1a3 (honest majority threshold schemes).
Threshold ECDSA: [2019] I4.2, I.5.1 (a, b, c); [2020] 3a2, 3a3, 3c1, 3c2; [2023] 1b3, 1b4.
Threshold Schnorr/EdDSA: [2019] II4; [2020] 1b2 (MPC-based), 1b3 (prob.), 1c1; [2023] 1b2 (prob.).
Threshold DL Keygen: [2023] 1b1.
PEC-related: [2023] 2a1, 2a2 and 3c1 (FHE), 2a3 and 2a4 (ZKP), 2a5 (ABE)
Threshold for other primitives: [2023] 1b5 (BLS).
Gadgets / building blocks: [2020]: 2b2+2c1 (garbled circuits), OT (2b1), PCG (2a3), PVSS (1a2); [2023] 3a1 (auth garbling), 3a2 (stacked garbling), 3a3 (garbled lookup tables), 3a4 (VOLE), 3c2 (AONT), 3c3 (VORF), 3c5 (networking).
Platforms/frameworks/endeavors: [2019] I1.3, II4.3; [2020] 3b3 (frameworks), 2c2, 2c3, 2c4, 2c5 (MPC Alliance); [2023] 1a2 (SPDZ), [2024] 3a5 (MPC Alliance).
Theory: [2019] II4.1 (multi-signatures); [2023] 2b3 (random-oracle); [2024] 3a2 (tutorial)
Others applications/comments: [2019] II4.4; [2020] 1b1, 1c4; [2023] 1a3, 2b1 (TLS).
Secret sharing variants: II3.1 (leakage resilient)
Variants: [2019] I4.1 (signatures), II3.2 (symmetric encryption), II4.2 (signing).
NIST presentations:
NIST standards related: [2019] I2.1 (approach), I6.1 (validation) I2.2 (PQC & EC); [2023] 2c1 & 2c2 (PQC), 2c3 (LWC), 2c4 (Validation), 2a0 (PEC tools), 3a0 (gadgets).
Intros about the threshold-crypto project or call: [2019] I1.1, [2020] 1a1; [2023] 101.
Legend of indices:
- For NTCW 2019, indices are Xyz, with X in {I, II} (day), y in {1,…,5} (session in the day), z in {1,2,3}.
- For MPTS 2020 and MPTS 2023, indices are xyz, with x in {0, 1,2,3} (day), y in {a,b,c,d} (session in the day), z in {0,…,5}.
Security and Privacy: digital signatures, encryption, key management, message authentication, post-quantum cryptography, secure hashing
Activities and Products: standards development