JP6631210B2 - Terminal device authentication program, terminal device authentication method, server device, and authentication system - Google Patents

Terminal device authentication program, terminal device authentication method, server device, and authentication system Download PDF

Info

Publication number
JP6631210B2
JP6631210B2 JP2015237540A JP2015237540A JP6631210B2 JP 6631210 B2 JP6631210 B2 JP 6631210B2 JP 2015237540 A JP2015237540 A JP 2015237540A JP 2015237540 A JP2015237540 A JP 2015237540A JP 6631210 B2 JP6631210 B2 JP 6631210B2
Authority
JP
Japan
Prior art keywords
terminal
unique
key
authentication
terminal 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.)
Active
Application number
JP2015237540A
Other languages
Japanese (ja)
Other versions
JP2017103710A (en
Inventor
大樹 加藤
大樹 加藤
肇康 園田
肇康 園田
伸乃助 仲谷
伸乃助 仲谷
茂男 蜂木
茂男 蜂木
矢野 義博
義博 矢野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2015237540A priority Critical patent/JP6631210B2/en
Publication of JP2017103710A publication Critical patent/JP2017103710A/en
Application granted granted Critical
Publication of JP6631210B2 publication Critical patent/JP6631210B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、サーバが端末を認証するための端末装置認証用のプログラム、端末装置認証方法、サーバ装置、および、認証システムに関する。   The present invention relates to a terminal device authentication program for a server to authenticate a terminal, a terminal device authentication method, a server device, and an authentication system.

クライアント・サーバシステムにおけるクライアントの端末装置の認証を安全に行うために、公開鍵方式による認証等の方法が用いられている。例えば、特許文献1には、認証要求に対し所定のコードを決定し、ユーザ名に対応する公開鍵を用いて決定したコードを暗号化し、クライアントに暗号化コードを送信し、クライアントにおいて秘密鍵を用いて復号化した暗号化コードの復号結果と決定されたコードとの比較結果より、ユーザの認証を行う認証システムが開示されている。   In order to securely authenticate a client terminal device in a client-server system, a method such as authentication using a public key method is used. For example, in Patent Document 1, a predetermined code is determined for an authentication request, the determined code is encrypted using a public key corresponding to a user name, an encrypted code is transmitted to a client, and a secret key is transmitted to the client. An authentication system for authenticating a user is disclosed based on a comparison result between a decryption result of an encrypted code decrypted using the determined code and a determined code.

特開2001−236321号公報JP 2001-236321 A

しかしながら、従来の技術では、端末装置におけるクライアントアプリ自体は難読化等の手法により安全を保たれていても、クライアントアプリが保存するデータが盗まれた場合、端末装置の成りすましを防止することが難しかった。   However, in the related art, even if the client application itself in the terminal device is kept secure by obfuscation or the like, it is difficult to prevent impersonation of the terminal device when data stored by the client application is stolen. Was.

そこで、本発明は上記の問題点等に鑑みて為されたもので、その課題の一例は、クライアントの端末装置の成りすましがされにくい端末装置認証用のプログラム等を提供することを目的とする。   Accordingly, the present invention has been made in view of the above-described problems and the like, and an object of the present invention is to provide a terminal device authentication program or the like that makes it difficult for a client terminal device to be spoofed.

上記の課題を解決するために、請求項1に記載の発明は、コンピュータを、端末装置の固有の固有IDを生成する固有ID生成手段、前記端末装置の固有の固有情報から固有鍵を生成する固有鍵生成手段、前記固有鍵により、前記固有IDを暗号化して、暗号化固有IDを生成する固有ID暗号化手段、サーバ装置から前記端末装置に割り当てられた第1端末IDを取得する第1端末ID取得手段、前記固有情報から生成された前記固有鍵により、前記暗号化固有IDを復号する固有ID復号手段、前記復号された固有IDから前記端末装置の認証用の認証鍵を生成する認証鍵生成手段、前記固有鍵を使用した後に、前記固有鍵を消去する固有鍵消去手段、前記固有IDを使用した後に、前記固有IDを消去する固有ID消去手段、前記認証鍵による暗号処理により、前記第1端末IDから暗号化データを生成する暗号データ生成手段、前記認証鍵を使用した後に、前記認証鍵を消去する認証鍵消去手段、前記暗号化データに、前記第1端末IDを含めた、第2端末IDを生成する第2端末ID生成手段、 前記第2端末IDを前記サーバ装置に送信する第2端末ID送信手段、記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記サーバ装置から受信して記憶する端末証明書記憶手段、および、端末認証のため、前記認証鍵生成手段により生成された前記認証鍵および前記端末証明書を前記サーバ装置に送信する端末証明書送信手段として機能させることを特徴とする。 In order to solve the above-mentioned problem, the invention according to claim 1 provides a computer with a unique ID generating means for generating a unique ID of a terminal device, and a unique key generated from unique information of the terminal device. A unique key generating unit, a unique ID encrypting unit that encrypts the unique ID with the unique key to generate an encrypted unique ID, and a first unit that obtains a first terminal ID assigned to the terminal device from a server device. Terminal ID acquisition means, unique ID decoding means for decoding the encrypted unique ID using the unique key generated from the unique information, authentication for generating an authentication key for authentication of the terminal device from the decoded unique ID A key generation unit, a unique key erasing unit for erasing the unique key after using the unique key, a unique ID erasing unit for erasing the unique ID after using the unique ID, the authentication Encryption data generating means for generating encrypted data from the first terminal ID by the encryption processing by the first terminal ID; authentication key erasing means for deleting the authentication key after using the authentication key; including the terminal ID, the second terminal ID generating means for generating a second terminal ID, the second terminal ID transmission means for transmitting the second terminal ID to the server apparatus, prior Symbol including the second terminal ID, the the terminal certificate attesting terminal device, the terminal certificate storage means for storing said server device or we receive and, and, for terminal authentication, the authentication key and the terminal certificate generated by the authentication key generation unit As a terminal certificate transmitting unit that transmits the terminal certificate to the server device.

また、請求項2に記載の発明は、請求項1に記載の端末装置認証用のプログラムにおいて、前記第2端末ID生成手段が、前記暗号化データに、前記第1端末IDを混ぜて、前記第2端末IDを生成することを特徴とする。   Further, according to a second aspect of the present invention, in the terminal device authentication program according to the first aspect, the second terminal ID generation unit mixes the encrypted data with the first terminal ID, A second terminal ID is generated.

また、請求項3に記載の発明は、請求項1または請求項2に記載の端末装置認証用のプログラムにおいて、記サーバ装置が生成した通信用の通信鍵を、前記サーバ装置から受信する通信鍵受信手段として、更に機能させることを特徴とする。 Further, the invention according to claim 3, in the program for the terminal apparatus authentication according to claim 1 or claim 2, a communication key for communication before Symbol server device has generated and received from the server device communication It is characterized by further functioning as key receiving means.

また、請求項4に記載の発明は、請求項3に記載の端末装置認証用のプログラムにおいて、前記端末証明書記憶手段が、前記サーバ装置で生成された前記端末装置用の秘密鍵および公開鍵を含んだ前記端末証明書を受信し、前記端末証明書送信手段が、前記端末装置用の秘密鍵を取り除いた前記端末証明書を前記サーバ装置に送信し、前記通信鍵受信手段が、前記端末装置用の公開鍵により暗号化された前記通信鍵を受信することを特徴とする。   According to a fourth aspect of the present invention, in the terminal device authentication program according to the third aspect, the terminal certificate storage unit stores the terminal device private key and the public key generated by the server device. Receiving the terminal certificate including the terminal certificate, the terminal certificate transmitting unit transmits the terminal certificate from which the secret key for the terminal device has been removed to the server device, and the communication key receiving unit includes: Receiving the communication key encrypted with a public key for the device.

また、請求項5に記載の発明は、請求項1から請求項3のいずれか1項に記載の端末装置認証用のプログラムにおいて、前記第2端末ID送信手段および前記端末証明書送信手段が、前記端末装置で生成された前記端末装置用の秘密鍵により暗号化されたデータを前記サーバ装置に送信することを特徴とする。   According to a fifth aspect of the present invention, in the terminal device authentication program according to any one of the first to third aspects, the second terminal ID transmitting unit and the terminal certificate transmitting unit may include: Data encrypted by the terminal device secret key generated by the terminal device is transmitted to the server device.

また、請求項6に記載の発明は、固有ID生成手段が、端末装置の固有の固有IDを生成する固有ID生成ステップと、固有鍵生成手段が、前記端末装置の固有の固有情報から固有鍵を生成する固有鍵生成ステップと、固有ID暗号化手段が、前記固有鍵により、前記固有IDを暗号化して、暗号化固有IDを生成する固有ID暗号化ステップと、第1端末ID取得手段が、サーバ装置から前記端末装置に割り当てられた第1端末IDを取得する第1端末ID取得ステップと、固有ID復号手段が、前記固有情報から生成された前記固有鍵により、前記暗号化固有IDを復号する固有ID復号ステップと、認証鍵生成手段が、前記復号された固有IDから前記端末装置の認証用の認証鍵を生成する認証鍵生成ステップと、固有鍵消去手段が、前記固有鍵を使用した後に、前記固有鍵を消去する固有鍵消去ステップと、暗号データ生成手段が、前記固有IDを使用した後に、前記固有IDを消去する固有ID消去ステップと、暗号データ生成手段が、前記認証鍵による暗号処理により、前記第1端末IDから暗号化データを生成する暗号データ生成ステップと、認証鍵消去手段が、前記認証鍵を使用した後に、前記認証鍵を消去する認証鍵消去ステップと、第2端末ID生成手段が、前記暗号化データに、前記第1端末IDを含めた、第2端末IDを生成する第2端末ID生成ステップと、第2端末ID送信手段が、前記第2端末IDを前記サーバ装置に送信する第2端末ID送信ステップと、端末証明書記憶手段が、記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記サーバ装置から受信して記憶する端末証明書記憶ステップと、端末証明書送信手段が、端末認証のため、前記認証鍵生成手段により生成された前記認証鍵および前記端末証明書を前記サーバ装置に送信する端末証明書送信ステップと、を含むことを特徴とする。 Also, in the invention according to claim 6, the unique ID generation means generates a unique ID of the terminal device, and the unique key generation means determines the unique key from the unique information of the terminal device. A unique key encrypting step of generating a unique ID by the unique ID encrypting means using the unique key to generate an encrypted unique ID; A first terminal ID obtaining step of obtaining a first terminal ID assigned to the terminal device from a server device, and a unique ID decrypting means for converting the encrypted unique ID with the unique key generated from the unique information. An authentication key generation step of generating an authentication key for authentication of the terminal device from the decrypted unique ID, and an authentication key generation step of: A unique key erasing step for erasing the unique key after using the unique key; a cipher data generating means for erasing the unique ID after using the unique ID; and a cipher data generating means. A cryptographic data generating step of generating encrypted data from the first terminal ID by cryptographic processing using the authentication key; and an authentication key for deleting the authentication key after using the authentication key. An erasing step, a second terminal ID generating means for generating a second terminal ID including the first terminal ID in the encrypted data, and a second terminal ID transmitting means, a second terminal ID transmitting step of transmitting the second terminal ID to the server apparatus, a terminal certificate storage means, including the pre-Symbol second terminal ID, the terminal certificate certifying the terminal device , A terminal certificate storage step of receiving and storing from the server apparatus, the terminal certificate transmission means for terminal authentication, the authentication key generated by the generating means and the authentication key and the terminal certificate the server device And transmitting a terminal certificate to the terminal certificate.

また、請求項7に記載の発明は、端末装置からの要求により、当該端末装置に割り当てる第1端末IDを生成して、送信する第1端末ID送信手段と、前記端末装置の固有の固有IDから生成された前記端末装置の認証用の認証鍵による暗号処理により、前記第1端末IDから生成された暗号化データに、前記第1端末IDを含めた第2端末IDを、前記端末装置から受信する第2端末ID受信手段と、前記受信した第2端末IDから前記第1端末IDが抽出された場合に、前記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記端末装置に送信する端末証明書送信手段と、端末認証のため、前記端末証明書および前記認証鍵を前記端末装置から受信する端末証明書受信手段と、前記端末証明書に含まれる第2端末IDから前記暗号化データを抽出する暗号化データ抽出手段と、前記受信した前記認証鍵による復号処理により、前記暗号化データから第1端末IDを抽出する第1端末ID抽出手段と、前記抽出した第1端末IDが、前記第1端末IDを予め記憶した端末情報記憶手段を参照して、前記端末情報記憶手段に記憶された第1端末IDであるか否かを判定する判定手段と、を備えたことを特徴とする。 According to a seventh aspect of the present invention, a first terminal ID transmitting means for generating and transmitting a first terminal ID assigned to the terminal device in response to a request from the terminal device, and a unique ID unique to the terminal device The second terminal ID including the first terminal ID is added to the encrypted data generated from the first terminal ID by the encryption processing using the authentication key for authentication of the terminal device generated from the terminal device. A second terminal ID receiving means for receiving, and a terminal certificate for certifying the terminal device, including the second terminal ID when the first terminal ID is extracted from the received second terminal ID, Terminal certificate transmitting means for transmitting to the terminal device, terminal certificate receiving means for receiving the terminal certificate and the authentication key from the terminal device for terminal authentication, and a second terminal included in the terminal certificate From ID Encrypted data extracting means for extracting the encrypted data, first terminal ID extracting means for extracting a first terminal ID from the encrypted data by decryption processing using the received authentication key, Determination means for determining whether or not the terminal ID is the first terminal ID stored in the terminal information storage means by referring to terminal information storage means in which the first terminal ID is stored in advance . It is characterized by the following.

また、請求項8に記載の発明は、サーバ装置が端末装置を認証する認証システムにおいて、前記端末装置が、前記端末装置の固有の固有IDを生成する固有ID生成手段と、前記端末装置の固有の固有情報から固有鍵を生成する固有鍵生成手段と、前記固有鍵により、前記固有IDを暗号化して、暗号化固有IDを生成する固有ID暗号化手段と、前記サーバ装置から前記端末装置に割り当てられた第1端末IDを取得する第1端末ID取得手段と、前記固有情報から生成された前記固有鍵により、前記暗号化固有IDを復号する固有ID復号手段と、前記復号された固有IDから前記端末装置の認証用の認証鍵を生成する認証鍵生成手段と、前記固有鍵を使用した後に、前記固有鍵を消去する固有鍵消去手段と、前記固有IDを使用した後に、前記固有IDを消去する固有ID消去手段と、前記認証鍵による暗号処理により、前記第1端末IDから暗号化データを生成する暗号データ生成手段と、前記認証鍵を使用した後に、前記認証鍵を消去する認証鍵消去手段と、前記暗号化データに、前記第1端末IDを含めた、第2端末IDを生成する第2端末ID生成手段と、前記第2端末IDを前記サーバ装置に送信する第2端末ID送信手段と、記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記サーバ装置から受信して記憶する端末証明書記憶手段と、端末認証のため、前記認証鍵生成手段により生成された前記認証鍵および前記端末証明書を前記サーバ装置に送信する端末証明書送信手段と、を有し、前記サーバ装置が、前記端末装置からの要求により、当該端末装置に割り当てる第1端末IDを生成して、送信する第1端末ID送信手段と、前記端末装置の固有の固有IDから生成された前記端末装置の認証用の認証鍵による暗号処理により、前記第1端末IDから生成された暗号化データに、前記第1端末IDを含めた第2端末IDを、前記端末装置から受信する第2端末ID受信手段と、前記受信した第2端末IDから前記第1端末IDが抽出された場合に、前記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記端末装置に送信する端末証明書送信手段と、端末認証のため、前記端末証明書および前記認証鍵を前記端末装置から受信する端末証明書受信手段と、前記端末証明書に含まれる第2端末IDから前記暗号化データを抽出する暗号化データ抽出手段と、前記受信した前記認証鍵による復号処理により、前記暗号化データから第1端末IDを抽出する第1端末ID抽出手段と、前記抽出した第1端末IDが、前記第1端末IDを予め記憶した端末情報記憶手段を参照して、前記端末情報記憶手段に記憶された第1端末IDであるか否かを判定する判定手段と、を有することを特徴とする。 According to an eighth aspect of the present invention, in the authentication system in which the server device authenticates the terminal device, the terminal device generates a unique ID unique to the terminal device; A unique key generating means for generating a unique key from the unique information of the server; a unique ID encrypting means for encrypting the unique ID with the unique key to generate an encrypted unique ID; First terminal ID acquisition means for acquiring the assigned first terminal ID, unique ID decoding means for decoding the encrypted unique ID with the unique key generated from the unique information, and the decrypted unique ID An authentication key generating means for generating an authentication key for authentication of the terminal device from the following; after using the unique key, a unique key erasing means for deleting the unique key; and after using the unique ID. A unique ID erasing means for erasing the unique ID, an encrypted data generating means for generating encrypted data from the first terminal ID by an encryption process using the authentication key, and an authentication key after using the authentication key. Authentication key erasing means for erasing the first terminal ID, second terminal ID generating means for generating a second terminal ID including the first terminal ID in the encrypted data, and transmitting the second terminal ID to the server device. a second terminal ID transmission means for, including a pre-Symbol second terminal ID, a terminal certificate attesting the terminal device, and the terminal certificate storage means for receiving and storing from the server apparatus, for terminal authentication Terminal certificate transmitting means for transmitting the authentication key and the terminal certificate generated by the authentication key generating means to the server device, wherein the server device receives a request from the terminal device, A first terminal ID transmitting means for generating and transmitting a first terminal ID to be assigned to the terminal device, and an encryption process using an authentication key for authentication of the terminal device generated from a unique ID unique to the terminal device, A second terminal ID receiving means for receiving, from the terminal device, a second terminal ID including the first terminal ID in the encrypted data generated from the first terminal ID; When the first terminal ID is extracted, a terminal certificate transmitting the terminal certificate that certifies the terminal device, including the second terminal ID, to the terminal device; and for terminal authentication, A terminal certificate receiving unit that receives the terminal certificate and the authentication key from the terminal device; an encrypted data extracting unit that extracts the encrypted data from a second terminal ID included in the terminal certificate; A first terminal ID extracting means for extracting a first terminal ID from the encrypted data by a decryption process using the authentication key, and a terminal information storage in which the extracted first terminal ID stores the first terminal ID in advance. Determining means for referring to the means to determine whether the ID is the first terminal ID stored in the terminal information storage means .

本発明によれば、端末装置の固有情報から生成された固有鍵により端末装置の固有IDを暗号化した暗号化固有IDを生成し、サーバ装置から端末装置の第1端末IDを取得し、固有鍵により暗号化固有IDを復号し、復号された固有IDから端末装置の認証用の認証鍵を生成し、認証鍵による暗号処理により第1端末IDから生成された暗号化データに第1端末IDを含めた第2端末IDを生成してサーバ装置に送信し、認証鍵は使用後に消去され、サーバ装置において第2端末IDから第1端末IDが抽出された場合に、サーバ装置から、第2端末IDを含んだ、端末装置を証明する端末証明書を受信して記憶し、使用後に固有鍵および固有IDを消去し、端末認証のため、認証鍵および端末証明書をサーバ装置に送信することにより、端末装置のアプリが保存するデータが盗まれたとしても、固有鍵および固有IDが復元できず、認証時に認証鍵が生成できないので、端末装置の成りすましがされにくくなる。   According to the present invention, an encrypted unique ID is generated by encrypting a unique ID of a terminal device using a unique key generated from unique information of the terminal device, a first terminal ID of the terminal device is obtained from the server device, and the unique The encrypted unique ID is decrypted with the key, an authentication key for authentication of the terminal device is generated from the decrypted unique ID, and the first terminal ID is added to the encrypted data generated from the first terminal ID by encryption processing using the authentication key. Is generated and transmitted to the server device, the authentication key is deleted after use, and when the first terminal ID is extracted from the second terminal ID in the server device, the second terminal ID is transmitted from the server device to the second terminal ID. Receiving and storing a terminal certificate that certifies the terminal device, including the terminal ID, erasing the unique key and the unique ID after use, and transmitting the authentication key and the terminal certificate to the server device for terminal authentication. By Even app end device is stolen data stored can not be restored unique key and a unique ID, so authentication key for authentication can not be generated, it becomes impersonation hardly is a terminal device.

本発明の実施形態に係る認証システムの概要構成例を示す模式図である。FIG. 1 is a schematic diagram illustrating a schematic configuration example of an authentication system according to an embodiment of the present invention. 図1のサーバ装置の概要構成の一例を示すブロック図である。FIG. 2 is a block diagram illustrating an example of a schematic configuration of the server device of FIG. 1. 図1の端末装置の概要構成の一例を示すブロック図である。FIG. 2 is a block diagram illustrating an example of a schematic configuration of the terminal device of FIG. 1. 端末装置の登録の動作例を示すシーケンス図である。FIG. 7 is a sequence diagram illustrating an operation example of registration of a terminal device. デバイス識別値の一例を示す模式図である。It is a schematic diagram which shows an example of a device identification value. 暗号化固有IDの生成のサブルーチンを示すフローチャートである。It is a flowchart which shows the subroutine of generation of an encryption unique ID. 認証鍵の生成のサブルーチンを示すフローチャートである。9 is a flowchart illustrating a subroutine for generating an authentication key. デバイス検証値の生成のサブルーチンを示すフローチャートである。9 is a flowchart illustrating a subroutine for generating a device verification value. 暗号化データの生成の一例を示す模式図である。FIG. 4 is a schematic diagram illustrating an example of generation of encrypted data. デバイス検証値の構成例を示す模式図である。It is a schematic diagram which shows the example of a structure of a device verification value. 端末装置の認証の動作例を示すシーケンス図である。FIG. 9 is a sequence diagram illustrating an operation example of authentication of a terminal device. デバイス識別値の復号のサブルーチンを示すフローチャートである。It is a flowchart which shows the subroutine of decoding of a device identification value.

以下、図面を参照して本発明の実施形態について説明する。なお、以下に説明する実施の形態は、認証システムに対して本発明を適用した場合の実施形態である。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. The embodiment described below is an embodiment in which the present invention is applied to an authentication system.

[1.認証システムの構成および機能概要]
(1.1 認証システムの構成および機能)
まず、本発明の一実施形態に係る認証システムの構成および概要機能について、図1を用いて説明する。
[1. Outline of authentication system configuration and functions]
(1.1 Configuration and Function of Authentication System)
First, the configuration and general functions of an authentication system according to an embodiment of the present invention will be described with reference to FIG.

図1は、本実施形態に係る認証システム1の概要構成例を示す模式図である。   FIG. 1 is a schematic diagram illustrating a schematic configuration example of an authentication system 1 according to the present embodiment.

図1に示すように、認証システム1は、
クライアント・サーバシステムにおいて、端末の認証を行うサーバ装置10と、クライアントの端末である複数の端末装置20と、を備えている。
As shown in FIG. 1, the authentication system 1
The client-server system includes a server device 10 that performs terminal authentication, and a plurality of terminal devices 20 that are client terminals.

サーバ装置10と、端末装置20とは、ネットワーク3により接続され、通信プロトコル(例えば、TCP/IP)により、データの送受信が可能になっている。なお、ネットワーク3は、例えば、インターネット、専用通信回線(例えば、CATV(Community Antenna Television)回線)、移動体通信網、および、ゲートウェイ等により構築されている。   The server device 10 and the terminal device 20 are connected by the network 3 and can transmit and receive data by a communication protocol (for example, TCP / IP). The network 3 is configured by, for example, the Internet, a dedicated communication line (for example, a CATV (Community Antenna Television) line), a mobile communication network, a gateway, and the like.

サーバ装置10は、端末装置20を登録し、端末装置20から要求に応じて認証を行い、端末装置20との安全な通信路を確立する。端末装置20は、安全な通信路を確立するための専用のアプリ(端末装置認証用のプログラムの一例)を取得して、このアプリにより安全な通信路を確立して、サーバ装置10との通信を行う。   The server device 10 registers the terminal device 20, performs authentication according to a request from the terminal device 20, and establishes a secure communication path with the terminal device 20. The terminal device 20 acquires a dedicated application (an example of a terminal device authentication program) for establishing a secure communication channel, establishes a secure communication channel with this application, and communicates with the server device 10. I do.

(1.2 サーバ装置10の構成および機能)
次に、サーバ装置10の構成および機能について、図2を用いて説明する。
図2は、サーバ装置10の概要構成の一例を示すブロック図である。
(1.2 Configuration and Function of Server Device 10)
Next, the configuration and functions of the server device 10 will be described with reference to FIG.
FIG. 2 is a block diagram illustrating an example of a schematic configuration of the server device 10.

図2に示すように、コンピュータとして機能するサーバ装置10は、通信部11と、記憶部12と、入出力インターフェース部13と、システム制御部14と、を備えている。そして、システム制御部14と入出力インターフェース部13とは、システムバス15を介して接続されている。   As shown in FIG. 2, the server device 10 functioning as a computer includes a communication unit 11, a storage unit 12, an input / output interface unit 13, and a system control unit 14. Further, the system control unit 14 and the input / output interface unit 13 are connected via a system bus 15.

通信部11は、ネットワーク3に接続して、端末装置20との通信を制御するようになっている。   The communication unit 11 is connected to the network 3 and controls communication with the terminal device 20.

記憶部12は、例えば、ハードディスクドライブやシリコンディスクドライブ等により構成されており、オペレーティングシステム、サーバプログラム、および、端末装置20に提供するアプリ等の各種プログラム等を記憶する。   The storage unit 12 includes, for example, a hard disk drive, a silicon disk drive, and the like, and stores an operating system, a server program, and various programs such as an application provided to the terminal device 20.

なお、各種プログラムは、例えば、他のサーバ装置等からネットワーク3を介して取得されるようにしてもよいし、記録媒体に記録されてドライブ装置(図示せず)を介して読み込まれるようにしてもよい。また、アプリ等は、プログラム製品であってもよい。   The various programs may be obtained from another server device or the like via the network 3, or may be recorded on a recording medium and read via a drive device (not shown). Is also good. Further, the application or the like may be a program product.

また、記憶部12には、端末装置20を登録する端末情報データベース12a(以下「端末情報DB12a」とする。)と、サーバ装置10を利用するビジネスオーナのテナント名等の情報を記憶するテナント情報データベース12b(以下「テナント情報DB12b」とする。)等が構築されている。   The storage unit 12 also stores a terminal information database 12a (hereinafter, referred to as a “terminal information DB 12a”) for registering the terminal device 20 and tenant information for storing information such as a tenant name of a business owner who uses the server device 10. A database 12b (hereinafter referred to as a “tenant information DB 12b”) and the like are constructed.

なお、これらのデータベースは、同一のデバイスで構成されてもよいし、互いに異なるデバイスで構成されてもよい。また、これらのデータベースは、サーバ装置10と別なサーバに構築されていてもよい。   Note that these databases may be configured by the same device or different devices. Further, these databases may be constructed in a server different from the server device 10.

端末情報DB12aには、サーバ装置10が発行する、端末装置20を識別するためのデバイス識別値が、ユーザ番号等に関連付けられて記憶されている。   In the terminal information DB 12a, a device identification value for identifying the terminal device 20, issued by the server device 10, is stored in association with a user number or the like.

テナント情報DB12bには、ビジネスオーナのテナント名、テナントID、ビジネスオーナのドメイン名等が関連付けられて記憶されている。   In the tenant information DB 12b, the tenant name of the business owner, the tenant ID, the domain name of the business owner, and the like are stored in association with each other.

入出力インターフェース部13は、通信部11および記憶部12とシステム制御部14との間のインターフェース処理を行う。   The input / output interface unit 13 performs an interface process between the communication unit 11, the storage unit 12, and the system control unit 14.

システム制御部14は、CPU(Central Processing Unit)14a、ROM(Read Only Memory)14b、RAM(Random Access Memory)14c等により構成されている。システム制御部14は、CPU14aがROM14bや記憶部12に記憶された各種プログラムを読み出し実行することにより、端末装置を登録および認証する処理等を行う。   The system control unit 14 includes a CPU (Central Processing Unit) 14a, a ROM (Read Only Memory) 14b, a RAM (Random Access Memory) 14c, and the like. The system control unit 14 performs processing for registering and authenticating a terminal device by reading and executing various programs stored in the ROM 14b and the storage unit 12 by the CPU 14a.

(2.2 端末装置20の構成および機能)
次に、端末装置20の構成および機能について、図3を用いて説明する。
(2.2 Configuration and Function of Terminal Device 20)
Next, the configuration and functions of the terminal device 20 will be described with reference to FIG.

図3は、端末装置20の概要構成の一例を示すブロック図である。   FIG. 3 is a block diagram illustrating an example of a schematic configuration of the terminal device 20.

図3に示すように、コンピュータとして機能する端末装置20は、例えば、パーソナルコンピュータである。端末装置20は、通信部21と、記憶部22と、表示部23と、操作部24と、入出力インターフェース部25と、システム制御部26とを備えている。そして、システム制御部26と入出力インターフェース部25とは、システムバス27を介して接続されている。なお、端末装置20は、スマートフォンおよびタブレット等のコンピュータでもよい。   As shown in FIG. 3, the terminal device 20 functioning as a computer is, for example, a personal computer. The terminal device 20 includes a communication unit 21, a storage unit 22, a display unit 23, an operation unit 24, an input / output interface unit 25, and a system control unit 26. The system control unit 26 and the input / output interface unit 25 are connected via a system bus 27. Note that the terminal device 20 may be a computer such as a smartphone and a tablet.

通信部21は、ネットワーク3を通して、サーバ装置10等と通信を制御する。   The communication unit 21 controls communication with the server device 10 and the like via the network 3.

記憶部22は、例えば、ハードディスクドライブ等からなり、オペレーティングシステム、アプリ等のプログラム等を記憶する。   The storage unit 22 includes, for example, a hard disk drive or the like, and stores programs such as an operating system and an application.

表示部23は、例えば、液晶表示素子またはEL(Electro Luminescence)素子等によって構成されている。   The display unit 23 includes, for example, a liquid crystal display element or an EL (Electro Luminescence) element.

操作部24は、例えば、キーボードおよびマウス等によって構成されている。   The operation unit 24 includes, for example, a keyboard and a mouse.

入出力インターフェース部25は、通信部21および記憶部22とシステム制御部26とのインターフェースである。   The input / output interface unit 25 is an interface between the communication unit 21, the storage unit 22, and the system control unit 26.

システム制御部26は、例えば、CPU26aと、ROM26bと、RAM26cとを有する。システム制御部26は、CPU26aが、ROM26bや、RAM26cや、記憶部22に記憶されたアプリ等の各種プログラムを読み出して実行する。   The system control unit 26 has, for example, a CPU 26a, a ROM 26b, and a RAM 26c. The system control unit 26 causes the CPU 26a to read and execute various programs such as applications stored in the ROM 26b, the RAM 26c, and the storage unit 22.

なお、端末装置20は、いわゆる、モノのインターネットの端末でもよく、例えば、RFID(radio frequency identifier)、センサでもよい。この場合、表示部23および操作部24は無くてもよく、記憶部22は、不揮発性のRAM26cでもよい。   The terminal device 20 may be a so-called Internet of Things terminal, for example, an RFID (radio frequency identifier) or a sensor. In this case, the display unit 23 and the operation unit 24 may not be provided, and the storage unit 22 may be a nonvolatile RAM 26c.

[2.認証システムの動作]
次に、本発明の1実施形態に係る認証システム1の動作について図4から図10を用いて説明する。
[2. Operation of authentication system]
Next, the operation of the authentication system 1 according to one embodiment of the present invention will be described with reference to FIGS.

(2.1 端末装置の登録の動作例)
まず、認証システム1における端末装置20の登録の動作例について、図4および図5を用いて説明する。
(2.1 Operation example of terminal device registration)
First, an operation example of registration of the terminal device 20 in the authentication system 1 will be described with reference to FIGS.

図4は、認証システム1における端末装置20の登録の動作例を示すシーケンス図である。図5は、デバイス識別値の一例を示す模式図である。   FIG. 4 is a sequence diagram illustrating an operation example of registration of the terminal device 20 in the authentication system 1. FIG. 5 is a schematic diagram illustrating an example of the device identification value.

図4に示すように、端末装置20が、専用のアプリをダウンロードする(ステップS1)。具体的には、端末装置20のシステム制御部26が、サーバ装置10との通信を確立するための専用のアプリを、サーバ装置10等が運営するウェブサイト等から予めダウンロードする。なお、端末装置20用の専用アプリは、プレインストールされたり、組み込む形で、予め端末装置20に含まれていてもよい。   As shown in FIG. 4, the terminal device 20 downloads a dedicated application (step S1). Specifically, the system control unit 26 of the terminal device 20 downloads in advance a dedicated application for establishing communication with the server device 10 from a website or the like operated by the server device 10 or the like. Note that the dedicated application for the terminal device 20 may be included in the terminal device 20 in advance in a form preinstalled or incorporated.

次に、端末装置20が、暗号化固有IDを生成する(ステップS2)。具体的には、システム制御部26が、専用のアプリの初期設定のために、このアプリを起動させて、暗号化固有IDを生成し、記憶部22に記憶する。更に具体的には、システム制御部26が、暗号化固有ID生成の処理のサブルーチンにおいて、アプリのプログラムにより、端末装置20用の固有IDを生成し、端末装置20の固有の固有情報(デバイス固有情報)から、端末装置20固有の固有鍵を生成し、この固有鍵により固有IDを暗号化して、暗号化固有IDを生成する。なお、生成された固有IDおよび固有鍵は、使用後に廃棄される。また、暗号化固有ID生成の処理のサブルーチンについては、後述する。また、記憶部22の代わりに、不揮発性のRAM26cに、暗号化固有IDが保存されてもよい。   Next, the terminal device 20 generates an encrypted unique ID (Step S2). Specifically, the system control unit 26 activates this application for initial setting of a dedicated application, generates an encrypted unique ID, and stores the generated unique ID in the storage unit 22. More specifically, the system control unit 26 generates a unique ID for the terminal device 20 by a program of an application in a subroutine of the process of generating an encrypted unique ID, and generates unique information of the terminal device 20 (device unique information). ), A unique key unique to the terminal device 20 is generated, the unique ID is encrypted with the unique key, and an encrypted unique ID is generated. Note that the generated unique ID and unique key are discarded after use. Further, a subroutine of the process of generating the encrypted unique ID will be described later. Further, instead of the storage unit 22, the encrypted unique ID may be stored in the nonvolatile RAM 26c.

