@reallyme/crypto 0.1.8 → 0.3.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.
Files changed (61) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +148 -18
  3. package/dist/aead.d.ts +4 -0
  4. package/dist/aead.js +40 -16
  5. package/dist/aesKw.d.ts +8 -2
  6. package/dist/aesKw.js +69 -12
  7. package/dist/algorithms.d.ts +12 -4
  8. package/dist/algorithms.js +8 -2
  9. package/dist/argon2id.d.ts +3 -0
  10. package/dist/argon2id.js +18 -3
  11. package/dist/cryptoFacade.d.ts +66 -5
  12. package/dist/cryptoFacade.js +99 -38
  13. package/dist/errors.d.ts +1 -1
  14. package/dist/hkdf.d.ts +1 -0
  15. package/dist/hkdf.js +5 -1
  16. package/dist/hmac.d.ts +3 -0
  17. package/dist/hmac.js +24 -3
  18. package/dist/hpke.d.ts +4 -1
  19. package/dist/hpke.js +45 -14
  20. package/dist/index.d.ts +14 -13
  21. package/dist/index.js +12 -10
  22. package/dist/jwaConcatKdf.js +8 -4
  23. package/dist/jwk.d.ts +2 -1
  24. package/dist/jwk.js +158 -122
  25. package/dist/kmac.d.ts +11 -0
  26. package/dist/kmac.js +49 -0
  27. package/dist/memory.d.ts +8 -0
  28. package/dist/memory.js +13 -0
  29. package/dist/mlDsa.d.ts +5 -0
  30. package/dist/mlDsa.js +43 -9
  31. package/dist/mlKem.d.ts +5 -2
  32. package/dist/mlKem.js +37 -26
  33. package/dist/operationResponse.d.ts +16 -0
  34. package/dist/operationResponse.js +46 -0
  35. package/dist/p256Ecdh.js +5 -1
  36. package/dist/p384Ecdh.js +5 -1
  37. package/dist/p521Ecdh.js +5 -1
  38. package/dist/pbkdf2.d.ts +6 -8
  39. package/dist/pbkdf2.js +12 -12
  40. package/dist/proto/generated/reallyme/crypto/v1/crypto_pb.d.ts +2859 -128
  41. package/dist/proto/generated/reallyme/crypto/v1/crypto_pb.js +992 -132
  42. package/dist/proto.d.ts +99 -7
  43. package/dist/proto.js +741 -16
  44. package/dist/rsa.d.ts +4 -1
  45. package/dist/rsa.js +23 -16
  46. package/dist/slhDsa.d.ts +5 -0
  47. package/dist/slhDsa.js +40 -9
  48. package/dist/validateBytes.d.ts +7 -1
  49. package/dist/validateBytes.js +63 -3
  50. package/dist/wasm/reallyme_crypto_wasm.js +77 -365
  51. package/dist/wasm/reallyme_crypto_wasm_bg.wasm +0 -0
  52. package/dist/wasmModuleTypes.d.ts +9 -21
  53. package/dist/wasmProvider.d.ts +12 -29
  54. package/dist/wasmProvider.js +25 -43
  55. package/dist/xWing.d.ts +5 -4
  56. package/dist/xWing.js +40 -40
  57. package/package.json +20 -2
  58. package/dist/codecs.d.ts +0 -35
  59. package/dist/codecs.js +0 -216
  60. package/dist/proto/generated/reallyme/codec/v1/codec_pb.d.ts +0 -253
  61. package/dist/proto/generated/reallyme/codec/v1/codec_pb.js +0 -160
@@ -102,6 +102,502 @@ export type CryptoBackendError = Message<"reallyme.crypto.v1.CryptoBackendError"
102
102
  * Use `create(CryptoBackendErrorSchema)` to create a new message.
103
103
  */
104
104
  export declare const CryptoBackendErrorSchema: GenMessage<CryptoBackendError>;
105
+ /**
106
+ * CryptoOperationRequest is the single executable protobuf request for FFI,
107
+ * WASM, generated-SDK, CLI, and transport adapters. Native SDK callers should
108
+ * keep using typed methods. Sparse field bands keep related operations
109
+ * together without creating a second out-of-band operation namespace.
110
+ *
111
+ * Provider-owned platform keys use the standalone platform-key messages
112
+ * below and the native Swift or Android SDK boundary. They are deliberately
113
+ * outside this Rust-executable transport because native handle identity,
114
+ * authentication, attestation, and lifetime cannot be delegated to Rust.
115
+ *
116
+ * @generated from message reallyme.crypto.v1.CryptoOperationRequest
117
+ */
118
+ export type CryptoOperationRequest = Message<"reallyme.crypto.v1.CryptoOperationRequest"> & {
119
+ /**
120
+ * @generated from oneof reallyme.crypto.v1.CryptoOperationRequest.operation
121
+ */
122
+ operation: {
123
+ /**
124
+ * @generated from field: reallyme.crypto.v1.CryptoHashRequest hash = 1;
125
+ */
126
+ value: CryptoHashRequest;
127
+ case: "hash";
128
+ } | {
129
+ /**
130
+ * @generated from field: reallyme.crypto.v1.CryptoAeadSealRequest aead_seal = 2;
131
+ */
132
+ value: CryptoAeadSealRequest;
133
+ case: "aeadSeal";
134
+ } | {
135
+ /**
136
+ * @generated from field: reallyme.crypto.v1.CryptoAeadOpenRequest aead_open = 3;
137
+ */
138
+ value: CryptoAeadOpenRequest;
139
+ case: "aeadOpen";
140
+ } | {
141
+ /**
142
+ * @generated from field: reallyme.crypto.v1.CryptoMacAuthenticateRequest mac_authenticate = 4;
143
+ */
144
+ value: CryptoMacAuthenticateRequest;
145
+ case: "macAuthenticate";
146
+ } | {
147
+ /**
148
+ * @generated from field: reallyme.crypto.v1.CryptoMacVerifyRequest mac_verify = 5;
149
+ */
150
+ value: CryptoMacVerifyRequest;
151
+ case: "macVerify";
152
+ } | {
153
+ /**
154
+ * @generated from field: reallyme.crypto.v1.CryptoSignatureGenerateKeyPairRequest signature_generate_key_pair = 10;
155
+ */
156
+ value: CryptoSignatureGenerateKeyPairRequest;
157
+ case: "signatureGenerateKeyPair";
158
+ } | {
159
+ /**
160
+ * @generated from field: reallyme.crypto.v1.CryptoSignatureDeriveKeyPairRequest signature_derive_key_pair = 11;
161
+ */
162
+ value: CryptoSignatureDeriveKeyPairRequest;
163
+ case: "signatureDeriveKeyPair";
164
+ } | {
165
+ /**
166
+ * @generated from field: reallyme.crypto.v1.CryptoSignatureSignRequest signature_sign = 12;
167
+ */
168
+ value: CryptoSignatureSignRequest;
169
+ case: "signatureSign";
170
+ } | {
171
+ /**
172
+ * @generated from field: reallyme.crypto.v1.CryptoSignatureVerifyRequest signature_verify = 13;
173
+ */
174
+ value: CryptoSignatureVerifyRequest;
175
+ case: "signatureVerify";
176
+ } | {
177
+ /**
178
+ * @generated from field: reallyme.crypto.v1.CryptoBip340SchnorrSignRequest bip340_schnorr_sign = 14;
179
+ */
180
+ value: CryptoBip340SchnorrSignRequest;
181
+ case: "bip340SchnorrSign";
182
+ } | {
183
+ /**
184
+ * @generated from field: reallyme.crypto.v1.CryptoRsaVerifyRequest rsa_verify = 15;
185
+ */
186
+ value: CryptoRsaVerifyRequest;
187
+ case: "rsaVerify";
188
+ } | {
189
+ /**
190
+ * @generated from field: reallyme.crypto.v1.CryptoKeyAgreementDeriveSharedSecretRequest key_agreement_derive_shared_secret = 20;
191
+ */
192
+ value: CryptoKeyAgreementDeriveSharedSecretRequest;
193
+ case: "keyAgreementDeriveSharedSecret";
194
+ } | {
195
+ /**
196
+ * @generated from field: reallyme.crypto.v1.CryptoKeyAgreementDeriveKeyPairRequest key_agreement_derive_key_pair = 21;
197
+ */
198
+ value: CryptoKeyAgreementDeriveKeyPairRequest;
199
+ case: "keyAgreementDeriveKeyPair";
200
+ } | {
201
+ /**
202
+ * @generated from field: reallyme.crypto.v1.CryptoKemGenerateKeyPairRequest kem_generate_key_pair = 30;
203
+ */
204
+ value: CryptoKemGenerateKeyPairRequest;
205
+ case: "kemGenerateKeyPair";
206
+ } | {
207
+ /**
208
+ * @generated from field: reallyme.crypto.v1.CryptoKemEncapsulateRequest kem_encapsulate = 31;
209
+ */
210
+ value: CryptoKemEncapsulateRequest;
211
+ case: "kemEncapsulate";
212
+ } | {
213
+ /**
214
+ * @generated from field: reallyme.crypto.v1.CryptoKemDecapsulateRequest kem_decapsulate = 32;
215
+ */
216
+ value: CryptoKemDecapsulateRequest;
217
+ case: "kemDecapsulate";
218
+ } | {
219
+ /**
220
+ * @generated from field: reallyme.crypto.v1.CryptoKemDeriveKeyPairRequest kem_derive_key_pair = 33;
221
+ */
222
+ value: CryptoKemDeriveKeyPairRequest;
223
+ case: "kemDeriveKeyPair";
224
+ } | {
225
+ /**
226
+ * @generated from field: reallyme.crypto.v1.CryptoHkdfDeriveRequest hkdf_derive = 40;
227
+ */
228
+ value: CryptoHkdfDeriveRequest;
229
+ case: "hkdfDerive";
230
+ } | {
231
+ /**
232
+ * @generated from field: reallyme.crypto.v1.CryptoKdfDeriveKeyRequest kdf_derive_key = 41;
233
+ */
234
+ value: CryptoKdfDeriveKeyRequest;
235
+ case: "kdfDeriveKey";
236
+ } | {
237
+ /**
238
+ * @generated from field: reallyme.crypto.v1.CryptoJwaConcatKdfSha256DeriveRequest jwa_concat_kdf_sha256_derive = 42;
239
+ */
240
+ value: CryptoJwaConcatKdfSha256DeriveRequest;
241
+ case: "jwaConcatKdfSha256Derive";
242
+ } | {
243
+ /**
244
+ * @generated from field: reallyme.crypto.v1.CryptoKmac256DeriveRequest kmac256_derive = 43;
245
+ */
246
+ value: CryptoKmac256DeriveRequest;
247
+ case: "kmac256Derive";
248
+ } | {
249
+ /**
250
+ * @generated from field: reallyme.crypto.v1.CryptoArgon2idDeriveRequest argon2id_derive = 44;
251
+ */
252
+ value: CryptoArgon2idDeriveRequest;
253
+ case: "argon2idDerive";
254
+ } | {
255
+ /**
256
+ * @generated from field: reallyme.crypto.v1.CryptoKeyWrapRequest key_wrap = 50;
257
+ */
258
+ value: CryptoKeyWrapRequest;
259
+ case: "keyWrap";
260
+ } | {
261
+ /**
262
+ * @generated from field: reallyme.crypto.v1.CryptoKeyUnwrapRequest key_unwrap = 51;
263
+ */
264
+ value: CryptoKeyUnwrapRequest;
265
+ case: "keyUnwrap";
266
+ } | {
267
+ /**
268
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeSealRequest hpke_seal = 60;
269
+ */
270
+ value: CryptoHpkeSealRequest;
271
+ case: "hpkeSeal";
272
+ } | {
273
+ /**
274
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeOpenRequest hpke_open = 61;
275
+ */
276
+ value: CryptoHpkeOpenRequest;
277
+ case: "hpkeOpen";
278
+ } | {
279
+ /**
280
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeGenerateKeyPairRequest hpke_generate_key_pair = 62;
281
+ */
282
+ value: CryptoHpkeGenerateKeyPairRequest;
283
+ case: "hpkeGenerateKeyPair";
284
+ } | {
285
+ /**
286
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeDeriveKeyPairRequest hpke_derive_key_pair = 63;
287
+ */
288
+ value: CryptoHpkeDeriveKeyPairRequest;
289
+ case: "hpkeDeriveKeyPair";
290
+ } | {
291
+ /**
292
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeSenderExportRequest hpke_sender_export = 64;
293
+ */
294
+ value: CryptoHpkeSenderExportRequest;
295
+ case: "hpkeSenderExport";
296
+ } | {
297
+ /**
298
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeReceiverExportRequest hpke_receiver_export = 65;
299
+ */
300
+ value: CryptoHpkeReceiverExportRequest;
301
+ case: "hpkeReceiverExport";
302
+ } | {
303
+ /**
304
+ * @generated from field: reallyme.crypto.v1.CryptoHpkePskSealRequest hpke_psk_seal = 66;
305
+ */
306
+ value: CryptoHpkePskSealRequest;
307
+ case: "hpkePskSeal";
308
+ } | {
309
+ /**
310
+ * @generated from field: reallyme.crypto.v1.CryptoHpkePskOpenRequest hpke_psk_open = 67;
311
+ */
312
+ value: CryptoHpkePskOpenRequest;
313
+ case: "hpkePskOpen";
314
+ } | {
315
+ case: undefined;
316
+ value?: undefined;
317
+ };
318
+ };
319
+ /**
320
+ * Describes the message reallyme.crypto.v1.CryptoOperationRequest.
321
+ * Use `create(CryptoOperationRequestSchema)` to create a new message.
322
+ */
323
+ export declare const CryptoOperationRequestSchema: GenMessage<CryptoOperationRequest>;
324
+ /**
325
+ * CryptoOperationResponse is the primary generated response contract for
326
+ * `CryptoOperationRequest`. Structured operation boundaries return this
327
+ * generated result-or-error shape.
328
+ *
329
+ * @generated from message reallyme.crypto.v1.CryptoOperationResponse
330
+ */
331
+ export type CryptoOperationResponse = Message<"reallyme.crypto.v1.CryptoOperationResponse"> & {
332
+ /**
333
+ * @generated from oneof reallyme.crypto.v1.CryptoOperationResponse.outcome
334
+ */
335
+ outcome: {
336
+ /**
337
+ * @generated from field: reallyme.crypto.v1.CryptoOperationResult result = 1;
338
+ */
339
+ value: CryptoOperationResult;
340
+ case: "result";
341
+ } | {
342
+ /**
343
+ * @generated from field: reallyme.crypto.v1.CryptoError error = 2;
344
+ */
345
+ value: CryptoError;
346
+ case: "error";
347
+ } | {
348
+ case: undefined;
349
+ value?: undefined;
350
+ };
351
+ };
352
+ /**
353
+ * Describes the message reallyme.crypto.v1.CryptoOperationResponse.
354
+ * Use `create(CryptoOperationResponseSchema)` to create a new message.
355
+ */
356
+ export declare const CryptoOperationResponseSchema: GenMessage<CryptoOperationResponse>;
357
+ /**
358
+ * CryptoOperationResult makes each successful operation result explicit instead
359
+ * of returning opaque result bytes. Verification operations share
360
+ * `CryptoVerificationResult` so invalid signatures/MACs stay distinct from
361
+ * malformed inputs, provider failures, and backend failures.
362
+ *
363
+ * Provider-owned platform-key results remain standalone messages returned
364
+ * by their native Swift or Android SDK operations, not by this Rust
365
+ * transport result.
366
+ *
367
+ * @generated from message reallyme.crypto.v1.CryptoOperationResult
368
+ */
369
+ export type CryptoOperationResult = Message<"reallyme.crypto.v1.CryptoOperationResult"> & {
370
+ /**
371
+ * @generated from oneof reallyme.crypto.v1.CryptoOperationResult.result
372
+ */
373
+ result: {
374
+ /**
375
+ * @generated from field: reallyme.crypto.v1.CryptoHashResult hash = 1;
376
+ */
377
+ value: CryptoHashResult;
378
+ case: "hash";
379
+ } | {
380
+ /**
381
+ * @generated from field: reallyme.crypto.v1.CryptoAeadSealResult aead_seal = 2;
382
+ */
383
+ value: CryptoAeadSealResult;
384
+ case: "aeadSeal";
385
+ } | {
386
+ /**
387
+ * @generated from field: reallyme.crypto.v1.CryptoAeadOpenResult aead_open = 3;
388
+ */
389
+ value: CryptoAeadOpenResult;
390
+ case: "aeadOpen";
391
+ } | {
392
+ /**
393
+ * @generated from field: reallyme.crypto.v1.CryptoMacAuthenticateResult mac_authenticate = 4;
394
+ */
395
+ value: CryptoMacAuthenticateResult;
396
+ case: "macAuthenticate";
397
+ } | {
398
+ /**
399
+ * @generated from field: reallyme.crypto.v1.CryptoVerificationResult mac_verify = 5;
400
+ */
401
+ value: CryptoVerificationResult;
402
+ case: "macVerify";
403
+ } | {
404
+ /**
405
+ * @generated from field: reallyme.crypto.v1.CryptoKeyPair signature_generate_key_pair = 10;
406
+ */
407
+ value: CryptoKeyPair;
408
+ case: "signatureGenerateKeyPair";
409
+ } | {
410
+ /**
411
+ * @generated from field: reallyme.crypto.v1.CryptoKeyPair signature_derive_key_pair = 11;
412
+ */
413
+ value: CryptoKeyPair;
414
+ case: "signatureDeriveKeyPair";
415
+ } | {
416
+ /**
417
+ * @generated from field: reallyme.crypto.v1.CryptoSignatureSignResult signature_sign = 12;
418
+ */
419
+ value: CryptoSignatureSignResult;
420
+ case: "signatureSign";
421
+ } | {
422
+ /**
423
+ * @generated from field: reallyme.crypto.v1.CryptoVerificationResult signature_verify = 13;
424
+ */
425
+ value: CryptoVerificationResult;
426
+ case: "signatureVerify";
427
+ } | {
428
+ /**
429
+ * @generated from field: reallyme.crypto.v1.CryptoSignatureSignResult bip340_schnorr_sign = 14;
430
+ */
431
+ value: CryptoSignatureSignResult;
432
+ case: "bip340SchnorrSign";
433
+ } | {
434
+ /**
435
+ * @generated from field: reallyme.crypto.v1.CryptoVerificationResult rsa_verify = 15;
436
+ */
437
+ value: CryptoVerificationResult;
438
+ case: "rsaVerify";
439
+ } | {
440
+ /**
441
+ * @generated from field: reallyme.crypto.v1.CryptoKeyAgreementDeriveSharedSecretResult key_agreement_derive_shared_secret = 20;
442
+ */
443
+ value: CryptoKeyAgreementDeriveSharedSecretResult;
444
+ case: "keyAgreementDeriveSharedSecret";
445
+ } | {
446
+ /**
447
+ * @generated from field: reallyme.crypto.v1.CryptoKeyPair key_agreement_derive_key_pair = 21;
448
+ */
449
+ value: CryptoKeyPair;
450
+ case: "keyAgreementDeriveKeyPair";
451
+ } | {
452
+ /**
453
+ * @generated from field: reallyme.crypto.v1.CryptoKeyPair kem_generate_key_pair = 30;
454
+ */
455
+ value: CryptoKeyPair;
456
+ case: "kemGenerateKeyPair";
457
+ } | {
458
+ /**
459
+ * @generated from field: reallyme.crypto.v1.CryptoKemEncapsulation kem_encapsulate = 31;
460
+ */
461
+ value: CryptoKemEncapsulation;
462
+ case: "kemEncapsulate";
463
+ } | {
464
+ /**
465
+ * @generated from field: reallyme.crypto.v1.CryptoKemDecapsulateResult kem_decapsulate = 32;
466
+ */
467
+ value: CryptoKemDecapsulateResult;
468
+ case: "kemDecapsulate";
469
+ } | {
470
+ /**
471
+ * @generated from field: reallyme.crypto.v1.CryptoKeyPair kem_derive_key_pair = 33;
472
+ */
473
+ value: CryptoKeyPair;
474
+ case: "kemDeriveKeyPair";
475
+ } | {
476
+ /**
477
+ * @generated from field: reallyme.crypto.v1.CryptoHkdfDeriveResult hkdf_derive = 40;
478
+ */
479
+ value: CryptoHkdfDeriveResult;
480
+ case: "hkdfDerive";
481
+ } | {
482
+ /**
483
+ * @generated from field: reallyme.crypto.v1.CryptoKdfDeriveKeyResult kdf_derive_key = 41;
484
+ */
485
+ value: CryptoKdfDeriveKeyResult;
486
+ case: "kdfDeriveKey";
487
+ } | {
488
+ /**
489
+ * @generated from field: reallyme.crypto.v1.CryptoJwaConcatKdfSha256DeriveResult jwa_concat_kdf_sha256_derive = 42;
490
+ */
491
+ value: CryptoJwaConcatKdfSha256DeriveResult;
492
+ case: "jwaConcatKdfSha256Derive";
493
+ } | {
494
+ /**
495
+ * @generated from field: reallyme.crypto.v1.CryptoKmac256DeriveResult kmac256_derive = 43;
496
+ */
497
+ value: CryptoKmac256DeriveResult;
498
+ case: "kmac256Derive";
499
+ } | {
500
+ /**
501
+ * @generated from field: reallyme.crypto.v1.CryptoKdfDeriveKeyResult argon2id_derive = 44;
502
+ */
503
+ value: CryptoKdfDeriveKeyResult;
504
+ case: "argon2idDerive";
505
+ } | {
506
+ /**
507
+ * @generated from field: reallyme.crypto.v1.CryptoKeyWrapResult key_wrap = 50;
508
+ */
509
+ value: CryptoKeyWrapResult;
510
+ case: "keyWrap";
511
+ } | {
512
+ /**
513
+ * @generated from field: reallyme.crypto.v1.CryptoKeyUnwrapResult key_unwrap = 51;
514
+ */
515
+ value: CryptoKeyUnwrapResult;
516
+ case: "keyUnwrap";
517
+ } | {
518
+ /**
519
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeSealedMessage hpke_seal = 60;
520
+ */
521
+ value: CryptoHpkeSealedMessage;
522
+ case: "hpkeSeal";
523
+ } | {
524
+ /**
525
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeOpenResult hpke_open = 61;
526
+ */
527
+ value: CryptoHpkeOpenResult;
528
+ case: "hpkeOpen";
529
+ } | {
530
+ /**
531
+ * @generated from field: reallyme.crypto.v1.CryptoKeyPair hpke_generate_key_pair = 62;
532
+ */
533
+ value: CryptoKeyPair;
534
+ case: "hpkeGenerateKeyPair";
535
+ } | {
536
+ /**
537
+ * @generated from field: reallyme.crypto.v1.CryptoKeyPair hpke_derive_key_pair = 63;
538
+ */
539
+ value: CryptoKeyPair;
540
+ case: "hpkeDeriveKeyPair";
541
+ } | {
542
+ /**
543
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeSenderExportResult hpke_sender_export = 64;
544
+ */
545
+ value: CryptoHpkeSenderExportResult;
546
+ case: "hpkeSenderExport";
547
+ } | {
548
+ /**
549
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeReceiverExportResult hpke_receiver_export = 65;
550
+ */
551
+ value: CryptoHpkeReceiverExportResult;
552
+ case: "hpkeReceiverExport";
553
+ } | {
554
+ /**
555
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeSealedMessage hpke_psk_seal = 66;
556
+ */
557
+ value: CryptoHpkeSealedMessage;
558
+ case: "hpkePskSeal";
559
+ } | {
560
+ /**
561
+ * @generated from field: reallyme.crypto.v1.CryptoHpkeOpenResult hpke_psk_open = 67;
562
+ */
563
+ value: CryptoHpkeOpenResult;
564
+ case: "hpkePskOpen";
565
+ } | {
566
+ case: undefined;
567
+ value?: undefined;
568
+ };
569
+ };
570
+ /**
571
+ * Describes the message reallyme.crypto.v1.CryptoOperationResult.
572
+ * Use `create(CryptoOperationResultSchema)` to create a new message.
573
+ */
574
+ export declare const CryptoOperationResultSchema: GenMessage<CryptoOperationResult>;
575
+ /**
576
+ * HpkeSuiteIdentifier is the canonical 0.3.0 HPKE algorithm identifier.
577
+ * Components use their assigned two-byte HPKE registry values; implementations
578
+ * must reject unsupported combinations instead of selecting a fallback suite.
579
+ *
580
+ * @generated from message reallyme.crypto.v1.HpkeSuiteIdentifier
581
+ */
582
+ export type HpkeSuiteIdentifier = Message<"reallyme.crypto.v1.HpkeSuiteIdentifier"> & {
583
+ /**
584
+ * @generated from field: reallyme.crypto.v1.HpkeKemId kem = 1;
585
+ */
586
+ kem: HpkeKemId;
587
+ /**
588
+ * @generated from field: reallyme.crypto.v1.HpkeKdfId kdf = 2;
589
+ */
590
+ kdf: HpkeKdfId;
591
+ /**
592
+ * @generated from field: reallyme.crypto.v1.HpkeAeadId aead = 3;
593
+ */
594
+ aead: HpkeAeadId;
595
+ };
596
+ /**
597
+ * Describes the message reallyme.crypto.v1.HpkeSuiteIdentifier.
598
+ * Use `create(HpkeSuiteIdentifierSchema)` to create a new message.
599
+ */
600
+ export declare const HpkeSuiteIdentifierSchema: GenMessage<HpkeSuiteIdentifier>;
105
601
  /**
106
602
  * CryptoAlgorithmIdentifier is a oneof wrapper for protocol messages that need
107
603
  * to carry a typed algorithm choice without using free-form strings.
@@ -130,12 +626,6 @@ export type CryptoAlgorithmIdentifier = Message<"reallyme.crypto.v1.CryptoAlgori
130
626
  */
