|  | 
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  Node.js  Objective-C  PHP Extension  Perl  PowerBuilder  PowerShell  PureBasic  Ruby  SQL Server  Swift  Tcl  Unicode C  Unicode C++  VB.NET  VBScript  Visual Basic 6.0  Visual FoxPro  Xojo Plugin
| (PureBasic) RSA Encrypt with Modulus and ExponentDemonstrates how to RSA encrypt with a given modulus and exponent. Note: This example requires Chilkat v11.0.0 or greater. 
 IncludeFile "CkXml.pb" IncludeFile "CkPublicKey.pb" IncludeFile "CkRsa.pb" Procedure ChilkatExample() success.i = 0 ; This example assumes the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. rsa.i = CkRsa::ckCreate() If rsa.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; Assuming you already have a base64 modulus and exponent, ; wrap it in XML like this: modulus.s = "qMBRpdYrAy5aMmo31NErUizh5sbweguSmh4wlK6uJEIDl+kwTlROnE34KOFExeTbJSX0WygPi+vWl0yNq7buIMUKpytossAAWut5khO3CQJxTk7G2gnEPNUUXHiExGgNrLzcSLv8YIlfVALhoRWyC67KOL+a+3taNq3h+BHeWhM=" exponent.s = "AQAB" xml.i = CkXml::ckCreate() If xml.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkXml::setCkTag(xml, "RSAPublicKey") CkXml::ckNewChild2(xml,"Modulus",modulus) CkXml::ckNewChild2(xml,"Exponent",exponent) pubKey.i = CkPublicKey::ckCreate() If pubKey.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success = CkPublicKey::ckLoadFromString(pubKey,xml) If success = 0 Debug CkPublicKey::ckLastErrorText(pubKey) CkRsa::ckDispose(rsa) CkXml::ckDispose(xml) CkPublicKey::ckDispose(pubKey) ProcedureReturn EndIf success = CkRsa::ckUsePublicKey(rsa,pubKey) If success = 0 Debug CkRsa::ckLastErrorText(rsa) CkRsa::ckDispose(rsa) CkXml::ckDispose(xml) CkPublicKey::ckDispose(pubKey) ProcedureReturn EndIf usePrivateKey.i = 0 plainText.s = "message in a bottle" CkRsa::setCkEncodingMode(rsa, "base64") encryptedStrBase64.s = CkRsa::ckEncryptStringENC(rsa,plainText,usePrivateKey) Debug encryptedStrBase64 CkRsa::ckDispose(rsa) CkXml::ckDispose(xml) CkPublicKey::ckDispose(pubKey) ProcedureReturn EndProcedure | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.