次に、端末を登録するためにユーザが専用のアプリを選択し、システム制御部26が、専用のアプリを起動させ、端末装置20側の以下の処理を行う。   Next, the user selects a dedicated application to register the terminal, the system control unit 26 activates the dedicated application, and performs the following processing on the terminal device 20 side.

次に、端末装置20が、ユーザからの新規ログインを受け付ける(ステップS3)。具体的には、システム制御部26が、端末装置20をサーバ装置10に登録するための新規ログイン画面を、表示部23に表示させる。ユーザが、新規ログイン画面に、テナント名、ユーザ名、パスワード等を入力する。システム制御部26が、入力されたテナント名、ユーザ名、パスワード等のログイン情報を、端末装置20を新規に登録するための登録要求として、通信部21を介してサーバ装置10に送信する。なお、サーバ装置10と端末装置20との通信は、https(Hypertext Transfer Protocol Secure)等を利用して、暗号化して行われる。   Next, the terminal device 20 receives a new login from the user (step S3). Specifically, the system control unit 26 causes the display unit 23 to display a new login screen for registering the terminal device 20 in the server device 10. A user inputs a tenant name, a user name, a password, and the like on a new login screen. The system control unit 26 transmits the input login information such as the tenant name, the user name, and the password to the server device 10 via the communication unit 21 as a registration request for newly registering the terminal device 20. The communication between the server device 10 and the terminal device 20 is performed by encrypting using https (Hypertext Transfer Protocol Secure) or the like.

