@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,740 @@
|
|
|
1
|
+
// Generated by ReactNativeNs.RnGenerator -- do not edit.
|
|
2
|
+
import type { HybridObject } from 'react-native-nitro-modules'
|
|
3
|
+
import type { Pkcs11 } from './Pkcs11.nitro'
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Import, export, generate, inspect, convert, and use SSH public or private keys.
|
|
7
|
+
*
|
|
8
|
+
* `SshKey` represents an SSH public or private key used for
|
|
9
|
+
* SSH authentication and key-management workflows. It can import, export,
|
|
10
|
+
* generate, inspect, and convert SSH keys in common formats such as OpenSSH,
|
|
11
|
+
* PuTTY, RFC 4716, and XML. It also supports encrypted private keys, key
|
|
12
|
+
* comments, fingerprints, RSA, DSA, ECDSA, and Ed25519 key types, PKCS#11-backed
|
|
13
|
+
* keys, and SSH user certificates for public-key authentication.
|
|
14
|
+
*
|
|
15
|
+
* **Import SSH keys**
|
|
16
|
+
*
|
|
17
|
+
* Load public or private SSH keys from OpenSSH, PuTTY, RFC 4716, XML, and
|
|
18
|
+
* other supported SSH key representations.
|
|
19
|
+
*
|
|
20
|
+
* **Export and convert**
|
|
21
|
+
*
|
|
22
|
+
* Convert SSH keys between supported formats for use with SSH servers,
|
|
23
|
+
* clients, key files, configuration tools, or other systems.
|
|
24
|
+
*
|
|
25
|
+
* **Generate key pairs**
|
|
26
|
+
*
|
|
27
|
+
* Generate SSH key pairs when an application needs new authentication key
|
|
28
|
+
* material.
|
|
29
|
+
*
|
|
30
|
+
* **Inspect key details**
|
|
31
|
+
*
|
|
32
|
+
* Determine whether a key is public or private, identify the key type, read
|
|
33
|
+
* comments, and compute fingerprints for verification or display.
|
|
34
|
+
*
|
|
35
|
+
* **Encrypted private keys**
|
|
36
|
+
*
|
|
37
|
+
* Load or export password-protected private keys when SSH key material
|
|
38
|
+
* must be stored securely.
|
|
39
|
+
*
|
|
40
|
+
* **PKCS#11 and certificates**
|
|
41
|
+
*
|
|
42
|
+
* Use PKCS#11-backed keys and SSH user certificates for authentication
|
|
43
|
+
* workflows where the private key may be token-backed or certificate-based.
|
|
44
|
+
*
|
|
45
|
+
* **Common pattern:**
|
|
46
|
+
* Use `SshKey` to load, generate, inspect, or convert SSH key
|
|
47
|
+
* material, then pass the key to `Chilkat.Ssh`,
|
|
48
|
+
* `Chilkat.SFtp`, or another SSH-based Chilkat class for public-key
|
|
49
|
+
* authentication. Use `Password` when importing or exporting
|
|
50
|
+
* encrypted private keys, and use `UsePkcs11` or
|
|
51
|
+
* `UseSshCertificate` when the authentication workflow depends on a
|
|
52
|
+
* token-backed key or SSH user certificate.
|
|
53
|
+
*
|
|
54
|
+
* For an extended overview, see
|
|
55
|
+
* [SshKey Class Overview](https://www.chilkatsoft.com/sshkey_class_overview.asp).
|
|
56
|
+
*
|
|
57
|
+
* Each `SshKey` instance owns a native Chilkat object. It is released when the JavaScript object is
|
|
58
|
+
* garbage collected, or immediately by `dispose()`; any use after `dispose()` throws.
|
|
59
|
+
* Create one with `new SshKey()`.
|
|
60
|
+
*/
|
|
61
|
+
export interface SshKey extends HybridObject<{ ios: 'c++', android: 'c++' }> {
|
|
62
|
+
// ---- Properties ----
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Provides HTML-formatted information about the last called method or property. If a method call
|
|
66
|
+
* fails or behaves unexpectedly, check this property for details. Note that information is
|
|
67
|
+
* available regardless of the method call's success.
|
|
68
|
+
*
|
|
69
|
+
* This property is read-only.
|
|
70
|
+
*/
|
|
71
|
+
readonly lastErrorHtml: string
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Provides plain text information about the last called method or property. If a method call
|
|
75
|
+
* fails or behaves unexpectedly, check this property for details. Note that information is
|
|
76
|
+
* available regardless of the method call's success.
|
|
77
|
+
*
|
|
78
|
+
* This property is read-only.
|
|
79
|
+
*/
|
|
80
|
+
readonly lastErrorText: string
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Provides XML-formatted information about the last called method or property. If a method call
|
|
84
|
+
* fails or behaves unexpectedly, check this property for details. Note that information is
|
|
85
|
+
* available regardless of the method call's success.
|
|
86
|
+
*
|
|
87
|
+
* This property is read-only.
|
|
88
|
+
*/
|
|
89
|
+
readonly lastErrorXml: string
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Version of the component/library, such as "10.1.0"
|
|
93
|
+
*
|
|
94
|
+
* This property is read-only.
|
|
95
|
+
*/
|
|
96
|
+
readonly version: string
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* If set to a file path, this property logs the LastErrorText of each Chilkat method or property
|
|
100
|
+
* call to the specified file. This logging helps identify the context and history of Chilkat
|
|
101
|
+
* calls leading up to any crash or hang, aiding in debugging.
|
|
102
|
+
*
|
|
103
|
+
* Enabling the VerboseLogging property provides more detailed information.
|
|
104
|
+
*
|
|
105
|
+
* This property is mainly used for debugging rare instances where a Chilkat method call causes a
|
|
106
|
+
* hang or crash, which should generally not happen.
|
|
107
|
+
*
|
|
108
|
+
* Possible causes of hangs include:
|
|
109
|
+
*
|
|
110
|
+
* - A timeout property set to 0, indicating an infinite timeout.
|
|
111
|
+
*
|
|
112
|
+
* - A hang occurring within an event callback in the application code.
|
|
113
|
+
*
|
|
114
|
+
* - An internal bug in the Chilkat code causing the hang.
|
|
115
|
+
*/
|
|
116
|
+
debugLogFilePath: string
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* If set to `true`, then the contents of LastErrorText (or LastErrorXml, or LastErrorHtml) may
|
|
120
|
+
* contain more verbose information. The default value is `false`. Verbose logging should only be
|
|
121
|
+
* used for debugging. The potentially large quantity of logged information may adversely affect
|
|
122
|
+
* peformance.
|
|
123
|
+
*/
|
|
124
|
+
verboseLogging: boolean
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Indicates the success or failure of the most recent method call: `true` means success, `false`
|
|
128
|
+
* means failure. This property remains unchanged by property setters or getters. This method is
|
|
129
|
+
* present to address challenges in checking for null or Nothing returns in certain programming
|
|
130
|
+
* languages. Note: This property does not apply to methods that return integer values or to
|
|
131
|
+
* boolean-returning methods where the boolean does not indicate success or failure.
|
|
132
|
+
*/
|
|
133
|
+
lastMethodSuccess: boolean
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Gets or sets the optional comment associated with the key.
|
|
137
|
+
*
|
|
138
|
+
* - OpenSSH public keys, RFC 4716 public keys, and PuTTY PPK files can contain a comment.
|
|
139
|
+
* Importing one of these formats sets this property from the imported text.
|
|
140
|
+
*
|
|
141
|
+
* - Importing an OpenSSH or RFC 4716 public key that has no comment sets this property to an
|
|
142
|
+
* empty string.
|
|
143
|
+
*
|
|
144
|
+
* - Changing the comment does not change the key or the value returned by {@link
|
|
145
|
+
* SshKey.genFingerprint}.
|
|
146
|
+
*
|
|
147
|
+
* - Exports that support comments use this value. Do not include carriage-return or line-feed
|
|
148
|
+
* characters because they are written into the exported text and can make the key file invalid.
|
|
149
|
+
*
|
|
150
|
+
* **OpenSSH import note:** For a one-line OpenSSH public key, the first whitespace-delimited word
|
|
151
|
+
* following the Base64 key data is stored as the comment.
|
|
152
|
+
*/
|
|
153
|
+
comment: string
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Indicates whether the object currently contains a DSA key.
|
|
157
|
+
*
|
|
158
|
+
* Returns `true` for either a DSA public key or a DSA private key. Returns `false` for RSA,
|
|
159
|
+
* ECDSA, Ed25519, or when no key is loaded. Use {@link SshKey.keyType} to distinguish among all
|
|
160
|
+
* supported key types.
|
|
161
|
+
*
|
|
162
|
+
* This property is read-only.
|
|
163
|
+
*/
|
|
164
|
+
readonly isDsaKey: boolean
|
|
165
|
+
|
|
166
|
+
/**
|
|
167
|
+
* Indicates whether the current key includes a private key.
|
|
168
|
+
*
|
|
169
|
+
* Returns `true` after importing or generating a private key. Returns `false` for a public-only
|
|
170
|
+
* key and for a newly constructed object that does not yet contain a key.
|
|
171
|
+
*
|
|
172
|
+
* This property describes whether private-key operations are available; it does not reveal or
|
|
173
|
+
* return the private-key material.
|
|
174
|
+
*
|
|
175
|
+
* This property is read-only.
|
|
176
|
+
*/
|
|
177
|
+
readonly isPrivateKey: boolean
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Indicates whether the object currently contains an RSA key.
|
|
181
|
+
*
|
|
182
|
+
* Returns `true` for either an RSA public key or an RSA private key. Returns `false` for DSA,
|
|
183
|
+
* ECDSA, Ed25519, or when no key is loaded. Use {@link SshKey.keyType} to distinguish among all
|
|
184
|
+
* supported key types.
|
|
185
|
+
*
|
|
186
|
+
* This property is read-only.
|
|
187
|
+
*/
|
|
188
|
+
readonly isRsaKey: boolean
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* Gets or sets the password used when importing or exporting an encrypted private key. The
|
|
192
|
+
* default is an empty string.
|
|
193
|
+
*
|
|
194
|
+
* - Set this property before importing an encrypted OpenSSH, PKCS #8, or PuTTY private key.
|
|
195
|
+
*
|
|
196
|
+
* - An empty or incorrect password causes an encrypted-key import to fail.
|
|
197
|
+
*
|
|
198
|
+
* - The property remains set until the application changes it; Chilkat does not automatically
|
|
199
|
+
* clear it after an import or export.
|
|
200
|
+
*
|
|
201
|
+
* - When {@link SshKey.toOpenSshPrivateKey} is called with `bEncrypt` equal to `true`, an empty
|
|
202
|
+
* password produces a private key encrypted with an empty passphrase. Applications should
|
|
203
|
+
* normally require a nonempty password.
|
|
204
|
+
*
|
|
205
|
+
* - When {@link SshKey.toPuttyPrivateKey} is called with `bEncrypt` equal to `true`, this
|
|
206
|
+
* property must be nonempty.
|
|
207
|
+
*/
|
|
208
|
+
password: string
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* Returns the type of key currently held by this object. A newly constructed object returns
|
|
212
|
+
* `none`.
|
|
213
|
+
*
|
|
214
|
+
* ValueMeaning
|
|
215
|
+
*
|
|
216
|
+
* | `rsa` | | RSA public or private key |
|
|
217
|
+
*
|
|
218
|
+
* | `dsa` | | DSA public or private key |
|
|
219
|
+
*
|
|
220
|
+
* | `ecdsa` | | ECDSA public or private key |
|
|
221
|
+
*
|
|
222
|
+
* | `ed25519` | | Ed25519 public or private key |
|
|
223
|
+
*
|
|
224
|
+
* | `none` | | No usable key is loaded |
|
|
225
|
+
*
|
|
226
|
+
* This property is read-only.
|
|
227
|
+
*/
|
|
228
|
+
readonly keyType: string
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Provides optional settings for uncommon compatibility requirements. The default is an empty
|
|
232
|
+
* string.
|
|
233
|
+
*
|
|
234
|
+
* The value is a comma-separated list of keywords. Keyword matching is case-insensitive,
|
|
235
|
+
* surrounding whitespace is ignored, and unknown keywords are ignored.
|
|
236
|
+
*
|
|
237
|
+
* - `DES-EDE3-CBC` — When {@link SshKey.toOpenSshPrivateKey} exports an encrypted traditional
|
|
238
|
+
* RSA, DSA, or ECDSA private key, use Triple-DES instead of the default AES-128-CBC encryption.
|
|
239
|
+
*
|
|
240
|
+
* This option does not change Ed25519 output, which uses the modern `OPENSSH PRIVATE KEY`
|
|
241
|
+
* container. Use legacy encryption only when required by older software.
|
|
242
|
+
*/
|
|
243
|
+
uncommonOptions: string
|
|
244
|
+
|
|
245
|
+
// ---- Methods ----
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Loads a private key from an OpenSSH-compatible, PEM, PKCS #8, or PuTTY private-key string.
|
|
249
|
+
*
|
|
250
|
+
* **Supported key types:** RSA, DSA, ECDSA, and Ed25519.
|
|
251
|
+
*
|
|
252
|
+
* Input representationTypical boundary or header
|
|
253
|
+
*
|
|
254
|
+
* | Modern OpenSSH | | `BEGIN OPENSSH PRIVATE KEY` |
|
|
255
|
+
*
|
|
256
|
+
* | Traditional RSA, DSA, or ECDSA PEM | | `BEGIN RSA PRIVATE KEY`, `BEGIN DSA PRIVATE KEY`, or
|
|
257
|
+
* `BEGIN ECDSA PRIVATE KEY` |
|
|
258
|
+
*
|
|
259
|
+
* | PKCS #8 | | `BEGIN PRIVATE KEY` or `BEGIN ENCRYPTED PRIVATE KEY` |
|
|
260
|
+
*
|
|
261
|
+
* | PuTTY PPK version 2 or 3 | | `PuTTY-User-Key-File-2` or `PuTTY-User-Key-File-3` |
|
|
262
|
+
*
|
|
263
|
+
* `keyStr` contains the key text, not a filesystem path. If the key is encrypted, set {@link
|
|
264
|
+
* SshKey.password} before calling this method. To read the text from a file, call {@link
|
|
265
|
+
* SshKey.loadText} first.
|
|
266
|
+
*
|
|
267
|
+
* Chilkat tolerates a UTF-8 BOM, leading or trailing whitespace, and unrelated text surrounding a
|
|
268
|
+
* PEM/OpenSSH key. If `keyStr` contains more than one recognized private key, the first key is
|
|
269
|
+
* loaded.
|
|
270
|
+
*
|
|
271
|
+
* ```
|
|
272
|
+
* -----BEGIN OPENSSH PRIVATE KEY-----
|
|
273
|
+
* ...
|
|
274
|
+
* -----END OPENSSH PRIVATE KEY-----
|
|
275
|
+
* ```
|
|
276
|
+
*
|
|
277
|
+
* **Object-state note:** A successful call replaces the current key. If the call fails after
|
|
278
|
+
* parsing has begun—for example, because the password is wrong or the key data is damaged—the
|
|
279
|
+
* previous key is not guaranteed to remain available. Use a fresh `SshKey` object when an
|
|
280
|
+
* application must preserve an existing key.
|
|
281
|
+
*
|
|
282
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
283
|
+
* {@link SshKey.lastErrorText}.
|
|
284
|
+
*/
|
|
285
|
+
fromOpenSshPrivateKey(keyStr: string): void
|
|
286
|
+
|
|
287
|
+
/**
|
|
288
|
+
* Loads an SSH public key from a string.
|
|
289
|
+
*
|
|
290
|
+
* The method accepts:
|
|
291
|
+
*
|
|
292
|
+
* - A one-line OpenSSH public key for RSA, DSA, ECDSA, or Ed25519.
|
|
293
|
+
*
|
|
294
|
+
* - An RFC 4716 / PuTTY SSH2 public key, which is detected automatically.
|
|
295
|
+
*
|
|
296
|
+
* `keyStr` contains the public-key text, not a filesystem path. For a one-line key, the first
|
|
297
|
+
* field is the algorithm name, the second field is the Base64 key data, and the first
|
|
298
|
+
* whitespace-delimited word after the key data is stored in {@link SshKey.comment}.
|
|
299
|
+
*
|
|
300
|
+
* ```
|
|
301
|
+
* ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... user@example
|
|
302
|
+
* ```
|
|
303
|
+
*
|
|
304
|
+
* A UTF-8 BOM, surrounding whitespace, CRLF, and LF line endings are accepted. If multiple
|
|
305
|
+
* public-key lines are supplied, the first key is loaded.
|
|
306
|
+
*
|
|
307
|
+
* **`authorized_keys` note:** `keyStr` must begin with the key algorithm. A complete
|
|
308
|
+
* `authorized_keys` entry having options such as `restrict` or `from="..."` before the algorithm
|
|
309
|
+
* is not accepted. Remove those options before calling this method.
|
|
310
|
+
*
|
|
311
|
+
* **Object-state note:** A successful call replaces the current key. After a failed import, do
|
|
312
|
+
* not assume the previous key and properties are unchanged.
|
|
313
|
+
*
|
|
314
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
315
|
+
* {@link SshKey.lastErrorText}.
|
|
316
|
+
*/
|
|
317
|
+
fromOpenSshPublicKey(keyStr: string): void
|
|
318
|
+
|
|
319
|
+
/**
|
|
320
|
+
* Loads a private key from PuTTY PPK format. PPK versions 2 and 3 are supported.
|
|
321
|
+
*
|
|
322
|
+
* If `keyStr` contains an OpenSSH, traditional PEM, or PKCS #8 private key instead, Chilkat
|
|
323
|
+
* automatically detects and imports that format.
|
|
324
|
+
*
|
|
325
|
+
* - `keyStr` contains the complete key text, not a filesystem path.
|
|
326
|
+
*
|
|
327
|
+
* - If the private key is encrypted, set {@link SshKey.password} before calling this method.
|
|
328
|
+
*
|
|
329
|
+
* - The PPK integrity MAC is verified.
|
|
330
|
+
*
|
|
331
|
+
* - A UTF-8 BOM is accepted. For a PPK input, the PPK header must otherwise be at the beginning
|
|
332
|
+
* of `keyStr`; leading whitespace or unrelated text is not accepted.
|
|
333
|
+
*
|
|
334
|
+
* - Trailing text after a single PPK is tolerated, but concatenated PPK files are not accepted.
|
|
335
|
+
*
|
|
336
|
+
* ```
|
|
337
|
+
* PuTTY-User-Key-File-3: ssh-ed25519
|
|
338
|
+
* Encryption: aes256-cbc
|
|
339
|
+
* Comment: example-key
|
|
340
|
+
* Public-Lines: ...
|
|
341
|
+
* ```
|
|
342
|
+
*
|
|
343
|
+
* **Object-state note:** A successful call replaces the current key. If the call fails, the
|
|
344
|
+
* previous key is not guaranteed to remain available.
|
|
345
|
+
*
|
|
346
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
347
|
+
* {@link SshKey.lastErrorText}.
|
|
348
|
+
*/
|
|
349
|
+
fromPuttyPrivateKey(keyStr: string): void
|
|
350
|
+
|
|
351
|
+
/**
|
|
352
|
+
* Loads a public key from RFC 4716 SSH2 public-key format.
|
|
353
|
+
*
|
|
354
|
+
* `keyStr` contains the key text, not a filesystem path. RSA, DSA, ECDSA, and Ed25519 public keys
|
|
355
|
+
* are supported.
|
|
356
|
+
*
|
|
357
|
+
* ```
|
|
358
|
+
* ---- BEGIN SSH2 PUBLIC KEY ----
|
|
359
|
+
* Comment: "optional comment"
|
|
360
|
+
* AAAAB3NzaC1yc2EAAAADAQABAAABAQ...
|
|
361
|
+
* ---- END SSH2 PUBLIC KEY ----
|
|
362
|
+
* ```
|
|
363
|
+
*
|
|
364
|
+
* The parser accepts a UTF-8 BOM, surrounding whitespace, long or continued comments, and
|
|
365
|
+
* additional RFC 4716 header fields. It also tolerates unrelated text before or after the key. If
|
|
366
|
+
* multiple RFC 4716 keys are supplied, the first key is loaded.
|
|
367
|
+
*
|
|
368
|
+
* The `Comment:` header, when present, is stored in {@link SshKey.comment}. If it is absent, the
|
|
369
|
+
* comment is empty.
|
|
370
|
+
*
|
|
371
|
+
* **Object-state note:** A successful call replaces the current key. After a failed import, do
|
|
372
|
+
* not assume the previous key and properties are unchanged.
|
|
373
|
+
*
|
|
374
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
375
|
+
* {@link SshKey.lastErrorText}.
|
|
376
|
+
*/
|
|
377
|
+
fromRfc4716PublicKey(keyStr: string): void
|
|
378
|
+
|
|
379
|
+
/**
|
|
380
|
+
* Loads an SSH public or private key from an XML string.
|
|
381
|
+
*
|
|
382
|
+
* `xmlKey` contains the XML itself, not a filesystem path. The key is public-only when the XML
|
|
383
|
+
* contains only public components and is private when private components are present.
|
|
384
|
+
*
|
|
385
|
+
* Key typePrivate-key formPublic-key form
|
|
386
|
+
*
|
|
387
|
+
* | RSA | | `RSAKeyValue` | | `RSAPublicKey` |
|
|
388
|
+
*
|
|
389
|
+
* | DSA | | `DSAKeyValue` | | `DSAPublicKey` |
|
|
390
|
+
*
|
|
391
|
+
* | ECDSA | | `ECCKeyValue` | | `ECCPublicKey` |
|
|
392
|
+
*
|
|
393
|
+
* | Ed25519 | | `Ed25519KeyValue` | | `Ed25519PublicKey` |
|
|
394
|
+
*
|
|
395
|
+
* ```
|
|
396
|
+
* <RSAKeyValue>
|
|
397
|
+
* <Modulus>...</Modulus>
|
|
398
|
+
* <Exponent>AQAB</Exponent>
|
|
399
|
+
* ...
|
|
400
|
+
* </RSAKeyValue>
|
|
401
|
+
* ```
|
|
402
|
+
*
|
|
403
|
+
* A UTF-8 BOM, surrounding whitespace, and an XML declaration are accepted. Root-element name
|
|
404
|
+
* matching is case-insensitive. These XML representations do not contain the SSH comment; set
|
|
405
|
+
* {@link SshKey.comment} separately when needed.
|
|
406
|
+
*
|
|
407
|
+
* **Object-state note:** A successful call replaces the current key. After a failed import, do
|
|
408
|
+
* not assume the previous key and properties are unchanged.
|
|
409
|
+
*
|
|
410
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
411
|
+
* {@link SshKey.lastErrorText}.
|
|
412
|
+
*/
|
|
413
|
+
fromXml(xmlKey: string): void
|
|
414
|
+
|
|
415
|
+
/**
|
|
416
|
+
* Returns a printable fingerprint for the key currently held by this object.
|
|
417
|
+
*
|
|
418
|
+
* The fingerprint is calculated from the public portion of the key. Therefore:
|
|
419
|
+
*
|
|
420
|
+
* - The public and private representations of the same key return the same fingerprint.
|
|
421
|
+
*
|
|
422
|
+
* - OpenSSH, PuTTY, RFC 4716, and XML representations of the same key return the same
|
|
423
|
+
* fingerprint.
|
|
424
|
+
*
|
|
425
|
+
* - Changing {@link SshKey.comment} does not change the fingerprint.
|
|
426
|
+
*
|
|
427
|
+
* The returned string contains the SSH algorithm name, the reported key size when applicable, and
|
|
428
|
+
* a colon-separated 16-byte hexadecimal digest:
|
|
429
|
+
*
|
|
430
|
+
* ```
|
|
431
|
+
* ssh-rsa 2048 4c:98:46:ba:46:33:ba:9e:39:11:5c:a5:a3:9c:6b:ee
|
|
432
|
+
* ssh-ed25519 b7:71:3f:81:d6:fd:1d:b1:ff:87:18:63:f6:32:3f:67
|
|
433
|
+
* ```
|
|
434
|
+
*
|
|
435
|
+
* Ed25519 has no numeric size field. A P-521 ECDSA key is reported as `528` bits because of its
|
|
436
|
+
* SSH point encoding. If no usable key is loaded, an empty string is returned.
|
|
437
|
+
*
|
|
438
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
439
|
+
* {@link SshKey.lastErrorText}.
|
|
440
|
+
*/
|
|
441
|
+
genFingerprint(): string
|
|
442
|
+
|
|
443
|
+
/**
|
|
444
|
+
* Generates a new DSA public/private key pair.
|
|
445
|
+
*
|
|
446
|
+
* `numBits` specifies the requested key size in bits. For maximum interoperability with SSH
|
|
447
|
+
* implementations that still allow DSA, use `1024`.
|
|
448
|
+
*
|
|
449
|
+
* Nonstandard sizes may be accepted, and the resulting key size may differ from the value
|
|
450
|
+
* requested. DSA is a legacy algorithm and should generally be avoided for new systems.
|
|
451
|
+
*
|
|
452
|
+
* On success, the generated private key replaces the previous key. Existing values of {@link
|
|
453
|
+
* SshKey.comment}, {@link SshKey.password}, and {@link SshKey.uncommonOptions} are not used as
|
|
454
|
+
* key-generation parameters.
|
|
455
|
+
*
|
|
456
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
457
|
+
* {@link SshKey.lastErrorText}.
|
|
458
|
+
*/
|
|
459
|
+
generateDsaKey(numBits: number): void
|
|
460
|
+
|
|
461
|
+
/**
|
|
462
|
+
* Generates a new RSA public/private key pair.
|
|
463
|
+
*
|
|
464
|
+
* - `numBits` specifies the requested key size in bits. Tested supported sizes range from `512`
|
|
465
|
+
* through `4096`. For new applications, use at least `2048`.
|
|
466
|
+
*
|
|
467
|
+
* - The `exponent` argument is ignored. Chilkat always generates RSA keys using the public
|
|
468
|
+
* exponent `65537`. The argument is retained for backward compatibility.
|
|
469
|
+
*
|
|
470
|
+
* On success, the generated private key replaces the previous key. The writable properties {@link
|
|
471
|
+
* SshKey.comment}, {@link SshKey.password}, and {@link SshKey.uncommonOptions} remain set to
|
|
472
|
+
* their existing values.
|
|
473
|
+
*
|
|
474
|
+
* If generation fails, the previous key is not guaranteed to remain available. Use a fresh object
|
|
475
|
+
* when preserving an existing key is important.
|
|
476
|
+
*
|
|
477
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
478
|
+
* {@link SshKey.lastErrorText}.
|
|
479
|
+
*/
|
|
480
|
+
generateRsaKey(numBits: number, exponent: number): void
|
|
481
|
+
|
|
482
|
+
/**
|
|
483
|
+
* Reads an entire text file and returns its contents as a string.
|
|
484
|
+
*
|
|
485
|
+
* `filename` is the path of the file to read. This method is convenient for loading ASCII-armored
|
|
486
|
+
* SSH key text before calling an import method.
|
|
487
|
+
*
|
|
488
|
+
* - If the file does not exist or cannot be read, the method returns null.
|
|
489
|
+
*
|
|
490
|
+
* - This is a text operation, not a byte-preserving binary read. Non-ASCII data may be converted
|
|
491
|
+
* according to the platform and Chilkat string-encoding settings.
|
|
492
|
+
*
|
|
493
|
+
* - For exact binary bytes, use a binary-oriented class such as `BinData` or `FileAccess`
|
|
494
|
+
* instead.
|
|
495
|
+
*
|
|
496
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
497
|
+
* {@link SshKey.lastErrorText}.
|
|
498
|
+
*/
|
|
499
|
+
loadText(filename: string): string
|
|
500
|
+
|
|
501
|
+
/**
|
|
502
|
+
* Writes a string to a text file.
|
|
503
|
+
*
|
|
504
|
+
* - `strToSave` contains the text to write.
|
|
505
|
+
*
|
|
506
|
+
* - `filename` is the destination path.
|
|
507
|
+
*
|
|
508
|
+
* - An existing file is overwritten.
|
|
509
|
+
*
|
|
510
|
+
* - Missing parent directories are not created automatically.
|
|
511
|
+
*
|
|
512
|
+
* - This is a text operation. ASCII key text is written as expected, but arbitrary non-ASCII
|
|
513
|
+
* bytes should be written with a binary-oriented API.
|
|
514
|
+
*
|
|
515
|
+
* This method is commonly used to save the strings returned by the key-export methods.
|
|
516
|
+
*
|
|
517
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
518
|
+
* {@link SshKey.lastErrorText}.
|
|
519
|
+
*/
|
|
520
|
+
saveText(strToSave: string, filename: string): void
|
|
521
|
+
|
|
522
|
+
/**
|
|
523
|
+
* Exports the current private key as an OpenSSH-compatible private-key string.
|
|
524
|
+
*
|
|
525
|
+
* - `bEncrypt` equal to `false` returns an unencrypted private key.
|
|
526
|
+
*
|
|
527
|
+
* - `bEncrypt` equal to `true` returns an encrypted private key using {@link SshKey.password}.
|
|
528
|
+
*
|
|
529
|
+
* - If the object contains only a public key, the method fails.
|
|
530
|
+
*
|
|
531
|
+
* Key typeOutput container
|
|
532
|
+
*
|
|
533
|
+
* | RSA | | `BEGIN RSA PRIVATE KEY` |
|
|
534
|
+
*
|
|
535
|
+
* | DSA | | `BEGIN DSA PRIVATE KEY` |
|
|
536
|
+
*
|
|
537
|
+
* | ECDSA | | `BEGIN ECDSA PRIVATE KEY` |
|
|
538
|
+
*
|
|
539
|
+
* | Ed25519 | | `BEGIN OPENSSH PRIVATE KEY` |
|
|
540
|
+
*
|
|
541
|
+
* Encrypted traditional RSA, DSA, and ECDSA output uses AES-128-CBC by default. See {@link
|
|
542
|
+
* SshKey.uncommonOptions} for the legacy Triple-DES option.
|
|
543
|
+
*
|
|
544
|
+
* **Empty-password warning:** When `bEncrypt` is `true` and {@link SshKey.password} is empty, the
|
|
545
|
+
* method still returns a key encrypted with an empty passphrase.
|
|
546
|
+
*
|
|
547
|
+
* The output uses CRLF line endings and ends with CRLF.
|
|
548
|
+
*
|
|
549
|
+
* ```
|
|
550
|
+
* -----BEGIN RSA PRIVATE KEY-----
|
|
551
|
+
* ...
|
|
552
|
+
* -----END RSA PRIVATE KEY-----
|
|
553
|
+
* ```
|
|
554
|
+
*
|
|
555
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
556
|
+
* {@link SshKey.lastErrorText}.
|
|
557
|
+
*/
|
|
558
|
+
toOpenSshPrivateKey(bEncrypt: boolean): string
|
|
559
|
+
|
|
560
|
+
/**
|
|
561
|
+
* Exports the public portion of the current key in one-line OpenSSH public-key format.
|
|
562
|
+
*
|
|
563
|
+
* The method works when the object contains either a private key or a public-only key. The
|
|
564
|
+
* returned string contains the algorithm name, Base64 key data, and the current {@link
|
|
565
|
+
* SshKey.comment} when it is nonempty:
|
|
566
|
+
*
|
|
567
|
+
* ```
|
|
568
|
+
* ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ... user@example
|
|
569
|
+
* ```
|
|
570
|
+
*
|
|
571
|
+
* The returned string does not include a final CRLF or LF. It contains a bare key entry and does
|
|
572
|
+
* not add `authorized_keys` options such as `restrict` or `from="..."`.
|
|
573
|
+
*
|
|
574
|
+
* Do not place CR or LF characters in {@link SshKey.comment}, because the comment is appended
|
|
575
|
+
* without newline sanitization.
|
|
576
|
+
*
|
|
577
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
578
|
+
* {@link SshKey.lastErrorText}.
|
|
579
|
+
*/
|
|
580
|
+
toOpenSshPublicKey(): string
|
|
581
|
+
|
|
582
|
+
/**
|
|
583
|
+
* Exports the current private key as a PuTTY PPK string.
|
|
584
|
+
*
|
|
585
|
+
* - `bEncrypt` equal to `false` returns an unencrypted PPK.
|
|
586
|
+
*
|
|
587
|
+
* - `bEncrypt` equal to `true` returns an encrypted PPK using AES-256-CBC and requires a nonempty
|
|
588
|
+
* {@link SshKey.password}.
|
|
589
|
+
*
|
|
590
|
+
* - If the object contains only a public key, the method fails.
|
|
591
|
+
*
|
|
592
|
+
* The emitted format is PuTTY PPK version 2. {@link SshKey.fromPuttyPrivateKey} can import both
|
|
593
|
+
* PPK version 2 and version 3.
|
|
594
|
+
*
|
|
595
|
+
* The returned text includes the public and private sections, {@link SshKey.comment}, and the
|
|
596
|
+
* integrity MAC. It uses CRLF line endings and ends with CRLF.
|
|
597
|
+
*
|
|
598
|
+
* ```
|
|
599
|
+
* PuTTY-User-Key-File-2: ssh-rsa
|
|
600
|
+
* Encryption: aes256-cbc
|
|
601
|
+
* Comment: example-key
|
|
602
|
+
* Public-Lines: ...
|
|
603
|
+
* ```
|
|
604
|
+
*
|
|
605
|
+
* Do not place CR or LF characters in {@link SshKey.comment}.
|
|
606
|
+
*
|
|
607
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
608
|
+
* {@link SshKey.lastErrorText}.
|
|
609
|
+
*/
|
|
610
|
+
toPuttyPrivateKey(bEncrypt: boolean): string
|
|
611
|
+
|
|
612
|
+
/**
|
|
613
|
+
* Exports the public portion of the current key in RFC 4716 SSH2 public-key format.
|
|
614
|
+
*
|
|
615
|
+
* The method works when the object contains either a private key or a public-only key. The
|
|
616
|
+
* returned text contains boundary lines, wrapped Base64 key data, and a `Comment:` header. When
|
|
617
|
+
* {@link SshKey.comment} is empty, the header is emitted as `Comment: ""`.
|
|
618
|
+
*
|
|
619
|
+
* ```
|
|
620
|
+
* ---- BEGIN SSH2 PUBLIC KEY ----
|
|
621
|
+
* Comment: "optional comment"
|
|
622
|
+
* AAAAB3NzaC1yc2EAAAADAQABAAABAQ...
|
|
623
|
+
* ---- END SSH2 PUBLIC KEY ----
|
|
624
|
+
* ```
|
|
625
|
+
*
|
|
626
|
+
* The output uses CRLF line endings and ends with CRLF. Do not place CR or LF characters in
|
|
627
|
+
* {@link SshKey.comment}.
|
|
628
|
+
*
|
|
629
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
630
|
+
* {@link SshKey.lastErrorText}.
|
|
631
|
+
*/
|
|
632
|
+
toRfc4716PublicKey(): string
|
|
633
|
+
|
|
634
|
+
/**
|
|
635
|
+
* Exports the current key as XML.
|
|
636
|
+
*
|
|
637
|
+
* A public-only key produces a public-key XML representation. A private key produces XML
|
|
638
|
+
* containing private-key components and must therefore be protected as sensitive key material.
|
|
639
|
+
*
|
|
640
|
+
* Key typePrivate-key rootPublic-key root
|
|
641
|
+
*
|
|
642
|
+
* | RSA | | `RSAKeyValue` | | `RSAPublicKey` |
|
|
643
|
+
*
|
|
644
|
+
* | DSA | | `DSAKeyValue` | | `DSAPublicKey` |
|
|
645
|
+
*
|
|
646
|
+
* | ECDSA | | `ECCKeyValue` | | `ECCPublicKey` |
|
|
647
|
+
*
|
|
648
|
+
* | Ed25519 | | `Ed25519KeyValue` | | `Ed25519PublicKey` |
|
|
649
|
+
*
|
|
650
|
+
* ```
|
|
651
|
+
* <RSAKeyValue>
|
|
652
|
+
* <Modulus>...</Modulus>
|
|
653
|
+
* <Exponent>AQAB</Exponent>
|
|
654
|
+
* ... private components ...
|
|
655
|
+
* </RSAKeyValue>
|
|
656
|
+
* ```
|
|
657
|
+
*
|
|
658
|
+
* The XML does not include {@link SshKey.comment}. The returned string does not have a final
|
|
659
|
+
* newline and can be loaded by {@link SshKey.fromXml}.
|
|
660
|
+
*
|
|
661
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
662
|
+
* {@link SshKey.lastErrorText}.
|
|
663
|
+
*/
|
|
664
|
+
toXml(): string
|
|
665
|
+
|
|
666
|
+
/**
|
|
667
|
+
* Generates a new Ed25519 public/private key pair.
|
|
668
|
+
*
|
|
669
|
+
* On success, the generated private key replaces the previous key. Existing values of {@link
|
|
670
|
+
* SshKey.comment}, {@link SshKey.password}, and {@link SshKey.uncommonOptions} remain set.
|
|
671
|
+
*
|
|
672
|
+
* Ed25519 private keys are exported by {@link SshKey.toOpenSshPrivateKey} using the modern
|
|
673
|
+
* `OPENSSH PRIVATE KEY` container.
|
|
674
|
+
*
|
|
675
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
676
|
+
* {@link SshKey.lastErrorText}.
|
|
677
|
+
*/
|
|
678
|
+
generateEd25519Key(): void
|
|
679
|
+
|
|
680
|
+
/**
|
|
681
|
+
* Generates a new ECDSA public/private key pair.
|
|
682
|
+
*
|
|
683
|
+
* `curveName` selects the curve. Matching is case-insensitive. Accepted names include:
|
|
684
|
+
*
|
|
685
|
+
* - `secp256r1`, `P-256`, or `prime256v1`
|
|
686
|
+
*
|
|
687
|
+
* - `secp384r1` or `P-384`
|
|
688
|
+
*
|
|
689
|
+
* - `secp521r1` or `P-521`
|
|
690
|
+
*
|
|
691
|
+
* An empty or unrecognized curve name causes the method to fail. If generation fails, the
|
|
692
|
+
* previous key is not guaranteed to remain available.
|
|
693
|
+
*
|
|
694
|
+
* On success, the generated private key replaces the previous key while the writable properties
|
|
695
|
+
* remain set. P-521 is shown as `528` bits by {@link SshKey.genFingerprint}.
|
|
696
|
+
*
|
|
697
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
698
|
+
* {@link SshKey.lastErrorText}.
|
|
699
|
+
*/
|
|
700
|
+
generateEcdsaKey(curveName: string): void
|
|
701
|
+
|
|
702
|
+
/**
|
|
703
|
+
* Configures this object to use a private key held in a PKCS#11 token, smart card, or HSM for SSH
|
|
704
|
+
* public-key authentication.
|
|
705
|
+
*
|
|
706
|
+
* - `session` is the `Pkcs11` session containing the key objects.
|
|
707
|
+
*
|
|
708
|
+
* - `privKeyHandle` is the PKCS#11 handle of the private key.
|
|
709
|
+
*
|
|
710
|
+
* - `pubKeyHandle` is the PKCS#11 handle of the corresponding public key.
|
|
711
|
+
*
|
|
712
|
+
* - `keyType` identifies the key type and must be `RSA` or `EC`.
|
|
713
|
+
*
|
|
714
|
+
* The private-key operation is performed by the PKCS#11 device, allowing the private key to
|
|
715
|
+
* remain on the token.
|
|
716
|
+
*
|
|
717
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
718
|
+
* {@link SshKey.lastErrorText}.
|
|
719
|
+
*/
|
|
720
|
+
usePkcs11(session: Pkcs11, privKeyHandle: number, pubKeyHandle: number, keyType: string): void
|
|
721
|
+
|
|
722
|
+
/**
|
|
723
|
+
* Associates an OpenSSH user certificate with this object for SSH or SFTP public-key
|
|
724
|
+
* authentication.
|
|
725
|
+
*
|
|
726
|
+
* `sshCert` contains the complete certificate text, not a filesystem path. An SSH user
|
|
727
|
+
* certificate has the same one-line text structure as an OpenSSH public key, but its algorithm
|
|
728
|
+
* name ends in `-cert-v01@openssh.com`:
|
|
729
|
+
*
|
|
730
|
+
* ```
|
|
731
|
+
* ssh-rsa-cert-v01@openssh.com AAAAHHNzaC1yc2EAAAADAQAB... user@host
|
|
732
|
+
* ```
|
|
733
|
+
*
|
|
734
|
+
* The certificate is used together with its corresponding private key during authentication.
|
|
735
|
+
*
|
|
736
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
737
|
+
* {@link SshKey.lastErrorText}.
|
|
738
|
+
*/
|
|
739
|
+
useSshCertificate(sshCert: string): void
|
|
740
|
+
}
|