SlideShare a Scribd company logo
1 of 23
Download to read offline
https://lepidum.co.jp/ Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.
Token BindingとFIDO
株式会社レピダム
前田 薫 (@mad_p)
#fidcon 2015/05/27
#fidocon 2015/05/27
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
bearer tokenとholder-of-key token
 bearer token  holder-of-key token
#fidocon 2015/05/27
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Token Binding
 ベアラーセキュリティートークン
 OAuth token
 HTTPクッキー
 盗まれて行使できてしまう
 特定の者だけに許可したい
 IDと関連づけて管理 → 行使時のIDを確認
 draft-ietf-tokbind-protocol-00
#fidocon 2015/05/27
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
IETF92 in Dallas
 tokbind WG (Security エリア)
 token bindingを標準化するWG
#fidocon 2015/05/27
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Token Binding ID
#fidocon 2015/05/27
Public Keyを使って
Token Binding IDを定義
サーバーごとに
1組の鍵ペア
セキュアストレージ
鍵ペア
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Token Binding(1) トークン要求
#fidocon 2015/05/27
TLS接続
tls-unique
tls-unique
tls-uniqueを秘密鍵で署名、
TokenBindingIDとセットにして送る
もらった公開鍵と
tls-uniqueで署名検証
• いま話してる相手が
• この公開鍵に対応し
た秘密鍵を持ってい
る
TokenBinding
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Token Binding(2) トークン発行
#fidocon 2015/05/27
TokenBindingIDと
トークンを関連づける
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Token Binding(3) トークン行使
#fidocon 2015/05/27
tls-unique
TokenBinding
トークンと
TokenBindingを送る TokenBindingを検証
トークンに関連づけて
おいたTokenBindingID
と比較
tls-unique
• いま話してる相手が
• トークン発行先
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Token Binding IDの詳細
 以下の要素を持つバイナリ構造体
 TokenBindingType: providedまたはreferred
 SignatureAndHashAlgorithm: p256またはrsa2048
 公開鍵
 タイプは後述
 署名/ハッシュ方式もIDの一部とする
 ダウングレード攻撃を防ぐ
#fidocon 2015/05/27
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
ネゴシエーション
 TokenBindingを使うかどうか
 ALPNで決める案
 ALPN IDが長くなっちゃうのがいまいち
 TLSの新しい拡張を作る案
 TLSセッション確立後の最初の
ユーザープロトコルで送信
#fidocon 2015/05/27
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
注意すべき点
 プライバシー
 Token Binding IDはサーバーごとに別にする
 複数サーバーの結託「こいつ同じやつだ」を防ぐ
 Token Binding IDはクリアテキストで送らない
 横から見て「あいつあのサーバー行った」を防ぐ
 ユーザー要求で削除できるように
 セキュリティー
 Man-in-the-Browserは防げない点に注意
 秘密鍵をエキスポート不可な場所に保存
 取り出して他のマシンで使われることを防ぐ
#fidocon 2015/05/27
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
ChannelIDってのもありましたね?
 #idcon 16th でちょろっと話が
 draft-balfanz-tls-channelid-01
 Google Chromeなどに実装済
 individual draftのままexpire
 著者のDirk Balfanzはtokbind-protocol-00の著者に
も入っている
 Channel IDとtokbindの比較
 公開鍵と署名を送るのは同じ
 ChannelIDはTLS拡張で送信
#fidocon 2015/05/27
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
HTTPでのToken Binding
 draft-ietf-tokbind-https-00
 Token-Binding HTTPヘッダを使って
TokenBindingMessageを送る
 クッキーやOAuthトークンを
TokenBindingIDと関連づける
 トークン内に記入して署名
 データベースに保存
#fidocon 2015/05/27
GET / HTTP/1.1
Host: example.com
Token-Binding: DLF02LDSK3DMS28SA…
User-Agent: …
おなじみ
Url-safe Base64
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
フェデレーションサポート
 IdPから得たid_tokenをRPに提示
 RPがid_tokenを見て
確かに今これを持ってきた人は
IdPからこのトークンをもらった人だ
と確認したい
 id_tokenにToken Binding ID入れればいい!
 Token Binding IDはIdP用とRP用で異なる
 RP用のToken Binding IDをid_tokenに入れる
必要がある
 クライアントがRP用のToken Binding IDをIdPに
渡す
#fidocon 2015/05/27
http://www.ietf.org/proceedings/92/slides/slides-92-tokbind-2.pdf
http://www.ietf.org/proceedings/92/slides/slides-92-tokbind-2.pdf
TokenBinding RP用
TokenBinding RP用TokenBinding IdP用
tls-unique-r
tls-unique-i
providedタイプ
providedタイプ referredタイプ
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
FIDO
#fidocon 2015/05/27
challenge
challengechallenge
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
tls-unique
Token BindingとFIDO
#fidocon 2015/05/27
challenge
challenge
tls-unique
TokenBinding
challenge
tls-unique
FIDOデバイスを持っていればトークンが使える
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
まとめ
 TokenBinding
 鍵ペアとtls-uniqueで相手を特定
 トークンを関連づけて行使者を限定
 フェデレーションサポート
 FIDOを使って署名