131
627
  value: KemAlgorithm;
132
628
  case: "kem";
133
- } | {
134
- /**
135
- * @generated from field: reallyme.crypto.v1.HpkeSuite hpke = 4;
136
- */
137
- value: HpkeSuite;
138
- case: "hpke";
139
629
  } | {
140
630
  /**
141
631
  * @generated from field: reallyme.crypto.v1.AeadAlgorithm aead = 5;
@@ -172,16 +662,1788 @@ export type CryptoAlgorithmIdentifier = Message<"reallyme.crypto.v1.CryptoAlgori
172
662
  */
173
663
  value: MulticodecKeyAlgorithm;
174
664
  case: "multicodecKey";
665
+ } | {
666
+ /**
667
+ * @generated from field: reallyme.crypto.v1.HpkeSuiteIdentifier hpke_suite = 11;
668
+ */
669
+ value: HpkeSuiteIdentifier;
670
+ case: "hpkeSuite";
175
671
  } | {
176
672
  case: undefined;
177
673
  value?: undefined;
178
674
  };
179
675
  };
180
676
  /**
181
- * Describes the message reallyme.crypto.v1.CryptoAlgorithmIdentifier.
182
- * Use `create(CryptoAlgorithmIdentifierSchema)` to create a new message.
677
+ * Describes the message reallyme.crypto.v1.CryptoAlgorithmIdentifier.
678
+ * Use `create(CryptoAlgorithmIdentifierSchema)` to create a new message.
679
+ */
680
+ export declare const CryptoAlgorithmIdentifierSchema: GenMessage<CryptoAlgorithmIdentifier>;
681
+ /**
682
+ * @generated from message reallyme.crypto.v1.CryptoHashRequest
683
+ */
684
+ export type CryptoHashRequest = Message<"reallyme.crypto.v1.CryptoHashRequest"> & {
685
+ /**
686
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
687
+ */
688
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
689
+ /**
690
+ * @generated from field: bytes input = 2;
691
+ */
692
+ input: Uint8Array;
693
+ };
694
+ /**
695
+ * Describes the message reallyme.crypto.v1.CryptoHashRequest.
696
+ * Use `create(CryptoHashRequestSchema)` to create a new message.
697
+ */
698
+ export declare const CryptoHashRequestSchema: GenMessage<CryptoHashRequest>;
699
+ /**
700
+ * @generated from message reallyme.crypto.v1.CryptoHashResult
701
+ */
702
+ export type CryptoHashResult = Message<"reallyme.crypto.v1.CryptoHashResult"> & {
703
+ /**
704
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
705
+ */
706
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
707
+ /**
708
+ * @generated from field: bytes digest = 2;
709
+ */
710
+ digest: Uint8Array;
711
+ };
712
+ /**
713
+ * Describes the message reallyme.crypto.v1.CryptoHashResult.
714
+ * Use `create(CryptoHashResultSchema)` to create a new message.
715
+ */
716
+ export declare const CryptoHashResultSchema: GenMessage<CryptoHashResult>;
717
+ /**
718
+ * @generated from message reallyme.crypto.v1.CryptoAeadSealRequest
719
+ */
720
+ export type CryptoAeadSealRequest = Message<"reallyme.crypto.v1.CryptoAeadSealRequest"> & {
721
+ /**
722
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
723
+ */
724
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
725
+ /**
726
+ * Secret-bearing AEAD key; callers must zeroize copies where platform
727
+ * semantics permit.
728
+ *
729
+ * @generated from field: bytes key = 2;
730
+ */
731
+ key: Uint8Array;
732
+ /**
733
+ * @generated from field: bytes nonce = 3;
734
+ */
735
+ nonce: Uint8Array;
736
+ /**
737
+ * @generated from field: bytes aad = 4;
738
+ */
739
+ aad: Uint8Array;
740
+ /**
741
+ * Plaintext may contain secret or PII-bearing application data.
742
+ *
743
+ * @generated from field: bytes plaintext = 5;
744
+ */
745
+ plaintext: Uint8Array;
746
+ };
747
+ /**
748
+ * Describes the message reallyme.crypto.v1.CryptoAeadSealRequest.
749
+ * Use `create(CryptoAeadSealRequestSchema)` to create a new message.
750
+ */
751
+ export declare const CryptoAeadSealRequestSchema: GenMessage<CryptoAeadSealRequest>;
752
+ /**
753
+ * @generated from message reallyme.crypto.v1.CryptoAeadSealResult
754
+ */
755
+ export type CryptoAeadSealResult = Message<"reallyme.crypto.v1.CryptoAeadSealResult"> & {
756
+ /**
757
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
758
+ */
759
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
760
+ /**
761
+ * @generated from field: bytes ciphertext_with_tag = 2;
762
+ */
763
+ ciphertextWithTag: Uint8Array;
764
+ };
765
+ /**
766
+ * Describes the message reallyme.crypto.v1.CryptoAeadSealResult.
767
+ * Use `create(CryptoAeadSealResultSchema)` to create a new message.
768
+ */
769
+ export declare const CryptoAeadSealResultSchema: GenMessage<CryptoAeadSealResult>;
770
+ /**
771
+ * @generated from message reallyme.crypto.v1.CryptoAeadOpenRequest
772
+ */
773
+ export type CryptoAeadOpenRequest = Message<"reallyme.crypto.v1.CryptoAeadOpenRequest"> & {
774
+ /**
775
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
776
+ */
777
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
778
+ /**
779
+ * Secret-bearing AEAD key; callers must zeroize copies where platform
780
+ * semantics permit.
781
+ *
782
+ * @generated from field: bytes key = 2;
783
+ */
784
+ key: Uint8Array;
785
+ /**
786
+ * @generated from field: bytes nonce = 3;
787
+ */
788
+ nonce: Uint8Array;
789
+ /**
790
+ * @generated from field: bytes aad = 4;
791
+ */
792
+ aad: Uint8Array;
793
+ /**
794
+ * @generated from field: bytes ciphertext_with_tag = 5;
795
+ */
796
+ ciphertextWithTag: Uint8Array;
797
+ };
798
+ /**
799
+ * Describes the message reallyme.crypto.v1.CryptoAeadOpenRequest.
800
+ * Use `create(CryptoAeadOpenRequestSchema)` to create a new message.
801
+ */
802
+ export declare const CryptoAeadOpenRequestSchema: GenMessage<CryptoAeadOpenRequest>;
803
+ /**
804
+ * @generated from message reallyme.crypto.v1.CryptoAeadOpenResult
805
+ */
806
+ export type CryptoAeadOpenResult = Message<"reallyme.crypto.v1.CryptoAeadOpenResult"> & {
807
+ /**
808
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
809
+ */
810
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
811
+ /**
812
+ * Decrypted plaintext may contain secret or PII-bearing application data.
813
+ *
814
+ * @generated from field: bytes plaintext = 2;
815
+ */
816
+ plaintext: Uint8Array;
817
+ };
818
+ /**
819
+ * Describes the message reallyme.crypto.v1.CryptoAeadOpenResult.
820
+ * Use `create(CryptoAeadOpenResultSchema)` to create a new message.
821
+ */
822
+ export declare const CryptoAeadOpenResultSchema: GenMessage<CryptoAeadOpenResult>;
823
+ /**
824
+ * @generated from message reallyme.crypto.v1.CryptoMacAuthenticateRequest
825
+ */
826
+ export type CryptoMacAuthenticateRequest = Message<"reallyme.crypto.v1.CryptoMacAuthenticateRequest"> & {
827
+ /**
828
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
829
+ */
830
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
831
+ /**
832
+ * Secret-bearing MAC key.
833
+ *
834
+ * @generated from field: bytes key = 2;
835
+ */
836
+ key: Uint8Array;
837
+ /**
838
+ * @generated from field: bytes message = 3;
839
+ */
840
+ message: Uint8Array;
841
+ };
842
+ /**
843
+ * Describes the message reallyme.crypto.v1.CryptoMacAuthenticateRequest.
844
+ * Use `create(CryptoMacAuthenticateRequestSchema)` to create a new message.
845
+ */
846
+ export declare const CryptoMacAuthenticateRequestSchema: GenMessage<CryptoMacAuthenticateRequest>;
847
+ /**
848
+ * @generated from message reallyme.crypto.v1.CryptoMacAuthenticateResult
849
+ */
850
+ export type CryptoMacAuthenticateResult = Message<"reallyme.crypto.v1.CryptoMacAuthenticateResult"> & {
851
+ /**
852
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
853
+ */
854
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
855
+ /**
856
+ * @generated from field: bytes tag = 2;
857
+ */
858
+ tag: Uint8Array;
859
+ };
860
+ /**
861
+ * Describes the message reallyme.crypto.v1.CryptoMacAuthenticateResult.
862
+ * Use `create(CryptoMacAuthenticateResultSchema)` to create a new message.
863
+ */
864
+ export declare const CryptoMacAuthenticateResultSchema: GenMessage<CryptoMacAuthenticateResult>;
865
+ /**
866
+ * @generated from message reallyme.crypto.v1.CryptoMacVerifyRequest
867
+ */
868
+ export type CryptoMacVerifyRequest = Message<"reallyme.crypto.v1.CryptoMacVerifyRequest"> & {
869
+ /**
870
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
871
+ */
872
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
873
+ /**
874
+ * @generated from field: bytes tag = 2;
875
+ */
876
+ tag: Uint8Array;
877
+ /**
878
+ * Secret-bearing MAC key.
879
+ *
880
+ * @generated from field: bytes key = 3;
881
+ */
882
+ key: Uint8Array;
883
+ /**
884
+ * @generated from field: bytes message = 4;
885
+ */
886
+ message: Uint8Array;
887
+ };
888
+ /**
889
+ * Describes the message reallyme.crypto.v1.CryptoMacVerifyRequest.
890
+ * Use `create(CryptoMacVerifyRequestSchema)` to create a new message.
891
+ */
892
+ export declare const CryptoMacVerifyRequestSchema: GenMessage<CryptoMacVerifyRequest>;
893
+ /**
894
+ * @generated from message reallyme.crypto.v1.CryptoKdfDeriveKeyRequest
895
+ */
896
+ export type CryptoKdfDeriveKeyRequest = Message<"reallyme.crypto.v1.CryptoKdfDeriveKeyRequest"> & {
897
+ /**
898
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
899
+ */
900
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
901
+ /**
902
+ * Secret-bearing password or input secret for the selected KDF.
903
+ *
904
+ * @generated from field: bytes password = 2;
905
+ */
906
+ password: Uint8Array;
907
+ /**
908
+ * Salt is commonly public but may be privacy-impacting in application
909
+ * contexts; treat it according to the protocol using this message.
910
+ *
911
+ * @generated from field: bytes salt = 3;
912
+ */
913
+ salt: Uint8Array;
914
+ /**
915
+ * @generated from field: uint32 iterations = 4;
916
+ */
917
+ iterations: number;
918
+ /**
919
+ * @generated from field: uint32 output_length = 5;
920
+ */
921
+ outputLength: number;
922
+ };
923
+ /**
924
+ * Describes the message reallyme.crypto.v1.CryptoKdfDeriveKeyRequest.
925
+ * Use `create(CryptoKdfDeriveKeyRequestSchema)` to create a new message.
926
+ */
927
+ export declare const CryptoKdfDeriveKeyRequestSchema: GenMessage<CryptoKdfDeriveKeyRequest>;
928
+ /**
929
+ * @generated from message reallyme.crypto.v1.CryptoKdfDeriveKeyResult
930
+ */
931
+ export type CryptoKdfDeriveKeyResult = Message<"reallyme.crypto.v1.CryptoKdfDeriveKeyResult"> & {
932
+ /**
933
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
934
+ */
935
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
936
+ /**
937
+ * Secret-bearing derived key material.
938
+ *
939
+ * @generated from field: bytes derived_key = 2;
940
+ */
941
+ derivedKey: Uint8Array;
942
+ };
943
+ /**
944
+ * Describes the message reallyme.crypto.v1.CryptoKdfDeriveKeyResult.
945
+ * Use `create(CryptoKdfDeriveKeyResultSchema)` to create a new message.
946
+ */
947
+ export declare const CryptoKdfDeriveKeyResultSchema: GenMessage<CryptoKdfDeriveKeyResult>;
948
+ /**
949
+ * @generated from message reallyme.crypto.v1.CryptoArgon2idDeriveRequest
950
+ */
951
+ export type CryptoArgon2idDeriveRequest = Message<"reallyme.crypto.v1.CryptoArgon2idDeriveRequest"> & {
952
+ /**
953
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
954
+ */
955
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
956
+ /**
957
+ * @generated from field: reallyme.crypto.v1.Argon2idKdfVersion kdf_version = 2;
958
+ */
959
+ kdfVersion: Argon2idKdfVersion;
960
+ /**
961
+ * Secret-bearing password or input secret.
962
+ *
963
+ * @generated from field: bytes secret = 3;
964
+ */
965
+ secret: Uint8Array;
966
+ /**
967
+ * Salt is commonly public but may be privacy-impacting in application
968
+ * contexts; treat it according to the protocol using this message.
969
+ *
970
+ * @generated from field: bytes salt = 4;
971
+ */
972
+ salt: Uint8Array;
973
+ };
974
+ /**
975
+ * Describes the message reallyme.crypto.v1.CryptoArgon2idDeriveRequest.
976
+ * Use `create(CryptoArgon2idDeriveRequestSchema)` to create a new message.
977
+ */
978
+ export declare const CryptoArgon2idDeriveRequestSchema: GenMessage<CryptoArgon2idDeriveRequest>;
979
+ /**
980
+ * @generated from message reallyme.crypto.v1.CryptoHkdfDeriveRequest
981
+ */
982
+ export type CryptoHkdfDeriveRequest = Message<"reallyme.crypto.v1.CryptoHkdfDeriveRequest"> & {
983
+ /**
984
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
985
+ */
986
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
987
+ /**
988
+ * Secret-bearing input key material.
989
+ *
990
+ * @generated from field: bytes input_key_material = 2;
991
+ */
992
+ inputKeyMaterial: Uint8Array;
993
+ /**
994
+ * Salt is commonly public but can be privacy-impacting in some protocols.
995
+ *
996
+ * @generated from field: bytes salt = 3;
997
+ */
998
+ salt: Uint8Array;
999
+ /**
1000
+ * @generated from field: bytes info = 4;
1001
+ */
1002
+ info: Uint8Array;
1003
+ /**
1004
+ * @generated from field: uint32 output_length = 5;
1005
+ */
1006
+ outputLength: number;
1007
+ };
1008
+ /**
1009
+ * Describes the message reallyme.crypto.v1.CryptoHkdfDeriveRequest.
1010
+ * Use `create(CryptoHkdfDeriveRequestSchema)` to create a new message.
1011
+ */
1012
+ export declare const CryptoHkdfDeriveRequestSchema: GenMessage<CryptoHkdfDeriveRequest>;
1013
+ /**
1014
+ * @generated from message reallyme.crypto.v1.CryptoHkdfDeriveResult
1015
+ */
1016
+ export type CryptoHkdfDeriveResult = Message<"reallyme.crypto.v1.CryptoHkdfDeriveResult"> & {
1017
+ /**
1018
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1019
+ */
1020
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1021
+ /**
1022
+ * Secret-bearing HKDF output key material.
1023
+ *
1024
+ * @generated from field: bytes output_key_material = 2;
1025
+ */
1026
+ outputKeyMaterial: Uint8Array;
1027
+ };
1028
+ /**
1029
+ * Describes the message reallyme.crypto.v1.CryptoHkdfDeriveResult.
1030
+ * Use `create(CryptoHkdfDeriveResultSchema)` to create a new message.
1031
+ */
1032
+ export declare const CryptoHkdfDeriveResultSchema: GenMessage<CryptoHkdfDeriveResult>;
1033
+ /**
1034
+ * @generated from message reallyme.crypto.v1.CryptoJwaConcatKdfSha256DeriveRequest
1035
+ */
1036
+ export type CryptoJwaConcatKdfSha256DeriveRequest = Message<"reallyme.crypto.v1.CryptoJwaConcatKdfSha256DeriveRequest"> & {
1037
+ /**
1038
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1039
+ */
1040
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1041
+ /**
1042
+ * Secret-bearing shared secret input.
1043
+ *
1044
+ * @generated from field: bytes shared_secret = 2;
1045
+ */
1046
+ sharedSecret: Uint8Array;
1047
+ /**
1048
+ * @generated from field: bytes algorithm_id = 3;
1049
+ */
1050
+ algorithmId: Uint8Array;
1051
+ /**
1052
+ * @generated from field: bytes party_u_info = 4;
1053
+ */
1054
+ partyUInfo: Uint8Array;
1055
+ /**
1056
+ * @generated from field: bytes party_v_info = 5;
1057
+ */
1058
+ partyVInfo: Uint8Array;
1059
+ /**
1060
+ * @generated from field: uint32 output_length = 6;
1061
+ */
1062
+ outputLength: number;
1063
+ };
1064
+ /**
1065
+ * Describes the message reallyme.crypto.v1.CryptoJwaConcatKdfSha256DeriveRequest.
1066
+ * Use `create(CryptoJwaConcatKdfSha256DeriveRequestSchema)` to create a new message.
1067
+ */
1068
+ export declare const CryptoJwaConcatKdfSha256DeriveRequestSchema: GenMessage<CryptoJwaConcatKdfSha256DeriveRequest>;
1069
+ /**
1070
+ * @generated from message reallyme.crypto.v1.CryptoJwaConcatKdfSha256DeriveResult
1071
+ */
1072
+ export type CryptoJwaConcatKdfSha256DeriveResult = Message<"reallyme.crypto.v1.CryptoJwaConcatKdfSha256DeriveResult"> & {
1073
+ /**
1074
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1075
+ */
1076
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1077
+ /**
1078
+ * Secret-bearing derived key material.
1079
+ *
1080
+ * @generated from field: bytes derived_key = 2;
1081
+ */
1082
+ derivedKey: Uint8Array;
1083
+ };
1084
+ /**
1085
+ * Describes the message reallyme.crypto.v1.CryptoJwaConcatKdfSha256DeriveResult.
1086
+ * Use `create(CryptoJwaConcatKdfSha256DeriveResultSchema)` to create a new message.
1087
+ */
1088
+ export declare const CryptoJwaConcatKdfSha256DeriveResultSchema: GenMessage<CryptoJwaConcatKdfSha256DeriveResult>;
1089
+ /**
1090
+ * CryptoKmac256DeriveRequest exposes NIST SP 800-185 KMAC256 for protocol
1091
+ * constructions that define the exact context and customization strings.
1092
+ *
1093
+ * @generated from message reallyme.crypto.v1.CryptoKmac256DeriveRequest
1094
+ */
1095
+ export type CryptoKmac256DeriveRequest = Message<"reallyme.crypto.v1.CryptoKmac256DeriveRequest"> & {
1096
+ /**
1097
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1098
+ */
1099
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1100
+ /**
1101
+ * Secret-bearing KMAC key. KMAC256 requires at least 32 octets.
1102
+ *
1103
+ * @generated from field: bytes key = 2;
1104
+ */
1105
+ key: Uint8Array;
1106
+ /**
1107
+ * Potentially privacy-bearing protocol context; clear decoded owned copies.
1108
+ *
1109
+ * @generated from field: bytes context = 3;
1110
+ */
1111
+ context: Uint8Array;
1112
+ /**
1113
+ * Potentially privacy-bearing domain separation; clear decoded owned copies.
1114
+ *
1115
+ * @generated from field: bytes customization = 4;
1116
+ */
1117
+ customization: Uint8Array;
1118
+ /**
1119
+ * @generated from field: uint32 output_length = 5;
1120
+ */
1121
+ outputLength: number;
1122
+ };
1123
+ /**
1124
+ * Describes the message reallyme.crypto.v1.CryptoKmac256DeriveRequest.
1125
+ * Use `create(CryptoKmac256DeriveRequestSchema)` to create a new message.
1126
+ */
1127
+ export declare const CryptoKmac256DeriveRequestSchema: GenMessage<CryptoKmac256DeriveRequest>;
1128
+ /**
1129
+ * @generated from message reallyme.crypto.v1.CryptoKmac256DeriveResult
1130
+ */
1131
+ export type CryptoKmac256DeriveResult = Message<"reallyme.crypto.v1.CryptoKmac256DeriveResult"> & {
1132
+ /**
1133
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1134
+ */
1135
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1136
+ /**
1137
+ * Secret-bearing derived key material.
1138
+ *
1139
+ * @generated from field: bytes derived_key = 2;
1140
+ */
1141
+ derivedKey: Uint8Array;
1142
+ };
1143
+ /**
1144
+ * Describes the message reallyme.crypto.v1.CryptoKmac256DeriveResult.
1145
+ * Use `create(CryptoKmac256DeriveResultSchema)` to create a new message.
1146
+ */
1147
+ export declare const CryptoKmac256DeriveResultSchema: GenMessage<CryptoKmac256DeriveResult>;
1148
+ /**
1149
+ * @generated from message reallyme.crypto.v1.CryptoKeyWrapRequest
1150
+ */
1151
+ export type CryptoKeyWrapRequest = Message<"reallyme.crypto.v1.CryptoKeyWrapRequest"> & {
1152
+ /**
1153
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1154
+ */
1155
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1156
+ /**
1157
+ * Secret-bearing key-encryption key.
1158
+ *
1159
+ * @generated from field: bytes wrapping_key = 2;
1160
+ */
1161
+ wrappingKey: Uint8Array;
1162
+ /**
1163
+ * Secret-bearing key material to wrap.
1164
+ *
1165
+ * @generated from field: bytes key_to_wrap = 3;
1166
+ */
1167
+ keyToWrap: Uint8Array;
1168
+ };
1169
+ /**
1170
+ * Describes the message reallyme.crypto.v1.CryptoKeyWrapRequest.
1171
+ * Use `create(CryptoKeyWrapRequestSchema)` to create a new message.
1172
+ */
1173
+ export declare const CryptoKeyWrapRequestSchema: GenMessage<CryptoKeyWrapRequest>;
1174
+ /**
1175
+ * @generated from message reallyme.crypto.v1.CryptoKeyWrapResult
1176
+ */
1177
+ export type CryptoKeyWrapResult = Message<"reallyme.crypto.v1.CryptoKeyWrapResult"> & {
1178
+ /**
1179
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1180
+ */
1181
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1182
+ /**
1183
+ * @generated from field: bytes wrapped_key = 2;
1184
+ */
1185
+ wrappedKey: Uint8Array;
1186
+ };
1187
+ /**
1188
+ * Describes the message reallyme.crypto.v1.CryptoKeyWrapResult.
1189
+ * Use `create(CryptoKeyWrapResultSchema)` to create a new message.
1190
+ */
1191
+ export declare const CryptoKeyWrapResultSchema: GenMessage<CryptoKeyWrapResult>;
1192
+ /**
1193
+ * @generated from message reallyme.crypto.v1.CryptoKeyUnwrapRequest
1194
+ */
1195
+ export type CryptoKeyUnwrapRequest = Message<"reallyme.crypto.v1.CryptoKeyUnwrapRequest"> & {
1196
+ /**
1197
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1198
+ */
1199
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1200
+ /**
1201
+ * Secret-bearing key-encryption key.
1202
+ *
1203
+ * @generated from field: bytes wrapping_key = 2;
1204
+ */
1205
+ wrappingKey: Uint8Array;
1206
+ /**
1207
+ * @generated from field: bytes wrapped_key = 3;
1208
+ */
1209
+ wrappedKey: Uint8Array;
1210
+ };
1211
+ /**
1212
+ * Describes the message reallyme.crypto.v1.CryptoKeyUnwrapRequest.
1213
+ * Use `create(CryptoKeyUnwrapRequestSchema)` to create a new message.
1214
+ */
1215
+ export declare const CryptoKeyUnwrapRequestSchema: GenMessage<CryptoKeyUnwrapRequest>;
1216
+ /**
1217
+ * @generated from message reallyme.crypto.v1.CryptoKeyUnwrapResult
1218
+ */
1219
+ export type CryptoKeyUnwrapResult = Message<"reallyme.crypto.v1.CryptoKeyUnwrapResult"> & {
1220
+ /**
1221
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1222
+ */
1223
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1224
+ /**
1225
+ * Secret-bearing unwrapped key material.
1226
+ *
1227
+ * @generated from field: bytes key = 2;
1228
+ */
1229
+ key: Uint8Array;
1230
+ };
1231
+ /**
1232
+ * Describes the message reallyme.crypto.v1.CryptoKeyUnwrapResult.
1233
+ * Use `create(CryptoKeyUnwrapResultSchema)` to create a new message.
1234
+ */
1235
+ export declare const CryptoKeyUnwrapResultSchema: GenMessage<CryptoKeyUnwrapResult>;
1236
+ /**
1237
+ * @generated from message reallyme.crypto.v1.CryptoSignatureGenerateKeyPairRequest
1238
+ */
1239
+ export type CryptoSignatureGenerateKeyPairRequest = Message<"reallyme.crypto.v1.CryptoSignatureGenerateKeyPairRequest"> & {
1240
+ /**
1241
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1242
+ */
1243
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1244
+ };
1245
+ /**
1246
+ * Describes the message reallyme.crypto.v1.CryptoSignatureGenerateKeyPairRequest.
1247
+ * Use `create(CryptoSignatureGenerateKeyPairRequestSchema)` to create a new message.
1248
+ */
1249
+ export declare const CryptoSignatureGenerateKeyPairRequestSchema: GenMessage<CryptoSignatureGenerateKeyPairRequest>;
1250
+ /**
1251
+ * @generated from message reallyme.crypto.v1.CryptoSignatureDeriveKeyPairRequest
1252
+ */
1253
+ export type CryptoSignatureDeriveKeyPairRequest = Message<"reallyme.crypto.v1.CryptoSignatureDeriveKeyPairRequest"> & {
1254
+ /**
1255
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1256
+ */
1257
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1258
+ /**
1259
+ * Secret-bearing seed or private key input, depending on the algorithm.
1260
+ *
1261
+ * @generated from field: bytes secret_key = 2;
1262
+ */
1263
+ secretKey: Uint8Array;
1264
+ };
1265
+ /**
1266
+ * Describes the message reallyme.crypto.v1.CryptoSignatureDeriveKeyPairRequest.
1267
+ * Use `create(CryptoSignatureDeriveKeyPairRequestSchema)` to create a new message.
1268
+ */
1269
+ export declare const CryptoSignatureDeriveKeyPairRequestSchema: GenMessage<CryptoSignatureDeriveKeyPairRequest>;
1270
+ /**
1271
+ * @generated from message reallyme.crypto.v1.CryptoSignatureSignRequest
1272
+ */
1273
+ export type CryptoSignatureSignRequest = Message<"reallyme.crypto.v1.CryptoSignatureSignRequest"> & {
1274
+ /**
1275
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1276
+ */
1277
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1278
+ /**
1279
+ * @generated from field: bytes message = 2;
1280
+ */
1281
+ message: Uint8Array;
1282
+ /**
1283
+ * Secret-bearing signing key material.
1284
+ *
1285
+ * @generated from field: bytes secret_key = 3;
1286
+ */
1287
+ secretKey: Uint8Array;
1288
+ };
1289
+ /**
1290
+ * Describes the message reallyme.crypto.v1.CryptoSignatureSignRequest.
1291
+ * Use `create(CryptoSignatureSignRequestSchema)` to create a new message.
1292
+ */
1293
+ export declare const CryptoSignatureSignRequestSchema: GenMessage<CryptoSignatureSignRequest>;
1294
+ /**
1295
+ * @generated from message reallyme.crypto.v1.CryptoSignatureSignResult
1296
+ */
1297
+ export type CryptoSignatureSignResult = Message<"reallyme.crypto.v1.CryptoSignatureSignResult"> & {
1298
+ /**
1299
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1300
+ */
1301
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1302
+ /**
1303
+ * @generated from field: bytes signature = 2;
1304
+ */
1305
+ signature: Uint8Array;
1306
+ };
1307
+ /**
1308
+ * Describes the message reallyme.crypto.v1.CryptoSignatureSignResult.
1309
+ * Use `create(CryptoSignatureSignResultSchema)` to create a new message.
1310
+ */
1311
+ export declare const CryptoSignatureSignResultSchema: GenMessage<CryptoSignatureSignResult>;
1312
+ /**
1313
+ * @generated from message reallyme.crypto.v1.CryptoBip340SchnorrSignRequest
1314
+ */
1315
+ export type CryptoBip340SchnorrSignRequest = Message<"reallyme.crypto.v1.CryptoBip340SchnorrSignRequest"> & {
1316
+ /**
1317
+ * @generated from field: bytes message32 = 1;
1318
+ */
1319
+ message32: Uint8Array;
1320
+ /**
1321
+ * Secret-bearing secp256k1 signing key material.
1322
+ *
1323
+ * @generated from field: bytes secret_key = 2;
1324
+ */
1325
+ secretKey: Uint8Array;
1326
+ /**
1327
+ * Secret-bearing auxiliary randomness used for deterministic nonce hardening.
1328
+ *
1329
+ * @generated from field: bytes aux_rand32 = 3;
1330
+ */
1331
+ auxRand32: Uint8Array;
1332
+ };
1333
+ /**
1334
+ * Describes the message reallyme.crypto.v1.CryptoBip340SchnorrSignRequest.
1335
+ * Use `create(CryptoBip340SchnorrSignRequestSchema)` to create a new message.
1336
+ */
1337
+ export declare const CryptoBip340SchnorrSignRequestSchema: GenMessage<CryptoBip340SchnorrSignRequest>;
1338
+ /**
1339
+ * @generated from message reallyme.crypto.v1.CryptoSignatureVerifyRequest
1340
+ */
1341
+ export type CryptoSignatureVerifyRequest = Message<"reallyme.crypto.v1.CryptoSignatureVerifyRequest"> & {
1342
+ /**
1343
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1344
+ */
1345
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1346
+ /**
1347
+ * @generated from field: bytes signature = 2;
1348
+ */
1349
+ signature: Uint8Array;
1350
+ /**
1351
+ * @generated from field: bytes message = 3;
1352
+ */
1353
+ message: Uint8Array;
1354
+ /**
1355
+ * @generated from field: bytes public_key = 4;
1356
+ */
1357
+ publicKey: Uint8Array;
1358
+ };
1359
+ /**
1360
+ * Describes the message reallyme.crypto.v1.CryptoSignatureVerifyRequest.
1361
+ * Use `create(CryptoSignatureVerifyRequestSchema)` to create a new message.
1362
+ */
1363
+ export declare const CryptoSignatureVerifyRequestSchema: GenMessage<CryptoSignatureVerifyRequest>;
1364
+ /**
1365
+ * @generated from message reallyme.crypto.v1.CryptoRsaVerifyRequest
1366
+ */
1367
+ export type CryptoRsaVerifyRequest = Message<"reallyme.crypto.v1.CryptoRsaVerifyRequest"> & {
1368
+ /**
1369
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1370
+ */
1371
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1372
+ /**
1373
+ * @generated from field: bytes signature = 2;
1374
+ */
1375
+ signature: Uint8Array;
1376
+ /**
1377
+ * @generated from field: bytes message = 3;
1378
+ */
1379
+ message: Uint8Array;
1380
+ /**
1381
+ * @generated from field: bytes public_key_der = 4;
1382
+ */
1383
+ publicKeyDer: Uint8Array;
1384
+ /**
1385
+ * @generated from field: reallyme.crypto.v1.RsaPublicKeyDerEncoding public_key_encoding = 5;
1386
+ */
1387
+ publicKeyEncoding: RsaPublicKeyDerEncoding;
1388
+ };
1389
+ /**
1390
+ * Describes the message reallyme.crypto.v1.CryptoRsaVerifyRequest.
1391
+ * Use `create(CryptoRsaVerifyRequestSchema)` to create a new message.
1392
+ */
1393
+ export declare const CryptoRsaVerifyRequestSchema: GenMessage<CryptoRsaVerifyRequest>;
1394
+ /**
1395
+ * @generated from message reallyme.crypto.v1.CryptoKeyAgreementDeriveSharedSecretRequest
1396
+ */
1397
+ export type CryptoKeyAgreementDeriveSharedSecretRequest = Message<"reallyme.crypto.v1.CryptoKeyAgreementDeriveSharedSecretRequest"> & {
1398
+ /**
1399
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1400
+ */
1401
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1402
+ /**
1403
+ * @generated from field: bytes public_key = 2;
1404
+ */
1405
+ publicKey: Uint8Array;
1406
+ /**
1407
+ * Secret-bearing private key material.
1408
+ *
1409
+ * @generated from field: bytes secret_key = 3;
1410
+ */
1411
+ secretKey: Uint8Array;
1412
+ };
1413
+ /**
1414
+ * Describes the message reallyme.crypto.v1.CryptoKeyAgreementDeriveSharedSecretRequest.
1415
+ * Use `create(CryptoKeyAgreementDeriveSharedSecretRequestSchema)` to create a new message.
1416
+ */
1417
+ export declare const CryptoKeyAgreementDeriveSharedSecretRequestSchema: GenMessage<CryptoKeyAgreementDeriveSharedSecretRequest>;
1418
+ /**
1419
+ * @generated from message reallyme.crypto.v1.CryptoKeyAgreementDeriveSharedSecretResult
1420
+ */
1421
+ export type CryptoKeyAgreementDeriveSharedSecretResult = Message<"reallyme.crypto.v1.CryptoKeyAgreementDeriveSharedSecretResult"> & {
1422
+ /**
1423
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1424
+ */
1425
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1426
+ /**
1427
+ * Secret-bearing shared secret; callers must feed it into a protocol KDF.
1428
+ *
1429
+ * @generated from field: bytes shared_secret = 2;
1430
+ */
1431
+ sharedSecret: Uint8Array;
1432
+ };
1433
+ /**
1434
+ * Describes the message reallyme.crypto.v1.CryptoKeyAgreementDeriveSharedSecretResult.
1435
+ * Use `create(CryptoKeyAgreementDeriveSharedSecretResultSchema)` to create a new message.
1436
+ */
1437
+ export declare const CryptoKeyAgreementDeriveSharedSecretResultSchema: GenMessage<CryptoKeyAgreementDeriveSharedSecretResult>;
1438
+ /**
1439
+ * @generated from message reallyme.crypto.v1.CryptoKeyAgreementDeriveKeyPairRequest
1440
+ */
1441
+ export type CryptoKeyAgreementDeriveKeyPairRequest = Message<"reallyme.crypto.v1.CryptoKeyAgreementDeriveKeyPairRequest"> & {
1442
+ /**
1443
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1444
+ */
1445
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1446
+ /**
1447
+ * Secret-bearing seed or private key input, depending on the algorithm.
1448
+ *
1449
+ * @generated from field: bytes secret_key = 2;
1450
+ */
1451
+ secretKey: Uint8Array;
1452
+ };
1453
+ /**
1454
+ * Describes the message reallyme.crypto.v1.CryptoKeyAgreementDeriveKeyPairRequest.
1455
+ * Use `create(CryptoKeyAgreementDeriveKeyPairRequestSchema)` to create a new message.
1456
+ */
1457
+ export declare const CryptoKeyAgreementDeriveKeyPairRequestSchema: GenMessage<CryptoKeyAgreementDeriveKeyPairRequest>;
1458
+ /**
1459
+ * @generated from message reallyme.crypto.v1.CryptoKemGenerateKeyPairRequest
1460
+ */
1461
+ export type CryptoKemGenerateKeyPairRequest = Message<"reallyme.crypto.v1.CryptoKemGenerateKeyPairRequest"> & {
1462
+ /**
1463
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1464
+ */
1465
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1466
+ };
1467
+ /**
1468
+ * Describes the message reallyme.crypto.v1.CryptoKemGenerateKeyPairRequest.
1469
+ * Use `create(CryptoKemGenerateKeyPairRequestSchema)` to create a new message.
1470
+ */
1471
+ export declare const CryptoKemGenerateKeyPairRequestSchema: GenMessage<CryptoKemGenerateKeyPairRequest>;
1472
+ /**
1473
+ * @generated from message reallyme.crypto.v1.CryptoKemDeriveKeyPairRequest
1474
+ */
1475
+ export type CryptoKemDeriveKeyPairRequest = Message<"reallyme.crypto.v1.CryptoKemDeriveKeyPairRequest"> & {
1476
+ /**
1477
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1478
+ */
1479
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1480
+ /**
1481
+ * Secret-bearing seed or private key input, depending on the algorithm.
1482
+ *
1483
+ * @generated from field: bytes secret_key = 2;
1484
+ */
1485
+ secretKey: Uint8Array;
1486
+ };
1487
+ /**
1488
+ * Describes the message reallyme.crypto.v1.CryptoKemDeriveKeyPairRequest.
1489
+ * Use `create(CryptoKemDeriveKeyPairRequestSchema)` to create a new message.
1490
+ */
1491
+ export declare const CryptoKemDeriveKeyPairRequestSchema: GenMessage<CryptoKemDeriveKeyPairRequest>;
1492
+ /**
1493
+ * @generated from message reallyme.crypto.v1.CryptoKemEncapsulateRequest
1494
+ */
1495
+ export type CryptoKemEncapsulateRequest = Message<"reallyme.crypto.v1.CryptoKemEncapsulateRequest"> & {
1496
+ /**
1497
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1498
+ */
1499
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1500
+ /**
1501
+ * @generated from field: bytes public_key = 2;
1502
+ */
1503
+ publicKey: Uint8Array;
1504
+ };
1505
+ /**
1506
+ * Describes the message reallyme.crypto.v1.CryptoKemEncapsulateRequest.
1507
+ * Use `create(CryptoKemEncapsulateRequestSchema)` to create a new message.
1508
+ */
1509
+ export declare const CryptoKemEncapsulateRequestSchema: GenMessage<CryptoKemEncapsulateRequest>;
1510
+ /**
1511
+ * @generated from message reallyme.crypto.v1.CryptoKemDecapsulateRequest
1512
+ */
1513
+ export type CryptoKemDecapsulateRequest = Message<"reallyme.crypto.v1.CryptoKemDecapsulateRequest"> & {
1514
+ /**
1515
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1516
+ */
1517
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1518
+ /**
1519
+ * @generated from field: bytes ciphertext = 2;
1520
+ */
1521
+ ciphertext: Uint8Array;
1522
+ /**
1523
+ * Secret-bearing KEM private key material.
1524
+ *
1525
+ * @generated from field: bytes secret_key = 3;
1526
+ */
1527
+ secretKey: Uint8Array;
1528
+ };
1529
+ /**
1530
+ * Describes the message reallyme.crypto.v1.CryptoKemDecapsulateRequest.
1531
+ * Use `create(CryptoKemDecapsulateRequestSchema)` to create a new message.
1532
+ */
1533
+ export declare const CryptoKemDecapsulateRequestSchema: GenMessage<CryptoKemDecapsulateRequest>;
1534
+ /**
1535
+ * @generated from message reallyme.crypto.v1.CryptoKemDecapsulateResult
1536
+ */
1537
+ export type CryptoKemDecapsulateResult = Message<"reallyme.crypto.v1.CryptoKemDecapsulateResult"> & {
1538
+ /**
1539
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1540
+ */
1541
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1542
+ /**
1543
+ * Secret-bearing KEM shared secret.
1544
+ *
1545
+ * @generated from field: bytes shared_secret = 2;
1546
+ */
1547
+ sharedSecret: Uint8Array;
1548
+ };
1549
+ /**
1550
+ * Describes the message reallyme.crypto.v1.CryptoKemDecapsulateResult.
1551
+ * Use `create(CryptoKemDecapsulateResultSchema)` to create a new message.
1552
+ */
1553
+ export declare const CryptoKemDecapsulateResultSchema: GenMessage<CryptoKemDecapsulateResult>;
1554
+ /**
1555
+ * @generated from message reallyme.crypto.v1.CryptoHpkeSealRequest
1556
+ */
1557
+ export type CryptoHpkeSealRequest = Message<"reallyme.crypto.v1.CryptoHpkeSealRequest"> & {
1558
+ /**
1559
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1560
+ */
1561
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1562
+ /**
1563
+ * @generated from field: bytes recipient_public_key = 2;
1564
+ */
1565
+ recipientPublicKey: Uint8Array;
1566
+ /**
1567
+ * @generated from field: bytes info = 3;
1568
+ */
1569
+ info: Uint8Array;
1570
+ /**
1571
+ * @generated from field: bytes aad = 4;
1572
+ */
1573
+ aad: Uint8Array;
1574
+ /**
1575
+ * Plaintext may contain secret or PII-bearing application data.
1576
+ *
1577
+ * @generated from field: bytes plaintext = 5;
1578
+ */
1579
+ plaintext: Uint8Array;
1580
+ };
1581
+ /**
1582
+ * Describes the message reallyme.crypto.v1.CryptoHpkeSealRequest.
1583
+ * Use `create(CryptoHpkeSealRequestSchema)` to create a new message.
1584
+ */
1585
+ export declare const CryptoHpkeSealRequestSchema: GenMessage<CryptoHpkeSealRequest>;
1586
+ /**
1587
+ * @generated from message reallyme.crypto.v1.CryptoHpkeOpenRequest
1588
+ */
1589
+ export type CryptoHpkeOpenRequest = Message<"reallyme.crypto.v1.CryptoHpkeOpenRequest"> & {
1590
+ /**
1591
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1592
+ */
1593
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1594
+ /**
1595
+ * Secret-bearing HPKE recipient private key material.
1596
+ *
1597
+ * @generated from field: bytes recipient_secret_key = 2;
1598
+ */
1599
+ recipientSecretKey: Uint8Array;
1600
+ /**
1601
+ * @generated from field: bytes encapsulated_key = 3;
1602
+ */
1603
+ encapsulatedKey: Uint8Array;
1604
+ /**
1605
+ * @generated from field: bytes info = 4;
1606
+ */
1607
+ info: Uint8Array;
1608
+ /**
1609
+ * @generated from field: bytes aad = 5;
1610
+ */
1611
+ aad: Uint8Array;
1612
+ /**
1613
+ * @generated from field: bytes ciphertext = 6;
1614
+ */
1615
+ ciphertext: Uint8Array;
1616
+ };
1617
+ /**
1618
+ * Describes the message reallyme.crypto.v1.CryptoHpkeOpenRequest.
1619
+ * Use `create(CryptoHpkeOpenRequestSchema)` to create a new message.
1620
+ */
1621
+ export declare const CryptoHpkeOpenRequestSchema: GenMessage<CryptoHpkeOpenRequest>;
1622
+ /**
1623
+ * @generated from message reallyme.crypto.v1.CryptoHpkeOpenResult
1624
+ */
1625
+ export type CryptoHpkeOpenResult = Message<"reallyme.crypto.v1.CryptoHpkeOpenResult"> & {
1626
+ /**
1627
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1628
+ */
1629
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1630
+ /**
1631
+ * Decrypted plaintext may contain secret or PII-bearing application data.
1632
+ *
1633
+ * @generated from field: bytes plaintext = 2;
1634
+ */
1635
+ plaintext: Uint8Array;
1636
+ };
1637
+ /**
1638
+ * Describes the message reallyme.crypto.v1.CryptoHpkeOpenResult.
1639
+ * Use `create(CryptoHpkeOpenResultSchema)` to create a new message.
1640
+ */
1641
+ export declare const CryptoHpkeOpenResultSchema: GenMessage<CryptoHpkeOpenResult>;
1642
+ /**
1643
+ * @generated from message reallyme.crypto.v1.CryptoHpkeGenerateKeyPairRequest
1644
+ */
1645
+ export type CryptoHpkeGenerateKeyPairRequest = Message<"reallyme.crypto.v1.CryptoHpkeGenerateKeyPairRequest"> & {
1646
+ /**
1647
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1648
+ */
1649
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1650
+ };
1651
+ /**
1652
+ * Describes the message reallyme.crypto.v1.CryptoHpkeGenerateKeyPairRequest.
1653
+ * Use `create(CryptoHpkeGenerateKeyPairRequestSchema)` to create a new message.
1654
+ */
1655
+ export declare const CryptoHpkeGenerateKeyPairRequestSchema: GenMessage<CryptoHpkeGenerateKeyPairRequest>;
1656
+ /**
1657
+ * @generated from message reallyme.crypto.v1.CryptoHpkeDeriveKeyPairRequest
1658
+ */
1659
+ export type CryptoHpkeDeriveKeyPairRequest = Message<"reallyme.crypto.v1.CryptoHpkeDeriveKeyPairRequest"> & {
1660
+ /**
1661
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1662
+ */
1663
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1664
+ /**
1665
+ * Secret-bearing input keying material. The selected KEM defines its exact
1666
+ * accepted length; callers must supply high-entropy bytes.
1667
+ *
1668
+ * @generated from field: bytes input_key_material = 2;
1669
+ */
1670
+ inputKeyMaterial: Uint8Array;
1671
+ };
1672
+ /**
1673
+ * Describes the message reallyme.crypto.v1.CryptoHpkeDeriveKeyPairRequest.
1674
+ * Use `create(CryptoHpkeDeriveKeyPairRequestSchema)` to create a new message.
1675
+ */
1676
+ export declare const CryptoHpkeDeriveKeyPairRequestSchema: GenMessage<CryptoHpkeDeriveKeyPairRequest>;
1677
+ /**
1678
+ * @generated from message reallyme.crypto.v1.CryptoHpkeSenderExportRequest
1679
+ */
1680
+ export type CryptoHpkeSenderExportRequest = Message<"reallyme.crypto.v1.CryptoHpkeSenderExportRequest"> & {
1681
+ /**
1682
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1683
+ */
1684
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1685
+ /**
1686
+ * @generated from field: bytes recipient_public_key = 2;
1687
+ */
1688
+ recipientPublicKey: Uint8Array;
1689
+ /**
1690
+ * @generated from field: bytes info = 3;
1691
+ */
1692
+ info: Uint8Array;
1693
+ /**
1694
+ * @generated from field: bytes exporter_context = 4;
1695
+ */
1696
+ exporterContext: Uint8Array;
1697
+ /**
1698
+ * @generated from field: uint32 output_length = 5;
1699
+ */
1700
+ outputLength: number;
1701
+ };
1702
+ /**
1703
+ * Describes the message reallyme.crypto.v1.CryptoHpkeSenderExportRequest.
1704
+ * Use `create(CryptoHpkeSenderExportRequestSchema)` to create a new message.
1705
+ */
1706
+ export declare const CryptoHpkeSenderExportRequestSchema: GenMessage<CryptoHpkeSenderExportRequest>;
1707
+ /**
1708
+ * @generated from message reallyme.crypto.v1.CryptoHpkeReceiverExportRequest
1709
+ */
1710
+ export type CryptoHpkeReceiverExportRequest = Message<"reallyme.crypto.v1.CryptoHpkeReceiverExportRequest"> & {
1711
+ /**
1712
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1713
+ */
1714
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1715
+ /**
1716
+ * Secret-bearing HPKE recipient private key material.
1717
+ *
1718
+ * @generated from field: bytes recipient_secret_key = 2;
1719
+ */
1720
+ recipientSecretKey: Uint8Array;
1721
+ /**
1722
+ * @generated from field: bytes encapsulated_key = 3;
1723
+ */
1724
+ encapsulatedKey: Uint8Array;
1725
+ /**
1726
+ * @generated from field: bytes info = 4;
1727
+ */
1728
+ info: Uint8Array;
1729
+ /**
1730
+ * @generated from field: bytes exporter_context = 5;
1731
+ */
1732
+ exporterContext: Uint8Array;
1733
+ /**
1734
+ * @generated from field: uint32 output_length = 6;
1735
+ */
1736
+ outputLength: number;
1737
+ };
1738
+ /**
1739
+ * Describes the message reallyme.crypto.v1.CryptoHpkeReceiverExportRequest.
1740
+ * Use `create(CryptoHpkeReceiverExportRequestSchema)` to create a new message.
1741
+ */
1742
+ export declare const CryptoHpkeReceiverExportRequestSchema: GenMessage<CryptoHpkeReceiverExportRequest>;
1743
+ /**
1744
+ * @generated from message reallyme.crypto.v1.CryptoHpkeSenderExportResult
1745
+ */
1746
+ export type CryptoHpkeSenderExportResult = Message<"reallyme.crypto.v1.CryptoHpkeSenderExportResult"> & {
1747
+ /**
1748
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1749
+ */
1750
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1751
+ /**
1752
+ * @generated from field: bytes encapsulated_key = 2;
1753
+ */
1754
+ encapsulatedKey: Uint8Array;
1755
+ /**
1756
+ * Secret-bearing HPKE exporter output.
1757
+ *
1758
+ * @generated from field: bytes exporter_secret = 3;
1759
+ */
1760
+ exporterSecret: Uint8Array;
1761
+ };
1762
+ /**
1763
+ * Describes the message reallyme.crypto.v1.CryptoHpkeSenderExportResult.
1764
+ * Use `create(CryptoHpkeSenderExportResultSchema)` to create a new message.
1765
+ */
1766
+ export declare const CryptoHpkeSenderExportResultSchema: GenMessage<CryptoHpkeSenderExportResult>;
1767
+ /**
1768
+ * @generated from message reallyme.crypto.v1.CryptoHpkeReceiverExportResult
1769
+ */
1770
+ export type CryptoHpkeReceiverExportResult = Message<"reallyme.crypto.v1.CryptoHpkeReceiverExportResult"> & {
1771
+ /**
1772
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1773
+ */
1774
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1775
+ /**
1776
+ * Secret-bearing HPKE exporter output.
1777
+ *
1778
+ * @generated from field: bytes exporter_secret = 2;
1779
+ */
1780
+ exporterSecret: Uint8Array;
1781
+ };
1782
+ /**
1783
+ * Describes the message reallyme.crypto.v1.CryptoHpkeReceiverExportResult.
1784
+ * Use `create(CryptoHpkeReceiverExportResultSchema)` to create a new message.
1785
+ */
1786
+ export declare const CryptoHpkeReceiverExportResultSchema: GenMessage<CryptoHpkeReceiverExportResult>;
1787
+ /**
1788
+ * @generated from message reallyme.crypto.v1.CryptoHpkePskSealRequest
1789
+ */
1790
+ export type CryptoHpkePskSealRequest = Message<"reallyme.crypto.v1.CryptoHpkePskSealRequest"> & {
1791
+ /**
1792
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1793
+ */
1794
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1795
+ /**
1796
+ * @generated from field: bytes recipient_public_key = 2;
1797
+ */
1798
+ recipientPublicKey: Uint8Array;
1799
+ /**
1800
+ * @generated from field: bytes info = 3;
1801
+ */
1802
+ info: Uint8Array;
1803
+ /**
1804
+ * @generated from field: bytes aad = 4;
1805
+ */
1806
+ aad: Uint8Array;
1807
+ /**
1808
+ * Plaintext may contain secret or PII-bearing application data.
1809
+ *
1810
+ * @generated from field: bytes plaintext = 5;
1811
+ */
1812
+ plaintext: Uint8Array;
1813
+ /**
1814
+ * Secret-bearing, high-entropy pre-shared key. Passwords are not valid HPKE
1815
+ * PSKs and must not be passed through this field.
1816
+ *
1817
+ * @generated from field: bytes psk = 6;
1818
+ */
1819
+ psk: Uint8Array;
1820
+ /**
1821
+ * @generated from field: bytes psk_id = 7;
1822
+ */
1823
+ pskId: Uint8Array;
1824
+ };
1825
+ /**
1826
+ * Describes the message reallyme.crypto.v1.CryptoHpkePskSealRequest.
1827
+ * Use `create(CryptoHpkePskSealRequestSchema)` to create a new message.
1828
+ */
1829
+ export declare const CryptoHpkePskSealRequestSchema: GenMessage<CryptoHpkePskSealRequest>;
1830
+ /**
1831
+ * @generated from message reallyme.crypto.v1.CryptoHpkePskOpenRequest
1832
+ */
1833
+ export type CryptoHpkePskOpenRequest = Message<"reallyme.crypto.v1.CryptoHpkePskOpenRequest"> & {
1834
+ /**
1835
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1836
+ */
1837
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1838
+ /**
1839
+ * Secret-bearing HPKE recipient private key material.
1840
+ *
1841
+ * @generated from field: bytes recipient_secret_key = 2;
1842
+ */
1843
+ recipientSecretKey: Uint8Array;
1844
+ /**
1845
+ * @generated from field: bytes encapsulated_key = 3;
1846
+ */
1847
+ encapsulatedKey: Uint8Array;
1848
+ /**
1849
+ * @generated from field: bytes info = 4;
1850
+ */
1851
+ info: Uint8Array;
1852
+ /**
1853
+ * @generated from field: bytes aad = 5;
1854
+ */
1855
+ aad: Uint8Array;
1856
+ /**
1857
+ * @generated from field: bytes ciphertext = 6;
1858
+ */
1859
+ ciphertext: Uint8Array;
1860
+ /**
1861
+ * Secret-bearing, high-entropy pre-shared key. Passwords are not valid HPKE
1862
+ * PSKs and must not be passed through this field.
1863
+ *
1864
+ * @generated from field: bytes psk = 7;
1865
+ */
1866
+ psk: Uint8Array;
1867
+ /**
1868
+ * @generated from field: bytes psk_id = 8;
1869
+ */
1870
+ pskId: Uint8Array;
1871
+ };
1872
+ /**
1873
+ * Describes the message reallyme.crypto.v1.CryptoHpkePskOpenRequest.
1874
+ * Use `create(CryptoHpkePskOpenRequestSchema)` to create a new message.
1875
+ */
1876
+ export declare const CryptoHpkePskOpenRequestSchema: GenMessage<CryptoHpkePskOpenRequest>;
1877
+ /**
1878
+ * CryptoKeyPair is the protobuf boundary envelope for generated or derived
1879
+ * keypairs. Secret-key bytes are included only for APIs whose public facade
1880
+ * already returns exportable secret-key material; non-exportable platform keys
1881
+ * must use a separate handle-specific protocol.
1882
+ *
1883
+ * @generated from message reallyme.crypto.v1.CryptoKeyPair
1884
+ */
1885
+ export type CryptoKeyPair = Message<"reallyme.crypto.v1.CryptoKeyPair"> & {
1886
+ /**
1887
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1888
+ */
1889
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1890
+ /**
1891
+ * @generated from field: bytes public_key = 2;
1892
+ */
1893
+ publicKey: Uint8Array;
1894
+ /**
1895
+ * Secret-bearing exportable private key material.
1896
+ *
1897
+ * @generated from field: bytes secret_key = 3;
1898
+ */
1899
+ secretKey: Uint8Array;
1900
+ };
1901
+ /**
1902
+ * Describes the message reallyme.crypto.v1.CryptoKeyPair.
1903
+ * Use `create(CryptoKeyPairSchema)` to create a new message.
1904
+ */
1905
+ export declare const CryptoKeyPairSchema: GenMessage<CryptoKeyPair>;
1906
+ /**
1907
+ * CryptoKemEncapsulation is the protobuf boundary envelope for KEM
1908
+ * encapsulation results. `shared_secret` is secret-bearing material; callers
1909
+ * must keep it in binary/protobuf channels and zeroize it when possible.
1910
+ *
1911
+ * @generated from message reallyme.crypto.v1.CryptoKemEncapsulation
1912
+ */
1913
+ export type CryptoKemEncapsulation = Message<"reallyme.crypto.v1.CryptoKemEncapsulation"> & {
1914
+ /**
1915
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1916
+ */
1917
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1918
+ /**
1919
+ * @generated from field: bytes ciphertext = 2;
1920
+ */
1921
+ ciphertext: Uint8Array;
1922
+ /**
1923
+ * Secret-bearing KEM shared secret.
1924
+ *
1925
+ * @generated from field: bytes shared_secret = 3;
1926
+ */
1927
+ sharedSecret: Uint8Array;
1928
+ };
1929
+ /**
1930
+ * Describes the message reallyme.crypto.v1.CryptoKemEncapsulation.
1931
+ * Use `create(CryptoKemEncapsulationSchema)` to create a new message.
1932
+ */
1933
+ export declare const CryptoKemEncapsulationSchema: GenMessage<CryptoKemEncapsulation>;
1934
+ /**
1935
+ * CryptoHpkeSealedMessage is the protobuf boundary envelope for HPKE Base-mode
1936
+ * sender output.
1937
+ *
1938
+ * @generated from message reallyme.crypto.v1.CryptoHpkeSealedMessage
1939
+ */
1940
+ export type CryptoHpkeSealedMessage = Message<"reallyme.crypto.v1.CryptoHpkeSealedMessage"> & {
1941
+ /**
1942
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
1943
+ */
1944
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
1945
+ /**
1946
+ * @generated from field: bytes encapsulated_key = 2;
1947
+ */
1948
+ encapsulatedKey: Uint8Array;
1949
+ /**
1950
+ * @generated from field: bytes ciphertext = 3;
1951
+ */
1952
+ ciphertext: Uint8Array;
1953
+ };
1954
+ /**
1955
+ * Describes the message reallyme.crypto.v1.CryptoHpkeSealedMessage.
1956
+ * Use `create(CryptoHpkeSealedMessageSchema)` to create a new message.
1957
+ */
1958
+ export declare const CryptoHpkeSealedMessageSchema: GenMessage<CryptoHpkeSealedMessage>;
1959
+ /**
1960
+ * @generated from message reallyme.crypto.v1.ApplePlatformKeyPolicy
1961
+ */
1962
+ export type ApplePlatformKeyPolicy = Message<"reallyme.crypto.v1.ApplePlatformKeyPolicy"> & {
1963
+ /**
1964
+ * @generated from field: reallyme.crypto.v1.AppleSecureEnclaveAccessPolicy access_policy = 1;
1965
+ */
1966
+ accessPolicy: AppleSecureEnclaveAccessPolicy;
1967
+ /**
1968
+ * @generated from field: reallyme.crypto.v1.AppleKeychainAccessibility accessibility = 2;
1969
+ */
1970
+ accessibility: AppleKeychainAccessibility;
1971
+ };
1972
+ /**
1973
+ * Describes the message reallyme.crypto.v1.ApplePlatformKeyPolicy.
1974
+ * Use `create(ApplePlatformKeyPolicySchema)` to create a new message.
1975
+ */
1976
+ export declare const ApplePlatformKeyPolicySchema: GenMessage<ApplePlatformKeyPolicy>;
1977
+ /**
1978
+ * @generated from message reallyme.crypto.v1.AndroidPlatformKeyPolicy
1979
+ */
1980
+ export type AndroidPlatformKeyPolicy = Message<"reallyme.crypto.v1.AndroidPlatformKeyPolicy"> & {
1981
+ /**
1982
+ * When present, this value must match
1983
+ * CryptoPlatformKeyGenerateRequest.requested_security_level.
1984
+ *
1985
+ * @generated from field: reallyme.crypto.v1.PlatformKeySecurityLevel requested_security_level = 1;
1986
+ */
1987
+ requestedSecurityLevel: PlatformKeySecurityLevel;
1988
+ /**
1989
+ * @generated from field: bool user_authentication_required = 2;
1990
+ */
1991
+ userAuthenticationRequired: boolean;
1992
+ /**
1993
+ * @generated from field: uint32 user_authentication_timeout_seconds = 3;
1994
+ */
1995
+ userAuthenticationTimeoutSeconds: number;
1996
+ /**
1997
+ * @generated from field: bool allow_biometric_strong = 4;
1998
+ */
1999
+ allowBiometricStrong: boolean;
2000
+ /**
2001
+ * @generated from field: bool allow_device_credential = 5;
2002
+ */
2003
+ allowDeviceCredential: boolean;
2004
+ /**
2005
+ * @generated from field: bool invalidated_by_biometric_enrollment = 6;
2006
+ */
2007
+ invalidatedByBiometricEnrollment: boolean;
2008
+ /**
2009
+ * @generated from field: bool user_confirmation_required = 7;
2010
+ */
2011
+ userConfirmationRequired: boolean;
2012
+ /**
2013
+ * @generated from field: bool unlocked_device_required = 8;
2014
+ */
2015
+ unlockedDeviceRequired: boolean;
2016
+ /**
2017
+ * @generated from field: bytes attestation_challenge = 9;
2018
+ */
2019
+ attestationChallenge: Uint8Array;
2020
+ };
2021
+ /**
2022
+ * Describes the message reallyme.crypto.v1.AndroidPlatformKeyPolicy.
2023
+ * Use `create(AndroidPlatformKeyPolicySchema)` to create a new message.
2024
+ */
2025
+ export declare const AndroidPlatformKeyPolicySchema: GenMessage<AndroidPlatformKeyPolicy>;
2026
+ /**
2027
+ * @generated from message reallyme.crypto.v1.PlatformKeyPolicy
2028
+ */
2029
+ export type PlatformKeyPolicy = Message<"reallyme.crypto.v1.PlatformKeyPolicy"> & {
2030
+ /**
2031
+ * @generated from oneof reallyme.crypto.v1.PlatformKeyPolicy.policy
2032
+ */
2033
+ policy: {
2034
+ /**
2035
+ * @generated from field: reallyme.crypto.v1.ApplePlatformKeyPolicy apple = 1;
2036
+ */
2037
+ value: ApplePlatformKeyPolicy;
2038
+ case: "apple";
2039
+ } | {
2040
+ /**
2041
+ * @generated from field: reallyme.crypto.v1.AndroidPlatformKeyPolicy android = 2;
2042
+ */
2043
+ value: AndroidPlatformKeyPolicy;
2044
+ case: "android";
2045
+ } | {
2046
+ case: undefined;
2047
+ value?: undefined;
2048
+ };
2049
+ };
2050
+ /**
2051
+ * Describes the message reallyme.crypto.v1.PlatformKeyPolicy.
2052
+ * Use `create(PlatformKeyPolicySchema)` to create a new message.
2053
+ */
2054
+ export declare const PlatformKeyPolicySchema: GenMessage<PlatformKeyPolicy>;
2055
+ /**
2056
+ * CryptoPlatformPrivateKeyHandle is an opaque, privacy-sensitive reference to
2057
+ * platform-resident private key material. It is not interchangeable with
2058
+ * raw-byte `secret_key` fields and must never contain exportable private key
2059
+ * material.
2060
+ *
2061
+ * @generated from message reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle
2062
+ */
2063
+ export type CryptoPlatformPrivateKeyHandle = Message<"reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle"> & {
2064
+ /**
2065
+ * @generated from field: reallyme.crypto.v1.PlatformKeyProvider provider = 1;
2066
+ */
2067
+ provider: PlatformKeyProvider;
2068
+ /**
2069
+ * @generated from field: reallyme.crypto.v1.PlatformKeyPurpose purpose = 2;
2070
+ */
2071
+ purpose: PlatformKeyPurpose;
2072
+ /**
2073
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 3;
2074
+ */
2075
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
2076
+ /**
2077
+ * @generated from field: bytes opaque_handle = 4;
2078
+ */
2079
+ opaqueHandle: Uint8Array;
2080
+ /**
2081
+ * @generated from field: bytes public_key = 5;
2082
+ */
2083
+ publicKey: Uint8Array;
2084
+ /**
2085
+ * @generated from field: reallyme.crypto.v1.PlatformKeySecurityLevel actual_security_level = 6;
2086
+ */
2087
+ actualSecurityLevel: PlatformKeySecurityLevel;
2088
+ /**
2089
+ * @generated from field: reallyme.crypto.v1.PlatformKeySecurityLevel requested_security_level = 7;
2090
+ */
2091
+ requestedSecurityLevel: PlatformKeySecurityLevel;
2092
+ };
2093
+ /**
2094
+ * Describes the message reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle.
2095
+ * Use `create(CryptoPlatformPrivateKeyHandleSchema)` to create a new message.
2096
+ */
2097
+ export declare const CryptoPlatformPrivateKeyHandleSchema: GenMessage<CryptoPlatformPrivateKeyHandle>;
2098
+ /**
2099
+ * Platform-key operations in 0.3.0 are limited to P-256 ECDSA signing and
2100
+ * P-256 ECDH. Providers must reject an algorithm/purpose mismatch and must
2101
+ * report the actual security level rather than treating this request as
2102
+ * evidence that hardware residency was obtained.
2103
+ *
2104
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyGenerateRequest
2105
+ */
2106
+ export type CryptoPlatformKeyGenerateRequest = Message<"reallyme.crypto.v1.CryptoPlatformKeyGenerateRequest"> & {
2107
+ /**
2108
+ * @generated from field: reallyme.crypto.v1.PlatformKeyProvider provider = 1;
2109
+ */
2110
+ provider: PlatformKeyProvider;
2111
+ /**
2112
+ * @generated from field: reallyme.crypto.v1.PlatformKeyPurpose purpose = 2;
2113
+ */
2114
+ purpose: PlatformKeyPurpose;
2115
+ /**
2116
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 3;
2117
+ */
2118
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
2119
+ /**
2120
+ * @generated from field: bytes application_tag = 4;
2121
+ */
2122
+ applicationTag: Uint8Array;
2123
+ /**
2124
+ * @generated from field: reallyme.crypto.v1.PlatformKeyPolicy policy = 5;
2125
+ */
2126
+ policy?: PlatformKeyPolicy | undefined;
2127
+ /**
2128
+ * @generated from field: bool overwrite_existing = 6;
2129
+ */
2130
+ overwriteExisting: boolean;
2131
+ /**
2132
+ * @generated from field: reallyme.crypto.v1.PlatformKeySecurityLevel requested_security_level = 7;
2133
+ */
2134
+ requestedSecurityLevel: PlatformKeySecurityLevel;
2135
+ };
2136
+ /**
2137
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyGenerateRequest.
2138
+ * Use `create(CryptoPlatformKeyGenerateRequestSchema)` to create a new message.
2139
+ */
2140
+ export declare const CryptoPlatformKeyGenerateRequestSchema: GenMessage<CryptoPlatformKeyGenerateRequest>;
2141
+ /**
2142
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyGenerateResult
2143
+ */
2144
+ export type CryptoPlatformKeyGenerateResult = Message<"reallyme.crypto.v1.CryptoPlatformKeyGenerateResult"> & {
2145
+ /**
2146
+ * @generated from field: reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle private_key_handle = 1;
2147
+ */
2148
+ privateKeyHandle?: CryptoPlatformPrivateKeyHandle | undefined;
2149
+ };
2150
+ /**
2151
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyGenerateResult.
2152
+ * Use `create(CryptoPlatformKeyGenerateResultSchema)` to create a new message.
2153
+ */
2154
+ export declare const CryptoPlatformKeyGenerateResultSchema: GenMessage<CryptoPlatformKeyGenerateResult>;
2155
+ /**
2156
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyGetPublicKeyRequest
2157
+ */
2158
+ export type CryptoPlatformKeyGetPublicKeyRequest = Message<"reallyme.crypto.v1.CryptoPlatformKeyGetPublicKeyRequest"> & {
2159
+ /**
2160
+ * @generated from field: reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle private_key_handle = 1;
2161
+ */
2162
+ privateKeyHandle?: CryptoPlatformPrivateKeyHandle | undefined;
2163
+ };
2164
+ /**
2165
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyGetPublicKeyRequest.
2166
+ * Use `create(CryptoPlatformKeyGetPublicKeyRequestSchema)` to create a new message.
2167
+ */
2168
+ export declare const CryptoPlatformKeyGetPublicKeyRequestSchema: GenMessage<CryptoPlatformKeyGetPublicKeyRequest>;
2169
+ /**
2170
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyGetPublicKeyResult
2171
+ */
2172
+ export type CryptoPlatformKeyGetPublicKeyResult = Message<"reallyme.crypto.v1.CryptoPlatformKeyGetPublicKeyResult"> & {
2173
+ /**
2174
+ * @generated from field: reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle private_key_handle = 1;
2175
+ */
2176
+ privateKeyHandle?: CryptoPlatformPrivateKeyHandle | undefined;
2177
+ /**
2178
+ * @generated from field: bytes public_key = 2;
2179
+ */
2180
+ publicKey: Uint8Array;
2181
+ };
2182
+ /**
2183
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyGetPublicKeyResult.
2184
+ * Use `create(CryptoPlatformKeyGetPublicKeyResultSchema)` to create a new message.
2185
+ */
2186
+ export declare const CryptoPlatformKeyGetPublicKeyResultSchema: GenMessage<CryptoPlatformKeyGetPublicKeyResult>;
2187
+ /**
2188
+ * @generated from message reallyme.crypto.v1.CryptoPlatformSignatureSignRequest
2189
+ */
2190
+ export type CryptoPlatformSignatureSignRequest = Message<"reallyme.crypto.v1.CryptoPlatformSignatureSignRequest"> & {
2191
+ /**
2192
+ * @generated from field: reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle private_key_handle = 1;
2193
+ */
2194
+ privateKeyHandle?: CryptoPlatformPrivateKeyHandle | undefined;
2195
+ /**
2196
+ * @generated from field: bytes message = 2;
2197
+ */
2198
+ message: Uint8Array;
2199
+ /**
2200
+ * @generated from field: string authentication_prompt = 3;
2201
+ */
2202
+ authenticationPrompt: string;
2203
+ };
2204
+ /**
2205
+ * Describes the message reallyme.crypto.v1.CryptoPlatformSignatureSignRequest.
2206
+ * Use `create(CryptoPlatformSignatureSignRequestSchema)` to create a new message.
2207
+ */
2208
+ export declare const CryptoPlatformSignatureSignRequestSchema: GenMessage<CryptoPlatformSignatureSignRequest>;
2209
+ /**
2210
+ * @generated from message reallyme.crypto.v1.CryptoPlatformSignatureSignResult
2211
+ */
2212
+ export type CryptoPlatformSignatureSignResult = Message<"reallyme.crypto.v1.CryptoPlatformSignatureSignResult"> & {
2213
+ /**
2214
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
2215
+ */
2216
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
2217
+ /**
2218
+ * @generated from field: bytes signature = 2;
2219
+ */
2220
+ signature: Uint8Array;
2221
+ };
2222
+ /**
2223
+ * Describes the message reallyme.crypto.v1.CryptoPlatformSignatureSignResult.
2224
+ * Use `create(CryptoPlatformSignatureSignResultSchema)` to create a new message.
2225
+ */
2226
+ export declare const CryptoPlatformSignatureSignResultSchema: GenMessage<CryptoPlatformSignatureSignResult>;
2227
+ /**
2228
+ * @generated from message reallyme.crypto.v1.CryptoPlatformSignatureVerifyRequest
2229
+ */
2230
+ export type CryptoPlatformSignatureVerifyRequest = Message<"reallyme.crypto.v1.CryptoPlatformSignatureVerifyRequest"> & {
2231
+ /**
2232
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
2233
+ */
2234
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
2235
+ /**
2236
+ * @generated from field: bytes signature = 2;
2237
+ */
2238
+ signature: Uint8Array;
2239
+ /**
2240
+ * @generated from field: bytes message = 3;
2241
+ */
2242
+ message: Uint8Array;
2243
+ /**
2244
+ * @generated from field: bytes public_key = 4;
2245
+ */
2246
+ publicKey: Uint8Array;
2247
+ };
2248
+ /**
2249
+ * Describes the message reallyme.crypto.v1.CryptoPlatformSignatureVerifyRequest.
2250
+ * Use `create(CryptoPlatformSignatureVerifyRequestSchema)` to create a new message.
2251
+ */
2252
+ export declare const CryptoPlatformSignatureVerifyRequestSchema: GenMessage<CryptoPlatformSignatureVerifyRequest>;
2253
+ /**
2254
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyAgreementDeriveSharedSecretRequest
2255
+ */
2256
+ export type CryptoPlatformKeyAgreementDeriveSharedSecretRequest = Message<"reallyme.crypto.v1.CryptoPlatformKeyAgreementDeriveSharedSecretRequest"> & {
2257
+ /**
2258
+ * @generated from field: reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle private_key_handle = 1;
2259
+ */
2260
+ privateKeyHandle?: CryptoPlatformPrivateKeyHandle | undefined;
2261
+ /**
2262
+ * @generated from field: bytes peer_public_key = 2;
2263
+ */
2264
+ peerPublicKey: Uint8Array;
2265
+ };
2266
+ /**
2267
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyAgreementDeriveSharedSecretRequest.
2268
+ * Use `create(CryptoPlatformKeyAgreementDeriveSharedSecretRequestSchema)` to create a new message.
2269
+ */
2270
+ export declare const CryptoPlatformKeyAgreementDeriveSharedSecretRequestSchema: GenMessage<CryptoPlatformKeyAgreementDeriveSharedSecretRequest>;
2271
+ /**
2272
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyAgreementDeriveSharedSecretResult
2273
+ */
2274
+ export type CryptoPlatformKeyAgreementDeriveSharedSecretResult = Message<"reallyme.crypto.v1.CryptoPlatformKeyAgreementDeriveSharedSecretResult"> & {
2275
+ /**
2276
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
2277
+ */
2278
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
2279
+ /**
2280
+ * @generated from field: bytes shared_secret = 2;
2281
+ */
2282
+ sharedSecret: Uint8Array;
2283
+ };
2284
+ /**
2285
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyAgreementDeriveSharedSecretResult.
2286
+ * Use `create(CryptoPlatformKeyAgreementDeriveSharedSecretResultSchema)` to create a new message.
2287
+ */
2288
+ export declare const CryptoPlatformKeyAgreementDeriveSharedSecretResultSchema: GenMessage<CryptoPlatformKeyAgreementDeriveSharedSecretResult>;
2289
+ /**
2290
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyDeleteRequest
2291
+ */
2292
+ export type CryptoPlatformKeyDeleteRequest = Message<"reallyme.crypto.v1.CryptoPlatformKeyDeleteRequest"> & {
2293
+ /**
2294
+ * @generated from field: reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle private_key_handle = 1;
2295
+ */
2296
+ privateKeyHandle?: CryptoPlatformPrivateKeyHandle | undefined;
2297
+ };
2298
+ /**
2299
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyDeleteRequest.
2300
+ * Use `create(CryptoPlatformKeyDeleteRequestSchema)` to create a new message.
2301
+ */
2302
+ export declare const CryptoPlatformKeyDeleteRequestSchema: GenMessage<CryptoPlatformKeyDeleteRequest>;
2303
+ /**
2304
+ * Deletion is idempotent: deleting a well-formed handle whose key is already
2305
+ * absent succeeds. Malformed handles and provider mismatches remain typed
2306
+ * failures. The result echoes no handle so the boundary does not create an
2307
+ * unnecessary additional copy of a persistent key identifier.
2308
+ *
2309
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyDeleteResult
2310
+ */
2311
+ export type CryptoPlatformKeyDeleteResult = Message<"reallyme.crypto.v1.CryptoPlatformKeyDeleteResult"> & {};
2312
+ /**
2313
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyDeleteResult.
2314
+ * Use `create(CryptoPlatformKeyDeleteResultSchema)` to create a new message.
2315
+ */
2316
+ export declare const CryptoPlatformKeyDeleteResultSchema: GenMessage<CryptoPlatformKeyDeleteResult>;
2317
+ /**
2318
+ * Attestation is an explicit evidence operation. A provider or security-level
2319
+ * enum value alone never proves that a key is hardware-backed.
2320
+ *
2321
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyAttestRequest
2322
+ */
2323
+ export type CryptoPlatformKeyAttestRequest = Message<"reallyme.crypto.v1.CryptoPlatformKeyAttestRequest"> & {
2324
+ /**
2325
+ * @generated from field: reallyme.crypto.v1.CryptoPlatformPrivateKeyHandle private_key_handle = 1;
2326
+ */
2327
+ privateKeyHandle?: CryptoPlatformPrivateKeyHandle | undefined;
2328
+ /**
2329
+ * @generated from field: bytes challenge = 2;
2330
+ */
2331
+ challenge: Uint8Array;
2332
+ };
2333
+ /**
2334
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyAttestRequest.
2335
+ * Use `create(CryptoPlatformKeyAttestRequestSchema)` to create a new message.
2336
+ */
2337
+ export declare const CryptoPlatformKeyAttestRequestSchema: GenMessage<CryptoPlatformKeyAttestRequest>;
2338
+ /**
2339
+ * A wrapper keeps each certificate in a separately hardened generated owner
2340
+ * instead of retaining a nested byte-vector with ambiguous cleanup semantics.
2341
+ *
2342
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyAttestationCertificate
2343
+ */
2344
+ export type CryptoPlatformKeyAttestationCertificate = Message<"reallyme.crypto.v1.CryptoPlatformKeyAttestationCertificate"> & {
2345
+ /**
2346
+ * @generated from field: bytes certificate_der = 1;
2347
+ */
2348
+ certificateDer: Uint8Array;
2349
+ };
2350
+ /**
2351
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyAttestationCertificate.
2352
+ * Use `create(CryptoPlatformKeyAttestationCertificateSchema)` to create a new message.
2353
+ */
2354
+ export declare const CryptoPlatformKeyAttestationCertificateSchema: GenMessage<CryptoPlatformKeyAttestationCertificate>;
2355
+ /**
2356
+ * @generated from message reallyme.crypto.v1.CryptoPlatformKeyAttestResult
2357
+ */
2358
+ export type CryptoPlatformKeyAttestResult = Message<"reallyme.crypto.v1.CryptoPlatformKeyAttestResult"> & {
2359
+ /**
2360
+ * @generated from field: repeated reallyme.crypto.v1.CryptoPlatformKeyAttestationCertificate certificate_chain = 1;
2361
+ */
2362
+ certificateChain: CryptoPlatformKeyAttestationCertificate[];
2363
+ /**
2364
+ * @generated from field: reallyme.crypto.v1.PlatformKeySecurityLevel actual_security_level = 2;
2365
+ */
2366
+ actualSecurityLevel: PlatformKeySecurityLevel;
2367
+ };
2368
+ /**
2369
+ * Describes the message reallyme.crypto.v1.CryptoPlatformKeyAttestResult.
2370
+ * Use `create(CryptoPlatformKeyAttestResultSchema)` to create a new message.
2371
+ */
2372
+ export declare const CryptoPlatformKeyAttestResultSchema: GenMessage<CryptoPlatformKeyAttestResult>;
2373
+ /**
2374
+ * CryptoVerificationResult is for protocol layers that need a stable,
2375
+ * serializable verification status. Ordinary facade calls should continue to
2376
+ * fail closed with typed errors.
2377
+ *
2378
+ * @generated from message reallyme.crypto.v1.CryptoVerificationResult
2379
+ */
2380
+ export type CryptoVerificationResult = Message<"reallyme.crypto.v1.CryptoVerificationResult"> & {
2381
+ /**
2382
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
2383
+ */
2384
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
2385
+ /**
2386
+ * @generated from field: reallyme.crypto.v1.CryptoVerificationStatus status = 2;
2387
+ */
2388
+ status: CryptoVerificationStatus;
2389
+ /**
2390
+ * @generated from field: reallyme.crypto.v1.CryptoError error = 3;
2391
+ */
2392
+ error?: CryptoError | undefined;
2393
+ };
2394
+ /**
2395
+ * Describes the message reallyme.crypto.v1.CryptoVerificationResult.
2396
+ * Use `create(CryptoVerificationResultSchema)` to create a new message.
2397
+ */
2398
+ export declare const CryptoVerificationResultSchema: GenMessage<CryptoVerificationResult>;
2399
+ /**
2400
+ * CryptoProviderCapability describes the package/provider posture for one
2401
+ * algorithm in one published lane. Provider names are non-secret identifiers
2402
+ * such as "CryptoKit", "BouncyCastle", or "ReallyMe Rust WASM".
2403
+ *
2404
+ * @generated from message reallyme.crypto.v1.CryptoProviderCapability
2405
+ */
2406
+ export type CryptoProviderCapability = Message<"reallyme.crypto.v1.CryptoProviderCapability"> & {
2407
+ /**
2408
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmIdentifier algorithm = 1;
2409
+ */
2410
+ algorithm?: CryptoAlgorithmIdentifier | undefined;
2411
+ /**
2412
+ * @generated from field: reallyme.crypto.v1.CryptoAlgorithmFamily family = 2;
2413
+ */
2414
+ family: CryptoAlgorithmFamily;
2415
+ /**
2416
+ * @generated from field: reallyme.crypto.v1.CryptoProviderSupportStatus status = 3;
2417
+ */
2418
+ status: CryptoProviderSupportStatus;
2419
+ /**
2420
+ * @generated from field: repeated string provider_names = 4;
2421
+ */
2422
+ providerNames: string[];
2423
+ /**
2424
+ * @generated from field: bool uses_rust = 5;
2425
+ */
2426
+ usesRust: boolean;
2427
+ };
2428
+ /**
2429
+ * Describes the message reallyme.crypto.v1.CryptoProviderCapability.
2430
+ * Use `create(CryptoProviderCapabilitySchema)` to create a new message.
183
2431
  */
