@zhoujun_aptos/octopus-ts-sdk-min 0.6.0 → 0.8.0
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.
- package/dist/elgamal.js +6 -6
- package/dist/elgamal.js.map +1 -1
- package/dist/enc/index.d.ts +1 -0
- package/dist/enc/index.d.ts.map +1 -1
- package/dist/enc/index.js +26 -5
- package/dist/enc/index.js.map +1 -1
- package/dist/enc/simple_elgamal_ristretto255.d.ts +1 -0
- package/dist/enc/simple_elgamal_ristretto255.d.ts.map +1 -1
- package/dist/enc/simple_elgamal_ristretto255.js +38 -1
- package/dist/enc/simple_elgamal_ristretto255.js.map +1 -1
- package/dist/group.d.ts +4 -2
- package/dist/group.d.ts.map +1 -1
- package/dist/group.js +23 -8
- package/dist/group.js.map +1 -1
- package/dist/ibe/index.d.ts +2 -0
- package/dist/ibe/index.d.ts.map +1 -1
- package/dist/ibe/index.js +9 -1
- package/dist/ibe/index.js.map +1 -1
- package/dist/ibe/otp_hmac_boneh_franklin_bls12381_short_pk.d.ts +1 -0
- package/dist/ibe/otp_hmac_boneh_franklin_bls12381_short_pk.d.ts.map +1 -1
- package/dist/ibe/otp_hmac_boneh_franklin_bls12381_short_pk.js +27 -4
- package/dist/ibe/otp_hmac_boneh_franklin_bls12381_short_pk.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/sig/index.d.ts +1 -0
- package/dist/sig/index.d.ts.map +1 -1
- package/dist/sig/index.js +26 -4
- package/dist/sig/index.js.map +1 -1
- package/dist/sig/schnorr_ristretto255.d.ts +1 -0
- package/dist/sig/schnorr_ristretto255.d.ts.map +1 -1
- package/dist/sig/schnorr_ristretto255.js +13 -7
- package/dist/sig/schnorr_ristretto255.js.map +1 -1
- package/dist/silent_setup_encryption.d.ts +5 -6
- package/dist/silent_setup_encryption.d.ts.map +1 -1
- package/dist/silent_setup_encryption.js +19 -16
- package/dist/silent_setup_encryption.js.map +1 -1
- package/dist/sym/aes256gcm.d.ts +26 -0
- package/dist/sym/aes256gcm.d.ts.map +1 -0
- package/dist/sym/aes256gcm.js +104 -0
- package/dist/sym/aes256gcm.js.map +1 -0
- package/dist/sym/index.d.ts +26 -0
- package/dist/sym/index.d.ts.map +1 -0
- package/dist/sym/index.js +151 -0
- package/dist/sym/index.js.map +1 -0
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +5 -8
- package/dist/utils.js.map +1 -1
- package/dist/worker_config.d.ts +7 -0
- package/dist/worker_config.d.ts.map +1 -1
- package/dist/worker_config.js +15 -2
- package/dist/worker_config.js.map +1 -1
- package/dist/worker_task.js +1 -1
- package/dist/worker_task.js.map +1 -1
- package/package.json +4 -4
- package/dist/aes256gcm.d.ts +0 -16
- package/dist/aes256gcm.d.ts.map +0 -1
- package/dist/aes256gcm.js +0 -98
- package/dist/aes256gcm.js.map +0 -1
package/dist/elgamal.js
CHANGED
|
@@ -19,8 +19,8 @@ class Ciphertext {
|
|
|
19
19
|
return new Ciphertext(c0, c1);
|
|
20
20
|
}
|
|
21
21
|
encode(serializer) {
|
|
22
|
-
this.c0.
|
|
23
|
-
this.c1.
|
|
22
|
+
this.c0.serialize(serializer);
|
|
23
|
+
this.c1.serialize(serializer);
|
|
24
24
|
}
|
|
25
25
|
toBytes() {
|
|
26
26
|
const serializer = new ts_sdk_1.Serializer();
|
|
@@ -49,8 +49,8 @@ class DecKey {
|
|
|
49
49
|
return new DecKey(encBase, privateScalar);
|
|
50
50
|
}
|
|
51
51
|
encode(serializer) {
|
|
52
|
-
this.encBase.
|
|
53
|
-
this.privateScalar.
|
|
52
|
+
this.encBase.serialize(serializer);
|
|
53
|
+
this.privateScalar.serialize(serializer);
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
exports.DecKey = DecKey;
|
|
@@ -68,8 +68,8 @@ class EncKey {
|
|
|
68
68
|
return new EncKey(encBase, publicPoint);
|
|
69
69
|
}
|
|
70
70
|
encode(serializer) {
|
|
71
|
-
this.encBase.
|
|
72
|
-
this.publicPoint.
|
|
71
|
+
this.encBase.serialize(serializer);
|
|
72
|
+
this.publicPoint.serialize(serializer);
|
|
73
73
|
}
|
|
74
74
|
toBytes() {
|
|
75
75
|
const serializer = new ts_sdk_1.Serializer();
|
package/dist/elgamal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elgamal.js","sourceRoot":"","sources":["../src/elgamal.ts"],"names":[],"mappings":";;;AAsFA,kBASC;AAED,kBAGC;AAED,4BAYC;AAlHD,+CAA8D;AAC9D,mCAA0C;AAE1C,MAAa,UAAU;IACnB,EAAE,CAAU;IACZ,EAAE,CAAU;IAEZ,YAAY,EAAW,EAAE,EAAW;QAChC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,YAA0B;QACzC,MAAM,EAAE,GAAG,eAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC7C,MAAM,EAAE,GAAG,eAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,UAAsB;QACzB,IAAI,CAAC,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"elgamal.js","sourceRoot":"","sources":["../src/elgamal.ts"],"names":[],"mappings":"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"}
|
package/dist/enc/index.d.ts
CHANGED
|
@@ -37,5 +37,6 @@ export declare class Ciphertext {
|
|
|
37
37
|
export declare function keygen(schemeId?: number): DecryptionKey;
|
|
38
38
|
export declare function deriveEncryptionKey(dk: DecryptionKey): EncryptionKey;
|
|
39
39
|
export declare function encrypt(ek: EncryptionKey, msg: Uint8Array): Ciphertext;
|
|
40
|
+
export declare function encryptWithRandomness(ek: EncryptionKey, msg: Uint8Array, randomness: Uint8Array): Ciphertext;
|
|
40
41
|
export declare function decrypt(dk: DecryptionKey, ciphertext: Ciphertext): Uint8Array | undefined;
|
|
41
42
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/enc/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/enc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,yBAAyB,MAAM,+BAA+B,CAAC;AAG3E,eAAO,MAAM,kCAAkC,IAAI,CAAC;AAEpD,qBAAa,aAAa;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,yBAAyB,CAAC,+BAA+B,CAAC;gBAErD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,yBAAyB,CAAC,+BAA+B;IAK5F,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,aAAa;IAS7D,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/enc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,yBAAyB,MAAM,+BAA+B,CAAC;AAG3E,eAAO,MAAM,kCAAkC,IAAI,CAAC;AAEpD,qBAAa,aAAa;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,yBAAyB,CAAC,+BAA+B,CAAC;gBAErD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,yBAAyB,CAAC,+BAA+B;IAK5F,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,aAAa;IAS7D,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa;IASlD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa;IAI1C,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAKvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,qBAAa,aAAa;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,yBAAyB,CAAC,+BAA+B,CAAC;gBAErD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,yBAAyB,CAAC,+BAA+B;IAK5F,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,aAAa;IAS7D,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa;IASlD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa;IAI1C,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAKvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,qBAAa,UAAU;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,yBAAyB,CAAC,mCAAmC,CAAC;gBAEzD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,yBAAyB,CAAC,mCAAmC;IAKhG,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,UAAU;IAS1D,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU;IAS/C,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAIvC,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAKvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,wBAAgB,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa,CASvD;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,aAAa,GAAG,aAAa,CAOpE;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,GAAG,UAAU,CAOtE;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,CAO5G;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAMzF"}
|
package/dist/enc/index.js
CHANGED
|
@@ -37,10 +37,11 @@ exports.Ciphertext = exports.DecryptionKey = exports.EncryptionKey = exports.SCH
|
|
|
37
37
|
exports.keygen = keygen;
|
|
38
38
|
exports.deriveEncryptionKey = deriveEncryptionKey;
|
|
39
39
|
exports.encrypt = encrypt;
|
|
40
|
+
exports.encryptWithRandomness = encryptWithRandomness;
|
|
40
41
|
exports.decrypt = decrypt;
|
|
41
42
|
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
42
43
|
const SimpleElGamalRistretto255 = __importStar(require("./simple_elgamal_ristretto255"));
|
|
43
|
-
const utils_1 = require("@noble/
|
|
44
|
+
const utils_1 = require("@noble/hashes/utils");
|
|
44
45
|
exports.SCHEME_SIMPLE_ELGAMAL_RISTRETTO255 = 0;
|
|
45
46
|
class EncryptionKey {
|
|
46
47
|
scheme;
|
|
@@ -59,7 +60,11 @@ class EncryptionKey {
|
|
|
59
60
|
}
|
|
60
61
|
static fromBytes(bytes) {
|
|
61
62
|
const deserializer = new ts_sdk_1.Deserializer(bytes);
|
|
62
|
-
|
|
63
|
+
const result = EncryptionKey.deserialize(deserializer);
|
|
64
|
+
if (deserializer.remaining() !== 0) {
|
|
65
|
+
throw new Error("Invalid encryption key bytes");
|
|
66
|
+
}
|
|
67
|
+
return result;
|
|
63
68
|
}
|
|
64
69
|
static fromHex(hex) {
|
|
65
70
|
return EncryptionKey.fromBytes((0, utils_1.hexToBytes)(hex));
|
|
@@ -95,7 +100,11 @@ class DecryptionKey {
|
|
|
95
100
|
}
|
|
96
101
|
static fromBytes(bytes) {
|
|
97
102
|
const deserializer = new ts_sdk_1.Deserializer(bytes);
|
|
98
|
-
|
|
103
|
+
const result = DecryptionKey.deserialize(deserializer);
|
|
104
|
+
if (deserializer.remaining() !== 0) {
|
|
105
|
+
throw new Error("Invalid decryption key bytes");
|
|
106
|
+
}
|
|
107
|
+
return result;
|
|
99
108
|
}
|
|
100
109
|
static fromHex(hex) {
|
|
101
110
|
return DecryptionKey.fromBytes((0, utils_1.hexToBytes)(hex));
|
|
@@ -131,7 +140,11 @@ class Ciphertext {
|
|
|
131
140
|
}
|
|
132
141
|
static fromBytes(bytes) {
|
|
133
142
|
const deserializer = new ts_sdk_1.Deserializer(bytes);
|
|
134
|
-
|
|
143
|
+
const result = Ciphertext.deserialize(deserializer);
|
|
144
|
+
if (deserializer.remaining() !== 0) {
|
|
145
|
+
throw new Error("Invalid ciphertext bytes");
|
|
146
|
+
}
|
|
147
|
+
return result;
|
|
135
148
|
}
|
|
136
149
|
static fromHex(hex) {
|
|
137
150
|
return Ciphertext.fromBytes((0, utils_1.hexToBytes)(hex));
|
|
@@ -150,7 +163,6 @@ class Ciphertext {
|
|
|
150
163
|
}
|
|
151
164
|
}
|
|
152
165
|
exports.Ciphertext = Ciphertext;
|
|
153
|
-
// Core encryption functions
|
|
154
166
|
function keygen(schemeId) {
|
|
155
167
|
const scheme = schemeId ?? exports.SCHEME_SIMPLE_ELGAMAL_RISTRETTO255;
|
|
156
168
|
if (scheme === exports.SCHEME_SIMPLE_ELGAMAL_RISTRETTO255) {
|
|
@@ -179,6 +191,15 @@ function encrypt(ek, msg) {
|
|
|
179
191
|
throw new Error(`Unknown scheme: ${ek.scheme}`);
|
|
180
192
|
}
|
|
181
193
|
}
|
|
194
|
+
function encryptWithRandomness(ek, msg, randomness) {
|
|
195
|
+
if (ek.scheme === exports.SCHEME_SIMPLE_ELGAMAL_RISTRETTO255) {
|
|
196
|
+
const ciphertext = SimpleElGamalRistretto255.encryptWithRandomness(ek.inner, msg, randomness);
|
|
197
|
+
return new Ciphertext(ek.scheme, ciphertext);
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
throw new Error(`Unknown scheme: ${ek.scheme}`);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
182
203
|
function decrypt(dk, ciphertext) {
|
|
183
204
|
if (dk.scheme === exports.SCHEME_SIMPLE_ELGAMAL_RISTRETTO255 && ciphertext.scheme === exports.SCHEME_SIMPLE_ELGAMAL_RISTRETTO255) {
|
|
184
205
|
return SimpleElGamalRistretto255.decrypt(dk.inner, ciphertext.inner);
|
package/dist/enc/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/enc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/enc/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,5 +23,6 @@ export declare class SimpleElGamalRistretto255Ciphertext {
|
|
|
23
23
|
export declare function keygen(): SimpleElGamalRistretto255DecKey;
|
|
24
24
|
export declare function deriveEncryptionKey(dk: SimpleElGamalRistretto255DecKey): SimpleElGamalRistretto255EncKey;
|
|
25
25
|
export declare function encrypt(ek: SimpleElGamalRistretto255EncKey, msg: Uint8Array): SimpleElGamalRistretto255Ciphertext;
|
|
26
|
+
export declare function encryptWithRandomness(ek: SimpleElGamalRistretto255EncKey, msg: Uint8Array, randomness: Uint8Array): SimpleElGamalRistretto255Ciphertext;
|
|
26
27
|
export declare function decrypt(dk: SimpleElGamalRistretto255DecKey, ciphertext: SimpleElGamalRistretto255Ciphertext): Uint8Array | undefined;
|
|
27
28
|
//# sourceMappingURL=simple_elgamal_ristretto255.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple_elgamal_ristretto255.d.ts","sourceRoot":"","sources":["../../src/enc/simple_elgamal_ristretto255.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAKtC,qBAAa,+BAA+B;IACxC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;gBAEd,SAAS,EAAE,OAAO,CAAC,MAAM;IAIrC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,+BAA+B;IAK/E,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAG1C;AAED,qBAAa,+BAA+B;IACxC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;gBAEd,SAAS,EAAE,OAAO,CAAC,MAAM;IAIrC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,+BAA+B;IAK/E,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAG1C;AAED,qBAAa,mCAAmC;IAC5C,WAAW,EAAE,OAAO,CAAC,UAAU,CAAC;IAChC,aAAa,EAAE,UAAU,CAAC;IAC1B,GAAG,EAAE,UAAU,CAAC;gBAEJ,WAAW,EAAE,OAAO,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU;IAMvF,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,mCAAmC;IAOnF,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAK1C;AAID,wBAAgB,MAAM,IAAI,+BAA+B,CAOxD;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,+BAA+B,GAAG,+BAA+B,CAOxG;
|
|
1
|
+
{"version":3,"file":"simple_elgamal_ristretto255.d.ts","sourceRoot":"","sources":["../../src/enc/simple_elgamal_ristretto255.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAKtC,qBAAa,+BAA+B;IACxC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;gBAEd,SAAS,EAAE,OAAO,CAAC,MAAM;IAIrC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,+BAA+B;IAK/E,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAG1C;AAED,qBAAa,+BAA+B;IACxC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;gBAEd,SAAS,EAAE,OAAO,CAAC,MAAM;IAIrC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,+BAA+B;IAK/E,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAG1C;AAED,qBAAa,mCAAmC;IAC5C,WAAW,EAAE,OAAO,CAAC,UAAU,CAAC;IAChC,aAAa,EAAE,UAAU,CAAC;IAC1B,GAAG,EAAE,UAAU,CAAC;gBAEJ,WAAW,EAAE,OAAO,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU;IAMvF,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,mCAAmC;IAOnF,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAK1C;AAID,wBAAgB,MAAM,IAAI,+BAA+B,CAOxD;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,+BAA+B,GAAG,+BAA+B,CAOxG;AAsCD,wBAAgB,OAAO,CAAC,EAAE,EAAE,+BAA+B,EAAE,GAAG,EAAE,UAAU,GAAG,mCAAmC,CAKjH;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,+BAA+B,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,GAAG,mCAAmC,CAcvJ;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,+BAA+B,EAAE,UAAU,EAAE,mCAAmC,GAAG,UAAU,GAAG,SAAS,CAmBpI"}
|
|
@@ -37,7 +37,9 @@ exports.SimpleElGamalRistretto255Ciphertext = exports.SimpleElGamalRistretto255D
|
|
|
37
37
|
exports.keygen = keygen;
|
|
38
38
|
exports.deriveEncryptionKey = deriveEncryptionKey;
|
|
39
39
|
exports.encrypt = encrypt;
|
|
40
|
+
exports.encryptWithRandomness = encryptWithRandomness;
|
|
40
41
|
exports.decrypt = decrypt;
|
|
42
|
+
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
41
43
|
const ElGamal = __importStar(require("../elgamal"));
|
|
42
44
|
const Group = __importStar(require("../group"));
|
|
43
45
|
const utils_1 = require("../utils");
|
|
@@ -106,10 +108,45 @@ function deriveEncryptionKey(dk) {
|
|
|
106
108
|
const elgamalEk = new ElGamal.EncKey(encBase, publicPoint);
|
|
107
109
|
return new SimpleElGamalRistretto255EncKey(elgamalEk);
|
|
108
110
|
}
|
|
111
|
+
class EncRandomizer {
|
|
112
|
+
elgamalPtxt;
|
|
113
|
+
elgamalRand;
|
|
114
|
+
constructor(elgamalPtxt, elgamalRand) {
|
|
115
|
+
this.elgamalPtxt = elgamalPtxt;
|
|
116
|
+
this.elgamalRand = elgamalRand;
|
|
117
|
+
}
|
|
118
|
+
static deserialize(deserializer) {
|
|
119
|
+
const elgamalPtxt = Group.Element.deserialize(deserializer);
|
|
120
|
+
const elgamalRand = Group.Scalar.deserialize(deserializer);
|
|
121
|
+
return new EncRandomizer(elgamalPtxt, elgamalRand);
|
|
122
|
+
}
|
|
123
|
+
static fromBytes(bytes) {
|
|
124
|
+
const deserializer = new ts_sdk_1.Deserializer(bytes);
|
|
125
|
+
const ret = EncRandomizer.deserialize(deserializer);
|
|
126
|
+
if (deserializer.remaining() !== 0) {
|
|
127
|
+
throw new Error("Invalid enc randomizer bytes");
|
|
128
|
+
}
|
|
129
|
+
return ret;
|
|
130
|
+
}
|
|
131
|
+
serialize(serializer) {
|
|
132
|
+
this.elgamalPtxt.serialize(serializer);
|
|
133
|
+
this.elgamalRand.serialize(serializer);
|
|
134
|
+
}
|
|
135
|
+
toBytes() {
|
|
136
|
+
const serializer = new ts_sdk_1.Serializer();
|
|
137
|
+
this.serialize(serializer);
|
|
138
|
+
return serializer.toUint8Array();
|
|
139
|
+
}
|
|
140
|
+
}
|
|
109
141
|
function encrypt(ek, msg) {
|
|
110
|
-
const { elgamalEk } = ek;
|
|
111
142
|
const elgamalPtxt = Group.Element.rand();
|
|
112
143
|
const elgamalRand = Group.Scalar.rand();
|
|
144
|
+
const encRandomizer = new EncRandomizer(elgamalPtxt, elgamalRand);
|
|
145
|
+
return encryptWithRandomness(ek, msg, encRandomizer.toBytes());
|
|
146
|
+
}
|
|
147
|
+
function encryptWithRandomness(ek, msg, randomness) {
|
|
148
|
+
const { elgamalEk } = ek;
|
|
149
|
+
const { elgamalPtxt, elgamalRand } = EncRandomizer.fromBytes(randomness);
|
|
113
150
|
const elgamalCiph = ElGamal.enc(elgamalEk, elgamalRand, elgamalPtxt);
|
|
114
151
|
const seed = elgamalPtxt.toBytes();
|
|
115
152
|
const otp = (0, utils_1.kdf)(seed, new TextEncoder().encode("OTP/SIMPLE_ELGAMAL_RISTRETTO255"), msg.length);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple_elgamal_ristretto255.js","sourceRoot":"","sources":["../../src/enc/simple_elgamal_ristretto255.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmEA,wBAOC;AAED,kDAOC;AAED,
|
|
1
|
+
{"version":3,"file":"simple_elgamal_ristretto255.js","sourceRoot":"","sources":["../../src/enc/simple_elgamal_ristretto255.ts"],"names":[],"mappings":"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"}
|
package/dist/group.d.ts
CHANGED
|
@@ -7,7 +7,8 @@ export declare class Element {
|
|
|
7
7
|
static groupIdentity(): Element;
|
|
8
8
|
static rand(): Element;
|
|
9
9
|
static deserialize(deserializer: Deserializer): Element;
|
|
10
|
-
|
|
10
|
+
static fromBytes(bytes: Uint8Array): Element;
|
|
11
|
+
serialize(serializer: Serializer): void;
|
|
11
12
|
toBytes(): Uint8Array;
|
|
12
13
|
toHex(): string;
|
|
13
14
|
asInner(): any;
|
|
@@ -23,7 +24,8 @@ export declare class Scalar {
|
|
|
23
24
|
static fromLittleEndianBytesModQ(bytes: Uint8Array): Scalar;
|
|
24
25
|
static rand(): Scalar;
|
|
25
26
|
static deserialize(deserializer: Deserializer): Scalar;
|
|
26
|
-
|
|
27
|
+
static fromBytes(bytes: Uint8Array): Scalar;
|
|
28
|
+
serialize(serializer: Serializer): void;
|
|
27
29
|
toBytes(): Uint8Array;
|
|
28
30
|
toHex(): string;
|
|
29
31
|
isZero(): boolean;
|
package/dist/group.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../src/group.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAO9D,qBAAa,OAAO;IAChB,KAAK,EAAE,UAAU,CAAC;gBAEN,KAAK,EAAE,UAAU;IAG7B,MAAM,CAAC,KAAK,IAAI,OAAO;IAIvB,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAMrC,MAAM,CAAC,aAAa,IAAI,OAAO;IAI/B,MAAM,CAAC,IAAI,IAAI,OAAO;IAMtB,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO;IAKvD,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../src/group.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAO9D,qBAAa,OAAO;IAChB,KAAK,EAAE,UAAU,CAAC;gBAEN,KAAK,EAAE,UAAU;IAG7B,MAAM,CAAC,KAAK,IAAI,OAAO;IAIvB,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAMrC,MAAM,CAAC,aAAa,IAAI,OAAO;IAI/B,MAAM,CAAC,IAAI,IAAI,OAAO;IAMtB,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO;IAKvD,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO;IAS5C,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAIvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;IAIf,OAAO,IAAI,GAAG;IAId,GAAG,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAO5B,GAAG,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAO5B,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;CASjC;AAED,qBAAa,MAAM;IACf,KAAK,EAAE,UAAU,CAAC;gBAEN,KAAK,EAAE,UAAU;IAI7B,MAAM,CAAC,KAAK,IAAI,MAAM;IAItB,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAIjC,MAAM,CAAC,yBAAyB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM;IAK3D,MAAM,CAAC,IAAI,IAAI,MAAM;IAQrB,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,MAAM;IAKtD,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM;IAS3C,SAAS,CAAC,UAAU,EAAE,UAAU;IAIhC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;IAIf,MAAM,IAAI,OAAO;IAIjB,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAK1B,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAK1B,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAK1B,GAAG,IAAI,MAAM;CAIhB;AAED,wBAAgB,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAOhE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAO7D"}
|
package/dist/group.js
CHANGED
|
@@ -4,7 +4,7 @@ exports.Scalar = exports.Element = void 0;
|
|
|
4
4
|
exports.msm = msm;
|
|
5
5
|
exports.scalarFrom512BitHash = scalarFrom512BitHash;
|
|
6
6
|
const ed25519_1 = require("@noble/curves/ed25519");
|
|
7
|
-
const utils_1 = require("@noble/curves/
|
|
7
|
+
const utils_1 = require("@noble/curves/utils");
|
|
8
8
|
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
9
9
|
const utils_2 = require("./utils");
|
|
10
10
|
// Constants
|
|
@@ -35,12 +35,20 @@ class Element {
|
|
|
35
35
|
const bytes = deserializer.deserializeBytes();
|
|
36
36
|
return new Element(bytes);
|
|
37
37
|
}
|
|
38
|
-
|
|
38
|
+
static fromBytes(bytes) {
|
|
39
|
+
const deserializer = new ts_sdk_1.Deserializer(bytes);
|
|
40
|
+
const ret = Element.deserialize(deserializer);
|
|
41
|
+
if (deserializer.remaining() !== 0) {
|
|
42
|
+
throw new Error("Invalid element bytes");
|
|
43
|
+
}
|
|
44
|
+
return ret;
|
|
45
|
+
}
|
|
46
|
+
serialize(serializer) {
|
|
39
47
|
serializer.serializeBytes(this.bytes);
|
|
40
48
|
}
|
|
41
49
|
toBytes() {
|
|
42
50
|
const serializer = new ts_sdk_1.Serializer();
|
|
43
|
-
this.
|
|
51
|
+
this.serialize(serializer);
|
|
44
52
|
return serializer.toUint8Array();
|
|
45
53
|
}
|
|
46
54
|
toHex() {
|
|
@@ -98,12 +106,20 @@ class Scalar {
|
|
|
98
106
|
const bytes = deserializer.deserializeBytes();
|
|
99
107
|
return new Scalar(bytes);
|
|
100
108
|
}
|
|
101
|
-
|
|
109
|
+
static fromBytes(bytes) {
|
|
110
|
+
const deserializer = new ts_sdk_1.Deserializer(bytes);
|
|
111
|
+
const ret = Scalar.deserialize(deserializer);
|
|
112
|
+
if (deserializer.remaining() !== 0) {
|
|
113
|
+
throw new Error("Invalid scalar bytes");
|
|
114
|
+
}
|
|
115
|
+
return ret;
|
|
116
|
+
}
|
|
117
|
+
serialize(serializer) {
|
|
102
118
|
serializer.serializeBytes(this.bytes);
|
|
103
119
|
}
|
|
104
120
|
toBytes() {
|
|
105
121
|
const serializer = new ts_sdk_1.Serializer();
|
|
106
|
-
this.
|
|
122
|
+
this.serialize(serializer);
|
|
107
123
|
return serializer.toUint8Array();
|
|
108
124
|
}
|
|
109
125
|
toHex() {
|
|
@@ -143,8 +159,7 @@ function scalarFrom512BitHash(hash) {
|
|
|
143
159
|
throw new Error("Hash must be 512 bits (64 bytes)");
|
|
144
160
|
}
|
|
145
161
|
// Take the first 32 bytes and convert to scalar, ensuring it's within valid range
|
|
146
|
-
const value = (0, utils_1.bytesToNumberLE)(hash
|
|
147
|
-
|
|
148
|
-
return new Scalar((0, utils_1.numberToBytesLE)(scalarValue, 32));
|
|
162
|
+
const value = (0, utils_1.bytesToNumberLE)(hash) % Q;
|
|
163
|
+
return new Scalar((0, utils_1.numberToBytesLE)(value, 32));
|
|
149
164
|
}
|
|
150
165
|
//# sourceMappingURL=group.js.map
|
package/dist/group.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group.js","sourceRoot":"","sources":["../src/group.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"group.js","sourceRoot":"","sources":["../src/group.ts"],"names":[],"mappings":"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"}
|
package/dist/ibe/index.d.ts
CHANGED
|
@@ -47,6 +47,8 @@ export declare class Ciphertext {
|
|
|
47
47
|
export declare function keygen(scheme?: number): MasterPrivateKey;
|
|
48
48
|
export declare function derivePublicKey(privateKey: MasterPrivateKey): MasterPublicKey;
|
|
49
49
|
export declare function encrypt(publicKey: MasterPublicKey, id: Uint8Array, plaintext: Uint8Array): Ciphertext;
|
|
50
|
+
/** Do NOT use this, unless you are a maintainer. Use `encrypt` instead. */
|
|
51
|
+
export declare function encryptWithRandomness(publicKey: MasterPublicKey, id: Uint8Array, plaintext: Uint8Array, randomness: Uint8Array): Ciphertext;
|
|
50
52
|
export declare function extract(privateKey: MasterPrivateKey, id: Uint8Array): IdentityPrivateKey;
|
|
51
53
|
export declare function decrypt(identityKey: IdentityPrivateKey, ciphertext: Ciphertext): Uint8Array | undefined;
|
|
52
54
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/ibe/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ibe/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAI9D,eAAO,MAAM,gDAAgD,IAAI,CAAC;AAElE,qBAAa,eAAe;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQtC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,eAAe;IAS/D,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,eAAe;IASpD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe;IAI5C,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IASvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,qBAAa,gBAAgB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQtC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,gBAAgB;IAShE,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,gBAAgB;IASrD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB;IAI7C,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IASvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,qBAAa,kBAAkB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQtC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,kBAAkB;IASlE,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,kBAAkB;IASvD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB;IAI/C,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IASvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,qBAAa,UAAU;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQtC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,UAAU;IAS1D,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU;IAS/C,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAIvC,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IASvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,wBAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,gBAAgB,CASxD;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,gBAAgB,GAAG,eAAe,CAK7E;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,UAAU,CAQrG;AAED,wBAAgB,OAAO,CAAC,UAAU,EAAE,gBAAgB,EAAE,EAAE,EAAE,UAAU,GAAG,kBAAkB,CAQxF;AAED,wBAAgB,OAAO,CAAC,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAKvG"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ibe/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAI9D,eAAO,MAAM,gDAAgD,IAAI,CAAC;AAElE,qBAAa,eAAe;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQtC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,eAAe;IAS/D,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,eAAe;IASpD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe;IAI5C,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IASvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,qBAAa,gBAAgB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQtC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,gBAAgB;IAShE,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,gBAAgB;IASrD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB;IAI7C,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IASvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,qBAAa,kBAAkB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQtC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,kBAAkB;IASlE,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,kBAAkB;IASvD,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB;IAI/C,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IASvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,qBAAa,UAAU;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAQtC,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,UAAU;IAS1D,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU;IAS/C,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAIvC,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IASvC,OAAO,IAAI,UAAU;IAMrB,KAAK,IAAI,MAAM;CAGlB;AAED,wBAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,gBAAgB,CASxD;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,gBAAgB,GAAG,eAAe,CAK7E;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,UAAU,CAQrG;AAED,2EAA2E;AAC3E,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,CAQ3I;AAED,wBAAgB,OAAO,CAAC,UAAU,EAAE,gBAAgB,EAAE,EAAE,EAAE,UAAU,GAAG,kBAAkB,CAQxF;AAED,wBAAgB,OAAO,CAAC,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAKvG"}
|
package/dist/ibe/index.js
CHANGED
|
@@ -37,11 +37,12 @@ exports.Ciphertext = exports.IdentityPrivateKey = exports.MasterPrivateKey = exp
|
|
|
37
37
|
exports.keygen = keygen;
|
|
38
38
|
exports.derivePublicKey = derivePublicKey;
|
|
39
39
|
exports.encrypt = encrypt;
|
|
40
|
+
exports.encryptWithRandomness = encryptWithRandomness;
|
|
40
41
|
exports.extract = extract;
|
|
41
42
|
exports.decrypt = decrypt;
|
|
42
43
|
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
43
44
|
const OtpHmacBonehFranklinBls12381ShortPK = __importStar(require("./otp_hmac_boneh_franklin_bls12381_short_pk"));
|
|
44
|
-
const utils_1 = require("@noble/curves/utils");
|
|
45
|
+
const utils_1 = require("@noble/curves/abstract/utils");
|
|
45
46
|
exports.SCHEME_OTP_HAMC_BONEH_FRANKLIN_BLS12381_SHORT_PK = 0;
|
|
46
47
|
class MasterPublicKey {
|
|
47
48
|
scheme;
|
|
@@ -257,6 +258,13 @@ function encrypt(publicKey, id, plaintext) {
|
|
|
257
258
|
}
|
|
258
259
|
throw new Error(`Unknown scheme: ${publicKey.scheme}`);
|
|
259
260
|
}
|
|
261
|
+
/** Do NOT use this, unless you are a maintainer. Use `encrypt` instead. */
|
|
262
|
+
function encryptWithRandomness(publicKey, id, plaintext, randomness) {
|
|
263
|
+
if (publicKey.scheme == exports.SCHEME_OTP_HAMC_BONEH_FRANKLIN_BLS12381_SHORT_PK) {
|
|
264
|
+
return new Ciphertext(exports.SCHEME_OTP_HAMC_BONEH_FRANKLIN_BLS12381_SHORT_PK, OtpHmacBonehFranklinBls12381ShortPK.encryptWithRandomness(publicKey.inner, id, plaintext, randomness));
|
|
265
|
+
}
|
|
266
|
+
throw new Error(`Unknown scheme: ${publicKey.scheme}`);
|
|
267
|
+
}
|
|
260
268
|
function extract(privateKey, id) {
|
|
261
269
|
if (privateKey.scheme == exports.SCHEME_OTP_HAMC_BONEH_FRANKLIN_BLS12381_SHORT_PK) {
|
|
262
270
|
return new IdentityPrivateKey(exports.SCHEME_OTP_HAMC_BONEH_FRANKLIN_BLS12381_SHORT_PK, OtpHmacBonehFranklinBls12381ShortPK.extract(privateKey.inner, id));
|
package/dist/ibe/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ibe/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8NA,wBASC;AAED,0CAKC;AAED,0BAQC;AAED,0BAQC;AAED,0BAKC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ibe/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,7 @@ export declare class Ciphertext {
|
|
|
32
32
|
export declare function keygen(): MasterPrivateKey;
|
|
33
33
|
export declare function derivePublicKey(privateKey: MasterPrivateKey): MasterPublicKey;
|
|
34
34
|
export declare function encrypt(publicKey: MasterPublicKey, id: Uint8Array, plaintext: Uint8Array): Ciphertext;
|
|
35
|
+
export declare function encryptWithRandomness(publicKey: MasterPublicKey, id: Uint8Array, plaintext: Uint8Array, randomness: Uint8Array): Ciphertext;
|
|
35
36
|
export declare function extract(privateKey: MasterPrivateKey, id: Uint8Array): IdentityPrivateKey;
|
|
36
37
|
export declare function decrypt(identityKey: IdentityPrivateKey, ciphertext: Ciphertext): Uint8Array | undefined;
|
|
37
38
|
//# sourceMappingURL=otp_hmac_boneh_franklin_bls12381_short_pk.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"otp_hmac_boneh_franklin_bls12381_short_pk.d.ts","sourceRoot":"","sources":["../../src/ibe/otp_hmac_boneh_franklin_bls12381_short_pk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AASnD,qBAAa,eAAe;IACxB,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/B,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBAE5B,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAC;IAKnF,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,eAAe;IAQ/D,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAI1C;AAED,qBAAa,gBAAgB;IACzB,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;gBAEV,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,MAAM;IAKjE,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,gBAAgB;IAQhE,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAI1C;AAED,qBAAa,kBAAkB;IAC3B,cAAc,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBAE1B,cAAc,EAAE,gBAAgB,CAAC,GAAG,CAAC;IAIjD,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,kBAAkB;IAMlE,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAG1C;AAED,qBAAa,UAAU;IACnB,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,EAAE,UAAU,CAAC;IAC1B,GAAG,EAAE,UAAU,CAAC;gBAEJ,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU;IAMpF,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,UAAU;IAQ1D,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAK1C;AAED,wBAAgB,MAAM,IAAI,gBAAgB,CAIzC;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,gBAAgB,GAAG,eAAe,CAG7E;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"otp_hmac_boneh_franklin_bls12381_short_pk.d.ts","sourceRoot":"","sources":["../../src/ibe/otp_hmac_boneh_franklin_bls12381_short_pk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AASnD,qBAAa,eAAe;IACxB,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/B,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBAE5B,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAC;IAKnF,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,eAAe;IAQ/D,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAI1C;AAED,qBAAa,gBAAgB;IACzB,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;gBAEV,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,MAAM;IAKjE,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,gBAAgB;IAQhE,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAI1C;AAED,qBAAa,kBAAkB;IAC3B,cAAc,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBAE1B,cAAc,EAAE,gBAAgB,CAAC,GAAG,CAAC;IAIjD,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,kBAAkB;IAMlE,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAG1C;AAED,qBAAa,UAAU;IACnB,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,EAAE,UAAU,CAAC;IAC1B,GAAG,EAAE,UAAU,CAAC;gBAEJ,EAAE,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU;IAMpF,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,GAAG,UAAU;IAQ1D,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAK1C;AAED,wBAAgB,MAAM,IAAI,gBAAgB,CAIzC;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,gBAAgB,GAAG,eAAe,CAG7E;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,UAAU,CAGrG;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,CAW3I;AAuBD,wBAAgB,OAAO,CAAC,UAAU,EAAE,gBAAgB,EAAE,EAAE,EAAE,UAAU,GAAG,kBAAkB,CAIxF;AAED,wBAAgB,OAAO,CAAC,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAWvG"}
|
|
@@ -4,6 +4,7 @@ exports.Ciphertext = exports.IdentityPrivateKey = exports.MasterPrivateKey = exp
|
|
|
4
4
|
exports.keygen = keygen;
|
|
5
5
|
exports.derivePublicKey = derivePublicKey;
|
|
6
6
|
exports.encrypt = encrypt;
|
|
7
|
+
exports.encryptWithRandomness = encryptWithRandomness;
|
|
7
8
|
exports.extract = extract;
|
|
8
9
|
exports.decrypt = decrypt;
|
|
9
10
|
const bls12_381_1 = require("@noble/curves/bls12-381");
|
|
@@ -44,12 +45,12 @@ class MasterPrivateKey {
|
|
|
44
45
|
const baseBytes = deserializer.deserializeBytes();
|
|
45
46
|
const base = bls12_381_1.bls12_381.G1.Point.fromBytes(baseBytes);
|
|
46
47
|
const privateScalarBytes = deserializer.deserializeBytes();
|
|
47
|
-
const privateScalar = BigInt('0x' + Array.from(privateScalarBytes).map(b => b.toString(16).padStart(2, '0')).join(''));
|
|
48
|
+
const privateScalar = BigInt('0x' + Array.from(privateScalarBytes).reverse().map(b => b.toString(16).padStart(2, '0')).join(''));
|
|
48
49
|
return new MasterPrivateKey(base, privateScalar);
|
|
49
50
|
}
|
|
50
51
|
serialize(serializer) {
|
|
51
52
|
serializer.serializeBytes(this.base.toBytes());
|
|
52
|
-
serializer.serializeBytes((0, utils_2.
|
|
53
|
+
serializer.serializeBytes((0, utils_2.numberToBytesLE)(this.privateScalar, 32));
|
|
53
54
|
}
|
|
54
55
|
}
|
|
55
56
|
exports.MasterPrivateKey = MasterPrivateKey;
|
|
@@ -102,9 +103,13 @@ function derivePublicKey(privateKey) {
|
|
|
102
103
|
}
|
|
103
104
|
function encrypt(publicKey, id, plaintext) {
|
|
104
105
|
const r = (0, utils_2.bytesToNumberBE)(bls12_381_1.bls12_381.utils.randomSecretKey());
|
|
106
|
+
return encryptWithRandomness(publicKey, id, plaintext, (0, utils_2.numberToBytesLE)(r, 32));
|
|
107
|
+
}
|
|
108
|
+
function encryptWithRandomness(publicKey, id, plaintext, randomness) {
|
|
109
|
+
const r = (0, utils_2.bytesToNumberLE)(randomness);
|
|
105
110
|
const idPoint = bls12_381_1.bls12_381.G2.hashToCurve(id, { DST: DST_ID_HASH });
|
|
106
111
|
const seedElement = bls12_381_1.bls12_381.pairing(publicKey.publicPointG1.multiply(r), idPoint);
|
|
107
|
-
const seed = bls12_381_1.bls12_381.fields.Fp12.toBytes(seedElement);
|
|
112
|
+
const seed = bls12381GtReprNobleToAptos(bls12_381_1.bls12_381.fields.Fp12.toBytes(seedElement));
|
|
108
113
|
const otp = (0, utils_3.kdf)(seed, DST_OTP, plaintext.length);
|
|
109
114
|
const macKey = (0, utils_3.kdf)(seed, DST_MAC, 32);
|
|
110
115
|
const symmetricCiph = (0, utils_3.xorBytes)(otp, plaintext);
|
|
@@ -112,6 +117,24 @@ function encrypt(publicKey, id, plaintext) {
|
|
|
112
117
|
const c0 = publicKey.base.multiply(r);
|
|
113
118
|
return new Ciphertext(c0, symmetricCiph, mac);
|
|
114
119
|
}
|
|
120
|
+
/**
|
|
121
|
+
* Aptos Gt format is defined in https://github.com/aptos-labs/aptos-core/blob/46d871fa1feb61ffafb73353a0755e8cc3aaed9d/aptos-move/framework/aptos-stdlib/sources/cryptography/bls12381_algebra.move#L204.
|
|
122
|
+
* Noble format is similar except that each Fp element is big-endian.
|
|
123
|
+
*/
|
|
124
|
+
function bls12381GtReprNobleToAptos(noble) {
|
|
125
|
+
if (noble.length !== 576) {
|
|
126
|
+
throw new Error('noble must be 576 bytes');
|
|
127
|
+
}
|
|
128
|
+
const chunks = [];
|
|
129
|
+
for (let i = 0; i < noble.length; i += 48) {
|
|
130
|
+
chunks.push(noble.slice(i, i + 48).reverse());
|
|
131
|
+
}
|
|
132
|
+
const result = new Uint8Array(576);
|
|
133
|
+
for (let i = 0; i < 12; i++) {
|
|
134
|
+
result.set(chunks[i], i * 48);
|
|
135
|
+
}
|
|
136
|
+
return result;
|
|
137
|
+
}
|
|
115
138
|
function extract(privateKey, id) {
|
|
116
139
|
const idPoint = bls12_381_1.bls12_381.G2.hashToCurve(id, { DST: DST_ID_HASH });
|
|
117
140
|
const privatePointG2 = idPoint.multiply(privateKey.privateScalar);
|
|
@@ -119,7 +142,7 @@ function extract(privateKey, id) {
|
|
|
119
142
|
}
|
|
120
143
|
function decrypt(identityKey, ciphertext) {
|
|
121
144
|
const seedElementGt = bls12_381_1.bls12_381.pairing(ciphertext.c0, identityKey.privatePointG2);
|
|
122
|
-
const seed = bls12_381_1.bls12_381.fields.Fp12.toBytes(seedElementGt);
|
|
145
|
+
const seed = bls12381GtReprNobleToAptos(bls12_381_1.bls12_381.fields.Fp12.toBytes(seedElementGt));
|
|
123
146
|
const macKey = (0, utils_3.kdf)(seed, DST_MAC, 32);
|
|
124
147
|
const macAnother = (0, utils_3.hmac_sha3_256)(macKey, ciphertext.symmetricCiph);
|
|
125
148
|
if ((0, utils_1.bytesToHex)(ciphertext.mac) !== (0, utils_1.bytesToHex)(macAnother)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"otp_hmac_boneh_franklin_bls12381_short_pk.js","sourceRoot":"","sources":["../../src/ibe/otp_hmac_boneh_franklin_bls12381_short_pk.ts"],"names":[],"mappings":";;;AAsGA,wBAIC;AAED,0CAGC;AAED,
|
|
1
|
+
{"version":3,"file":"otp_hmac_boneh_franklin_bls12381_short_pk.js","sourceRoot":"","sources":["../../src/ibe/otp_hmac_boneh_franklin_bls12381_short_pk.ts"],"names":[],"mappings":"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"}
|