JP2021190817A - Information processing device, method, and program - Google Patents
Information processing device, method, and program Download PDFInfo
- Publication number
- JP2021190817A JP2021190817A JP2020093888A JP2020093888A JP2021190817A JP 2021190817 A JP2021190817 A JP 2021190817A JP 2020093888 A JP2020093888 A JP 2020093888A JP 2020093888 A JP2020093888 A JP 2020093888A JP 2021190817 A JP2021190817 A JP 2021190817A
- Authority
- JP
- Japan
- Prior art keywords
- session
- ticket
- ticket data
- restart
- information
- 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.)
- Pending
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
Description
本開示は、通信セッションの管理技術に関する。 The present disclosure relates to communication session management techniques.
従来、中継サーバで処理したTLS(Transport Layer Security)プロトコルのセッション情報を、セキュアOSによりアクセスが制限されているTLSセッション情報データベースに書き込み、役割1サーバが、2回目以降のユーザのアクセスに対して本情報を再利用することで、該当する部分のハンドシェイク処理を省略してTLSプロトコルの処理をする技術が提案されている(特許文献1を参照)。
Conventionally, the session information of the TLS (Transport Layer Security) protocol processed by the relay server is written to the TLS session information database whose access is restricted by the secure OS, and the
また、情報処理装置から他の情報処理装置への処理の移動を開始してから、当該処理にアクセスする端末の通信先を自装置から他の情報処理装置に切り替えるまでに、自装置との間で確立される当該処理にアクセスする端末との新規セッションについて、自装置と他の情報処理装置とが共有する鍵情報で復号可能なセッションチケットを発行する技術が提案されている(特許文献2を参照)。 In addition, from the start of transfer of processing from the information processing device to another information processing device, until the communication destination of the terminal accessing the processing is switched from the own device to another information processing device, the communication with the own device is started. A technique has been proposed for issuing a session ticket that can be decrypted with the key information shared between the own device and another information processing device for a new session with the terminal that accesses the process established in (Patent Document 2). reference).
従来、一旦確立されたセッションの再開を可能とするために、セッションチケットを用いる手法が用いられている。しかし、セッション再開に必要な情報を管理する場合(ステートフル)には、リプレイ攻撃を検知可能であるが情報管理のためのリソースが消費されるという問題があり、セッション再開に必要な全ての情報をセッションチケットに含めることでセッション再開に必要な情報を管理しない場合(ステートレス)には、情報管理のためのリソースを節約可能であるがリプレイ攻撃を検知困難であるという問題があった。 Conventionally, a method using a session ticket has been used to enable the resumption of a session once established. However, when managing the information required for session resumption (stateful), there is a problem that replay attacks can be detected but resources for information management are consumed, and all the information required for session resumption is stored. When the information required for resuming the session is not managed by including it in the session ticket (stateless), there is a problem that it is possible to save resources for information management but it is difficult to detect a replay attack.
本開示は、上記した問題に鑑み、セッション管理用のリソースを節約しながら、リプレイ攻撃を防止することを課題とする。 In view of the above problems, the present disclosure aims to prevent replay attacks while conserving resources for session management.
本開示の一例は、クライアントに対する通信セッションを確立するセッション管理手段と、チケットデータを生成するチケット生成手段であって、前記セッションの再開のために用いられるセッション再開情報を含む情報を暗号化することでチケットデータを生成するチケット生成手段と、前記チケットデータを同定するためのハッシュ値を算出するハッシュ値算出手段と、前記ハッシュ値を含むチケット判定情報を記憶するチケット管理手段と、前記チケットデータを前記クライアントに送信するチケット送信手段と、該情報処理装置から前記チケットデータの発行を受けた前記クライアントから、該チケットデータを含むセッション再開要求を受信する再開要求受信手段と、前記再開要求受信手段によって受信された前記チケットデータを復号することで、前記セッション再開情報を含む情報を取得する復号手段と、前記ハッシュ値算出手段によって算出された、前記再開要求受信手段によって受信されたチケットデータを同定するためのハッシュ値と、前記チケット管理手段によって記憶されている前記ハッシュ値とを比較することで、前記再開要求受信手段によって受信されたチケットデータに基づくセッション再開の可否を判定する再開判定手段と、を備える情報処理装置である。 One example of the present disclosure is a session management means for establishing a communication session with a client and a ticket generation means for generating ticket data, in which information including session restart information used for restarting the session is encrypted. A ticket generation means for generating ticket data, a hash value calculation means for calculating a hash value for identifying the ticket data, a ticket management means for storing ticket determination information including the hash value, and the ticket data. By the ticket transmitting means to be transmitted to the client, the restart request receiving means for receiving the session restart request including the ticket data from the client that has received the ticket data issuance from the information processing apparatus, and the restart request receiving means. By decoding the received ticket data, the decoding means for acquiring the information including the session restart information and the ticket data calculated by the hash value calculation means and received by the restart request receiving means are identified. By comparing the hash value for the purpose with the hash value stored by the ticket management means, a restart determination means for determining whether or not the session can be restarted based on the ticket data received by the restart request receiving means, and a restart determination means. It is an information processing device provided with.
本開示は、情報処理装置、システム、コンピュータによって実行される方法又はコンピュータに実行させるプログラムとして把握することが可能である。また、本開示は、そのようなプログラムをコンピュータその他の装置、機械等が読み取り可能な記録媒体に記録したものとしても把握できる。ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的又は化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。 The present disclosure can be understood as an information processing device, a system, a method executed by a computer, or a program executed by a computer. Further, the present disclosure can be grasped as if such a program is recorded on a recording medium that can be read by a computer or other device, a machine, or the like. Here, a recording medium that can be read by a computer or the like is a recording medium that can be read from a computer or the like by accumulating information such as data or programs by electrical, magnetic, optical, mechanical or chemical action. Say.
本開示によれば、セッション管理用のリソースを節約しながら、リプレイ攻撃を防止することが可能となる。 According to the present disclosure, it is possible to prevent replay attacks while conserving resources for session management.
以下、本開示に係る情報処理装置、方法及びプログラムの実施の形態を、図面に基づいて説明する。但し、以下に説明する実施の形態は、実施形態を例示するものであって、本開示に係る情報処理装置、方法及びプログラムを以下に説明する具体的構成に限定するものではない。実施にあたっては、実施の態様に応じた具体的構成が適宜採用され、また、種々の改良や変形が行われてよい。 Hereinafter, embodiments of the information processing apparatus, method, and program according to the present disclosure will be described with reference to the drawings. However, the embodiments described below are examples of the embodiments, and the information processing apparatus, method, and program according to the present disclosure are not limited to the specific configurations described below. In the implementation, a specific configuration according to the embodiment may be appropriately adopted, and various improvements and modifications may be made.
本実施形態では、本開示に係る情報処理装置、方法及びプログラムを、サーバ/クライアントシステムにおいて実施した場合の実施の形態について説明する。但し、本開示に係る情報処理装置、方法及びプログラムは、通信セッションを管理する技術について広く用いることが可能であり、本開示の適用対象は、実施形態において示した例に限定されない。 In this embodiment, an embodiment when the information processing apparatus, method and program according to the present disclosure are implemented in a server / client system will be described. However, the information processing apparatus, method, and program according to the present disclosure can be widely used for a technique for managing a communication session, and the scope of application of the present disclosure is not limited to the examples shown in the embodiments.
<システムの構成>
図1は、本実施形態に係るシステムの構成を示す概略図である。本実施形態に係るシステムは、ネットワークに接続されることで互いに通信可能な情報処理装置1と、1又は複数のサーバ装置5と、1又は複数のクライアント端末装置9とを備える。本実施形態では、サーバ装置5とクライアント端末装置9の間に設置された情報処理装置1(以下、「TLS装置1」と称する)で、TLS処理を行う構成を例に挙げて説明する。但し、ネットワークや装置の構成は、本実施形態における例示に限定されない。例えば、クライアント端末装置9の通信相手であるサーバ装置に、TLS処理を行うTLS装置としての機能が備えられていてもよい(後述するバリエーションの図6を参照)。
<System configuration>
FIG. 1 is a schematic diagram showing a configuration of a system according to the present embodiment. The system according to the present embodiment includes an
TLS装置1は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、EEPROM(Electrically Erasable and Programmable Read Only Memory)やHDD(Hard Disk Drive)等の記憶装置14、NIC(Network Interface Card)等の通信ユニット15、等を備えるコンピュータである。但し、TLS装置1の具体的なハードウェア構成に関しては、実施の態様に応じて適宜省略や置換、追加が可能である。また、TLS装置1は、単一の筐体からなる装置に限定されない。TLS装置1は、所謂クラウドや分散コンピューティングの技術等を用いた、複数の装置によって実現されてよい。
The
サーバ装置5は、ユーザに対して様々なサービスを提供するためのコンピュータである。サーバ装置5は、CPU、ROM、RAM、記憶装置、通信ユニット、入力装置、出力装置等(図示は省略する)を備えるコンピュータである。但し、サーバ装置5の具体的なハードウェア構成に関しては、実施の態様に応じて適宜省略や置換、追加が可能である。また、サーバ装置5は、単一の筐体からなる装置に限定されない。サーバ装置5は、所謂クラウドや分散コンピューティングの技術等を用いた、複数の装置によって実現されてよい。
The
クライアント端末装置9は、ユーザによって使用されるコンピュータである。クライアント端末装置9は、CPU、ROM、RAM、記憶装置、通信ユニット、入力装置、出力装置等(図示は省略する)を備えるコンピュータである。但し、クライアント端末装置9の具体的なハードウェア構成に関しては、実施の態様に応じて適宜省略や置換、追加が可能である。また、クライアント端末装置9は、単一の筐体からなる装置に限定されない。クライアント端末装置9は、所謂クラウドや分散コンピューティングの技術等を用いた、複数の装置によって実現されてよい。ユーザは、これらのクライアント端末装置9を介してサーバ装置5によって提供される各種サービスを利用する。
The
TLS装置1は、クライアント端末装置9とサーバ装置5との間の通信に、TLS(Transport Layer Security)プロトコルによるセキュリティを提供する。TLS装置1は、クライアント端末装置9からTLSセッションの開始要求を受信すると、開始要求の送信元クライアント端末装置9に対してハンドシェイクを実行し、TLSセッションを確立する。ここで、一旦確立されたセッションの再開を可能とするために、従来、TLS装置1から発行されたセッションチケット(チケットデータ)を使う方法が用いられている。TLS装置1は、セッション再開を行うために必要な情報を含むセッションチケット(チケットデータ)を、クライアント端末装置9に対して発行する。クライアント端末装置9は、セッションの再開を要求する際、セッション確立時にTLS装置1から受信したセッションチケットをそのままTLS装置1に送信する。
The
従来、TLS通信でのセッションチケットの管理手法には、セッション再開に必要な情報をTLS装置1で管理するステートフルと、セッション再開に必要な全ての情報をセッションチケットに含めてTLS装置1がクライアント端末装置9に送信しておき、TLS装置1では情報を管理しないステートレスという2種類の手法が存在する。
Conventionally, the session ticket management method in TLS communication is stateful in which the information required for session resumption is managed by the
セッションチケットの管理手法に従来のステートレスを用いた場合、TLS装置1はセッション再開に必要な全ての情報を暗号化してセッションチケットに含めて送信し、クライアント端末装置9に情報を管理させる。この手法によれば、TLS装置1はセッション再開に必要な情報を管理する必要がないため、TLS装置1のメモリを消費せずにセッションチケットを発行できる。一方で、TLS装置1は同一のセッションチケットを複数回使用されていることを認識できないため、リプレイ攻撃を検知できない可能性がある。
When the conventional stateless method is used for the session ticket management method, the
一方、セッションチケットの管理手法に従来のステートフルを用いた場合、TLS装置1はセッション再開に必要な情報を管理する。このため、TLS装置1はセッションチケットの使用を記録することができ、リプレイ攻撃を検知できる。しかし、セッション再開に必要な情報はサイズが大きく、さらに送信したセッションチケット数だけ管理しなければならないため、膨大なメモリが消費される。
On the other hand, when the conventional stateful is used as the session ticket management method, the
上記した問題に鑑み、本開示に係るシステムでは、セッションチケットの管理において本実施形態において説明する構成を採用することで、ステートレスとステートフルの夫々の欠点を補い、セッション管理用のメモリを節約しながら、リプレイ攻撃を防止することを可能とする。 In view of the above problems, in the system according to the present disclosure, by adopting the configuration described in the present embodiment in the session ticket management, the shortcomings of stateless and stateful are compensated for, and the memory for session management is saved. , Makes it possible to prevent replay attacks.
図2は、本実施形態に係る情報処理装置1(TLS装置1)の機能構成の概略を示す図である。TLS装置1は、記憶装置14に記録されているプログラムが、RAM13に読み出され、CPU11によって実行されて、TLS装置1に備えられた各ハードウェアが制御されることで、セッション管理部21、チケット生成部22、ハッシュ値算出部23、チケット管理部24、チケット送信部25、再開要求受信部26、復号部27及び再開判定部28を備える情報処理装置として機能する。なお、本実施形態及び後述する他の実施形態では、TLS装置1の備える各機能は、汎用プロセッサであるCPU11によって実行されるが、これらの機能の一部又は全部は、1又は複数の専用プロセッサによって実行されてもよい。
FIG. 2 is a diagram showing an outline of the functional configuration of the information processing device 1 (TLS device 1) according to the present embodiment. In the
セッション管理部21は、クライアント端末装置9に対する通信セッションを確立する。より具体的には、セッション管理部21は、クライアント端末装置9からTLSセッションの開始要求を受信すると、開始要求の送信元クライアント端末装置9に対して所謂セッションチケットを用いたハンドシェイクを実行し、TLSセッションを確立する。ここで実行されるハンドシェイクの流れは、セッションチケットを用いるTLSセッションとして既知の技術であるため、説明を省略する(RFC5077を参照)。但し、本開示に係るシステムでは、通信の順序は従来のハンドシェイクと同様であるが、発行されるチケットに含まれるデータには、従来のチケットと異なる部分がある。
The
また、セッション管理部21は、再開判定部28によって、再開要求受信部26によって受信されたセッションチケット(チケットデータ)に基づくセッション再開が可であると判定された場合に、当該セッションチケットから取得されたセッション再開情報に基づいて、セッションを再開させる。一方、セッション管理部21は、再開判定部28によって、再開要求受信部26によって受信されたセッションチケットに基づくセッション再開が可であると判定されなかった場合、当該セッションチケットに係るセッションの再開を拒否する。
Further, the
チケット生成部22は、セッションの再開のために用いられるセッション再開情報、セッションチケットを識別するためのチケット識別子、及びセッションの有効期間を含む情報を暗号化することで、セッションチケットを生成する。
The
図3は、本実施形態において、セッションチケットに暗号化された状態で含まれる情報を示す図である。本実施形態において、セッション再開情報は、セッション再開に必要な全ての情報であり、当該セッションで用いられる暗号スイート、暗号鍵(マスター鍵)、チケット識別子、当該セッションの有効期間、当該セッションで用いられる証明書情報、等の情報を含む。但し、暗号化の対象とする情報は実施の形態に応じて適宜変更が可能であり、本実施形態において説明された例に限定されない。例えば、チケット識別子及びセッションの有効期間は、何れか一方又は両方が省略されてもよい。 FIG. 3 is a diagram showing information included in the session ticket in an encrypted state in the present embodiment. In the present embodiment, the session restart information is all information necessary for session restart, and is used in the session, the cipher suite used in the session, the encryption key (master key), the ticket identifier, the validity period of the session, and the session. Includes information such as certificate information. However, the information to be encrypted can be appropriately changed according to the embodiment, and is not limited to the example described in the present embodiment. For example, either one or both of the ticket identifier and the validity period of the session may be omitted.
ハッシュ値算出部23は、セッションチケットを同定するためのハッシュ値を算出する。即ち、本開示において算出されるハッシュ値は、セッションチケットの同定に用いることが可能なものであればよいため、セッションチケット全体のハッシュ値に限定されない。例えば、ハッシュ値として、セッションチケットの一部のハッシュ値が用いられてもよい。
The hash
チケット管理部24は、ハッシュ値を含むチケット判定情報及びチケット識別子を記憶し、セッションの再開に用いられたセッションチケットに係るチケット判定情報を無効化する。なお、本実施形態において、チケット管理部24は、チケット判定情報として更にセッションの有効期間を記憶し、当該有効期間が満了したチケットに係るチケット判定情報を無効化する。また、チケット管理部24は、リソースの節約のため、チケット判定情報を無効化する際には、当該チケット判定情報を記憶するために用いられていたリソースを開放してよい。
The
図4は、本実施形態において、TLS装置1のチケット管理部24によって管理される情報を示す図である。本実施形態において、チケット管理部24は、チケット識別子、チケットの有効期間、及びハッシュ値を、確立されたセッション毎に組み合わせて管理する。このような情報が管理されることで、本実施形態に係るTLS装置1は、セッションチケットの全体を管理することなく、セッション管理用のリソースを節約しながら、リプレイ攻撃を防止することが可能となる。但し、チケット管理部24によって記憶される対象は、本実施形態における例示に限定されない。例えば、チケット管理部24は、チケット識別子や有効期間について、記憶を省略してもよい。
FIG. 4 is a diagram showing information managed by the
チケット送信部25は、セッションチケットをクライアント端末装置9に送信する。なお、本実施形態に係るTLS装置1は、クライアント端末装置9に送信済みのセッションチケットを管理/記憶しない。送信済みのセッションチケットは、TLS装置1の管理下のリソースから削除されてよい。
The
再開要求受信部26は、TLS装置1からセッションチケットの発行を受けたクライアント端末装置9から、当該セッションチケットを含むセッション再開要求を受信する。
The restart
復号部27は、再開要求受信部26によって受信されたセッションチケットを復号することで、セッション再開情報、当該セッションチケットのチケット識別子及びセッションの有効期間を含む情報を取得する。
The
再開判定部28は、ハッシュ値算出部23によって算出された、再開要求受信部26によって受信されたセッションチケットを同定するためのハッシュ値と、チケット管理部24によって記憶されているハッシュ値とを比較することで、再開要求受信部26によって受信されたセッションチケットに基づくセッション再開の可否を判定する。また、本実施形態では、再開判定部28は、セッション再開の可否を判定するために、更に、復号部27によって取得されたチケット識別子と、チケット管理部24によって記憶されているチケット識別子とを比較し、また、再開要求受信部26によって受信されたセッションチケットから取得された有効期間と、チケット管理部24によって記憶されている有効期間とを比較する。但し、セッション再開の可否を判定するために用いられる情報は、本実施形態における例示に限定されない。例えば、上記例示したハッシュ値の比較、チケット識別子の比較及び有効期間の比較は、実施の形態に応じて必要な比較のみが行われることとしてもよい。
The
<処理の流れ>
次に、本実施形態に係る情報処理装置1(TLS装置1)によって実行される処理の流れを説明する。なお、以下に説明する処理の具体的な内容及び処理順序は、本開示を実施するための一例である。具体的な処理内容及び処理順序は、本開示の実施の形態に応じて適宜選択されてよい。
<Processing flow>
Next, the flow of processing executed by the information processing apparatus 1 (TLS apparatus 1) according to the present embodiment will be described. The specific contents and processing order of the processing described below are examples for carrying out the present disclosure. The specific processing content and processing order may be appropriately selected according to the embodiment of the present disclosure.
図5は、本実施形態に係るセッション管理処理の流れの概要を示すフローチャート及び通信シーケンスである。本フローチャートに示された処理は、セッション管理部21によってTLSネゴシエーションが開始された後、セッションチケットの生成に必要な情報が揃ったことを契機として実行される。
FIG. 5 is a flowchart and a communication sequence showing an outline of the flow of the session management process according to the present embodiment. The process shown in this flowchart is executed when the information necessary for generating the session ticket is prepared after the TLS negotiation is started by the
ステップS101では、セッションチケット(チケットデータ)が作成される。チケット生成部22は、セッション再開情報(セッション再開に必要な全ての情報)、チケット識別子、及びセッションの有効期間を含む情報を暗号化することで、セッションチケットを生成する。その後、処理はステップS102へ進む。
In step S101, a session ticket (ticket data) is created. The
ステップS102では、セッションチケットからハッシュ値が算出される。ハッシュ値算出部23は、セッションチケットを同定するためのハッシュ値として、暗号化されたデータ全体(即ち、ステップS101で生成されたセッションチケットの全体)のハッシュ値を算出する。但し、算出されるハッシュ値は、セッションチケットの同定に用いることが可能なものであればよく、本開示における例示に限定されない。その後、処理はステップS103へ進む。
In step S102, the hash value is calculated from the session ticket. The hash
ステップS103では、チケット識別子、有効期間及びハッシュ値が管理される。チケット管理部24は、セッションチケットに含められたチケット識別子及び有効期間、並びにセッションチケットから算出されたハッシュ値を、互いに関連づけて記憶する。その後、処理はステップS104へ進む。
In step S103, the ticket identifier, the validity period, and the hash value are managed. The
ステップS104では、セッションチケットがクライアント端末装置9に送信される。チケット送信部25は、ステップS101で生成されたセッションチケットを、クライアント端末装置9に送信する。
In step S104, the session ticket is transmitted to the
その後、TLSハンドシェイクが終了すると、TLSセッションが確立され、クライアント端末装置9は、通信の相手方(本実施形態では、サーバ装置5)との間で、確立されたTLSセッションを介してセキュアに通信を行うことが出来る。そして、一旦通信が終了した後であっても、クライアント端末装置9は、TLS装置1に対してセッションチケットを送信し、セッションの再開を要求することが出来る。
After that, when the TLS handshake is completed, the TLS session is established, and the
ステップS105では、クライアント端末装置9から、セッション再開要求と同時にセッションチケットが受信される。再開要求受信部26は、TLS装置1からセッションチケットの発行を受けたクライアント端末装置9から、当該セッションチケットを含むセッション再開要求を受信する。その後、処理はステップS106へ進む。
In step S105, the session ticket is received from the
ステップS106では、受信されたセッションチケットからハッシュ値が算出される。ハッシュ値算出部23は、セッションチケットを同定するためのハッシュ値として、ステップS105でクライアント端末装置9から受信されたセッションチケットの全体のハッシュ値を算出する。但し、算出されるハッシュ値は、セッションチケットの同定に用いることが可能なものであればよく、ハッシュ値算出の対象となるデータの範囲が、ステップS102と対応していればよい。その後、処理はステップS107へ進む。
In step S106, the hash value is calculated from the received session ticket. The hash
ステップS107では、クライアント端末装置9から受信されたセッションチケットが復号される。復号部27は、再開要求受信部26によって受信されたセッションチケットを復号することで、セッション再開情報(セッション再開に必要な全ての情報)、チケット識別子及びセッションの有効期間を含む情報を取得する。その後、処理はステップS108へ進む。
In step S107, the session ticket received from the
ステップS108では、セッションの再開可否が判定される。再開判定部28は、ステップS106で算出されたハッシュ値とTLS装置1で管理されているハッシュ値との比較、ステップS107で取得されたチケット識別子及び有効期間とTLS装置1で管理されているチケット識別子及び有効期間との比較を行い、ステップS105で受信されたセッションチケットとステップS101で生成されたセッションチケットとが同一か否かを確認することで、クライアント端末装置9から受信されたセッションチケットが改ざんされていないことを確認する。確認の結果、受信されたセッションチケットから得られた情報がTLS装置1で管理されている情報と一致し、セッション再開可能であると判定された場合(ステップS108のYES)、処理はステップS109へ進む。
In step S108, it is determined whether or not the session can be resumed. The
ステップS109及びステップS110では、有効期間が満了していない場合に、管理している情報が無効化され、セッション再開処理が行われる。本実施形態において、セッションチケットには有効期間があるため、再開判定部28は、セッションチケットが有効期間内であるか否かを確認する(ステップS109)。現在日時が有効期間内であると判定された場合(ステップS109のYES)、セッション管理部21は、当該セッションチケットが復号されることでステップS107で取得されたセッション再開情報に基づいて、セッションを再開させる(ステップS110)。セッション再開情報を用いたセッション再開の流れは、セッションチケットを用いるTLSセッションとして既知の技術であるため、説明を省略する(RFC5077を参照)。
In steps S109 and S110, when the valid period has not expired, the managed information is invalidated and the session restart process is performed. In the present embodiment, since the session ticket has a valid period, the
即ち、本実施形態では、セッションチケットが改ざんされていないこと、及びセッションチケットの有効期間が満了していないことが確認された後に、セッションが再開される。また、セッションチケットは1度しか使用できないため、チケット管理部24は、1度使用されたセッションチケットに関して、管理されているチケット識別子、有効期間及びハッシュ値を無効化する。その後、本フローチャートに示された処理は終了する。
That is, in the present embodiment, the session is restarted after it is confirmed that the session ticket has not been tampered with and that the validity period of the session ticket has not expired. Further, since the session ticket can be used only once, the
一方、ステップS108における確認の結果、セッション再開可能であると判定されなかった場合(ステップS108のNO)、及び、ステップS109における判定の結果、現在日時が有効期間外であると判定された場合(ステップS109のNO)、セッションの再開は拒否される。セッション管理部21は、ステップS105で受信されたセッションチケットに係るセッションの再開を拒否し(セッションの再開を行わず)、TLS装置1は、受信されたセッションチケットを破棄する。その後、本フローチャートに示された処理は終了する。
On the other hand, when it is not determined that the session can be restarted as a result of the confirmation in step S108 (NO in step S108), and when it is determined as a result of the determination in step S109 that the current date and time is out of the valid period (NO). NO in step S109), the resumption of the session is rejected. The
本実施形態に示されたシステムによれば、セッションチケットを含むセッション再開要求を受信した際に、受信されたセッションチケットのハッシュ値と予め記憶しておいたセッションチケットのハッシュ値とを比較して、セッション再開の可否を判定することで、セッション管理用のリソースを節約しながら、リプレイ攻撃を防止することが可能となる。 According to the system shown in the present embodiment, when a session restart request including a session ticket is received, the hash value of the received session ticket is compared with the hash value of the session ticket stored in advance. By determining whether the session can be resumed, it is possible to prevent replay attacks while saving resources for session management.
<バリエーション>
図6は、バリエーションに係るシステムの構成を示す概略図である。本バリエーションに係るシステムは、ネットワークに接続されることで互いに通信可能なサーバ装置(TLS装置)1と、1又は複数のクライアント端末装置9とを備える。即ち、本バリエーションでは、クライアント端末装置9の通信相手であるサーバ装置1に、TLS処理を行うTLS装置としての機能が備えられている。
<Variation>
FIG. 6 is a schematic diagram showing the configuration of the system according to the variation. The system according to this variation includes a server device (TLS device) 1 that can communicate with each other by being connected to a network, and one or a plurality of
1 情報処理装置(TLS装置) 1 Information processing device (TLS device)
Claims (10)
チケットデータを生成するチケット生成手段であって、前記セッションの再開のために用いられるセッション再開情報を含む情報を暗号化することでチケットデータを生成するチケット生成手段と、
前記チケットデータを同定するためのハッシュ値を算出するハッシュ値算出手段と、
前記ハッシュ値を含むチケット判定情報を記憶するチケット管理手段と、
前記チケットデータを前記クライアントに送信するチケット送信手段と、
該情報処理装置から前記チケットデータの発行を受けた前記クライアントから、該チケットデータを含むセッション再開要求を受信する再開要求受信手段と、
前記再開要求受信手段によって受信された前記チケットデータを復号することで、前記セッション再開情報を含む情報を取得する復号手段と、
前記ハッシュ値算出手段によって算出された、前記再開要求受信手段によって受信されたチケットデータを同定するためのハッシュ値と、前記チケット管理手段によって記憶されている前記ハッシュ値とを比較することで、前記再開要求受信手段によって受信されたチケットデータに基づくセッション再開の可否を判定する再開判定手段と、
を備える情報処理装置。 A session management method for establishing a communication session with a client,
A ticket generation means for generating ticket data, which is a ticket generation means for generating ticket data by encrypting information including session restart information used for restarting the session.
A hash value calculating means for calculating a hash value for identifying the ticket data, and
A ticket management means for storing ticket determination information including the hash value, and
A ticket transmission means for transmitting the ticket data to the client, and
A restart request receiving means for receiving a session restart request including the ticket data from the client that has received the ticket data issuance from the information processing device.
Decoding means for acquiring information including the session restart information by decoding the ticket data received by the restart request receiving means, and
The hash value for identifying the ticket data received by the restart request receiving means calculated by the hash value calculating means is compared with the hash value stored by the ticket management means. A restart determination means for determining whether or not a session can be restarted based on ticket data received by the restart request receiving means, and a restart determination means.
Information processing device equipped with.
前記チケット管理手段は、前記チケットデータの識別子を更に記憶し、
前記復号手段は、前記チケットデータを復号することで、該チケットデータの識別子を更に取得し、
前記再開判定手段は、更に、前記復号手段によって取得された前記識別子と、前記チケット管理手段によって記憶されている前記識別子とを比較することで、前記セッション再開の可否を判定する、
請求項1に記載の情報処理装置。 The ticket generation means generates ticket data by encrypting information including an identifier of the ticket data in addition to the session restart information.
The ticket management means further stores the identifier of the ticket data and stores it.
The decoding means further acquires the identifier of the ticket data by decoding the ticket data, and obtains the identifier of the ticket data.
The resumption determination means further determines whether or not the session can be resumed by comparing the identifier acquired by the decoding means with the identifier stored by the ticket management means.
The information processing apparatus according to claim 1.
請求項1又は2に記載の情報処理装置。 The ticket management means further stores the validity period of the session as the ticket determination information, and invalidates the ticket determination information related to the ticket whose validity period has expired.
The information processing apparatus according to claim 1 or 2.
前記復号手段は、前記チケットデータを復号することで、前記セッションの有効期間を更に取得し、
前記再開判定手段は、更に、前記再開要求受信手段によって受信されたチケットデータから取得された前記有効期間と、前記チケット管理手段によって記憶されている前記有効期間とを比較することで、前記セッション再開の可否を判定する、
請求項3に記載の情報処理装置。 The ticket generation means generates ticket data by encrypting information including the validity period of the session in addition to the session restart information.
The decoding means further acquires the validity period of the session by decoding the ticket data, and obtains the validity period of the session.
The restart determination means further compares the valid period acquired from the ticket data received by the restart request receiving means with the valid period stored by the ticket management means, thereby restarting the session. Judging whether or not
The information processing apparatus according to claim 3.
請求項1から4の何れか一項に記載の情報処理装置。 When the session management means determines that the session resumption based on the ticket data received by the resumption request receiving means is possible by the resumption determination means, the session resumption information acquired from the ticket data is used. Based on, the session is restarted,
The information processing apparatus according to any one of claims 1 to 4.
請求項1から5の何れか一項に記載の情報処理装置。 The ticket management means invalidates the ticket determination information related to the ticket data used for resuming the session.
The information processing apparatus according to any one of claims 1 to 5.
請求項1から6の何れか一項に記載の情報処理装置。 If the session management means does not determine that the session resumption based on the ticket data received by the resumption request receiving means is possible by the resumption determination means, the session management means refuses to resume the session related to the ticket data.
The information processing apparatus according to any one of claims 1 to 6.
請求項1から7の何れか一項に記載の情報処理装置。 The session resumption information includes information on the validity period of the session, the cipher suite used in the session, the encryption key used in the session, and the certificate used in the session.
The information processing apparatus according to any one of claims 1 to 7.
クライアントに対する通信セッションを確立するセッション管理ステップと、
チケットデータを生成するチケット生成ステップであって、前記セッションの再開のために用いられるセッション再開情報を含む情報を暗号化することでチケットデータを生成するチケット生成ステップと、
前記チケットデータを同定するためのハッシュ値を算出するハッシュ値算出ステップと、
前記ハッシュ値を含むチケット判定情報を記憶するチケット管理ステップと、
前記チケットデータを前記クライアントに送信するチケット送信ステップと、
該情報処理装置から前記チケットデータの発行を受けた前記クライアントから、該チケットデータを含むセッション再開要求を受信する再開要求受信ステップと、
前記再開要求受信ステップで受信された前記チケットデータを復号することで、前記セッション再開情報を含む情報を取得する復号ステップと、
前記ハッシュ値算出ステップで算出された、前記再開要求受信ステップで受信されたチケットデータを同定するためのハッシュ値と、前記チケット管理ステップで記憶されている前記ハッシュ値とを比較することで、前記再開要求受信ステップで受信されたチケットデータに基づくセッション再開の可否を判定する再開判定ステップと、
を実行する方法。 The computer
Session management steps to establish a communication session for a client,
A ticket generation step for generating ticket data, which is a ticket generation step for generating ticket data by encrypting information including session restart information used for restarting the session.
A hash value calculation step for calculating a hash value for identifying the ticket data, and
A ticket management step for storing ticket determination information including the hash value, and
A ticket transmission step for transmitting the ticket data to the client, and
A resumption request receiving step for receiving a session resumption request including the ticket data from the client that has received the ticket data issuance from the information processing apparatus.
A decoding step for acquiring information including the session restart information by decoding the ticket data received in the restart request reception step, and a decoding step.
By comparing the hash value calculated in the hash value calculation step for identifying the ticket data received in the restart request receiving step with the hash value stored in the ticket management step, the said A restart determination step that determines whether or not to restart the session based on the ticket data received in the restart request reception step, and a restart determination step.
How to run.
クライアントに対する通信セッションを確立するセッション管理手段と、
チケットデータを生成するチケット生成手段であって、前記セッションの再開のために用いられるセッション再開情報を含む情報を暗号化することでチケットデータを生成するチケット生成手段と、
前記チケットデータを同定するためのハッシュ値を算出するハッシュ値算出手段と、
前記ハッシュ値を含むチケット判定情報を記憶するチケット管理手段と、
前記チケットデータを前記クライアントに送信するチケット送信手段と、
該情報処理装置から前記チケットデータの発行を受けた前記クライアントから、該チケットデータを含むセッション再開要求を受信する再開要求受信手段と、
前記再開要求受信手段によって受信された前記チケットデータを復号することで、前記セッション再開情報を含む情報を取得する復号手段と、
前記ハッシュ値算出手段によって算出された、前記再開要求受信手段によって受信されたチケットデータを同定するためのハッシュ値と、前記チケット管理手段によって記憶されている前記ハッシュ値とを比較することで、前記再開要求受信手段によって受信されたチケットデータに基づくセッション再開の可否を判定する再開判定手段と、
として機能させるためのプログラム。 Computer,
A session management method for establishing a communication session with a client,
A ticket generation means for generating ticket data, which is a ticket generation means for generating ticket data by encrypting information including session restart information used for restarting the session.
A hash value calculating means for calculating a hash value for identifying the ticket data, and
A ticket management means for storing ticket determination information including the hash value, and
A ticket transmission means for transmitting the ticket data to the client, and
A restart request receiving means for receiving a session restart request including the ticket data from the client that has received the ticket data issuance from the information processing device.
Decoding means for acquiring information including the session restart information by decoding the ticket data received by the restart request receiving means, and
The hash value for identifying the ticket data received by the restart request receiving means calculated by the hash value calculating means is compared with the hash value stored by the ticket management means. A restart determination means for determining whether or not a session can be restarted based on ticket data received by the restart request receiving means, and a restart determination means.
A program to function as.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020093888A JP2021190817A (en) | 2020-05-29 | 2020-05-29 | Information processing device, method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020093888A JP2021190817A (en) | 2020-05-29 | 2020-05-29 | Information processing device, method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021190817A true JP2021190817A (en) | 2021-12-13 |
Family
ID=78847536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020093888A Pending JP2021190817A (en) | 2020-05-29 | 2020-05-29 | Information processing device, method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021190817A (en) |
-
2020
- 2020-05-29 JP JP2020093888A patent/JP2021190817A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9130926B2 (en) | Authorization messaging with integral delegation data | |
RU2297037C2 (en) | Method for controlling protected communication line in dynamic networks | |
US9762567B2 (en) | Wireless communication of a user identifier and encrypted time-sensitive data | |
US8086868B2 (en) | Data communication method and system | |
US10554406B1 (en) | Authorized data sharing using smart contracts | |
US10474834B1 (en) | Data sharing via distributed ledgers | |
WO2016061819A1 (en) | Resource access method and apparatus | |
US7739301B2 (en) | Method and apparatus for improving file system proxy performance and security by distributing information to clients via file handles | |
WO2017097101A1 (en) | Method and apparatus for account number login | |
CN110445615B (en) | Network request security verification method, device, medium and electronic equipment | |
RU2454708C2 (en) | Method of realising status monitoring mechanism in communication session between server and client system | |
CN113472790A (en) | Information transmission method based on HTTPS (hypertext transfer protocol secure protocol), client and server | |
US8458470B2 (en) | Authentication in data management | |
US20220394039A1 (en) | Seamlessly securing access to application programming interface gateways | |
EP2400716A2 (en) | Resource access proxy for efficient access to sensor resources | |
CN111885057B (en) | Message middleware access method, device, equipment and storage medium | |
CN111092958B (en) | Node access method, device, system and storage medium | |
WO2024011863A1 (en) | Communication method and apparatus, sim card, electronic device, and terminal device | |
KR20190091511A (en) | Random message based data message authentication | |
JP2021190817A (en) | Information processing device, method, and program | |
WO2020166066A1 (en) | Token protection method, authorization system, device, and program recording medium | |
CN115694909A (en) | SSL-based MQTT authentication method and related equipment | |
JP2005354200A (en) | Information processing apparatus | |
CN111935122A (en) | Data security processing method and device | |
JP2005538400A (en) | Method for computing a hash of a message in a device communicating with a smart card |