Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
Sign a Hash to create PKCS7 OutputUses a digital certificate to sign a SHA-1 hash to produce PKCS7 output.
use chilkat(); $crypt = new chilkat::CkCrypt2(); # Any string argument automatically begins the 30-day trial. $success = $crypt->UnlockComponent("30-day trial"); if ($success != 1) { print $crypt->lastErrorText() . "\n"; exit; } # First, create an SHA-1 hash to be signed: $toBeHashed = "This is a test"; $hash = new chilkat::CkByteData(); $crypt->put_HashAlgorithm("sha1"); $success = $crypt->HashString($toBeHashed,$hash); if ($success != 1) { print $crypt->lastErrorText() . "\n"; exit; } # Locate a digital certificate from the registry-based # Current User certificate store. $ccs = new chilkat::CkCreateCS(); # certStore is a CkCertStore $certStore = $ccs->OpenCurrentUserStore(); # cert is a CkCert $cert = $certStore->FindCertBySubjectCN("Chilkat Software, Inc."); if ($cert eq null ) { print $cert->lastErrorText() . "\n"; exit; } # Tell the encryption component to use this cert. $crypt->SetSigningCert($cert); # Tell the encryption component to use public-key encryption: $crypt->put_CryptAlgorithm("pki"); $pkcs7 = new chilkat::CkByteData(); $success = $crypt->SignBytes($hash,$pkcs7); if ($success == 0) { print $crypt->lastErrorText() . "\n"; exit; } # Save the PKCS7 signature to a file. $success = $pkcs7->saveFile("out_pkcs7.p7s"); if ($success == 0) { print "Failed to save output file." . "\n"; } else { print "Success." . "\n"; } |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.