184
- export declare const CryptoAlgorithmIdentifierSchema: GenMessage<CryptoAlgorithmIdentifier>;
2432
+ export declare const CryptoProviderCapabilitySchema: GenMessage<CryptoProviderCapability>;
2433
+ /**
2434
+ * @generated from message reallyme.crypto.v1.CryptoProviderCapabilitySet
2435
+ */
2436
+ export type CryptoProviderCapabilitySet = Message<"reallyme.crypto.v1.CryptoProviderCapabilitySet"> & {
2437
+ /**
2438
+ * @generated from field: repeated reallyme.crypto.v1.CryptoProviderCapability capabilities = 1;
2439
+ */
2440
+ capabilities: CryptoProviderCapability[];
2441
+ };
2442
+ /**
2443
+ * Describes the message reallyme.crypto.v1.CryptoProviderCapabilitySet.
2444
+ * Use `create(CryptoProviderCapabilitySetSchema)` to create a new message.
2445
+ */
2446
+ export declare const CryptoProviderCapabilitySetSchema: GenMessage<CryptoProviderCapabilitySet>;
185
2447
  /**
186
2448
  * JsonWebKey carries a public JWK document at API/storage boundaries. The JSON
187
2449
  * member is the canonical JCS form used by the package vectors; private key
@@ -306,6 +2568,22 @@ export declare enum CryptoErrorReason {
306
2568
  * @generated from enum value: CRYPTO_ERROR_REASON_PRIMITIVE_INVALID_SHARED_SECRET = 125;
307
2569
  */
