Sample code for 30+ languages & platforms
Ruby

RSA OAEP Padding

See more RSA Examples

Demonstrates how to use OAEP padding with the RSA encryption algorithm. More information about OAEP Padding.

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

rsa = Chilkat::CkRsa.new()

# RSA public key in XML format:
pubKeyXml = "<RSAPublicKey><Modulus>of3im3mRgd2NLXIGoK6uYLg6jj0Ug2b42rnqa5Tbwz2ieFqMJqt+++x2oqLYGurlz49nt+7/785g3XYWqoka4u9c9zul6YubIjnBM72dQy7rEkEfbUxgjcxqXyjZFx+FpaxFUecLu688XEu+9UA42VKiCgcl+E7TrqnfeeYpNXc=</Modulus><Exponent>AQAB</Exponent></RSAPublicKey>"

pubKey = Chilkat::CkPublicKey.new()
success = pubKey.LoadFromString(pubKeyXml)
if (success == false)
    print pubKey.lastErrorText() + "\n";
    exit
end

success = rsa.UsePublicKey(pubKey)
if (success == false)
    print rsa.lastErrorText() + "\n";
    exit
end

# To use Optimal Asymmetric Encryption Padding (OAEP) padding,
# simply set the PkcsPadding property to false
rsa.put_PkcsPadding(false)

# Encrypt a string and return the encrypted data base64-encoded:
rsa.put_EncodingMode("base64")

plainText = "RSA Encryption should be easy."

usePrivateKey = false
encryptedStr = rsa.encryptStringENC(plainText,usePrivateKey)
print encryptedStr + "\n";