@freedomofpress/sigstore-browser 0.1.15 → 0.1.16

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 (132) hide show
  1. package/dist/bundle.d.ts +2 -3
  2. package/dist/bundle.js.map +1 -1
  3. package/dist/cli.d.ts +0 -1
  4. package/dist/cli.js.map +1 -1
  5. package/dist/dsse.d.ts +0 -1
  6. package/dist/dsse.js.map +1 -1
  7. package/dist/errors.d.ts +0 -1
  8. package/dist/errors.js.map +1 -1
  9. package/dist/index.d.ts +9 -10
  10. package/dist/index.js +5 -5
  11. package/dist/index.js.map +1 -1
  12. package/dist/interfaces.d.ts +1 -2
  13. package/dist/interfaces.js +1 -1
  14. package/dist/interfaces.js.map +1 -1
  15. package/dist/oid.d.ts +0 -1
  16. package/dist/oid.js.map +1 -1
  17. package/dist/policy.d.ts +0 -1
  18. package/dist/policy.js +1 -1
  19. package/dist/policy.js.map +1 -1
  20. package/dist/rfc3161/error.d.ts +0 -1
  21. package/dist/rfc3161/error.js.map +1 -1
  22. package/dist/rfc3161/index.d.ts +0 -1
  23. package/dist/rfc3161/index.js.map +1 -1
  24. package/dist/rfc3161/timestamp.d.ts +0 -1
  25. package/dist/rfc3161/timestamp.js.map +1 -1
  26. package/dist/rfc3161/tstinfo.d.ts +0 -1
  27. package/dist/rfc3161/tstinfo.js.map +1 -1
  28. package/dist/sigstore.d.ts +2 -3
  29. package/dist/sigstore.js +9 -9
  30. package/dist/sigstore.js.map +1 -1
  31. package/dist/timestamp/tsa.d.ts +1 -2
  32. package/dist/timestamp/tsa.js +1 -1
  33. package/dist/timestamp/tsa.js.map +1 -1
  34. package/dist/tlog/body.d.ts +0 -1
  35. package/dist/tlog/body.js +1 -1
  36. package/dist/tlog/body.js.map +1 -1
  37. package/dist/tlog/checkpoint.d.ts +0 -1
  38. package/dist/tlog/checkpoint.js.map +1 -1
  39. package/dist/tlog/dsse.d.ts +0 -1
  40. package/dist/tlog/dsse.js +3 -0
  41. package/dist/tlog/dsse.js.map +1 -1
  42. package/dist/tlog/hashedrekord.d.ts +0 -1
  43. package/dist/tlog/hashedrekord.js.map +1 -1
  44. package/dist/tlog/intoto.d.ts +0 -1
  45. package/dist/tlog/intoto.js.map +1 -1
  46. package/dist/tlog/merkle.d.ts +0 -1
  47. package/dist/tlog/merkle.js.map +1 -1
  48. package/dist/trust/tuf-root.d.ts +0 -1
  49. package/dist/trust/tuf-root.js.map +1 -1
  50. package/dist/trust/tuf.d.ts +0 -1
  51. package/dist/trust/tuf.js.map +1 -1
  52. package/dist/x509/cert.d.ts +0 -1
  53. package/dist/x509/cert.js +1 -1
  54. package/dist/x509/cert.js.map +1 -1
  55. package/dist/x509/chain.d.ts +0 -1
  56. package/dist/x509/chain.js +2 -2
  57. package/dist/x509/chain.js.map +1 -1
  58. package/dist/x509/ext.d.ts +0 -1
  59. package/dist/x509/ext.js.map +1 -1
  60. package/dist/x509/index.d.ts +1 -2
  61. package/dist/x509/index.js +1 -1
  62. package/dist/x509/index.js.map +1 -1
  63. package/dist/x509/sct.d.ts +0 -1
  64. package/dist/x509/sct.js.map +1 -1
  65. package/package.json +15 -8
  66. package/.github/workflows/conformance.yml +0 -29
  67. package/.github/workflows/publish.yml +0 -47
  68. package/dist/bundle.d.ts.map +0 -1
  69. package/dist/cli.d.ts.map +0 -1
  70. package/dist/dsse.d.ts.map +0 -1
  71. package/dist/errors.d.ts.map +0 -1
  72. package/dist/index.d.ts.map +0 -1
  73. package/dist/interfaces.d.ts.map +0 -1
  74. package/dist/oid.d.ts.map +0 -1
  75. package/dist/policy.d.ts.map +0 -1
  76. package/dist/rfc3161/error.d.ts.map +0 -1
  77. package/dist/rfc3161/index.d.ts.map +0 -1
  78. package/dist/rfc3161/timestamp.d.ts.map +0 -1
  79. package/dist/rfc3161/tstinfo.d.ts.map +0 -1
  80. package/dist/sigstore.d.ts.map +0 -1
  81. package/dist/timestamp/tsa.d.ts.map +0 -1
  82. package/dist/tlog/body.d.ts.map +0 -1
  83. package/dist/tlog/checkpoint.d.ts.map +0 -1
  84. package/dist/tlog/dsse.d.ts.map +0 -1
  85. package/dist/tlog/hashedrekord.d.ts.map +0 -1
  86. package/dist/tlog/intoto.d.ts.map +0 -1
  87. package/dist/tlog/merkle.d.ts.map +0 -1
  88. package/dist/trust/tuf-root.d.ts.map +0 -1
  89. package/dist/trust/tuf.d.ts.map +0 -1
  90. package/dist/x509/cert.d.ts.map +0 -1
  91. package/dist/x509/chain.d.ts.map +0 -1
  92. package/dist/x509/ext.d.ts.map +0 -1
  93. package/dist/x509/index.d.ts.map +0 -1
  94. package/dist/x509/sct.d.ts.map +0 -1
  95. package/eslint.config.mjs +0 -31
  96. package/src/bundle.ts +0 -186
  97. package/src/cli.ts +0 -290
  98. package/src/dsse.ts +0 -49
  99. package/src/ed25519.browser.test.ts +0 -76
  100. package/src/errors.ts +0 -82
  101. package/src/index.browser.test.ts +0 -301
  102. package/src/index.ts +0 -93
  103. package/src/interfaces.ts +0 -150
  104. package/src/oid.ts +0 -34
  105. package/src/policy.ts +0 -476
  106. package/src/rfc3161/error.ts +0 -16
  107. package/src/rfc3161/index.ts +0 -17
  108. package/src/rfc3161/timestamp.ts +0 -268
  109. package/src/rfc3161/tstinfo.ts +0 -78
  110. package/src/security.browser.test.ts +0 -249
  111. package/src/sigstore.ts +0 -605
  112. package/src/timestamp/tsa.ts +0 -212
  113. package/src/tlog/body.ts +0 -84
  114. package/src/tlog/checkpoint.ts +0 -154
  115. package/src/tlog/dsse.ts +0 -153
  116. package/src/tlog/hashedrekord.ts +0 -136
  117. package/src/tlog/intoto.ts +0 -109
  118. package/src/tlog/merkle.ts +0 -152
  119. package/src/trust/README.md +0 -38
  120. package/src/trust/tuf-root.ts +0 -3
  121. package/src/trust/tuf.ts +0 -233
  122. package/src/verify.browser.test.ts +0 -281
  123. package/src/x509/cert.ts +0 -569
  124. package/src/x509/chain.ts +0 -212
  125. package/src/x509/ext.ts +0 -356
  126. package/src/x509/index.ts +0 -19
  127. package/src/x509/sct.ts +0 -156
  128. package/test/fixtures/rekor2.ts +0 -14
  129. package/test/fixtures/sigstore.ts +0 -13
  130. package/tsconfig.json +0 -18
  131. package/vite.config.playwright.ts +0 -14
  132. package/vite.config.ts +0 -18