308
2570
  PRIMITIVE_INVALID_SHARED_SECRET = 125,
2571
+ /**
2572
+ * @generated from enum value: CRYPTO_ERROR_REASON_PRIMITIVE_MALFORMED_PROTOBUF = 130;
2573
+ */
2574
+ PRIMITIVE_MALFORMED_PROTOBUF = 130,
2575
+ /**
2576
+ * @generated from enum value: CRYPTO_ERROR_REASON_PRIMITIVE_MALFORMED_JSON = 131;
2577
+ */
2578
+ PRIMITIVE_MALFORMED_JSON = 131,
2579
+ /**
2580
+ * @generated from enum value: CRYPTO_ERROR_REASON_PRIMITIVE_RESOURCE_LIMIT_EXCEEDED = 132;
2581
+ */
2582
+ PRIMITIVE_RESOURCE_LIMIT_EXCEEDED = 132,
2583
+ /**
2584
+ * @generated from enum value: CRYPTO_ERROR_REASON_PRIMITIVE_MISSING_OPERATION = 133;
2585
+ */
2586
+ PRIMITIVE_MISSING_OPERATION = 133,
309
2587
  /**
310
2588
  * Provider policy and availability.
311
2589
  *
@@ -324,6 +2602,34 @@ export declare enum CryptoErrorReason {
324
2602
  * @generated from enum value: CRYPTO_ERROR_REASON_PROVIDER_RANDOMNESS_UNAVAILABLE = 203;
325
2603
  */