次に、サーバ装置10が、ログイン情報を受信する(ステップS4)。具体的には、サーバ装置10のシステム制御部14が、通信部11を介して、端末装置20から、端末の登録要求として、ログイン情報を受信する。   Next, the server device 10 receives the login information (Step S4). Specifically, the system control unit 14 of the server device 10 receives login information from the terminal device 20 via the communication unit 11 as a terminal registration request.

次に、サーバ装置10が、端末装置20を識別するためのデバイス識別値を生成する(ステップS5)。例えば、システム制御部14が、登録要求があった端末装置20用の数値を乱数等により生成し、テナント情報DB12bを参照して、図5に示すように、生成した数値にテナント名に対応した値(例えば、テナントIDやビジネスオーナのドメイン名等)を付け加えて、デバイス識別値(端末装置に割り当てられた第1端末IDの一例)を生成する。なお、デバイス識別値は、端末装置20に一意に割り当てればよいので、テナント名に対応した値を付け加えなくてもよい。   Next, the server device 10 generates a device identification value for identifying the terminal device 20 (Step S5). For example, the system control unit 14 generates a numerical value for the terminal device 20 that has made the registration request by using a random number or the like, and refers to the tenant information DB 12b and associates the generated numerical value with the tenant name as shown in FIG. A device identification value (an example of a first terminal ID assigned to a terminal device) is generated by adding a value (for example, a tenant ID or a domain name of a business owner). Since the device identification value may be uniquely assigned to the terminal device 20, it is not necessary to add a value corresponding to the tenant name.

そして、システム制御部14が、デバイス識別値を発行するため、通信部11を介して、デバイス識別値を端末装置20に送信する。   Then, the system control unit 14 transmits the device identification value to the terminal device 20 via the communication unit 11 to issue the device identification value.

このように、サーバ装置10が、端末装置からの要求により、当該端末装置に割り当てる第1端末IDを生成して、送信する第1端末ID送信手段の一例として機能する。   As described above, the server device 10 functions as an example of a first terminal ID transmission unit that generates and transmits a first terminal ID to be assigned to the terminal device in response to a request from the terminal device.

次に、端末装置20が、デバイス識別値を受信する(ステップS6)。具体的には、システム制御部26が、通信部21を介して、発行されたデバイス識別値を、サーバ装置10から受信する。   Next, the terminal device 20 receives the device identification value (Step S6). Specifically, the system control unit 26 receives the issued device identification value from the server device 10 via the communication unit 21.

次に、端末装置20が、通信確立時の端末を認証するために使用される認証鍵を生成する(ステップS7)。具体的には、システム制御部26が、認証鍵生成の処理のサブルーチンにおいて、記憶部22から、暗号化固有IDを読み出し、再度、デバイス固有情報から固有鍵を生成し、固有鍵により暗号化固有IDから固有IDを復号し、復号された固有IDから認証鍵を生成する。   Next, the terminal device 20 generates an authentication key used to authenticate the terminal at the time of establishing the communication (step S7). Specifically, the system control unit 26 reads the encryption unique ID from the storage unit 22 in the subroutine of the authentication key generation process, generates the unique key again from the device unique information, The unique ID is decrypted from the ID, and an authentication key is generated from the decrypted unique ID.

