Ruby
Ruby
Workaround for the deprecated Crypt2.SignBytes method
Shows how to replace the deprecated SignBytes method. (Chilkat is moving away from the use of CkByteData.)Chilkat Ruby Downloads
require 'chilkat'
success = false
crypt = Chilkat::CkCrypt2.new()
cert = Chilkat::CkCert.new()
# ...
# Load the cert from a source such as a .pfx/.p12 file, smart card, USB token, Apple keychain, Windows certificate store, etc.
#
success = crypt.SetSigningCert(cert)
crypt.put_HashAlgorithm("sha256")
path = "c:/someDir/example.dat"
# ------------------------------------------------------------------------
# The SignBytes method is deprecated:
inData = Chilkat::CkByteData.new()
inData.loadFile(path)
outData = Chilkat::CkByteData.new()
success = crypt.SignBytes(inData,outData)
# ------------------------------------------------------------------------
# Workaround.
# (Chilkat is moving away from using CkByteData)
bdIn = Chilkat::CkBinData.new()
bdIn.LoadFile(path)
crypt.put_EncodingMode("base64")
base64_sig = crypt.signBdENC(bdIn)
# If you want to access the bytes...
bdSig = Chilkat::CkBinData.new()
bdSig.AppendEncoded(base64_sig,"base64")