326
2604
  PROVIDER_RANDOMNESS_UNAVAILABLE = 203,
2605
+ /**
2606
+ * @generated from enum value: CRYPTO_ERROR_REASON_PROVIDER_KEY_EXISTS = 204;
2607
+ */
2608
+ PROVIDER_KEY_EXISTS = 204,
2609
+ /**
2610
+ * @generated from enum value: CRYPTO_ERROR_REASON_PROVIDER_KEY_NOT_FOUND = 205;
2611
+ */
2612
+ PROVIDER_KEY_NOT_FOUND = 205,
2613
+ /**
2614
+ * @generated from enum value: CRYPTO_ERROR_REASON_PROVIDER_ACCESS_DENIED = 206;
2615
+ */
2616
+ PROVIDER_ACCESS_DENIED = 206,
2617
+ /**
2618
+ * @generated from enum value: CRYPTO_ERROR_REASON_PROVIDER_USER_AUTHENTICATION_REQUIRED = 207;
2619
+ */
2620
+ PROVIDER_USER_AUTHENTICATION_REQUIRED = 207,
2621
+ /**
2622
+ * @generated from enum value: CRYPTO_ERROR_REASON_PROVIDER_USER_CANCELED = 208;
2623
+ */
2624
+ PROVIDER_USER_CANCELED = 208,
2625
+ /**
2626
+ * @generated from enum value: CRYPTO_ERROR_REASON_PROVIDER_HARDWARE_UNAVAILABLE = 209;
2627
+ */
2628
+ PROVIDER_HARDWARE_UNAVAILABLE = 209,
2629
+ /**
2630
+ * @generated from enum value: CRYPTO_ERROR_REASON_PROVIDER_HARDWARE_REJECTED_KEY = 210;
2631
+ */
2632
+ PROVIDER_HARDWARE_REJECTED_KEY = 210,
327
2633
  /**
328
2634
  * Backend dispatch and internal state.
329
2635
  *
@@ -392,9 +2698,20 @@ export declare enum CryptoAlgorithmFamily {
392
2698
  */