このように、端末装置20のアプリが、前記復号された固有IDから前記端末装置の認証用の認証鍵を生成する認証鍵生成手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of an authentication key generation unit that generates an authentication key for authentication of the terminal device from the decrypted unique ID.

ここで、この認証鍵は、例えば、暗号鍵と復号鍵とが同じ共通鍵である。暗号方式は、ブロック暗号やストリーム暗号等の共通鍵暗号である。認証鍵の暗号方式と、固有鍵の暗号方式とは、同じでも異なってもよい。なお、復号された固有IDおよび生成された固有鍵は、使用後に廃棄される。また、認証鍵生成の処理のサブルーチンについては、後述する。   Here, the authentication key is, for example, a common key in which the encryption key and the decryption key are the same. The encryption method is a common key encryption such as a block encryption or a stream encryption. The encryption method of the authentication key and the encryption method of the unique key may be the same or different. Note that the decrypted unique ID and the generated unique key are discarded after use. The subroutine of the authentication key generation process will be described later.

次に、端末装置20が、通信確立時の検証のために使用されるデバイス検証値を生成する(ステップS8)。具体的には、システム制御部26が、デバイス検証値生成の処理のサブルーチンにおいて、認証鍵による暗号処理により、デバイス識別値から暗号化データを生成し、認証鍵を廃棄し、暗号化データにデバイス識別値を含めて、デバイス検証値(第2端末IDの一例)を生成する。システム制御部26が、通信部21を介して、生成したデバイス検証値を、サーバ装置10に送信する。なお、デバイス検証値生成の処理のサブルーチンについては、後述する。   Next, the terminal device 20 generates a device verification value used for verification at the time of establishing communication (Step S8). Specifically, in the subroutine of the device verification value generation process, the system control unit 26 generates encrypted data from the device identification value by encryption processing using the authentication key, discards the authentication key, and sets the device data in the encrypted data. A device verification value (an example of the second terminal ID) is generated including the identification value. The system control unit 26 transmits the generated device verification value to the server device 10 via the communication unit 21. Note that the subroutine of the device verification value generation processing will be described later.

このように、端末装置20のアプリが、前記暗号化データに、前記第1端末IDを含めた、第2端末IDを生成する第2端末ID生成手段の一例として機能する。端末装置20のアプリが、前記第2端末IDを前記サーバ装置に送信する第2端末ID送信手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of a second terminal ID generation unit that generates the second terminal ID including the first terminal ID in the encrypted data. The application of the terminal device 20 functions as an example of a second terminal ID transmission unit that transmits the second terminal ID to the server device.

次に、サーバ装置10が、デバイス検証値を受信する(ステップS9)。具体的には、システム制御部14が、通信部11を介して、デバイス検証値を端末装置20から受信する。   Next, the server device 10 receives the device verification value (Step S9). Specifically, the system control unit 14 receives the device verification value from the terminal device 20 via the communication unit 11.

このように、サーバ装置10が、前記端末装置の固有の固有IDから生成された前記端末装置の認証用の認証鍵による暗号処理により、前記第1端末IDから生成された暗号化データに、前記第1端末IDを含めた第2端末IDを、前記端末装置から受信する第2端末ID受信手段の一例として機能する。   As described above, the server device 10 performs the encryption process using the authentication key for authentication of the terminal device generated from the unique ID unique to the terminal device, and adds the encrypted data generated from the first terminal ID to the encrypted data. The terminal functions as an example of a second terminal ID receiving unit that receives the second terminal ID including the first terminal ID from the terminal device.

次に、サーバ装置10が、デバイス識別値を含むか否かを判定する(ステップS10)。具体的には、システム制御部14が、受信したデバイス検証値に中に、デバイス識別値が含まれるか否かを判定する。例えば、システム制御部14が、デバイス検証値の中に含まれたデバイス識別値を抽出し、抽出したデバイス識別値が、記憶部12の端末情報DB12aを参照して、正しいか否かを判定する。   Next, the server device 10 determines whether or not a device identification value is included (Step S10). Specifically, the system control unit 14 determines whether or not the received device verification value includes a device identification value. For example, the system control unit 14 extracts a device identification value included in the device verification value, and determines whether the extracted device identification value is correct with reference to the terminal information DB 12a of the storage unit 12. .

