quantum-resistant-rustykey 0.12.12 → 0.13.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/index.d.ts CHANGED
@@ -31,6 +31,11 @@ declare function loadFnDsa1024(): Promise<IFnDsa>;
31
31
  declare function loadMlDsa3(): Promise<IFnDsa>;
32
32
  declare function loadMlDsa5(): Promise<IFnDsa>;
33
33
  //#endregion
34
+ //#region src/slhdsa.d.ts
35
+ declare function loadSlhDsa128(): Promise<IFnDsa>;
36
+ declare function loadSlhDsa192(): Promise<IFnDsa>;
37
+ declare function loadSlhDsa256(): Promise<IFnDsa>;
38
+ //#endregion
34
39
  //#region src/sqisign.d.ts
35
40
  declare function loadSqisignLvl1(): Promise<IFnDsa>;
36
41
  declare function loadSqisignLvl3(): Promise<IFnDsa>;
@@ -100,5 +105,5 @@ declare function loadMlKem768(): Promise<IMlKem>;
100
105
  declare function loadMlKem512(): Promise<IMlKem>;
101
106
  declare function loadMlKem1024(): Promise<IMlKem>;
102
107
  //#endregion
103
- export { SQISIGN_LVL1_KAT0_MSG_HEX, SQISIGN_LVL1_KAT0_PK_HEX, SQISIGN_LVL1_KAT0_SIG_HEX, SQISIGN_LVL1_KAT0_SM_HEX, SQISIGN_LVL3_KAT0_MSG_HEX, SQISIGN_LVL3_KAT0_PK_HEX, SQISIGN_LVL3_KAT0_SIG_HEX, SQISIGN_LVL3_KAT0_SM_HEX, SQISIGN_LVL5_KAT0_MSG_HEX, SQISIGN_LVL5_KAT0_PK_HEX, SQISIGN_LVL5_KAT0_SIG_HEX, SQISIGN_LVL5_KAT0_SM_HEX, SQISIGN_WEBGPU_VARIANT_LABELS, type SqisignBenchSteps, type SqisignWebGpuSupport, type SqisignWebGpuVariant, benchSqisignWebGpu, getSqisignWebGpuSupport, isSqisignWebGpuAvailable, loadFnDsa1024, loadFnDsa512, loadMlDsa3, loadMlDsa5, loadMlKem1024, loadMlKem512, loadMlKem768, loadSqisignLvl1, loadSqisignLvl1WebGpu, loadSqisignLvl3, loadSqisignLvl3WebGpu, loadSqisignLvl5, loadSqisignLvl5WebGpu, setSqisignAccelWorkerUrl };
108
+ export { SQISIGN_LVL1_KAT0_MSG_HEX, SQISIGN_LVL1_KAT0_PK_HEX, SQISIGN_LVL1_KAT0_SIG_HEX, SQISIGN_LVL1_KAT0_SM_HEX, SQISIGN_LVL3_KAT0_MSG_HEX, SQISIGN_LVL3_KAT0_PK_HEX, SQISIGN_LVL3_KAT0_SIG_HEX, SQISIGN_LVL3_KAT0_SM_HEX, SQISIGN_LVL5_KAT0_MSG_HEX, SQISIGN_LVL5_KAT0_PK_HEX, SQISIGN_LVL5_KAT0_SIG_HEX, SQISIGN_LVL5_KAT0_SM_HEX, SQISIGN_WEBGPU_VARIANT_LABELS, type SqisignBenchSteps, type SqisignWebGpuSupport, type SqisignWebGpuVariant, benchSqisignWebGpu, getSqisignWebGpuSupport, isSqisignWebGpuAvailable, loadFnDsa1024, loadFnDsa512, loadMlDsa3, loadMlDsa5, loadMlKem1024, loadMlKem512, loadMlKem768, loadSlhDsa128, loadSlhDsa192, loadSlhDsa256, loadSqisignLvl1, loadSqisignLvl1WebGpu, loadSqisignLvl3, loadSqisignLvl3WebGpu, loadSqisignLvl5, loadSqisignLvl5WebGpu, setSqisignAccelWorkerUrl };
104
109
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/fndsa.ts","../src/mldsa.ts","../src/sqisign.ts","../src/sqisign-kat-lvl1.ts","../src/sqisign-accel-env.ts","../src/sqisign-webgpu.ts","../src/index.ts"],"mappings":";KAAY,YAAA,MAAkB,CAAA,GAAI,OAAA,CAAQ,CAAA;AAAA,UAEzB,OAAA;EAEhB,GAAA,CAAI,GAAA,iCAAoC,YAAY;AAAA;AAAA,UAGpC,aAAA;EAEhB,GAAA,CAAI,GAAA,4BAA+B,YAAY;AAAA;AAAA,UAG/B,MAAA;EAChB,OAAA,IAAW,OAAA;EACX,OAAA,CAAQ,UAAA,QAAkB,aAAA;EAC1B,OAAA,CAAQ,UAAA,OAAiB,WAAA,QAAmB,OAAA;EAC5C,gBAAA,CAAiB,MAAA,QAAc,YAAA;EAC/B,cAAA,CAAe,OAAA,UAAiB,MAAA,QAAc,OAAA,CAAQ,UAAA;EACtD,cAAA,CAAe,gBAAA,EAAkB,UAAA,EAAY,MAAA,QAAc,OAAA;EAC3D,MAAA;AAAA;AAAA,KAOW,cAAA;AAAA,UAEK,MAAA;EAChB,OAAA,IAAW,OAAA;EACX,IAAA,CACC,OAAA,EAAS,UAAA,GAAa,WAAA,WACtB,WAAA,YACE,OAAA,CAAQ,UAAA;EACX,MAAA,CACC,SAAA,EAAW,UAAA,GAAa,WAAA,WACxB,OAAA,EAAS,UAAA,GAAa,WAAA,WACtB,UAAA,YACE,OAAA;EACH,gBAAA,CAAiB,KAAA,EAAO,UAAA,GAAa,WAAA;AAAA;;;iBC8NhB,YAAA,IAAgB,OAAO,CAAC,MAAA;AAAA,iBAKxB,aAAA,IAAiB,OAAO,CAAC,MAAA;;;iBCHzB,UAAA,IAAc,OAAO,CAAC,MAAA;AAAA,iBAKtB,UAAA,IAAc,OAAO,CAAC,MAAA;;;iBCsEtB,eAAA,IAAmB,OAAO,CAAC,MAAA;AAAA,iBAK3B,eAAA,IAAmB,OAAO,CAAC,MAAA;AAAA,iBAK3B,eAAA,IAAmB,OAAO,CAAC,MAAA;;;;AH5VjD;;;;cIKa,wBAAA;;cAIA,wBAAA;;cAIA,yBAAA;;cAGA,yBAAA;;cAGA,wBAAA;AAAA,cAEA,wBAAA;AAAA,cAEA,yBAAA;AAAA,cACA,yBAAA;;cAGA,wBAAA;AAAA,cAEA,wBAAA;AAAA,cAEA,yBAAA;AAAA,cACA,yBAAA;;;KChCD,oBAAA;EACX,SAAA;EACA,mBAAA;EACA,iBAAA;EACA,MAAA;EACA,MAAA;AAAA;AAAA,cAGY,6BAAA;EAAA;;;;KAMD,oBAAA,gBAAoC,6BAA6B;AAAA,iBAU7D,uBAAA,IAA2B,oBAAoB;AAAA,iBAyD/C,wBAAA;;;;iBCTA,wBAAA,CAAyB,GAAW;AAAA,KAiRxC,iBAAA;EACX,QAAA;EACA,MAAA;EACA,QAAA;AAAA;AAAA,iBAGqB,kBAAA,CACrB,OAAA,EAAS,cAAA,EACT,OAAA,YACE,OAAA;EACF,SAAA;EACA,EAAA;EACA,cAAA;EACA,KAAA,EAAO,iBAAA;AAAA;AAAA,iBAkCc,qBAAA,IAAyB,OAAO,CAAC,MAAA;AAAA,iBAIjC,qBAAA,IAAyB,OAAO,CAAC,MAAA;AAAA,iBAIjC,qBAAA,IAAyB,OAAO,CAAC,MAAA;;;iBC/IjC,YAAA,IAAgB,OAAO,CAAC,MAAA;AAAA,iBAIxB,YAAA,IAAgB,OAAO,CAAC,MAAA;AAAA,iBAIxB,aAAA,IAAiB,OAAO,CAAC,MAAA"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/fndsa.ts","../src/mldsa.ts","../src/slhdsa.ts","../src/sqisign.ts","../src/sqisign-kat-lvl1.ts","../src/sqisign-accel-env.ts","../src/sqisign-webgpu.ts","../src/index.ts"],"mappings":";KAAY,YAAA,MAAkB,CAAA,GAAI,OAAA,CAAQ,CAAA;AAAA,UAEzB,OAAA;EAEhB,GAAA,CAAI,GAAA,iCAAoC,YAAY;AAAA;AAAA,UAGpC,aAAA;EAEhB,GAAA,CAAI,GAAA,4BAA+B,YAAY;AAAA;AAAA,UAG/B,MAAA;EAChB,OAAA,IAAW,OAAA;EACX,OAAA,CAAQ,UAAA,QAAkB,aAAA;EAC1B,OAAA,CAAQ,UAAA,OAAiB,WAAA,QAAmB,OAAA;EAC5C,gBAAA,CAAiB,MAAA,QAAc,YAAA;EAC/B,cAAA,CAAe,OAAA,UAAiB,MAAA,QAAc,OAAA,CAAQ,UAAA;EACtD,cAAA,CAAe,gBAAA,EAAkB,UAAA,EAAY,MAAA,QAAc,OAAA;EAC3D,MAAA;AAAA;AAAA,KAQW,cAAA;AAAA,UAEK,MAAA;EAChB,OAAA,IAAW,OAAA;EACX,IAAA,CACC,OAAA,EAAS,UAAA,GAAa,WAAA,WACtB,WAAA,YACE,OAAA,CAAQ,UAAA;EACX,MAAA,CACC,SAAA,EAAW,UAAA,GAAa,WAAA,WACxB,OAAA,EAAS,UAAA,GAAa,WAAA,WACtB,UAAA,YACE,OAAA;EACH,gBAAA,CAAiB,KAAA,EAAO,UAAA,GAAa,WAAA;AAAA;;;iBC6NhB,YAAA,IAAgB,OAAO,CAAC,MAAA;AAAA,iBAKxB,aAAA,IAAiB,OAAO,CAAC,MAAA;;;iBCHzB,UAAA,IAAc,OAAO,CAAC,MAAA;AAAA,iBAKtB,UAAA,IAAc,OAAO,CAAC,MAAA;;;iBCnMtB,aAAA,IAAiB,OAAO,CAAC,MAAA;AAAA,iBAIzB,aAAA,IAAiB,OAAO,CAAC,MAAA;AAAA,iBAIzB,aAAA,IAAiB,OAAO,CAAC,MAAA;;;iBCiQzB,eAAA,IAAmB,OAAO,CAAC,MAAA;AAAA,iBAK3B,eAAA,IAAmB,OAAO,CAAC,MAAA;AAAA,iBAK3B,eAAA,IAAmB,OAAO,CAAC,MAAA;;;;AJ5VjD;;;;cKKa,wBAAA;;cAIA,wBAAA;;cAIA,yBAAA;;cAGA,yBAAA;;cAGA,wBAAA;AAAA,cAEA,wBAAA;AAAA,cAEA,yBAAA;AAAA,cACA,yBAAA;;cAGA,wBAAA;AAAA,cAEA,wBAAA;AAAA,cAEA,yBAAA;AAAA,cACA,yBAAA;;;KChCD,oBAAA;EACX,SAAA;EACA,mBAAA;EACA,iBAAA;EACA,MAAA;EACA,MAAA;AAAA;AAAA,cAGY,6BAAA;EAAA;;;;KAMD,oBAAA,gBAAoC,6BAA6B;AAAA,iBAU7D,uBAAA,IAA2B,oBAAoB;AAAA,iBAyD/C,wBAAA;;;;iBCTA,wBAAA,CAAyB,GAAW;AAAA,KAiRxC,iBAAA;EACX,QAAA;EACA,MAAA;EACA,QAAA;AAAA;AAAA,iBAGqB,kBAAA,CACrB,OAAA,EAAS,cAAA,EACT,OAAA,YACE,OAAA;EACF,SAAA;EACA,EAAA;EACA,cAAA;EACA,KAAA,EAAO,iBAAA;AAAA;AAAA,iBAkCc,qBAAA,IAAyB,OAAO,CAAC,MAAA;AAAA,iBAIjC,qBAAA,IAAyB,OAAO,CAAC,MAAA;AAAA,iBAIjC,qBAAA,IAAyB,OAAO,CAAC,MAAA;;;iBC9IjC,YAAA,IAAgB,OAAO,CAAC,MAAA;AAAA,iBAIxB,YAAA,IAAgB,OAAO,CAAC,MAAA;AAAA,iBAIxB,aAAA,IAAiB,OAAO,CAAC,MAAA"}
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { slh_dsa_sha2_128s, slh_dsa_sha2_192s, slh_dsa_sha2_256s } from "@noble/post-quantum/slh-dsa.js";
1
2
  //#region src/vendor/mlkem.js