393
2699
  export declare const CryptoAlgorithmFamilySchema: GenEnum<CryptoAlgorithmFamily>;
394
2700
  /**
395
- * SignatureAlgorithm identifies signature suites supported or reserved by the
396
- * crypto repository. RSA values identify verification suites; RSA signing is
397
- * intentionally not exposed by this package today.
2701
+ * Algorithm selector values are a permanent, append-only wire contract from
2702
+ * this release onward. Each family-scoped enum uses sparse subfamily bands so
2703
+ * future suites can be added beside related algorithms without renumbering an
2704
+ * existing value.
2705
+ *
2706
+ * SignatureAlgorithm bands:
2707
+ * 100-199: EdDSA
2708
+ * 200-299: elliptic-curve signatures
2709
+ * 300-499: RSA verification suites
2710
+ * 1000-1099: post-quantum signatures
2711
+ * 1100-1199: hash-based post-quantum signatures
2712
+ *
2713
+ * RSA values identify verification suites; RSA signing is intentionally not
2714
+ * exposed by this package today.
398
2715
  *
399
2716
  * @generated from enum reallyme.crypto.v1.SignatureAlgorithm
400
2717
  */
@@ -404,77 +2721,77 @@ export declare enum SignatureAlgorithm {
404
2721
  */
405
2722
  UNSPECIFIED = 0,
406
2723
  /**
407
- * @generated from enum value: SIGNATURE_ALGORITHM_ED25519 = 1;
2724
+ * @generated from enum value: SIGNATURE_ALGORITHM_ED25519 = 100;
408
2725
  */
409
- ED25519 = 1,
2726
+ ED25519 = 100,
410
2727
  /**
411
- * @generated from enum value: SIGNATURE_ALGORITHM_ECDSA_P256_SHA256 = 2;
2728
+ * @generated from enum value: SIGNATURE_ALGORITHM_ECDSA_P256_SHA256 = 200;
412
2729
  */
413
- ECDSA_P256_SHA256 = 2,
2730
+ ECDSA_P256_SHA256 = 200,
414
2731
  /**
415
- * @generated from enum value: SIGNATURE_ALGORITHM_ECDSA_P384_SHA384 = 3;
2732
+ * @generated from enum value: SIGNATURE_ALGORITHM_ECDSA_P384_SHA384 = 210;
416
2733
  */
417
- ECDSA_P384_SHA384 = 3,
2734
+ ECDSA_P384_SHA384 = 210,
418
2735
  /**
419
- * @generated from enum value: SIGNATURE_ALGORITHM_ECDSA_P521_SHA512 = 4;
2736
+ * @generated from enum value: SIGNATURE_ALGORITHM_ECDSA_P521_SHA512 = 220;
420
2737
  */
421
- ECDSA_P521_SHA512 = 4,
2738
+ ECDSA_P521_SHA512 = 220,
422
2739
  /**
423
- * @generated from enum value: SIGNATURE_ALGORITHM_ECDSA_SECP256K1_SHA256 = 5;
2740
+ * @generated from enum value: SIGNATURE_ALGORITHM_ECDSA_SECP256K1_SHA256 = 230;
424
2741
  */
425
- ECDSA_SECP256K1_SHA256 = 5,
2742
+ ECDSA_SECP256K1_SHA256 = 230,
426
2743
  /**
427
- * @generated from enum value: SIGNATURE_ALGORITHM_BIP340_SCHNORR_SECP256K1_SHA256 = 6;
2744
+ * @generated from enum value: SIGNATURE_ALGORITHM_BIP340_SCHNORR_SECP256K1_SHA256 = 240;
428
2745
  */
429
- BIP340_SCHNORR_SECP256K1_SHA256 = 6,
2746
+ BIP340_SCHNORR_SECP256K1_SHA256 = 240,
430
2747
  /**
431
- * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PKCS1V15_SHA1 = 7;
2748
+ * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PKCS1V15_SHA1 = 300;
432
2749
  */
433
- RSA_PKCS1V15_SHA1 = 7,
2750
+ RSA_PKCS1V15_SHA1 = 300,
434
2751
  /**
435
- * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PKCS1V15_SHA256 = 8;
2752
+ * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PKCS1V15_SHA256 = 310;
436
2753
  */
437
- RSA_PKCS1V15_SHA256 = 8,
2754
+ RSA_PKCS1V15_SHA256 = 310,
438
2755
  /**
439
- * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PKCS1V15_SHA384 = 9;
2756
+ * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PKCS1V15_SHA384 = 320;
440
2757
  */
441
- RSA_PKCS1V15_SHA384 = 9,
2758
+ RSA_PKCS1V15_SHA384 = 320,
442
2759
  /**
443
- * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PKCS1V15_SHA512 = 10;
2760
+ * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PKCS1V15_SHA512 = 330;
444
2761
  */
445
- RSA_PKCS1V15_SHA512 = 10,
2762
+ RSA_PKCS1V15_SHA512 = 330,
446
2763
  /**
447
- * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PSS_SHA1_MGF1_SHA1 = 11;
2764
+ * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PSS_SHA1_MGF1_SHA1 = 400;
448
2765
  */
449
- RSA_PSS_SHA1_MGF1_SHA1 = 11,
2766
+ RSA_PSS_SHA1_MGF1_SHA1 = 400,
450
2767
  /**
451
- * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PSS_SHA256_MGF1_SHA256 = 12;
2768
+ * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PSS_SHA256_MGF1_SHA256 = 410;
452
2769
  */
453
- RSA_PSS_SHA256_MGF1_SHA256 = 12,
2770
+ RSA_PSS_SHA256_MGF1_SHA256 = 410,
454
2771
  /**
455
- * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PSS_SHA384_MGF1_SHA384 = 13;
2772
+ * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PSS_SHA384_MGF1_SHA384 = 420;
456
2773
  */
457
- RSA_PSS_SHA384_MGF1_SHA384 = 13,
2774
+ RSA_PSS_SHA384_MGF1_SHA384 = 420,
458
2775
  /**
459
- * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PSS_SHA512_MGF1_SHA512 = 14;
2776
+ * @generated from enum value: SIGNATURE_ALGORITHM_RSA_PSS_SHA512_MGF1_SHA512 = 430;
460
2777
  */
461
- RSA_PSS_SHA512_MGF1_SHA512 = 14,
2778
+ RSA_PSS_SHA512_MGF1_SHA512 = 430,
462
2779
  /**
463
- * @generated from enum value: SIGNATURE_ALGORITHM_ML_DSA_44 = 15;
2780
+ * @generated from enum value: SIGNATURE_ALGORITHM_ML_DSA_44 = 1000;
464
2781
  */
465
- ML_DSA_44 = 15,
2782
+ ML_DSA_44 = 1000,
466
2783
  /**
467
- * @generated from enum value: SIGNATURE_ALGORITHM_ML_DSA_65 = 16;
2784
+ * @generated from enum value: SIGNATURE_ALGORITHM_ML_DSA_65 = 1010;
468
2785
  */
469
- ML_DSA_65 = 16,
2786
+ ML_DSA_65 = 1010,
470
2787
  /**
471
- * @generated from enum value: SIGNATURE_ALGORITHM_ML_DSA_87 = 17;
2788
+ * @generated from enum value: SIGNATURE_ALGORITHM_ML_DSA_87 = 1020;
472
2789
  */
473
- ML_DSA_87 = 17,
2790
+ ML_DSA_87 = 1020,
474
2791
  /**
475
- * @generated from enum value: SIGNATURE_ALGORITHM_SLH_DSA_SHA2_128S = 18;
2792
+ * @generated from enum value: SIGNATURE_ALGORITHM_SLH_DSA_SHA2_128S = 1100;
476
2793
  */
477
- SLH_DSA_SHA2_128S = 18
2794
+ SLH_DSA_SHA2_128S = 1100
478
2795
  }
