JP6717730B2 - 端末装置、鍵提供システム、鍵提供方法及びコンピュータプログラム - Google Patents
端末装置、鍵提供システム、鍵提供方法及びコンピュータプログラム Download PDFInfo
- Publication number
- JP6717730B2 JP6717730B2 JP2016212304A JP2016212304A JP6717730B2 JP 6717730 B2 JP6717730 B2 JP 6717730B2 JP 2016212304 A JP2016212304 A JP 2016212304A JP 2016212304 A JP2016212304 A JP 2016212304A JP 6717730 B2 JP6717730 B2 JP 6717730B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- keys
- terminal device
- identification information
- secret key
- 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
Links
- 238000000034 method Methods 0.000 title claims description 50
- 238000004590 computer program Methods 0.000 title claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 87
- 238000004891 communication Methods 0.000 claims description 47
- 230000004044 response Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Description
図1は、本発明の鍵提供システム100の機能構成を示す図である。鍵提供システム100は、鍵生成装置10、発行サーバ20、アプリケーション提供装置30及び端末装置40を備える。発行サーバ20及び端末装置40は、第1ネットワーク50を介して通信可能に接続される。第1ネットワーク50は、例えばインターネットで構成される。アプリケーション提供装置30及び端末装置40は、第2ネットワーク60を介して通信可能に接続される。第2ネットワーク60は、例えば通信事業者が提供する通信網(第一の通信網)で構成される。なお、鍵生成装置10から端末装置40までの間は、SSLにより通信が暗号化されるものとする。
発行サーバ20は、鍵生成装置10から送信された送信データを、第1ネットワーク50を介して端末装置40に送信する。
鍵生成装置10は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、鍵生成プログラムを実行する。鍵生成プログラムの実行によって、鍵生成装置10は、鍵生成部11、送信データ生成情報記憶部12、送信データ生成部13、通信部14を備える装置として機能する。なお、鍵生成装置10の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。また、鍵生成プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM(READ ONLY MEMORY)、CD−ROM(CompactDisk- READ ONLY MEMORY)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。また、鍵生成プログラムは、電気通信回線を介して送受信されてもよい。
送信データ生成情報記憶部12は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。送信データ生成情報記憶部12は、ユーザ毎の識別情報及びタネAと、第1のロジックが埋め込まれたソースファイルとを送信データ生成情報として記憶する。
送信データ生成部13は、送信データ生成情報記憶部12に記憶されている送信データ生成情報に基づいて送信データを生成する。
通信部14は、送信データ生成部13によって生成された送信データを発行サーバ20に送信する。
端末装置40は、バスで接続されたCPUやメモリや補助記憶装置などを備え、端末装置プログラムを実行する。端末装置プログラムの実行によって、端末装置40は、第1通信部41、第2通信部42、端末制御部43、装着部44を備える装置として機能する。
装着部44には、着脱可能なICカード45が装着され、ICカード45が端末制御部43と接続される。なお、端末装置40の各機能の全て又は一部は、ASICやPLDやFPGA等のハードウェアを用いて実現されてもよい。また、端末装置プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。また、端末装置プログラムは、電気通信回線を介して送受信されてもよい。
第2通信部42は、第1ネットワーク50を介して、発行サーバ20との間で通信を行う。例えば、第2通信部42は、発行サーバ20から送信データを受信する。
端末制御部43は、例えば、CPU等を含むプロセッサにより実現される。端末制御部43は、端末装置40全体を制御する。端末制御部43は、装着部44に装着されているICカード45に対してコマンドを送信し、コマンドの処理結果としてレスポンスを受信する。
ICカード45は、例えば、SIM(Subscriber Identity Module)カードであり、ICチップ451を備える。
ICチップ451は、通信部452、制御部453、アプリケーション記憶部454、アプリケーション処理部455及び秘密鍵記憶部456を備える。
通信部452は、端末制御部43との間で通信を行う。例えば、通信部452は、端末制御部43から送信されたコマンドを受信する。
制御部453は、通信部452が受信したコマンドに応じた処理を実行する。
アプリケーション記憶部454は、アプリケーション提供装置30から提供されたアプリケーション(提供アプリ)を記憶する。
アプリケーション処理部455は、プログラムの実行により鍵生成部457及び復号部458として機能する。
鍵生成部457は、提供アプリのソースファイルに埋め込まれている第2のロジックに従って派生鍵を生成する。
復号部458は、提供アプリのソースファイルに埋め込まれている第2のロジックに従って、暗号化秘密鍵を復号することによって秘密鍵を復元する。
秘密鍵記憶部456は、復号部458によって復元された秘密鍵を記憶する。
アプリケーション提供装置30は、端末装置40からの要求に応じて、要求された提供アプリを端末装置40に送信する(ステップS101)。提供アプリのソースファイルには、アプリケーションのプログラムの他に、タネB及び第2のロジックが埋め込まれている。なお、提供アプリは、バイナリデータ等の形式でアプリケーション提供装置30から提供される。
端末装置40の第1通信部41は、アプリケーション提供装置30から送信された提供アプリを受信する。第1通信部41は、受信した提供アプリを端末制御部43に出力する。
鍵生成装置10の送信データ生成部13は、タネA及び識別情報が含まれていることを示す情報(以下「付与情報」という。)と、送信データ生成情報記憶部12に記憶されているタネA及び識別情報とを格納した送信データを生成する。送信データ生成部13は、生成した送信データを通信部14に出力する。通信部14は、送信データを発行サーバ20に送信する(ステップS103)。
端末装置40の第2通信部42は、発行サーバ20から送信された送信データを受信する。第2通信部42は、受信した送信データを端末制御部43に出力する。端末制御部43は、出力された送信データの送信元アドレスを確認し、送信元アドレスが発行サーバ20のアドレスである場合に送信データをICカード45に送信する。ICカード45の通信部452は、端末制御部43から送信された送信データを受信し、受信した送信データを制御部453に出力する。制御部453は、出力された送信データに基づいて、鍵生成の条件が満たされたか否か判定する(ステップS105)。
一方、鍵生成の条件が満たされた場合(ステップS105−YES)、制御部453は鍵生成部457に派生鍵の生成を指示するとともに、送信データに含まれるタネA及び識別情報を鍵生成部457に出力する。
端末装置40の第2通信部42は、発行サーバ20から送信された送信データを受信する。第2通信部42は、受信した送信データを端末制御部43に出力する。端末制御部43は、出力された送信データの送信元アドレスを確認し、送信元アドレスが発行サーバ20のアドレスである場合に送信データをICカード45に送信する。ICカード45の通信部452は、端末制御部43から送信された送信データを受信し、受信した送信データを制御部453に出力する。制御部453は、出力された送信データに暗号化秘密鍵YY・・・YYが含まれているため、復号部458に秘密鍵の復号を指示するとともに、送信データに含まれる暗号化秘密鍵YY・・・YYを復号部458に出力する。
また、タネBは、アプリケーションのソースファイルに埋め込まれている。さらに、アプリケーションのコードは、コンパイルされたBINファイルとして提供される。したがって、盗聴されたとしてもタネBを特定することは困難である。そのため、タネBの漏洩に対するセキュリティが高いため、派生鍵が生成されてしまう可能性を低下させることができる。
本実施形態では、ICカード45を備える端末装置40を例に説明したが、CPUを持った記憶媒体(例えば、ICカード、ICチップ付きUSBトークン等)にも適用可能である。
本実施形態では、マスター鍵□□・・□□○○・・○○を半分にしてタネA○○・・○○及びタネB□□・・□□が生成されているが、タネA、タネBは以下の基準に従って生成されてもよい。例えば、タネAが奇数byteのビット列で生成され、タネBが偶数byteのビット列で生成されてもよい。このように構成される場合、派生鍵の生成方法のロジックとして、例えばタネAのビット列と、タネBのビット列とを用いて、タネAを基準に順番(例えば、タネA、タネB,タネA、タネB,・・・)に並べることによってマスター鍵を復元するといったロジックが想定される。また、タネBが奇数番目のbyteのビット列で生成され、タネAが偶数番目のbyteのビット列で生成されてもよい。このように構成される場合、派生鍵の生成方法のロジックとして、例えばタネAのビット列と、タネBのビット列とを用いて、タネBを基準に順番(例えば、タネB,タネA、タネB,タネA,・・・)に並べることによってマスター鍵を復元するといったロジックが想定される。また、マスター鍵(nbyte)から生成されるタネは3つ以上であってもよい。また、各タネのビット列の数は、適宜設定されてもよい。
また、本実施形態では、端末装置40のICカード45内において図5のステップS105〜ステップ107及びステップS110〜ステップ111の処理がなされる構成を示したが、これらの処理は端末装置40の端末制御部43において行われてもよい。このように構成される場合、復元された秘密鍵は耐タンパ領域に記憶されればどの記憶部に記憶されてもよい。
Claims (9)
- 秘密鍵の暗号化に用いられる第一の鍵から生成された複数の鍵と、ユーザを識別するための識別情報と、前記第一の鍵と前記識別情報とに基づいて暗号化された秘密鍵とを他の装置から取得する取得部と、
取得された前記複数の鍵と、前記識別情報とに基づいて、前記秘密鍵を暗号化した第二の鍵を生成する鍵生成部と、
生成された前記第二の鍵を用いて、前記暗号化された秘密鍵を復号することによって秘密鍵を復元する復号部と、
を備える端末装置。 - 前記複数の鍵のうち一部の鍵は、アプリケーション内に設定されており、
前記取得部は、前記アプリケーションを取得することによって、前記複数の鍵のうち一部の鍵を取得する、請求項1に記載の端末装置。 - 前記アプリケーション内には、前記第二の鍵の生成方法及び前記秘密鍵の復号方法に関するロジックがさらに設定されており、
前記鍵生成部は、前記ロジックに従って前記第二の鍵を生成し、
前記復号部は、前記ロジックに従って前記暗号化された秘密鍵を復号する、請求項2に記載の端末装置。 - 前記取得部は、第一の通信網を介して前記アプリケーションを取得し、前記複数の鍵のうち一部の鍵を前記第一の通信網と異なる通信網を介して取得する、請求項2又は3に記載の端末装置。
- 前記鍵生成部は、前記複数の鍵を所定の条件に従って組み合わせることによって、前記第一の鍵を復元し、復元した前記第一の鍵を用いて、所定のアルゴリズムで前記識別情報を暗号化することによって前記第二の鍵を生成する、請求項1から4のいずれか一項に記載の端末装置。
- 前記復号部は、復元した前記秘密鍵を自装置内の耐タンパ領域に格納する、請求項1から5のいずれか一項に記載の端末装置。
- 秘密鍵と、前記秘密鍵の対となる鍵とを生成する鍵生成部と、
前記秘密鍵の暗号化に用いられる第一の鍵から生成された複数の鍵と、ユーザを識別するための識別情報と、を用いて前記秘密鍵を暗号化することによって生成された暗号化秘密鍵を含む第一の送信データと、前記複数の鍵のうち一部の鍵及び前記識別情報を含む第二の送信データとを端末装置に送信する通信部と、
を備える鍵生成装置と、
前記端末装置からの要求に応じて、前記複数の鍵のうち一部の鍵が設定されているアプリケーションを前記端末装置に送信するアプリケーション提供装置と、
前記複数の鍵と、前記識別情報と、前記暗号化秘密鍵とを他の装置から取得する取得部と、
取得された前記複数の鍵と、前記識別情報とに基づいて、前記秘密鍵を暗号化した第二の鍵を生成する鍵生成部と、
生成された前記第二の鍵を用いて、前記暗号化秘密鍵を復号することによって秘密鍵を復元する復号部と、
を備える端末装置と、
を備える鍵提供システム。 - 鍵生成装置が、秘密鍵と、前記秘密鍵の対となる鍵とを生成する鍵生成ステップと、
鍵生成装置が、前記秘密鍵の暗号化に用いられる第一の鍵から生成された複数の鍵と、ユーザを識別するための識別情報と、を用いて前記秘密鍵を暗号化することによって生成された暗号化秘密鍵を含む第一の送信データと、前記複数の鍵のうち一部の鍵及び前記識別情報を含む第二の送信データとを端末装置に送信する通信ステップと、
を有し、
アプリケーション提供装置が、前記端末装置からの要求に応じて、前記複数の鍵のうち一部の鍵が設定されているアプリケーションを前記端末装置に送信する送信ステップと、
前記複数の鍵と、前記識別情報と、前記暗号化秘密鍵とを他の装置から取得する取得ステップを有し、
端末装置が、取得された前記複数の鍵と、前記識別情報とに基づいて、前記秘密鍵を暗号化した第二の鍵を生成する鍵生成ステップと、
端末装置が、生成された前記第二の鍵を用いて、前記暗号化秘密鍵を復号することによって秘密鍵を復元する復号ステップと、
を有する鍵提供方法。 - 他の装置から取得された秘密鍵の暗号化に用いられる第一の鍵から生成された複数の鍵と、ユーザを識別するための識別情報とに基づいて、前記秘密鍵を暗号化した第二の鍵を生成する鍵生成ステップと、
生成された前記第二の鍵を用いて、前記第一の鍵と前記識別情報とに基づいて暗号化された秘密鍵を復号することによって秘密鍵を復元する復号ステップと、
をコンピュータに実行させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016212304A JP6717730B2 (ja) | 2016-10-28 | 2016-10-28 | 端末装置、鍵提供システム、鍵提供方法及びコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016212304A JP6717730B2 (ja) | 2016-10-28 | 2016-10-28 | 端末装置、鍵提供システム、鍵提供方法及びコンピュータプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020101241A Division JP2020141425A (ja) | 2020-06-10 | 2020-06-10 | 端末装置、鍵提供システム、鍵生成方法及びコンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018074396A JP2018074396A (ja) | 2018-05-10 |
JP6717730B2 true JP6717730B2 (ja) | 2020-07-01 |
Family
ID=62111718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016212304A Active JP6717730B2 (ja) | 2016-10-28 | 2016-10-28 | 端末装置、鍵提供システム、鍵提供方法及びコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6717730B2 (ja) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004023138A (ja) * | 2002-06-12 | 2004-01-22 | Dainippon Printing Co Ltd | 秘密鍵のバックアップ方法および情報処理端末 |
JP4522098B2 (ja) * | 2004-01-13 | 2010-08-11 | 株式会社エヌ・ティ・ティ・データ | アプリケーションパーソナライズシステム |
GB2436668B (en) * | 2006-03-28 | 2011-03-16 | Identum Ltd | Electronic data communication system |
JP6502083B2 (ja) * | 2014-12-18 | 2019-04-17 | 株式会社ジャパンネット銀行 | 認証装置、情報端末装置、プログラム、並びに認証方法 |
JP5969716B1 (ja) * | 2016-01-13 | 2016-08-17 | 株式会社ショーケース・ティービー | データ管理システム、データ管理プログラム、通信端末及びデータ管理サーバ |
-
2016
- 2016-10-28 JP JP2016212304A patent/JP6717730B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018074396A (ja) | 2018-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10785019B2 (en) | Data transmission method and apparatus | |
US9152805B2 (en) | Security device | |
US10298390B2 (en) | Integrity protected trusted public key token with performance enhancements | |
US10880100B2 (en) | Apparatus and method for certificate enrollment | |
CN110100422B (zh) | 基于区块链智能合约的数据写入方法、装置及存储介质 | |
JP6363032B2 (ja) | 鍵付替え方向制御システムおよび鍵付替え方向制御方法 | |
US20180278417A1 (en) | Apparatus and method for generating key, and apparatus and method for encryption | |
US11431489B2 (en) | Encryption processing system and encryption processing method | |
JP2014175970A (ja) | 情報配信システム、情報処理装置及びプログラム | |
EP3079299A1 (en) | Data processing system, encryption apparatus, decryption apparatus, and program | |
CN113890731A (zh) | 一种密钥管理方法、装置、电子设备及存储介质 | |
JP2000347566A (ja) | コンテンツ管理装置、コンテンツ利用者端末及びプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
US10057054B2 (en) | Method and system for remotely keyed encrypting/decrypting data with prior checking a token | |
KR102181645B1 (ko) | 데이터를 분산해서 저장하는 시스템 및 방법 | |
JP6348273B2 (ja) | 情報処理システム | |
JP6717730B2 (ja) | 端末装置、鍵提供システム、鍵提供方法及びコンピュータプログラム | |
JP2012029271A (ja) | 暗号化装置、復号装置、暗号化システム、暗号化方法、プログラム | |
CN115396179A (zh) | 基于区块链的数据传输方法、装置、介质及设备 | |
JP2020141425A (ja) | 端末装置、鍵提供システム、鍵生成方法及びコンピュータプログラム | |
JP6492785B2 (ja) | 情報処理システム、情報処理方法、及び、情報処理プログラム | |
CN113381854B (zh) | 数据传输方法、装置、设备和存储介质 | |
JP2014212474A (ja) | 秘密鍵配送方法 | |
GB2573309A (en) | Ciphertext based quorum cryptosystem | |
JP2018182398A (ja) | 情報処理装置、機器、機器管理システム及び情報処理方法 | |
JP6711522B2 (ja) | 通信システム、通信装置、及び通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190726 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200423 |
|
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: 20200512 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200611 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6717730 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |