Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(C# UWP/WinRT) Get RSA Public Key in JWK Format (JSON Web Key)Demonstrates how to get an RSA public key in JWK (JSON Web Key) format. Note: This example requires Chilkat v9.5.0.66 or later.
// Note: This example requires Chilkat v9.5.0.66 or later. // Load a PEM file into memory. Chilkat.StringBuilder sbPem = new Chilkat.StringBuilder(); bool success = sbPem.LoadFile("qa_data/pem/rsa_public.pem","utf-8"); if (success != true) { Debug.WriteLine("Failed to load PEM file."); return; } // Load the PEM into a public key object. Chilkat.PublicKey pubKey = new Chilkat.PublicKey(); success = pubKey.LoadFromString(sbPem.GetAsString()); if (success != true) { Debug.WriteLine(pubKey.LastErrorText); return; } // Get the public key in JWK format: string 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: Chilkat.JsonObject json = new Chilkat.JsonObject(); json.Load(jwk); json.EmitCompact = false; Debug.WriteLine("RSA Public Key in JWK format:"); Debug.WriteLine(json.Emit()); // Sample output: // { // "kty": "RSA", // "n": "33TqqLR3eeUmDtHS89qF3p4MP7Wfqt2Zjj3lZjLjjCGDvwr9cJNlNDiuKboODgUiT4ZdPWbOiMAfDcDzlOxA04DDnEFGAf-kDQiNSe2ZtqC7bnIc8-KSG_qOGQIVaay4Ucr6ovDkykO5Hxn7OU7sJp9TP9H0JH8zMQA6YzijYH9LsupTerrY3U6zyihVEDXXOv08vBHk50BMFJbE9iwFwnxCsU5-UZUZYw87Uu0n4LPFS9BT8tUIvAfnRXIEWCha3KbFWmdZQZlyrFw0buUEf0YN3_Q0auBkdbDR_ES2PbgKTJdkjc_rEeM0TxvOUf7HuUNOhrtAVEN1D5uuxE1WSw", // "e": "AQAB" // } // Additional information can be added like this: json.AppendString("use","enc"); json.AppendString("kid","123ABC"); // Now examine the JSON: Debug.WriteLine(json.Emit()); // { // "kty": "RSA", // "n": "33TqqLR3eeUmDtHS89qF3p4MP7Wfqt2Zjj3lZjLjjCGDvwr9cJNlNDiuKboODgUiT4ZdPWbOiMAfDcDzlOxA04DDnEFGAf-kDQiNSe2ZtqC7bnIc8-KSG_qOGQIVaay4Ucr6ovDkykO5Hxn7OU7sJp9TP9H0JH8zMQA6YzijYH9LsupTerrY3U6zyihVEDXXOv08vBHk50BMFJbE9iwFwnxCsU5-UZUZYw87Uu0n4LPFS9BT8tUIvAfnRXIEWCha3KbFWmdZQZlyrFw0buUEf0YN3_Q0auBkdbDR_ES2PbgKTJdkjc_rEeM0TxvOUf7HuUNOhrtAVEN1D5uuxE1WSw", // "e": "AQAB", // "use": "enc", // "kid": "123ABC" // } |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.