「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
jose-jwtを使い倒す。
Readme.md中で、以下の様に述べられている。
ライトユーザー向けではなく、ヘビーユーザー向け。
的な。
署名・検証
暗号化・復号化
・・・
以下を使用している。
$ cd /mnt/c/Git1/SampleProgram/Other/jose_jwt_Sample/jose_jwt_Sample $ dotnet publish -c Release -r ubuntu.16.04-x64 --self-contained $ cd bin/Release/netcoreapp2.0/ubuntu.16.04-x64/ $ dotnet jose_jwt_Sample.dll
Unhandled Exception: System.PlatformNotSupportedException: Windows Cryptography Next Generation (CNG) is not supported on this platform. at System.Security.Cryptography.CngKeyBlobFormat.get_EccPrivateBlob() at Security.Cryptography.EccKey.New(Byte[] x, Byte[] y, Byte[] d, CngKeyUsages usage)
Unhandled Exception: System.DllNotFoundException: Unable to load DLL 'bcrypt.dll': The specified module or one of its dependencies could not be found. (Exception from HRESULT: 0x8007007E) at Jose.native.BCrypt.BCryptOpenAlgorithmProvider(IntPtr& phAlgorithm, String pszAlgId, String pszImplementation, UInt32 dwFlags) at Jose.AesGcm.OpenAlgorithmProvider(String alg, String provider, String chainingMode) at Jose.AesGcm.Encrypt(Byte[] key, Byte[] iv, Byte[] aad, Byte[] plainText) at Jose.AesGcmKeyWrapManagement.WrapNewKey(Int32 cekSizeBits, Object key, IDictionary`2 header) at Jose.JWT.EncodeBytes(Byte[] payload, Object key, JweAlgorithm alg, JweEncryption enc, Nullable`1 compression, IDictionary`2 extraHeaders, JwtSettings settings)
JwsAlgorithm.none: eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJzdWIiOiJtci54QGNvbnRvc28uY29tIiwiZXhwIjoxMzAwODE5MzgwfQ. JwsAlgorithm.HS256: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJtci54QGNvbnRvc28uY29tIiwiZXhwIjoxMzAwODE5MzgwfQ.dvd5Ak6zcBy0OB7gxVtehT3Ab5NO7XEggon6r_CTSfE Decoded: {"sub":"mr.x@contoso.com","exp":1300819380} JwsAlgorithm.RS256: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJtci54QGNvbnRvc28uY29tIiwiZXhwIjoxMzAwODE5MzgwfQ.e2bHvaNKCS3H7eRTA2Wl-Yr5UDvLsNH26AG_qBOWXy__vJNSkPagLjvZB7yMTcKDKIOlE5tEw1ttZMgxeHxadrLCzQMYk7QKeqIePuTzGBcLza3JefGsVec_yx4DI1H2A5lvVCtBB3pA3L7HtRDr2qfxesqk_a1tV7EPfGZ4KjQ Decoded: {"sub":"mr.x@contoso.com","exp":1300819380} JwsAlgorithm.ES256: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJtci54QGNvbnRvc28uY29tIiwiZXhwIjoxMzAwODE5MzgwfQ.4zIp6hcWRqWzvprKAcwEaWbLx7INcknvOTrNwBxLLlvZeqCG8NOELBReZmrQVpZvqFvNGmlacCWxktwfpO_lfg Decoded: {"sub":"mr.x@contoso.com","exp":1300819380} JweAlgorithm.DIR, JweEncryption.A128CBC_HS256: eyJhbGciOiJkaXIiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2In0..Psk4PWhbgJ5SBQZPH4z-bw.8dlABeojYURZVe_hGvfaXdudLevjUknq-QGJhnepbXWPUmv8wU4rvp5kHdL3ZHxs.HR4m7-7cmctPgWLbt32ifw Decoded: {"sub":"mr.x@contoso.com","exp":1300819380} JweAlgorithm.A256KW, JweEncryption.A256CBC_HS512: eyJhbGciOiJBMjU2S1ciLCJlbmMiOiJBMjU2Q0JDLUhTNTEyIn0.AD9liopHl8AXXtfSzwxDYK7lcSoe-bm36jKEirazya15r-QW3cKqqHeO7JhJI6-oxolebrqM6tQrEUmytXgVUnrloyjbfmkJ.GdqQPXeULgijoHTiz3mSDw.NA-YcUrxdJhZWVQTSqOT8n1htLTylP7DaZd-SSeiLpV2KfSgiUd-cAOR8UiqVfAy.cz02bW3JjrNSM2qki1TY2AburxafZPthsRkO4jdodRQ Decoded: {"sub":"mr.x@contoso.com","exp":1300819380} JweAlgorithm.A256GCMKW, JweEncryption.A256CBC_HS512: eyJhbGciOiJBMjU2R0NNS1ciLCJlbmMiOiJBMjU2Q0JDLUhTNTEyIiwiaXYiOiJtQ19vd0dtdEN2MEYyd25hIiwidGFnIjoiNnVRc0Z6cG9zYkp6NV9EanZIYXNqdyJ9._FAA7PA_psMh37Wqln_AvE6IFvpu9HENupBP2KZXapElHjN80uj4EIsc3z9dVmmGpm3Mb9aca4B8aCoaLC1RNA.ZvST1J6vDRnqtoNsVPJX2A.8DvHDMSdUlK1wEhR9n6XPOzVgj_bKGAZFEvSMytcWj7RtxNUnkCizosMKK1Y2AMe.PTDKfWQk8liccKk1MpXDNy4uhY-9tddCFehmT84JPp4 Decoded: {"sub":"mr.x@contoso.com","exp":1300819380} JweAlgorithm.PBES2_HS256_A128KW, JweEncryption.A256CBC_HS512: eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJlbmMiOiJBMjU2Q0JDLUhTNTEyIiwicDJjIjo4MTkyLCJwMnMiOiJvd1RpVjNFc3Bza1E2RUNnIn0.FqSi-M5hjv7SzkrufO_lJg1AjY6dU1KzopK28vxovJhAQf8JCmx2YNhdKi3G-fiHRFrFGK9Pi7wXSIHiIE6Qe6mNO8KNcHVv.bRJWD9kV6p1bWgyBvcPZDA.WzyUTsMBGhkzceCaZx4RwvD4wvjLJLd_1CS7n9umm-inaMMiWjf7hE4VftDu9ZYL.KIPnr7eD6ZzoLLXKSqdZTCt8G4bMIqKZzJDUrs5ZVqc Decoded: {"sub":"mr.x@contoso.com","exp":1300819380}
Tags: :IT国際標準, :認証基盤, :クレームベース認証, :暗号化, :.NET Core, :.NET Standard