Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) RSA SHA256 Signature using Private Key from Java KeystoreSigns plaintext using RSA SHA256 using a key from a Java keystore. Duplicatest this code: KeyStore keystore; // key repository for keys containing signature certificate String alias; // alias for the certificate in the key repository String password; // password for the certificate's private key String plaintext; // text being signed Signature signature = Signature.getInstance("SHA256withRSA"); signature.initSign((PrivateKey) keystore.getKey(alias, password.toCharArray())); signature.update(plaintext.getBytes("UTF-8")); byte[] rsa_text= signature.sign();
Use ChilkatAx-win32.pkg Procedure Test Handle hoJks String sJksPassword Boolean iSuccess String sPrivKeyPassword Boolean iCaseSensitive Variant vPrivKey Handle hoPrivKey Handle hoRsa Variant hoBinarySignature String sPlaintext String sSignatureStr String sTemp1 Boolean bTemp1 // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatJavaKeyStore)) To hoJks If (Not(IsComObjectCreated(hoJks))) Begin Send CreateComObject of hoJks End Move "secret" To sJksPassword // Load the Java keystore from a file. The JKS file password is used // to verify the keyed digest that is found at the very end of the keystore. // It verifies that the keystore has not been modified. Get ComLoadFile Of hoJks sJksPassword "qa_data/jks/sample_secret.jks" To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoJks To sTemp1 Showln sTemp1 Procedure_Return End // Get the private key from the JKS. // The private key password may be different than the file password. Move "secret" To sPrivKeyPassword Move False To iCaseSensitive Get ComFindPrivateKey Of hoJks sPrivKeyPassword "some.alias" iCaseSensitive To vPrivKey If (IsComObject(vPrivKey)) Begin Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey Set pvComObject Of hoPrivKey To vPrivKey End Get ComLastMethodSuccess Of hoJks To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoJks To sTemp1 Showln sTemp1 Procedure_Return End // Establish the RSA object and tell it to use the private key.. Get Create (RefClass(cComChilkatRsa)) To hoRsa If (Not(IsComObjectCreated(hoRsa))) Begin Send CreateComObject of hoRsa End Get ComImportPrivateKeyObj Of hoRsa vPrivKey To iSuccess Send Destroy of hoPrivKey If (iSuccess <> True) Begin Get ComLastErrorText Of hoRsa To sTemp1 Showln sTemp1 Procedure_Return End // Indicate we'll be signing the utf-8 byte representation of the string.. Set ComCharset Of hoRsa To "utf-8" // Sign some plaintext using RSA-SHA256 Move "this is the text to be signed" To sPlaintext Get ComSignString Of hoRsa sPlaintext "SHA256" To hoBinarySignature Get ComLastMethodSuccess Of hoRsa To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoRsa To sTemp1 Showln sTemp1 Procedure_Return End // Alternatively, if the signature is desired in some encoded string form, // such as base64, base64-url, hex, etc. Set ComEncodingMode Of hoRsa To "base64-url" Get ComSignStringENC Of hoRsa sPlaintext "SHA256" To sSignatureStr Showln "base64-url RSA signature: " sSignatureStr End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.