![]()  | 
  
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
 
      (Perl) PKCS11 Export Public Key from HSMSee more PKCS11 ExamplesDemonstrates how to export a public key from a smartcard or token.Note: This example requires Chilkat v9.5.0.96 or later. 
 use chilkat(); # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # Note: Chilkat's PKCS11 implementation runs on Windows, Linux, Mac OS X, and other supported operating systems. $pkcs11 = chilkat::CkPkcs11->new(); # Use the PKCS11 driver (.dll, .so, .dylib) for your particular HSM. # (The format of the path will change with the operating system. Obviously, "C:/" is not used on non-Windows systems. $pkcs11->put_SharedLibPath("C:/Program Files (x86)/Gemalto/IDGo 800 PKCS#11/IDPrimePKCS1164.dll"); # Establish a logged-on session. (We can typically skip the login by passing an empty PIN if only working with public keys) # Use your actual PIN here, or an empty string to skip login. $pin = "0000"; $userType = 1; $success = $pkcs11->QuickSession($userType,$pin); if ($success == 0) { print $pkcs11->lastErrorText() . "\r\n"; exit; } # Get the handle of the public key we wish to export. # You can find public keys in many different ways. # This example will search for a public key by label. # Provide a template to find a PKCS11 object. $jsonTemplate = chilkat::CkJsonObject->new(); # Find the public key with the label "Belgium eHealth". $jsonTemplate->UpdateString("class","public_key"); $jsonTemplate->UpdateString("label","Belgium eHealth"); $pubKeyHandle = $pkcs11->FindObject($jsonTemplate); if ($pubKeyHandle == 0) { print $pkcs11->lastErrorText() . "\r\n"; exit; } # Export to a Chilkat public key object. $pubKey = chilkat::CkPublicKey->new(); $success = $pkcs11->ExportPublicKey($pubKeyHandle,$pubKey); if ($success == 0) { print $pkcs11->lastErrorText() . "\r\n"; exit; } # Get the public key as PKCS8 PEM. print $pubKey->getPem(0) . "\r\n"; $pkcs11->Logout(); $pkcs11->CloseSession();  | 
  ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.