@@ -1 +1 @@
1
- {"version":3,"file":"cert.js","sourceRoot":"","sources":["../../src/x509/cert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cert.js","sourceRoot":"","sources":["../../src/x509/cert.ts"],"names":[],"mappings":"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","sourcesContent":["/*\nCopyright 2023 The Sigstore Authors.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\nimport {\n ASN1Obj,\n importKey,\n toDER,\n uint8ArrayEqual,\n Uint8ArrayToBase64,\n verifySignature,\n} from \"@freedomofpress/crypto-browser\";\n\nimport { KeyTypes } from \"../interfaces.js\";\nimport { DEFAULT_HASH_ALGORITHM, ECDSA_CURVE_NAMES, ECDSA_SIGNATURE_ALGOS, OID_RSASSA_PSS, RSA_SIGNATURE_ALGOS, SHA2_HASH_ALGOS } from \"../oid.js\";\nimport {\n X509AuthorityKeyIDExtension,\n X509BasicConstraintsExtension,\n X509BuildConfigDigestExtension,\n X509BuildConfigURIExtension,\n X509BuildSignerDigestExtension,\n X509BuildSignerURIExtension,\n X509BuildTriggerExtension,\n X509Extension,\n X509FulcioIssuerV1,\n X509FulcioIssuerV2,\n X509GitHubWorkflowNameExtension,\n X509GitHubWorkflowRefExtension,\n X509GitHubWorkflowRepositoryExtension,\n X509GitHubWorkflowSHAExtension,\n X509GitHubWorkflowTriggerExtension,\n X509KeyUsageExtension,\n X509RunInvocationURIExtension,\n X509RunnerEnvironmentExtension,\n X509SCTExtension,\n X509SourceRepositoryDigestExtension,\n X509SourceRepositoryIdentifierExtension,\n X509SourceRepositoryOwnerIdentifierExtension,\n X509SourceRepositoryOwnerURIExtension,\n X509SourceRepositoryRefExtension,\n X509SourceRepositoryURIExtension,\n X509SourceRepositoryVisibilityExtension,\n X509SubjectAlternativeNameExtension,\n X509SubjectKeyIDExtension,\n} from \"./ext.js\";\n\n// Standard X.509 extension OIDs\nconst EXTENSION_OID_SUBJECT_KEY_ID = \"2.5.29.14\";\nconst EXTENSION_OID_KEY_USAGE = \"2.5.29.15\";\nconst EXTENSION_OID_SUBJECT_ALT_NAME = \"2.5.29.17\";\nconst EXTENSION_OID_BASIC_CONSTRAINTS = \"2.5.29.19\";\nconst EXTENSION_OID_AUTHORITY_KEY_ID = \"2.5.29.35\";\n\n// CT Log SCT extension OID\nexport const EXTENSION_OID_SCT = \"1.3.6.1.4.1.11129.2.4.2\";\n\n// Distinguished Name attribute OIDs (X.500)\nconst DN_OID_COMMON_NAME = \"2.5.4.3\";\nconst DN_OID_COUNTRY = \"2.5.4.6\";\nconst DN_OID_LOCALITY = \"2.5.4.7\";\nconst DN_OID_STATE = \"2.5.4.8\";\nconst DN_OID_ORGANIZATION = \"2.5.4.10\";\nconst DN_OID_ORGANIZATIONAL_UNIT = \"2.5.4.11\";\n\nconst DN_OID_TO_NAME: Record<string, string> = {\n [DN_OID_COMMON_NAME]: \"CN\",\n [DN_OID_COUNTRY]: \"C\",\n [DN_OID_LOCALITY]: \"L\",\n [DN_OID_STATE]: \"ST\",\n [DN_OID_ORGANIZATION]: \"O\",\n [DN_OID_ORGANIZATIONAL_UNIT]: \"OU\",\n};\n\n// Fulcio extension OIDs\n// https://github.com/sigstore/fulcio/blob/main/docs/oid-info.md\nexport const EXTENSION_OID_FULCIO_ISSUER_V1 = \"1.3.6.1.4.1.57264.1.1\";\nexport const EXTENSION_OID_GITHUB_WORKFLOW_TRIGGER = \"1.3.6.1.4.1.57264.1.2\";\nexport const EXTENSION_OID_GITHUB_WORKFLOW_SHA = \"1.3.6.1.4.1.57264.1.3\";\nexport const EXTENSION_OID_GITHUB_WORKFLOW_NAME = \"1.3.6.1.4.1.57264.1.4\";\nexport const EXTENSION_OID_GITHUB_WORKFLOW_REPOSITORY = \"1.3.6.1.4.1.57264.1.5\";\nexport const EXTENSION_OID_GITHUB_WORKFLOW_REF = \"1.3.6.1.4.1.57264.1.6\";\nexport const EXTENSION_OID_OTHERNAME = \"1.3.6.1.4.1.57264.1.7\";\nexport const EXTENSION_OID_FULCIO_ISSUER_V2 = \"1.3.6.1.4.1.57264.1.8\";\nexport const EXTENSION_OID_BUILD_SIGNER_URI = \"1.3.6.1.4.1.57264.1.9\";\nexport const EXTENSION_OID_BUILD_SIGNER_DIGEST = \"1.3.6.1.4.1.57264.1.10\";\nexport const EXTENSION_OID_RUNNER_ENVIRONMENT = \"1.3.6.1.4.1.57264.1.11\";\nexport const EXTENSION_OID_SOURCE_REPOSITORY_URI = \"1.3.6.1.4.1.57264.1.12\";\nexport const EXTENSION_OID_SOURCE_REPOSITORY_DIGEST = \"1.3.6.1.4.1.57264.1.13\";\nexport const EXTENSION_OID_SOURCE_REPOSITORY_REF = \"1.3.6.1.4.1.57264.1.14\";\nexport const EXTENSION_OID_SOURCE_REPOSITORY_IDENTIFIER = \"1.3.6.1.4.1.57264.1.15\";\nexport const EXTENSION_OID_SOURCE_REPOSITORY_OWNER_URI = \"1.3.6.1.4.1.57264.1.16\";\nexport const EXTENSION_OID_SOURCE_REPOSITORY_OWNER_IDENTIFIER = \"1.3.6.1.4.1.57264.1.17\";\nexport const EXTENSION_OID_BUILD_CONFIG_URI = \"1.3.6.1.4.1.57264.1.18\";\nexport const EXTENSION_OID_BUILD_CONFIG_DIGEST = \"1.3.6.1.4.1.57264.1.19\";\nexport const EXTENSION_OID_BUILD_TRIGGER = \"1.3.6.1.4.1.57264.1.20\";\nexport const EXTENSION_OID_RUN_INVOCATION_URI = \"1.3.6.1.4.1.57264.1.21\";\nexport const EXTENSION_OID_SOURCE_REPOSITORY_VISIBILITY = \"1.3.6.1.4.1.57264.1.22\";\n\nexport class X509Certificate {\n public root: ASN1Obj;\n\n constructor(asn1: ASN1Obj) {\n this.root = asn1;\n }\n\n public static parse(cert: Uint8Array | string): X509Certificate {\n const der = typeof cert === \"string\" ? toDER(cert) : cert;\n const asn1 = ASN1Obj.parseBuffer(der);\n return new X509Certificate(asn1);\n }\n\n get tbsCertificate(): ASN1Obj {\n return this.tbsCertificateObj;\n }\n\n get version(): string {\n // version number is the first element of the version context specific tag\n const ver = this.versionObj.subs[0].toInteger();\n return `v${(ver + BigInt(1)).toString()}`;\n }\n\n get serialNumber(): Uint8Array {\n return this.serialNumberObj.value;\n }\n\n get notBefore(): Date {\n // notBefore is the first element of the validity sequence\n return this.validityObj.subs[0].toDate();\n }\n\n get notAfter(): Date {\n // notAfter is the second element of the validity sequence\n return this.validityObj.subs[1].toDate();\n }\n\n get issuer(): Uint8Array {\n return this.issuerObj.value;\n }\n\n get subject(): Uint8Array {\n return this.subjectObj.value;\n }\n\n /**\n * Returns the issuer distinguished name as a Map of attribute names to values.\n * Common attributes: CN (Common Name), O (Organization), L (Locality),\n * ST (State), C (Country), OU (Organizational Unit)\n */\n get issuerDN(): Map<string, string> {\n return this.parseDistinguishedName(this.issuerObj);\n }\n\n /**\n * Returns the subject distinguished name as a Map of attribute names to values.\n * Common attributes: CN (Common Name), O (Organization), L (Locality),\n * ST (State), C (Country), OU (Organizational Unit)\n */\n get subjectDN(): Map<string, string> {\n return this.parseDistinguishedName(this.subjectObj);\n }\n\n get publicKey(): Uint8Array {\n return this.subjectPublicKeyInfoObj.toDER();\n }\n\n /**\n * Import the public key with a specific hash algorithm and signature scheme for RSA keys.\n * For ECDSA keys, both parameters are ignored.\n * @param hashAlg - Hash algorithm (e.g., \"sha384\") for RSA keys\n * @param usePss - If true, import as RSA-PSS key; if false, import as PKCS#1 v1.5\n */\n public async getPublicKeyObj(hashAlg?: string, usePss?: boolean): Promise<CryptoKey> {\n const publicKey = this.subjectPublicKeyInfoObj.toDER();\n const spki = ASN1Obj.parseBuffer(publicKey);\n const algorithmOID = spki.subs[0].subs[0].toOID();\n\n // RSA key (OID 1.2.840.113549.1.1.1) or RSA-PSS key (OID 1.2.840.113549.1.1.10)\n const isRsaKey = algorithmOID === \"1.2.840.113549.1.1.1\";\n const isRsaPssKey = algorithmOID === OID_RSASSA_PSS;\n\n if (isRsaPssKey) {\n // WebCrypto doesn't support importing keys with id-RSASSA-PSS OID, only rsaEncryption\n throw new Error(\n \"RSA-PSS public keys (id-RSASSA-PSS OID) are not supported by WebCrypto. \" +\n \"Only certificates with standard RSA keys (rsaEncryption OID) signed using RSA-PSS are supported.\"\n );\n }\n\n if (isRsaKey) {\n const hash = hashAlg || DEFAULT_HASH_ALGORITHM;\n // crypto-browser extracts hash from scheme and uses PSS unless \"PKCS1\" is present\n const scheme = usePss ? hash : `PKCS1_${hash}`;\n return importKey(KeyTypes.RSA, scheme, Uint8ArrayToBase64(publicKey));\n } else {\n // ECDSA key - the curve OID is in the second element\n const curveOID = spki.subs[0].subs[1]?.toOID();\n const curve = ECDSA_CURVE_NAMES[curveOID];\n if (!curve) {\n throw new Error(`Unknown ECDSA curve OID: ${curveOID}`);\n }\n return importKey(KeyTypes.Ecdsa, curve, Uint8ArrayToBase64(publicKey));\n }\n }\n\n get publicKeyObj(): Promise<CryptoKey> {\n return this.getPublicKeyObj();\n }\n\n get signatureAlgorithm(): string {\n const oid: string = this.signatureAlgorithmObj.subs[0].toOID();\n return ECDSA_SIGNATURE_ALGOS[oid] || RSA_SIGNATURE_ALGOS[oid] || this.parseRsaPssHashAlgorithm();\n }\n\n get signatureAlgorithmOid(): string {\n return this.signatureAlgorithmObj.subs[0].toOID();\n }\n\n /**\n * Parse hash algorithm from RSA-PSS signature algorithm parameters.\n * RSA-PSS parameters are: SEQUENCE { hashAlgorithm, maskGenAlgorithm, saltLength, trailerField }\n */\n private parseRsaPssHashAlgorithm(): string {\n const sigAlgOid = this.signatureAlgorithmObj.subs[0].toOID();\n if (sigAlgOid !== OID_RSASSA_PSS) {\n return \"\";\n }\n\n // RSA-PSS has parameters in the second element of the signature algorithm sequence\n const params = this.signatureAlgorithmObj.subs[1];\n if (!params || params.subs.length === 0) {\n return DEFAULT_HASH_ALGORITHM;\n }\n\n // First element is hashAlgorithm [0] EXPLICIT\n const hashAlgWrapper = params.subs[0];\n if (hashAlgWrapper && hashAlgWrapper.subs.length > 0) {\n // The wrapper contains a SEQUENCE with the hash algorithm OID\n const hashAlgSeq = hashAlgWrapper.subs[0];\n if (hashAlgSeq && hashAlgSeq.subs.length > 0) {\n const hashOid = hashAlgSeq.subs[0].toOID();\n return SHA2_HASH_ALGOS[hashOid] || DEFAULT_HASH_ALGORITHM;\n }\n }\n\n return DEFAULT_HASH_ALGORITHM;\n }\n\n get signatureValue(): Uint8Array {\n // Signature value is a bit string, so we need to skip the first byte\n return this.signatureValueObj.value.subarray(1);\n }\n\n get subjectAltName(): string | undefined {\n const ext = this.extSubjectAltName;\n return ext?.uri || ext?.rfc822Name;\n }\n\n get extensions(): ASN1Obj[] {\n // The extension list is the first (and only) element of the extensions\n // context specific tag\n const extSeq = this.extensionsObj?.subs[0];\n return extSeq?.subs || /* istanbul ignore next */ [];\n }\n\n get extKeyUsage(): X509KeyUsageExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_KEY_USAGE);\n return ext ? new X509KeyUsageExtension(ext) : undefined;\n }\n\n get extBasicConstraints(): X509BasicConstraintsExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_BASIC_CONSTRAINTS);\n return ext ? new X509BasicConstraintsExtension(ext) : undefined;\n }\n\n get extSubjectAltName(): X509SubjectAlternativeNameExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SUBJECT_ALT_NAME);\n return ext ? new X509SubjectAlternativeNameExtension(ext) : undefined;\n }\n\n get extAuthorityKeyID(): X509AuthorityKeyIDExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_AUTHORITY_KEY_ID);\n return ext ? new X509AuthorityKeyIDExtension(ext) : undefined;\n }\n\n get extSubjectKeyID(): X509SubjectKeyIDExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SUBJECT_KEY_ID);\n return ext\n ? new X509SubjectKeyIDExtension(ext)\n : /* istanbul ignore next */ undefined;\n }\n\n get extSCT(): X509SCTExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SCT);\n return ext ? new X509SCTExtension(ext) : undefined;\n }\n\n get extFulcioIssuerV1(): X509FulcioIssuerV1 | undefined {\n const ext = this.findExtension(EXTENSION_OID_FULCIO_ISSUER_V1);\n return ext ? new X509FulcioIssuerV1(ext) : undefined;\n }\n\n get extFulcioIssuerV2(): X509FulcioIssuerV2 | undefined {\n const ext = this.findExtension(EXTENSION_OID_FULCIO_ISSUER_V2);\n return ext ? new X509FulcioIssuerV2(ext) : undefined;\n }\n\n get extGitHubWorkflowTrigger(): X509GitHubWorkflowTriggerExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_GITHUB_WORKFLOW_TRIGGER);\n return ext ? new X509GitHubWorkflowTriggerExtension(ext) : undefined;\n }\n\n get extGitHubWorkflowSHA(): X509GitHubWorkflowSHAExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_GITHUB_WORKFLOW_SHA);\n return ext ? new X509GitHubWorkflowSHAExtension(ext) : undefined;\n }\n\n get extGitHubWorkflowName(): X509GitHubWorkflowNameExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_GITHUB_WORKFLOW_NAME);\n return ext ? new X509GitHubWorkflowNameExtension(ext) : undefined;\n }\n\n get extGitHubWorkflowRepository(): X509GitHubWorkflowRepositoryExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_GITHUB_WORKFLOW_REPOSITORY);\n return ext ? new X509GitHubWorkflowRepositoryExtension(ext) : undefined;\n }\n\n get extGitHubWorkflowRef(): X509GitHubWorkflowRefExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_GITHUB_WORKFLOW_REF);\n return ext ? new X509GitHubWorkflowRefExtension(ext) : undefined;\n }\n\n get extBuildSignerURI(): X509BuildSignerURIExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_BUILD_SIGNER_URI);\n return ext ? new X509BuildSignerURIExtension(ext) : undefined;\n }\n\n get extBuildSignerDigest(): X509BuildSignerDigestExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_BUILD_SIGNER_DIGEST);\n return ext ? new X509BuildSignerDigestExtension(ext) : undefined;\n }\n\n get extRunnerEnvironment(): X509RunnerEnvironmentExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_RUNNER_ENVIRONMENT);\n return ext ? new X509RunnerEnvironmentExtension(ext) : undefined;\n }\n\n get extSourceRepositoryURI(): X509SourceRepositoryURIExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SOURCE_REPOSITORY_URI);\n return ext ? new X509SourceRepositoryURIExtension(ext) : undefined;\n }\n\n get extSourceRepositoryDigest(): X509SourceRepositoryDigestExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SOURCE_REPOSITORY_DIGEST);\n return ext ? new X509SourceRepositoryDigestExtension(ext) : undefined;\n }\n\n get extSourceRepositoryRef(): X509SourceRepositoryRefExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SOURCE_REPOSITORY_REF);\n return ext ? new X509SourceRepositoryRefExtension(ext) : undefined;\n }\n\n get extSourceRepositoryIdentifier(): X509SourceRepositoryIdentifierExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SOURCE_REPOSITORY_IDENTIFIER);\n return ext ? new X509SourceRepositoryIdentifierExtension(ext) : undefined;\n }\n\n get extSourceRepositoryOwnerURI(): X509SourceRepositoryOwnerURIExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SOURCE_REPOSITORY_OWNER_URI);\n return ext ? new X509SourceRepositoryOwnerURIExtension(ext) : undefined;\n }\n\n get extSourceRepositoryOwnerIdentifier(): X509SourceRepositoryOwnerIdentifierExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SOURCE_REPOSITORY_OWNER_IDENTIFIER);\n return ext ? new X509SourceRepositoryOwnerIdentifierExtension(ext) : undefined;\n }\n\n get extBuildConfigURI(): X509BuildConfigURIExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_BUILD_CONFIG_URI);\n return ext ? new X509BuildConfigURIExtension(ext) : undefined;\n }\n\n get extBuildConfigDigest(): X509BuildConfigDigestExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_BUILD_CONFIG_DIGEST);\n return ext ? new X509BuildConfigDigestExtension(ext) : undefined;\n }\n\n get extBuildTrigger(): X509BuildTriggerExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_BUILD_TRIGGER);\n return ext ? new X509BuildTriggerExtension(ext) : undefined;\n }\n\n get extRunInvocationURI(): X509RunInvocationURIExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_RUN_INVOCATION_URI);\n return ext ? new X509RunInvocationURIExtension(ext) : undefined;\n }\n\n get extSourceRepositoryVisibility(): X509SourceRepositoryVisibilityExtension | undefined {\n const ext = this.findExtension(EXTENSION_OID_SOURCE_REPOSITORY_VISIBILITY);\n return ext ? new X509SourceRepositoryVisibilityExtension(ext) : undefined;\n }\n\n get isCA(): boolean {\n const ca = this.extBasicConstraints?.isCA || false;\n\n // If the KeyUsage extension is present, keyCertSign must be set\n if (this.extKeyUsage) {\n return ca && this.extKeyUsage.keyCertSign;\n }\n\n return ca;\n }\n\n public extension(oid: string): X509Extension | undefined {\n const ext = this.findExtension(oid);\n return ext ? new X509Extension(ext) : undefined;\n }\n\n public async verify(issuerCertificate?: X509Certificate): Promise<boolean> {\n // Extract the hash algorithm from this certificate's signature algorithm\n const sigAlgOID = this.signatureAlgorithmOid;\n const isRsaPss = sigAlgOID === OID_RSASSA_PSS;\n\n // Get hash algorithm - for RSA-PSS, parse from parameters; otherwise lookup in tables\n const hashAlg = isRsaPss\n ? this.parseRsaPssHashAlgorithm()\n : (RSA_SIGNATURE_ALGOS[sigAlgOID] || ECDSA_SIGNATURE_ALGOS[sigAlgOID]);\n\n // Use the issuer's public key if provided, otherwise use the subject's (for self-signed certs)\n // Import with the correct hash algorithm and key type for this certificate's signature\n const publicKeyObj = issuerCertificate\n ? await issuerCertificate.getPublicKeyObj(hashAlg, isRsaPss)\n : await this.getPublicKeyObj(hashAlg, isRsaPss);\n\n return await verifySignature(\n publicKeyObj,\n this.tbsCertificate.toDER(),\n this.signatureValue,\n this.signatureAlgorithm,\n );\n }\n\n public validForDate(date: Date): boolean {\n return this.notBefore <= date && date <= this.notAfter;\n }\n\n public equals(other: X509Certificate): boolean {\n return uint8ArrayEqual(this.root.toDER(), other.root.toDER());\n }\n\n // Creates a copy of the certificate with a new buffer\n public clone(): X509Certificate {\n const der = this.root.toDER();\n const clone = new Uint8Array(der);\n return X509Certificate.parse(clone);\n }\n\n private findExtension(oid: string): ASN1Obj | undefined {\n // Find the extension with the given OID. The OID will always be the first\n // element of the extension sequence\n return this.extensions.find((ext) => ext.subs[0].toOID() === oid);\n }\n\n /////////////////////////////////////////////////////////////////////////////\n // The following properties use the documented x509 structure to locate the\n // desired ASN.1 object\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1\n\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.1.1\n private get tbsCertificateObj(): ASN1Obj {\n // tbsCertificate is the first element of the certificate sequence\n return this.root.subs[0];\n }\n\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.1.2\n private get signatureAlgorithmObj(): ASN1Obj {\n // signatureAlgorithm is the second element of the certificate sequence\n return this.root.subs[1];\n }\n\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.1.3\n private get signatureValueObj(): ASN1Obj {\n // signatureValue is the third element of the certificate sequence\n return this.root.subs[2];\n }\n\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.1\n private get versionObj(): ASN1Obj {\n // version is the first element of the tbsCertificate sequence\n return this.tbsCertificateObj.subs[0];\n }\n\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.2\n private get serialNumberObj(): ASN1Obj {\n // serialNumber is the second element of the tbsCertificate sequence\n return this.tbsCertificateObj.subs[1];\n }\n\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.4\n private get issuerObj(): ASN1Obj {\n // issuer is the fourth element of the tbsCertificate sequence\n return this.tbsCertificateObj.subs[3];\n }\n\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.5\n private get validityObj(): ASN1Obj {\n // version is the fifth element of the tbsCertificate sequence\n return this.tbsCertificateObj.subs[4];\n }\n\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.6\n private get subjectObj(): ASN1Obj {\n // subject is the sixth element of the tbsCertificate sequence\n return this.tbsCertificateObj.subs[5];\n }\n\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.7\n private get subjectPublicKeyInfoObj(): ASN1Obj {\n // subjectPublicKeyInfo is the seventh element of the tbsCertificate sequence\n return this.tbsCertificateObj.subs[6];\n }\n\n // Extensions can't be located by index because their position varies. Instead,\n // we need to find the extensions context specific tag\n // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.9\n private get extensionsObj(): ASN1Obj | undefined {\n return this.tbsCertificateObj.subs.find((sub) =>\n sub.tag.isContextSpecific(0x03),\n );\n }\n\n // Parse a Distinguished Name (issuer or subject) ASN1Obj into a Map\n // DN structure: SEQUENCE of SET of SEQUENCE (AttributeTypeAndValue)\n // Each AttributeTypeAndValue is [OID, value]\n private parseDistinguishedName(dnObj: ASN1Obj): Map<string, string> {\n const result = new Map<string, string>();\n\n // Iterate over RDNs (RelativeDistinguishedName - each is a SET)\n for (const rdn of dnObj.subs) {\n // Each RDN contains one or more AttributeTypeAndValue (SEQUENCE)\n for (const atv of rdn.subs) {\n if (atv.subs.length >= 2) {\n const oidObj = atv.subs[0];\n const valueObj = atv.subs[1];\n\n if (oidObj.tag.isOID()) {\n const oid = oidObj.toOID();\n const attrName = DN_OID_TO_NAME[oid];\n if (attrName) {\n const value = new TextDecoder().decode(valueObj.value);\n result.set(attrName, value);\n }\n }\n }\n }\n }\n\n return result;\n }\n}\n"]}
@@ -17,4 +17,3 @@ export declare class CertificateChainVerifier {
17
17
  private checkPath;
18
18
  }
19
19
  export {};
20
- //# sourceMappingURL=chain.d.ts.map
@@ -74,7 +74,7 @@ export class CertificateChainVerifier {
74
74
  return paths;
75
75
  }
76
76
  async findIssuer(certificate) {
77
- let issuers = [];
77
+ const issuers = [];
78
78
  let keyIdentifier;
79
79
  if (uint8ArrayEqual(certificate.subject, certificate.issuer)) {
80
80
  if (await certificate.verify()) {
@@ -104,7 +104,7 @@ export class CertificateChainVerifier {
104
104
  verifiedIssuers.push(issuer);
105
105
  }
106
106
  }
107
- catch (ex) {
107
+ catch {
108
108
  // Ignore verification failures
109
109
  }
110
110
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/x509/chain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/x509/chain.ts"],"names":[],"mappings":"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","sourcesContent":["/*\nCopyright 2023 The Sigstore Authors.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\n/*\n * Certificate chain verification for browser environments\n *\n * Ported from sigstore-js:\n * https://github.com/sigstore/sigstore-js/blob/main/packages/verify/src/key/certificate.ts\n *\n * Key differences from sigstore-js:\n * - Browser-compatible: async verify() method for Web Crypto API\n * - Uses Uint8Array instead of Buffer for binary data\n * - Uses uint8ArrayEqual for Uint8Array comparisons\n */\n\nimport { uint8ArrayEqual } from \"@freedomofpress/crypto-browser\";\n\nimport { X509Certificate } from \"./cert.js\";\n\ninterface CertificateChainVerifierOptions {\n trustedCerts: X509Certificate[];\n untrustedCert: X509Certificate;\n timestamp: Date;\n}\n\nexport class CertificateChainVerifier {\n private untrustedCert: X509Certificate;\n private trustedCerts: X509Certificate[];\n private localCerts: X509Certificate[];\n private timestamp: Date;\n\n constructor(opts: CertificateChainVerifierOptions) {\n this.untrustedCert = opts.untrustedCert;\n this.trustedCerts = opts.trustedCerts;\n this.localCerts = dedupeCertificates([\n ...opts.trustedCerts,\n opts.untrustedCert,\n ]);\n this.timestamp = opts.timestamp;\n }\n\n public async verify(): Promise<X509Certificate[]> {\n const certificatePath = await this.sort();\n\n this.checkPath(certificatePath);\n\n const validForDate = certificatePath.every((cert) =>\n cert.validForDate(this.timestamp)\n );\n\n if (!validForDate) {\n throw new Error(\n \"certificate is not valid or expired at the specified date\"\n );\n }\n\n return certificatePath;\n }\n\n private async sort(): Promise<X509Certificate[]> {\n const leafCert = this.untrustedCert;\n\n let paths = await this.buildPaths(leafCert);\n\n paths = paths.filter((path) =>\n path.some((cert) => this.trustedCerts.includes(cert))\n );\n\n if (paths.length === 0) {\n throw new Error(\"no trusted certificate path found\");\n }\n\n const path = paths.reduce((prev, curr) =>\n prev.length < curr.length ? prev : curr\n );\n\n return [leafCert, ...path].slice(0, -1);\n }\n\n private async buildPaths(\n certificate: X509Certificate\n ): Promise<X509Certificate[][]> {\n const paths = [];\n const issuers = await this.findIssuer(certificate);\n\n if (issuers.length === 0) {\n throw new Error(\"no valid certificate path found\");\n }\n\n for (let i = 0; i < issuers.length; i++) {\n const issuer = issuers[i];\n\n if (issuer.equals(certificate)) {\n paths.push([certificate]);\n continue;\n }\n\n const subPaths = await this.buildPaths(issuer);\n\n for (let j = 0; j < subPaths.length; j++) {\n paths.push([issuer, ...subPaths[j]]);\n }\n }\n\n return paths;\n }\n\n private async findIssuer(\n certificate: X509Certificate\n ): Promise<X509Certificate[]> {\n const issuers: X509Certificate[] = [];\n let keyIdentifier: Uint8Array | undefined;\n\n if (uint8ArrayEqual(certificate.subject, certificate.issuer)) {\n if (await certificate.verify()) {\n return [certificate];\n }\n }\n\n if (certificate.extAuthorityKeyID) {\n keyIdentifier = certificate.extAuthorityKeyID.keyIdentifier;\n }\n\n this.localCerts.forEach((possibleIssuer) => {\n if (keyIdentifier) {\n if (possibleIssuer.extSubjectKeyID) {\n if (\n uint8ArrayEqual(\n possibleIssuer.extSubjectKeyID.keyIdentifier,\n keyIdentifier\n )\n ) {\n issuers.push(possibleIssuer);\n }\n return;\n }\n }\n\n if (uint8ArrayEqual(possibleIssuer.subject, certificate.issuer)) {\n issuers.push(possibleIssuer);\n }\n });\n\n const verifiedIssuers: X509Certificate[] = [];\n for (const issuer of issuers) {\n try {\n if (await certificate.verify(issuer)) {\n verifiedIssuers.push(issuer);\n }\n } catch {\n // Ignore verification failures\n }\n }\n\n return verifiedIssuers;\n }\n\n private checkPath(path: X509Certificate[]): void {\n if (path.length < 1) {\n throw new Error(\n \"certificate chain must contain at least one certificate\"\n );\n }\n\n const validCAs = path.slice(1).every((cert) => cert.isCA);\n if (!validCAs) {\n throw new Error(\"intermediate certificate is not a CA\");\n }\n\n for (let i = path.length - 2; i >= 0; i--) {\n if (!uint8ArrayEqual(path[i].issuer, path[i + 1].subject)) {\n throw new Error(\"incorrect certificate name chaining\");\n }\n }\n\n for (let i = 0; i < path.length; i++) {\n const cert = path[i];\n\n if (cert.extBasicConstraints?.isCA) {\n const pathLength = cert.extBasicConstraints.pathLenConstraint;\n\n if (pathLength !== undefined && pathLength < BigInt(i - 1)) {\n throw new Error(\"path length constraint exceeded\");\n }\n }\n }\n }\n}\n\nfunction dedupeCertificates(certs: X509Certificate[]): X509Certificate[] {\n for (let i = 0; i < certs.length; i++) {\n for (let j = i + 1; j < certs.length; j++) {\n if (certs[i].equals(certs[j])) {\n certs.splice(j, 1);\n j--;\n }\n }\n }\n return certs;\n}\n"]}
@@ -109,4 +109,3 @@ export declare class X509SCTExtension extends X509Extension {
109
109
  get signedCertificateTimestamps(): SignedCertificateTimestamp[];
110
110
  }
111
111
  export {};
112
- //# sourceMappingURL=ext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ext.js","sourceRoot":"","sources":["../../src/x509/ext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ext.js","sourceRoot":"","sources":["../../src/x509/ext.ts"],"names":[],"mappings":"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","sourcesContent":["/*\nCopyright 2023 The Sigstore Authors.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\nimport { ASN1Obj, ByteStream, Uint8ArrayToString } from \"@freedomofpress/crypto-browser\";\n\nimport { SignedCertificateTimestamp } from \"./sct.js\";\n\n// https://www.rfc-editor.org/rfc/rfc5280#section-4.1\nexport class X509Extension {\n protected root: ASN1Obj;\n\n constructor(asn1: ASN1Obj) {\n this.root = asn1;\n }\n\n get oid(): string {\n return this.root.subs[0].toOID();\n }\n\n get critical(): boolean {\n // The critical field is optional and will be the second element of the\n // extension sequence if present. Default to false if not present.\n return this.root.subs.length === 3 ? this.root.subs[1].toBoolean() : false;\n }\n\n get value(): Uint8Array {\n return this.extnValueObj.value;\n }\n\n get valueObj(): ASN1Obj {\n return this.extnValueObj;\n }\n\n protected get extnValueObj(): ASN1Obj {\n // The extnValue field will be the last element of the extension sequence\n return this.root.subs[this.root.subs.length - 1];\n }\n}\n\n// https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.9\nexport class X509BasicConstraintsExtension extends X509Extension {\n get isCA(): boolean {\n return this.sequence.subs[0]?.toBoolean() ?? false;\n }\n\n get pathLenConstraint(): bigint | undefined {\n return this.sequence.subs.length > 1\n ? this.sequence.subs[1].toInteger()\n : undefined;\n }\n\n // The extnValue field contains a single sequence wrapping the isCA and\n // pathLenConstraint.\n private get sequence(): ASN1Obj {\n return this.extnValueObj.subs[0];\n }\n}\n\n// https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.3\nexport class X509KeyUsageExtension extends X509Extension {\n get digitalSignature(): boolean {\n return this.bitString[0] === 1;\n }\n\n get keyCertSign(): boolean {\n return this.bitString[5] === 1;\n }\n\n get crlSign(): boolean {\n return this.bitString[6] === 1;\n }\n\n // The extnValue field contains a single bit string which is a bit mask\n // indicating which key usages are enabled.\n private get bitString(): number[] {\n return this.extnValueObj.subs[0].toBitString();\n }\n}\n\n// https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.6\nexport class X509SubjectAlternativeNameExtension extends X509Extension {\n get rfc822Name(): string | undefined {\n const rfc822Name = this.findGeneralName(0x01)?.value;\n if (rfc822Name === undefined) {\n return undefined;\n } else {\n return Uint8ArrayToString(rfc822Name);\n }\n }\n\n get uri(): string | undefined {\n const uri = this.findGeneralName(0x06)?.value;\n if (uri === undefined) {\n return undefined;\n } else {\n return Uint8ArrayToString(uri);\n }\n }\n\n // Retrieve the value of an otherName with the given OID.\n public otherName(oid: string): string | undefined {\n const otherName = this.findGeneralName(0x00);\n\n if (otherName === undefined) {\n return undefined;\n }\n\n // The otherName is a sequence containing an OID and a value.\n // Need to check that the OID matches the one we're looking for.\n const otherNameOID = otherName.subs[0].toOID();\n if (otherNameOID !== oid) {\n return undefined;\n }\n\n // The otherNameValue is a sequence containing the actual value.\n const otherNameValue = otherName.subs[1];\n return Uint8ArrayToString(otherNameValue.subs[0].value);\n }\n\n private findGeneralName(tag: number): ASN1Obj | undefined {\n return this.generalNames.find((gn) => gn.tag.isContextSpecific(tag));\n }\n\n // The extnValue field contains a sequence of GeneralNames.\n private get generalNames(): ASN1Obj[] {\n return this.extnValueObj.subs[0].subs;\n }\n}\n\n// https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.1\nexport class X509AuthorityKeyIDExtension extends X509Extension {\n get keyIdentifier(): Uint8Array | undefined {\n return this.findSequenceMember(0x00)?.value;\n }\n\n private findSequenceMember(tag: number): ASN1Obj | undefined {\n return this.sequence.subs.find((el) => el.tag.isContextSpecific(tag));\n }\n\n // The extnValue field contains a single sequence wrapping the keyIdentifier\n private get sequence(): ASN1Obj {\n return this.extnValueObj.subs[0];\n }\n}\n\n// https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.2\nexport class X509SubjectKeyIDExtension extends X509Extension {\n get keyIdentifier(): Uint8Array {\n return this.extnValueObj.subs[0].value;\n }\n}\n\n// Base class for Fulcio extensions with V1 format (raw OCTET STRING value)\n// https://github.com/sigstore/fulcio/blob/main/docs/oid-info.md\nclass X509FulcioExtensionV1 extends X509Extension {\n get stringValue(): string {\n return Uint8ArrayToString(this.extnValueObj.value);\n }\n}\n\n// Base class for Fulcio extensions with V2 format (DER-encoded UTF8String)\nclass X509FulcioExtensionV2 extends X509Extension {\n get stringValue(): string {\n return Uint8ArrayToString(this.extnValueObj.subs[0].value);\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.1 - OIDC Issuer (V1)\nexport class X509FulcioIssuerV1 extends X509FulcioExtensionV1 {\n get issuer(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.2 - GitHub Workflow Trigger (V1)\nexport class X509GitHubWorkflowTriggerExtension extends X509FulcioExtensionV1 {\n get workflowTrigger(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.3 - GitHub Workflow SHA (V1)\nexport class X509GitHubWorkflowSHAExtension extends X509FulcioExtensionV1 {\n get workflowSHA(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.4 - GitHub Workflow Name (V1)\nexport class X509GitHubWorkflowNameExtension extends X509FulcioExtensionV1 {\n get workflowName(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.5 - GitHub Workflow Repository (V1)\nexport class X509GitHubWorkflowRepositoryExtension extends X509FulcioExtensionV1 {\n get workflowRepository(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.6 - GitHub Workflow Ref (V1)\nexport class X509GitHubWorkflowRefExtension extends X509FulcioExtensionV1 {\n get workflowRef(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.8 - OIDC Issuer (V2)\nexport class X509FulcioIssuerV2 extends X509FulcioExtensionV2 {\n get issuer(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.9 - Build Signer URI (V2)\nexport class X509BuildSignerURIExtension extends X509FulcioExtensionV2 {\n get buildSignerURI(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.10 - Build Signer Digest (V2)\nexport class X509BuildSignerDigestExtension extends X509FulcioExtensionV2 {\n get buildSignerDigest(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.11 - Runner Environment (V2)\nexport class X509RunnerEnvironmentExtension extends X509FulcioExtensionV2 {\n get runnerEnvironment(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.12 - Source Repository URI (V2)\nexport class X509SourceRepositoryURIExtension extends X509FulcioExtensionV2 {\n get sourceRepositoryURI(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.13 - Source Repository Digest (V2)\nexport class X509SourceRepositoryDigestExtension extends X509FulcioExtensionV2 {\n get sourceRepositoryDigest(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.14 - Source Repository Ref (V2)\nexport class X509SourceRepositoryRefExtension extends X509FulcioExtensionV2 {\n get sourceRepositoryRef(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.15 - Source Repository Identifier (V2)\nexport class X509SourceRepositoryIdentifierExtension extends X509FulcioExtensionV2 {\n get sourceRepositoryIdentifier(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.16 - Source Repository Owner URI (V2)\nexport class X509SourceRepositoryOwnerURIExtension extends X509FulcioExtensionV2 {\n get sourceRepositoryOwnerURI(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.17 - Source Repository Owner Identifier (V2)\nexport class X509SourceRepositoryOwnerIdentifierExtension extends X509FulcioExtensionV2 {\n get sourceRepositoryOwnerIdentifier(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.18 - Build Config URI (V2)\nexport class X509BuildConfigURIExtension extends X509FulcioExtensionV2 {\n get buildConfigURI(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.19 - Build Config Digest (V2)\nexport class X509BuildConfigDigestExtension extends X509FulcioExtensionV2 {\n get buildConfigDigest(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.20 - Build Trigger (V2)\nexport class X509BuildTriggerExtension extends X509FulcioExtensionV2 {\n get buildTrigger(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.21 - Run Invocation URI (V2)\nexport class X509RunInvocationURIExtension extends X509FulcioExtensionV2 {\n get runInvocationURI(): string {\n return this.stringValue;\n }\n}\n\n// OID 1.3.6.1.4.1.57264.1.22 - Source Repository Visibility (V2)\nexport class X509SourceRepositoryVisibilityExtension extends X509FulcioExtensionV2 {\n get sourceRepositoryVisibility(): string {\n return this.stringValue;\n }\n}\n\n// https://www.rfc-editor.org/rfc/rfc6962#section-3.3\nexport class X509SCTExtension extends X509Extension {\n constructor(asn1: ASN1Obj) {\n super(asn1);\n }\n\n get signedCertificateTimestamps(): SignedCertificateTimestamp[] {\n const buf = this.extnValueObj.subs[0].value;\n const stream = new ByteStream(buf);\n\n // The overall list length is encoded in the first two bytes -- note this\n // is the length of the list in bytes, NOT the number of SCTs in the list\n const end = stream.getUint16() + 2;\n\n const sctList: SignedCertificateTimestamp[] = [];\n while (stream.position < end) {\n // Read the length of the next SCT\n const sctLength = stream.getUint16();\n\n // Slice out the bytes for the next SCT and parse it\n const sct = stream.getBlock(sctLength);\n sctList.push(SignedCertificateTimestamp.parse(sct));\n }\n\n if (stream.position !== end) {\n throw new Error(\"SCT list length does not match actual length\");\n }\n\n return sctList;\n }\n}\n"]}
@@ -1,4 +1,3 @@
1
1
  export { EXTENSION_OID_SCT, X509Certificate } from "./cert.js";
2
- export { X509SCTExtension } from "./ext.js";
3
2
  export { CertificateChainVerifier } from "./chain.js";
4
- //# sourceMappingURL=index.d.ts.map
3
+ export { X509SCTExtension } from "./ext.js";
@@ -14,6 +14,6 @@ See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
15
  */
16
16
  export { EXTENSION_OID_SCT, X509Certificate } from "./cert.js";
17
- export { X509SCTExtension } from "./ext.js";
18
17
  export { CertificateChainVerifier } from "./chain.js";
18
+ export { X509SCTExtension } from "./ext.js";
19
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/x509/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;EAcE;AAEF,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/x509/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;EAcE;AAEF,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC","sourcesContent":["/*\nCopyright 2023 The Sigstore Authors.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nexport { EXTENSION_OID_SCT, X509Certificate } from \"./cert.js\";\nexport { CertificateChainVerifier } from \"./chain.js\";\nexport { X509SCTExtension } from \"./ext.js\";\n"]}
@@ -22,4 +22,3 @@ export declare class SignedCertificateTimestamp {
22
22
  static parse(buf: Uint8Array): SignedCertificateTimestamp;
23
23
  }
24
24
  export {};
25
- //# sourceMappingURL=sct.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sct.js","sourceRoot":"","sources":["../../src/x509/sct.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sct.js","sourceRoot":"","sources":["../../src/x509/sct.ts"],"names":[],"mappings":"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","sourcesContent":["/*\nCopyright 2023 The Sigstore Authors.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\nimport { ByteStream, readBigInt64BE, verifySignature } from \"@freedomofpress/crypto-browser\";\n\ninterface SCTOptions {\n version: number;\n logID: Uint8Array;\n timestamp: Uint8Array;\n extensions: Uint8Array;\n hashAlgorithm: number;\n signatureAlgorithm: number;\n signature: Uint8Array;\n}\n\nexport class SignedCertificateTimestamp {\n readonly version: number;\n readonly logID: Uint8Array;\n readonly timestamp: Uint8Array;\n readonly extensions: Uint8Array;\n readonly hashAlgorithm: number;\n readonly signatureAlgorithm: number;\n readonly signature: Uint8Array;\n\n constructor(options: SCTOptions) {\n this.version = options.version;\n this.logID = options.logID;\n this.timestamp = options.timestamp;\n this.extensions = options.extensions;\n this.hashAlgorithm = options.hashAlgorithm;\n this.signatureAlgorithm = options.signatureAlgorithm;\n this.signature = options.signature;\n }\n\n get datetime(): Date {\n return new Date(Number(readBigInt64BE(this.timestamp)));\n }\n\n // Returns the hash algorithm used to generate the SCT's signature.\n // https://www.rfc-editor.org/rfc/rfc5246#section-7.4.1.4.1\n get algorithm(): string {\n switch (this.hashAlgorithm) {\n /* istanbul ignore next */\n case 0:\n return \"none\";\n /* istanbul ignore next */\n case 1:\n return \"md5\";\n /* istanbul ignore next */\n case 2:\n return \"sha1\";\n /* istanbul ignore next */\n case 3:\n return \"sha224\";\n case 4:\n return \"sha256\";\n /* istanbul ignore next */\n case 5:\n return \"sha384\";\n /* istanbul ignore next */\n case 6:\n return \"sha512\";\n /* istanbul ignore next */\n default:\n return \"unknown\";\n }\n }\n\n public async verify(preCert: Uint8Array, key: CryptoKey): Promise<boolean> {\n // Assemble the digitally-signed struct (the data over which the signature\n // was generated).\n // https://www.rfc-editor.org/rfc/rfc6962#section-3.2\n const stream = new ByteStream();\n stream.appendChar(this.version);\n stream.appendChar(0x00); // SignatureType = certificate_timestamp(0)\n stream.appendView(this.timestamp);\n stream.appendUint16(0x01); // LogEntryType = precert_entry(1)\n stream.appendView(preCert);\n stream.appendUint16(this.extensions.byteLength);\n\n /* istanbul ignore next - extensions are very uncommon */\n if (this.extensions.byteLength > 0) {\n stream.appendView(this.extensions);\n }\n\n return await verifySignature(\n key,\n stream.buffer,\n this.signature,\n this.algorithm,\n );\n }\n\n // Parses a SignedCertificateTimestamp from a buffer. SCTs are encoded using\n // TLS encoding which means the fields and lengths of most fields are\n // specified as part of the SCT and TLS specs.\n // https://www.rfc-editor.org/rfc/rfc6962#section-3.2\n // https://www.rfc-editor.org/rfc/rfc5246#section-7.4.1.4.1\n public static parse(buf: Uint8Array): SignedCertificateTimestamp {\n const stream = new ByteStream(buf);\n\n // Version - enum { v1(0), (255) }\n // RFC 6962 specifies only v1(0) is valid (for now)\n const version = stream.getUint8();\n if (version !== 0) {\n throw new Error(`Unsupported SCT version: ${version} (expected 0 for v1)`);\n }\n\n // Log ID - struct { opaque key_id[32]; }\n const logID = stream.getBlock(32);\n\n // Timestamp - uint64\n const timestamp = stream.getBlock(8);\n\n // Extensions - opaque extensions<0..2^16-1>;\n const extenstionLength = stream.getUint16();\n const extensions = stream.getBlock(extenstionLength);\n\n // Hash algo - enum { sha256(4), . . . (255) }\n const hashAlgorithm = stream.getUint8();\n\n // Signature algo - enum { anonymous(0), rsa(1), dsa(2), ecdsa(3), (255) }\n const signatureAlgorithm = stream.getUint8();\n\n // Signature - opaque signature<0..2^16-1>;\n const sigLength = stream.getUint16();\n const signature = stream.getBlock(sigLength);\n\n // Check that we read the entire buffer\n if (stream.position !== buf.length) {\n throw new Error(\"SCT buffer length mismatch\");\n }\n\n return new SignedCertificateTimestamp({\n version,\n logID,\n timestamp,\n extensions,\n hashAlgorithm,\n signatureAlgorithm,\n signature,\n });\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@freedomofpress/sigstore-browser",
3
- "version": "0.1.15",
3
+ "version": "0.1.16",
4
4
  "description": "A minimal browser-only Sigstore verification library.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -8,18 +8,25 @@
8
8
  },
9
9
  "main": "dist/index.js",
10
10
  "type": "module",
11
+ "sideEffects": false,
11
12
  "exports": {
12
13
  ".": {
13
14
  "types": "./dist/index.d.ts",
14
15
  "default": "./dist/index.js"
15
16
  }
16
17
  },
18
+ "files": [
19
+ "dist"
20
+ ],
21
+ "engines": {
22
+ "node": ">=22"
23
+ },
17
24
  "scripts": {
18
25
  "build": "tsc",
19
26
  "test": "vitest run --config vite.config.playwright.ts",
20
27
  "test:node": "vitest run",
21
28
  "coverage": "vitest run --coverage",
22
- "lint": "npx eslint . --fix && npx prettier --write ."
29
+ "lint": "eslint . --fix"
23
30
  },
24
31
  "keywords": [
25
32
  "sigstore",
@@ -30,18 +37,18 @@
30
37
  "author": "Giulio B",
31
38
  "license": "MIT",
32
39
  "devDependencies": {
40
+ "@noble/curves": "^2.0.1",
33
41
  "@types/node": "^24.0.14",
34
- "@vitest/browser": "^3.2.4",
35
- "@vitest/coverage-v8": "^3.2.4",
42
+ "@vitest/browser-playwright": "^5.0.5",
43
+ "@vitest/coverage-v8": "^5.0.5",
36
44
  "eslint-plugin-simple-import-sort": "^12.1.1",
37
45
  "playwright": "^1.57.0",
38
46
  "typescript": "^5.8.3",
39
47
  "typescript-eslint": "^8.37.0",
40
- "vitest": "^3.2.4"
48
+ "vitest": "^5.0.5"
41
49
  },
42
50
  "dependencies": {
43
- "@freedomofpress/crypto-browser": "^0.1.8",
44
- "@freedomofpress/tuf-browser": "^0.1.11",
45
- "@noble/curves": "^2.0.1"
51
+ "@freedomofpress/crypto-browser": "^0.2.0",
52
+ "@freedomofpress/tuf-browser": "^0.2.0"
46
53
  }
47
54
  }
@@ -1,29 +0,0 @@
1
- # .github/workflows/conformance.yml
2
- name: sigstore-conformance
3
-
4
- on:
5
- push:
6
- branches: [ main ]
7
- pull_request:
8
- workflow_dispatch:
9
- workflow_call:
10
-
11
- jobs:
12
- conformance:
13
- runs-on: ubuntu-latest
14
- steps:
15
- - uses: actions/checkout@v4
16
-
17
- - name: Install Node
18
- uses: actions/setup-node@v4
19
- with:
20
- node-version: '22'
21
-
22
- - run: npm ci
23
- - run: npm run build
24
- - run: chmod +x dist/cli.js
25
-
26
- - uses: sigstore/sigstore-conformance@v0.0.21
27
- with:
28
- entrypoint: dist/cli.js
29
- skip-signing: true
@@ -1,47 +0,0 @@
1
- # .github/workflows/publish.yml
2
- name: publish
3
-
4
- on:
5
- push:
6
- tags:
7
- - "v*.*.*"
8
-
9
- jobs:
10
- run-conformance:
11
- uses: ./.github/workflows/conformance.yml
12
-
13
- publish:
14
- needs: run-conformance
15
- runs-on: ubuntu-latest
16
-
17
- if: startsWith(github.ref, 'refs/tags/v')
18
-
19
- permissions:
20
- contents: read
21
- packages: write
22
- id-token: write
23
-
24
- steps:
25
- - uses: actions/checkout@v4
26
-
27
- - uses: actions/setup-node@v4
28
- with:
29
- node-version: 22
30
- registry-url: "https://registry.npmjs.org"
31
-
32
- - name: Update npm
33
- run: npm install -g npm@latest
34
-
35
- - name: Install deps
36
- run: npm ci
37
-
38
- - name: Build
39
- run: npm run build
40
-
41
- - name: Dry-run publish
42
- run: npm publish --dry-run
43
-
44
- - name: Publish to npm
45
- run: npm publish --access public
46
-
47
-
@@ -1 +0,0 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AAAA,KAAK,kBAAkB,GAAG;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,oBAAoB,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,cAAc,GACtB,CAAC,kBAAkB,GAAG;IAAE,gBAAgB,EAAE,gBAAgB,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,GACnF,CAAC,kBAAkB,GAAG;IAAE,gBAAgB,CAAC,EAAE,KAAK,CAAC;IAAC,YAAY,EAAE,YAAY,CAAA;CAAE,CAAC,CAAC;AAEpF,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,WAAW,EAAE,SAAS,EAAE,CAAC;IACzB,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;CACvD;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,WAAW,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,aAAa,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACxC,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAsCD,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAEnE;AAID,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,IAAI,cAAc,CA2CpE"}
package/dist/cli.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dsse.d.ts","sourceRoot":"","sources":["../src/dsse.ts"],"names":[],"mappings":"AAkBA,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,UAAU,GAClB,UAAU,CA2BZ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IACvB,IAAI,EAAE,MAAM;gBAAZ,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAKjD;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,iBAAiB;gBACvC,OAAO,EAAE,MAAM;CAK5B;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,iBAAiB;gBACzC,OAAO,EAAE,MAAM;CAK5B;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,iBAAiB;gBAClC,OAAO,EAAE,MAAM;CAK5B;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,iBAAiB;gBACvC,OAAO,EAAE,MAAM;CAK5B;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,iBAAiB;gBACpC,OAAO,EAAE,MAAM;CAK5B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAClJ,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,KAAK,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AACtF,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,8BAA8B,EAC9B,qCAAqC,EACrC,iCAAiC,EACjC,kCAAkC,EAClC,wCAAwC,EACxC,iCAAiC,EACjC,uBAAuB,EACvB,8BAA8B,EAC9B,8BAA8B,EAC9B,iCAAiC,EACjC,gCAAgC,EAChC,mCAAmC,EACnC,sCAAsC,EACtC,mCAAmC,EACnC,0CAA0C,EAC1C,yCAAyC,EACzC,gDAAgD,EAChD,8BAA8B,EAC9B,iCAAiC,EACjC,2BAA2B,EAC3B,gCAAgC,EAChC,0CAA0C,GAC3C,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,kCAAkC,EAClC,8BAA8B,EAC9B,+BAA+B,EAC/B,qCAAqC,EACrC,8BAA8B,EAC9B,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,gCAAgC,EAChC,mCAAmC,EACnC,gCAAgC,EAChC,uCAAuC,EACvC,qCAAqC,EACrC,4CAA4C,EAC5C,2BAA2B,EAC3B,8BAA8B,EAC9B,yBAAyB,EACzB,6BAA6B,EAC7B,uCAAuC,GACxC,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,YAAY,EACZ,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,uBAAuB,EACvB,8BAA8B,EAC9B,4BAA4B,EAC5B,mCAAmC,EACnC,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,8BAA8B,EAC9B,KAAK,EACL,KAAK,EACL,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
package/dist/oid.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"oid.d.ts","sourceRoot":"","sources":["../src/oid.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAKxD,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAKtD,CAAC;AAGF,eAAO,MAAM,cAAc,0BAA0B,CAAC;AAEtD,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAIlD,CAAC;AAGF,eAAO,MAAM,sBAAsB,WAAW,CAAC;AAE/C,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAIpD,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,eAAe,EAuBhB,MAAM,gBAAgB,CAAC;AAIxB,eAAO,MAAM,kBAAkB,gDAAgD,CAAC;AAEhF;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD;AAED;;GAEG;AACH,uBAAe,qBAAsB,YAAW,kBAAkB;IAChE,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAE7B,KAAK,EAAE,MAAM;IAIzB,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;IAE/E,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI;CAcpC;AAED;;;GAGG;AACH,uBAAe,qBAAsB,SAAQ,qBAAqB;CAAG;AAMrE;;;GAGG;AACH,qBAAa,UAAW,SAAQ,qBAAqB;IACnD,QAAQ,CAAC,GAAG,2BAAkC;IAC9C,QAAQ,CAAC,IAAI,gBAAgB;IAE7B,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,qBAAqB;IAC9D,QAAQ,CAAC,GAAG,2BAAyC;IACrD,QAAQ,CAAC,IAAI,2BAA2B;IAExC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,qBAAqB;IAC1D,QAAQ,CAAC,GAAG,2BAAqC;IACjD,QAAQ,CAAC,IAAI,uBAAuB;IAEpC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,qBAAqB;IAC3D,QAAQ,CAAC,GAAG,2BAAsC;IAClD,QAAQ,CAAC,IAAI,wBAAwB;IAErC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,qBAAqB;IACjE,QAAQ,CAAC,GAAG,2BAA4C;IACxD,QAAQ,CAAC,IAAI,8BAA8B;IAE3C,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,qBAAqB;IAC1D,QAAQ,CAAC,GAAG,2BAAqC;IACjD,QAAQ,CAAC,IAAI,uBAAuB;IAEpC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAMD;;;GAGG;AACH,qBAAa,YAAa,SAAQ,qBAAqB;IACrD,QAAQ,CAAC,GAAG,2BAAkC;IAC9C,QAAQ,CAAC,IAAI,kBAAkB;IAE/B,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,qBAAqB;IAC3D,QAAQ,CAAC,GAAG,2BAAkC;IAC9C,QAAQ,CAAC,IAAI,wBAAwB;IAErC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,qBAAqB;IAC9D,QAAQ,CAAC,GAAG,4BAAqC;IACjD,QAAQ,CAAC,IAAI,2BAA2B;IAExC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,qBAAqB;IAC9D,QAAQ,CAAC,GAAG,4BAAoC;IAChD,QAAQ,CAAC,IAAI,2BAA2B;IAExC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,qBAAqB;IAChE,QAAQ,CAAC,GAAG,4BAAuC;IACnD,QAAQ,CAAC,IAAI,6BAA6B;IAE1C,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,qBAAqB;IACnE,QAAQ,CAAC,GAAG,4BAA0C;IACtD,QAAQ,CAAC,IAAI,gCAAgC;IAE7C,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,qBAAqB;IAChE,QAAQ,CAAC,GAAG,4BAAuC;IACnD,QAAQ,CAAC,IAAI,6BAA6B;IAE1C,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,8BAA+B,SAAQ,qBAAqB;IACvE,QAAQ,CAAC,GAAG,4BAA8C;IAC1D,QAAQ,CAAC,IAAI,oCAAoC;IAEjD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,4BAA6B,SAAQ,qBAAqB;IACrE,QAAQ,CAAC,GAAG,4BAA6C;IACzD,QAAQ,CAAC,IAAI,kCAAkC;IAE/C,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,mCAAoC,SAAQ,qBAAqB;IAC5E,QAAQ,CAAC,GAAG,4BAAoD;IAChE,QAAQ,CAAC,IAAI,yCAAyC;IAEtD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,qBAAqB;IAC3D,QAAQ,CAAC,GAAG,4BAAkC;IAC9C,QAAQ,CAAC,IAAI,wBAAwB;IAErC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,qBAAqB;IAC9D,QAAQ,CAAC,GAAG,4BAAqC;IACjD,QAAQ,CAAC,IAAI,2BAA2B;IAExC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,qBAAqB;IACzD,QAAQ,CAAC,GAAG,4BAA+B;IAC3C,QAAQ,CAAC,IAAI,sBAAsB;IAEnC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,qBAAqB;IAC7D,QAAQ,CAAC,GAAG,4BAAoC;IAChD,QAAQ,CAAC,IAAI,0BAA0B;IAEvC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAED;;;GAGG;AACH,qBAAa,8BAA+B,SAAQ,qBAAqB;IACvE,QAAQ,CAAC,GAAG,4BAA8C;IAC1D,QAAQ,CAAC,IAAI,oCAAoC;IAEjD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS;CAGvE;AAMD;;;GAGG;AACH,qBAAa,KAAM,YAAW,kBAAkB;IAC9C,OAAO,CAAC,QAAQ,CAAuB;gBAE3B,QAAQ,EAAE,kBAAkB,EAAE;IAIpC,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAWnD;AAED;;;GAGG;AACH,qBAAa,KAAM,YAAW,kBAAkB;IAC9C,OAAO,CAAC,QAAQ,CAAuB;gBAE3B,QAAQ,EAAE,kBAAkB,EAAE;IAIpC,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAQnD;AAMD;;;;;;;GAOG;AACH,qBAAa,QAAS,YAAW,kBAAkB;IACjD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,YAAY,CAAoB;gBAE5B,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAK1D,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI;CAkCpC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/rfc3161/error.ts"],"names":[],"mappings":"AAeA,qBAAa,iCAAkC,SAAQ,KAAK;CAAG"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/rfc3161/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"timestamp.d.ts","sourceRoot":"","sources":["../../src/rfc3161/timestamp.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,OAAO,EAAoC,MAAM,gCAAgC,CAAC;AAI3F,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAMvC,qBAAa,gBAAgB;IACpB,IAAI,EAAE,OAAO,CAAC;gBAET,IAAI,EAAE,OAAO;WAIX,KAAK,CAAC,GAAG,EAAE,UAAU,GAAG,gBAAgB;IAKtD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,WAAW,IAAI,IAAI,CAEtB;IAED,IAAI,YAAY,IAAI,UAAU,CAE7B;IAED,IAAI,kBAAkB,IAAI,UAAU,CAEnC;IAED,IAAI,qBAAqB,IAAI,MAAM,CAOlC;IAED,IAAI,kBAAkB,IAAI,MAAM,CAI/B;IAED,IAAI,cAAc,IAAI,UAAU,CAE/B;IAED,IAAI,OAAO,IAAI,OAAO,CAGrB;IAEY,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;YA2B5D,mBAAmB;YAsBnB,eAAe;IA+B7B,OAAO,KAAK,gBAAgB,GAG3B;IAGD,OAAO,KAAK,iBAAiB,GAG5B;IAGD,OAAO,KAAK,cAAc,GAEzB;IAED,OAAO,KAAK,aAAa,GAUxB;IAGD,OAAO,KAAK,mBAAmB,GAE9B;IAGD,OAAO,KAAK,cAAc,GAIzB;IAGD,OAAO,KAAK,aAAa,GAGxB;IAGD,OAAO,KAAK,eAAe,GAE1B;IAGD,OAAO,KAAK,WAAW,GAEtB;IAGD,OAAO,KAAK,cAAc,GAQzB;IAGD,OAAO,KAAK,yBAAyB,GAUpC;IAGD,OAAO,KAAK,YAAY,GAEvB;IAGD,OAAO,KAAK,wBAAwB,GAGnC;IAGD,OAAO,KAAK,qBAAqB,GAGhC;IAGD,OAAO,KAAK,iBAAiB,GAG5B;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tstinfo.d.ts","sourceRoot":"","sources":["../../src/rfc3161/tstinfo.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,OAAO,EAAmB,MAAM,gCAAgC,CAAC;AAK1E,qBAAa,OAAO;IACX,IAAI,EAAE,OAAO,CAAC;gBAET,IAAI,EAAE,OAAO;IAIzB,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,OAAO,IAAI,IAAI,CAElB;IAED,IAAI,2BAA2B,IAAI,MAAM,CAOxC;IAED,IAAI,2BAA2B,IAAI,UAAU,CAE5C;IAED,IAAI,GAAG,IAAI,UAAU,CAEpB;IAEY,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBpD,OAAO,KAAK,iBAAiB,GAE5B;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"sigstore.d.ts","sourceRoot":"","sources":["../src/sigstore.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,eAAe,EAEhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAgB,cAAc,EAAa,MAAM,aAAa,CAAC;AAEtE,OAAO,EACL,aAAa,EACb,KAAK,EAEL,MAAM,EACN,OAAO,EACP,YAAY,EAGZ,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAKzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AA0CtD,MAAM,WAAW,uBAAuB;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,OAAO,CAAoC;gBAEvC,OAAO,GAAE,uBAA4B;IAgB3C,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAkB/C,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAwB7C,sBAAsB,CAC1B,SAAS,EAAE,IAAI,EACf,IAAI,EAAE,eAAe,EACrB,sBAAsB,EAAE,aAAa,EAAE,GACtC,OAAO,CAAC,eAAe,EAAE,CAAC;IAyB7B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,EAAE;IAW9B,gBAAgB,CAAC,OAAO,EAAE,WAAW;IAa3C;;;;;OAKG;IACG,uBAAuB,CAAC,WAAW,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzE,SAAS,CACb,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,KAAK,EAAE,GACd,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAmGT,SAAS;YAsBT,iBAAiB;YA2CjB,YAAY;IAoDb,oBAAoB,CAC/B,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,UAAU,EAChB,YAAY,GAAE,OAAe,GAC5B,OAAO,CAAC,OAAO,CAAC;IAwFR,cAAc,CACzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,UAAU,EAChB,YAAY,GAAE,OAAe,GAC5B,OAAO,CAAC,OAAO,CAAC;IAoBjB;;;;;;;;;;;;;;OAcG;IACU,UAAU,CACrB,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,UAAU,CAAA;KAAE,CAAC;CA6BzD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tsa.d.ts","sourceRoot":"","sources":["../../src/timestamp/tsa.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAuB,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,gBAAgB,EAC3B,IAAI,EAAE,UAAU,EAChB,oBAAoB,EAAE,qBAAqB,EAAE,GAC5C,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,IAAI,CAAC;IAElB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAqHD;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CACzC,aAAa,EAAE,GAAG,EAClB,SAAS,EAAE,UAAU,EACrB,oBAAoB,EAAE,qBAAqB,EAAE,GAC5C,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAoC9B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../src/tlog/body.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAKlD,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf;AAGD,wBAAsB,cAAc,CAClC,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,IAAI,CAAC,CAqBf;AAGD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,OAAO,GACX,IAAI,CASN"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkpoint.d.ts","sourceRoot":"","sources":["../../src/tlog/checkpoint.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AASrD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,UAAU,CAAC;IACpB,SAAS,EAAE,UAAU,CAAC;CACvB;AAGD,qBAAa,UAAU;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,aAAa,EAAE,CAAC;gBAEzB,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE;IAKrD,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;CAoChD;AAGD,qBAAa,aAAa;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;gBAGtB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,MAAM,EAAE;IAQhB,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CAc/C;AAGD,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC,CA8Bf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dsse.d.ts","sourceRoot":"","sources":["../../src/tlog/dsse.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAA2B,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAwBrE,wBAAsB,cAAc,CAClC,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,IAAI,CAAC,CAaf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"hashedrekord.d.ts","sourceRoot":"","sources":["../../src/tlog/hashedrekord.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAA2B,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAwCrE,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,IAAI,CAAC,CAaf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"intoto.d.ts","sourceRoot":"","sources":["../../src/tlog/intoto.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAA2B,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAiCrE,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,IAAI,CAAC,CAuDf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"merkle.d.ts","sourceRoot":"","sources":["../../src/tlog/merkle.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAK9C,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,IAAI,CAAC,CA2Cf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tuf-root.d.ts","sourceRoot":"","sources":["../../src/trust/tuf-root.ts"],"names":[],"mappings":"wBAEe,09OAA09O;AAAz+O,wBAA0+O"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tuf.d.ts","sourceRoot":"","sources":["../../src/trust/tuf.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAaD;;;;;;;;;;;GAWG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,YAAY,CAAU;IAE9B,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,UAAU,CAAC,CAAc;IACjC,OAAO,CAAC,cAAc,CAAC,CAAS;gBAEpB,OAAO,GAAE,0BAA+B;IAYpD;;;OAGG;YACW,aAAa;IAyB3B;;;OAGG;YACW,cAAc;IAW5B;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;;;;;OAMG;IACG,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAsC5C;;;;;OAKG;IACG,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC;IAShD;;;OAGG;IACH,UAAU,IAAI,IAAI;CAInB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cert.d.ts","sourceRoot":"","sources":["../../src/x509/cert.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../src/x509/chain.ts"],"names":[],"mappings":"AA6BA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,UAAU,+BAA+B;IACvC,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,aAAa,EAAE,eAAe,CAAC;IAC/B,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,qBAAa,wBAAwB;IACnC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,SAAS,CAAO;gBAEZ,IAAI,EAAE,+BAA+B;IAUpC,MAAM,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAkBnC,IAAI;YAoBJ,UAAU;YA4BV,UAAU;IAkDxB,OAAO,CAAC,SAAS;CA8BlB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ext.d.ts","sourceRoot":"","sources":["../../src/x509/ext.ts"],"names":[],"mappings":"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"}