479
2796
  /**
480
2797
  * Describes the enum reallyme.crypto.v1.SignatureAlgorithm.
@@ -482,7 +2799,9 @@ export declare enum SignatureAlgorithm {
482
2799
  export declare const SignatureAlgorithmSchema: GenEnum<SignatureAlgorithm>;
483
2800
  /**
484
2801
  * KeyAgreementAlgorithm identifies direct shared-secret derivation suites.
485
- * Callers must still feed derived shared secrets through a protocol KDF.
2802
+ * Values 100-199 are Montgomery-form curves and 200-299 are NIST prime
2803
+ * curves. Callers must still feed derived shared secrets through a protocol
2804
+ * KDF.
486
2805
  *
487
2806
  * @generated from enum reallyme.crypto.v1.KeyAgreementAlgorithm
488
2807
  */
@@ -492,29 +2811,30 @@ export declare enum KeyAgreementAlgorithm {
492
2811
  */
493
2812
  UNSPECIFIED = 0,
494
2813
  /**
495
- * @generated from enum value: KEY_AGREEMENT_ALGORITHM_X25519 = 1;
2814
+ * @generated from enum value: KEY_AGREEMENT_ALGORITHM_X25519 = 100;
496
2815
  */
497
- X25519 = 1,
2816
+ X25519 = 100,
498
2817
  /**
499
- * @generated from enum value: KEY_AGREEMENT_ALGORITHM_P256_ECDH = 2;
2818
+ * @generated from enum value: KEY_AGREEMENT_ALGORITHM_P256_ECDH = 200;
500
2819
  */
501
- P256_ECDH = 2,
2820
+ P256_ECDH = 200,
502
2821
  /**
503
- * @generated from enum value: KEY_AGREEMENT_ALGORITHM_P384_ECDH = 3;
2822
+ * @generated from enum value: KEY_AGREEMENT_ALGORITHM_P384_ECDH = 210;
504
2823
  */
505
- P384_ECDH = 3,
2824
+ P384_ECDH = 210,
506
2825
  /**
507
- * @generated from enum value: KEY_AGREEMENT_ALGORITHM_P521_ECDH = 4;
2826
+ * @generated from enum value: KEY_AGREEMENT_ALGORITHM_P521_ECDH = 220;
508
2827
  */
509
- P521_ECDH = 4
2828
+ P521_ECDH = 220
510
2829
  }
511
2830
  /**
512
2831
  * Describes the enum reallyme.crypto.v1.KeyAgreementAlgorithm.
513
2832
  */
514
2833
  export declare const KeyAgreementAlgorithmSchema: GenEnum<KeyAgreementAlgorithm>;
515
2834
  /**
516
- * KemAlgorithm identifies encapsulation suites. X-Wing values are ReallyMe's
517
- * supported hybrid KEM variants over X25519 and ML-KEM.
2835
+ * KemAlgorithm identifies encapsulation suites. X-Wing values are supported
2836
+ * hybrid KEM variants over X25519 and ML-KEM. Values 1000-1099 are
2837
+ * post-quantum KEMs and 1100-1199 are hybrid KEMs.
518
2838
  *
519
2839
  * @generated from enum reallyme.crypto.v1.KemAlgorithm
520
2840
  */
@@ -524,55 +2844,189 @@ export declare enum KemAlgorithm {
524
2844
  */
525
2845
  UNSPECIFIED = 0,
526
2846
  /**
527
- * @generated from enum value: KEM_ALGORITHM_ML_KEM_512 = 1;
528
- */
529
- ML_KEM_512 = 1,
530
- /**
531
- * @generated from enum value: KEM_ALGORITHM_ML_KEM_768 = 2;
2847
+ * @generated from enum value: KEM_ALGORITHM_ML_KEM_512 = 1000;
532
2848
  */
533
- ML_KEM_768 = 2,
2849
+ ML_KEM_512 = 1000,
534
2850
  /**
535
- * @generated from enum value: KEM_ALGORITHM_ML_KEM_1024 = 3;
2851
+ * @generated from enum value: KEM_ALGORITHM_ML_KEM_768 = 1010;
536
2852
  */
537
- ML_KEM_1024 = 3,
2853
+ ML_KEM_768 = 1010,
538
2854
  /**
539
- * @generated from enum value: KEM_ALGORITHM_X_WING_768 = 4;
2855
+ * @generated from enum value: KEM_ALGORITHM_ML_KEM_1024 = 1020;
540
2856
  */
541
- X_WING_768 = 4,
2857
+ ML_KEM_1024 = 1020,
542
2858
  /**
543
- * @generated from enum value: KEM_ALGORITHM_X_WING_1024 = 5;
2859
+ * @generated from enum value: KEM_ALGORITHM_X_WING_768 = 1100;
544
2860
  */
545
- X_WING_1024 = 5
2861
+ X_WING_768 = 1100
546
2862
  }
547
2863
  /**
548
2864
  * Describes the enum reallyme.crypto.v1.KemAlgorithm.
549
2865
  */
550
2866
  export declare const KemAlgorithmSchema: GenEnum<KemAlgorithm>;
551
2867
  /**
552
- * HpkeSuite identifies supported RFC 9180 HPKE Base-mode ciphersuites.
2868
+ * HpkeKemId carries the two-byte HPKE KEM registry identifier. Registered
2869
+ * draft values are append-only wire values even while their defining drafts
2870
+ * continue to evolve. Runtime provider policy separately determines whether a
2871
+ * registered identifier is executable in a given build.
2872
+ *
2873
+ * @generated from enum reallyme.crypto.v1.HpkeKemId
2874
+ */
2875
+ export declare enum HpkeKemId {
2876
+ /**
2877
+ * @generated from enum value: HPKE_KEM_ID_UNSPECIFIED = 0;
2878
+ */
2879
+ UNSPECIFIED = 0,
2880
+ /**
2881
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_P256_HKDF_SHA256 = 16;
2882
+ */
2883
+ DHKEM_P256_HKDF_SHA256 = 16,
2884
+ /**
2885
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_P384_HKDF_SHA384 = 17;
2886
+ */
2887
+ DHKEM_P384_HKDF_SHA384 = 17,
2888
+ /**
2889
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_P521_HKDF_SHA512 = 18;
2890
+ */
2891
+ DHKEM_P521_HKDF_SHA512 = 18,
2892
+ /**
2893
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_CP256_HKDF_SHA256 = 19;
2894
+ */
2895
+ DHKEM_CP256_HKDF_SHA256 = 19,
2896
+ /**
2897
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_CP384_HKDF_SHA384 = 20;
2898
+ */
2899
+ DHKEM_CP384_HKDF_SHA384 = 20,
2900
+ /**
2901
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_CP521_HKDF_SHA512 = 21;
2902
+ */
2903
+ DHKEM_CP521_HKDF_SHA512 = 21,
2904
+ /**
2905
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_SECP256K1_HKDF_SHA256 = 22;
2906
+ */
2907
+ DHKEM_SECP256K1_HKDF_SHA256 = 22,
2908
+ /**
2909
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_X25519_HKDF_SHA256 = 32;
2910
+ */
2911
+ DHKEM_X25519_HKDF_SHA256 = 32,
2912
+ /**
2913
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_X448_HKDF_SHA512 = 33;
2914
+ */
2915
+ DHKEM_X448_HKDF_SHA512 = 33,
2916
+ /**
2917
+ * @generated from enum value: HPKE_KEM_ID_DHKEM_X25519_ELLIGATOR_HKDF_SHA256 = 34;
2918
+ */
2919
+ DHKEM_X25519_ELLIGATOR_HKDF_SHA256 = 34,
2920
+ /**
2921
+ * @generated from enum value: HPKE_KEM_ID_X25519_KYBER768_DRAFT00 = 48;
2922
+ */
2923
+ X25519_KYBER768_DRAFT00 = 48,
2924
+ /**
2925
+ * @generated from enum value: HPKE_KEM_ID_ML_KEM_512 = 64;
2926
+ */
2927
+ ML_KEM_512 = 64,
2928
+ /**
2929
+ * @generated from enum value: HPKE_KEM_ID_ML_KEM_768 = 65;
2930
+ */
2931
+ ML_KEM_768 = 65,
2932
+ /**
2933
+ * @generated from enum value: HPKE_KEM_ID_ML_KEM_1024 = 66;
2934
+ */
2935
+ ML_KEM_1024 = 66,
2936
+ /**
2937
+ * @generated from enum value: HPKE_KEM_ID_ML_KEM_768_P256 = 80;
2938
+ */
2939
+ ML_KEM_768_P256 = 80,
2940
+ /**
2941
+ * @generated from enum value: HPKE_KEM_ID_ML_KEM_1024_P384 = 81;
2942
+ */
2943
+ ML_KEM_1024_P384 = 81,
2944
+ /**
2945
+ * @generated from enum value: HPKE_KEM_ID_X_WING = 25722;
2946
+ */
2947
+ X_WING = 25722
2948
+ }
2949
+ /**
2950
+ * Describes the enum reallyme.crypto.v1.HpkeKemId.
2951
+ */
2952
+ export declare const HpkeKemIdSchema: GenEnum<HpkeKemId>;
2953
+ /**
2954
+ * HpkeKdfId carries the two-byte HPKE KDF registry identifier.
2955
+ *
2956
+ * @generated from enum reallyme.crypto.v1.HpkeKdfId
2957
+ */
2958
+ export declare enum HpkeKdfId {
2959
+ /**
2960
+ * @generated from enum value: HPKE_KDF_ID_UNSPECIFIED = 0;
2961
+ */
2962
+ UNSPECIFIED = 0,
2963
+ /**
2964
+ * @generated from enum value: HPKE_KDF_ID_HKDF_SHA256 = 1;
2965
+ */
2966
+ HKDF_SHA256 = 1,
2967
+ /**
2968
+ * @generated from enum value: HPKE_KDF_ID_HKDF_SHA384 = 2;
2969
+ */
2970
+ HKDF_SHA384 = 2,
2971
+ /**
2972
+ * @generated from enum value: HPKE_KDF_ID_HKDF_SHA512 = 3;
2973
+ */
2974
+ HKDF_SHA512 = 3,
2975
+ /**
2976
+ * @generated from enum value: HPKE_KDF_ID_SHAKE128 = 16;
2977
+ */
2978
+ SHAKE128 = 16,
2979
+ /**
2980
+ * @generated from enum value: HPKE_KDF_ID_SHAKE256 = 17;
2981
+ */
2982
+ SHAKE256 = 17,
2983
+ /**
2984
+ * @generated from enum value: HPKE_KDF_ID_TURBO_SHAKE128 = 18;
2985
+ */
2986
+ TURBO_SHAKE128 = 18,
2987
+ /**
2988
+ * @generated from enum value: HPKE_KDF_ID_TURBO_SHAKE256 = 19;
2989
+ */
2990
+ TURBO_SHAKE256 = 19
2991
+ }
2992
+ /**
2993
+ * Describes the enum reallyme.crypto.v1.HpkeKdfId.
2994
+ */
2995
+ export declare const HpkeKdfIdSchema: GenEnum<HpkeKdfId>;
2996
+ /**
2997
+ * HpkeAeadId carries the two-byte HPKE AEAD registry identifier.
553
2998
  *
554
- * @generated from enum reallyme.crypto.v1.HpkeSuite
2999
+ * @generated from enum reallyme.crypto.v1.HpkeAeadId
555
3000
  */
