passwd salt iteration nonce | | | |________________________________________, V V V | | Hi( *, *, * ) = SaltedPassword ---------------------------------)----------, | | | | | V | V | HMAC(key, "Client Key") = ClientKey | HMAC(key, "Server Key") = ServerKey | | | | | | | V | | | | H(*) = StoredKey | | | | | | | | | V V V V | HMAC(key, str) = ClientSignature HMAC(key, str) = ServerSignature | | V___________________________V XOR | V ClientProof Server: exchange nonce recv ClientProof StoredKey = authDB[username] ClientSignature = HMAC(StoredKey, nonce) ClientKey = ClientProof XOR ClientSignature if H(ClientKey) == StoredKey then OK // the client knows the correct ClientKey. else NG HMAC(key, str): Apply the HMAC keyed hash algorithm H(str): Apply the cryptographic hash function Hi(str, salt, i): U1 := HMAC(str, salt + INT(1)) U2 := HMAC(str, U1) ... Ui-1 := HMAC(str, Ui-2) Ui := HMAC(str, Ui-1) Hi := U1 XOR U2 XOR ... XOR Ui
カテゴリ別アーカイブ
記事検索
最新記事
月別アーカイブ
アクセスカウンター
タグごと記事リンク
- 540
- AirCross
- android
- awk
- beer
- BitVisor
- blu-ray
- Bluetooth
- bunbougu
- C++
- chifure
- Cloud
- coloria
- cosme
- COVID19
- DC-GH6
- DIVE
- DMC-GH3
- DMC-GH4
- DMW-FL360L
- DSC-HX200V
- earsopen
- fisheye
- FreeBSD
- gcc
- Gfarm
- GH4
- Git
- GODOX
- GPU
- haskell
- HDD
- HG
- i288
- iijlab
- iijmio
- IPA
- IPv6
- jetglide
- KATA
- ke-non
- kernelvm
- Lowepro
- m43
- mercurial
- mesos
- Mew
- MNP
- mobilitas
- MOZA
- muji
- nail
- NAT
- nissin
- p2p
- pelikan
- Pen
- PH-1
- PLAN9
- platinum
- RX-8
- sandisk
- SCREEN
- SIRUI
- siwm
- skk
- sony
- SSD
- ssh
- stationery
- swex
- swim
- TASCAM
- tmux
- tokyo-olympic-2020
- topvalu
- TV
- ufs
- unix
- VAIO_type_P
- VM
- VoidTokyo
- whisky
- willcom
- WiMAX
- wine
- y!mobile
- ZFS
- zozo
- グラノーラ
- サングリア
- シェーバー
- ジェルネイル
- フルグラ
- ミューズリー
- 化粧品
- 品川区水泳大会
- 土佐文旦
- 常滑焼
- 靴
人気記事(週間)
人気記事(月間)