|  | 
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) Load ECC Public Key from JWK Format (JSON Web Key)Demonstrates how to load an ECC public key from 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. ' First build a JWK sample to load.. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.JsonObject") set json = Server.CreateObject("Chilkat.JsonObject") success = json.UpdateString("kty","EC") success = json.UpdateString("crv","P-256") success = json.UpdateString("x","oBUyo8CQAFPeYPvv78ylh5MwFZjTCLQeb042TjiMJxE") success = json.UpdateString("y","vvQyxZkUjJQUPU_0bCy3Pj5qQdfu8jwEfqEeYGZ95CU") ' The JSON contains the following: ' { ' "kty": "EC", ' "crv": "P-256", ' "x": "oBUyo8CQAFPeYPvv78ylh5MwFZjTCLQeb042TjiMJxE", ' "y": "vvQyxZkUjJQUPU_0bCy3Pj5qQdfu8jwEfqEeYGZ95CU", ' } ' Note: The JSON can contain other members, such as "use", "kid", or anything else. These will be ignored. json.EmitCompact = 0 ' Show the JWK string to be loaded: jwkStr = json.Emit() ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.PublicKey") set pubKey = Server.CreateObject("Chilkat.PublicKey") ' The LoadFromString method will automatically detect the format. success = pubKey.LoadFromString(jwkStr) If (success <> 1) Then Response.Write "<pre>" & Server.HTMLEncode( pubKey.LastErrorText) & "</pre>" Response.End End If ' OK.. the JWK is loaded. It can be used in whatever way desired... ' The key can be retrieved in any other format, such as XML or PEM.. Response.Write "<pre>" & Server.HTMLEncode( pubKey.GetXml()) & "</pre>" ' XML output: ' <ECCPublicKey curve="secp256r1" ' x="A01532A3C0900053DE60FBEFEFCCA58793301598D308B41E6F4E364E388C2711" ' y="BEF432C599148C94143D4FF46C2CB73E3E6A41D7EEF23C047EA11E60667DE425"> ' MIIBSzCCAQMGByqGSM49AgEwgfcCAQEwLAYHKoZIzj0BAQIhAP////8AAAABAAAAAAAAAAAAAAAA////////////////MFsEIP////8AAAABAAAAAAAAAAAAAAAA///////////////8BCBaxjXYqjqT57PrvVV2mIa8ZR0GsMxTsPY7zjw+J9JgSwMVAMSdNgiG5wSTamZ44ROdJreBn36QBEEEaxfR8uEsQkf4vOblY6RA8ncDfYEt6zOg9KE5RdiYwpZP40Li/hp/m47n60p8D54WK84zV2sxXs7LtkBoN79R9QIhAP////8AAAAA//////////+85vqtpxeehPO5ysL8YyVRAgEBA0IABKAVMqPAkABT3mD77+/MpYeTMBWY0wi0Hm9ONk44jCcRvvQyxZkUjJQUPU/0bCy3Pj5qQdfu8jwEfqEeYGZ95CU= ' </ECCPublicKey> ' Choose PCKS1 or PCKS8 PEM format.. bPreferPkcs1 = 0 Response.Write "<pre>" & Server.HTMLEncode( pubKey.GetPem(bPreferPkcs1)) & "</pre>" ' PEM output ' -----BEGIN PUBLIC KEY----- ' MIIBSzCCAQMGByqGSM49AgEwgfcCAQEwLAYHKoZIzj0BAQIhAP////8AAAABAAAA ' AAAAAAAAAAAA////////////////MFsEIP////8AAAABAAAAAAAAAAAAAAAA//// ' ///////////8BCBaxjXYqjqT57PrvVV2mIa8ZR0GsMxTsPY7zjw+J9JgSwMVAMSd ' NgiG5wSTamZ44ROdJreBn36QBEEEaxfR8uEsQkf4vOblY6RA8ncDfYEt6zOg9KE5 ' RdiYwpZP40Li/hp/m47n60p8D54WK84zV2sxXs7LtkBoN79R9QIhAP////8AAAAA ' //////////+85vqtpxeehPO5ysL8YyVRAgEBA0IABKAVMqPAkABT3mD77+/MpYeT ' MBWY0wi0Hm9ONk44jCcRvvQyxZkUjJQUPU/0bCy3Pj5qQdfu8jwEfqEeYGZ95CU= ' -----END PUBLIC KEY----- %> </body> </html> | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.