556
- export declare enum HpkeSuite {
3001
+ export declare enum HpkeAeadId {
557
3002
  /**
558
- * @generated from enum value: HPKE_SUITE_UNSPECIFIED = 0;
3003
+ * @generated from enum value: HPKE_AEAD_ID_UNSPECIFIED = 0;
559
3004
  */
560
3005
  UNSPECIFIED = 0,
561
3006
  /**
562
- * @generated from enum value: HPKE_SUITE_DHKEM_P256_HKDF_SHA256_HKDF_SHA256_AES_256_GCM = 1;
3007
+ * @generated from enum value: HPKE_AEAD_ID_AES_128_GCM = 1;
3008
+ */
3009
+ AES_128_GCM = 1,
3010
+ /**
3011
+ * @generated from enum value: HPKE_AEAD_ID_AES_256_GCM = 2;
3012
+ */
3013
+ AES_256_GCM = 2,
3014
+ /**
3015
+ * @generated from enum value: HPKE_AEAD_ID_CHACHA20_POLY1305 = 3;
563
3016
  */
564
- DHKEM_P256_HKDF_SHA256_HKDF_SHA256_AES_256_GCM = 1,
3017
+ CHACHA20_POLY1305 = 3,
565
3018
  /**
566
- * @generated from enum value: HPKE_SUITE_DHKEM_X25519_HKDF_SHA256_HKDF_SHA256_CHACHA20_POLY1305 = 2;
3019
+ * @generated from enum value: HPKE_AEAD_ID_EXPORT_ONLY = 65535;
567
3020
  */
568
- DHKEM_X25519_HKDF_SHA256_HKDF_SHA256_CHACHA20_POLY1305 = 2
3021
+ EXPORT_ONLY = 65535
569
3022
  }
570
3023
  /**
571
- * Describes the enum reallyme.crypto.v1.HpkeSuite.
3024
+ * Describes the enum reallyme.crypto.v1.HpkeAeadId.
572
3025
  */
573
- export declare const HpkeSuiteSchema: GenEnum<HpkeSuite>;
3026
+ export declare const HpkeAeadIdSchema: GenEnum<HpkeAeadId>;
574
3027
  /**
575
- * AeadAlgorithm identifies authenticated-encryption suites.
3028
+ * AeadAlgorithm identifies authenticated-encryption suites. Values 100-199 are
3029
+ * AES-based suites and 200-299 are ChaCha-based suites.
576
3030
  *
577
3031
  * @generated from enum reallyme.crypto.v1.AeadAlgorithm
578
3032
  */
@@ -582,29 +3036,29 @@ export declare enum AeadAlgorithm {
582
3036
  */
583
3037
  UNSPECIFIED = 0,
584
3038
  /**
585
- * @generated from enum value: AEAD_ALGORITHM_AES_256_GCM = 1;
3039
+ * @generated from enum value: AEAD_ALGORITHM_AES_128_GCM = 100;
586
3040
  */
587
- AES_256_GCM = 1,
3041
+ AES_128_GCM = 100,
588
3042
  /**
589
- * @generated from enum value: AEAD_ALGORITHM_AES_256_GCM_SIV = 2;
3043
+ * @generated from enum value: AEAD_ALGORITHM_AES_192_GCM = 110;
590
3044
  */
591
- AES_256_GCM_SIV = 2,
3045
+ AES_192_GCM = 110,
592
3046
  /**
593
- * @generated from enum value: AEAD_ALGORITHM_CHACHA20_POLY1305 = 3;
3047
+ * @generated from enum value: AEAD_ALGORITHM_AES_256_GCM = 120;
594
3048
  */
595
- CHACHA20_POLY1305 = 3,
3049
+ AES_256_GCM = 120,
596
3050
  /**
597
- * @generated from enum value: AEAD_ALGORITHM_XCHACHA20_POLY1305 = 4;
3051
+ * @generated from enum value: AEAD_ALGORITHM_AES_256_GCM_SIV = 130;
598
3052
  */
599
- XCHACHA20_POLY1305 = 4,
3053
+ AES_256_GCM_SIV = 130,
600
3054
  /**
601
- * @generated from enum value: AEAD_ALGORITHM_AES_128_GCM = 5;
3055
+ * @generated from enum value: AEAD_ALGORITHM_CHACHA20_POLY1305 = 200;
602
3056
  */
603
- AES_128_GCM = 5,
3057
+ CHACHA20_POLY1305 = 200,
604
3058
  /**
605
- * @generated from enum value: AEAD_ALGORITHM_AES_192_GCM = 6;
3059
+ * @generated from enum value: AEAD_ALGORITHM_XCHACHA20_POLY1305 = 210;
606
3060
  */
607
- AES_192_GCM = 6
3061
+ XCHACHA20_POLY1305 = 210
608
3062
  }
609
3063
  /**
610
3064
  * Describes the enum reallyme.crypto.v1.AeadAlgorithm.
@@ -612,6 +3066,7 @@ export declare enum AeadAlgorithm {
612
3066
  export declare const AeadAlgorithmSchema: GenEnum<AeadAlgorithm>;
613
3067
  /**
614
3068
  * HashAlgorithm identifies digest algorithms exposed by the hash primitives.
3069
+ * Values 100-199 are SHA-2 and 200-299 are SHA-3.
615
3070
  *
616
3071
  * @generated from enum reallyme.crypto.v1.HashAlgorithm
617
3072
  */
@@ -621,40 +3076,41 @@ export declare enum HashAlgorithm {
621
3076
  */
622
3077
  UNSPECIFIED = 0,
623
3078
  /**
624
- * @generated from enum value: HASH_ALGORITHM_SHA2_256 = 1;
3079
+ * @generated from enum value: HASH_ALGORITHM_SHA2_256 = 100;
625
3080
  */
626
- SHA2_256 = 1,
3081
+ SHA2_256 = 100,
627
3082
  /**
628
- * @generated from enum value: HASH_ALGORITHM_SHA2_384 = 2;
3083
+ * @generated from enum value: HASH_ALGORITHM_SHA2_384 = 110;
629
3084
  */
630
- SHA2_384 = 2,
3085
+ SHA2_384 = 110,
631
3086
  /**
632
- * @generated from enum value: HASH_ALGORITHM_SHA2_512 = 3;
3087
+ * @generated from enum value: HASH_ALGORITHM_SHA2_512 = 120;
633
3088
  */
634
- SHA2_512 = 3,
3089
+ SHA2_512 = 120,
635
3090
  /**
636
- * @generated from enum value: HASH_ALGORITHM_SHA3_224 = 4;
3091
+ * @generated from enum value: HASH_ALGORITHM_SHA3_224 = 200;
637
3092
  */
638
- SHA3_224 = 4,
3093
+ SHA3_224 = 200,
639
3094
  /**
640
- * @generated from enum value: HASH_ALGORITHM_SHA3_256 = 5;
3095
+ * @generated from enum value: HASH_ALGORITHM_SHA3_256 = 210;
641
3096
  */
642
- SHA3_256 = 5,
3097
+ SHA3_256 = 210,
643
3098
  /**
644
- * @generated from enum value: HASH_ALGORITHM_SHA3_384 = 6;
3099
+ * @generated from enum value: HASH_ALGORITHM_SHA3_384 = 220;
645
3100
  */
646
- SHA3_384 = 6,
3101
+ SHA3_384 = 220,
647
3102
  /**
648
- * @generated from enum value: HASH_ALGORITHM_SHA3_512 = 7;
3103
+ * @generated from enum value: HASH_ALGORITHM_SHA3_512 = 230;
649
3104
  */
650
- SHA3_512 = 7
3105
+ SHA3_512 = 230
651
3106
  }
652
3107
  /**
653
3108
  * Describes the enum reallyme.crypto.v1.HashAlgorithm.
654
3109
  */
655
3110
  export declare const HashAlgorithmSchema: GenEnum<HashAlgorithm>;
656
3111
  /**
657
- * MacAlgorithm identifies message-authentication-code suites.
3112
+ * MacAlgorithm identifies message-authentication-code suites. Values 100-199
3113
+ * are HMAC suites over SHA-2.
658
3114
  *
659
3115
  * @generated from enum reallyme.crypto.v1.MacAlgorithm
660
3116
  */
@@ -664,21 +3120,32 @@ export declare enum MacAlgorithm {
664
3120
  */
665
3121
  UNSPECIFIED = 0,
666
3122
  /**
667
- * @generated from enum value: MAC_ALGORITHM_HMAC_SHA256 = 1;
3123
+ * @generated from enum value: MAC_ALGORITHM_HMAC_SHA256 = 100;
3124
+ */
3125
+ HMAC_SHA256 = 100,
3126
+ /**
3127
+ * @generated from enum value: MAC_ALGORITHM_HMAC_SHA384 = 110;
668
3128
  */
669
- HMAC_SHA256 = 1,
3129
+ HMAC_SHA384 = 110,
670
3130
  /**
671
- * @generated from enum value: MAC_ALGORITHM_HMAC_SHA512 = 2;
3131
+ * @generated from enum value: MAC_ALGORITHM_HMAC_SHA512 = 120;
672
3132
  */
673
- HMAC_SHA512 = 2
3133
+ HMAC_SHA512 = 120
674
3134
  }
675
3135
  /**
676
3136
  * Describes the enum reallyme.crypto.v1.MacAlgorithm.
677
3137
  */
678
3138
  export declare const MacAlgorithmSchema: GenEnum<MacAlgorithm>;
679
3139
  /**
680
- * KdfAlgorithm identifies key-derivation functions. PBKDF2 values are retained
681
- * for legacy interoperability; new password storage should prefer Argon2id.
3140
+ * KdfAlgorithm identifies key-derivation functions. PBKDF2 values remain for
3141
+ * standards and password-record interoperability; new password storage should
3142
+ * prefer Argon2id.
3143
+ * Values are grouped by construction:
3144
+ * 100-199: extract-and-expand KDFs
3145
+ * 200-299: memory-hard password KDFs
3146
+ * 300-399: password-record KDFs
3147
+ * 400-499: concatenation KDFs
3148
+ * 500-599: XOF/MAC-based KDFs
682
3149
  *
683
3150
  * @generated from enum reallyme.crypto.v1.KdfAlgorithm
684
3151
  */
@@ -688,32 +3155,66 @@ export declare enum KdfAlgorithm {
688
3155
  */
689
3156
  UNSPECIFIED = 0,
690
3157
  /**
691
- * @generated from enum value: KDF_ALGORITHM_HKDF_SHA256 = 1;
3158
+ * @generated from enum value: KDF_ALGORITHM_HKDF_SHA256 = 100;
692
3159
  */
693
- HKDF_SHA256 = 1,
3160
+ HKDF_SHA256 = 100,
3161
+ /**
3162
+ * @generated from enum value: KDF_ALGORITHM_HKDF_SHA384 = 110;
3163
+ */
3164
+ HKDF_SHA384 = 110,
3165
+ /**
3166
+ * @generated from enum value: KDF_ALGORITHM_ARGON2ID = 200;
3167
+ */
3168
+ ARGON2ID = 200,
694
3169
  /**
695
- * @generated from enum value: KDF_ALGORITHM_ARGON2ID = 2;
3170
+ * @generated from enum value: KDF_ALGORITHM_PBKDF2_HMAC_SHA256 = 300;
696
3171
  */
697
- ARGON2ID = 2,
3172
+ PBKDF2_HMAC_SHA256 = 300,
698
3173
  /**
699
- * @generated from enum value: KDF_ALGORITHM_PBKDF2_HMAC_SHA256 = 3;
3174
+ * @generated from enum value: KDF_ALGORITHM_PBKDF2_HMAC_SHA512 = 310;
700
3175
  */
701
- PBKDF2_HMAC_SHA256 = 3,
3176
+ PBKDF2_HMAC_SHA512 = 310,
702
3177
  /**
703
- * @generated from enum value: KDF_ALGORITHM_PBKDF2_HMAC_SHA512 = 4;
3178
+ * @generated from enum value: KDF_ALGORITHM_JWA_CONCAT_KDF_SHA256 = 400;
704
3179
  */
705
- PBKDF2_HMAC_SHA512 = 4,
3180
+ JWA_CONCAT_KDF_SHA256 = 400,
706
3181
  /**
707
- * @generated from enum value: KDF_ALGORITHM_JWA_CONCAT_KDF_SHA256 = 5;
3182
+ * @generated from enum value: KDF_ALGORITHM_KMAC_256 = 500;
708
3183
  */
709
- JWA_CONCAT_KDF_SHA256 = 5
3184
+ KMAC_256 = 500
710
3185
  }
711
3186
  /**
712
3187
  * Describes the enum reallyme.crypto.v1.KdfAlgorithm.
713
3188
  */
714
3189
  export declare const KdfAlgorithmSchema: GenEnum<KdfAlgorithm>;
715
3190
  /**
716
- * KeyWrapAlgorithm identifies key-wrapping algorithms.
3191
+ * Argon2idKdfVersion selects one immutable, reviewed resource-cost profile.
3192
+ * Numeric versions are stable API values shared by the direct SDK and
3193
+ * generated operation boundaries.
3194
+ *
3195
+ * @generated from enum reallyme.crypto.v1.Argon2idKdfVersion
3196
+ */
3197
+ export declare enum Argon2idKdfVersion {
3198
+ /**
3199
+ * @generated from enum value: ARGON2ID_KDF_VERSION_UNSPECIFIED = 0;
3200
+ */
3201
+ UNSPECIFIED = 0,
3202
+ /**
3203
+ * @generated from enum value: ARGON2ID_KDF_VERSION_V1 = 1;
3204
+ */
3205
+ V1 = 1,
3206
+ /**
3207
+ * @generated from enum value: ARGON2ID_KDF_VERSION_V2 = 2;
3208
+ */
3209
+ V2 = 2
3210
+ }
3211
+ /**
3212
+ * Describes the enum reallyme.crypto.v1.Argon2idKdfVersion.
3213
+ */
3214
+ export declare const Argon2idKdfVersionSchema: GenEnum<Argon2idKdfVersion>;
3215
+ /**
3216
+ * KeyWrapAlgorithm identifies key-wrapping algorithms. Values 100-199 are
3217
+ * AES-based key-wrapping suites.
717
3218
  *
718
3219
  * @generated from enum reallyme.crypto.v1.KeyWrapAlgorithm
719
3220
  */
@@ -723,9 +3224,17 @@ export declare enum KeyWrapAlgorithm {
723
3224
  */
724
3225
  UNSPECIFIED = 0,
725
3226
  /**
726
- * @generated from enum value: KEY_WRAP_ALGORITHM_AES_256_KW = 1;
3227
+ * @generated from enum value: KEY_WRAP_ALGORITHM_AES_128_KW = 100;
3228
+ */
3229
+ AES_128_KW = 100,
3230
+ /**
3231
+ * @generated from enum value: KEY_WRAP_ALGORITHM_AES_192_KW = 110;
727
3232
  */
728
- AES_256_KW = 1
3233
+ AES_192_KW = 110,
3234
+ /**
3235
+ * @generated from enum value: KEY_WRAP_ALGORITHM_AES_256_KW = 120;
3236
+ */
3237
+ AES_256_KW = 120
729
3238
  }
730
3239
  /**
731
3240
  * Describes the enum reallyme.crypto.v1.KeyWrapAlgorithm.
@@ -848,3 +3357,225 @@ export declare enum MulticodecKeyAlgorithm {
848
3357
  * Describes the enum reallyme.crypto.v1.MulticodecKeyAlgorithm.
849
3358
  */
850
3359
  export declare const MulticodecKeyAlgorithmSchema: GenEnum<MulticodecKeyAlgorithm>;
3360
+ /**
3361
+ * RsaPublicKeyDerEncoding identifies the accepted DER wrapper for RSA public
3362
+ * keys at verification boundaries.
3363
+ *
3364
+ * @generated from enum reallyme.crypto.v1.RsaPublicKeyDerEncoding
3365
+ */
3366
+ export declare enum RsaPublicKeyDerEncoding {
3367
+ /**
3368
+ * @generated from enum value: RSA_PUBLIC_KEY_DER_ENCODING_UNSPECIFIED = 0;
3369
+ */
3370
+ UNSPECIFIED = 0,
3371
+ /**
3372
+ * @generated from enum value: RSA_PUBLIC_KEY_DER_ENCODING_PKCS1 = 1;
3373
+ */
3374
+ PKCS1 = 1,
3375
+ /**
3376
+ * @generated from enum value: RSA_PUBLIC_KEY_DER_ENCODING_SPKI = 2;
3377
+ */
3378
+ SPKI = 2
3379
+ }
3380
+ /**
3381
+ * Describes the enum reallyme.crypto.v1.RsaPublicKeyDerEncoding.
3382
+ */
3383
+ export declare const RsaPublicKeyDerEncodingSchema: GenEnum<RsaPublicKeyDerEncoding>;
3384
+ /**
3385
+ * PlatformKeyProvider identifies the platform owner of a non-exportable key.
3386
+ * Hardware residency is represented by security level, not by inventing a
3387
+ * separate cryptographic algorithm value.
3388
+ *
3389
+ * @generated from enum reallyme.crypto.v1.PlatformKeyProvider
3390
+ */
3391
+ export declare enum PlatformKeyProvider {
3392
+ /**
3393
+ * @generated from enum value: PLATFORM_KEY_PROVIDER_UNSPECIFIED = 0;
3394
+ */
3395
+ UNSPECIFIED = 0,
3396
+ /**
3397
+ * @generated from enum value: PLATFORM_KEY_PROVIDER_APPLE_KEYCHAIN = 100;
3398
+ */
3399
+ APPLE_KEYCHAIN = 100,
3400
+ /**
3401
+ * @generated from enum value: PLATFORM_KEY_PROVIDER_ANDROID_KEYSTORE = 200;
3402
+ */
3403
+ ANDROID_KEYSTORE = 200
3404
+ }
3405
+ /**
3406
+ * Describes the enum reallyme.crypto.v1.PlatformKeyProvider.
3407
+ */
3408
+ export declare const PlatformKeyProviderSchema: GenEnum<PlatformKeyProvider>;
3409
+ /**
3410
+ * PlatformKeySecurityLevel records requested and actual key residency. Actual
3411
+ * residency must be reported by the provider after generation or lookup; a
3412
+ * requested value is not evidence by itself.
3413
+ *
3414
+ * @generated from enum reallyme.crypto.v1.PlatformKeySecurityLevel
3415
+ */
3416
+ export declare enum PlatformKeySecurityLevel {
3417
+ /**
3418
+ * @generated from enum value: PLATFORM_KEY_SECURITY_LEVEL_UNSPECIFIED = 0;
3419
+ */
3420
+ UNSPECIFIED = 0,
3421
+ /**
3422
+ * @generated from enum value: PLATFORM_KEY_SECURITY_LEVEL_SOFTWARE = 1;
3423
+ */
3424
+ SOFTWARE = 1,
3425
+ /**
3426
+ * @generated from enum value: PLATFORM_KEY_SECURITY_LEVEL_TRUSTED_EXECUTION_ENVIRONMENT = 2;
3427
+ */
3428
+ TRUSTED_EXECUTION_ENVIRONMENT = 2,
3429
+ /**
3430
+ * @generated from enum value: PLATFORM_KEY_SECURITY_LEVEL_SECURE_ENCLAVE = 3;
3431
+ */
3432
+ SECURE_ENCLAVE = 3,
3433
+ /**
3434
+ * @generated from enum value: PLATFORM_KEY_SECURITY_LEVEL_STRONGBOX = 4;
3435
+ */
3436
+ STRONGBOX = 4
3437
+ }
3438
+ /**
3439
+ * Describes the enum reallyme.crypto.v1.PlatformKeySecurityLevel.
3440
+ */
3441
+ export declare const PlatformKeySecurityLevelSchema: GenEnum<PlatformKeySecurityLevel>;
3442
+ /**
3443
+ * @generated from enum reallyme.crypto.v1.PlatformKeyPurpose
3444
+ */
3445
+ export declare enum PlatformKeyPurpose {
3446
+ /**
3447
+ * @generated from enum value: PLATFORM_KEY_PURPOSE_UNSPECIFIED = 0;
3448
+ */
3449
+ UNSPECIFIED = 0,
3450
+ /**
3451
+ * @generated from enum value: PLATFORM_KEY_PURPOSE_SIGNING = 1;
3452
+ */
3453
+ SIGNING = 1,
3454
+ /**
3455
+ * @generated from enum value: PLATFORM_KEY_PURPOSE_KEY_AGREEMENT = 2;
3456
+ */
3457
+ KEY_AGREEMENT = 2
3458
+ }
3459
+ /**
3460
+ * Describes the enum reallyme.crypto.v1.PlatformKeyPurpose.
3461
+ */
3462
+ export declare const PlatformKeyPurposeSchema: GenEnum<PlatformKeyPurpose>;
3463
+ /**
3464
+ * @generated from enum reallyme.crypto.v1.AppleSecureEnclaveAccessPolicy
3465
+ */
3466
+ export declare enum AppleSecureEnclaveAccessPolicy {
3467
+ /**
3468
+ * @generated from enum value: APPLE_SECURE_ENCLAVE_ACCESS_POLICY_UNSPECIFIED = 0;
3469
+ */
3470
+ UNSPECIFIED = 0,
3471
+ /**
3472
+ * @generated from enum value: APPLE_SECURE_ENCLAVE_ACCESS_POLICY_PRIVATE_KEY_USAGE = 1;
3473
+ */
3474
+ PRIVATE_KEY_USAGE = 1,
3475
+ /**
3476
+ * @generated from enum value: APPLE_SECURE_ENCLAVE_ACCESS_POLICY_USER_PRESENCE = 2;
3477
+ */
3478
+ USER_PRESENCE = 2,
3479
+ /**
3480
+ * @generated from enum value: APPLE_SECURE_ENCLAVE_ACCESS_POLICY_BIOMETRY_ANY = 3;
3481
+ */
3482
+ BIOMETRY_ANY = 3,
3483
+ /**
3484
+ * @generated from enum value: APPLE_SECURE_ENCLAVE_ACCESS_POLICY_BIOMETRY_CURRENT_SET = 4;
3485
+ */
3486
+ BIOMETRY_CURRENT_SET = 4,
3487
+ /**
3488
+ * @generated from enum value: APPLE_SECURE_ENCLAVE_ACCESS_POLICY_DEVICE_PASSCODE = 5;
3489
+ */
3490
+ DEVICE_PASSCODE = 5
3491
+ }
3492
+ /**
3493
+ * Describes the enum reallyme.crypto.v1.AppleSecureEnclaveAccessPolicy.
3494
+ */
3495
+ export declare const AppleSecureEnclaveAccessPolicySchema: GenEnum<AppleSecureEnclaveAccessPolicy>;
3496
+ /**
3497
+ * @generated from enum reallyme.crypto.v1.AppleKeychainAccessibility
3498
+ */
3499
+ export declare enum AppleKeychainAccessibility {
3500
+ /**
3501
+ * @generated from enum value: APPLE_KEYCHAIN_ACCESSIBILITY_UNSPECIFIED = 0;
3502
+ */
3503
+ UNSPECIFIED = 0,
3504
+ /**
3505
+ * @generated from enum value: APPLE_KEYCHAIN_ACCESSIBILITY_WHEN_UNLOCKED_THIS_DEVICE_ONLY = 1;
3506
+ */
3507
+ WHEN_UNLOCKED_THIS_DEVICE_ONLY = 1,
3508
+ /**
3509
+ * @generated from enum value: APPLE_KEYCHAIN_ACCESSIBILITY_WHEN_PASSCODE_SET_THIS_DEVICE_ONLY = 2;
3510
+ */
3511
+ WHEN_PASSCODE_SET_THIS_DEVICE_ONLY = 2
3512
+ }
3513
+ /**
3514
+ * Describes the enum reallyme.crypto.v1.AppleKeychainAccessibility.
3515
+ */
3516
+ export declare const AppleKeychainAccessibilitySchema: GenEnum<AppleKeychainAccessibility>;
3517
+ /**
3518
+ * CryptoVerificationStatus avoids using a bare bool in protocol results where
3519
+ * "unset" and "false" need to remain distinguishable.
3520
+ *
3521
+ * @generated from enum reallyme.crypto.v1.CryptoVerificationStatus
3522
+ */
3523
+ export declare enum CryptoVerificationStatus {
3524
+ /**
3525
+ * @generated from enum value: CRYPTO_VERIFICATION_STATUS_UNSPECIFIED = 0;
3526
+ */
3527
+ UNSPECIFIED = 0,
3528
+ /**
3529
+ * @generated from enum value: CRYPTO_VERIFICATION_STATUS_VALID = 1;
3530
+ */
3531
+ VALID = 1,
3532
+ /**
3533
+ * Well-formed verification input was processed, but the MAC, signature,
3534
+ * proof, or comparison did not verify. Malformed input, unsupported
3535
+ * algorithms, provider failures, and backend failures use ERROR plus the
3536
+ * structured CryptoError field instead.
3537
+ *
3538
+ * @generated from enum value: CRYPTO_VERIFICATION_STATUS_INVALID = 2;
3539
+ */
3540
+ INVALID = 2,
3541
+ /**
3542
+ * @generated from enum value: CRYPTO_VERIFICATION_STATUS_ERROR = 3;
3543
+ */
3544
+ ERROR = 3
3545
+ }
3546
+ /**
3547
+ * Describes the enum reallyme.crypto.v1.CryptoVerificationStatus.
3548
+ */
3549
+ export declare const CryptoVerificationStatusSchema: GenEnum<CryptoVerificationStatus>;
3550
+ /**
3551
+ * CryptoProviderSupportStatus mirrors the release provider matrix at a stable
3552
+ * wire boundary without exposing backend exception text or dynamic logs.
3553
+ *
3554
+ * @generated from enum reallyme.crypto.v1.CryptoProviderSupportStatus
3555
+ */
3556
+ export declare enum CryptoProviderSupportStatus {
3557
+ /**
3558
+ * @generated from enum value: CRYPTO_PROVIDER_SUPPORT_STATUS_UNSPECIFIED = 0;
3559
+ */
3560
+ UNSPECIFIED = 0,
3561
+ /**
3562
+ * @generated from enum value: CRYPTO_PROVIDER_SUPPORT_STATUS_SUPPORTED = 1;
3563
+ */
3564
+ SUPPORTED = 1,
3565
+ /**
3566
+ * @generated from enum value: CRYPTO_PROVIDER_SUPPORT_STATUS_PROVIDER_AWARE = 2;
3567
+ */
3568
+ PROVIDER_AWARE = 2,
3569
+ /**
3570
+ * @generated from enum value: CRYPTO_PROVIDER_SUPPORT_STATUS_PARTIAL = 3;
3571
+ */
3572
+ PARTIAL = 3,
3573
+ /**
3574
+ * @generated from enum value: CRYPTO_PROVIDER_SUPPORT_STATUS_UNSUPPORTED = 4;
3575
+ */
3576
+ UNSUPPORTED = 4
3577
+ }
3578
+ /**
3579
+ * Describes the enum reallyme.crypto.v1.CryptoProviderSupportStatus.
3580
+ */
3581
+ export declare const CryptoProviderSupportStatusSchema: GenEnum<CryptoProviderSupportStatus>;