#fidocon 2015/05/27
Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/
Any Questions? / Please Feedback!
https://lepidum.co.jp/
mailto:maeda@lepidum.co.jp / twitter: @mad_p
#fidocon 2015/05/27

More Related Content

What's hot

Modern Authentication -- FIDO2 Web Authentication (WebAuthn) を学ぶ --
Modern Authentication -- FIDO2 Web Authentication (WebAuthn) を学ぶ --Modern Authentication -- FIDO2 Web Authentication (WebAuthn) を学ぶ --
Modern Authentication -- FIDO2 Web Authentication (WebAuthn) を学ぶ --Jun Kurihara
 
数々の実績:迅速なFIDO認証の展開をサポート
数々の実績:迅速なFIDO認証の展開をサポート数々の実績:迅速なFIDO認証の展開をサポート
数々の実績:迅速なFIDO認証の展開をサポートFIDO Alliance
 
これからのネイティブアプリにおけるOpenID Connectの活用
これからのネイティブアプリにおけるOpenID Connectの活用これからのネイティブアプリにおけるOpenID Connectの活用
これからのネイティブアプリにおけるOpenID Connectの活用Masaru Kurahayashi
 
YAPC::Tokyo 2013 ritou OpenID Connect
YAPC::Tokyo 2013 ritou OpenID ConnectYAPC::Tokyo 2013 ritou OpenID Connect
YAPC::Tokyo 2013 ritou OpenID ConnectRyo Ito
 
金融向けoへの認証の導入
 金融向けoへの認証の導入 金融向けoへの認証の導入
金融向けoへの認証の導入FIDO Alliance
 
OpenID ConnectとSCIMのエンタープライズ利用ガイドライン
OpenID ConnectとSCIMのエンタープライズ利用ガイドラインOpenID ConnectとSCIMのエンタープライズ利用ガイドライン
OpenID ConnectとSCIMのエンタープライズ利用ガイドラインTakashi Yahata
 
IETF94 M2M Authentication関連報告
IETF94 M2M Authentication関連報告IETF94 M2M Authentication関連報告
IETF94 M2M Authentication関連報告Masaru Kurahayashi
 
安全な"○○でログイン"の作り方 @ NDS in Niigata #1
安全な"○○でログイン"の作り方 @ NDS in Niigata #1安全な"○○でログイン"の作り方 @ NDS in Niigata #1
安全な"○○でログイン"の作り方 @ NDS in Niigata #1Ryo Ito
 
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014Takashi Yahata
 
OpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルOpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルMasaru Kurahayashi
 
Commmentary on FIDO Specifications (Japanese) 仕様に関する日本語での補足解説
Commmentary on FIDO Specifications (Japanese) 仕様に関する日本語での補足解説Commmentary on FIDO Specifications (Japanese) 仕様に関する日本語での補足解説
Commmentary on FIDO Specifications (Japanese) 仕様に関する日本語での補足解説FIDO Alliance
 
中小企業によるFIDO導入事例
中小企業によるFIDO導入事例中小企業によるFIDO導入事例
中小企業によるFIDO導入事例FIDO Alliance
 
2020 0218 - パスワードのいらない世界へ:FIDOアライアンスとFIDO認証の最新状況
2020 0218 - パスワードのいらない世界へ:FIDOアライアンスとFIDO認証の最新状況2020 0218 - パスワードのいらない世界へ:FIDOアライアンスとFIDO認証の最新状況
2020 0218 - パスワードのいらない世界へ:FIDOアライアンスとFIDO認証の最新状況FIDO Alliance
 
Authlete overview
Authlete overviewAuthlete overview
Authlete overviewmtisol
 
Keycloakの紹介と最新開発動向
Keycloakの紹介と最新開発動向Keycloakの紹介と最新開発動向
Keycloakの紹介と最新開発動向Yuichi Nakamura
 
認証技術、デジタルアイデンティティ技術の最新動向
認証技術、デジタルアイデンティティ技術の最新動向認証技術、デジタルアイデンティティ技術の最新動向
認証技術、デジタルアイデンティティ技術の最新動向Tatsuo Kudo
 
認証の課題とID連携の実装 〜ハンズオン〜
認証の課題とID連携の実装 〜ハンズオン〜認証の課題とID連携の実装 〜ハンズオン〜
認証の課題とID連携の実装 〜ハンズオン〜Masaru Kurahayashi
 
