OpenID Connect - 暗号関連
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>OpenID Connect]]
* 目次 [#ef2c8581]
#contents
*概要 [#v62f12c1]
[[JWT]] の [[JWS]] or [[JWE]] を使用する。
*詳細 [#ge588acf]
**共通 [#x7229242]
***共通鍵暗号化方式 [#e5523f68]
-audクレームに含まれる client_id に対応する~
client_secret の UTF-8 オクテットを使用する。
-aud が複数要素の配列の場合の振る舞いは規定されない~
(azpのclient_id に対応する client_secretで暗号化されてい...
***公開鍵暗号化方式 [#j91b8b04]
-公開鍵は[[JWK Set>JWK#od5799a4]]で公開する必要がある。
-[[JWK Set>JWK#od5799a4]]中に複数の鍵がある場合、[[JWS]]...
**署名([[JWS]]) [#o03ae7d8]
***共通鍵暗号化方式 [#mbbefc9e]
MACベースの署名
-鍵には、[[client_secretを用いた共通鍵>#e5523f68]]を使用...
-[[JWS]]ヘッダに alg パラメタ値を設定
-[[MAC 鍵>#e5523f68]]は、アルゴリズムの最低限のオクテット...
--例えばHS256では, 最低でも32オクテットが必要になる。
--アルファベットに限定される場合、それ以上のオクテットが...
***公開鍵暗号化方式 [#qfdd7483]
RSAおよびECDSAの署名
-鍵には、[[JWK Setで公開された公開鍵>#j91b8b04]]を使用す...
-[[JWS]]ヘッダに alg パラメタ値を設定
**暗号化([[JWE]]) [#f27913d9]
***共通鍵暗号化方式 [#b1a871e7]
-[[鍵>#e5523f68]]をハッシュし切り詰めた左側を使用する。
-ハッシュ・アルゴリズムは、以下を用いる。
--256ビット以下の鍵には SHA-256
--257-384ビットの鍵には SHA-384
--385-512ビットの鍵には SHA-512
-例えば
--A128KW~
SHA-256ハッシュを切り詰めて128ビットを取り出す。
--512ビット以上の鍵が必要になった場合~
client_secretから鍵を導出する何らかの拡張仕様を定義する。
***公開鍵暗号化方式 [#v10f5f1a]
-RSA~
ランダムな Content Encryption Key によって[[JWS]]をRSA暗...
-Elliptic Curve~
--[[JWE]]ヘッダの epk に指定する短命な Elliptic Curve公開...
--[[ECDH-ES>暗号化アルゴリズム#j46c8e11]]アルゴリズムを用...
**鍵のローテーション [#tdf4ee76]
-jwks_uri + [[JWK Set>JWK#od5799a4]] + kidでローテーショ...
-Cache-Control ヘッダに max-age を含め[[JWK Set>JWK#od579...
***署名 [#mc831a6c]
署名者がローテーションを行う。
-署名者は、
--jwks_uriで、秘密鍵に対応する公開鍵のセットを[[JWK Set>J...
--[[JWS]]ヘッダに、署名に使用した公開鍵([[JWK Set>JWK#od...
-検証者は、
--jwks_uriで指定した場所から[[JWK Set>JWK#od5799a4]]を取...
--[[JWS]]ヘッダの kid から署名に使用した公開鍵を、上記の[...
--取得した公開鍵を使用して署名の検証を行う。
***暗号化 [#q3cf4c4c]
復号化を行う主体がローテーションを行う。~
(古い鍵が使用される可能性があるため、鍵を暫く保持する)。
-復号化を行う主体は、
--jwks_uriで、秘密鍵のセットを[[JWK Set>JWK#od5799a4]]と...
-暗号化を行う主体は、
--jwks_uriで指定した場所から[[JWK Set>JWK#od5799a4]]を取...
--[[JWE]]ヘッダに、暗号化に使用した秘密鍵([[JWK Set>JWK#...
-復号化を行う主体は、
--[[JWE]]ヘッダの kid から暗号化に使用した秘密鍵を、上記...
--取得した秘密鍵を使用して復号化を行う。
*参考 [#x69f7dcb]
-Final: OpenID Connect Core 1.0 incorporating errata set ...
https://openid-foundation-japan.github.io/openid-connect-...
**[[暗号化アルゴリズム]] [#q0079dd6]
**[[JWT]], [[JWS]], [[JWE]], [[JWK]], [[JWA]] [#abf90d3b]
----
Tags: [[:IT国際標準]], [[:認証基盤]], [[:クレームベース認...
終了行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>OpenID Connect]]
* 目次 [#ef2c8581]
#contents
*概要 [#v62f12c1]
[[JWT]] の [[JWS]] or [[JWE]] を使用する。
*詳細 [#ge588acf]
**共通 [#x7229242]
***共通鍵暗号化方式 [#e5523f68]
-audクレームに含まれる client_id に対応する~
client_secret の UTF-8 オクテットを使用する。
-aud が複数要素の配列の場合の振る舞いは規定されない~
(azpのclient_id に対応する client_secretで暗号化されてい...
***公開鍵暗号化方式 [#j91b8b04]
-公開鍵は[[JWK Set>JWK#od5799a4]]で公開する必要がある。
-[[JWK Set>JWK#od5799a4]]中に複数の鍵がある場合、[[JWS]]...
**署名([[JWS]]) [#o03ae7d8]
***共通鍵暗号化方式 [#mbbefc9e]
MACベースの署名
-鍵には、[[client_secretを用いた共通鍵>#e5523f68]]を使用...
-[[JWS]]ヘッダに alg パラメタ値を設定
-[[MAC 鍵>#e5523f68]]は、アルゴリズムの最低限のオクテット...
--例えばHS256では, 最低でも32オクテットが必要になる。
--アルファベットに限定される場合、それ以上のオクテットが...
***公開鍵暗号化方式 [#qfdd7483]
RSAおよびECDSAの署名
-鍵には、[[JWK Setで公開された公開鍵>#j91b8b04]]を使用す...
-[[JWS]]ヘッダに alg パラメタ値を設定
**暗号化([[JWE]]) [#f27913d9]
***共通鍵暗号化方式 [#b1a871e7]
-[[鍵>#e5523f68]]をハッシュし切り詰めた左側を使用する。
-ハッシュ・アルゴリズムは、以下を用いる。
--256ビット以下の鍵には SHA-256
--257-384ビットの鍵には SHA-384
--385-512ビットの鍵には SHA-512
-例えば
--A128KW~
SHA-256ハッシュを切り詰めて128ビットを取り出す。
--512ビット以上の鍵が必要になった場合~
client_secretから鍵を導出する何らかの拡張仕様を定義する。
***公開鍵暗号化方式 [#v10f5f1a]
-RSA~
ランダムな Content Encryption Key によって[[JWS]]をRSA暗...
-Elliptic Curve~
--[[JWE]]ヘッダの epk に指定する短命な Elliptic Curve公開...
--[[ECDH-ES>暗号化アルゴリズム#j46c8e11]]アルゴリズムを用...
**鍵のローテーション [#tdf4ee76]
-jwks_uri + [[JWK Set>JWK#od5799a4]] + kidでローテーショ...
-Cache-Control ヘッダに max-age を含め[[JWK Set>JWK#od579...
***署名 [#mc831a6c]
署名者がローテーションを行う。
-署名者は、
--jwks_uriで、秘密鍵に対応する公開鍵のセットを[[JWK Set>J...
--[[JWS]]ヘッダに、署名に使用した公開鍵([[JWK Set>JWK#od...
-検証者は、
--jwks_uriで指定した場所から[[JWK Set>JWK#od5799a4]]を取...
--[[JWS]]ヘッダの kid から署名に使用した公開鍵を、上記の[...
--取得した公開鍵を使用して署名の検証を行う。
***暗号化 [#q3cf4c4c]
復号化を行う主体がローテーションを行う。~
(古い鍵が使用される可能性があるため、鍵を暫く保持する)。
-復号化を行う主体は、
--jwks_uriで、秘密鍵のセットを[[JWK Set>JWK#od5799a4]]と...
-暗号化を行う主体は、
--jwks_uriで指定した場所から[[JWK Set>JWK#od5799a4]]を取...
--[[JWE]]ヘッダに、暗号化に使用した秘密鍵([[JWK Set>JWK#...
-復号化を行う主体は、
--[[JWE]]ヘッダの kid から暗号化に使用した秘密鍵を、上記...
--取得した秘密鍵を使用して復号化を行う。
*参考 [#x69f7dcb]
-Final: OpenID Connect Core 1.0 incorporating errata set ...
https://openid-foundation-japan.github.io/openid-connect-...
**[[暗号化アルゴリズム]] [#q0079dd6]
**[[JWT]], [[JWS]], [[JWE]], [[JWK]], [[JWA]] [#abf90d3b]
----
Tags: [[:IT国際標準]], [[:認証基盤]], [[:クレームベース認...
ページ名: