![]() |
Chilkat • HOME • Android™ • AutoIt • C • C# • C++ • Chilkat2-Python • CkPython • Classic ASP • DataFlex • Delphi DLL • Go • Java • Node.js • Objective-C • PHP Extension • Perl • PowerBuilder • PowerShell • PureBasic • Ruby • SQL Server • Swift • Tcl • Unicode C • Unicode C++ • VB.NET • VBScript • Visual Basic 6.0 • Visual FoxPro • Xojo Plugin
(Classic ASP) Get ECC Public Key in JWK Format (JSON Web Key)Demonstrates how to get an ECC public key in JWK (JSON Web Key) format. Note: This example requires Chilkat v9.5.0.66 or later.
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <% ' Note: This example requires Chilkat v9.5.0.66 or later. ' Load a PEM file into memory. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.StringBuilder") set sbPem = Server.CreateObject("Chilkat.StringBuilder") success = sbPem.LoadFile("qa_data/pem/ecc_public.pem","utf-8") If (success <> 1) Then Response.Write "<pre>" & Server.HTMLEncode( "Failed to load PEM file.") & "</pre>" Response.End End If ' Load the PEM into a public key object. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.PublicKey") set pubKey = Server.CreateObject("Chilkat.PublicKey") success = pubKey.LoadFromString(sbPem.GetAsString()) If (success <> 1) Then Response.Write "<pre>" & Server.HTMLEncode( pubKey.LastErrorText) & "</pre>" Response.End End If ' Get the public key in JWK format: jwk = pubKey.GetJwk() ' The GetJwk method will return the JWK in the most compact JSON format possible, ' as a single line with no extra whitespace. To get a more human-readable JWK (for this example), ' load into a Chilkat JSON object and emit non-compact: ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.JsonObject") set json = Server.CreateObject("Chilkat.JsonObject") success = json.Load(jwk) json.EmitCompact = 0 Response.Write "<pre>" & Server.HTMLEncode( "ECC Public Key in JWK format:") & "</pre>" Response.Write "<pre>" & Server.HTMLEncode( json.Emit()) & "</pre>" ' Sample output: ' { ' "kty": "EC", ' "crv": "P-256", ' "x": "oBUyo8CQAFPeYPvv78ylh5MwFZjTCLQeb042TjiMJxE", ' "y": "vvQyxZkUjJQUPU_0bCy3Pj5qQdfu8jwEfqEeYGZ95CU" ' } ' ' Additional information can be added like this: success = json.AppendString("use","enc") success = json.AppendString("kid","123ABC") ' Now examine the JSON: Response.Write "<pre>" & Server.HTMLEncode( json.Emit()) & "</pre>" ' { ' "kty": "EC", ' "crv": "P-256", ' "x": "oBUyo8CQAFPeYPvv78ylh5MwFZjTCLQeb042TjiMJxE", ' "y": "vvQyxZkUjJQUPU_0bCy3Pj5qQdfu8jwEfqEeYGZ95CU", ' "use": "enc", ' "kid": "123ABC" ' } %> </body> </html> |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.