VPNはもう卒業!FIDO2認証で次世代リモートアクセス
VPNはもう卒業!FIDO2認証で次世代リモートアクセスVPNはもう卒業!FIDO2認証で次世代リモートアクセス
VPNはもう卒業!FIDO2認証で次世代リモートアクセスFIDO Alliance
 

What's hot (20)

Modern Authentication -- FIDO2 Web Authentication (WebAuthn) を学ぶ --
Modern Authentication -- FIDO2 Web Authentication (WebAuthn) を学ぶ --Modern Authentication -- FIDO2 Web Authentication (WebAuthn) を学ぶ --
Modern Authentication -- FIDO2 Web Authentication (WebAuthn) を学ぶ --
 
数々の実績:迅速なFIDO認証の展開をサポート
数々の実績:迅速なFIDO認証の展開をサポート数々の実績:迅速なFIDO認証の展開をサポート
数々の実績:迅速なFIDO認証の展開をサポート
 
これからのネイティブアプリにおけるOpenID Connectの活用
これからのネイティブアプリにおけるOpenID Connectの活用これからのネイティブアプリにおけるOpenID Connectの活用
これからのネイティブアプリにおけるOpenID Connectの活用
 
YAPC::Tokyo 2013 ritou OpenID Connect
YAPC::Tokyo 2013 ritou OpenID ConnectYAPC::Tokyo 2013 ritou OpenID Connect
YAPC::Tokyo 2013 ritou OpenID Connect
 
金融向けoへの認証の導入
 金融向けoへの認証の導入 金融向けoへの認証の導入
金融向けoへの認証の導入
 
OpenID ConnectとSCIMのエンタープライズ利用ガイドライン
OpenID ConnectとSCIMのエンタープライズ利用ガイドラインOpenID ConnectとSCIMのエンタープライズ利用ガイドライン
OpenID ConnectとSCIMのエンタープライズ利用ガイドライン
 
IETF94 M2M Authentication関連報告
IETF94 M2M Authentication関連報告IETF94 M2M Authentication関連報告
IETF94 M2M Authentication関連報告
 
安全な"○○でログイン"の作り方 @ NDS in Niigata #1
安全な"○○でログイン"の作り方 @ NDS in Niigata #1安全な"○○でログイン"の作り方 @ NDS in Niigata #1
安全な"○○でログイン"の作り方 @ NDS in Niigata #1
 
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
 
OpenID Connect Summit Transfer of Information
OpenID Connect Summit Transfer of InformationOpenID Connect Summit Transfer of Information
OpenID Connect Summit Transfer of Information
 
OpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルOpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクル
 
Commmentary on FIDO Specifications (Japanese) 仕様に関する日本語での補足解説
Commmentary on FIDO Specifications (Japanese) 仕様に関する日本語での補足解説Commmentary on FIDO Specifications (Japanese) 仕様に関する日本語での補足解説
Commmentary on FIDO Specifications (Japanese) 仕様に関する日本語での補足解説
 
中小企業によるFIDO導入事例
中小企業によるFIDO導入事例中小企業によるFIDO導入事例
中小企業によるFIDO導入事例
 
FIDOのキホン
FIDOのキホンFIDOのキホン
FIDOのキホン
 
2020 0218 - パスワードのいらない世界へ:FIDOアライアンスとFIDO認証の最新状況
2020 0218 - パスワードのいらない世界へ:FIDOアライアンスとFIDO認証の最新状況2020 0218 - パスワードのいらない世界へ:FIDOアライアンスとFIDO認証の最新状況
2020 0218 - パスワードのいらない世界へ:FIDOアライアンスとFIDO認証の最新状況
 
Authlete overview
Authlete overviewAuthlete overview
Authlete overview
 
Keycloakの紹介と最新開発動向
Keycloakの紹介と最新開発動向Keycloakの紹介と最新開発動向
Keycloakの紹介と最新開発動向
 
認証技術、デジタルアイデンティティ技術の最新動向
認証技術、デジタルアイデンティティ技術の最新動向認証技術、デジタルアイデンティティ技術の最新動向
認証技術、デジタルアイデンティティ技術の最新動向
 
認証の課題とID連携の実装 〜ハンズオン〜
認証の課題とID連携の実装 〜ハンズオン〜認証の課題とID連携の実装 〜ハンズオン〜
認証の課題とID連携の実装 〜ハンズオン〜
 
VPNはもう卒業!FIDO2認証で次世代リモートアクセス
VPNはもう卒業!FIDO2認証で次世代リモートアクセスVPNはもう卒業!FIDO2認証で次世代リモートアクセス
VPNはもう卒業!FIDO2認証で次世代リモートアクセス
 

Viewers also liked

Microsoftの認証システムの歴史と 過渡期におけるWAPの活用 +Next Generation Credentials
Microsoftの認証システムの歴史と過渡期におけるWAPの活用+Next Generation CredentialsMicrosoftの認証システムの歴史と過渡期におけるWAPの活用+Next Generation Credentials
Microsoftの認証システムの歴史と 過渡期におけるWAPの活用 +Next Generation CredentialsNaohiro Fujie
 
New FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -Nadalin
New FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -NadalinNew FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -Nadalin
New FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -NadalinFIDO Alliance
 
エンタープライズの視点からFIDOとFederationのビジネスを考える
エンタープライズの視点からFIDOとFederationのビジネスを考えるエンタープライズの視点からFIDOとFederationのビジネスを考える
エンタープライズの視点からFIDOとFederationのビジネスを考えるMasaru Kurahayashi
 
FIDO Alliance Activity in Japan
FIDO Alliance Activity in Japan FIDO Alliance Activity in Japan
FIDO Alliance Activity in Japan FIDO Alliance
 
NTT Docomo Deployment Case Study: Your Security, More Simple
NTT Docomo Deployment Case Study: Your Security, More SimpleNTT Docomo Deployment Case Study: Your Security, More Simple
NTT Docomo Deployment Case Study: Your Security, More SimpleFIDO Alliance
 
ノンデザイナーのための配色理論
ノンデザイナーのための配色理論ノンデザイナーのための配色理論
ノンデザイナーのための配色理論tsukasa obara
 
色彩センスのいらない配色講座
色彩センスのいらない配色講座色彩センスのいらない配色講座
色彩センスのいらない配色講座Mariko Yamaguchi
 
見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版MOCKS | Yuta Morishige
 
TwitterのBasic認証が今度こそ終わります
TwitterのBasic認証が今度こそ終わりますTwitterのBasic認証が今度こそ終わります
TwitterのBasic認証が今度こそ終わりますDaisuke Nikura
 
Introduction to the FIDO Alliance: Vision and Status
Introduction to the FIDO Alliance: Vision and StatusIntroduction to the FIDO Alliance: Vision and Status
Introduction to the FIDO Alliance: Vision and StatusFIDO Alliance
 
CIS 2014: Azure Active Directory (Sean Deuby)
CIS 2014: Azure Active Directory (Sean Deuby)CIS 2014: Azure Active Directory (Sean Deuby)
CIS 2014: Azure Active Directory (Sean Deuby)CloudIDSummit
 
歴史から学ぶID 〜日本書紀から番号制度まで〜
歴史から学ぶID 〜日本書紀から番号制度まで〜歴史から学ぶID 〜日本書紀から番号制度まで〜
歴史から学ぶID 〜日本書紀から番号制度まで〜Masanori Kusunoki
 
OSC 2011 Tokyo/Spring OpenStackプレゼン
OSC 2011 Tokyo/Spring OpenStackプレゼンOSC 2011 Tokyo/Spring OpenStackプレゼン
OSC 2011 Tokyo/Spring OpenStackプレゼンMasanori Itoh
 
#idcon 15th ritou 2factor auth
#idcon 15th ritou 2factor auth#idcon 15th ritou 2factor auth
#idcon 15th ritou 2factor authRyo Ito
 
iTree Company Profile
iTree Company ProfileiTree Company Profile
iTree Company Profilerohanspatil
 
WebIntents × SNS
WebIntents × SNSWebIntents × SNS
WebIntents × SNSRyo Ito
 

Viewers also liked (20)

FIDO in Windows10
FIDO in Windows10FIDO in Windows10
FIDO in Windows10
 
Microsoftの認証システムの歴史と 過渡期におけるWAPの活用 +Next Generation Credentials
Microsoftの認証システムの歴史と過渡期におけるWAPの活用+Next Generation CredentialsMicrosoftの認証システムの歴史と過渡期におけるWAPの活用+Next Generation Credentials
Microsoftの認証システムの歴史と 過渡期におけるWAPの活用 +Next Generation Credentials
 
New FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -Nadalin
New FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -NadalinNew FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -Nadalin
New FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -Nadalin
 
エンタープライズの視点からFIDOとFederationのビジネスを考える
エンタープライズの視点からFIDOとFederationのビジネスを考えるエンタープライズの視点からFIDOとFederationのビジネスを考える
エンタープライズの視点からFIDOとFederationのビジネスを考える
 
FIDO Alliance Activity in Japan
FIDO Alliance Activity in Japan FIDO Alliance Activity in Japan
FIDO Alliance Activity in Japan
 
NTT Docomo Deployment Case Study: Your Security, More Simple
NTT Docomo Deployment Case Study: Your Security, More SimpleNTT Docomo Deployment Case Study: Your Security, More Simple
NTT Docomo Deployment Case Study: Your Security, More Simple
 
しょぼいプレゼンをパワポのせいにするな! by @jessedee
しょぼいプレゼンをパワポのせいにするな! by @jessedeeしょぼいプレゼンをパワポのせいにするな! by @jessedee
しょぼいプレゼンをパワポのせいにするな! by @jessedee
 
ノンデザイナーのための配色理論
ノンデザイナーのための配色理論ノンデザイナーのための配色理論
ノンデザイナーのための配色理論
 
色彩センスのいらない配色講座
色彩センスのいらない配色講座色彩センスのいらない配色講座
色彩センスのいらない配色講座
 
見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版
 
TwitterのBasic認証が今度こそ終わります
TwitterのBasic認証が今度こそ終わりますTwitterのBasic認証が今度こそ終わります
TwitterのBasic認証が今度こそ終わります
 
Introduction to the FIDO Alliance: Vision and Status
Introduction to the FIDO Alliance: Vision and StatusIntroduction to the FIDO Alliance: Vision and Status
Introduction to the FIDO Alliance: Vision and Status
 
CIS 2014: Azure Active Directory (Sean Deuby)
CIS 2014: Azure Active Directory (Sean Deuby)CIS 2014: Azure Active Directory (Sean Deuby)
CIS 2014: Azure Active Directory (Sean Deuby)
 
歴史から学ぶID 〜日本書紀から番号制度まで〜
歴史から学ぶID 〜日本書紀から番号制度まで〜歴史から学ぶID 〜日本書紀から番号制度まで〜
歴史から学ぶID 〜日本書紀から番号制度まで〜
 
O Auth
O AuthO Auth
O Auth
 
OSC 2011 Tokyo/Spring OpenStackプレゼン
OSC 2011 Tokyo/Spring OpenStackプレゼンOSC 2011 Tokyo/Spring OpenStackプレゼン
OSC 2011 Tokyo/Spring OpenStackプレゼン
 
#idcon 15th ritou 2factor auth
#idcon 15th ritou 2factor auth#idcon 15th ritou 2factor auth
#idcon 15th ritou 2factor auth
 
iTree Company Profile
iTree Company ProfileiTree Company Profile
iTree Company Profile
 
WebIntents × SNS
WebIntents × SNSWebIntents × SNS
WebIntents × SNS
 
Bitcoinの概要と論点
Bitcoinの概要と論点Bitcoinの概要と論点
Bitcoinの概要と論点
 

Similar to Tokbind-fido

IETF96 Update oauth tokbind
IETF96 Update oauth tokbindIETF96 Update oauth tokbind
IETF96 Update oauth tokbindKaoru Maeda
 
OAuthのHolder of Key Token
OAuthのHolder of Key TokenOAuthのHolder of Key Token
OAuthのHolder of Key TokenYuichi Nakamura
 
Idpfのepub lcpとは何か
Idpfのepub  lcpとは何かIdpfのepub  lcpとは何か
Idpfのepub lcpとは何かSampei Tohru
 
IETF90 Web関連WG報告 #isocjp
IETF90 Web関連WG報告 #isocjpIETF90 Web関連WG報告 #isocjp
IETF90 Web関連WG報告 #isocjpKaoru Maeda
 
FAPI and beyond - よりよいセキュリティのために
FAPI and beyond - よりよいセキュリティのためにFAPI and beyond - よりよいセキュリティのために
FAPI and beyond - よりよいセキュリティのためにNat Sakimura
 
Ietf91報告 httpbis-httpauth
Ietf91報告 httpbis-httpauthIetf91報告 httpbis-httpauth
Ietf91報告 httpbis-httpauthKaoru Maeda
 
IETF93 Prague報告Web関連+QUIC
IETF93 Prague報告Web関連+QUICIETF93 Prague報告Web関連+QUIC
IETF93 Prague報告Web関連+QUICKaoru Maeda
 
IETF90 IoT関連WG報告 #isocjp
IETF90 IoT関連WG報告 #isocjpIETF90 IoT関連WG報告 #isocjp
IETF90 IoT関連WG報告 #isocjpKaoru Maeda
 
IETF92報告IoT関連
IETF92報告IoT関連IETF92報告IoT関連
IETF92報告IoT関連Kaoru Maeda
 
FAPI and Beyond: From an specification author's point of view #fapisum - Japa...
FAPI and Beyond: From an specification author's point of view #fapisum - Japa...FAPI and Beyond: From an specification author's point of view #fapisum - Japa...
FAPI and Beyond: From an specification author's point of view #fapisum - Japa...FinTechLabs.io
 
IETF91 Honolulu httpbis WG Report
IETF91 Honolulu httpbis WG ReportIETF91 Honolulu httpbis WG Report
IETF91 Honolulu httpbis WG ReportKaoru Maeda
 
IETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjpIETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjpKaoru Maeda
 
HTTP/2 draft 14 preview and IETF90 httpbis WG Report
HTTP/2 draft 14 preview and IETF90 httpbis WG ReportHTTP/2 draft 14 preview and IETF90 httpbis WG Report
HTTP/2 draft 14 preview and IETF90 httpbis WG ReportKaoru Maeda
 