デバイス識別値を含む場合(ステップS10;YES)、サーバ装置10が、証明書を発行する(ステップS11)。具体的には、システム制御部14が、公開鍵暗号標準(例えば、PKCS(Public-Key Cryptography Standards)#12等)に従った証明書(端末証明書の一例)を生成して、端末装置20に送信する。この証明書は、デバイス検証値、端末装置20用の公開鍵および秘密鍵、サーバ装置10が発行したことを示す情報を含むクライアント証明書である。端末装置20用の公開鍵および秘密鍵は、サーバ装置10等のサーバ側で生成される。   If it contains the device identification value (step S10; YES), the server device 10 issues a certificate (step S11). Specifically, the system control unit 14 generates a certificate (an example of a terminal certificate) in accordance with a public key encryption standard (for example, PKCS (Public-Key Cryptography Standards) # 12 or the like), and Send to This certificate is a client certificate including a device verification value, a public key and a secret key for the terminal device 20, and information indicating that the server device 10 has issued the certificate. The public key and the secret key for the terminal device 20 are generated on the server side such as the server device 10.

このように、サーバ装置10が、前記受信した第2端末IDから前記第1端末IDが抽出された場合に、前記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記端末装置に送信する端末証明書送信手段の一例として機能する。   In this way, when the first terminal ID is extracted from the received second terminal ID, the server device 10 sends a terminal certificate that certifies the terminal device, including the second terminal ID, to the terminal device. It functions as an example of a terminal certificate transmitting unit that transmits the terminal certificate to the terminal device.

正式のデバイス識別値を含まない場合(ステップS10;NO)、登録は失敗し、サーバ装置10は処理を終了する。   If the formal device identification value is not included (step S10; NO), the registration fails, and the server device 10 ends the process.

次に、端末装置20が、証明書を受信する(ステップS12)。具体的には、システム制御部26が、通信部21を介して、証明書を受信する。システム制御部26が、受信した証明書を記憶部22に記憶する。通信を確立するための専用のアプリにより、受信した証明書が記憶部22に記憶される。なお、不揮発性のRAM26cに、証明書が保存されてもよい。また、システム制御部26が、受信した証明書から、端末装置20用の秘密鍵を取り除き、秘密鍵を取り除いた証明書と、秘密鍵とを、記憶部22に記憶してもよい。   Next, the terminal device 20 receives the certificate (step S12). Specifically, the system control unit 26 receives the certificate via the communication unit 21. The system control unit 26 stores the received certificate in the storage unit 22. The received certificate is stored in the storage unit 22 by a dedicated application for establishing communication. Note that the certificate may be stored in the nonvolatile RAM 26c. Further, the system control unit 26 may remove the secret key for the terminal device 20 from the received certificate, and store the certificate with the secret key removed and the secret key in the storage unit 22.

このように、端末装置20のアプリが、前記サーバ装置において前記第2端末IDから前記第1端末IDが抽出された場合に、前記サーバ装置から、前記第2端末IDを含んだ、前記端末装置を証明する端末証明書を受信して記憶する端末証明書記憶手段の一例として機能する。端末装置20のアプリが、前記サーバ装置で生成された前記端末装置用の秘密鍵および公開鍵を含んだ前記端末証明書を受信する端末証明書記憶手段の一例として機能する。   As described above, when the application of the terminal device 20 extracts the first terminal ID from the second terminal ID in the server device, the terminal device includes the second terminal ID from the server device. Function as an example of a terminal certificate storage unit that receives and stores a terminal certificate that certifies the terminal certificate. The application of the terminal device 20 functions as an example of a terminal certificate storage unit that receives the terminal certificate including the secret key and the public key for the terminal device generated by the server device.

次に、サーバ装置10が、証明書を破棄する(ステップS13)。具体的には、証明書を端末装置20に送信した後、システム制御部14が、サーバ装置10から証明書のデータを消去する。すなわち、クライアントの端末装置20が、証明書をダウンロードしたら、サーバ装置10が、サーバ装置10から証明書を破棄する。   Next, the server device 10 destroys the certificate (step S13). Specifically, after transmitting the certificate to the terminal device 20, the system control unit 14 deletes the certificate data from the server device 10. That is, when the terminal device 20 of the client downloads the certificate, the server device 10 discards the certificate from the server device 10.

(2.2 暗号化固有IDの生成のサブルーチン)
次に、暗号化固有IDの生成のサブルーチンについて図6を用いて説明する。
(2.2 Subroutine for generating encryption unique ID)
Next, a subroutine for generating an encrypted unique ID will be described with reference to FIG.

図6は、暗号化固有IDの生成のサブルーチンを示すフローチャートである。   FIG. 6 is a flowchart showing a subroutine for generating an encryption unique ID.

図6に示すように、端末装置20が、デバイスの固有IDを生成する(ステップS15)。具体的には、システム制御部26が、乱数を発生して、デバイスの固有IDを生成する。例えば、起動された端末登録のアプリが乱数を発生する。   As shown in FIG. 6, the terminal device 20 generates a unique ID of the device (Step S15). Specifically, the system control unit 26 generates a random number and generates a unique ID of the device. For example, the activated terminal registration application generates a random number.

このように、端末装置20のアプリが、端末装置の固有の固有IDを生成する固有ID生成手段の一例として機能する。   Thus, the application of the terminal device 20 functions as an example of a unique ID generation unit that generates a unique ID unique to the terminal device.

次に、端末装置20が、デバイス固有情報を取得する(ステップS16)。具体的には、システム制御部26が、MACアドレス(Media Access Control address)、携帯電話番号等の各端末装置20に固有に割り当てているデバイス固有情報を、端末装置20の不揮発メモリ等から取得する。   Next, the terminal device 20 acquires the device unique information (Step S16). Specifically, the system control unit 26 acquires device unique information uniquely assigned to each terminal device 20 such as a MAC address (Media Access Control address) and a mobile phone number from a non-volatile memory of the terminal device 20 or the like. .

次に、端末装置20が、デバイス固有情報から固有鍵を生成する(ステップS17)。具体的には、システム制御部26が、デバイス固有情報をハッシュ関数に入力して、ハッシュ値を算出し、このハッシュ値を固有鍵とする。   Next, the terminal device 20 generates a unique key from the device unique information (Step S17). Specifically, the system control unit 26 inputs the device unique information to a hash function, calculates a hash value, and uses the hash value as a unique key.

このように、端末装置20のアプリが、前記端末装置の固有の固有情報から固有鍵を生成する固有鍵生成手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of a unique key generation unit that generates a unique key from unique information unique to the terminal device.

次に、端末装置20が、固有鍵により固有IDを暗号化する(ステップS18)。具体的には、システム制御部26が、デバイス固有情報のハッシュ値である固有鍵により、生成された固有IDを暗号化する。システム制御部26が、暗号化された固有ID(暗号化固有ID)を記憶部22に記憶する。ここで、この固有鍵は、例えば、暗号鍵と復号鍵とが同じ共通鍵である。暗号方式は、ブロック暗号やストリーム暗号等の共通鍵暗号である。   Next, the terminal device 20 encrypts the unique ID using the unique key (step S18). Specifically, the system control unit 26 encrypts the generated unique ID using a unique key that is a hash value of the device unique information. The system control unit 26 stores the encrypted unique ID (encrypted unique ID) in the storage unit 22. Here, the unique key is, for example, a common key in which the encryption key and the decryption key are the same. The encryption method is a common key encryption such as a block encryption or a stream encryption.

このように、端末装置20のアプリが、前記固有鍵により、前記固有IDを暗号化して、暗号化固有IDを生成する固有ID暗号化手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of a unique ID encrypting unit that encrypts the unique ID using the unique key and generates an encrypted unique ID.

次に、端末装置20が、固有IDおよび固有鍵を廃棄する(ステップS19)。具体的には、システム制御部26が、固有IDおよび固有鍵を端末装置20から消去する。固有鍵により固有IDを暗号化することにより、固有IDおよび固有鍵が使用されて、不要になり、固有IDおよび固有鍵が消去される。   Next, the terminal device 20 discards the unique ID and the unique key (Step S19). Specifically, the system control unit 26 deletes the unique ID and the unique key from the terminal device 20. By encrypting the unique ID with the unique key, the unique ID and the unique key are used and become unnecessary, and the unique ID and the unique key are erased.

このように、端末装置20のアプリが、前記固有鍵を使用した後に、前記固有鍵を消去する固有鍵消去手段の一例として機能する。端末装置20のアプリが、前記固有IDを使用した後に、前記固有IDを消去する固有ID消去手段の一例として機能する。   In this way, the application of the terminal device 20 functions as an example of a unique key deleting unit that deletes the unique key after using the unique key. The application of the terminal device 20 functions as an example of a unique ID erasing unit that erases the unique ID after using the unique ID.

(2.3 認証鍵の生成のサブルーチン)
次に、暗号化固有IDの生成のサブルーチンについて図7を用いて説明する。
(2.3 Subroutine for generating authentication key)
Next, a subroutine for generating an encrypted unique ID will be described with reference to FIG.

図7は、認証鍵の生成のサブルーチンを示すフローチャートである。   FIG. 7 is a flowchart showing a subroutine for generating an authentication key.

図7に示すように、端末装置20が、暗号化固有IDを取得する(ステップS20)。具体的には、端末装置20のシステム制御部26が、記憶部22等から、暗号化固有IDを読み出す。   As shown in FIG. 7, the terminal device 20 acquires an encryption unique ID (Step S20). Specifically, the system control unit 26 of the terminal device 20 reads the encryption unique ID from the storage unit 22 or the like.

次に、端末装置20が、ステップS16のように、デバイス固有情報を取得する(ステップS21)。   Next, the terminal device 20 acquires device specific information as in step S16 (step S21).

次に、端末装置20が、ステップS17のように、デバイス固有情報から固有鍵を生成する(ステップS22)。   Next, the terminal device 20 generates a unique key from the device unique information as in step S17 (step S22).

このように、端末装置20のアプリが、前記端末装置の固有の固有情報から固有鍵を生成する固有鍵生成手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of a unique key generation unit that generates a unique key from unique information unique to the terminal device.

次に、端末装置20が、固有鍵により固有IDを復号する(ステップS23)。具体的には、システム制御部26が、読み出した暗号化固有IDを、共通鍵である固有鍵により復号して、固有IDを生成する。   Next, the terminal device 20 decrypts the unique ID using the unique key (step S23). Specifically, the system control unit 26 generates the unique ID by decrypting the read encrypted unique ID using the unique key that is a common key.

このように、端末装置20のアプリが、前記固有情報から生成された前記固有鍵により、前記暗号化固有IDを復号する固有ID復号手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of a unique ID decrypting unit that decrypts the encrypted unique ID using the unique key generated from the unique information.

次に、端末装置20が、固有鍵を廃棄する(ステップS24)。具体的には、システム制御部26が、固有IDを復号するために使用した固有鍵を、端末装置20から消去する。   Next, the terminal device 20 discards the unique key (Step S24). Specifically, the system control unit 26 deletes the unique key used to decrypt the unique ID from the terminal device 20.

このように、端末装置20のアプリが、前記固有鍵を使用した後に、前記固有鍵を消去する固有鍵消去手段の一例として機能する。   In this way, the application of the terminal device 20 functions as an example of a unique key deleting unit that deletes the unique key after using the unique key.

次に、端末装置20が、固有IDから認証鍵を生成する(ステップS25)。具体的には、システム制御部26が、復号した固有IDをハッシュ関数に入力して、ハッシュ値を算出し、このハッシュ値を認証鍵とする。そして、システム制御部26が、生成した認証鍵を記憶部22に記憶する。   Next, the terminal device 20 generates an authentication key from the unique ID (Step S25). Specifically, the system control unit 26 inputs the decrypted unique ID to a hash function, calculates a hash value, and uses the hash value as an authentication key. Then, the system control unit 26 stores the generated authentication key in the storage unit 22.

このように、端末装置20のアプリが、前記復号された固有IDから前記端末装置の認証用の認証鍵を生成する認証鍵生成手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of an authentication key generation unit that generates an authentication key for authentication of the terminal device from the decrypted unique ID.

次に、端末装置20が、固有IDを廃棄する(ステップS26)。具体的には、システム制御部26が、認証鍵を生成するために使用した固有IDを、端末装置20から消去する。   Next, the terminal device 20 discards the unique ID (Step S26). Specifically, the system control unit 26 deletes the unique ID used to generate the authentication key from the terminal device 20.

このように、端末装置20のアプリが、前記固有IDを使用した後に、前記固有IDを消去する固有ID消去手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of the unique ID erasing unit that erases the unique ID after using the unique ID.

(2.4 デバイス検証値の生成のサブルーチン)
次に、デバイス検証値の生成のサブルーチンについて図8から図10を用いて説明する。
(2.4 Subroutine for generating device verification value)
Next, a subroutine for generating a device verification value will be described with reference to FIGS.

図8は、デバイス検証値の生成のサブルーチンを示すフローチャートである。図9は、暗号化データの生成の一例を示す模式図である。図10は、デバイス検証値の構成例を示す模式図である。   FIG. 8 is a flowchart showing a subroutine for generating a device verification value. FIG. 9 is a schematic diagram illustrating an example of generating encrypted data. FIG. 10 is a schematic diagram illustrating a configuration example of a device verification value.

図8に示すように、端末装置20が、認証鍵による暗号処理により、デバイス識別値から暗号化データを生成する(ステップS27)。具体的には、端末装置20のシステム制御部26が、図9に示すように、デバイス識別値(第1端末ID)を認証鍵により暗号化して、暗号化データを生成する。そして、暗号化データを生成において認証鍵を使用した後、システム制御部26が、端末装置20から認証鍵を消去する。   As shown in FIG. 8, the terminal device 20 generates encrypted data from the device identification value by performing an encryption process using an authentication key (step S27). Specifically, as shown in FIG. 9, the system control unit 26 of the terminal device 20 encrypts the device identification value (first terminal ID) using the authentication key to generate encrypted data. Then, after using the authentication key in generating the encrypted data, the system control unit 26 deletes the authentication key from the terminal device 20.

このように、端末装置20のアプリが、前記認証鍵による暗号処理により、前記第1端末IDから暗号化データを生成する暗号データ生成手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of the encrypted data generation unit that generates the encrypted data from the first terminal ID by performing the encryption process using the authentication key.

なお、デバイス識別値を所定の規則により変形して、認証鍵により暗号化処理を行ってもよい。例えば、デバイス識別値の変形の仕方として、図9に示すように、デバイス識別値における値の順序を逆順にした値を、認証鍵により暗号化してもよいし、デバイス識別値を区切って入れ替えてもよい。   Note that the device identification value may be modified according to a predetermined rule, and encryption processing may be performed using an authentication key. For example, as a method of transforming the device identification value, as shown in FIG. 9, a value obtained by reversing the order of the device identification value may be encrypted with an authentication key, or the device identification value may be divided and replaced. Is also good.

次に、端末装置20が、認証鍵を廃棄する(ステップS28)。具体的には、システム制御部26が、端末装置20から認証鍵を消去する。   Next, the terminal device 20 discards the authentication key (Step S28). Specifically, the system control unit 26 deletes the authentication key from the terminal device 20.

このように、端末装置20のアプリが、前記認証鍵を使用した後に、前記認証鍵を消去する認証鍵消去手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of an authentication key deleting unit that deletes the authentication key after using the authentication key.

次に、端末装置20が、暗号化データにデバイス識別値を含ませる(ステップS29)。具体的には、システム制御部26が、図10(A)に示すように、デバイス識別値を暗号化データの末尾に連結させて、デバイス検証値を生成する。ステップS10において、システム制御部26が、デバイス検証値の末尾から所定のビット数を切り出し、デバイス識別値を抽出する。デバイス検証値にデバイス識別値を含ませることにより、サーバ装置10がデバイス検証値に含まれたデバイス識別値を取り出して検証することで、端末装置20からのデータと確認できる。   Next, the terminal device 20 includes a device identification value in the encrypted data (step S29). Specifically, as shown in FIG. 10A, the system control unit 26 links the device identification value to the end of the encrypted data to generate a device verification value. In step S10, the system control unit 26 extracts a predetermined number of bits from the end of the device verification value and extracts a device identification value. By including the device identification value in the device verification value, the server device 10 can extract and verify the device identification value included in the device verification value, thereby confirming the data from the terminal device 20.

なお、システム制御部26が、図10(B)に示すように、暗号化データの先頭にデバイス識別値を連結してもよい。この場合、ステップS10において、システム制御部26が、デバイス検証値の先頭から所定のビット数を切り出し、デバイス識別値を抽出する。   Note that the system control unit 26 may link the device identification value to the head of the encrypted data as shown in FIG. In this case, in step S10, the system control unit 26 cuts out a predetermined number of bits from the head of the device verification value and extracts a device identification value.

また、システム制御部26が、暗号化データにデバイス識別値を混ぜてもよい。例えば、システム制御部26が、図10(C)に示すように、デバイス識別値を2つに分解して、暗号化データの先頭および末尾に連結する。この場合、ステップS10において、システム制御部26が、デバイス検証値の先頭および末尾から所定のビット数を取り出し、連結されてデバイス識別値を抽出する。また、図10(D)に示すように、システム制御部26が、デバイス識別値を3つに分解して、暗号化データの所定の位置に、分解されたデバイス識別値をそれぞれ入れ込む。この場合、ステップS10において、システム制御部26が、デバイス検証値の所定の位置から、分解されたデバイス識別値を取り出し、連結されてデバイス識別値を抽出する。   Further, the system control unit 26 may mix the device identification value with the encrypted data. For example, as shown in FIG. 10 (C), the system control unit 26 decomposes the device identification value into two and connects them to the beginning and end of the encrypted data. In this case, in step S10, the system control unit 26 extracts a predetermined number of bits from the beginning and end of the device verification value, and concatenates them to extract a device identification value. Further, as shown in FIG. 10D, the system control unit 26 decomposes the device identification value into three, and inserts the decomposed device identification value into a predetermined position of the encrypted data. In this case, in step S10, the system control unit 26 extracts the decomposed device identification value from a predetermined position of the device verification value, and concatenates and extracts the device identification value.

このように、端末装置20のアプリが、前記暗号化データに、前記第1端末IDを含めた、第2端末IDを生成する第2端末ID生成手段の一例として機能する。端末装置20のアプリが、前記暗号化データに、前記第1端末IDを混ぜて、前記第2端末IDを生成する第2端末ID生成手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of a second terminal ID generation unit that generates the second terminal ID including the first terminal ID in the encrypted data. The application of the terminal device 20 functions as an example of a second terminal ID generation unit that generates the second terminal ID by mixing the first terminal ID with the encrypted data.

(2.5 端末装置の認証の動作例)
次に、認証システム1における端末装置の認証の動作例について、図11を用いて説明する。
(2.5 Operation example of terminal device authentication)
Next, an operation example of authentication of a terminal device in the authentication system 1 will be described with reference to FIG.

図11は、認証システム1における端末装置20の認証の動作例を示すシーケンス図である。   FIG. 11 is a sequence diagram illustrating an operation example of authentication of the terminal device 20 in the authentication system 1.

まず、端末装置20のシステム制御部26が、サーバ装置10との通信を確立するための専用のアプリを起動させ、端末装置20側の以下の処理を行う。   First, the system control unit 26 of the terminal device 20 activates a dedicated application for establishing communication with the server device 10 and performs the following processing on the terminal device 20 side.

図11に示すように、端末装置20が、通信路の確立を要求する(ステップS30)。具体的には、システム制御部26が、通信部21を介して、サーバ装置10に通信路の確立の要求を送信する。   As shown in FIG. 11, the terminal device 20 requests establishment of a communication channel (step S30). Specifically, the system control unit 26 transmits a request for establishing a communication path to the server device 10 via the communication unit 21.

次に、サーバ装置10が、要求を受信する(ステップS31)。具体的には、サーバ装置10のシステム制御部14が、通信部11を介して、端末装置20から、通信路の確立の要求を受信する。   Next, the server device 10 receives the request (Step S31). Specifically, the system control unit 14 of the server device 10 receives a request for establishing a communication path from the terminal device 20 via the communication unit 11.

次に、サーバ装置10が、端末認証情報を要求する(ステップS32)。具体的には、システム制御部14が、通信部11を介して、端末装置20に対して発行していた証明書および認証鍵を送付するように要求を、端末装置20に送信する。   Next, the server device 10 requests terminal authentication information (step S32). Specifically, the system control unit 14 transmits to the terminal device 20 via the communication unit 11 a request to send the certificate and the authentication key issued to the terminal device 20.

次に、端末装置20が、認証鍵を生成する(ステップS33)。具体的には、システム制御部26が、ステップS7のように、認証鍵を生成のサブルーチンにより認証鍵を生成する。   Next, the terminal device 20 generates an authentication key (Step S33). Specifically, the system control unit 26 generates an authentication key by a subroutine for generating an authentication key as in step S7.

このように、端末装置20のアプリが、前記復号された固有IDから前記端末装置の認証用の認証鍵を生成する認証鍵生成手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of an authentication key generation unit that generates an authentication key for authentication of the terminal device from the decrypted unique ID.

次に、端末装置20が、証明書および認証鍵を送付し、送信後に、認証鍵を廃棄する(ステップS34)。具体的には、システム制御部26が、記憶部22から読み出した証明書および生成した認証鍵を、通信部21を介して、サーバ装置10に送信する。そして、認証鍵を送付した後、システム制御部26が、端末装置20から認証鍵を消去する。   Next, the terminal device 20 sends the certificate and the authentication key, and after the transmission, discards the authentication key (step S34). Specifically, the system control unit 26 transmits the certificate read from the storage unit 22 and the generated authentication key to the server device 10 via the communication unit 21. Then, after sending the authentication key, the system control unit 26 deletes the authentication key from the terminal device 20.

なお、サーバ装置10に送信する証明書には、端末装置20用の秘密鍵が含まれない。証明書に端末装置20用の秘密鍵が含まれる場合は、システム制御部26が、証明書から秘密鍵を取り除き、単なる公開鍵証明書にした後に、この証明書を、サーバ装置10に送信する。   The certificate transmitted to the server device 10 does not include the secret key for the terminal device 20. When the certificate includes the private key for the terminal device 20, the system control unit 26 removes the private key from the certificate, makes the certificate a simple public key certificate, and transmits the certificate to the server device 10. .

このように、端末装置20のアプリが、端末認証のため、前記認証鍵生成手段により生成された前記認証鍵および前記端末証明書を前記サーバ装置に送信する端末証明書送信手段の一例として機能する。端末装置20のアプリが、前記認証鍵を使用した後に、前記認証鍵を消去する認証鍵消去手段の一例として機能する。端末装置20のアプリが、前記端末装置用の秘密鍵を取り除いた前記端末証明書を前記サーバ装置に送信する端末証明書送信手段の一例として機能する。   As described above, the application of the terminal device 20 functions as an example of a terminal certificate transmitting unit that transmits the authentication key and the terminal certificate generated by the authentication key generating unit to the server device for terminal authentication. . The application of the terminal device 20 functions as an example of an authentication key deleting unit that deletes the authentication key after using the authentication key. The application of the terminal device 20 functions as an example of a terminal certificate transmitting unit that transmits the terminal certificate from which the secret key for the terminal device has been removed to the server device.

次に、サーバ装置10が、証明書が正しいか否かを判定する(ステップS35)。具体的には、システム制御部14が、端末装置20から、証明書および認証鍵を受信する。システム制御部14が、受信した証明書から、発行したことを示す情報を抽出し、情報が、サーバ装置10が発行したものか否かを判定する。   Next, the server device 10 determines whether the certificate is correct (Step S35). Specifically, the system control unit 14 receives a certificate and an authentication key from the terminal device 20. The system control unit 14 extracts information indicating the issuance from the received certificate, and determines whether or not the information is issued by the server device 10.

このように、サーバ装置10が、端末認証のため、前記端末証明書および前記認証鍵を前記端末装置から受信する端末証明書受信手段の一例として機能する。   As described above, the server device 10 functions as an example of a terminal certificate receiving unit that receives the terminal certificate and the authentication key from the terminal device for terminal authentication.

証明書が正しい場合(ステップS35;YES)、サーバ装置10が、デバイス検証値を抽出する(ステップS36)。具体的には、システム制御部14が、証明書内のデバイス検証値を抽出する。   If the certificate is correct (step S35; YES), the server device 10 extracts a device verification value (step S36). Specifically, the system control unit 14 extracts a device verification value in the certificate.

証明書が正しくない場合(ステップS35;NO)、サーバ装置10が、通信の確立が失敗したとする。   If the certificate is incorrect (step S35; NO), it is assumed that the server device 10 has failed in establishing communication.

次に、サーバ装置10が、デバイス識別値を復号する(ステップS37)。具体的には、システム制御部14が、デバイス識別値の復号のサブルーチンにおいて、受信した認証鍵により、デバイス検証値からデバイス識別値を復号する。なお、デバイス識別値の復号のサブルーチンについては、後述する。   Next, the server device 10 decrypts the device identification value (Step S37). Specifically, in the subroutine for decrypting the device identification value, the system control unit 14 decrypts the device identification value from the device verification value using the received authentication key. The subroutine for decoding the device identification value will be described later.

次に、サーバ装置10が、デバイス識別値か否かを判定する(ステップS38)。具体的には、システム制御部14が、認証鍵により復号したデバイス識別値が、記憶部12の端末情報DB12aを参照して、正しいか否かを判定する。   Next, the server device 10 determines whether or not the value is the device identification value (Step S38). Specifically, the system control unit 14 determines whether or not the device identification value decrypted with the authentication key is correct with reference to the terminal information DB 12a of the storage unit 12.

このように、サーバ装置10が、前記抽出した第1端末IDが正しいか否かを判定する判定手段の一例として機能する。   As described above, the server device 10 functions as an example of a determination unit that determines whether the extracted first terminal ID is correct.

デバイス識別値が正しい場合(ステップS38;YES)、サーバ装置10が、通信用の暗号鍵を生成する(ステップS39)。具体的には、システム制御部14が、乱数等から、端末装置20用の通信用の暗号鍵を生成する。   If the device identification value is correct (step S38; YES), the server device 10 generates an encryption key for communication (step S39). Specifically, the system control unit 14 generates a communication encryption key for the terminal device 20 from a random number or the like.

次に、サーバ装置10が、通信用の暗号鍵を暗号化する(ステップS40)。具体的には、システム制御部14が、証明書に含まれる端末装置20用の公開鍵で通信用の暗号鍵を暗号化する。システム制御部14が、通信部11を介して、端末装置20に、端末認証が完了した旨の通知情報および暗号化された通信用の暗号鍵を送信する。   Next, the server device 10 encrypts the communication encryption key (step S40). Specifically, the system control unit 14 encrypts the communication encryption key with the public key for the terminal device 20 included in the certificate. The system control unit 14 transmits, to the terminal device 20 via the communication unit 11, notification information indicating that the terminal authentication has been completed, and the encrypted communication encryption key.

次に、端末装置20が、通信用の暗号鍵を復号する(ステップS41)。具体的には、システム制御部26が、通信部21を介して、端末認証が完了した旨の通知情報および暗号化された通信用の暗号鍵を受信する。システム制御部26が、証明書に含まれる端末装置20用の秘密鍵で通信用の暗号鍵を復号する。   Next, the terminal device 20 decrypts the communication encryption key (step S41). Specifically, the system control unit 26 receives, via the communication unit 21, notification information indicating that terminal authentication has been completed and an encrypted communication encryption key. The system control unit 26 decrypts the communication encryption key with the secret key for the terminal device 20 included in the certificate.

このように、端末装置20のアプリが、前記サーバ装置において、前記端末証明書に含まれる第2端末IDから前記暗号化データが抽出され、当該暗号化データから、前記サーバ装置が受信した前記認証鍵による復号処理により抽出された第1端末IDが正しいと判定された場合に、前記サーバ装置から通信用の通信鍵を受信する通信鍵受信手段の一例として機能する。端末装置20のアプリが、前記端末装置用の公開鍵により暗号化された前記通信鍵を受信する通信鍵受信手段の一例として機能する。   As described above, the application of the terminal device 20 determines that the encrypted data is extracted from the second terminal ID included in the terminal certificate in the server device, and the authentication data received by the server device is obtained from the encrypted data. If it is determined that the first terminal ID extracted by the key decryption process is correct, it functions as an example of a communication key receiving unit that receives a communication key for communication from the server device. The application of the terminal device 20 functions as an example of a communication key receiving unit that receives the communication key encrypted with the public key for the terminal device.

次に、端末装置20とサーバ装置10とが、確立した通信路において、安全な通信を行う。データを送信する場合は、通信用の暗号鍵を用いて、データを暗号化して通信を行う。   Next, the terminal device 20 and the server device 10 perform secure communication on the established communication path. When transmitting data, communication is performed by encrypting the data using an encryption key for communication.

セキュリティを高めるため、一定のセッションが終了したり、所定の時間が経過したり場合、確立した通信路を終了して、通信用の暗号鍵を、端末装置20およびサーバ装置10から消去する。   In order to enhance security, when a certain session ends or a predetermined time elapses, the established communication path is terminated, and the communication encryption key is deleted from the terminal device 20 and the server device 10.

新たに通信路を確立する場合、認証システム1は、新たにステップS30からステップS41の処理を行い、新たな通信路を確立し、新たな通信用の暗号鍵により通信を行う。   When establishing a new communication path, the authentication system 1 newly performs the processing from step S30 to step S41, establishes a new communication path, and performs communication using a new communication encryption key.

(2.6 デバイス識別値の復号のサブルーチン)
次に、デバイス識別値の復号のサブルーチンについて、図12を用いて説明する。
(2.6 Device identification value decoding subroutine)
Next, a subroutine for decoding the device identification value will be described with reference to FIG.

図12は、デバイス識別値の復号のサブルーチンを示すフローチャートである。   FIG. 12 is a flowchart showing a subroutine for decoding the device identification value.

図12に示すように、サーバ装置10が、デバイス検証値から暗号化データを抽出する(ステップS45)。具体的には、サーバ装置10のシステム制御部14が、デバイス検証値の構成に基づき、デバイス検証値から暗号化データを抽出する。   As shown in FIG. 12, the server device 10 extracts the encrypted data from the device verification value (Step S45). Specifically, the system control unit 14 of the server device 10 extracts the encrypted data from the device verification value based on the configuration of the device verification value.

例えば、図10(A)に示すように、デバイス検証値の先頭に暗号化データが連結されている場合、システム制御部14が、デバイス検証値の先頭から暗号化データを抽出する。   For example, as shown in FIG. 10A, when encrypted data is linked to the head of the device verification value, the system control unit 14 extracts the encrypted data from the head of the device verification value.

図10(B)に示すように、デバイス検証値の末尾に暗号化データが連結されている場合、システム制御部14が、デバイス検証値におけるデバイス識別値以降のデータから、暗号化データを抽出する。   As shown in FIG. 10B, when the encrypted data is linked to the end of the device verification value, the system control unit 14 extracts the encrypted data from the data after the device identification value in the device verification value. .

図10(C)に示すように、デバイス検証値の途中に暗号化データが含まれる場合、システム制御部14が、デバイス検証値における暗号化データが含まれる部分から、暗号化データを抽出する。   As shown in FIG. 10C, when the encrypted data is included in the middle of the device verification value, the system control unit 14 extracts the encrypted data from the portion of the device verification value that includes the encrypted data.

図10(D)に示すように、デバイス検証値の中に、分散して含まれる場合、システム制御部14が、デバイス検証値における暗号化データの部分を各々取り出し、つなぎ合わせて暗号化データを抽出する。   As shown in FIG. 10 (D), if the device verification values are distributed and included, the system control unit 14 takes out the encrypted data portions in the device verification values and joins them together to convert the encrypted data. Extract.

なお、デバイス検証値における暗号化データの位置(例えば、先頭からxxビット目、yyビット目からzzビット目)の情報は、サーバ装置10側と、端末装置20側(例えば、端末装置20用の専用アプリ)とで、予め共有しておく。   The information on the position of the encrypted data in the device verification value (for example, the xxth bit from the beginning and the yzth bit to the zzth bit) is stored on the server device 10 side and the terminal device 20 side (for example, for the terminal device 20). (Dedicated application) and share in advance.

これらのように、サーバ装置10が、前記端末証明書に含まれる第2端末IDから前記暗号化データを抽出する暗号化データ抽出手段の一例として機能する。   As described above, the server device 10 functions as an example of an encrypted data extracting unit that extracts the encrypted data from the second terminal ID included in the terminal certificate.

次に、サーバ装置10が、認証鍵による復号処理により、暗号化データからデバイス識別値を復号する(ステップS46)。具体的には、システム制御部14が、暗号化データを認証鍵により復号する。そして、認証鍵を使用した後、システム制御部14が、サーバ装置10から認証鍵を消去する。   Next, the server device 10 decrypts the device identification value from the encrypted data by a decryption process using the authentication key (step S46). Specifically, the system control unit 14 decrypts the encrypted data using the authentication key. Then, after using the authentication key, the system control unit 14 deletes the authentication key from the server device 10.

これらのように、サーバ装置10が、前記受信した前記認証鍵による復号処理により、前記暗号化データから第1端末IDを抽出する第1端末ID抽出手段の一例として機能する。サーバ装置10が、前記認証鍵を使用した後に、前記認証鍵を消去する認証鍵消去手段の一例として機能する。   As described above, the server device 10 functions as an example of a first terminal ID extracting unit that extracts a first terminal ID from the encrypted data by performing a decryption process using the received authentication key. The server device 10 functions as an example of an authentication key deleting unit that deletes the authentication key after using the authentication key.

図9に示すように、デバイス識別値から、直接、暗号化データが生成されている場合、暗号化データが認証鍵により復号されて、デバイス識別が得られる。   As shown in FIG. 9, when the encrypted data is directly generated from the device identification value, the encrypted data is decrypted with the authentication key to obtain the device identification.

図9に示すように、デバイス識別値を所定の規則により変形している場合、システム制御部14が、復号された暗号化データを、変形規則とは逆の変形をして、復号された暗号化データからデバイス識別値を得る。   As illustrated in FIG. 9, when the device identification value is modified according to a predetermined rule, the system control unit 14 modifies the decrypted encrypted data by performing a reverse transformation to the modified rule to obtain the decrypted encrypted data. Device identification value from the encrypted data.

これらのように、サーバ装置10が、前記受信した前記認証鍵による復号処理により、前記暗号化データから第1端末IDを抽出する第1端末ID抽出手段の一例として機能する。   As described above, the server device 10 functions as an example of a first terminal ID extracting unit that extracts a first terminal ID from the encrypted data by performing a decryption process using the received authentication key.

以上、本実施形態によれば、端末装置20の固有情報(例えば、MACアドレス)から生成された固有鍵により端末装置20の固有IDを暗号化した暗号化固有IDを生成し、サーバ装置10から端末装置20のデバイス識別値(第1端末IDの一例)を取得し、固有鍵により暗号化固有IDを復号し、復号された固有IDから端末装置20の認証用の認証鍵を生成し、認証鍵による暗号処理によりデバイス識別値から生成された暗号化データに、デバイス識別値を含めたデバイス検証値(第2端末IDの一例)を生成してサーバ装置10に送信し、認証鍵は使用後に消去され、サーバ装置10においてデバイス検証値からデバイス識別値が抽出された場合に、サーバ装置10から、デバイス検証値を含んだ、端末装置20を証明する端末証明書を受信して記憶し、使用後に固有鍵および固有IDを消去し、端末認証のため、認証鍵および端末証明書をサーバ装置10に送信することにより、端末装置20のアプリが保存するデータが盗まれたとしても、固有鍵および固有IDが復元できず、認証時に認証鍵が生成できないので、端末装置20の成りすましを防止できる。すなわち、別端末装置に同じアプリがインストールされ、盗まれた情報がセットされたとしても認証が通らない。   As described above, according to the present embodiment, the unique ID of the terminal device 20 is encrypted with the unique key generated from the unique information (for example, the MAC address) of the terminal device 20, and the encrypted unique ID is generated. A device identification value (an example of a first terminal ID) of the terminal device 20 is obtained, the encrypted unique ID is decrypted using the unique key, an authentication key for authentication of the terminal device 20 is generated from the decrypted unique ID, and the authentication is performed. A device verification value (an example of a second terminal ID) including the device identification value is generated in the encrypted data generated from the device identification value by the encryption processing using the key, and transmitted to the server device 10. When the device identification value is deleted and the device identification value is extracted from the device verification value in the server device 10, the terminal device certificate including the device verification value and certifying the terminal device 20 is transmitted from the server device 10. By receiving and storing the certificate, deleting the unique key and unique ID after use, and transmitting the authentication key and the terminal certificate to the server device 10 for terminal authentication, the data stored in the application of the terminal device 20 is saved. Even if the terminal device 20 is stolen, the unique key and the unique ID cannot be restored, and the authentication key cannot be generated at the time of authentication. Therefore, the impersonation of the terminal device 20 can be prevented. That is, even if the same application is installed on another terminal device and stolen information is set, authentication is not passed.

暗号化データに、第1端末IDの一例のデバイス識別値を混ぜて、第2端末IDの一例のデバイス検証値を生成する場合、第2端末IDから、第1端末IDを抽出されにくくなり、より成りすましされにくくなり、認証や通信の安全性がより向上する。   When the device identification value of an example of the first terminal ID is mixed with the encrypted data to generate the device verification value of the example of the second terminal ID, it is difficult to extract the first terminal ID from the second terminal ID, Impersonation becomes more difficult, and the security of authentication and communication is further improved.

サーバ装置10において、端末証明書に含まれるデバイス検証値(第2端末IDの一例)から暗号化データが抽出され、当該暗号化データから、サーバ装置10が受信した認証鍵による復号処理により抽出されたデバイス識別値(第1端末IDの一例)が正しいと判定された場合に、サーバ装置10から通信用の通信鍵を受信する場合、端末装置20の成りすましがされにくくなり、安全性が高い通信路を確立できる。   In the server device 10, the encrypted data is extracted from the device verification value (an example of the second terminal ID) included in the terminal certificate, and is extracted from the encrypted data by a decryption process using the authentication key received by the server device 10. If it is determined that the device identification value (an example of the first terminal ID) is correct, and the communication key for communication is received from the server device 10, the terminal device 20 is less likely to be spoofed, and communication with high security is performed. A road can be established.

サーバ装置10で生成された端末装置20用の秘密鍵および公開鍵を含んだ端末証明書を受信し、端末装置用の秘密鍵を取り除いた端末証明書をサーバ装置10に送信し、端末装置20用の公開鍵により暗号化された通信鍵を受信する場合、端末装置20の処理負担が軽減し、安全性が高い通信路を確立できる。特に、端末装置20が、モノのインターネットの端末の場合、処理負荷を軽減でき、端末装置20を省電力、小型化にできる。   The terminal device 20 receives the terminal certificate including the private key and the public key for the terminal device 20 generated by the server device 10, transmits the terminal certificate obtained by removing the private key for the terminal device to the server device 10, When receiving the communication key encrypted with the public key for use, the processing load on the terminal device 20 is reduced, and a highly secure communication path can be established. In particular, when the terminal device 20 is a terminal of the Internet of Things, the processing load can be reduced, and the power consumption and the size of the terminal device 20 can be reduced.

なお、端末装置20が、端末装置20用の公開鍵および秘密鍵を生成してもよい。端末装置20がデータを送信する場合は、端末装置20用の秘密鍵により暗号化する。サーバ装置10がデータを送信する場合、サーバ装置10が生成したサーバ装置用の秘密鍵により暗号化する。端末装置20で生成された端末装置用の秘密鍵により暗号化されたデータを前記サーバ装置に送信する場合、通信上で秘密鍵のやりとりがないので、通信の安全性が更に向上する。   Note that the terminal device 20 may generate a public key and a secret key for the terminal device 20. When the terminal device 20 transmits data, the data is encrypted using the secret key for the terminal device 20. When the server device 10 transmits data, the data is encrypted using the server device secret key generated by the server device 10. When transmitting data encrypted by the terminal device secret key generated by the terminal device 20 to the server device, there is no exchange of the secret key in communication, so that communication security is further improved.

なお、固有鍵、固有ID、および、認証鍵を消去するタイミングは、使用した直後でもよいし、一連の処理が終わった後、端末装置の登録や端末装置の認証が終了した時点でもよいし、生成後の所定時間内でもよい。固有鍵、固有ID、および、認証鍵を消去するタイミングは、成りすまし防止のためには、使用後できるだけ早いタイミングが好ましい。   The timing of deleting the unique key, the unique ID, and the authentication key may be immediately after use, or after a series of processes is completed, when registration of the terminal device or authentication of the terminal device is completed, It may be within a predetermined time after generation. The timing for deleting the unique key, the unique ID, and the authentication key is preferably as early as possible after use to prevent spoofing.

さらに、本発明は、上記各実施形態に限定されるものではない。上記各実施形態は、例示であり、本発明の特許請求の範囲に記載された技術的思想と実質的に同一な構成を有し、同様な作用効果を奏するものは、いかなるものであっても本発明の技術的範囲に包含される。   Furthermore, the present invention is not limited to the above embodiments. Each of the above embodiments is an example, and has substantially the same configuration as the technical idea described in the scope of the claims of the present invention, and any device having the same operation and effect can be obtained. It is included in the technical scope of the present invention.

1:認証システム
10:サーバ装置
20:端末装置
1: Authentication system 10: Server device 20: Terminal device

Claims (8)

コンピュータを、
端末装置の固有の固有IDを生成する固有ID生成手段、
前記端末装置の固有の固有情報から固有鍵を生成する固有鍵生成手段、
前記固有鍵により、前記固有IDを暗号化して、暗号化固有IDを生成する固有ID暗号化手段、
サーバ装置から前記端末装置に割り当てられた第1端末IDを取得する第1端末ID取得手段、
前記固有情報から生成された前記固有鍵により、前記暗号化固有IDを復号する固有ID復号手段、
前記復号された固有IDから前記端末装置の認証用の認証鍵を生成する認証鍵生成手段、
前記固有鍵を使用した後に、前記固有鍵を消去する固有鍵消去手段、
前記固有IDを使用した後に、前記固有IDを消去する固有ID消去手段、
前記認証鍵による暗号処理により、前記第1端末IDから暗号化データを生成する暗号データ生成手段、
前記認証鍵を使用した後に、前記認証鍵を消去する認証鍵消去手段、
前記暗号化データに、前記第1端末IDを含めた、第2端末IDを生成する第2端末ID生成手段、
前記第2端末IDを前記サーバ装置に送信する第2端末ID送信手段、
記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記サーバ装置から受信して記憶する端末証明書記憶手段、および、
端末認証のため、前記認証鍵生成手段により生成された前記認証鍵および前記端末証明書を前記サーバ装置に送信する端末証明書送信手段として機能させることを特徴とする端末装置認証用のプログラム。
Computer
Unique ID generating means for generating a unique ID unique to the terminal device,
Unique key generating means for generating a unique key from unique information unique to the terminal device,
A unique ID encrypting means for encrypting the unique ID with the unique key to generate an encrypted unique ID;
First terminal ID acquisition means for acquiring a first terminal ID assigned to the terminal device from a server device,
A unique ID decoding unit for decoding the encrypted unique ID with the unique key generated from the unique information;
Authentication key generation means for generating an authentication key for authentication of the terminal device from the decrypted unique ID,
Unique key erasing means for erasing the unique key after using the unique key,
Unique ID erasing means for erasing the unique ID after using the unique ID,
Encrypted data generation means for generating encrypted data from the first terminal ID by encryption processing using the authentication key;
Authentication key erasing means for erasing the authentication key after using the authentication key,
A second terminal ID generating means for generating a second terminal ID including the first terminal ID in the encrypted data;
Second terminal ID transmission means for transmitting the second terminal ID to the server device,
Before SL including a second terminal ID, and terminal certificate attesting the terminal device, the terminal certificate storage means for storing said server device or we received by and,
A terminal device authentication program for functioning as a terminal certificate transmission unit for transmitting the authentication key and the terminal certificate generated by the authentication key generation unit to the server device for terminal authentication.
請求項1に記載の端末装置認証用のプログラムにおいて、
前記第2端末ID生成手段が、前記暗号化データに、前記第1端末IDを混ぜて、前記第2端末IDを生成することを特徴とする端末装置認証用のプログラム。
The program for terminal device authentication according to claim 1,
A program for terminal device authentication, wherein the second terminal ID generation means generates the second terminal ID by mixing the encrypted data with the first terminal ID.
請求項1または請求項2に記載の端末装置認証用のプログラムにおいて、
記サーバ装置が生成した通信用の通信鍵を、前記サーバ装置から受信する通信鍵受信手段として、更に機能させることを特徴とする端末装置認証用のプログラム。
The program for terminal device authentication according to claim 1 or 2,
The communication key for communication is pre-Symbol server generated, as a communication key receiving means for receiving from said server device, the terminal device program for authentication, characterized in that to further function.
請求項3に記載の端末装置認証用のプログラムにおいて、
前記端末証明書記憶手段が、前記サーバ装置で生成された前記端末装置用の秘密鍵および公開鍵を含んだ前記端末証明書を受信し、
前記端末証明書送信手段が、前記端末装置用の秘密鍵を取り除いた前記端末証明書を前記サーバ装置に送信し、
前記通信鍵受信手段が、前記端末装置用の公開鍵により暗号化された前記通信鍵を受信することを特徴とする端末装置認証用のプログラム。
The program for terminal device authentication according to claim 3,
The terminal certificate storage unit receives the terminal certificate including a private key and a public key for the terminal device generated by the server device,
Wherein the terminal certificate transmitting unit transmits the terminal certificate, from which the secret key for the terminal device has been removed, to the server device,
A terminal device authentication program, wherein the communication key receiving means receives the communication key encrypted with a public key for the terminal device.
請求項1から請求項3のいずれか1項に記載の端末装置認証用のプログラムにおいて、
前記第2端末ID送信手段および前記端末証明書送信手段が、前記端末装置で生成された前記端末装置用の秘密鍵により暗号化されたデータを前記サーバ装置に送信することを特徴とする端末装置認証用のプログラム。
The terminal device authentication program according to any one of claims 1 to 3,
The terminal device, wherein the second terminal ID transmitting means and the terminal certificate transmitting means transmit data encrypted by the terminal device secret key generated by the terminal device to the server device. Authentication program.
固有ID生成手段が、端末装置の固有の固有IDを生成する固有ID生成ステップと、
固有鍵生成手段が、前記端末装置の固有の固有情報から固有鍵を生成する固有鍵生成ステップと、
固有ID暗号化手段が、前記固有鍵により、前記固有IDを暗号化して、暗号化固有IDを生成する固有ID暗号化ステップと、
第1端末ID取得手段が、サーバ装置から前記端末装置に割り当てられた第1端末IDを取得する第1端末ID取得ステップと、
固有ID復号手段が、前記固有情報から生成された前記固有鍵により、前記暗号化固有IDを復号する固有ID復号ステップと、
認証鍵生成手段が、前記復号された固有IDから前記端末装置の認証用の認証鍵を生成する認証鍵生成ステップと、
固有鍵消去手段が、前記固有鍵を使用した後に、前記固有鍵を消去する固有鍵消去ステップと、
暗号データ生成手段が、前記固有IDを使用した後に、前記固有IDを消去する固有ID消去ステップと、
暗号データ生成手段が、前記認証鍵による暗号処理により、前記第1端末IDから暗号化データを生成する暗号データ生成ステップと、
認証鍵消去手段が、前記認証鍵を使用した後に、前記認証鍵を消去する認証鍵消去ステップと、
第2端末ID生成手段が、前記暗号化データに、前記第1端末IDを含めた、第2端末IDを生成する第2端末ID生成ステップと、
第2端末ID送信手段が、前記第2端末IDを前記サーバ装置に送信する第2端末ID送信ステップと、
端末証明書記憶手段が、記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記サーバ装置から受信して記憶する端末証明書記憶ステップと、
端末証明書送信手段が、端末認証のため、前記認証鍵生成手段により生成された前記認証鍵および前記端末証明書を前記サーバ装置に送信する端末証明書送信ステップと、
を含むことを特徴とする端末装置認証方法。
A unique ID generating step of generating a unique ID of the terminal device,
A unique key generation step of generating a unique key from unique information unique to the terminal device;
A unique ID encrypting step of encrypting the unique ID with the unique key to generate an encrypted unique ID,
A first terminal ID acquisition step of acquiring a first terminal ID assigned to the terminal device from a server device,
A unique ID decoding step of decoding the encrypted unique ID with the unique key generated from the unique information,
An authentication key generation step of generating an authentication key for authentication of the terminal device from the decrypted unique ID,
A unique key erasing step of, after using the unique key, erasing the unique key,
A step of erasing the unique ID, wherein the encrypted data generating means erases the unique ID after using the unique ID;
An encrypted data generating step of generating encrypted data from the first terminal ID by an encryption process using the authentication key;
Authentication key erasing means, after using the authentication key, an authentication key erasing step of erasing the authentication key,
A second terminal ID generating step of generating a second terminal ID including the first terminal ID in the encrypted data,
A second terminal ID transmitting means for transmitting the second terminal ID to the server device, a second terminal ID transmitting step,
Terminal certificate storage means, before Symbol including the second terminal ID, and terminal certificate attesting the terminal device, a terminal certificate storage step of receiving and storing from said server device,
A terminal certificate transmitting unit for transmitting the authentication key and the terminal certificate generated by the authentication key generating unit to the server device for terminal authentication;
A terminal device authentication method comprising:
端末装置からの要求により、当該端末装置に割り当てる第1端末IDを生成して、送信する第1端末ID送信手段と、
前記端末装置の固有の固有IDから生成された前記端末装置の認証用の認証鍵による暗号処理により、前記第1端末IDから生成された暗号化データに、前記第1端末IDを含めた第2端末IDを、前記端末装置から受信する第2端末ID受信手段と、
前記受信した第2端末IDから前記第1端末IDが抽出された場合に、前記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記端末装置に送信する端末証明書送信手段と、
端末認証のため、前記端末証明書および前記認証鍵を前記端末装置から受信する端末証明書受信手段と、
前記端末証明書に含まれる第2端末IDから前記暗号化データを抽出する暗号化データ抽出手段と、
前記受信した前記認証鍵による復号処理により、前記暗号化データから第1端末IDを抽出する第1端末ID抽出手段と、
前記抽出した第1端末IDが、前記第1端末IDを予め記憶した端末情報記憶手段を参照して、前記端末情報記憶手段に記憶された第1端末IDであるか否かを判定する判定手段と、
を備えたことを特徴とするサーバ装置。
First terminal ID transmitting means for generating and transmitting a first terminal ID to be assigned to the terminal device in response to a request from the terminal device;
A second process that includes the first terminal ID in encrypted data generated from the first terminal ID by performing encryption processing using an authentication key for authentication of the terminal device generated from a unique ID unique to the terminal device. A second terminal ID receiving means for receiving a terminal ID from the terminal device;
When the first terminal ID is extracted from the received second terminal ID, a terminal certificate including the second terminal ID and transmitting a terminal certificate for certifying the terminal device to the terminal device. Means,
For terminal authentication, terminal certificate receiving means for receiving the terminal certificate and the authentication key from the terminal device,
Encrypted data extracting means for extracting the encrypted data from the second terminal ID included in the terminal certificate;
First terminal ID extracting means for extracting a first terminal ID from the encrypted data by a decryption process using the received authentication key;
Determining means for determining whether the extracted first terminal ID is the first terminal ID stored in the terminal information storage means by referring to terminal information storage means in which the first terminal ID is stored in advance; When,
A server device comprising:
サーバ装置が端末装置を認証する認証システムにおいて、
前記端末装置が、
前記端末装置の固有の固有IDを生成する固有ID生成手段と、
前記端末装置の固有の固有情報から固有鍵を生成する固有鍵生成手段と、
前記固有鍵により、前記固有IDを暗号化して、暗号化固有IDを生成する固有ID暗号化手段と、
前記サーバ装置から前記端末装置に割り当てられた第1端末IDを取得する第1端末ID取得手段と、
前記固有情報から生成された前記固有鍵により、前記暗号化固有IDを復号する固有ID復号手段と、
前記復号された固有IDから前記端末装置の認証用の認証鍵を生成する認証鍵生成手段と、
前記固有鍵を使用した後に、前記固有鍵を消去する固有鍵消去手段と、
前記固有IDを使用した後に、前記固有IDを消去する固有ID消去手段と、
前記認証鍵による暗号処理により、前記第1端末IDから暗号化データを生成する暗号データ生成手段と、
前記認証鍵を使用した後に、前記認証鍵を消去する認証鍵消去手段と、
前記暗号化データに、前記第1端末IDを含めた、第2端末IDを生成する第2端末ID生成手段と、
前記第2端末IDを前記サーバ装置に送信する第2端末ID送信手段と、
記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記サーバ装置から受信して記憶する端末証明書記憶手段と、
端末認証のため、前記認証鍵生成手段により生成された前記認証鍵および前記端末証明書を前記サーバ装置に送信する端末証明書送信手段と、を有し、
前記サーバ装置が、
前記端末装置からの要求により、当該端末装置に割り当てる第1端末IDを生成して、
送信する第1端末ID送信手段と、
前記端末装置の固有の固有IDから生成された前記端末装置の認証用の認証鍵による暗号処理により、前記第1端末IDから生成された暗号化データに、前記第1端末IDを含めた第2端末IDを、前記端末装置から受信する第2端末ID受信手段と、
前記受信した第2端末IDから前記第1端末IDが抽出された場合に、前記第2端末IDを含んだ、前記端末装置を証明する端末証明書を、前記端末装置に送信する端末証明書送信手段と、
端末認証のため、前記端末証明書および前記認証鍵を前記端末装置から受信する端末証明書受信手段と、
前記端末証明書に含まれる第2端末IDから前記暗号化データを抽出する暗号化データ抽出手段と、
前記受信した前記認証鍵による復号処理により、前記暗号化データから第1端末IDを抽出する第1端末ID抽出手段と、
前記抽出した第1端末IDが、前記第1端末IDを予め記憶した端末情報記憶手段を参照して、前記端末情報記憶手段に記憶された第1端末IDであるか否かを判定する判定手段と、
を有することを特徴とする認証システム。
In an authentication system in which a server device authenticates a terminal device,
The terminal device,
Unique ID generation means for generating a unique ID unique to the terminal device;
Unique key generation means for generating a unique key from unique information unique to the terminal device;
A unique ID encrypting means for encrypting the unique ID with the unique key to generate an encrypted unique ID;
First terminal ID acquisition means for acquiring a first terminal ID assigned to the terminal device from the server device;
A unique ID decoding unit for decoding the encrypted unique ID with the unique key generated from the unique information;
Authentication key generation means for generating an authentication key for authentication of the terminal device from the decrypted unique ID,
After using the unique key, unique key erasing means for erasing the unique key,
Unique ID erasing means for erasing the unique ID after using the unique ID;
Encrypted data generating means for generating encrypted data from the first terminal ID by performing encryption processing using the authentication key;
Authentication key erasing means for erasing the authentication key after using the authentication key,
A second terminal ID generating means for generating a second terminal ID including the first terminal ID in the encrypted data;
Second terminal ID transmission means for transmitting the second terminal ID to the server device;
Before SL including a second terminal ID, and terminal certificate attesting the terminal device, and the terminal certificate storage means for receiving and storing from said server device,
For terminal authentication, terminal certificate transmitting means for transmitting the authentication key and the terminal certificate generated by the authentication key generating means to the server device,
The server device is:
In response to a request from the terminal device, a first terminal ID to be assigned to the terminal device is generated,
First terminal ID transmitting means for transmitting;
A second process that includes the first terminal ID in encrypted data generated from the first terminal ID by performing encryption processing using an authentication key for authentication of the terminal device generated from a unique ID unique to the terminal device. A second terminal ID receiving means for receiving a terminal ID from the terminal device;
When the first terminal ID is extracted from the received second terminal ID, a terminal certificate including the second terminal ID and certifying the terminal device is transmitted to the terminal device. Means,
For terminal authentication, terminal certificate receiving means for receiving the terminal certificate and the authentication key from the terminal device,
Encrypted data extracting means for extracting the encrypted data from the second terminal ID included in the terminal certificate;
First terminal ID extracting means for extracting a first terminal ID from the encrypted data by a decryption process using the received authentication key;
Determining means for determining whether the extracted first terminal ID is the first terminal ID stored in the terminal information storage means by referring to terminal information storage means in which the first terminal ID is stored in advance; When,
An authentication system comprising:
JP2015237540A 2015-12-04 2015-12-04 Terminal device authentication program, terminal device authentication method, server device, and authentication system Active JP6631210B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015237540A JP6631210B2 (en) 2015-12-04 2015-12-04 Terminal device authentication program, terminal device authentication method, server device, and authentication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015237540A JP6631210B2 (en) 2015-12-04 2015-12-04 Terminal device authentication program, terminal device authentication method, server device, and authentication system

Publications (2)

Publication Number Publication Date
JP2017103710A JP2017103710A (en) 2017-06-08
JP6631210B2 true JP6631210B2 (en) 2020-01-15

Family

ID=59017582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015237540A Active JP6631210B2 (en) 2015-12-04 2015-12-04 Terminal device authentication program, terminal device authentication method, server device, and authentication system

Country Status (1)

Country Link
JP (1) JP6631210B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7139635B2 (en) * 2018-03-19 2022-09-21 大日本印刷株式会社 Authentication system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08272742A (en) * 1995-03-30 1996-10-18 Hitachi Ltd Data leak prevention system
JPH11316543A (en) * 1998-02-13 1999-11-16 Matsushita Electric Ind Co Ltd Card data authentication system
WO2010067433A1 (en) * 2008-12-11 2010-06-17 三菱電機株式会社 Self-authentication communication device, self-authentication verification communication device, device authentication system, device authentication method for device authentication system, self-authentication communication program, and self-authentication verification communication program
JP5485452B1 (en) * 2012-08-02 2014-05-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 Key management system, key management method, user terminal, key generation management device, and program

Also Published As

Publication number Publication date
JP2017103710A (en) 2017-06-08

Similar Documents

Publication Publication Date Title
CN109088889B (en) SSL encryption and decryption method, system and computer readable storage medium
CN109347835B (en) Information transmission method, client, server, and computer-readable storage medium
US8060739B2 (en) Apparatus and method for providing security service in home network
CN107404461B (en) Data secure transmission method, client and server method, device and system
CN108377190B (en) Authentication equipment and working method thereof
WO2018040758A1 (en) Authentication method, authentication apparatus and authentication system
CN107358441B (en) Payment verification method and system, mobile device and security authentication device
CN108243176B (en) Data transmission method and device
JP6012888B2 (en) Device certificate providing apparatus, device certificate providing system, and device certificate providing program
US8397281B2 (en) Service assisted secret provisioning
CN110868291B (en) Data encryption transmission method, device, system and storage medium
CN107920052B (en) Encryption method and intelligent device
JP2019530265A (en) Method and apparatus for providing and acquiring graphic code information and terminal
CN101621794A (en) Method for realizing safe authentication of wireless application service system
CN100514333C (en) Data base safety access method and system
CN111401901A (en) Authentication method and device of biological payment device, computer device and storage medium
JP6930053B2 (en) Data encryption method and system using device authentication key
JP2012100206A (en) Cryptographic communication relay system, cryptographic communication relay method and cryptographic communication relay program
JP2007058487A (en) Log-in information management device and method
CN112822228A (en) Browser file encryption uploading method and system based on state cryptographic algorithm
JP4794970B2 (en) Secret information protection method and communication apparatus
JP6631210B2 (en) Terminal device authentication program, terminal device authentication method, server device, and authentication system
WO2017029708A1 (en) Personal authentication system
US20180123794A1 (en) A first entity, a second entity, an intermediate node, methods for setting up a secure session between a first and second entity, and computer program products
CN114765543A (en) Encryption communication method and system of quantum cryptography network expansion equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181029

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190827

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191023

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: 20191112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191125

R150 Certificate of patent or registration of utility model

Ref document number: 6631210

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150