@chilkat/react-native 11.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/ChilkatRN.podspec +44 -0
- package/LICENSE +254 -0
- package/README.md +67 -0
- package/android/CMakeLists.txt +60 -0
- package/android/build.gradle +148 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +2 -0
- package/android/src/main/cpp/cpp-adapter.cpp +12 -0
- package/android/src/main/java/com/margelo/nitro/chilkat/ChilkatRNPackage.java +33 -0
- package/chilkat-checksums.json +9 -0
- package/cpp/HybridAi.cpp +660 -0
- package/cpp/HybridAi.hpp +159 -0
- package/cpp/HybridAsn.cpp +403 -0
- package/cpp/HybridAsn.hpp +105 -0
- package/cpp/HybridAuthAws.cpp +188 -0
- package/cpp/HybridAuthAws.hpp +55 -0
- package/cpp/HybridAuthAzureSAS.cpp +142 -0
- package/cpp/HybridAuthAzureSAS.hpp +47 -0
- package/cpp/HybridAuthAzureStorage.cpp +144 -0
- package/cpp/HybridAuthAzureStorage.hpp +47 -0
- package/cpp/HybridAuthGoogle.cpp +215 -0
- package/cpp/HybridAuthGoogle.hpp +67 -0
- package/cpp/HybridBinData.cpp +439 -0
- package/cpp/HybridBinData.hpp +112 -0
- package/cpp/HybridBz2.cpp +177 -0
- package/cpp/HybridBz2.hpp +58 -0
- package/cpp/HybridCache.cpp +314 -0
- package/cpp/HybridCache.hpp +82 -0
- package/cpp/HybridCert.cpp +840 -0
- package/cpp/HybridCert.hpp +196 -0
- package/cpp/HybridCertChain.cpp +149 -0
- package/cpp/HybridCertChain.hpp +50 -0
- package/cpp/HybridCertStore.cpp +276 -0
- package/cpp/HybridCertStore.hpp +78 -0
- package/cpp/HybridCharset.cpp +333 -0
- package/cpp/HybridCharset.hpp +83 -0
- package/cpp/HybridCkDateTime.cpp +384 -0
- package/cpp/HybridCkDateTime.hpp +105 -0
- package/cpp/HybridCodeSign.cpp +156 -0
- package/cpp/HybridCodeSign.hpp +55 -0
- package/cpp/HybridCompression.cpp +422 -0
- package/cpp/HybridCompression.hpp +100 -0
- package/cpp/HybridCrypt2.cpp +1517 -0
- package/cpp/HybridCrypt2.hpp +320 -0
- package/cpp/HybridCsr.cpp +292 -0
- package/cpp/HybridCsr.hpp +77 -0
- package/cpp/HybridCsv.cpp +382 -0
- package/cpp/HybridCsv.hpp +101 -0
- package/cpp/HybridDh.cpp +137 -0
- package/cpp/HybridDh.hpp +47 -0
- package/cpp/HybridDirTree.cpp +167 -0
- package/cpp/HybridDirTree.hpp +53 -0
- package/cpp/HybridDkim.cpp +249 -0
- package/cpp/HybridDkim.hpp +74 -0
- package/cpp/HybridDns.cpp +193 -0
- package/cpp/HybridDns.hpp +64 -0
- package/cpp/HybridDsa.cpp +453 -0
- package/cpp/HybridDsa.hpp +112 -0
- package/cpp/HybridDtObj.cpp +172 -0
- package/cpp/HybridDtObj.hpp +57 -0
- package/cpp/HybridEcc.cpp +195 -0
- package/cpp/HybridEcc.hpp +55 -0
- package/cpp/HybridEdDSA.cpp +147 -0
- package/cpp/HybridEdDSA.hpp +47 -0
- package/cpp/HybridEmail.cpp +1911 -0
- package/cpp/HybridEmail.hpp +419 -0
- package/cpp/HybridEmailBundle.cpp +204 -0
- package/cpp/HybridEmailBundle.hpp +64 -0
- package/cpp/HybridFileAccess.cpp +631 -0
- package/cpp/HybridFileAccess.hpp +149 -0
- package/cpp/HybridFtp2.cpp +2308 -0
- package/cpp/HybridFtp2.hpp +462 -0
- package/cpp/HybridGlobal.cpp +221 -0
- package/cpp/HybridGlobal.hpp +68 -0
- package/cpp/HybridGzip.cpp +440 -0
- package/cpp/HybridGzip.hpp +105 -0
- package/cpp/HybridHashtable.cpp +211 -0
- package/cpp/HybridHashtable.hpp +64 -0
- package/cpp/HybridHtmlToText.cpp +136 -0
- package/cpp/HybridHtmlToText.hpp +47 -0
- package/cpp/HybridHtmlToXml.cpp +218 -0
- package/cpp/HybridHtmlToXml.hpp +65 -0
- package/cpp/HybridHttp.cpp +2067 -0
- package/cpp/HybridHttp.hpp +416 -0
- package/cpp/HybridHttpCurl.cpp +337 -0
- package/cpp/HybridHttpCurl.hpp +93 -0
- package/cpp/HybridHttpRequest.cpp +455 -0
- package/cpp/HybridHttpRequest.hpp +109 -0
- package/cpp/HybridHttpResponse.cpp +340 -0
- package/cpp/HybridHttpResponse.hpp +86 -0
- package/cpp/HybridImap.cpp +1818 -0
- package/cpp/HybridImap.hpp +363 -0
- package/cpp/HybridJavaKeyStore.cpp +387 -0
- package/cpp/HybridJavaKeyStore.hpp +98 -0
- package/cpp/HybridJs.cpp +154 -0
- package/cpp/HybridJs.hpp +54 -0
- package/cpp/HybridJsonArray.cpp +441 -0
- package/cpp/HybridJsonArray.hpp +120 -0
- package/cpp/HybridJsonObject.cpp +1125 -0
- package/cpp/HybridJsonObject.hpp +260 -0
- package/cpp/HybridJwe.cpp +294 -0
- package/cpp/HybridJwe.hpp +82 -0
- package/cpp/HybridJws.cpp +290 -0
- package/cpp/HybridJws.hpp +82 -0
- package/cpp/HybridJwt.cpp +198 -0
- package/cpp/HybridJwt.hpp +57 -0
- package/cpp/HybridLog.cpp +212 -0
- package/cpp/HybridLog.hpp +63 -0
- package/cpp/HybridMailMan.cpp +1853 -0
- package/cpp/HybridMailMan.hpp +386 -0
- package/cpp/HybridMailboxes.cpp +165 -0
- package/cpp/HybridMailboxes.hpp +54 -0
- package/cpp/HybridMcp.cpp +322 -0
- package/cpp/HybridMcp.hpp +85 -0
- package/cpp/HybridMessageSet.cpp +162 -0
- package/cpp/HybridMessageSet.hpp +54 -0
- package/cpp/HybridMht.cpp +700 -0
- package/cpp/HybridMht.hpp +165 -0
- package/cpp/HybridMime.cpp +1119 -0
- package/cpp/HybridMime.hpp +266 -0
- package/cpp/HybridNtlm.cpp +333 -0
- package/cpp/HybridNtlm.hpp +83 -0
- package/cpp/HybridOAuth1.cpp +307 -0
- package/cpp/HybridOAuth1.hpp +78 -0
- package/cpp/HybridOAuth2.cpp +515 -0
- package/cpp/HybridOAuth2.hpp +127 -0
- package/cpp/HybridPdf.cpp +370 -0
- package/cpp/HybridPdf.hpp +103 -0
- package/cpp/HybridPem.cpp +327 -0
- package/cpp/HybridPem.hpp +88 -0
- package/cpp/HybridPfx.cpp +343 -0
- package/cpp/HybridPfx.hpp +87 -0
- package/cpp/HybridPkcs11.cpp +318 -0
- package/cpp/HybridPkcs11.hpp +88 -0
- package/cpp/HybridPrivateKey.cpp +464 -0
- package/cpp/HybridPrivateKey.hpp +117 -0
- package/cpp/HybridPrng.cpp +192 -0
- package/cpp/HybridPrng.hpp +57 -0
- package/cpp/HybridPublicKey.cpp +238 -0
- package/cpp/HybridPublicKey.hpp +68 -0
- package/cpp/HybridRest.cpp +993 -0
- package/cpp/HybridRest.hpp +214 -0
- package/cpp/HybridRsa.cpp +348 -0
- package/cpp/HybridRsa.hpp +90 -0
- package/cpp/HybridSCard.cpp +328 -0
- package/cpp/HybridSCard.hpp +91 -0
- package/cpp/HybridSFtp.cpp +1889 -0
- package/cpp/HybridSFtp.hpp +366 -0
- package/cpp/HybridSFtpDir.cpp +119 -0
- package/cpp/HybridSFtpDir.hpp +43 -0
- package/cpp/HybridSFtpFile.cpp +203 -0
- package/cpp/HybridSFtpFile.hpp +60 -0
- package/cpp/HybridScMinidriver.cpp +341 -0
- package/cpp/HybridScMinidriver.hpp +88 -0
- package/cpp/HybridScp.cpp +398 -0
- package/cpp/HybridScp.hpp +96 -0
- package/cpp/HybridSecrets.cpp +328 -0
- package/cpp/HybridSecrets.hpp +84 -0
- package/cpp/HybridSecureString.cpp +175 -0
- package/cpp/HybridSecureString.hpp +55 -0
- package/cpp/HybridServerSentEvent.cpp +112 -0
- package/cpp/HybridServerSentEvent.hpp +41 -0
- package/cpp/HybridSocket.cpp +1567 -0
- package/cpp/HybridSocket.hpp +336 -0
- package/cpp/HybridSpider.cpp +543 -0
- package/cpp/HybridSpider.hpp +138 -0
- package/cpp/HybridSsh.cpp +1330 -0
- package/cpp/HybridSsh.hpp +282 -0
- package/cpp/HybridSshKey.cpp +310 -0
- package/cpp/HybridSshKey.hpp +83 -0
- package/cpp/HybridSshTunnel.cpp +687 -0
- package/cpp/HybridSshTunnel.hpp +159 -0
- package/cpp/HybridStream.cpp +496 -0
- package/cpp/HybridStream.hpp +123 -0
- package/cpp/HybridStringArray.cpp +368 -0
- package/cpp/HybridStringArray.hpp +99 -0
- package/cpp/HybridStringBuilder.cpp +739 -0
- package/cpp/HybridStringBuilder.hpp +178 -0
- package/cpp/HybridStringTable.cpp +218 -0
- package/cpp/HybridStringTable.hpp +66 -0
- package/cpp/HybridTar.cpp +547 -0
- package/cpp/HybridTar.hpp +134 -0
- package/cpp/HybridTrustedRoots.cpp +178 -0
- package/cpp/HybridTrustedRoots.hpp +61 -0
- package/cpp/HybridUnixCompress.cpp +191 -0
- package/cpp/HybridUnixCompress.hpp +60 -0
- package/cpp/HybridUpload.cpp +427 -0
- package/cpp/HybridUpload.hpp +114 -0
- package/cpp/HybridUrl.cpp +152 -0
- package/cpp/HybridUrl.hpp +48 -0
- package/cpp/HybridWebSocket.cpp +378 -0
- package/cpp/HybridWebSocket.hpp +103 -0
- package/cpp/HybridXml.cpp +1527 -0
- package/cpp/HybridXml.hpp +340 -0
- package/cpp/HybridXmlCertVault.cpp +215 -0
- package/cpp/HybridXmlCertVault.hpp +63 -0
- package/cpp/HybridXmlDSig.cpp +328 -0
- package/cpp/HybridXmlDSig.hpp +88 -0
- package/cpp/HybridXmlDSigGen.cpp +549 -0
- package/cpp/HybridXmlDSigGen.hpp +126 -0
- package/cpp/HybridXmp.cpp +329 -0
- package/cpp/HybridXmp.hpp +86 -0
- package/cpp/HybridZip.cpp +1000 -0
- package/cpp/HybridZip.hpp +226 -0
- package/cpp/HybridZipCrc.cpp +162 -0
- package/cpp/HybridZipCrc.hpp +57 -0
- package/cpp/HybridZipEntry.cpp +395 -0
- package/cpp/HybridZipEntry.hpp +102 -0
- package/cpp/runtime/AsyncCall.hpp +96 -0
- package/cpp/runtime/Bytes.hpp +49 -0
- package/cpp/runtime/ChilkatError.hpp +66 -0
- package/cpp/runtime/ChilkatObject.hpp +219 -0
- package/cpp/runtime/ProgLang.hpp +9 -0
- package/cpp/runtime/ProgressAdapter.hpp +43 -0
- package/nitro.json +113 -0
- package/nitrogen/generated/.gitattributes +1 -0
- package/nitrogen/generated/android/ChilkatRN+autolinking.cmake +179 -0
- package/nitrogen/generated/android/ChilkatRN+autolinking.gradle +27 -0
- package/nitrogen/generated/android/ChilkatRNOnLoad.cpp +1029 -0
- package/nitrogen/generated/android/ChilkatRNOnLoad.hpp +34 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/chilkat/ChilkatRNOnLoad.kt +35 -0
- package/nitrogen/generated/ios/ChilkatRN+autolinking.rb +62 -0
- package/nitrogen/generated/ios/ChilkatRN-Swift-Cxx-Bridge.cpp +17 -0
- package/nitrogen/generated/ios/ChilkatRN-Swift-Cxx-Bridge.hpp +27 -0
- package/nitrogen/generated/ios/ChilkatRN-Swift-Cxx-Umbrella.hpp +38 -0
- package/nitrogen/generated/ios/ChilkatRNAutolinking.mm +1015 -0
- package/nitrogen/generated/ios/ChilkatRNAutolinking.swift +16 -0
- package/nitrogen/generated/shared/c++/HybridAiSpec.cpp +114 -0
- package/nitrogen/generated/shared/c++/HybridAiSpec.hpp +175 -0
- package/nitrogen/generated/shared/c++/HybridAsnSpec.cpp +70 -0
- package/nitrogen/generated/shared/c++/HybridAsnSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridAuthAwsSpec.cpp +49 -0
- package/nitrogen/generated/shared/c++/HybridAuthAwsSpec.hpp +89 -0
- package/nitrogen/generated/shared/c++/HybridAuthAzureSASSpec.cpp +38 -0
- package/nitrogen/generated/shared/c++/HybridAuthAzureSASSpec.hpp +78 -0
- package/nitrogen/generated/shared/c++/HybridAuthAzureStorageSpec.cpp +41 -0
- package/nitrogen/generated/shared/c++/HybridAuthAzureStorageSpec.hpp +81 -0
- package/nitrogen/generated/shared/c++/HybridAuthGoogleSpec.cpp +56 -0
- package/nitrogen/generated/shared/c++/HybridAuthGoogleSpec.hpp +108 -0
- package/nitrogen/generated/shared/c++/HybridBinDataSpec.cpp +69 -0
- package/nitrogen/generated/shared/c++/HybridBinDataSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridBz2Spec.cpp +47 -0
- package/nitrogen/generated/shared/c++/HybridBz2Spec.hpp +93 -0
- package/nitrogen/generated/shared/c++/HybridCacheSpec.cpp +57 -0
- package/nitrogen/generated/shared/c++/HybridCacheSpec.hpp +106 -0
- package/nitrogen/generated/shared/c++/HybridCertChainSpec.cpp +40 -0
- package/nitrogen/generated/shared/c++/HybridCertChainSpec.hpp +89 -0
- package/nitrogen/generated/shared/c++/HybridCertSpec.cpp +138 -0
- package/nitrogen/generated/shared/c++/HybridCertSpec.hpp +205 -0
- package/nitrogen/generated/shared/c++/HybridCertStoreSpec.cpp +55 -0
- package/nitrogen/generated/shared/c++/HybridCertStoreSpec.hpp +104 -0
- package/nitrogen/generated/shared/c++/HybridCharsetSpec.cpp +61 -0
- package/nitrogen/generated/shared/c++/HybridCharsetSpec.hpp +101 -0
- package/nitrogen/generated/shared/c++/HybridCkDateTimeSpec.cpp +66 -0
- package/nitrogen/generated/shared/c++/HybridCkDateTimeSpec.hpp +115 -0
- package/nitrogen/generated/shared/c++/HybridCodeSignSpec.cpp +44 -0
- package/nitrogen/generated/shared/c++/HybridCodeSignSpec.hpp +93 -0
- package/nitrogen/generated/shared/c++/HybridCompressionSpec.cpp +79 -0
- package/nitrogen/generated/shared/c++/HybridCompressionSpec.hpp +134 -0
- package/nitrogen/generated/shared/c++/HybridCrypt2Spec.cpp +215 -0
- package/nitrogen/generated/shared/c++/HybridCrypt2Spec.hpp +283 -0
- package/nitrogen/generated/shared/c++/HybridCsrSpec.cpp +61 -0
- package/nitrogen/generated/shared/c++/HybridCsrSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridCsvSpec.cpp +72 -0
- package/nitrogen/generated/shared/c++/HybridCsvSpec.hpp +121 -0
- package/nitrogen/generated/shared/c++/HybridDhSpec.cpp +37 -0
- package/nitrogen/generated/shared/c++/HybridDhSpec.hpp +77 -0
- package/nitrogen/generated/shared/c++/HybridDirTreeSpec.cpp +46 -0
- package/nitrogen/generated/shared/c++/HybridDirTreeSpec.hpp +86 -0
- package/nitrogen/generated/shared/c++/HybridDkimSpec.cpp +60 -0
- package/nitrogen/generated/shared/c++/HybridDkimSpec.hpp +109 -0
- package/nitrogen/generated/shared/c++/HybridDnsSpec.cpp +51 -0
- package/nitrogen/generated/shared/c++/HybridDnsSpec.hpp +97 -0
- package/nitrogen/generated/shared/c++/HybridDsaSpec.cpp +73 -0
- package/nitrogen/generated/shared/c++/HybridDsaSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridDtObjSpec.cpp +50 -0
- package/nitrogen/generated/shared/c++/HybridDtObjSpec.hpp +90 -0
- package/nitrogen/generated/shared/c++/HybridEccSpec.cpp +41 -0
- package/nitrogen/generated/shared/c++/HybridEccSpec.hpp +96 -0
- package/nitrogen/generated/shared/c++/HybridEdDSASpec.cpp +38 -0
- package/nitrogen/generated/shared/c++/HybridEdDSASpec.hpp +90 -0
- package/nitrogen/generated/shared/c++/HybridEmailBundleSpec.cpp +45 -0
- package/nitrogen/generated/shared/c++/HybridEmailBundleSpec.hpp +91 -0
- package/nitrogen/generated/shared/c++/HybridEmailSpec.cpp +259 -0
- package/nitrogen/generated/shared/c++/HybridEmailSpec.hpp +326 -0
- package/nitrogen/generated/shared/c++/HybridFileAccessSpec.cpp +90 -0
- package/nitrogen/generated/shared/c++/HybridFileAccessSpec.hpp +140 -0
- package/nitrogen/generated/shared/c++/HybridFtp2Spec.cpp +367 -0
- package/nitrogen/generated/shared/c++/HybridFtp2Spec.hpp +434 -0
- package/nitrogen/generated/shared/c++/HybridGlobalSpec.cpp +59 -0
- package/nitrogen/generated/shared/c++/HybridGlobalSpec.hpp +99 -0
- package/nitrogen/generated/shared/c++/HybridGzipSpec.cpp +79 -0
- package/nitrogen/generated/shared/c++/HybridGzipSpec.hpp +134 -0
- package/nitrogen/generated/shared/c++/HybridHashtableSpec.cpp +45 -0
- package/nitrogen/generated/shared/c++/HybridHashtableSpec.hpp +91 -0
- package/nitrogen/generated/shared/c++/HybridHtmlToTextSpec.cpp +40 -0
- package/nitrogen/generated/shared/c++/HybridHtmlToTextSpec.hpp +83 -0
- package/nitrogen/generated/shared/c++/HybridHtmlToXmlSpec.cpp +49 -0
- package/nitrogen/generated/shared/c++/HybridHtmlToXmlSpec.hpp +95 -0
- package/nitrogen/generated/shared/c++/HybridHttpCurlSpec.cpp +67 -0
- package/nitrogen/generated/shared/c++/HybridHttpCurlSpec.hpp +125 -0
- package/nitrogen/generated/shared/c++/HybridHttpRequestSpec.cpp +76 -0
- package/nitrogen/generated/shared/c++/HybridHttpRequestSpec.hpp +122 -0
- package/nitrogen/generated/shared/c++/HybridHttpResponseSpec.cpp +64 -0
- package/nitrogen/generated/shared/c++/HybridHttpResponseSpec.hpp +119 -0
- package/nitrogen/generated/shared/c++/HybridHttpSpec.cpp +334 -0
- package/nitrogen/generated/shared/c++/HybridHttpSpec.hpp +407 -0
- package/nitrogen/generated/shared/c++/HybridImapSpec.cpp +275 -0
- package/nitrogen/generated/shared/c++/HybridImapSpec.hpp +360 -0
- package/nitrogen/generated/shared/c++/HybridJavaKeyStoreSpec.cpp +65 -0
- package/nitrogen/generated/shared/c++/HybridJavaKeyStoreSpec.hpp +132 -0
- package/nitrogen/generated/shared/c++/HybridJsSpec.cpp +43 -0
- package/nitrogen/generated/shared/c++/HybridJsSpec.hpp +92 -0
- package/nitrogen/generated/shared/c++/HybridJsonArraySpec.cpp +76 -0
- package/nitrogen/generated/shared/c++/HybridJsonArraySpec.hpp +131 -0
- package/nitrogen/generated/shared/c++/HybridJsonObjectSpec.cpp +154 -0
- package/nitrogen/generated/shared/c++/HybridJsonObjectSpec.hpp +218 -0
- package/nitrogen/generated/shared/c++/HybridJweSpec.cpp +57 -0
- package/nitrogen/generated/shared/c++/HybridJweSpec.hpp +112 -0
- package/nitrogen/generated/shared/c++/HybridJwsSpec.cpp +57 -0
- package/nitrogen/generated/shared/c++/HybridJwsSpec.hpp +115 -0
- package/nitrogen/generated/shared/c++/HybridJwtSpec.cpp +43 -0
- package/nitrogen/generated/shared/c++/HybridJwtSpec.hpp +92 -0
- package/nitrogen/generated/shared/c++/HybridLogSpec.cpp +44 -0
- package/nitrogen/generated/shared/c++/HybridLogSpec.hpp +85 -0
- package/nitrogen/generated/shared/c++/HybridMailManSpec.cpp +311 -0
- package/nitrogen/generated/shared/c++/HybridMailManSpec.hpp +396 -0
- package/nitrogen/generated/shared/c++/HybridMailboxesSpec.cpp +40 -0
- package/nitrogen/generated/shared/c++/HybridMailboxesSpec.hpp +80 -0
- package/nitrogen/generated/shared/c++/HybridMcpSpec.cpp +68 -0
- package/nitrogen/generated/shared/c++/HybridMcpSpec.hpp +117 -0
- package/nitrogen/generated/shared/c++/HybridMessageSetSpec.cpp +41 -0
- package/nitrogen/generated/shared/c++/HybridMessageSetSpec.hpp +84 -0
- package/nitrogen/generated/shared/c++/HybridMhtSpec.cpp +138 -0
- package/nitrogen/generated/shared/c++/HybridMhtSpec.hpp +181 -0
- package/nitrogen/generated/shared/c++/HybridMimeSpec.cpp +169 -0
- package/nitrogen/generated/shared/c++/HybridMimeSpec.hpp +233 -0
- package/nitrogen/generated/shared/c++/HybridNtlmSpec.cpp +69 -0
- package/nitrogen/generated/shared/c++/HybridNtlmSpec.hpp +109 -0
- package/nitrogen/generated/shared/c++/HybridOAuth1Spec.cpp +67 -0
- package/nitrogen/generated/shared/c++/HybridOAuth1Spec.hpp +110 -0
- package/nitrogen/generated/shared/c++/HybridOAuth2Spec.cpp +107 -0
- package/nitrogen/generated/shared/c++/HybridOAuth2Spec.hpp +156 -0
- package/nitrogen/generated/shared/c++/HybridPdfSpec.cpp +73 -0
- package/nitrogen/generated/shared/c++/HybridPdfSpec.hpp +134 -0
- package/nitrogen/generated/shared/c++/HybridPemSpec.cpp +63 -0
- package/nitrogen/generated/shared/c++/HybridPemSpec.hpp +124 -0
- package/nitrogen/generated/shared/c++/HybridPfxSpec.cpp +61 -0
- package/nitrogen/generated/shared/c++/HybridPfxSpec.hpp +122 -0
- package/nitrogen/generated/shared/c++/HybridPkcs11Spec.cpp +60 -0
- package/nitrogen/generated/shared/c++/HybridPkcs11Spec.hpp +115 -0
- package/nitrogen/generated/shared/c++/HybridPrivateKeySpec.cpp +76 -0
- package/nitrogen/generated/shared/c++/HybridPrivateKeySpec.hpp +131 -0
- package/nitrogen/generated/shared/c++/HybridPrngSpec.cpp +42 -0
- package/nitrogen/generated/shared/c++/HybridPrngSpec.hpp +85 -0
- package/nitrogen/generated/shared/c++/HybridPublicKeySpec.cpp +48 -0
- package/nitrogen/generated/shared/c++/HybridPublicKeySpec.hpp +91 -0
- package/nitrogen/generated/shared/c++/HybridRestSpec.cpp +150 -0
- package/nitrogen/generated/shared/c++/HybridRestSpec.hpp +229 -0
- package/nitrogen/generated/shared/c++/HybridRsaSpec.cpp +68 -0
- package/nitrogen/generated/shared/c++/HybridRsaSpec.hpp +120 -0
- package/nitrogen/generated/shared/c++/HybridSCardSpec.cpp +64 -0
- package/nitrogen/generated/shared/c++/HybridSCardSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridSFtpDirSpec.cpp +35 -0
- package/nitrogen/generated/shared/c++/HybridSFtpDirSpec.hpp +78 -0
- package/nitrogen/generated/shared/c++/HybridSFtpFileSpec.cpp +57 -0
- package/nitrogen/generated/shared/c++/HybridSFtpFileSpec.hpp +98 -0
- package/nitrogen/generated/shared/c++/HybridSFtpSpec.cpp +284 -0
- package/nitrogen/generated/shared/c++/HybridSFtpSpec.hpp +354 -0
- package/nitrogen/generated/shared/c++/HybridScMinidriverSpec.cpp +61 -0
- package/nitrogen/generated/shared/c++/HybridScMinidriverSpec.hpp +119 -0
- package/nitrogen/generated/shared/c++/HybridScpSpec.cpp +78 -0
- package/nitrogen/generated/shared/c++/HybridScpSpec.hpp +127 -0
- package/nitrogen/generated/shared/c++/HybridSecretsSpec.cpp +65 -0
- package/nitrogen/generated/shared/c++/HybridSecretsSpec.hpp +120 -0
- package/nitrogen/generated/shared/c++/HybridSecureStringSpec.cpp +42 -0
- package/nitrogen/generated/shared/c++/HybridSecureStringSpec.hpp +88 -0
- package/nitrogen/generated/shared/c++/HybridServerSentEventSpec.cpp +35 -0
- package/nitrogen/generated/shared/c++/HybridServerSentEventSpec.hpp +75 -0
- package/nitrogen/generated/shared/c++/HybridSocketSpec.cpp +262 -0
- package/nitrogen/generated/shared/c++/HybridSocketSpec.hpp +327 -0
- package/nitrogen/generated/shared/c++/HybridSpiderSpec.cpp +110 -0
- package/nitrogen/generated/shared/c++/HybridSpiderSpec.hpp +153 -0
- package/nitrogen/generated/shared/c++/HybridSshKeySpec.cpp +59 -0
- package/nitrogen/generated/shared/c++/HybridSshKeySpec.hpp +102 -0
- package/nitrogen/generated/shared/c++/HybridSshSpec.cpp +215 -0
- package/nitrogen/generated/shared/c++/HybridSshSpec.hpp +276 -0
- package/nitrogen/generated/shared/c++/HybridSshTunnelSpec.cpp +136 -0
- package/nitrogen/generated/shared/c++/HybridSshTunnelSpec.hpp +191 -0
- package/nitrogen/generated/shared/c++/HybridStreamSpec.cpp +100 -0
- package/nitrogen/generated/shared/c++/HybridStreamSpec.hpp +150 -0
- package/nitrogen/generated/shared/c++/HybridStringArraySpec.cpp +66 -0
- package/nitrogen/generated/shared/c++/HybridStringArraySpec.hpp +109 -0
- package/nitrogen/generated/shared/c++/HybridStringBuilderSpec.cpp +104 -0
- package/nitrogen/generated/shared/c++/HybridStringBuilderSpec.hpp +156 -0
- package/nitrogen/generated/shared/c++/HybridStringTableSpec.cpp +46 -0
- package/nitrogen/generated/shared/c++/HybridStringTableSpec.hpp +89 -0
- package/nitrogen/generated/shared/c++/HybridTarSpec.cpp +110 -0
- package/nitrogen/generated/shared/c++/HybridTarSpec.hpp +156 -0
- package/nitrogen/generated/shared/c++/HybridTrustedRootsSpec.cpp +48 -0
- package/nitrogen/generated/shared/c++/HybridTrustedRootsSpec.hpp +97 -0
- package/nitrogen/generated/shared/c++/HybridUnixCompressSpec.cpp +48 -0
- package/nitrogen/generated/shared/c++/HybridUnixCompressSpec.hpp +91 -0
- package/nitrogen/generated/shared/c++/HybridUploadSpec.cpp +98 -0
- package/nitrogen/generated/shared/c++/HybridUploadSpec.hpp +141 -0
- package/nitrogen/generated/shared/c++/HybridUrlSpec.cpp +42 -0
- package/nitrogen/generated/shared/c++/HybridUrlSpec.hpp +82 -0
- package/nitrogen/generated/shared/c++/HybridWebSocketSpec.cpp +80 -0
- package/nitrogen/generated/shared/c++/HybridWebSocketSpec.hpp +135 -0
- package/nitrogen/generated/shared/c++/HybridXmlCertVaultSpec.cpp +45 -0
- package/nitrogen/generated/shared/c++/HybridXmlCertVaultSpec.hpp +94 -0
- package/nitrogen/generated/shared/c++/HybridXmlDSigGenSpec.cpp +99 -0
- package/nitrogen/generated/shared/c++/HybridXmlDSigGenSpec.hpp +163 -0
- package/nitrogen/generated/shared/c++/HybridXmlDSigSpec.cpp +62 -0
- package/nitrogen/generated/shared/c++/HybridXmlDSigSpec.hpp +126 -0
- package/nitrogen/generated/shared/c++/HybridXmlSpec.cpp +203 -0
- package/nitrogen/generated/shared/c++/HybridXmlSpec.hpp +253 -0
- package/nitrogen/generated/shared/c++/HybridXmpSpec.cpp +58 -0
- package/nitrogen/generated/shared/c++/HybridXmpSpec.hpp +104 -0
- package/nitrogen/generated/shared/c++/HybridZipCrcSpec.cpp +43 -0
- package/nitrogen/generated/shared/c++/HybridZipCrcSpec.hpp +92 -0
- package/nitrogen/generated/shared/c++/HybridZipEntrySpec.cpp +82 -0
- package/nitrogen/generated/shared/c++/HybridZipEntrySpec.hpp +137 -0
- package/nitrogen/generated/shared/c++/HybridZipSpec.cpp +176 -0
- package/nitrogen/generated/shared/c++/HybridZipSpec.hpp +231 -0
- package/package.json +46 -0
- package/react-native.config.js +9 -0
- package/scripts/fetch-chilkat.js +184 -0
- package/src/index.ts +306 -0
- package/src/runtime/chilkat.ts +25 -0
- package/src/specs/Ai.nitro.ts +1288 -0
- package/src/specs/Asn.nitro.ts +509 -0
- package/src/specs/AuthAws.nitro.ts +234 -0
- package/src/specs/AuthAzureSAS.nitro.ts +205 -0
- package/src/specs/AuthAzureStorage.nitro.ts +172 -0
- package/src/specs/AuthGoogle.nitro.ts +291 -0
- package/src/specs/BinData.nitro.ts +470 -0
- package/src/specs/Bz2.nitro.ts +269 -0
- package/src/specs/Cache.nitro.ts +483 -0
- package/src/specs/Cert.nitro.ts +1279 -0
- package/src/specs/CertChain.nitro.ts +312 -0
- package/src/specs/CertStore.nitro.ts +430 -0
- package/src/specs/Charset.nitro.ts +518 -0
- package/src/specs/CkDateTime.nitro.ts +492 -0
- package/src/specs/CodeSign.nitro.ts +307 -0
- package/src/specs/Compression.nitro.ts +654 -0
- package/src/specs/Crypt2.nitro.ts +2387 -0
- package/src/specs/Csr.nitro.ts +461 -0
- package/src/specs/Csv.nitro.ts +670 -0
- package/src/specs/Dh.nitro.ts +343 -0
- package/src/specs/DirTree.nitro.ts +332 -0
- package/src/specs/Dkim.nitro.ts +595 -0
- package/src/specs/Dns.nitro.ts +271 -0
- package/src/specs/Dsa.nitro.ts +653 -0
- package/src/specs/DtObj.nitro.ts +198 -0
- package/src/specs/Ecc.nitro.ts +375 -0
- package/src/specs/EdDSA.nitro.ts +273 -0
- package/src/specs/Email.nitro.ts +2921 -0
- package/src/specs/EmailBundle.nitro.ts +334 -0
- package/src/specs/FileAccess.nitro.ts +836 -0
- package/src/specs/Ftp2.nitro.ts +3943 -0
- package/src/specs/Global.nitro.ts +319 -0
- package/src/specs/Gzip.nitro.ts +646 -0
- package/src/specs/Hashtable.nitro.ts +356 -0
- package/src/specs/HtmlToText.nitro.ts +238 -0
- package/src/specs/HtmlToXml.nitro.ts +323 -0
- package/src/specs/Http.nitro.ts +3095 -0
- package/src/specs/HttpCurl.nitro.ts +550 -0
- package/src/specs/HttpRequest.nitro.ts +522 -0
- package/src/specs/HttpResponse.nitro.ts +424 -0
- package/src/specs/Imap.nitro.ts +2991 -0
- package/src/specs/JavaKeyStore.nitro.ts +619 -0
- package/src/specs/Js.nitro.ts +263 -0
- package/src/specs/JsonArray.nitro.ts +681 -0
- package/src/specs/JsonObject.nitro.ts +1454 -0
- package/src/specs/Jwe.nitro.ts +756 -0
- package/src/specs/Jws.nitro.ts +733 -0
- package/src/specs/Jwt.nitro.ts +380 -0
- package/src/specs/Log.nitro.ts +258 -0
- package/src/specs/MailMan.nitro.ts +3571 -0
- package/src/specs/Mailboxes.nitro.ts +251 -0
- package/src/specs/Mcp.nitro.ts +491 -0
- package/src/specs/MessageSet.nitro.ts +320 -0
- package/src/specs/Mht.nitro.ts +1684 -0
- package/src/specs/Mime.nitro.ts +1745 -0
- package/src/specs/Ntlm.nitro.ts +556 -0
- package/src/specs/OAuth1.nitro.ts +331 -0
- package/src/specs/OAuth2.nitro.ts +1023 -0
- package/src/specs/Pdf.nitro.ts +740 -0
- package/src/specs/Pem.nitro.ts +484 -0
- package/src/specs/Pfx.nitro.ts +1003 -0
- package/src/specs/Pkcs11.nitro.ts +559 -0
- package/src/specs/PrivateKey.nitro.ts +994 -0
- package/src/specs/Prng.nitro.ts +348 -0
- package/src/specs/PublicKey.nitro.ts +610 -0
- package/src/specs/Rest.nitro.ts +1972 -0
- package/src/specs/Rsa.nitro.ts +453 -0
- package/src/specs/SCard.nitro.ts +739 -0
- package/src/specs/SFtp.nitro.ts +3138 -0
- package/src/specs/SFtpDir.nitro.ts +213 -0
- package/src/specs/SFtpFile.nitro.ts +452 -0
- package/src/specs/ScMinidriver.nitro.ts +443 -0
- package/src/specs/Scp.nitro.ts +708 -0
- package/src/specs/Secrets.nitro.ts +470 -0
- package/src/specs/SecureString.nitro.ts +231 -0
- package/src/specs/ServerSentEvent.nitro.ts +183 -0
- package/src/specs/Socket.nitro.ts +3335 -0
- package/src/specs/Spider.nitro.ts +609 -0
- package/src/specs/Ssh.nitro.ts +2842 -0
- package/src/specs/SshKey.nitro.ts +740 -0
- package/src/specs/SshTunnel.nitro.ts +1243 -0
- package/src/specs/Stream.nitro.ts +737 -0
- package/src/specs/StringArray.nitro.ts +396 -0
- package/src/specs/StringBuilder.nitro.ts +920 -0
- package/src/specs/StringTable.nitro.ts +271 -0
- package/src/specs/Tar.nitro.ts +804 -0
- package/src/specs/TrustedRoots.nitro.ts +360 -0
- package/src/specs/UnixCompress.nitro.ts +293 -0
- package/src/specs/Upload.nitro.ts +623 -0
- package/src/specs/Url.nitro.ts +246 -0
- package/src/specs/WebSocket.nitro.ts +840 -0
- package/src/specs/Xml.nitro.ts +1988 -0
- package/src/specs/XmlCertVault.nitro.ts +259 -0
- package/src/specs/XmlDSig.nitro.ts +464 -0
- package/src/specs/XmlDSigGen.nitro.ts +978 -0
- package/src/specs/Xmp.nitro.ts +364 -0
- package/src/specs/Zip.nitro.ts +1611 -0
- package/src/specs/ZipCrc.nitro.ts +229 -0
- package/src/specs/ZipEntry.nitro.ts +782 -0
|
@@ -0,0 +1,756 @@
|
|
|
1
|
+
// Generated by ReactNativeNs.RnGenerator -- do not edit.
|
|
2
|
+
import type { HybridObject } from 'react-native-nitro-modules'
|
|
3
|
+
import type { BinData } from './BinData.nitro'
|
|
4
|
+
import type { JsonObject } from './JsonObject.nitro'
|
|
5
|
+
import type { PrivateKey } from './PrivateKey.nitro'
|
|
6
|
+
import type { PublicKey } from './PublicKey.nitro'
|
|
7
|
+
import type { StringBuilder } from './StringBuilder.nitro'
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Create and decrypt JSON Web Encryption payloads in compact or JSON form.
|
|
11
|
+
*
|
|
12
|
+
* `Jwe` is the Chilkat class for creating and decrypting
|
|
13
|
+
* JSON Web Encryption objects. It supports text and binary payloads, compact
|
|
14
|
+
* serialization, flattened JSON serialization, general JSON serialization,
|
|
15
|
+
* protected and unprotected headers, Additional Authenticated Data, single or
|
|
16
|
+
* multiple recipients, and several key-management approaches including RSA,
|
|
17
|
+
* AES key wrapping, direct symmetric encryption, AES-GCM key wrapping, and
|
|
18
|
+
* PBES2 password-based key wrapping.
|
|
19
|
+
*
|
|
20
|
+
* **Encrypt text or binary data**
|
|
21
|
+
*
|
|
22
|
+
* Protect string or binary payloads using JWE content-encryption algorithms
|
|
23
|
+
* and the key-management method required by the recipient.
|
|
24
|
+
*
|
|
25
|
+
* **Decrypt JWE messages**
|
|
26
|
+
*
|
|
27
|
+
* Load a compact, flattened, or general JWE object and decrypt the payload
|
|
28
|
+
* using the appropriate private key, symmetric key, or password.
|
|
29
|
+
*
|
|
30
|
+
* **Compact and JSON formats**
|
|
31
|
+
*
|
|
32
|
+
* Produce or consume compact serialization for single-recipient workflows,
|
|
33
|
+
* or JSON serialization when richer header or multi-recipient structure is
|
|
34
|
+
* needed.
|
|
35
|
+
*
|
|
36
|
+
* **Single or multiple recipients**
|
|
37
|
+
*
|
|
38
|
+
* Create JWE data for one recipient or use general JSON serialization when
|
|
39
|
+
* the same encrypted payload must be decryptable by multiple recipients.
|
|
40
|
+
*
|
|
41
|
+
* **Headers and AAD**
|
|
42
|
+
*
|
|
43
|
+
* Configure protected headers, unprotected headers, recipient-specific
|
|
44
|
+
* headers, and Additional Authenticated Data for protocol-specific JWE
|
|
45
|
+
* requirements.
|
|
46
|
+
*
|
|
47
|
+
* **Flexible key management**
|
|
48
|
+
*
|
|
49
|
+
* Use RSA key management, AES key wrapping, direct symmetric keys,
|
|
50
|
+
* AES-GCM key wrapping, or PBES2 password-based key wrapping.
|
|
51
|
+
*
|
|
52
|
+
* **Common pattern:**
|
|
53
|
+
* Choose the JWE serialization format, set the protected header values such as
|
|
54
|
+
* `alg` and `enc`, add the recipient key information,
|
|
55
|
+
* provide the plaintext payload, and encrypt. To decrypt, load the JWE, provide
|
|
56
|
+
* the matching key or password, and retrieve the plaintext as text, bytes, or a
|
|
57
|
+
* Chilkat binary buffer.
|
|
58
|
+
*
|
|
59
|
+
* For an extended overview, see
|
|
60
|
+
* [Jwe Class Overview](https://www.chilkatsoft.com/jwe_class_overview.asp).
|
|
61
|
+
*
|
|
62
|
+
* Each `Jwe` instance owns a native Chilkat object. It is released when the JavaScript object is
|
|
63
|
+
* garbage collected, or immediately by `dispose()`; any use after `dispose()` throws.
|
|
64
|
+
* Create one with `new Jwe()`.
|
|
65
|
+
*/
|
|
66
|
+
export interface Jwe extends HybridObject<{ ios: 'c++', android: 'c++' }> {
|
|
67
|
+
// ---- Properties ----
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Provides HTML-formatted information about the last called method or property. If a method call
|
|
71
|
+
* fails or behaves unexpectedly, check this property for details. Note that information is
|
|
72
|
+
* available regardless of the method call's success.
|
|
73
|
+
*
|
|
74
|
+
* This property is read-only.
|
|
75
|
+
*/
|
|
76
|
+
readonly lastErrorHtml: string
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Provides plain text information about the last called method or property. If a method call
|
|
80
|
+
* fails or behaves unexpectedly, check this property for details. Note that information is
|
|
81
|
+
* available regardless of the method call's success.
|
|
82
|
+
*
|
|
83
|
+
* This property is read-only.
|
|
84
|
+
*/
|
|
85
|
+
readonly lastErrorText: string
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Provides XML-formatted information about the last called method or property. If a method call
|
|
89
|
+
* fails or behaves unexpectedly, check this property for details. Note that information is
|
|
90
|
+
* available regardless of the method call's success.
|
|
91
|
+
*
|
|
92
|
+
* This property is read-only.
|
|
93
|
+
*/
|
|
94
|
+
readonly lastErrorXml: string
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Version of the component/library, such as "10.1.0"
|
|
98
|
+
*
|
|
99
|
+
* This property is read-only.
|
|
100
|
+
*/
|
|
101
|
+
readonly version: string
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* If set to a file path, this property logs the LastErrorText of each Chilkat method or property
|
|
105
|
+
* call to the specified file. This logging helps identify the context and history of Chilkat
|
|
106
|
+
* calls leading up to any crash or hang, aiding in debugging.
|
|
107
|
+
*
|
|
108
|
+
* Enabling the VerboseLogging property provides more detailed information.
|
|
109
|
+
*
|
|
110
|
+
* This property is mainly used for debugging rare instances where a Chilkat method call causes a
|
|
111
|
+
* hang or crash, which should generally not happen.
|
|
112
|
+
*
|
|
113
|
+
* Possible causes of hangs include:
|
|
114
|
+
*
|
|
115
|
+
* - A timeout property set to 0, indicating an infinite timeout.
|
|
116
|
+
*
|
|
117
|
+
* - A hang occurring within an event callback in the application code.
|
|
118
|
+
*
|
|
119
|
+
* - An internal bug in the Chilkat code causing the hang.
|
|
120
|
+
*/
|
|
121
|
+
debugLogFilePath: string
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* If set to `true`, then the contents of LastErrorText (or LastErrorXml, or LastErrorHtml) may
|
|
125
|
+
* contain more verbose information. The default value is `false`. Verbose logging should only be
|
|
126
|
+
* used for debugging. The potentially large quantity of logged information may adversely affect
|
|
127
|
+
* peformance.
|
|
128
|
+
*/
|
|
129
|
+
verboseLogging: boolean
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Indicates the success or failure of the most recent method call: `true` means success, `false`
|
|
133
|
+
* means failure. This property remains unchanged by property setters or getters. This method is
|
|
134
|
+
* present to address challenges in checking for null or Nothing returns in certain programming
|
|
135
|
+
* languages. Note: This property does not apply to methods that return integer values or to
|
|
136
|
+
* boolean-returning methods where the boolean does not indicate success or failure.
|
|
137
|
+
*/
|
|
138
|
+
lastMethodSuccess: boolean
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* Returns the number of recipients in the loaded JWE or in the JWE currently being configured.
|
|
142
|
+
* Recipient indexes are zero-based and must be in the range `0` through `1000`.
|
|
143
|
+
*
|
|
144
|
+
* Object stateHow the count is determined
|
|
145
|
+
*
|
|
146
|
+
* | After `LoadJwe` or `LoadJweSb` | | Returns `1` for compact or flattened serialization, or the
|
|
147
|
+
* number of elements in the general JSON `recipients` array. |
|
|
148
|
+
*
|
|
149
|
+
* | Before encryption | | Returns one more than the highest index having a public key, wrapping
|
|
150
|
+
* key, or password, with a minimum value of `1`. Private keys and recipient headers do not
|
|
151
|
+
* increase the create-mode count. |
|
|
152
|
+
*
|
|
153
|
+
* Indexes may be configured in any order, but encryption processes every recipient from index `0`
|
|
154
|
+
* through `NumRecipients - 1`. For example, setting only a public key at index `2` implies three
|
|
155
|
+
* recipients; encryption then fails for indexes `0` and `1` because they are not fully
|
|
156
|
+
* configured. In practice, configure a contiguous range beginning at `0`.
|
|
157
|
+
*
|
|
158
|
+
* **No recipient removal method:** Re-setting an indexed key, password, or header replaces only
|
|
159
|
+
* that value. There is no method to remove an individual configured recipient, so use a fresh
|
|
160
|
+
* `Jwe` object for an unrelated recipient set.
|
|
161
|
+
*
|
|
162
|
+
* This property is read-only.
|
|
163
|
+
*/
|
|
164
|
+
readonly numRecipients: number
|
|
165
|
+
|
|
166
|
+
/**
|
|
167
|
+
* Controls whether encryption prefers JWE Compact Serialization. The default is `true`.
|
|
168
|
+
*
|
|
169
|
+
* ConfigurationSerialization selected
|
|
170
|
+
*
|
|
171
|
+
* | More than one recipient | | General JWE JSON Serialization, regardless of this property. |
|
|
172
|
+
*
|
|
173
|
+
* | One recipient, `PreferCompact` = `true`, and no shared unprotected header | | Compact
|
|
174
|
+
* Serialization. |
|
|
175
|
+
*
|
|
176
|
+
* | One recipient and `PreferCompact` = `false` | | A JSON serialization; `PreferFlattened`
|
|
177
|
+
* chooses flattened or general form. |
|
|
178
|
+
*
|
|
179
|
+
* | One recipient with a shared unprotected header, even an empty one | | A JSON serialization
|
|
180
|
+
* because compact form cannot carry the `unprotected` member. |
|
|
181
|
+
*
|
|
182
|
+
* A per-recipient header by itself does not prevent compact output. If compact form is selected,
|
|
183
|
+
* that header is not included. Set this property to `false` when a single-recipient per-recipient
|
|
184
|
+
* header must be emitted.
|
|
185
|
+
*
|
|
186
|
+
* **AAD and compact form:** Setting AAD does not itself force JSON output. If compact
|
|
187
|
+
* serialization is selected, the configured AAD is ignored and Chilkat logs a warning. Set
|
|
188
|
+
* `PreferCompact` to `false` when AAD must be carried and authenticated.
|
|
189
|
+
*/
|
|
190
|
+
preferCompact: boolean
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* Controls which JWE JSON Serialization is produced for a single recipient. The default is
|
|
194
|
+
* `true`. It has no effect when compact form is selected or when multiple recipients require
|
|
195
|
+
* general JSON.
|
|
196
|
+
*
|
|
197
|
+
* ConditionResult
|
|
198
|
+
*
|
|
199
|
+
* | One recipient, JSON required, and this property is `true` | | Flattened JWE JSON
|
|
200
|
+
* Serialization. |
|
|
201
|
+
*
|
|
202
|
+
* | One recipient, JSON required, and this property is `false` | | General JWE JSON Serialization
|
|
203
|
+
* containing a one-element `recipients` array. |
|
|
204
|
+
*
|
|
205
|
+
* | More than one recipient | | General JWE JSON Serialization. |
|
|
206
|
+
*
|
|
207
|
+
* To force general JSON for a single recipient, set both `PreferCompact` and `PreferFlattened` to
|
|
208
|
+
* `false`.
|
|
209
|
+
*
|
|
210
|
+
* **Empty header objects:** A shared protected header is emitted only when it contains members. A
|
|
211
|
+
* shared unprotected header is emitted whenever it has been set, even when empty. A configured
|
|
212
|
+
* per-recipient header is also emitted in JSON form even when empty.
|
|
213
|
+
*/
|
|
214
|
+
preferFlattened: boolean
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
* Provides a catch-all string for specialized compatibility options that are not exposed as
|
|
218
|
+
* ordinary properties. The default is the empty string, which is appropriate for normal JWE
|
|
219
|
+
* creation and decryption.
|
|
220
|
+
*
|
|
221
|
+
* **No public keywords documented:** This reference does not currently define any public
|
|
222
|
+
* `Jwe.UncommonOptions` keywords. Leave the property empty unless a Chilkat release note,
|
|
223
|
+
* example, or support response provides the exact option name, syntax, and intended use.
|
|
224
|
+
*/
|
|
225
|
+
uncommonOptions: string
|
|
226
|
+
|
|
227
|
+
// ---- Methods ----
|
|
228
|
+
|
|
229
|
+
/**
|
|
230
|
+
* Sets the shared JWE Protected Header from `json`. Chilkat copies the source `JsonObject`,
|
|
231
|
+
* replacing the previously configured protected header only if the call succeeds. The caller does
|
|
232
|
+
* not need to keep `json` alive or call this method again after modifying the original object.
|
|
233
|
+
*
|
|
234
|
+
* The protected header is serialized as UTF-8 and base64url-encoded. It is visible, but its
|
|
235
|
+
* encoded form is included in the authenticated data, so any modification causes authenticated
|
|
236
|
+
* decryption to fail.
|
|
237
|
+
*
|
|
238
|
+
* JWE patternRecommended placement
|
|
239
|
+
*
|
|
240
|
+
* | Single-recipient compact JWE | | Place `alg` and `enc` here. |
|
|
241
|
+
*
|
|
242
|
+
* | Single-recipient JSON JWE | | Normally place `alg` and `enc` here. |
|
|
243
|
+
*
|
|
244
|
+
* | Multiple recipients using different key-management algorithms | | Place the shared `enc` here
|
|
245
|
+
* and each recipient-specific `alg` in its per-recipient header. |
|
|
246
|
+
*
|
|
247
|
+
* | Multiple recipients using one common `alg` | | The common `alg` may be placed here. |
|
|
248
|
+
*
|
|
249
|
+
* - For PBES2, `p2s` and `p2c` may be placed here or in the applicable recipient header.
|
|
250
|
+
*
|
|
251
|
+
* - For ECDH-ES encryption, a protected header must be configured. Chilkat generates a fresh
|
|
252
|
+
* ephemeral EC key and writes its public JWK to `epk`. Optional `apu` and `apv` values must be
|
|
253
|
+
* supplied here as base64url strings.
|
|
254
|
+
*
|
|
255
|
+
* - For single-recipient compact AES-GCM key wrapping, Chilkat writes the wrapping `iv` and `tag`
|
|
256
|
+
* here. In JSON serialization they are written to the recipient header instead.
|
|
257
|
+
*
|
|
258
|
+
* - `zip`:`DEF` enables DEFLATE compression. Other `zip` values are ignored.
|
|
259
|
+
*
|
|
260
|
+
* **Object reuse:** Encryption can add generated members such as ECDH `epk` or AES-GCM key-wrap
|
|
261
|
+
* `iv`/`tag` to the stored headers. These values remain for later calls. Reusing an existing
|
|
262
|
+
* AES-GCM wrapping IV with the same key is unsafe; use a fresh `Jwe` object or reset the headers
|
|
263
|
+
* for each independent encryption.
|
|
264
|
+
*
|
|
265
|
+
* **Critical extensions:** The `Jwe` class does not enforce `crit`. Applications that accept
|
|
266
|
+
* critical JOSE extensions must inspect this header and reject unsupported entries before
|
|
267
|
+
* trusting the decrypted content.
|
|
268
|
+
*
|
|
269
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
270
|
+
* {@link Jwe.lastErrorText}.
|
|
271
|
+
*/
|
|
272
|
+
setProtectedHeader(json: JsonObject): void
|
|
273
|
+
|
|
274
|
+
/**
|
|
275
|
+
* Sets the shared JWE Unprotected Header from `json`. Chilkat copies the source `JsonObject`; a
|
|
276
|
+
* successful call replaces the previous shared unprotected header, while a failed call preserves
|
|
277
|
+
* it.
|
|
278
|
+
*
|
|
279
|
+
* The header applies to every recipient and can be represented only by JWE JSON Serialization.
|
|
280
|
+
* Setting it forces JSON output even when `json` is empty, in which case the output contains
|
|
281
|
+
* `"unprotected":{}`.
|
|
282
|
+
*
|
|
283
|
+
* **Not authenticated:** This header is neither encrypted nor integrity-protected. Do not place
|
|
284
|
+
* algorithm-policy, identity, authorization, or trusted key-location decisions here unless the
|
|
285
|
+
* application independently validates them.
|
|
286
|
+
*
|
|
287
|
+
* **Loading a JWE:** `LoadJwe` and `LoadJweSb` discard this configured header and replace all
|
|
288
|
+
* header state with the loaded message.
|
|
289
|
+
*
|
|
290
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
291
|
+
* {@link Jwe.lastErrorText}.
|
|
292
|
+
*/
|
|
293
|
+
setUnprotectedHeader(json: JsonObject): void
|
|
294
|
+
|
|
295
|
+
/**
|
|
296
|
+
* Sets the per-recipient unprotected header for zero-based recipient index `index`. The valid
|
|
297
|
+
* index range is `0` through `1000`. Chilkat copies `json`, and calling this method again at the
|
|
298
|
+
* same index replaces only that recipient header.
|
|
299
|
+
*
|
|
300
|
+
* In flattened JSON this becomes the top-level `header` member. In general JSON it becomes the
|
|
301
|
+
* `header` member of the corresponding element in the `recipients` array. An empty object is
|
|
302
|
+
* retained and emitted as `"header":{}`; it does not remove the recipient, and no
|
|
303
|
+
* recipient-removal method exists.
|
|
304
|
+
*
|
|
305
|
+
* Typical members include `kid`, recipient-specific `alg`, PBES2 `p2s`/`p2c`, or AES-GCM key-wrap
|
|
306
|
+
* `iv`/`tag`. Use the same index with the appropriate key or password setter.
|
|
307
|
+
*
|
|
308
|
+
* **Compact serialization:** A per-recipient header alone does not force JSON output. If compact
|
|
309
|
+
* serialization is selected for a single recipient, this header is omitted. Set `PreferCompact`
|
|
310
|
+
* to `false` when it must be serialized.
|
|
311
|
+
*
|
|
312
|
+
* **Recipient counting:** Before encryption, `NumRecipients` is determined by configured public
|
|
313
|
+
* keys, wrapping keys, and passwords. A recipient header by itself does not increase that count.
|
|
314
|
+
*
|
|
315
|
+
* **Not authenticated:** Per-recipient headers are unprotected. Treat values such as `kid` as
|
|
316
|
+
* routing hints and accept them only under application policy and after authenticated decryption
|
|
317
|
+
* succeeds.
|
|
318
|
+
*
|
|
319
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
320
|
+
* {@link Jwe.lastErrorText}.
|
|
321
|
+
*/
|
|
322
|
+
setRecipientHeader(index: number, json: JsonObject): void
|
|
323
|
+
|
|
324
|
+
/**
|
|
325
|
+
* Sets the private key used to decrypt recipient `index`. The valid index range is `0` through
|
|
326
|
+
* `1000`. Chilkat copies `privKey` and releases any previously stored private key at that index;
|
|
327
|
+
* the source object may be discarded after this call.
|
|
328
|
+
*
|
|
329
|
+
* Key typeApplicable `alg` values
|
|
330
|
+
*
|
|
331
|
+
* | RSA private key | | `RSA1_5`, `RSA-OAEP`, `RSA-OAEP-256`, `RSA-OAEP-384`, and `RSA-OAEP-512`.
|
|
332
|
+
* |
|
|
333
|
+
*
|
|
334
|
+
* | EC private key | | `ECDH-ES` and the `ECDH-ES+A128KW`, `+A192KW`, and `+A256KW` variants. |
|
|
335
|
+
*
|
|
336
|
+
* Call `LoadJwe` first, then set the private key for the selected recipient index, and finally
|
|
337
|
+
* call a decryption method with the same index. Loading does not clear previously stored keys, so
|
|
338
|
+
* explicitly overwrite keys when reusing the object for unrelated messages.
|
|
339
|
+
*
|
|
340
|
+
* **Validation timing:** A `true` return means the key was copied and stored. RSA-versus-EC type,
|
|
341
|
+
* curve, key size, and compatibility with the loaded `alg` are validated during decryption, not
|
|
342
|
+
* by this setter. If the setter fails, the previously stored key remains unchanged.
|
|
343
|
+
*
|
|
344
|
+
* **RSA-OAEP-256 compatibility:** During decryption, Chilkat includes a fallback for tokens
|
|
345
|
+
* produced by older Chilkat versions that labeled the algorithm `RSA-OAEP-256` while using SHA-1
|
|
346
|
+
* for the mask-generation function.
|
|
347
|
+
*
|
|
348
|
+
* **Recipient count:** Private keys are decryption state and do not increase create-mode
|
|
349
|
+
* `NumRecipients`.
|
|
350
|
+
*
|
|
351
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
352
|
+
* {@link Jwe.lastErrorText}.
|
|
353
|
+
*/
|
|
354
|
+
setPrivateKey(index: number, privKey: PrivateKey): void
|
|
355
|
+
|
|
356
|
+
/**
|
|
357
|
+
* Sets the public key used to encrypt for recipient `index`. The valid index range is `0` through
|
|
358
|
+
* `1000`. Chilkat copies `pubKey` and replaces only the public key at that index; the source
|
|
359
|
+
* object need not remain alive.
|
|
360
|
+
*
|
|
361
|
+
* Key typeApplicable `alg` values
|
|
362
|
+
*
|
|
363
|
+
* | RSA public key | | `RSA1_5`, `RSA-OAEP`, `RSA-OAEP-256`, `RSA-OAEP-384`, and `RSA-OAEP-512`.
|
|
364
|
+
* |
|
|
365
|
+
*
|
|
366
|
+
* | EC public key | | `ECDH-ES` and the `ECDH-ES+A128KW`, `+A192KW`, and `+A256KW` variants. |
|
|
367
|
+
*
|
|
368
|
+
* For ECDH-ES, Chilkat generates a fresh ephemeral key pair for each encryption on the same curve
|
|
369
|
+
* as the recipient key and writes the generated public key to protected-header `epk`. If an `epk`
|
|
370
|
+
* object was preconfigured, only its `crv` value is used as a curve-name hint; Chilkat replaces
|
|
371
|
+
* its `kty`, `x`, and `y` values.
|
|
372
|
+
*
|
|
373
|
+
* NIST P-256, P-384, P-521, and supported Brainpool EC keys can be used. X25519 is not supported
|
|
374
|
+
* by this JWE ECDH-ES implementation. ECDH-ES, including its `+A*KW` variants, should be used
|
|
375
|
+
* with a single recipient.
|
|
376
|
+
*
|
|
377
|
+
* **Validation timing:** A `true` result means the key was copied. Key type, size, curve, and
|
|
378
|
+
* `alg` compatibility are checked when `Encrypt`, `EncryptSb`, or `EncryptBd` runs. If the setter
|
|
379
|
+
* fails, the previously stored key remains unchanged.
|
|
380
|
+
*
|
|
381
|
+
* **Algorithm names:** `RSA-OAEP-384` and `RSA-OAEP-512` are Chilkat extensions beyond the base
|
|
382
|
+
* JOSE algorithm set; confirm peer interoperability before selecting them.
|
|
383
|
+
*
|
|
384
|
+
* **Recipient indexing:** Public keys contribute to create-mode `NumRecipients`. Configure a
|
|
385
|
+
* contiguous range beginning at index `0`; skipped lower indexes cause encryption to attempt
|
|
386
|
+
* incomplete recipients and fail.
|
|
387
|
+
*
|
|
388
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
389
|
+
* {@link Jwe.lastErrorText}.
|
|
390
|
+
*/
|
|
391
|
+
setPublicKey(index: number, pubKey: PublicKey): void
|
|
392
|
+
|
|
393
|
+
/**
|
|
394
|
+
* Sets the symmetric key for recipient `index`. `encodedKey` contains the key bytes encoded
|
|
395
|
+
* according to `encoding`, such as `hex` or `base64`. The valid index range is `0` through
|
|
396
|
+
* `1000`.
|
|
397
|
+
*
|
|
398
|
+
* Chilkat decodes and copies the key. A decoding failure returns `false` and leaves the previous
|
|
399
|
+
* key at that index unchanged. Algorithm-specific key length is validated during encryption or
|
|
400
|
+
* decryption.
|
|
401
|
+
*
|
|
402
|
+
* Algorithm familyRequired key length
|
|
403
|
+
*
|
|
404
|
+
* | `A128KW` or `A128GCMKW` | | 16 bytes |
|
|
405
|
+
*
|
|
406
|
+
* | `A192KW` or `A192GCMKW` | | 24 bytes |
|
|
407
|
+
*
|
|
408
|
+
* | `A256KW` or `A256GCMKW` | | 32 bytes |
|
|
409
|
+
*
|
|
410
|
+
* | `dir` with `A128GCM` | | 16 bytes |
|
|
411
|
+
*
|
|
412
|
+
* | `dir` with `A192GCM` | | 24 bytes |
|
|
413
|
+
*
|
|
414
|
+
* | `dir` with `A256GCM` | | 32 bytes |
|
|
415
|
+
*
|
|
416
|
+
* | `dir` with `A128CBC-HS256` | | 32 bytes |
|
|
417
|
+
*
|
|
418
|
+
* | `dir` with `A192CBC-HS384` | | 48 bytes |
|
|
419
|
+
*
|
|
420
|
+
* | `dir` with `A256CBC-HS512` | | 64 bytes |
|
|
421
|
+
*
|
|
422
|
+
* For `dir`, set the direct content-encryption key at index `0`. Direct encryption uses one
|
|
423
|
+
* shared key and is intended for a single recipient.
|
|
424
|
+
*
|
|
425
|
+
* **AES-GCM key wrapping:** For `A128GCMKW`, `A192GCMKW`, and `A256GCMKW`, Chilkat normally
|
|
426
|
+
* generates the required 12-byte wrapping IV and computes the 16-byte tag. A pre-set `iv` is used
|
|
427
|
+
* as-is and must decode to exactly 12 bytes. A pre-set `tag` is replaced by the computed tag.
|
|
428
|
+
* Compact output stores these values in the protected header; JSON output stores them in the
|
|
429
|
+
* recipient header. During decryption, the IV may be read from the recipient or a shared header;
|
|
430
|
+
* the tag is read from the recipient header, with the shared protected header also consulted for
|
|
431
|
+
* recipient index `0`. Both values are required.
|
|
432
|
+
*
|
|
433
|
+
* **Never reuse a wrapping IV:** Generated AES-GCM wrapping parameters remain in the stored
|
|
434
|
+
* headers after encryption. Reusing the object can therefore reuse an existing IV. Use a fresh
|
|
435
|
+
* object or reset the headers before each independent AES-GCM key-wrap encryption.
|
|
436
|
+
*
|
|
437
|
+
* **Recipient indexing:** Wrapping keys contribute to create-mode `NumRecipients`. Configure
|
|
438
|
+
* every index from `0` through the highest index used.
|
|
439
|
+
*
|
|
440
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
441
|
+
* {@link Jwe.lastErrorText}.
|
|
442
|
+
*/
|
|
443
|
+
setWrappingKey(index: number, encodedKey: string, encoding: string): void
|
|
444
|
+
|
|
445
|
+
/**
|
|
446
|
+
* Sets the PBES2 password for recipient `index`. The valid index range is `0` through `1000`.
|
|
447
|
+
* Chilkat converts `password` to UTF-8, copies it, and replaces only the password at that index.
|
|
448
|
+
*
|
|
449
|
+
* Use this method with `PBES2-HS256+A128KW`, `PBES2-HS384+A192KW`, or `PBES2-HS512+A256KW`. The
|
|
450
|
+
* applicable header must also contain:
|
|
451
|
+
*
|
|
452
|
+
* Header memberRequirement
|
|
453
|
+
*
|
|
454
|
+
* | `p2s` | | Base64url-encoded salt. Chilkat does not generate it, impose a minimum length, or
|
|
455
|
+
* detect reuse. Generate a fresh random salt of at least 8 bytes for each encryption. |
|
|
456
|
+
*
|
|
457
|
+
* | `p2c` | | A JSON integer or quoted numeric string from `1` through `999000`. Chilkat does not
|
|
458
|
+
* generate it. |
|
|
459
|
+
*
|
|
460
|
+
* The parameters may be in the protected header or the recipient header. A recipient-header value
|
|
461
|
+
* takes precedence over a shared value. Missing or invalid values are detected during encryption
|
|
462
|
+
* or decryption, not by this setter or by `LoadJwe`. If this setter fails, the previously stored
|
|
463
|
+
* password remains unchanged.
|
|
464
|
+
*
|
|
465
|
+
* **Cost policy:** The built-in maximum is 999,000 iterations. Applications accepting untrusted
|
|
466
|
+
* JWEs should still apply their own acceptable `p2c` range before decryption.
|
|
467
|
+
*
|
|
468
|
+
* **Recipient indexing:** Passwords contribute to create-mode `NumRecipients`. Configure a
|
|
469
|
+
* contiguous recipient range beginning at index `0`.
|
|
470
|
+
*
|
|
471
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
472
|
+
* {@link Jwe.lastErrorText}.
|
|
473
|
+
*/
|
|
474
|
+
setPassword(index: number, password: string): void
|
|
475
|
+
|
|
476
|
+
/**
|
|
477
|
+
* Encrypts `content` and returns the resulting compact, flattened JSON, or general JSON JWE.
|
|
478
|
+
* `content` is converted to bytes using charset `charset`. If the text cannot be represented in
|
|
479
|
+
* that charset, the method fails.
|
|
480
|
+
*
|
|
481
|
+
* Before calling this method, configure the protected header and each recipient's required public
|
|
482
|
+
* key, wrapping key, or password. The selected `alg` and `enc` values determine the required key
|
|
483
|
+
* type and length; final compatibility checks occur during this call. Chilkat generates the
|
|
484
|
+
* content-encryption IV automatically: 12 bytes for AES-GCM content encryption and 16 bytes for
|
|
485
|
+
* AES-CBC-HMAC content encryption.
|
|
486
|
+
*
|
|
487
|
+
* Serialization is selected by `NumRecipients`, `PreferCompact`, `PreferFlattened`, and whether a
|
|
488
|
+
* shared unprotected header is present. A single per-recipient header is omitted if compact
|
|
489
|
+
* serialization is selected. Configured AAD is also ignored in compact form and causes a warning.
|
|
490
|
+
*
|
|
491
|
+
* **Generated state persists:** Encryption replaces any previously loaded JWE and can add `epk`,
|
|
492
|
+
* AES-GCM wrapping `iv`/`tag`, and other generated parameters to the stored headers. Use a fresh
|
|
493
|
+
* object or reset headers for independent operations, especially to prevent AES-GCM wrapping-IV
|
|
494
|
+
* reuse.
|
|
495
|
+
*
|
|
496
|
+
* **Compression and extensions:** `zip`:`DEF` compresses before encryption. Unknown `zip` values
|
|
497
|
+
* are ignored. The class does not enforce `crit`; applications must apply any critical-extension
|
|
498
|
+
* policy themselves.
|
|
499
|
+
*
|
|
500
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
501
|
+
* {@link Jwe.lastErrorText}.
|
|
502
|
+
*/
|
|
503
|
+
encrypt(content: string, charset: string): string
|
|
504
|
+
|
|
505
|
+
/**
|
|
506
|
+
* Encodes the text in `contentSb` using charset `charset`, encrypts it, and appends the resulting
|
|
507
|
+
* JWE text to `jweSb`. Existing text in `jweSb` is preserved. If the input contains characters
|
|
508
|
+
* that cannot be represented in `charset`, the call fails.
|
|
509
|
+
*
|
|
510
|
+
* The same recipient configuration, serialization-selection, AAD, compression, and
|
|
511
|
+
* generated-header rules described for `Encrypt` apply.
|
|
512
|
+
*
|
|
513
|
+
* **Failure behavior:** Check the `true`/`false` return before using `jweSb`. A failure does not
|
|
514
|
+
* append a partial JWE.
|
|
515
|
+
*
|
|
516
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
517
|
+
* {@link Jwe.lastErrorText}.
|
|
518
|
+
*/
|
|
519
|
+
encryptSb(contentSb: StringBuilder, charset: string, jweSb: StringBuilder): void
|
|
520
|
+
|
|
521
|
+
/**
|
|
522
|
+
* Encrypts the exact bytes in `contentBd` and appends the resulting JWE text to `jweSb`. No
|
|
523
|
+
* character-set conversion is performed, making this the appropriate method for arbitrary binary
|
|
524
|
+
* content.
|
|
525
|
+
*
|
|
526
|
+
* The same recipient configuration, serialization-selection, AAD, compression, and
|
|
527
|
+
* generated-header rules described for `Encrypt` apply.
|
|
528
|
+
*
|
|
529
|
+
* **Failure behavior:** Check the `true`/`false` return before using `jweSb`. A failure does not
|
|
530
|
+
* append a partial JWE.
|
|
531
|
+
*
|
|
532
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
533
|
+
* {@link Jwe.lastErrorText}.
|
|
534
|
+
*/
|
|
535
|
+
encryptBd(contentBd: BinData, jweSb: StringBuilder): void
|
|
536
|
+
|
|
537
|
+
/**
|
|
538
|
+
* Decrypts recipient `index` from the currently loaded JWE and returns the plaintext decoded
|
|
539
|
+
* using charset `charset`. The valid recipient index range is `0` through `NumRecipients - 1`.
|
|
540
|
+
*
|
|
541
|
+
* - Call `LoadJwe` or `LoadJweSb`.
|
|
542
|
+
*
|
|
543
|
+
* - Inspect headers and select an acceptable recipient and algorithm under application policy.
|
|
544
|
+
*
|
|
545
|
+
* - Set the required private key, wrapping key, or password at the same index.
|
|
546
|
+
*
|
|
547
|
+
* - Call this method.
|
|
548
|
+
*
|
|
549
|
+
* Loaded AAD is used automatically. Authentication is completed before plaintext is returned. For
|
|
550
|
+
* `zip`:`DEF`, decompression occurs only after successful authentication, and no partial
|
|
551
|
+
* decompressed output is returned.
|
|
552
|
+
*
|
|
553
|
+
* **Charset errors:** Charset conversion errors cause `Decrypt` to fail.
|
|
554
|
+
*
|
|
555
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
556
|
+
* {@link Jwe.lastErrorText}.
|
|
557
|
+
*/
|
|
558
|
+
decrypt(index: number, charset: string): string
|
|
559
|
+
|
|
560
|
+
/**
|
|
561
|
+
* Decrypts recipient `index`, authenticates the JWE, decodes the plaintext bytes using charset
|
|
562
|
+
* `charset`, and appends the resulting text to `contentSb`. Loaded AAD is used automatically, and
|
|
563
|
+
* `zip`:`DEF` is decompressed only after authentication succeeds.
|
|
564
|
+
*
|
|
565
|
+
* **Atomic destination behavior:** On success, plaintext is appended and existing text is
|
|
566
|
+
* preserved. On failure, `contentSb` is left unchanged; no unauthenticated or partially decoded
|
|
567
|
+
* plaintext is delivered.
|
|
568
|
+
*
|
|
569
|
+
* **Charset handling:** Invalid byte sequences for `charset` cause failure. Use `DecryptBd` for
|
|
570
|
+
* raw binary plaintext.
|
|
571
|
+
*
|
|
572
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
573
|
+
* {@link Jwe.lastErrorText}.
|
|
574
|
+
*/
|
|
575
|
+
decryptSb(index: number, charset: string, contentSb: StringBuilder): void
|
|
576
|
+
|
|
577
|
+
/**
|
|
578
|
+
* Decrypts recipient `index` and appends the authenticated plaintext bytes to `bd`. No
|
|
579
|
+
* character-set conversion is performed. Loaded AAD is used automatically, and `zip`:`DEF` is
|
|
580
|
+
* decompressed only after authentication succeeds.
|
|
581
|
+
*
|
|
582
|
+
* **Atomic destination behavior:** On success, plaintext bytes are appended and existing bytes
|
|
583
|
+
* are preserved. On failure, `bd` is left unchanged; no partial or unauthenticated plaintext is
|
|
584
|
+
* delivered.
|
|
585
|
+
*
|
|
586
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
587
|
+
* {@link Jwe.lastErrorText}.
|
|
588
|
+
*/
|
|
589
|
+
decryptBd(index: number, bd: BinData): void
|
|
590
|
+
|
|
591
|
+
/**
|
|
592
|
+
* Loads `jwe` as JWE Compact Serialization, Flattened JWE JSON Serialization, or General JWE JSON
|
|
593
|
+
* Serialization. Loading parses structure and headers but does not decrypt, authenticate, or
|
|
594
|
+
* apply application algorithm policy.
|
|
595
|
+
*
|
|
596
|
+
* Input ruleBehavior
|
|
597
|
+
*
|
|
598
|
+
* | Leading or trailing whitespace | | Trimmed before format detection. |
|
|
599
|
+
*
|
|
600
|
+
* | First non-whitespace character is `{{` | | Parsed as flattened or general JSON. |
|
|
601
|
+
*
|
|
602
|
+
* | Other input | | Treated as compact serialization and required to contain exactly five
|
|
603
|
+
* dot-separated segments. |
|
|
604
|
+
*
|
|
605
|
+
* | Empty compact `encrypted_key` segment | | Accepted, as required by `dir` and direct
|
|
606
|
+
* `ECDH-ES`. |
|
|
607
|
+
*
|
|
608
|
+
* | Protected header | | Base64url-decoded and parsed as UTF-8 JSON during loading. Invalid
|
|
609
|
+
* protected-header encoding or JSON causes failure. |
|
|
610
|
+
*
|
|
611
|
+
* | General JSON with top-level flattened recipient members | | The `recipients` array takes
|
|
612
|
+
* precedence; top-level `header` and `encrypted_key` are ignored. |
|
|
613
|
+
*
|
|
614
|
+
* | Unknown top-level members | | Retained and visible through `GetHeader`, but otherwise
|
|
615
|
+
* ignored. |
|
|
616
|
+
*
|
|
617
|
+
* Most semantic checks are deferred until decryption, including presence and support of
|
|
618
|
+
* `alg`/`enc`, key compatibility, PBES2 parameter validity, and decoding or length checks for
|
|
619
|
+
* `iv`, `tag`, `ciphertext`, and `encrypted_key`.
|
|
620
|
+
*
|
|
621
|
+
* **State replacement:** Every load attempt discards the previous loaded JWE and clears
|
|
622
|
+
* configured protected, shared unprotected, recipient-header, and AAD state. A failed load does
|
|
623
|
+
* not restore the prior message. Public keys, private keys, wrapping keys, and passwords are not
|
|
624
|
+
* cleared. The normal decrypt sequence is therefore: load first, then set the selected recipient
|
|
625
|
+
* key, then decrypt.
|
|
626
|
+
*
|
|
627
|
+
* **Parsing details:** Padding, alternate Base64 alphabets, line breaks, and duplicate JSON
|
|
628
|
+
* member names follow Chilkat's underlying JSON and base64url decoders when each value is used.
|
|
629
|
+
* Malformed values generally fail during decryption if they were not needed during initial
|
|
630
|
+
* loading.
|
|
631
|
+
*
|
|
632
|
+
* **No authentication yet:** Headers and `kid` values are attacker-controlled until authenticated
|
|
633
|
+
* decryption succeeds. Apply an algorithm and key-selection allowlist before decrypting untrusted
|
|
634
|
+
* input.
|
|
635
|
+
*
|
|
636
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
637
|
+
* {@link Jwe.lastErrorText}.
|
|
638
|
+
*/
|
|
639
|
+
loadJwe(jwe: string): void
|
|
640
|
+
|
|
641
|
+
/**
|
|
642
|
+
* Loads the complete JWE text in `sb`. It accepts compact, flattened JSON, or general JSON
|
|
643
|
+
* serialization and otherwise follows all parsing, state-replacement, deferred-validation, and
|
|
644
|
+
* security behavior documented for `LoadJwe`.
|
|
645
|
+
*
|
|
646
|
+
* The source `StringBuilder` is read during the call and does not need to remain alive afterward.
|
|
647
|
+
*
|
|
648
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
649
|
+
* {@link Jwe.lastErrorText}.
|
|
650
|
+
*/
|
|
651
|
+
loadJweSb(sb: StringBuilder): void
|
|
652
|
+
|
|
653
|
+
/**
|
|
654
|
+
* Sets external Additional Authenticated Data (AAD) for a JWE being encrypted. `aad` is encoded
|
|
655
|
+
* using charset `charset`, and the resulting bytes replace any previously configured AAD. Chilkat
|
|
656
|
+
* copies the bytes. Passing an empty string clears AAD. If encoding or another validation step
|
|
657
|
+
* fails, the previous AAD remains unchanged.
|
|
658
|
+
*
|
|
659
|
+
* In JSON serialization, AAD is base64url-encoded into the top-level `aad` member and included in
|
|
660
|
+
* the authentication calculation. It is visible but cannot be modified without causing
|
|
661
|
+
* authentication failure.
|
|
662
|
+
*
|
|
663
|
+
* **Compact serialization:** AAD does not force JSON serialization. If compact form is selected,
|
|
664
|
+
* Chilkat ignores the configured AAD and logs a warning. Set `PreferCompact` to `false` when AAD
|
|
665
|
+
* must be emitted.
|
|
666
|
+
*
|
|
667
|
+
* **Decryption:** After loading a JSON JWE, Chilkat automatically uses its serialized `aad`
|
|
668
|
+
* value. Do not call this method merely to repeat AAD before decryption.
|
|
669
|
+
*
|
|
670
|
+
* **Exact bytes:** Character encoding is part of the AAD definition. Use `SetAadBd` when the
|
|
671
|
+
* protocol defines exact binary AAD.
|
|
672
|
+
*
|
|
673
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
674
|
+
* {@link Jwe.lastErrorText}.
|
|
675
|
+
*/
|
|
676
|
+
setAad(aad: string, charset: string): void
|
|
677
|
+
|
|
678
|
+
/**
|
|
679
|
+
* Sets external Additional Authenticated Data (AAD) to the exact bytes in `aad`. Chilkat copies
|
|
680
|
+
* the bytes, replacing previous AAD. Passing empty `BinData` clears AAD and causes no `aad`
|
|
681
|
+
* member to be emitted. If the setter fails, the previous AAD remains unchanged.
|
|
682
|
+
*
|
|
683
|
+
* In JSON serialization, the bytes are base64url-encoded into the top-level `aad` member and
|
|
684
|
+
* authenticated without being encrypted.
|
|
685
|
+
*
|
|
686
|
+
* **Compact serialization:** AAD does not force JSON output. If compact form is selected, the
|
|
687
|
+
* configured AAD is ignored and a warning is logged. Set `PreferCompact` to `false` when AAD is
|
|
688
|
+
* required.
|
|
689
|
+
*
|
|
690
|
+
* **Decryption:** A loaded JSON JWE supplies its own AAD automatically; do not set it again
|
|
691
|
+
* before decrypting.
|
|
692
|
+
*
|
|
693
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
694
|
+
* {@link Jwe.lastErrorText}.
|
|
695
|
+
*/
|
|
696
|
+
setAadBd(aad: BinData): void
|
|
697
|
+
|
|
698
|
+
/**
|
|
699
|
+
* Searches only the per-recipient unprotected headers for a member named `paramName` whose string
|
|
700
|
+
* value equals `paramValue`. `caseSensitive` controls whether both the member-name and value
|
|
701
|
+
* comparisons are case-sensitive.
|
|
702
|
+
*
|
|
703
|
+
* Returns the zero-based index of the first matching recipient, or `-1` when no match is found. A
|
|
704
|
+
* value of `-1` is also returned when the object cannot be searched; treat it simply as “no
|
|
705
|
+
* matching recipient found.” The protected and shared unprotected headers are not searched.
|
|
706
|
+
*
|
|
707
|
+
* A common use is to load a JWE, find a recipient by `kid`, set the corresponding key or password
|
|
708
|
+
* at the returned index, and decrypt using that same index.
|
|
709
|
+
*
|
|
710
|
+
* **Routing only:** Per-recipient headers are unprotected and attacker-controlled. Validate
|
|
711
|
+
* acceptable key identifiers and algorithms under application policy, and trust the result only
|
|
712
|
+
* after authenticated decryption succeeds.
|
|
713
|
+
*/
|
|
714
|
+
findRecipient(paramName: string, paramValue: string, caseSensitive: boolean): number
|
|
715
|
+
|
|
716
|
+
/**
|
|
717
|
+
* Copies the entire currently loaded JWE structure into `json` as a JSON object. This is the full
|
|
718
|
+
* JWE representation, not a decoded or merged JOSE header.
|
|
719
|
+
*
|
|
720
|
+
* The object can contain `protected` in its original base64url-encoded form, `unprotected`,
|
|
721
|
+
* `header`, `recipients`, `encrypted_key`, `iv`, `ciphertext`, `tag`, `aad`, and any retained
|
|
722
|
+
* unknown top-level members. A JWE originally loaded from compact form is also exposed in this
|
|
723
|
+
* JSON-object representation.
|
|
724
|
+
*
|
|
725
|
+
* On success, `json` is overwritten. The method requires a loaded JWE; on failure, `json` is left
|
|
726
|
+
* unchanged. Use `GetProtectedHeader` to obtain the decoded protected-header JSON.
|
|
727
|
+
*
|
|
728
|
+
* **No effective-header merge:** This method does not decode `protected` and does not combine
|
|
729
|
+
* protected, shared unprotected, and per-recipient members. Applications must inspect the
|
|
730
|
+
* relevant objects explicitly.
|
|
731
|
+
*
|
|
732
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
733
|
+
* {@link Jwe.lastErrorText}.
|
|
734
|
+
*/
|
|
735
|
+
getHeader(json: JsonObject): void
|
|
736
|
+
|
|
737
|
+
/**
|
|
738
|
+
* Copies the decoded shared JWE Protected Header into `json`. Only the protected header is
|
|
739
|
+
* returned; it is not merged with the shared unprotected header or any per-recipient header.
|
|
740
|
+
*
|
|
741
|
+
* The method succeeds after a protected header was configured with `SetProtectedHeader`, or after
|
|
742
|
+
* a JWE containing a protected header was loaded. On success `json` is overwritten; on failure it
|
|
743
|
+
* is left unchanged.
|
|
744
|
+
*
|
|
745
|
+
* Use this method to inspect `alg`, `enc`, `zip`, `crit`, and other protected parameters before
|
|
746
|
+
* choosing a key or applying application policy.
|
|
747
|
+
*
|
|
748
|
+
* **Authentication timing:** The header can be decoded before a key is supplied, but its
|
|
749
|
+
* integrity is established only when authenticated decryption succeeds. The `Jwe` class does not
|
|
750
|
+
* enforce `crit`; applications requiring critical-extension processing must do so themselves.
|
|
751
|
+
*
|
|
752
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
753
|
+
* {@link Jwe.lastErrorText}.
|
|
754
|
+
*/
|
|
755
|
+
getProtectedHeader(json: JsonObject): void
|
|
756
|
+
}
|