IETF93プレ勉強会、ARTエリアの歩き方
IETF93プレ勉強会、ARTエリアの歩き方IETF93プレ勉強会、ARTエリアの歩き方
IETF93プレ勉強会、ARTエリアの歩き方Kaoru Maeda
 
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向Tatsuo Kudo
 
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014Nov Matake
 
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawawsOAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawawsTatsuo Kudo
 
なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景Tatsuo Kudo
 
PFSなTLS通信を復号する
PFSなTLS通信を復号するPFSなTLS通信を復号する
PFSなTLS通信を復号する稔 小林
 

Similar to Tokbind-fido (20)

IETF96 Update oauth tokbind
IETF96 Update oauth tokbindIETF96 Update oauth tokbind
IETF96 Update oauth tokbind
 
Ietf95 http2
Ietf95 http2Ietf95 http2
Ietf95 http2
 
OAuthのHolder of Key Token
OAuthのHolder of Key TokenOAuthのHolder of Key Token
OAuthのHolder of Key Token
 
Idpfのepub lcpとは何か
Idpfのepub  lcpとは何かIdpfのepub  lcpとは何か
Idpfのepub lcpとは何か
 
IETF90 Web関連WG報告 #isocjp
IETF90 Web関連WG報告 #isocjpIETF90 Web関連WG報告 #isocjp
IETF90 Web関連WG報告 #isocjp
 
FAPI and beyond - よりよいセキュリティのために
FAPI and beyond - よりよいセキュリティのためにFAPI and beyond - よりよいセキュリティのために
FAPI and beyond - よりよいセキュリティのために
 
Ietf91報告 httpbis-httpauth
Ietf91報告 httpbis-httpauthIetf91報告 httpbis-httpauth
Ietf91報告 httpbis-httpauth
 
IETF93 Prague報告Web関連+QUIC
IETF93 Prague報告Web関連+QUICIETF93 Prague報告Web関連+QUIC
IETF93 Prague報告Web関連+QUIC
 
IETF90 IoT関連WG報告 #isocjp
IETF90 IoT関連WG報告 #isocjpIETF90 IoT関連WG報告 #isocjp
IETF90 IoT関連WG報告 #isocjp
 
IETF92報告IoT関連
IETF92報告IoT関連IETF92報告IoT関連
IETF92報告IoT関連
 
FAPI and Beyond: From an specification author's point of view #fapisum - Japa...
FAPI and Beyond: From an specification author's point of view #fapisum - Japa...FAPI and Beyond: From an specification author's point of view #fapisum - Japa...
FAPI and Beyond: From an specification author's point of view #fapisum - Japa...
 
IETF91 Honolulu httpbis WG Report
IETF91 Honolulu httpbis WG ReportIETF91 Honolulu httpbis WG Report
IETF91 Honolulu httpbis WG Report
 
IETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjpIETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjp
 
HTTP/2 draft 14 preview and IETF90 httpbis WG Report
HTTP/2 draft 14 preview and IETF90 httpbis WG ReportHTTP/2 draft 14 preview and IETF90 httpbis WG Report
HTTP/2 draft 14 preview and IETF90 httpbis WG Report
 
IETF93プレ勉強会、ARTエリアの歩き方
IETF93プレ勉強会、ARTエリアの歩き方IETF93プレ勉強会、ARTエリアの歩き方
IETF93プレ勉強会、ARTエリアの歩き方
 
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
 
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014SAML / OpenID Connect / OAuth / SCIM 技術解説  - ID&IT 2014 #idit2014
SAML / OpenID Connect / OAuth / SCIM 技術解説 - ID&IT 2014 #idit2014
 
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawawsOAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
 
なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景
 
PFSなTLS通信を復号する
PFSなTLS通信を復号するPFSなTLS通信を復号する
PFSなTLS通信を復号する
 

More from Kaoru Maeda

Emacs TypeScript
Emacs TypeScriptEmacs TypeScript
Emacs TypeScriptKaoru Maeda
 
IETF103の話題から (HTML5 Conf 2018)
IETF103の話題から (HTML5 Conf 2018)IETF103の話題から (HTML5 Conf 2018)
IETF103の話題から (HTML5 Conf 2018)Kaoru Maeda
 
IETF102 Report Authorization
IETF102 Report AuthorizationIETF102 Report Authorization
IETF102 Report AuthorizationKaoru Maeda
 
IETF97 Update oauth tokbind
IETF97 Update oauth tokbindIETF97 Update oauth tokbind
IETF97 Update oauth tokbindKaoru Maeda
 
http2study 20160423 IETF95 Report
http2study 20160423 IETF95 Reporthttp2study 20160423 IETF95 Report
http2study 20160423 IETF95 ReportKaoru Maeda
 
