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. Downloads for Windows/Linux and Install Instructions require 'rubygems' require 'chilkat' crypt = Chilkat::CkCrypt2.new() # Any string argument automatically begins the 30-day trial. success = crypt.UnlockComponent("30-day trial") if (success != true) print crypt.lastErrorText() + "\n" exit end # First, create an SHA-1 hash to be signed: toBeHashed = "This is a test" hash = Chilkat::CkByteData.new() crypt.put_HashAlgorithm("sha1") success = crypt.HashString(toBeHashed,hash) if (success != true) print crypt.lastErrorText() + "\n" exit end # Locate a digital certificate from the registry-based # Current User certificate store. ccs = Chilkat::CkCreateCS.new() # certStore is a CkCertStore certStore = ccs.OpenCurrentUserStore() # cert is a CkCert cert = certStore.FindCertBySubjectCN("Chilkat Software, Inc.") if (cert == nil ) print cert.lastErrorText() + "\n" exit end # 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 = Chilkat::CkByteData.new() success = crypt.SignBytes(hash,pkcs7) if (success == false) print crypt.lastErrorText() + "\n" exit end # Save the PKCS7 signature to a file. success = pkcs7.saveFile("out_pkcs7.p7s") if (success == false) print "Failed to save output file." + "\n" else print "Success." + "\n" end |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.