2
3
  var wasm_module_default = (() => {
3
4
  var _scriptDir = import.meta.url;
@@ -3148,6 +3149,55 @@ async function loadMlDsa5() {
3148
3149
  return new MlDsaWrapper("dilithium5");
3149
3150
  }
3150
3151
  //#endregion
3152
+ //#region src/slhdsa.ts
3153
+ function getImpl(variant) {
3154
+ if (variant === "sha2_192s") return slh_dsa_sha2_192s;
3155
+ if (variant === "sha2_256s") return slh_dsa_sha2_256s;
3156
+ return slh_dsa_sha2_128s;
3157
+ }
3158
+ var SlhDsaWrapper = class {
3159
+ variant;
3160
+ constructor(variant) {
3161
+ this.variant = variant;
3162
+ }
3163
+ impl() {
3164
+ return getImpl(this.variant);
3165
+ }
3166
+ keypair() {
3167
+ const pairPromise = Promise.resolve().then(() => {
3168
+ const { secretKey, publicKey } = this.impl().keygen();
3169
+ return {
3170
+ public_key: publicKey,
3171
+ private_key: secretKey
3172
+ };
3173
+ });
3174
+ return { get: (key) => pairPromise.then((pair) => key === "public_key" ? pair.public_key : pair.private_key) };
3175
+ }
3176
+ sign(message, private_key) {
3177
+ return Promise.resolve(private_key).then((sk) => this.impl().sign(asBytes(message), asBytes(sk)));
3178
+ }
3179
+ verify(signature, message, public_key) {
3180
+ return Promise.all([
3181
+ Promise.resolve(signature),
3182
+ Promise.resolve(message),
3183
+ Promise.resolve(public_key)
3184
+ ]).then(([sig, msg, pk]) => this.impl().verify(asBytes(sig), asBytes(msg), asBytes(pk)));
3185
+ }
3186
+ buffer_to_string(value) {
3187
+ if (typeof value === "string") return value;
3188
+ return toHex(asBytes(value));
3189
+ }
3190
+ };
3191
+ async function loadSlhDsa128() {
3192
+ return new SlhDsaWrapper("sha2_128s");
3193
+ }
3194
+ async function loadSlhDsa192() {
3195
+ return new SlhDsaWrapper("sha2_192s");
3196
+ }
3197
+ async function loadSlhDsa256() {
3198
+ return new SlhDsaWrapper("sha2_256s");
3199
+ }
3200
+ //#endregion
3151
3201
  //#region src/vendor/sqisignlvl1.js
3152
3202
  var sqisign_lvl1_module_default = (() => {
3153
3203
  var _scriptDir = import.meta.url;
@@ -4890,6 +4940,6 @@ async function loadMlKem1024() {
4890
4940
  return new MlKemWrapper(mlkem1024_default, { name: "ML-KEM-1024" });
4891
4941
  }
4892
4942
  //#endregion
4893
- export { SQISIGN_LVL1_KAT0_MSG_HEX, SQISIGN_LVL1_KAT0_PK_HEX, SQISIGN_LVL1_KAT0_SIG_HEX, SQISIGN_LVL1_KAT0_SM_HEX, SQISIGN_LVL3_KAT0_MSG_HEX, SQISIGN_LVL3_KAT0_PK_HEX, SQISIGN_LVL3_KAT0_SIG_HEX, SQISIGN_LVL3_KAT0_SM_HEX, SQISIGN_LVL5_KAT0_MSG_HEX, SQISIGN_LVL5_KAT0_PK_HEX, SQISIGN_LVL5_KAT0_SIG_HEX, SQISIGN_LVL5_KAT0_SM_HEX, SQISIGN_WEBGPU_VARIANT_LABELS, benchSqisignWebGpu, getSqisignWebGpuSupport, isSqisignWebGpuAvailable, loadFnDsa1024, loadFnDsa512, loadMlDsa3, loadMlDsa5, loadMlKem1024, loadMlKem512, loadMlKem768, loadSqisignLvl1, loadSqisignLvl1WebGpu, loadSqisignLvl3, loadSqisignLvl3WebGpu, loadSqisignLvl5, loadSqisignLvl5WebGpu, setSqisignAccelWorkerUrl };
4943
+ export { SQISIGN_LVL1_KAT0_MSG_HEX, SQISIGN_LVL1_KAT0_PK_HEX, SQISIGN_LVL1_KAT0_SIG_HEX, SQISIGN_LVL1_KAT0_SM_HEX, SQISIGN_LVL3_KAT0_MSG_HEX, SQISIGN_LVL3_KAT0_PK_HEX, SQISIGN_LVL3_KAT0_SIG_HEX, SQISIGN_LVL3_KAT0_SM_HEX, SQISIGN_LVL5_KAT0_MSG_HEX, SQISIGN_LVL5_KAT0_PK_HEX, SQISIGN_LVL5_KAT0_SIG_HEX, SQISIGN_LVL5_KAT0_SM_HEX, SQISIGN_WEBGPU_VARIANT_LABELS, benchSqisignWebGpu, getSqisignWebGpuSupport, isSqisignWebGpuAvailable, loadFnDsa1024, loadFnDsa512, loadMlDsa3, loadMlDsa5, loadMlKem1024, loadMlKem512, loadMlKem768, loadSlhDsa128, loadSlhDsa192, loadSlhDsa256, loadSqisignLvl1, loadSqisignLvl1WebGpu, loadSqisignLvl3, loadSqisignLvl3WebGpu, loadSqisignLvl5, loadSqisignLvl5WebGpu, setSqisignAccelWorkerUrl };
4894
4944
 
4895
4945
  //# sourceMappingURL=index.js.map