From an Experience of Vulnerability Reporting
From an Experience of Vulnerability ReportingFrom an Experience of Vulnerability Reporting
From an Experience of Vulnerability ReportingKaoru Maeda
 
HTTP/2: ぼくたちのWebはどう変わるのか
HTTP/2: ぼくたちのWebはどう変わるのかHTTP/2: ぼくたちのWebはどう変わるのか
HTTP/2: ぼくたちのWebはどう変わるのかKaoru Maeda
 
IETF91報告arcmedia-mcic
IETF91報告arcmedia-mcicIETF91報告arcmedia-mcic
IETF91報告arcmedia-mcicKaoru Maeda
 
HTTP/2 Local activities in Japan
HTTP/2 Local activities in JapanHTTP/2 Local activities in Japan
HTTP/2 Local activities in JapanKaoru Maeda
 
httpbis WG IETF89レポート
httpbis WG IETF89レポートhttpbis WG IETF89レポート
httpbis WG IETF89レポートKaoru Maeda
 
HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜Kaoru Maeda
 
Rubyコードゴルフ「ぐるぐる渦巻き」に参加してみた
Rubyコードゴルフ「ぐるぐる渦巻き」に参加してみたRubyコードゴルフ「ぐるぐる渦巻き」に参加してみた
Rubyコードゴルフ「ぐるぐる渦巻き」に参加してみたKaoru Maeda
 
Fizzbuzz in Complex Plane
Fizzbuzz in Complex PlaneFizzbuzz in Complex Plane
Fizzbuzz in Complex PlaneKaoru Maeda
 
Lightning Talks日本上陸
Lightning Talks日本上陸Lightning Talks日本上陸
Lightning Talks日本上陸Kaoru Maeda
 

More from Kaoru Maeda (14)

Emacs TypeScript
Emacs TypeScriptEmacs TypeScript
Emacs TypeScript
 
IETF103の話題から (HTML5 Conf 2018)
IETF103の話題から (HTML5 Conf 2018)IETF103の話題から (HTML5 Conf 2018)
IETF103の話題から (HTML5 Conf 2018)
 
IETF102 Report Authorization
IETF102 Report AuthorizationIETF102 Report Authorization
IETF102 Report Authorization
 
IETF97 Update oauth tokbind
IETF97 Update oauth tokbindIETF97 Update oauth tokbind
IETF97 Update oauth tokbind
 
http2study 20160423 IETF95 Report
http2study 20160423 IETF95 Reporthttp2study 20160423 IETF95 Report
http2study 20160423 IETF95 Report
 
From an Experience of Vulnerability Reporting
From an Experience of Vulnerability ReportingFrom an Experience of Vulnerability Reporting
From an Experience of Vulnerability Reporting
 
HTTP/2: ぼくたちのWebはどう変わるのか
HTTP/2: ぼくたちのWebはどう変わるのかHTTP/2: ぼくたちのWebはどう変わるのか
HTTP/2: ぼくたちのWebはどう変わるのか
 
IETF91報告arcmedia-mcic
IETF91報告arcmedia-mcicIETF91報告arcmedia-mcic
IETF91報告arcmedia-mcic
 
HTTP/2 Local activities in Japan
HTTP/2 Local activities in JapanHTTP/2 Local activities in Japan
HTTP/2 Local activities in Japan
 
httpbis WG IETF89レポート
httpbis WG IETF89レポートhttpbis WG IETF89レポート
httpbis WG IETF89レポート
 
HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜HTTP2 最速実装 〜入門編〜
HTTP2 最速実装 〜入門編〜
 
Rubyコードゴルフ「ぐるぐる渦巻き」に参加してみた
Rubyコードゴルフ「ぐるぐる渦巻き」に参加してみたRubyコードゴルフ「ぐるぐる渦巻き」に参加してみた
Rubyコードゴルフ「ぐるぐる渦巻き」に参加してみた
 
Fizzbuzz in Complex Plane
Fizzbuzz in Complex PlaneFizzbuzz in Complex Plane
Fizzbuzz in Complex Plane
 
Lightning Talks日本上陸
Lightning Talks日本上陸Lightning Talks日本上陸
Lightning Talks日本上陸
 

