JP2018196085A - 認証方法及び認証システム - Google Patents
認証方法及び認証システム Download PDFInfo
- Publication number
- JP2018196085A JP2018196085A JP2017100845A JP2017100845A JP2018196085A JP 2018196085 A JP2018196085 A JP 2018196085A JP 2017100845 A JP2017100845 A JP 2017100845A JP 2017100845 A JP2017100845 A JP 2017100845A JP 2018196085 A JP2018196085 A JP 2018196085A
- Authority
- JP
- Japan
- Prior art keywords
- authentication
- server
- authentication information
- information
- target device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/305—Authentication, i.e. establishing the identity or authorisation of security principals by remotely controlling device operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/88—Detecting or preventing theft or loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3273—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R2325/00—Indexing scheme relating to vehicle anti-theft devices
- B60R2325/10—Communication protocols, communication systems of vehicle anti-theft devices
- B60R2325/108—Encryption
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R25/00—Fittings or systems for preventing or indicating unauthorised use or theft of vehicles
- B60R25/20—Means to switch the anti-theft system on or off
- B60R25/24—Means to switch the anti-theft system on or off using electronic identifiers containing a code not memorised by the user
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C9/00—Individual registration on entry or exit
- G07C9/00174—Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
- G07C2009/00753—Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys
- G07C2009/00769—Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys with data transmission performed by wireless means
- G07C2009/00793—Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys with data transmission performed by wireless means by Hertzian waves
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C9/00—Individual registration on entry or exit
- G07C9/00174—Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
- G07C9/00571—Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by interacting with a central unit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/76—Proxy, i.e. using intermediary entity to perform cryptographic operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/84—Vehicles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
- H04W12/121—Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
- H04W12/122—Counter-measures against attacks; Protection against rogue devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/61—Time-dependent
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/69—Identity-dependent
- H04W12/71—Hardware identity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Power Engineering (AREA)
- Mechanical Engineering (AREA)
- Computer And Data Communications (AREA)
Abstract
【解決手段】一実施の形態にかかる認証方法は、サーバが、認証対象機器の識別子と共通鍵とを引数とした疑似ランダム関数を用いて生成された値で構成した第1の認証情報を生成し、第1の認証情報を認証代行クライアントを介して認証対象機器へ送信し、認証対象機器が、識別子と共通鍵とを引数とした疑似ランダム関数を用いて生成された値と、第1の認証情報とを比較することによって第1の認証情報の正当性を確認し、第1の認証情報の正当性を確認した後に、認証対象機器の識別子と共通鍵と第1の認証情報の確認結果とを引数とした疑似ランダム関数を用いて生成された値で構成した第2の認証情報を生成し、第2の認証情報を前記認証代行クライアントへ送信する。
【選択図】図1
Description
認証代行クライアントは、認証対象機器からIDを受信すると(S1)、セッション管理のためにrp ∈ {0,1}^k を選び(S2)、(1,rp,ID) をサーバに送付する(S3)。サーバは(1,rp,ID) を受け取ると、下記手順(S4)を実施する。
2. 現在の時刻をtss ← TimeStamp として選ぶ。
3. 乱数をrh ← {0,1}^k として選ぶ。
4. r1 := PRF(sk,tss||ID||rh) を計算する。そして、サーバはData1 := (tss,ID,rh,r1) として認証代行クライアントに(1,rp,Data1)を送付する(S5)。ここでPRFは疑似ランダム関数(Pseudo Random Function)、演算子’||’はビット連接を表す。
認証代行クライアントは現在の時刻をtsp ← TimeStamp として選び(S6)、(rp,tsp,Data1) を認証対象機器に送付する(S7)。認証対象機器は(rp,tsp,Data1 = (tss,ID,rh,r1)) を受け取ると、下記手順(S8)を実施する。
2. r1 = PRF(sk,tss||ID||rh) が満たされるかを検証する。もし満たしていた場合はresult1 := 01 とし、そうでなければresult1 := 10 とする。
3. 乱数をrc ← {0,1}^(k-2) として選び、rc := rc||result1 ∈ {0,1}^k とする。
4. r2 := PRF(ski,tss||tsp||ID||rh||rc) を求める。そして、認証対象機器はData2 := (tss,ID,rh,rc,r2) として(rp,tsp,Data2) を認証代行クライアントに送付する(S9)。
認証代行クライアントは(2,rp,tsp,Data2) をサーバに送付する(S10)。サーバは(2,rp,tsp,Data2 = (tss,ID,rh,rc,r2)) を受け取ると、rp,tss,tsp,ID,rh,rc,r2 ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、満たしていなければresult2 := 00 とする。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていれば、r2 = PRF(sk,tss||tsp||ID||rh||rc) であるかを検証する。もし正しければresult2 := rcの下位2bit とし、そうでなければresult2 := 00 とする。そしてresult2 を認証結果として出力し、これを記録する(S11)。
ITU-TS Recommendation Z.120: Message Sequence Chart (MSC), ITU-TS, Geneva, 2011.
ITU-TS Recommendation Z.120: Message Sequence Chart (MSC) Annex B: Algebraic Semantics of Message Sequence Charts, ITU-TS, Geneva, 1995.
認証処理時に考慮すべき安全性として、中間者攻撃とリプレイ攻撃がある。
1. 車載ゲートウェイなどによる認証対象機器のIDの収集
2. 車載ゲートウェイなどによる収集IDの認証サーバへの送付
2'. IDを中間攻撃者が改ざんし、認証サーバへ送付
3'. 認証サーバは、受け取った改ざんIDに対して正規の認証情報を応答
3. 中間攻撃者が偽の認証情報にすり替え、車載ゲートウェイなどへ応答
4. 車載ゲートウェイなどによる偽の認証情報を用いた機器認証
5. 車載ゲートウェイなどによる機器認証結果の認証サーバへの送付
5'. 機器認証結果を中間攻撃者が改ざんし、認証サーバへ送付
1. マルウェアが偽の認証情報を用いて、認証対象機器の認証を実施
2. マルウェアが偽の認証情報を認証サーバへ送付
ケース1. 認証対象機器へ送付するメッセージ長の変更、
ケース2. 認証対象機器へ送付するッセージの中身の変更、
ケース3. 認証サーバへ送付するメッセージ長の変更、
ケース4. 認証サーバへ送付するメッセージの中身の変更
1. 車載ゲートウェイなどによる認証対象機器のID:AAAを収集
2. 車載ゲートウェイなどによる収集ID:AAAの認証サーバへの送付
2'. 中間攻撃者がID:AAAを認証サーバへ送付
3. 認証サーバは、ID:AAAに対して正規の認証情報を応答
3'. 中間攻撃者が偽の認証情報にすり替え、車載ゲートウェイなどへ応答
4. 車載ゲートウェイなどによるすり替えられた認証情報を用いたID:BBBの機器認証
5. 車載ゲートウェイなどによるID:BBBの機器の機器認証結果の認証サーバへの送付
5'. ID:BBBの機器認証結果を中間攻撃者が、認証サーバへ送付
ケース5. 異なる認証対象機器への送付
・認証代行クライアントは、認証対象機器からIDを受信すると(S21)、セッション管理のためにrp ∈ {0,1}^k を選び(S22)、(1,rp,ID) をサーバに送付する(S23)。サーバは(1,rp,ID) を受け取ると、下記手順(S24)を実施する。
2. 現在の時刻をtss ← TimeStamp として選ぶ。
3. 乱数をrh ← {0,1}^k-m、rh:=rh||cnt[ID] として選ぶ。ここでcnt[ID]は、IDに対応する初期値0のモノトニック・カウンタ値である。
4. r1 := PRF(sk,tss||ID||rh) を計算する。そして、サーバはData1 := (tss,ID,rh,r1) として認証代行クライアントに(1,rp,Data1) を送付する(S25)。送付後、cnt[ID]をインクリメントする。ここでPRFは疑似ランダム関数(Pseudo Random Function)、演算子’||’はビット連接を表す。
認証代行クライアントは現在の時刻をtsp ← TimeStamp として選び(S26)、(rp,tsp,Data1)を認証対象機器に送付する(S27)。認証対象機器は(rp,tsp,Data1 = (tss,ID,rh,r1)) を受け取ると、下記手順(S28)を実施する。
2. r1 = PRF(sk,tss||ID||rh) が満たされるかを検証する。もし満たしていた場合は以下の処理を実施し、そうでなければresult1 := 10 として処理を4へ移行する。
3. cnt[ID]>pre_cnt[ID]またはcnt[ID]==0∧pre_cnt[ID]+1==0であるか 確認し、もし満たしている場合は、 result1 := 01とし、pre_cnt[ID]:=cnt[ID]とする。満たしていない場合は、result1:=11とする。ここで、pre_cnt[ID]はIDに対応する認証対象機器が持つ初期値0のモノトニック・カウンタである。
4. 乱数をrc ← {0,1}^(k-2) として選び、rc := rc||result1 ∈ {0,1}^k とする。
5. r2 := PRF(ski,tss||tsp||ID||rh||rc) を求める。そして、認証対象機器はData2 := (tss,ID,rh,rc,r2) として(rp,tsp,Data2) を認証代行クライアントに送付する(S29)。
認証代行クライアントは(2,rp,tsp,Data2) をサーバに送付する(S30)。サーバは(2,rp,tsp,Data2 = (tss,ID,rh,rc,r2))を受け取ると、rp,tss,tsp,ID,rh,rc,r2 ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、満たしていなければresult2 := 00 とする。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていれば、r2 = PRF(sk,tss||tsp||ID||rh||rc) であるかを検証する。もし正しければresult2 := rcの下位2bit とし、そうでなければresult2 := 00 とする。そしてresult2 を認証結果として出力し、これを記録する(S31)。
図9に示したワンタイム・オフライン認証プロトコルが、ケース1〜ケース5への攻撃耐性がある事は、プロトコルの構成の仕方から明らかである。ここでは、考慮すべき安全性として新たに同一データの使いまわしによるリプレイ攻撃を示す。
ケース6.使い回しによる該当認証対象機器への複数回の送付
図12のシーケンス図を用いて、実施の形態2にかかるオフライン認証プロトコルの動作を以下に示す。尚、認証対象機器に対する共通対称鍵の初期設定として、下記設定が事前になされているものとする。
認証代行クライアントは、認証対象機器からIDを受信すると(S41)、セッション管理のためにrp ∈ {0,1}^k を選び(S42)、認証対象機器群のIDの集合{IDi; i∈[1,N]}とともに、(1,rp, {IDi; i∈[1,N]}) をサーバに送付する(S43)。本送付は、ネットワーク経由ではなく情報を書き込んだ記憶媒体を配達する事で実現しても良い。
1. 現在の時刻をtss ← TimeStamp として選ぶ。
cnt:=1、Data1:=Φ(空集合)とする。
2. 各 i ∈ [1,N]に対して、下記3,4,5,6を実施する。
3. rp,IDi ∈ {0,1}^k であるか、そしてIDi ∈ ID であるかを検証する。もし異なっていれば cntをインクリメントし処理を6に移行する。もし満たしていれば、以下を実行する。
4. 乱数をrhi ← {0,1}^k として選ぶ。
5. r1i := PRF(ski,tss||IDi||rhi) を計算する。
6. Data1 := (IDi,rhi,r1i)∪Data1 とし、iをインクリメントする。ここで、演算子’||’はビット連接を表す。
7. cnt==Nなら処理を終了し、そうでないならば、Data1 := (tss)∪Data1として認証代行クライアントに(1,rp,Data1) を送付する(S45)。本送付は、ネットワーク経由ではなく情報を書き込んだ記憶媒体を配達する事で実現しても良い。
認証代行クライアントは現在の時刻をtsp ← TimeStamp として選び(S46)、(rp,tsp,Data1) を認証対象機器に送付する(S47)。
1. Data2:=Φ(空集合)
2. 各 i ∈ [1,N]に対して、下記3,4,5,6,7を実施する。
3. rp,tsp,tss,IDi,rhi,r1i ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、IDi が自身のものと一致するかを確かめる。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていなければ、result1 := 00,rc ← {0,1}^(k-2),rci := rc||result1,r2i ← {0,1}^k とし処理を7へ移行する。もし満たしている場合は、以下の操作を実行する。
4. r1i = PRF(ski,tss||IDi||rhi) が満たされるかを検証する。もし満たしていた場合はresult1 := 01 とし、そうでなければ result1 := 10 とする。
5. 乱数をrc ← {0,1}^(k-2) として選び、rci := rc||result1 ∈ {0,1}^k とする。
6. r2i := PRF(ski,tss||tsp||IDi||rhi||rci) を求める。
7. Data2 := (tss,IDi,rhi,rci,r2)∪Data2とし、iをインクリメントする
8. Data2 := (tss)∪Data2として認証代行クライアントに (rp,tsp,Data2) を送付する(S49)。本送付は、ネットワーク経由ではなく情報を書き込んだ記憶媒体を配達する事で実現しても良い。
認証代行クライアントは(2,rp,tsp,Data2) をサーバに送付する(S50)。サーバは(2,rp,tsp,Data2 = {(tss,IDi,rhi,rci,r2i); i ∈ [1,N]}) を受け取ると、以下手順(S51)を実施する。
1. result:=Φ
2. 各 i ∈ [1,N]に対して、下記3,4,5を実施する。
3. rp,tss,tsp,IDi,rhi,rci,r2i ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、満たしていなければresult2 := 00 とし処理を5へ移行する。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていれば、以下を実施する。
4. r2i = PRF(sk,tss||tsp||IDi||rhi||rci) であるかを検証する。もし正しければresult2 := rcの下位2bit とし、そうでなければresult2 := 00 とする。ここで、result2が01なら認証対象機器で認証成功、result2が10なら認証失敗、result2が00なら受信エラー(メッセージ改竄の可能性)、として記録される。
5. result := result∪result2 とし、iをインクリメントする
6. result を認証結果として出力し、これを記録する。
構成の仕方から明らかであるように、実施の形態2における認証プロトコルは、ケース1〜ケース5の攻撃への耐性がある。
図12の場合、認証代行クライアントに格納された認証情報は、対応する認証対象機器の認証に何度でも利用可能だという問題がある。認証回数を制限する方法も考えられるが、その部分が改ざんされると認証情報の悪用が可能となる。
認証代行クライアントは認証対象機器から{IDi; i∈[1,N]}を受信すると(S61)、セッション管理のためにrp ∈ {0,1}^k を選び(S62)、認証対象機器群のIDの集合{IDi; i∈[1,N]}とともに、(1,rp, {IDi; i∈[1,N]})をサーバに送付する(S63)。本送付は、ネットワーク経由ではなく情報を書き込んだ記憶媒体を配達する事で実現しても良い。
1. 現在の時刻をtss ← TimeStamp として選ぶ。cnt:=1、Data1:=Φ(空集合)とする。
2. 各 i ∈ [1,N]に対して、下記3,4,5,6を実施する。
3. rp,IDi ∈ {0,1}^k であるか、そしてIDi ∈ ID であるかを検証する。もし異なっていれば cntをインクリメントし処理を6に移行する。もし満たしていれば、以下を実行する。
4. 乱数をrh ← {0,1}^k-m、rh:=rh||cnt[i] として選ぶ。ここで cnt[i]は、IDiに対応する初期値0のモノトニック・カウンタ値である。
5. r1i := PRF(ski,tss||IDi||rhi) を計算する。
6. Data1 := (IDi,rhi,r1i)∪Data1 とし、iをインクリメントする。その後、cnt[i]をインクリメントする。ここで、演算子’||’はビット連接を表す。
7. cnt==Nなら処理を終了し、そうでないならば、Data1 := (tss)∪Data1として認証代行クライアントに(1,rp,Data1) を送付する(S65)。本送付は、ネットワーク経由ではなく情報を書き込んだ記憶媒体を配達する事で実現しても良い。
認証代行クライアントは現在の時刻をtsp ← TimeStamp として選び(S66)、(rp,tsp,Data1) を認証対象機器に送付する(S67)。
1. Data2:=Φ(空集合)
2. 各 i ∈ [1,N]に対して、下記3,4,5,6,7を実施する。
3. rp,tsp,tss,IDi,rhi,r1i ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、IDi が自身のものと一致するかを確かめる。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていなければ、result1 := 00,rc ← {0,1}^(k-2),rci := rc||result1,r2i ← {0,1}^k とし処理を7へ移行する。もし満たしている場合は、以下の操作を実行する。
4. r1i = PRF(ski,tss||IDi||rhi) が満たされるかを検証する。もし満たしていた場合は以下の処理を実施し、そうでなければresult1 := 10 として処理を4へ移行する。
5. cnt[i]>pre_cnt[i]またはcnt[i]==0∧pre_cnt[i]+1==0であるか確認し、もし満たしている場合は、 result1 := 01とし、pre_cnt[i]:=cnt[i]とする。満たしていない場合は、result1:=11とする。ここで、pre_cnt[i]はIDiに対応する認証対象機器が持つ初期値0のモノトニック・カウンタである。
6. 乱数をrc ← {0,1}^(k-2) として選び、rci := rc||result1 ∈ {0,1}^k とする。
7. r2i := PRF(ski,tss||tsp||IDi||rhi||rci) を求める。
8. Data2 := (tss,IDi,rhi,rci,r2)∪Data2とし、iをインクリメントする
9. Data2 := (tss)∪Data2として認証代行クライアントに (rp,tsp,Data2) を送付する(S69)。本送付は、ネットワーク経由ではなく情報を書き込んだ記憶媒体を配達する事で実現しても良い。
認証代行クライアントは(2,rp,tsp,Data2) をサーバに送付する(S70)。サーバは(2,rp,tsp,Data2 = {(tss,IDi,rhi,rci,r2i); i ∈ [1,N]}) を受け取ると、以下手順(S71)を実施する。
1. result:=Φ
2. i ∈ [1,N]に対して、下記3,4,5を実施する。
3. rp,tss,tsp,IDi,rhi,rci,r2i ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、満たしていなければresult2 := 00 とし処理を5へ移行する。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていれば、以下を実施する。
4. r2i = PRF(sk,tss||tsp||IDi||rhi||rci) であるかを検証する。もし正しければresult2 := rcの下位2bit とし、そうでなければresult2 := 00 とする。ここで、result2が01なら認証対象機器で認証成功、result2が11なら認証情報の再利用による認証失敗、result2が10なら擬似ランダム関数値不一致による認証失敗、 result2が00なら受信エラー(メッセージ改竄の可能性)、として記録される。
5. result := result∪result2 とし、iをインクリメントする
6. result を認証結果として出力し、これを記録する。
実施の形態2にかかるオフライン認証プロトコルが、ケース1〜ケース5への攻撃耐性がある事は、プロトコルの構成の仕方から明らかである。また、実施の形態2にかかるオフライン認証プロトコルは、構成の仕方から明らかであるように、ケース6の攻撃への耐性もある。
2)サーバでの認証結果検証にて暗号復号処理が不要となる。
3)通信路を対象とした署名発行検証を伴わなくても、サーバでの認証結果検証にて、認証対象機器の認証合否のみならず、認証対象機器からサーバへの認証結果送付にて改竄検知が可能となる。
4)認証情報の使いまわしによる攻撃抑止が可能となる。
実施の形態1及び2のプロトコルでは、認証対象機器に時計が搭載されていない状況を想定し、認証対象機器の時計を用いる代わりに認証代行クライアントの時計を用いたプロトコルとなっていた。
図14のシーケンス図を用いて、認証対象機器が時計を持つ場合のオフライン認証プロトコルの動作を以下に示す。尚、認証対象機器に対する共通対称鍵の初期設定として、下記設定が事前になされているものとする。
認証代行クライアントは認証対象機器からIDを受信すると(S81)、セッション管理のためにrp ∈ {0,1}^k を選び(S82)、(1,rp,ID) をサーバに送付する(S83)。サーバは(1,rp,ID) を受け取ると、下記手順(S84)を実施する。
1. rp,ID ∈ {0,1}^k であるか、そしてID ∈ ID であるかを検証する。もし異なっていれば処理を終了する。もし満たしていれば、以下を実行する。
2. 現在の時刻をtss ← TimeStamp として選ぶ。
3. 乱数をrh ← {0,1}^k として選ぶ。
4. r1 := PRF(sk,tss||ID||rh) を計算する。そして、サーバはData1 := (tss,ID,rh,r1) として認証代行クライアントに(1,rp,Data1) を送付する(S85)。ここで、演算子’||’はビット連接を表す。
認証代行クライアントは、(rp,Data1) を認証対象機器に送付する(S86)。認証対象機器は(rp,Data1 = (tss,ID,rh,r1)) を受け取ると、以下手順(S87)を実施する。
1. 現在の時刻情報 tsd ← TimeStamp を選ぶ
2. rp,tss,ID,rh,r1 ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、ID が自身のものと一致するかを確かめる。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていなければ、result1 := 00,rc ← {0,1}^(k-2),rc := rc||result1,r2 ← {0,1}^k とする。もし満たしている場合は、以下の操作を実行する。
3. r1 = PRF(sk,tss||ID||rh) が満たされるかを検証する。もし満たしていた場合はresult1 := 01 とし、そうでなければresult1 := 10 とする。
4. 乱数をrc ← {0,1}^(k-2) として選び、rc := rc||result1 ∈ {0,1}^k とする。
5. r2 := PRF(ski,tss||tsd||ID||rh||rc) を求める。そして、認証対象機器 はData2 := (tss,tsd,ID,rh,rc,r2) として(rp, Data2) を認証代行クライアントに送付する(S88)。
認証代行クライアントは(2,rp,Data2) をサーバに送付する(S89)。サーバは(2,rp,Data2 = (tss,tsd,ID,rh,rc,r2)) を受け取ると、rp,tss,tsd,ID,rh,rc,r2 ∈ {0,1}^k あるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、満たしていなければresult2 := 00 とする。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていれば、r2 = PRF(sk,tss||tsd||ID||rh||rc) であるかを検証する。もし正しければresult2 := rcの下位2bit とし、そうでなければresult2 := 00 とする。そしてresult2 を認証結果として出力し、これを記録する(S90)。ここで、result2が01なら認証対象機器で認証成功、result2が10なら認証失敗、 result2が00なら受信エラー(メッセージ改竄の可能性)、として記録される。
・上記(1)(2)(3)の繰返し実行は、図2に示すシーケンスと同様に定義される。
図14のオフライン認証プロトコルの構成の仕方から明らかであるように、図14のオフライン認証プロトコルは、ケース1〜ケース5の攻撃への耐性がある。
・図15のシーケンス図を用いて、認証対象機器が時計を持つ場合のバッチ処理化したオフライン認証プロトコルの動作を以下に示す。尚、全認証対象機器に対する共通対称鍵の初期設定が、実施の形態1と同様下記が事前になされているものとする。
認証代行クライアントは認証対象機器から{IDi; i∈[1,N]}を受信すると(S91)、セッション管理のためにrp ∈ {0,1}^k を選び(S92)、認証対象機器群のIDの集合{IDi; i∈[1,N]}とともに、(1,rp, {IDi; i∈[1,N]}) をサーバに送付する(S93)。本送付は、ネットワーク経由ではなく情報を書き込んだ記憶媒体を配達する事で実現しても良い。
1. 現在の時刻をtss ← TimeStamp として選ぶ。cnt:=1、Data1:=Φ(空集合)とする。
2. 各 i ∈ [1,N]に対して、下記3,4,5,6を実施する。
3. rp,IDi ∈ {0,1}^k であるか、そしてIDi ∈ ID であるかを検証する。もし異なっていれば cntをインクリメントし処理を6に移行する。もし満たしていれば、以下を実行する。
4. 乱数をrhi ← {0,1}^k として選ぶ。
5. r1i := PRF(ski,tss||IDi||rhi) を計算する。
6. Data1 := (IDi,rhi,r1i)∪Data1 とし、iをインクリメントする。ここで、演算子’||’はビット連接を表す。
7. cnt==Nなら処理を終了し、そうでないならば、Data1 := (tss)∪Data1として認証代行クライアントに(1,rp,Data1) を送付する(S95)。本送付は、ネットワーク経由ではなく情報を書き込んだ記憶媒体を配達する事で実現しても良い。
認証代行クライアントは、(rp,tsp,Data1) を認証対象機器に送付する(S96)。認証対象機器は(rp,tsp,Data1 = {(tss,IDi,rhi,r1i); i ∈ [1,N]}) を受け取ると、以下手順(S97)を実施する。本受取りは、ネットワーク経由ではなく情報を書き込んだ記憶媒体の受取りで実現しても良い。
1. 現在の時刻情報 tsd ← TimeStamp を選ぶ
2. Data2:=Φ(空集合)
3. 各 i ∈ [1,N]に対して、下記4,5,6,7,8を実施する。
4. rp,tsp,tss,IDi,rhi,r1i ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、IDi が自身のものと一致するかを確かめる。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていなければ、result1 := 00,rc ← {0,1}^(k-2),rci := rc||result1,r2i ← {0,1}^k とし処理を7へ移行する。もし満たしている場合は、以下の操作を実行する。
5. r1i = PRF(ski,tss||IDi||rhi) が満たされるかを検証する。もし満たしていた場合はresult1 := 01 とし、そうでなければresult1 := 10 とする。
6. 乱数をrc ← {0,1}^(k-2) として選び、rci := rc||result1 ∈ {0,1}^k とする。
7. r2i := PRF(ski,tss||tsd||IDi||rhi||rci) を求める。
8. Data2 := (tss,IDi,rhi,rci,r2)∪Data2とし、iをインクリメントする
9. Data2 := (tss,tsd)∪Data2として認証代行クライアントに (rp,Data2) を送付する(S98)。本送付は、ネットワーク経由ではなく情報を書き込んだ記憶媒体を配達する事で実現しても良い。尚サーバから認証対象機器への認証情報の送付に時間制約がある場合であってtsdが信頼できる場合は、上記4のサイズチェック時に、認証対象機器は、tssとtsdを比較する事で、その確認を実施しても良い。
認証代行クライアントは(2,rp,Data2) をサーバ に送付する(S99)。サーバは(2,rp,Data2 = {(tss,tsd,IDi,rhi,rci,r2i); i ∈ [1,N]}) を受け取ると、以下手順(S100)を実施する。
1. result:=Φ
2. 各 i ∈ [1,N]に対して、下記3,4,5を実施する。
3. rp,tss,tsd,IDi,rhi,rci,r2i ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、満たしていなければresult2 := 00 とし処理を5へ移行する。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていれば、以下を実施する。
4. r2i = PRF(sk,tss||tsd||IDi||rhi||rci) であるかを検証する。もし正しければresult2 := rcの下位2bit とし、そうでなければresult2 := 00 とする。ここで、result2が01なら認証対象機器で認証成功、result2が10なら認証失敗、result2が00なら受信エラー(メッセージ改竄の可能性)、として記録される。
5. result := result∪result2 とし、iをインクリメントする
6. result を認証結果として出力し、これを記録する。
実施の形態3のオフライン認証プロトコルの構成の仕方から明らかであるように、実施の形態3のオフライン認証プロトコルは、ケース1〜ケース5の攻撃への耐性がある。
実施の形態1に示した構成方法と同様に、プロトコルを定義することが可能である。
ケース1〜ケース5への攻撃耐性がある事は、プロトコルの構成の仕方から明らかである。構成の仕方から明らかであるように、ケース6の攻撃への耐性がある。
実施の形態1に示した構成方法と同様に、プロトコルを定義することが可能である。
ケース1〜ケース5への攻撃耐性がある事は、プロトコルの構成の仕方から明らかである。構成の仕方から明らかであるように、ケース6の攻撃への耐性がある。
メモリ空間をAとBに分割し、BからはAにアクセス可能だが、AからのBへのアクセスをB上に構築したAPI(Application Programming Interface)を介してのみ実施可能とする事で、B上のプログラムやリソースを保護する方法が考えられる。実際の製品開発では、デバッグなどの目的でB内リソースの消去APIやセキュリティ・リスクとなり得るプログラムの実行などを可能とするAPIを付加した状態で開発が実施される。
認証代行クライアントは、認証対象機器からIDdを受信すると(S101)、セッション管理のためにrp ∈ {0,1}^k を選び(S102)、(1,rp,IDd,IDp) をサーバに送付する(S103)。IDdは、認証対象機器に割り当てられたIDである。IDpは、認証代行クライアントに割り当てられたIDである。サーバは(1,rp,IDd,IDp) を受け取ると、下記手順(S104)を実施する。
2. 現在の時刻をtss ← TimeStamp として選ぶ。
3. 乱数をrh ← {0,1}^k 及びk1 ← {0,1}^kとして選ぶ。
4. r1d := PRF(ski,tss||IDd||rh||1), r1’d := PRF(ski,tss||IDd||rh||2), r1p := PRF(ski,tss||IDp||rh||1), r1’p := PRF(ski,tss||IDp||rh||2), c1d := AE.Enc(r1’d, k1), c1p := AE.Enc(r1’p, k1)を計算する。そして、サーバはData1 := (tss,IDd,rh,r1d,c1d,IDp,r1p,c1p) として認証代行クライアントに(1,rp,Data1)を送付する(S105)。ここで、PRFは疑似ランダム関数(Pseudo Random Function)、AE.Encは認証付き暗号(Authenticated Encryption)方式での暗号化、演算子’||’はビット連接を表す。
認証代行クライアントは、(rp,Data1 = rp,tss,IDd,rh,r1d,c1d,IDp,r1p,c1p) を受け取ると、下記手順(S106)を実施する。
1. 認証代行クライアントは現在の時刻をtsp ← TimeStamp として選び、乱数をr3p ← {0,1}^k として選ぶ。
2. rp,tss,IDd,rh,r1d,c1d,IDp,r1p,c1p ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、IDd及びIDp が自身のものと一致するかを確かめる。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていなければ、result1p := 00,rcp := rcp||result1p,r2p ← {0,1}^k とする。もし満たしている場合は、以下の操作を実行する。
3. r1p = PRF(skp,tss||IDp||rh||1) が満たされるかを検証する。もし満たしていれば、result1p := 01,r1’p := PRF(skp,tss||IDp||rh||2), k1 := AE.Dec(r1’p,c1p)とする。もし満たしていなければ、result1p := 11とする。ここで、AE.Decは認証付き暗号(Authenticated Encryption)方式での復号化を表す。
4. rcp := rc||result1p, とし、r2p := PRF(skp,tss||IDp||rh||rcp||1)を求める。
5. result1p := 01である場合、r3p := PRF(k1,tss||IDp||rh||1)を求める。そして、認証代行クライアントはData2 := (tss,IDd,rh,r1d,c1d,IDp,r1p,c1p,rcp,r2p,r3p) として(rp,tsp,Data2) を認証対象機器に送付する(S107)。
認証対象機器は、(rp,tsp,Data2 = rp, tss, IDd, rh, r1d, c1d, IDp, r1p, c1p, rcp, r2p, r3p) を受け取ると、下記手順(S108)を実施する。
1. 乱数をr3d ← {0,1}^k, rcd ← {0,1}^k, rcdp ← {0,1}^kとして選ぶ。
2. rp, tss, IDd, rh, r1d, c1d, IDp, r1p, c1p, rcp, r2p, r3p ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、IDdが自身のものと一致するかを確かめる。ここで、データは必要に応じ適切にパディングされているものとする。もし満たしていなければ、result1d := 00,rcd := rcd||result1d,r2d ← {0,1}^k, result1dp := 00,rcdp := rcdp||result1dp,r3d ← {0,1}^kとする。もし満たしている場合は、以下の操作を実行する。
3. r1d = PRF(skd,tss||IDd||rh||1) が満たされるかを検証する。もし満たしていれば、result1d := 01,r1’d := PRF(skd,tss||IDd||rh||2), k1 := AE.Dec(r1’d,c1d)とする。もし満たしていなければ、result1d := 11とする。
4. rcd := rcd||result1d, とし、r2d := PRF(skd,tss||IDd||rh||rcd||1)を求める。
5. result1d := 01であり、r3d := PRF(k1,tss||IDd||rh||1)を満たす場合、result1dp := 01とし、満たさない場合、result1dp := 11とする。
6. rcdp := rcdp||result1dp, とし、r3d := PRF(k1,tss||tsp||IDd||rh||rcdp||1)を求める。そして、認証対象機器はData3 := (tss, IDd, rh, r1d, c1d, IDp, r1p, c1p, rcp, r2p, r3p, rcd, r2d, rcdp, r3d) として(rp,tsp,Data3) を認証代行クライアントに送付する(S109)。
認証代行クライアントは(rp,tsp,Data3 = (tss, IDd, rh, r1d, c1d, IDp, r1p, c1p, rcp, r2p, r3p, rcd, r2d, rcdp, r3d)) を受け取ると、下記手順(S110)を実施する。
1. tss, IDd, rh, r1d, c1d, IDp, r1p, c1p, rcp, r2p, r3p, rcd, r2d, rcdp, r3d ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、IDdが自身のものと一致するかを確かめる。ここで、データは必要に応じ適切にパディングされているものとする。満たしていなければresult1pd := 000 とする。もし満たしていれば、r1d = PRF(skd,tss||tsp||IDd||rh||1) であるかを検証する。もし正しければresult1p := 001, r1’p := PRF(skp,tss||IDp||rh||2), k1 := AE,Dec (r1’p, c1p)とし、そうでなければresult1pd := 110 とする。
2. result1pd := 001である場合、r3d = PRF(k1,tss||tsp||IDd||rh||rcdp||1)であるかを検証する。もし正しければ、result1pd := 001とし、そうでなければ、result := 100とする。
3. result1pd := 001ならばresult2pd := rcdpの下位2bitとし、そうでなければ、result2pd := 00とする。そして、result2 を認証結果として出力し、これを記録する。認証代行クライアントは、Data3 := (tss, IDd, rh, r1d, c1d, IDp, r1p, c1p, rcp, r2p, r3p, rcd, r2d, rcdp, r3d) として(rp,tsp,Data3) をサーバに送付する(S111)。
認証代行クライアントは(rp,tsp,Data3 = (tss, IDd, rh, r1d, c1d, IDp, r1p, c1p, rcp, r2p, r3p, rcd, r2d, rcdp, r3d)) を受け取ると、下記手順(S112)を実施する。
1. 乱数をr3d ← {0,1}^k, rcd ← {0,1}^k, rcdp ← {0,1}^kとして選ぶ。
2. tss, IDd, rh, r1d, c1d, IDp, r1p, c1p, rcp, r2p, r3p, rcd, r2d, rcdp, r3d ∈ {0,1}^k であるか、即ちそれぞれのデータの長さが規定値どおりの長さとなっているかを検証し、IDdが自身のものと一致するかを確かめる。ここで、データは必要に応じ適切にパディングされているものとする。満たしていなければresult2p := 00 とし、result2d := 00とする。もし満たしていれば、r2p = PRF(skp,tss||tsp||IDp||rh||rcp||1)、r2d = PRF(skd,tss||tsp||IDd||rh||rcd||1) であるかを検証する。もし正しければresult2p := rcpの下位2ビットとし、result2d := rcdの下位2ビットとする。
1201 ネットワークインタフェース
1202 プロセッサ
1203 メモリ
Claims (14)
- サーバは、認証対象機器の識別子と共通鍵とを引数とした疑似ランダム関数を用いて生成された値で構成した第1の認証情報を生成し、前記第1の認証情報を認証代行クライアントを介して前記認証対象機器へ送信し、
前記認証対象機器は、前記識別子と共通鍵とを引数とした疑似ランダム関数を用いて生成された値と、前記第1の認証情報とを比較することによって前記第1の認証情報の正当性を確認し、前記第1の認証情報の正当性を確認した後に、前記認証対象機器の識別子と共通鍵と前記第1の認証情報の確認結果とを引数とした疑似ランダム関数を用いて生成された値で構成した第2の認証情報を生成し、前記第2の認証情報を前記認証代行クライアントへ送信する、認証方法。 - 前記認証代行クライアントは、前記第2の認証情報を前記サーバへ送信し、
前記サーバは、前記第2の認証情報の正当性を確認する、請求項1に記載の認証方法。 - 前記サーバは、前記第1の認証情報を生成する際の時刻に関する第1の時間情報を生成し、前記認証対象機器の識別子と前記共通鍵と前記第1の時間情報とを引数とした疑似ランダム関数を用いて生成された値で構成した前記第1の認証情報を生成する、請求項1に記載の認証方法。
- 前記認証対象機器は、前記認証代行クライアントが前記第1の認証情報を受信した時刻に関する第2の時間情報と前記認証対象機器の識別子と前記共通鍵と前記第1の認証情報の確認結果とを引数とした疑似ランダム関数を用いて生成された値で構成した前記第2の認証情報を生成する、請求項1に記載の認証方法。
- 前記認証対象機器は、前記第1の認証情報の正当性として、前記第1の認証情報のデータの長さが規定値通りであるか否かを判定し、
前記認証代行クライアントは、前記第1の認証情報のデータの長さが規定値通りであるか否かの判定結果を含む第2の認証情報を前記サーバへ送信する、請求項3に記載の認証方法。 - 前記認証対象機器は、前記第1の時間情報と、前記認証代行クライアントが前記第1の認証情報を受信した時刻に関する第2の時間情報との差分が、予め定められた時間制約を満たしているか否かを確認する、請求項3に記載の認証方法。
- 前記サーバは、前記第2の時間情報と、前記認証代行クライアントが前記第2の認証情報を受信した時刻に関する第3の時間情報との差分が、予め定められた時間制約を満たしているか否かをする、請求項4に記載の認証方法。
- 前記サーバは、前記第1の認証情報の使用回数を制限するモノトニック・カウンタを用いる、請求項1に記載の認証方法。
- 前記サーバは、前記モノトニック・カウンタが示す値を用いて前記第1の認証情報を生成する、請求項8に記載の認証方法。
- 前記認証代行クライアントは、複数の前記認証対象機器の識別子を前記サーバに送信し、
前記サーバは、それぞれの前記認証対象機器に関する前記第1の認証情報を生成する、請求項1に記載の認証方法。 - 前記認証対象機器は、前記第1の認証情報を受信した時刻に関する第4の時間情報と前記認証対象機器の識別子と前記共通鍵と前記第1の認証情報の確認結果とを引数とした疑似ランダム関数を用いて生成された値で構成した前記第2の認証情報を生成する、請求項1に記載の認証方法。
- 前記認証代行クライアントは、前記認証対象機器の識別子とともに自装置の識別子を前記サーバに送信し、
前記サーバは、前記第1の認証情報とともに、前記認証代行クライアントの識別子と前記共通鍵とを引数とした疑似ランダム関数を用いて生成された値で構成した第3の認証情報を生成する、請求項1に記載の認証方法。 - 認証代行クライアントは、収集した認証対象機器の識別子と通信の対応関係を識別するためのセッション識別子とをサーバに送信し、
前記サーバは、前記認証対象機器の識別子及び前記セッション識別子の正当性を確認する、請求項1に記載の認証方法。 - 認証対象機器と、
前記認証対象機器に対して共通鍵を選択するサーバと、
前記認証対象機器と前記サーバとの間の通信を中継する認証代行クライアントと、を備え、
前記サーバは、前記認証対象機器の識別子と共通鍵とを引数とした疑似ランダム関数を用いて生成された値で構成した第1の認証情報を生成し、前記第1の認証情報を前記認証代行クライアントを介して前記認証対象機器へ送信し、
前記認証対象機器は、前記識別子と共通鍵とを引数とした疑似ランダム関数を用いて生成された値と、前記第1の認証情報とを比較することによって前記第1の認証情報の正当性を確認し、前記第1の認証情報の正当性を確認した後に、前記認証対象機器の識別子と共通鍵と前記第1の認証情報の確認結果とを引数とした疑似ランダム関数を用いて生成された値で構成した第2の認証情報を生成し、前記第2の認証情報を前記認証代行クライアントへ送信する、認証システム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017100845A JP6869104B2 (ja) | 2017-05-22 | 2017-05-22 | 認証方法 |
US15/944,022 US20180337923A1 (en) | 2017-05-22 | 2018-04-03 | Authentication method and authentication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017100845A JP6869104B2 (ja) | 2017-05-22 | 2017-05-22 | 認証方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018196085A true JP2018196085A (ja) | 2018-12-06 |
JP6869104B2 JP6869104B2 (ja) | 2021-05-12 |
Family
ID=64272799
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017100845A Active JP6869104B2 (ja) | 2017-05-22 | 2017-05-22 | 認証方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20180337923A1 (ja) |
JP (1) | JP6869104B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111488568B (zh) * | 2020-04-13 | 2023-04-11 | 抖音视界有限公司 | 客户端方法、装置、设备和存储介质 |
CN113434850A (zh) * | 2021-07-22 | 2021-09-24 | 重庆金康赛力斯新能源汽车设计院有限公司 | 一种防盗认证的方法和系统 |
US11973755B1 (en) * | 2021-07-30 | 2024-04-30 | Wells Fargo Bank, N.A. | Apparatuses, methods, and computer program products for offline authentication |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH037443A (ja) * | 1989-02-28 | 1991-01-14 | Mitsubishi Electric Corp | 認証装置 |
JP2004282295A (ja) * | 2003-03-14 | 2004-10-07 | Sangaku Renkei Kiko Kyushu:Kk | ワンタイムidの生成方法、認証方法、認証システム、サーバ、クライアントおよびプログラム |
JP2007129783A (ja) * | 2001-10-15 | 2007-05-24 | Mitsubishi Electric Corp | 暗号通信装置 |
JP2009116677A (ja) * | 2007-11-07 | 2009-05-28 | Mitsubishi Electric Corp | ネットワーク認証システム及びicチップ及びアクセス装置及びネットワーク認証方法 |
JP2014222828A (ja) * | 2013-05-14 | 2014-11-27 | 三菱電機株式会社 | 認証システム及び認証方法 |
JP2016139883A (ja) * | 2015-01-27 | 2016-08-04 | ルネサスエレクトロニクス株式会社 | 中継装置、端末装置および通信方法 |
-
2017
- 2017-05-22 JP JP2017100845A patent/JP6869104B2/ja active Active
-
2018
- 2018-04-03 US US15/944,022 patent/US20180337923A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH037443A (ja) * | 1989-02-28 | 1991-01-14 | Mitsubishi Electric Corp | 認証装置 |
JP2007129783A (ja) * | 2001-10-15 | 2007-05-24 | Mitsubishi Electric Corp | 暗号通信装置 |
JP2004282295A (ja) * | 2003-03-14 | 2004-10-07 | Sangaku Renkei Kiko Kyushu:Kk | ワンタイムidの生成方法、認証方法、認証システム、サーバ、クライアントおよびプログラム |
JP2009116677A (ja) * | 2007-11-07 | 2009-05-28 | Mitsubishi Electric Corp | ネットワーク認証システム及びicチップ及びアクセス装置及びネットワーク認証方法 |
JP2014222828A (ja) * | 2013-05-14 | 2014-11-27 | 三菱電機株式会社 | 認証システム及び認証方法 |
JP2016139883A (ja) * | 2015-01-27 | 2016-08-04 | ルネサスエレクトロニクス株式会社 | 中継装置、端末装置および通信方法 |
Also Published As
Publication number | Publication date |
---|---|
US20180337923A1 (en) | 2018-11-22 |
JP6869104B2 (ja) | 2021-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kumari et al. | User authentication schemes for wireless sensor networks: A review | |
KR101372719B1 (ko) | 사물지능통신에서 puf에 기반한 장치간 보안 인증 장치 및 방법 | |
EP2538608B1 (en) | Semiconductor device and method of writing data to semiconductor device | |
KR102445518B1 (ko) | 장치 키 보호 | |
KR20070084326A (ko) | 이동 단말기에서의 구성 파라미터 갱신 | |
KR101744747B1 (ko) | 휴대 단말기, 단말기 및 보안쿠키를 이용한 인증 방법 | |
CN105474167A (zh) | 将基于电路延迟的物理不可克隆功能(puf)应用于基于存储器的puf的掩蔽操作以抵抗入侵及克隆攻击 | |
Choi et al. | A study on sensor nodes attestation protocol in a Wireless Sensor Network | |
US20150143545A1 (en) | Function for the Challenge Derivation for Protecting Components in a Challenge-Response Authentication Protocol | |
US10211979B2 (en) | Systems and methods securing an autonomous device | |
CN101241528A (zh) | 终端接入可信pda的方法和接入系统 | |
JP2009175923A (ja) | プラットフォーム完全性検証システムおよび方法 | |
JP6869104B2 (ja) | 認証方法 | |
CN106973046B (zh) | 网关间数据传输方法、源网关及目的网关 | |
CN107026729B (zh) | 用于传输软件的方法和装置 | |
US9177123B1 (en) | Detecting illegitimate code generators | |
JP4818824B2 (ja) | プログラム管理システムおよび端末装置 | |
CN109302442B (zh) | 一种数据存储证明方法及相关设备 | |
KR102466866B1 (ko) | 데이터의 검증 방법 | |
US7788483B1 (en) | Method and apparatus of identifying and enabling of functions of a trusted platform module device | |
CN107979579B (zh) | 一种安全认证方法和安全认证设备 | |
KR20180052479A (ko) | 서명 체인을 이용한 유무선 공유기의 펌웨어 업데이트 시스템, 유무선 공유기 및 유무선 공유기의 펌웨어 업데이트 방법 | |
CN113572717B (zh) | 通信连接的建立方法、洗护设备及服务器 | |
CN114329522A (zh) | 一种私钥保护方法、装置、系统及存储介质 | |
KR102073363B1 (ko) | 산업 제어 시스템의 보안을 강화하는 보안 통신 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191018 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200812 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201006 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201203 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210406 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210413 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6869104 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |