threshold-elgamal 0.1.13 → 0.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +5 -3
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![npm version](https://badge.fury.io/js/threshold-elgamal.svg)](https://badge.fury.io/js/threshold-elgamal)
4
4
 
5
- This project is a collection of functions implementing the ElGamal encryption algorithm in TypeScript on top of native JavaScript BigInteger. Its core includes ElGamal functions for key generation, encryption, and decryption. It is extended with support for threshold encryption.
5
+ This project is a collection of functions implementing selected ElGamal cryptographic algorithms in TypeScript on top of native JavaScript BigInteger. Its core includes ElGamal functions for key generation, encryption, and decryption. It is extended with support for threshold encryption.
6
6
 
7
7
  **WIP: Early version. Thresholds when set below the number of scheme participants don't behave as expected.**
8
8
  However, it works correctly with `threshold == participantsCount`, which is its main use case for myself for now.
@@ -38,12 +38,14 @@ It has no other production dependencies apart from these two. They could be inli
38
38
  - Hashing messages
39
39
  - Support for additive property of exponents, not just native ElGamal multiplication
40
40
  - consider using {} function params for better readability and consistency in param naming
41
+ - ZK proofs
42
+ - Validation
41
43
 
42
44
  ## Installation
43
45
 
44
46
  To use it in your project, install it first:
45
47
 
46
- `npm install threshold-elgamal`
48
+ `npm install --save threshold-elgamal`
47
49
 
48
50
  ## Examples
49
51
 
@@ -173,7 +175,7 @@ const thresholdDecryptedMessage = thresholdDecrypt(
173
175
  console.log(thresholdDecryptedMessage); // 42
174
176
  ```
175
177
 
176
- ### Voting and Multiplication with Threshold Scheme for 3 Participants
178
+ ### Voting and multiplication with threshold scheme for 3 participants
177
179
 
178
180
  This example demonstrates a 1 to 10 voting scenario where 3 participants cast encrypted votes on two options. The encrypted votes are aggregated, multiplied with each other and then require all three participants to decrypt the final tally. The decryption does not work on individual votes, meaning that it is impossible to decrypt their votes even after decrypting the result.
179
181
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "threshold-elgamal",
3
- "version": "0.1.13",
3
+ "version": "0.1.15",
4
4
  "author": "Piotr Piech <piotr@piech.dev>",
5
5
  "license": "MIT",
6
6
  "description": "Threshold ElGamal encryption implementation in TypeScript",