Tokbind-fido

  • 1. https://lepidum.co.jp/ Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved. Token BindingとFIDO 株式会社レピダム 前田 薫 (@mad_p) #fidcon 2015/05/27 #fidocon 2015/05/27
  • 2.
  • 3. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ bearer tokenとholder-of-key token  bearer token  holder-of-key token #fidocon 2015/05/27
  • 4. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Token Binding  ベアラーセキュリティートークン  OAuth token  HTTPクッキー  盗まれて行使できてしまう  特定の者だけに許可したい  IDと関連づけて管理 → 行使時のIDを確認  draft-ietf-tokbind-protocol-00 #fidocon 2015/05/27
  • 5. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ IETF92 in Dallas  tokbind WG (Security エリア)  token bindingを標準化するWG #fidocon 2015/05/27
  • 6. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Token Binding ID #fidocon 2015/05/27 Public Keyを使って Token Binding IDを定義 サーバーごとに 1組の鍵ペア セキュアストレージ 鍵ペア
  • 7. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Token Binding(1) トークン要求 #fidocon 2015/05/27 TLS接続 tls-unique tls-unique tls-uniqueを秘密鍵で署名、 TokenBindingIDとセットにして送る もらった公開鍵と tls-uniqueで署名検証 • いま話してる相手が • この公開鍵に対応し た秘密鍵を持ってい る TokenBinding
  • 8. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Token Binding(2) トークン発行 #fidocon 2015/05/27 TokenBindingIDと トークンを関連づける
  • 9. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Token Binding(3) トークン行使 #fidocon 2015/05/27 tls-unique TokenBinding トークンと TokenBindingを送る TokenBindingを検証 トークンに関連づけて おいたTokenBindingID と比較 tls-unique • いま話してる相手が • トークン発行先
  • 10. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Token Binding IDの詳細  以下の要素を持つバイナリ構造体  TokenBindingType: providedまたはreferred  SignatureAndHashAlgorithm: p256またはrsa2048  公開鍵  タイプは後述  署名/ハッシュ方式もIDの一部とする  ダウングレード攻撃を防ぐ #fidocon 2015/05/27
  • 11. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ ネゴシエーション  TokenBindingを使うかどうか  ALPNで決める案  ALPN IDが長くなっちゃうのがいまいち  TLSの新しい拡張を作る案  TLSセッション確立後の最初の ユーザープロトコルで送信 #fidocon 2015/05/27
  • 12. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ 注意すべき点  プライバシー  Token Binding IDはサーバーごとに別にする  複数サーバーの結託「こいつ同じやつだ」を防ぐ  Token Binding IDはクリアテキストで送らない  横から見て「あいつあのサーバー行った」を防ぐ  ユーザー要求で削除できるように  セキュリティー  Man-in-the-Browserは防げない点に注意  秘密鍵をエキスポート不可な場所に保存  取り出して他のマシンで使われることを防ぐ #fidocon 2015/05/27
  • 13. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ ChannelIDってのもありましたね?  #idcon 16th でちょろっと話が  draft-balfanz-tls-channelid-01  Google Chromeなどに実装済  individual draftのままexpire  著者のDirk Balfanzはtokbind-protocol-00の著者に も入っている  Channel IDとtokbindの比較  公開鍵と署名を送るのは同じ  ChannelIDはTLS拡張で送信 #fidocon 2015/05/27
  • 14.
  • 15. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ HTTPでのToken Binding  draft-ietf-tokbind-https-00  Token-Binding HTTPヘッダを使って TokenBindingMessageを送る  クッキーやOAuthトークンを TokenBindingIDと関連づける  トークン内に記入して署名  データベースに保存 #fidocon 2015/05/27 GET / HTTP/1.1 Host: example.com Token-Binding: DLF02LDSK3DMS28SA… User-Agent: … おなじみ Url-safe Base64
  • 16. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ フェデレーションサポート  IdPから得たid_tokenをRPに提示  RPがid_tokenを見て 確かに今これを持ってきた人は IdPからこのトークンをもらった人だ と確認したい  id_tokenにToken Binding ID入れればいい!  Token Binding IDはIdP用とRP用で異なる  RP用のToken Binding IDをid_tokenに入れる 必要がある  クライアントがRP用のToken Binding IDをIdPに 渡す #fidocon 2015/05/27
  • 18. http://www.ietf.org/proceedings/92/slides/slides-92-tokbind-2.pdf TokenBinding RP用 TokenBinding RP用TokenBinding IdP用 tls-unique-r tls-unique-i providedタイプ providedタイプ referredタイプ
  • 19.
  • 20. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ FIDO #fidocon 2015/05/27 challenge challengechallenge
  • 21. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ tls-unique Token BindingとFIDO #fidocon 2015/05/27 challenge challenge tls-unique TokenBinding challenge tls-unique FIDOデバイスを持っていればトークンが使える
  • 22. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ まとめ  TokenBinding  鍵ペアとtls-uniqueで相手を特定  トークンを関連づけて行使者を限定  フェデレーションサポート  FIDOを使って署名 #fidocon 2015/05/27
  • 23. Copyright © 2004-2015 Lepidum Co. Ltd. All rights reserved.https://lepidum.co.jp/ Any Questions? / Please Feedback! https://lepidum.co.jp/ mailto:maeda@lepidum.co.jp / twitter: @mad_p #fidocon 2015/05/27