Sample code for 30+ languages & platforms
Classic ASP

RSA Encrypt Randomly Generated AES Key

See more RSA Examples

Demonstrates how to RSA encrypt a randomly generated AES key.

Chilkat Classic ASP Downloads

Classic ASP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0

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

' First generate a 256-bit AES key (32 bytes).
set prng = Server.CreateObject("Chilkat.Prng")
set bdAesKey = Server.CreateObject("Chilkat.BinData")
success = prng.GenRandomBd(32,bdAesKey)

' Use a public key from a certificate for RSA encryption.
set cert = Server.CreateObject("Chilkat.Cert")

success = cert.LoadFromFile("qa_data/pem/mf_public_rsa.pem")
If (success = 0) Then
    Response.Write "<pre>" & Server.HTMLEncode( cert.LastErrorText) & "</pre>"
    Response.End
End If

set pubKey = Server.CreateObject("Chilkat.PublicKey")
success = cert.GetPublicKey(pubKey)

set rsa = Server.CreateObject("Chilkat.Rsa")
success = rsa.UsePublicKey(pubKey)
If (success = 0) Then
    Response.Write "<pre>" & Server.HTMLEncode( rsa.LastErrorText) & "</pre>"
    Response.End
End If

' RSA encrypt our 32-byte AES key.
' The contents of bdAesKey are replaced with result of the RSA encryption.
success = rsa.EncryptBd(bdAesKey,0)
If (success = 0) Then
    Response.Write "<pre>" & Server.HTMLEncode( rsa.LastErrorText) & "</pre>"
    Response.End
End If

' Return the result as a base64 string
encryptedAesKey = bdAesKey.GetEncoded("base64")

Response.Write "<pre>" & Server.HTMLEncode( "encrypted AES key = " & encryptedAesKey) & "</pre>"

%>
</body>
</html>