JP5489913B2 - 携帯型情報装置及び暗号化通信プログラム - Google Patents

携帯型情報装置及び暗号化通信プログラム Download PDF

Info

Publication number
JP5489913B2
JP5489913B2 JP2010183529A JP2010183529A JP5489913B2 JP 5489913 B2 JP5489913 B2 JP 5489913B2 JP 2010183529 A JP2010183529 A JP 2010183529A JP 2010183529 A JP2010183529 A JP 2010183529A JP 5489913 B2 JP5489913 B2 JP 5489913B2
Authority
JP
Japan
Prior art keywords
public key
communication
unit
session key
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.)
Expired - Fee Related
Application number
JP2010183529A
Other languages
English (en)
Other versions
JP2012044430A (ja
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2010183529A priority Critical patent/JP5489913B2/ja
Publication of JP2012044430A publication Critical patent/JP2012044430A/ja
Application granted granted Critical
Publication of JP5489913B2 publication Critical patent/JP5489913B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、携帯型情報装置及び暗号化通信プログラムに関する。
現在、鉄道やバスの運賃精算において非接触IC(Integrated Circuit)カードが普及しているが、金融機関においても今後普及が見込まれる。しかし、通信が無線のため、傍受され盗聴される危険性がある。例えば、ATM(Automated Teller Machine)のリーダライタから非接触ICカードへ送信した暗証番号が盗聴される恐れがある。
そこで、ATMと非接触ICカード間で、セッション鍵を共有し暗号化通信を行なう方法がある。このため、予め、ATMと非接触ICカードでマスター鍵を埋め込んでおく方法があるが、全てのカード、ATM(全ての店舗のATM)で同じマスター鍵を埋め込む必要があり、万が一漏洩した場合は、全ての暗号化通信が解読される可能性がある。
他に、公開鍵暗号を用い、鍵が漏洩しても影響を最小限に留めるセッション鍵の共有方式がある(例えば特許文献1)。しかし、一般的に、共有処理に時間がかかるため、ユーザはATMや窓口を行き来するような場合、その都度、セッション鍵共有のために待たされることなり、不便である。
特開2002−344438号公報
ICカードと端末間の鍵共有の従来技術として、特開2002−344438号公報(特許文献1)がある。特許文献1は、公開鍵暗号を利用し、端末とICカード間でセッション鍵を共有する鍵共有方式である。この特許文献1の技術をセッション鍵共有に適用した場合、通信コマンドが多く、非効率的になってしまうという課題がある。
この発明は、セッション鍵の共有を安全、かつ、効率的に実行するICカードのような携帯型情報装置の提供を目的とする。
この発明の携帯型情報装置は、
第1の通信装置と通信して第1の公開鍵を含む公開鍵証明書を受信する第1通信部と、
前記第1通信部による前記第1の公開鍵の受信を契機としてセッション鍵を生成するセッション鍵生成部と、
前記セッション鍵生成部によって生成された前記セッション鍵を前記第1通信部の受信した前記第1の公開鍵を用いて暗号化して暗号化セッション鍵を生成する公開鍵暗号演算部と、
前記セッション鍵生成部によって生成された前記セッション鍵と前記公開鍵暗号演算部によって暗号化された前記暗号化セッション鍵とを記憶する記憶部と、
第2の通信装置と通信を開始し、前記記憶部に記憶された前記暗号化セッション鍵を前記第2の通信装置に送信する第2通信部と、
前記暗号化セッション鍵を受信して前記第1の公開鍵に対応する第1の秘密鍵で前記暗号化セッション鍵を復号した前記第2の通信装置との間で、前記記憶部に記憶された前記セッション鍵を用いた暗号通信を実行する暗号化通信部と
を備えたことを特徴とする。
この発明により、セッション鍵の共有を安全、かつ、効率的に実行する携帯型情報装置を提供できる。
実施の形態1の非接触ICカードシステムの構成図。 実施の形態1の非接触ICカードでのセッション鍵の生成処理を示すブロック図。 実施の形態1の非接触ICカードがATMへ暗号化セッション鍵を送信するブロック図。 実施の形態1の非接触ICカードがATMと暗号化通信を行う構成を示すブロック図。 実施の形態1の非接触ICカードシステムの動作を説明するフローチャート。 実施の形態9の非接触ICカードシステムのハードウェア構成を示す図。
実施の形態1.
図1〜図5を参照して実施の形態1を説明する。
図1は、非接触ICカードの運用方法として、共有鍵であるセッション鍵を共有する具体例を示す図である。図1では、ユーザ(101)が銀行店舗に入店し、セッション鍵を共有する場合を説明する。
図1では、ユーザ(101)が金融機関の店舗(103)に入店した際に1回、受付機(1033)に非接触ICカード(102)をタッチすると、店舗(103)と非接触ICカード(102)との間でセッション鍵(104)が共有される。ATM(1031)や窓口装置(1032)では、この共有されたセッション鍵(104)を用いて即座に暗号通信を行なう。図1の場合を以下に説明する。
まず、ユーザ(101)は、銀行の店舗(103)に非接触型ICカード(102)を持って入店したとする。次に、ユーザ(101)は、非接触型ICカード(102)を受付機(1033)にタッチする。そうすると、非接触型ICカード(102)と店舗(103)側のシステムとにおいてセッション鍵(104)が共有され、さらに、セッション鍵(104)は、店舗(103)内のATM(1031)や窓口装置(1032)へ、店舗(103)のネットワークなどを利用して通知される。
ATM(1031)や窓口装置(1032)では、このセッション鍵(104)を用いて非接触ICカード(102)との速やかな暗号通信を行なう。例えば、非接触ICカード(102)をATM(1031)のリーダライタ(10313)にかざすと、入力画面(10311)において、「暗証番号を入力してください」と表示される。ユーザ(101)が暗証番号(PIN:Personal Identification Number)を入力すると、ICカード利用S/W(SoftWare)(10312)と非接触ICカード(102)との間に、既に共有済みのセッション鍵(104)による暗号化通信路が即座に確立され、暗証番号が安全に非接触ICカード(102)に送信される。
この場合、暗号化のアルゴリズムは、処理速度を考慮し、AES(Advanced Encryption Standard)などの共通鍵暗号方式を用いる。
背景技術で示した特許文献1の技術を、図1の受付機(1033)と非接触ICカード(102)との間のセッション鍵(104)の共有に使用した場合、通信コマンドが多くなり、非効率となると考えられる。また、受付機は非接触ICカードがタッチされる都度、非接触ICカード別に共有したセッション鍵を、ATM/窓口へ通知する必要がある。すなわち、入店したユーザの数だけセッション鍵をATM/窓口と共有する必要があり、そのための設備と管理が必要となる。そこで、セッション鍵共有の処理時間を低減し、受付機(1033)からATM(1031)/窓口装置(1032)へのセッション鍵(104)の通知と管理のための設備を削減し、安全・簡便にセッション鍵を共有する仕組みを以下説明する。以降の説明では、非接触ICカード(102)を、単に「カード(102)」という場合がある。
以下、図2〜図5を参照して実施の形態1の非接触ICカードシステムを説明する。以下に説明する方式(システム)の概要は次の様である。あるエリアに複数の端末装置が存在する場合に、エリアに入る際に受付機(第1の通信装置の例)に非接触ICカード(102)をタッチする。受付機からカード(102)へエリア共通の公開鍵暗号の公開鍵証明書を送信する。カード(102)では、この公開鍵証明書から得た公開鍵で内部で生成したセッション鍵を暗号化し保存する。その後、エリア内のATMや窓口装置などの端末装置(第2の通信装置の例)において非接触ICカード(102)をタッチすると、暗号化されたセッション鍵が読み出され、端末において予めインストールされたエリア共通の公開鍵暗号の秘密鍵で復号する。これにより、非接触ICカード(102)と端末装置とでセッション鍵が速やかに共有され、以降、暗号化通信が可能となる。
(カードの機能)
図2は、実施の形態1において、カード(102)が受付機(1033)と通信する際のカード(102)側の機能の構成を示している。各構成要素の機能は以下のとおりである。
(a)通信部(301)は、受付機(1033)と通信する
(b)コマンド解析/生成部(302)は、受付機(1033)から受信したコマンド(APDU311)を解析する。また、カード(102)の応答をコマンド(APDU319)として生成する。
(c)証明書検証部(303)は、受付機(1033)から送られてきた公開鍵証明書(PKC_s)(312)を検証する。検証に成功すると公開鍵(PubKey_s)(314)を出力する。
(d)乱数生成部(304)は、乱数Rc(315)を生成する。
(e)セッション鍵生成部(305)は、乱数Rc(315)と、受付機(1033)から送られた乱数Rs(313)からセッション鍵SK(316)を生成する。
(f)セッション鍵保存部(308)は、セッション鍵SK(316)を記憶部(332)に保存する。あるいは記憶部(332)からセッション鍵SK(316)を読みだして復号部(351)、暗号部(353)に渡す。
(g)公開鍵暗号演算部(306)は、セッション鍵SK(316)を、証明書検証部(303)で出力された公開鍵(PubKey_s)(314)を用いて暗号化し、暗号化されたセッション鍵SK(317)として出力する。
(h)暗号化セッション鍵保存部(307)は、暗号化されたセッション鍵SK(317)を記憶部(332)に保存し、また、記憶部(332)から読みだして、応答(318)としてコマンド解析/生成部(302)に出力する。
(i)時計部(331)は時間を計測する。
(j)記憶部(332)はセッション鍵、暗号化セッション鍵及びその他の情報を記憶する。
図3は、実施の形態1において、カード(102)がATM(1031)とセッション鍵を共有する際の機能部の構成を示している。図3の機能部の構成は、図2に順ずる。図2との差異は、暗号化セッション鍵保存部(307)は、ATMからの命令である、暗号化されたセッション鍵SKの読み出し命令(322)を受け取り、この命令を受け取ると、記憶部(332)から暗号化されたセッション鍵SKを取得し、暗号化されたセッション鍵SK(323)をコマンド解析/生成部(302)へ応答として出力することである。
図4は、実施の形態1において、カード(102)がATM(1031)とセッション鍵を使用して暗号化通信を行なう際の機能部の構成を示している。
(a)通信部(301)は、図2と同じである。
(b)コマンド解析/生成部(302)は、復号されたAPDU(3502)を解析し命令(3504)を出力する。また、命令処理部(352)の出力である処理結果(3505)を受け取り、応答(3506)(APDU)を出力する。
(c)復号部(351)は、暗号化されたAPDU(3501)をセッション鍵SK(3503)で復号し、復号されたAPDU(3502)を出力する。
(d)セッション鍵保存部(308)は、記憶部(332)に保存しているセッション鍵SK(3503)を取り出し、復号部(351)及び暗号部(353)に出力する
(e)命令処理部(352)は、命令(3504)を解釈し、該当する命令を実行し、処理結果(3505)を出力する。
(f)暗号部(353)は、セッション鍵SK(3503)で応答(3506)(APDU)を暗号化し、暗号化されたAPDU(応答)(3507)を出力する。
(g)図4では、暗号部(353)、復号部(351)、命令処理部(352)等の全体が、暗号化通信実行する暗号化通信部(333)を構成する。
次に図2及び図2と対応する図5のS401〜408を参照して、カード(102)と受付機(1033)との間の処理を説明する。なお、受付機(1033)にはリーダライタが内蔵されているものとする。なお、以下の説明におけるシステム構成は、図1の左側に示す「装置配置」と同じである。
ユーザがカード(102)を受付機(1033)にタッチすると、受付機(1033)は、店舗の公開鍵証明書(PKC_s)と乱数Rs(313)とを含んだAPDUをカード(102)に送付する。(S401)。カード(102)は、公開鍵証明書(PKC_s)(312)とRs(313)をAPDU(311)として通信部(301)を通して受信する。コマンド解析/生成部(302)では、APDU(311)から、公開鍵証明書(PKC_s)(312)とRs(313)を取り出す。カード(102)は、公開鍵証明書(PKC_s)(312)を検証する。これは、証明書検証部(303)が実施する。(S402)検証は署名の検証を行なう。予めカード(102)に埋め込まれた、信頼できる認証局の公開鍵を用いて公開鍵証明書(PKC_s)の署名の検証を行なう。すなわち、公開鍵証明書(PKC_s)を発行したCA(Certificate Authority)の公開鍵である。証明書検証部(303)は公開鍵証明書(PKC_s)(312)の検証に成功すると、公開鍵(PubKey_s)(314)を抽出する。(S403)。カード(102)は、乱数Rc(315)を生成する。これは、乱数生成部(304)が実施する。(S404)。カード(102)は、セッション鍵SK(316)を生成する。これは、セッション鍵生成部(305)が実施する。実装の例として、Rs(313)とRc(315)とを連結してSHA−1などの一方向性ハッシュ関数に入力し、出力をセッション鍵SK(316)とする(h(Rs,Rc))(S405)
カード(102)は、セッション鍵SK(316)を保存する。これは、セッション鍵保存部(308)が実施する(S406)。このとき、セッション鍵SK(316)は、この鍵を用いて暗号化/復号の処理を実行できるが、カード(102)外に読み出せない属性とする。カード(102)は、セッション鍵SK(316)を公開鍵(PubKey_s)で暗号化し、暗号化されたセッション鍵SK(317)を出力する。これは、公開鍵暗号演算部(306)が実施する(S407)カード(102)は、暗号化されたセッション鍵SK(317)をカード(102)内に保存する。これは、暗号化セッション鍵保存部(307)が実施し、応答(318)を出力する。この応答は、処理に成功したことを示す内容である(S408)。応答(318)は、コマンド解析/生成部(302)でAPDU(319)として出力され、通信部(301)を通じて受付機(1033)に送信される。
このようにして、受付機(1033)にカード(102)をタッチすると、セッション鍵が生成され、カード(102)内に保存される。また、店舗の公開鍵で暗号化されたセッション鍵もカード(102)内に保存される。
次に、図3と、図3に対応する図5のS501〜S503を参照して、カード(102)とATM間の処理について説明する。まず、カード(102)をATM(1031)のリーダライタにタッチすると、ATM(1031)からは、店舗の公開鍵(PubKey_s)で暗号化されたセッション鍵を、カード(102)から読み出すための命令が、APDU(321)としてカード(102)に送信される。カード(102)は通信部(301)を通じてAPDU(321)を受け取り、コマンド解析/生成部(302)において、暗号化されたセッション鍵SK(317)の読み出し命令(322)として解析される。暗号化セッション鍵保存部(307)は暗号化されたセッション鍵SKの読み出し命令(322)を入力とし、保存されている、店舗の公開鍵(PubKey_s)で暗号化されたセッション鍵SKである、暗号化されたセッション鍵SK(323)をコマンド解析/生成部(302)に出力する。コマンド解析/生成部(302)は、これをAPDU(324)として、通信部(301)を通してATMに送信する。これが、カード(102)からATM(1031)へ店舗の公開鍵(PubKey_s)で暗号化されたセッション鍵SKを送信する一連の動作である(処理のトリガはATM側からである)(S501)。
ATM(1031)は、店舗の公開鍵(PubKey_s)で暗号化されたセッション鍵SKを受信すると、予め保存してある店舗の秘密鍵(PriKey_s)でこれを復号し、セッション鍵SKを得る(S502)。この時点で、カード(102)とATMでセッション鍵SKが共有されたことになり、以降、ATM(1031)とカード(102)とは、セッション鍵SKを利用した暗号化通信が実行できる(S503)。
セッション鍵SKを利用した暗号化通信について、図4を用いて、カード(102)の動作を示す。これは、図5におけるS503の動作を詳しく記述したものである。
まず、セッション鍵SKがATM(1031)で得られた時点で、ATM(1031)が以降送信するAPDUは、セッション鍵SKにより暗号化してカード(102)に送信する。このとき、暗号化アルゴリズムは、共通鍵暗号であり、カード(102)とATM(1031)で共通である。図4において、ATM(1031)から送信された暗号化されたAPDU(3501)が、カード(102)で受信される。これは、通信部(301)を通して受信され、復号部(351)に入力される。セッション鍵保存部(308)は、保存されているセッション鍵SK(3503)を復号部(351)に出力する。復号部(351)は、セッション鍵SK(3503)で、暗号化されたAPDU(3501)を復号し、復号されたAPDU(3502)をコマンド解析/生成部(302)に出力する。コマンド解析/生成部(302)では、復号されたAPDU(3502)から命令(3504)を取り出し、命令処理部(352)に出力する。ここで、命令とは、例えば、「カード(102)の特定のファイルを読み出す」、などである。命令処理部(352)では、命令(3504)を処理し、その結果を処理結果(3505)として、コマンド解析/生成部(302)に出力する。コマンド解析/生成部(302)は、処理結果(3505)を応答(3506)(APDU)として出力する。応答(3506)はAPDUである(応答をAPDUのフォーマットにする)。暗号部(353)は、応答(3506)を、セッション鍵SK(3503)を用いて暗号化し、暗号化されたAPDU(応答)(3507)を出力する。セッション鍵SK(3503)はセッション鍵保存部(308)から得る。暗号化されたAPDU(応答)(3507)は、通信部(301)により、ATM(1031)へ送信される。
以上のように、ATMとカード(102)間でAPDUを暗号化した通信が実現できる。
ATMや窓口の各端末で、店舗の秘密鍵(PriKey_s)を予め安全にインストールしておくことで、受付機(1033)にタッチした後、どのATMや窓口の端末においても、即座に暗号化通信が可能となる。
なお、以上の実施の形態1では受付機とATMとは別個の装置としたが、ATMが受付機の機能を兼ね備えても構わない。
実施の形態2.
以下に、実施の形態2〜実施の形態9を説明するが、システム構成は、図1の左側の「装置配置」に同じである。また、以下に登場する時計部、記憶部は図2に記載した。実施の形態1では、カード(102)とATM(1031)との通信において、ATMはカード(102)の「認証」を実施していない。カード(102)の認証が必要な場合は、カード(102)から送信するデータ(暗号化データ)に、カード(102)の公開鍵暗号の秘密鍵によるデジタル署名を付与することで、ATMは、データが正しいカード(102)から送信されたものか確認することができる。この場合、カード(102)内に、予め、カード(102)用の公開鍵暗号の秘密鍵と公開鍵証明書を保存しておく。カード(102)から送信するデータ毎に署名をつけても良い。また、トランザクション上で最も真性が問われるデータ、例えば、入金データなどに限り署名を付与すれば、処理時間を削減可能である。
この動作を説明する。記憶部(332)は、前述のカード用のカード用公開鍵(第2の公開鍵)と、カード用公開鍵に対応するカード用秘密鍵(第2の秘密鍵)とを格納している。暗号化通信部(333)は、暗号化通信の対象となるATM(1031)(第2通信装置)への通信データにカード用秘密鍵を用いて作成したデジタル署名を付し、デジタル署名の付された通信データをATM(1031)に送信する。また暗号化通信部(333)は、カード用公開鍵をATM(1031)に送信する。
実施の形態3.
実施の形態2では、カード(102)の認証にデジタル署名を用いたが、実施の形態3では、暗号化通信時に、カード側から、カード(102)に記録されているカードIDと暗証番号(PIN)をATM(1031)に渡す。ATM側は、カード(102)の利用者が、暗証番号を知っている正規ユーザであることを確認する。この場合、ATM側でカードIDと暗証番号の対を銀行側の施設で参照できることとする。
この動作を説明する。
記憶部(332)は、認証情報として「カードIDと暗証番号(PIN)」(所定の認証情報の一例)を格納している。暗号化通信部(333)は、暗号化通信の対象となるATM(1031)(第2通信装置)への通信データをATM(1031)に送信する。また、暗号化通信部(333)は、記憶部(332)に格納されている認証データをATM(1031)に送信する。
実施の形態4.
実施の形態1では、店舗(銀行側)における秘密鍵(PriKey_s)の管理については特に触れていない。秘密鍵(PriKey_s)は店舗内の設備である「ATMや窓口端末」(第2の通信装置の一例)で共有するが、これらの設備が店舗という安全に管理された環境ゆえに、共有することが可能である。本実施の形態4では、秘密鍵(PriKey_s)の安全性を高めるために、例えば、公開鍵(PubKey_s)/秘密鍵(PriKey_s)の対を1週間に1回更新し、その都度、公開鍵証明書(PKC_s)の再発行を受けることで、秘密鍵(PriKey_s)の寿命を短くする。そして、万が一、秘密鍵(PriKey_s)が漏洩しても、最悪でも、影響を受ける通信を1週間に限定する。なお、寿命は1週間に限らず、適切な期間に設定してよい。秘密鍵(PriKey_s)が更新される都度、店舗のATM/窓口端末に安全に更新する。なお、公開鍵(PubKey_s)/秘密鍵(PriKey_s)の対の更新は、担当作業者が行ってもよいし、プラグラムによって自動的に更新してもよい。公開鍵/秘密鍵の対が更新されればよく、誰が更新するかについては特に限定しない。
実施の形態5.
実施の形態1では、カード(102)が受付機(1033)から公開鍵証明書(PKC_s)を受信した場合に、検証を行なっている。本実施の形態5では、カード(102)は、一度、公開鍵証明書(PKC_s)を検証した場合には保存をしておく。2回目以降に公開鍵証明書(PKC_s)を受信した場合には、保存しているデータ(公開鍵証明書)と同じであれば、カード(102)は検証を行なわず、保存中の公開鍵証明書(PKC_s)を利用する。異なれば、カード(102)は検証を行い、保存してある公開鍵証明書(PKC_s)を新たな公開鍵証明書に上書きする。
この動作を説明する。記憶部(332)は、証明書検証部(303)によって有効と判定された公開鍵証明書を保存している。証明書検証部(303)は、次回に新たに公開鍵証明書が通信部(301)によって受信された場合、新たに受信された公開鍵証明書と記憶部(332)に保存されている公開鍵証明書とを比較し、同じと判定すると新たに受信された公開鍵証明書の検証を行うことなく破棄し、記憶部(332)に保存されている公開鍵証明書を用いる。異なると判定すれば、前記のように上書きする。
実施の形態6.
実施の形態1では、公開鍵証明書(PKC_s)の証明書の「検証」において、署名の検証を行なったが、一般的には、有効期限の検証も行なう。有効期限を検証する際に、カード(102)は「時計機能」を持たない。このため、受付機(1033)は、公開鍵証明書(PKC_s)と共に現在の時刻情報をカード(102)に送付する。カード(102)はこの時刻を用いて証明書の有効期限の検証を行なう。この処理は、証明書検証部(303)にて実施される。すなわち、証明書検証部(303)は、通信部(301)を介して受付機(133)から現在の日時を示す日時情報を取得し、取得した日時情報に基づいて公開鍵証明書を検証する。
実施の形態7.
実施の形態6では、公開鍵証明書(PKC_s)の証明書の有効期限の検証において受付機(1033)から送付された「現在の時刻情報」を利用するが、実施の形態7では、カード(102)に時計が備わっている場合はこれを利用する。
カード(102)は、さらに、時間を計測する時計部(331)を備えている。証明書検証部(303)は、時計部(331)の計測した現在の時刻情報(計測情報)に基づいて、公開鍵証明書を検証する。その他は実施の形態6と同様である。
実施の形態8.
実施の形態1〜7では、カード(102)として非接触ICカード(102)を想定していたが、接触型ICカードに置き換えても良い。その場合、受付機、ATM、窓口端末のリーダライタは接触型に対応したものとする。また、受付機へのタッチ、ATM、窓口端末のリーダライタへのタッチは、リーダライタへのカードの挿入などに置き換わる。
以上、実施の形態1〜実施の形態2で説明した方式(システム)では、以下の理由により通信の安全性が確保される。
(A.非接触ICカードへの脅威)
[a1.偽受付機]
攻撃者が偽受付機を店舗に設置し、非接触ICカードをタッチさせた場合を考える。
・偽受付機が「攻撃者に都合の良い偽造の店舗の公開鍵証明書」を非接触ICカードに送信しても、カード内での公開鍵証明書の検証で検知できる。
・偽受付機が「正当な店舗の公開鍵証明書」を非接触ICカードに送信した場合、非接触ICカード内では、正規の受付機と通信した場合と同じ処理を行うだけで問題は無い。[a2.偽ATM(或いは偽窓口端末)に対して]
攻撃者がATMに細工し、偽のリーダライタと偽のATMアプリケーションを用意し、非接触ICカードをタッチさせた場合を考える。
・偽ATMが店舗の秘密鍵(PriKey)を保持しない限りは、非接触ICカードから送信される「店舗の公開鍵で暗号化されたセッション鍵(SK)」は復号できない。従って、セッション鍵は漏洩しない。
・偽ATMが、非接触ICカードから送信される「店舗の公開鍵で暗号化されたセッション鍵(SK)」を受信した後、これを無視し、偽のセッション鍵(SK’)で暗号化通信を開始しても、非接触ICカードが保存しているセッション鍵(SK)と異なるため、暗号化通信に失敗し、異常が検知される。
(B.受付機への脅威)
[b1.偽非接触ICカード]
店舗の公開鍵証明書(PKC_s)を送付するだけであり、相手が偽造であったとしても問題ない。
(C.ATM(或いは窓口端末)への脅威)
[c1.偽非接触ICカード]
以下を偽造した偽非接触ICカードを仮定する。
・カードID(例えば、特許太郎のカードIDを記録し、特許太郎のキャッシュカードのふりをする)
・「店舗の公開鍵で暗号化された偽セッション鍵(SK’)」
つまり、犯罪者は、偽非接触ICカードを使って、特許太郎の取引を行うことを想定する。この場合、ATMは偽セッション鍵(SK’)を復号し暗号化通信を正常に開始する。しかし、取引においては、非接触ICカードに記録されたユーザの秘密鍵による署名が取引データに付与されるため、ユーザの秘密鍵をコピーしない限り、異常として検知される。非接触ICカード内のユーザの秘密鍵は、一般的には非接触ICカードの耐タンパ性により安全性が保証されるため、抜き出して他のカードに移すことは不可能である。
偽セッション鍵SK’を自身で生成しているため、暗号化通信を復号できる。復号で得られる情報は、ATMとの送受信データである。しかし、本物の特許太郎の情報は、取引データに正当な特許太郎の署名が付与できた場合にのみATMから通知されるため、正当な署名が生成できないため攻撃者のメリットとなるデータは得られない。
(D.秘密鍵PrivateKeyの管理)
秘密鍵PrivateKeyを店舗内の複数機器(ATM/窓口端末)に持たせることが、従来技術の課題であった処理時間の削減に寄与している。店舗という限られた区域の中であれば、運用で安全に共有できる。安全性を高めるためには、定期的に鍵対(公開鍵(PublicKey), 秘密鍵PrivateKey)を更新し、認証局から公開鍵証明書の更新をうける。例えば、1週間に1回更新し、週始めの月曜日の開店前に更新した秘密鍵PrivateKeyを共有すれば安全性は高まる。
実施の形態9.
実施の形態9は、ICカードのハードウェア構成を簡単に説明する。
図8は、ICカードのハードウェア資源を示す図である。ICカードは、プログラムを実行するCPU810(Central Processing Unit)を備えている。CPU810は、バス825を介してROM(Read Only Memory)811、RAM(Random Access Memory)812、通信部816、と接続され、これらのハードウェアデバイスを制御する。
RAM812は、揮発性メモリの一例である。ROM811は、不揮発性メモリの一例である。これらは、記憶部の一例である。通信部816は、入力部あるいは出力部の一例である。
ROM811には、プログラム群823が記憶されている。プログラム群823のプログラムは、CPU810により実行される。
上記プログラム群823には、以上の実施の形態の説明において「〜部」として説明した機能を実行するプログラムが記憶されている。CPU810により読み出され実行される。
また、以上の実施の形態の説明において、「〜部」として説明したものは、「〜手段」、「〜回路」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
なお、以上の実施の形態では、ICカードを説明したが、ICカードの動作を、暗号通信方法あるいは暗号通信プログラム、あるいは暗号通信プログラムを記録した記録媒体として把握することも可能である。
なお、以上の実施の形態1〜9では、携帯型情報装置としてカードを説明したが一例である。カードに限らず、携帯電話やその他の携帯型情報端末装置でもよいのはもちろんである。
以上に説明した実施の形態1〜9の非接触ICカードシステムでは、ユーザが銀行店舗に入店する際に、非接触ICカードを受付機でタッチし、受け付け処理を済ませる。その後、ユーザがATM(或いは窓口端末)で非接触ICカードを提示すると、鍵交換の処理を経ずに非接触ICカードとATM(或いは窓口端末)の間で暗号化通信が行われデータが保護される運用である。この非接触ICカードシステムは、以下の特長を持つ。
(1)セッション鍵SKの生成
店舗の受付機のリーダライタに非接触ICカードをタッチすると、受付機から非接触ICカードに店舗の公開鍵証明書(PKC_s)が送信される。非接触ICカードでは、公開鍵証明書(PKC_s)の検証を行い、成功した場合にのみ、セッション鍵(SK)を生成し、セッション鍵SKを自身に保存する。セッション鍵SKは、「読み出せないが、暗号化/復号の処理は実行可能」な属性として保存する。非接触ICカードは、セッション鍵SKを公開鍵証明書(PKC_s)から得られた店舗の公開鍵(PubKey_s)で暗号化し保存する。
(2)(1)の処理の後、非接触ICカードをATMで使用する際に、ATMのリーダライタに非接触ICカードをタッチすると、非接触ICカードから公開鍵(PubKey_s)で暗号化されたセッション鍵SKがATMに送付される。ATMは店舗の秘密鍵(PriKey_s)でセッション鍵SKを復号する。セッション鍵SKが非接触ICカードとATMで共有されたので、以後、非接触ICカードとATMで暗号化通信を行う。
なお、ATMは窓口端末に置き換えてもよい。
(3)ATMに対して送信する取引データにカードの署名を付与する。
(4)店舗の秘密鍵である秘密鍵(PriKey_s)をATM/窓口端末に予め配布しておくことにより、(2)の復号を実現する。
これら(1)〜(4)により、非接触ICカードシステムは、セッション鍵共有の処理時間を低減し、受付機からATM/窓口へのセッション鍵通知と管理の設備を削減し、安全・簡便にセッション鍵を共有することができる。
102 カード、301 通信部、303 証明書検証部、305 セッション鍵生成部、306 公開鍵暗号演算部、331 時計部、332 記憶部、333 暗号化通信部、1033 受付機、1031 ATM、1032 窓口装置。

Claims (8)

  1. 第1の通信装置と通信して第1の公開鍵を含む公開鍵証明書を受信する第1通信部と、
    前記第1通信部による前記第1の公開鍵の受信を契機としてセッション鍵を生成するセッション鍵生成部と、
    前記セッション鍵生成部によって生成された前記セッション鍵を前記第1通信部の受信した前記第1の公開鍵を用いて暗号化して暗号化セッション鍵を生成する公開鍵暗号演算部と、
    前記セッション鍵生成部によって生成された前記セッション鍵と前記公開鍵暗号演算部によって暗号化された前記暗号化セッション鍵とを記憶する記憶部と、
    第2の通信装置と通信を開始し、前記記憶部に記憶された前記暗号化セッション鍵を前記第2の通信装置に送信する第2通信部と、
    前記暗号化セッション鍵を受信して前記第1の公開鍵に対応する第1の秘密鍵で前記暗号化セッション鍵を復号した前記第2の通信装置との間で、前記記憶部に記憶された前記セッション鍵を用いた暗号通信を実行する暗号化通信部と
    前記第1通信部が受信した前記第1の公開鍵を含む前記公開鍵証明書を検証する証明書検証部と
    を備え、
    前記記憶部は、
    前記証明書検証部によって有効と判定された前記公開鍵証明書を保存し、
    前記証明書検証部は、
    次回に新たに前記公開鍵証明書が前記第1通信部によって受信された場合、新たに受信された前記公開鍵証明書と前記記憶部に保存されている前記公開鍵証明書とを比較し、同じと判定すると新たに受信された前記公開鍵証明書の検証を行うことなく破棄し、前記記憶部に保存されている前記公開鍵証明書を用いることを特徴とする携帯型情報装置。
  2. 前記記憶部は、
    第2の公開鍵と、前記第2の公開鍵に対応する第2の秘密鍵とを格納し、
    前記暗号化通信部は、
    前記暗号通信の対象となる前記第2の通信装置への通信データに前記第2の秘密鍵を用いて作成したデジタル署名を付し、前記デジタル署名の付された前記通信データを前記第2の通信装置に送信すると共に、前記第2の公開鍵を前記第2の通信装置に送信することを特徴とする請求項1記載の携帯型情報装置。
  3. 前記記憶部は、
    所定の認証情報を格納し、
    前記暗号化通信部は、
    前記暗号通信の対象となる前記第2の通信装置への通信データを前記第2の通信装置に送信すると共に、前記記憶部に格納された所定の認証データを前記第2の通信装置に送信することを特徴とする請求項1または2のいずれかに記載の携帯型情報装置。
  4. 前記第1の通信装置から送信される前記第1の公開鍵と、前記第1の公開鍵に対応すると共に前記第2の通信装置によって前記暗号化セッション鍵の復号に使用される前記第1の秘密鍵とは、
    所定の期間が経過すると、更新されることを特徴とする請求項1〜3のいずれかに記載の携帯型情報装置。
  5. 前記証明書検証部は、
    前記第1通信部を介して前記第1の通信装置から現在の日時を示す日時情報を取得し、取得した前記日時情報に基づいて前記公開鍵証明書を検証することを特徴とする請求項1〜4のいずれかに記載の携帯型情報装置。
  6. 前記携帯型情報装置は、さらに、
    日時を計測する時計部を備え、
    前記証明書検証部は、
    前記時計部の計測した日時情報に基づいて前記公開鍵証明書を検証することを特徴とする請求項1〜5のいずれかに記載の携帯型情報装置。
  7. 前記携帯型情報装置は、
    前記第1の通信装置及び前記第2の通信装置との通信方式が、非接触型と接触型との、いずれかであることを特徴とする請求項1〜のいずれかに記載の携帯型情報装置。
  8. 記憶部を有するコンピュータ
    第1の通信装置と通信して第1の公開鍵を含む公開鍵証明書を受信する処理
    記第1の公開鍵の受信を契機としてセッション鍵を生成する処理
    成された前記セッション受信した前記第1の公開鍵を用いて暗号化して暗号化セッション鍵を生成する処理
    成された前記セッション鍵と号化された前記暗号化セッション鍵とを前記記憶部に記憶する処理
    第2の通信装置と通信を開始し、前記記憶部に記憶された前記暗号化セッション鍵を前記第2の通信装置に送信する処理
    前記暗号化セッション鍵を受信して前記第1の公開鍵に対応する第1の秘密鍵で前記暗号化セッション鍵を復号した前記第2の通信装置との間で、前記記憶部に記憶された前記セッション鍵を用いた暗号通信を実行する処理、
    受信した前記第1の公開鍵を含む前記公開鍵証明書を検証する処理、
    検証によって有効と判定された前記公開鍵証明書を前記記憶部に保存する処理、
    次回に新たに前記公開鍵証明書が受信された場合、新たに受信された前記公開鍵証明書と前記記憶部に保存されている前記公開鍵証明書とを比較し、同じと判定すると新たに受信された前記公開鍵証明書の検証を行うことなく破棄し、前記記憶部に保存されている前記公開鍵証明書を用いる処理、
    を実行させるための暗号化通信プログラム。
JP2010183529A 2010-08-19 2010-08-19 携帯型情報装置及び暗号化通信プログラム Expired - Fee Related JP5489913B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010183529A JP5489913B2 (ja) 2010-08-19 2010-08-19 携帯型情報装置及び暗号化通信プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010183529A JP5489913B2 (ja) 2010-08-19 2010-08-19 携帯型情報装置及び暗号化通信プログラム

Publications (2)

Publication Number Publication Date
JP2012044430A JP2012044430A (ja) 2012-03-01
JP5489913B2 true JP5489913B2 (ja) 2014-05-14

Family

ID=45900225

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010183529A Expired - Fee Related JP5489913B2 (ja) 2010-08-19 2010-08-19 携帯型情報装置及び暗号化通信プログラム

Country Status (1)

Country Link
JP (1) JP5489913B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015019267A (ja) * 2013-07-11 2015-01-29 株式会社リコー 通信システム、情報機器、通信方法およびプログラム
US9608807B2 (en) * 2014-12-12 2017-03-28 Gn Hearing A/S Hearing device with communication protection and related method
JP2016139861A (ja) * 2015-01-26 2016-08-04 パナソニックIpマネジメント株式会社 暗号化装置、暗号化方法及び配信システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004289720A (ja) * 2003-03-25 2004-10-14 Mitsubishi Electric Information Systems Corp 電子署名システム及びそれをコンピュータに実行させるプログラム
JP4664644B2 (ja) * 2004-10-08 2011-04-06 富士通株式会社 生体認証装置及び端末
JP4409497B2 (ja) * 2005-10-24 2010-02-03 エヌ・ティ・ティ・ソフトウェア株式会社 秘密情報送信方法

Also Published As

Publication number Publication date
JP2012044430A (ja) 2012-03-01

Similar Documents

Publication Publication Date Title
JP7257561B2 (ja) コンピュータに実装される方法、ホストコンピュータ、コンピュータ読み取り可能な媒体
US10142114B2 (en) ID system and program, and ID method
TWI497336B (zh) 用於資料安全之裝置及電腦程式
KR101680525B1 (ko) 앱 위변조 탐지 가능한 2채널 인증 대행 시스템 및 그 방법
CN106797311B (zh) 用于安全密码生成的系统、方法和存储介质
CN103714639B (zh) 一种实现对pos终端安全操作的方法及系统
US11234105B2 (en) Methods and systems for asset obfuscation
CN106464673B (zh) 用于验证装置注册的增强的安全性
KR101544722B1 (ko) 부인 방지 방법, 이를 위한 결제 관리 서버 및 사용자 단말기
KR101863953B1 (ko) 전자 서명 서비스 시스템 및 방법
EP3610607B1 (en) Cryptographic key management based on identity information
US20090103725A1 (en) System and method for secure communication in a retail environment
EP1349034A2 (en) Service providing system in which services are provided from service provider apparatus to service user apparatus via network
CN105427099A (zh) 安全电子交易的网络认证方法
CN112232814B (zh) 支付密钥的加密和解密方法、支付认证方法及终端设备
EP2628133B1 (en) Authenticate a fingerprint image
KR20190122655A (ko) 생체인식 데이터 템플레이트의 업데이트
CN110999254B (zh) 安全地执行加密操作
KR20200023469A (ko) 인증 단말, 인증 장치 및 이들을 이용한 인증 방법
CN111316596B (zh) 具有身份验证的加密芯片
JP5489913B2 (ja) 携帯型情報装置及び暗号化通信プログラム
CN113595714A (zh) 带有多个旋转安全密钥的非接触式卡
KR102122555B1 (ko) 사용자가 소지한 금융 카드 기반 본인 인증 시스템 및 방법
KR101933090B1 (ko) 전자 서명 제공 방법 및 그 서버
JP2007258789A (ja) エージェント認証システム、エージェント認証方法、及びエージェント認証プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140110

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140225

R150 Certificate of patent or registration of utility model

Ref document number: 5489913

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

LAPS Cancellation because of no payment of annual fees