Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) Load JWK into PublicKey ObjectDemonstrates how to load a Java Web Key (JWK) into a Chilkat public key object. Note: This example requires Chilkat v9.5.0.66 or greater.
Use ChilkatAx-win32.pkg Procedure Test Handle hoSbJwk Boolean iSuccess Handle hoPubkey 2 Handle hoSbJwk2 Handle hoJson Variant vJsonJwk Handle hoJsonJwk Handle hoPubkey2 String sTemp1 Boolean bTemp1 // Imagine we have this JWK: // { // "kty":"RSA", // "kid":"bilbo.baggins@hobbiton.example", // "use":"sig", // "n":"26381066103266289976070039679240841999340706859156341823971393693544846472963839705790075117105560154606562987481050889935247188300178764426769543782451174831475924241862817098997865881169498995546309260357488285676768114714548754913374731868063116787903918383610614912211576698081222844057810710088656983077876282582286966085572172471849443305250452393766960762340311496052418952315081937000716222751229644449475751932222180738210988190709824209639002026650048655399108647971010890335494074025258268035713167380057822555485524738518699437692145859633592396626258745090144803752145540471688039673495588314804430463791", // "e":"65537" // } // Get Create (RefClass(cComChilkatStringBuilder)) To hoSbJwk If (Not(IsComObjectCreated(hoSbJwk))) Begin Send CreateComObject of hoSbJwk End Get ComLoadFile Of hoSbJwk "qa_data/jwk/simple_jwk_rsa.json" "utf-8" To iSuccess If (iSuccess <> True) Begin Showln "Failed to load simple JWK file." Procedure_Return End // Loading it into a Chilkat public key object is easy: Get Create (RefClass(cComChilkatPublicKey)) To hoPubkey If (Not(IsComObjectCreated(hoPubkey))) Begin Send CreateComObject of hoPubkey End Get ComGetAsString Of hoSbJwk To sTemp1 Get ComLoadFromString Of hoPubkey sTemp1 To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoPubkey To sTemp1 Showln sTemp1 Procedure_Return End Showln "Simple JWK loaded into public key object." // ---------------------------------------------------------------------------------------------------------- // Demonstrate how to load a JWK that is contained within JSON into a public key object. // { // "alg":"RS256", // "jwk": { // "kty":"RSA", // "kid":"bilbo.baggins@hobbiton.example", // "use":"sig", // "n":"26381066103266289976070039679240841999340706859156341823971393693544846472963839705790075117105560154606562987481050889935247188300178764426769543782451174831475924241862817098997865881169498995546309260357488285676768114714548754913374731868063116787903918383610614912211576698081222844057810710088656983077876282582286966085572172471849443305250452393766960762340311496052418952315081937000716222751229644449475751932222180738210988190709824209639002026650048655399108647971010890335494074025258268035713167380057822555485524738518699437692145859633592396626258745090144803752145540471688039673495588314804430463791", // "e":"65537" // } // } Get Create (RefClass(cComChilkatStringBuilder)) To hoSbJwk2 If (Not(IsComObjectCreated(hoSbJwk2))) Begin Send CreateComObject of hoSbJwk2 End Get ComLoadFile Of hoSbJwk2 "qa_data/jwk/contained_jwk_rsa.json" "utf-8" To iSuccess If (iSuccess <> True) Begin Showln "Failed to load JWK file." Procedure_Return End // Get the "jwk" part of the JSON.. Get Create (RefClass(cComChilkatJsonObject)) To hoJson If (Not(IsComObjectCreated(hoJson))) Begin Send CreateComObject of hoJson End Get ComGetAsString Of hoSbJwk2 To sTemp1 Get ComLoad Of hoJson sTemp1 To iSuccess Get ComObjectOf Of hoJson "jwk" To vJsonJwk If (IsComObject(vJsonJwk)) Begin Get Create (RefClass(cComChilkatJsonObject)) To hoJsonJwk Set pvComObject Of hoJsonJwk To vJsonJwk End Get ComLastMethodSuccess Of hoJson To bTemp1 If (bTemp1 <> True) Begin Showln "No jwk member exists." Procedure_Return End Get Create (RefClass(cComChilkatPublicKey)) To hoPubkey2 If (Not(IsComObjectCreated(hoPubkey2))) Begin Send CreateComObject of hoPubkey2 End Get ComEmit Of hoJsonJwk To sTemp1 Get ComLoadFromString Of hoPubkey2 sTemp1 To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoPubkey2 To sTemp1 Showln sTemp1 Procedure_Return End Showln "Contained JWK loaded into public key object." Send Destroy of hoJsonJwk End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.