JPWO2020004495A1 - オンラインサービス提供システム、アプリケーションプログラム - Google Patents

オンラインサービス提供システム、アプリケーションプログラム Download PDF

Info

Publication number
JPWO2020004495A1
JPWO2020004495A1 JP2020527595A JP2020527595A JPWO2020004495A1 JP WO2020004495 A1 JPWO2020004495 A1 JP WO2020004495A1 JP 2020527595 A JP2020527595 A JP 2020527595A JP 2020527595 A JP2020527595 A JP 2020527595A JP WO2020004495 A1 JPWO2020004495 A1 JP WO2020004495A1
Authority
JP
Japan
Prior art keywords
user
user device
card
chip
service providing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2020527595A
Other languages
English (en)
Other versions
JP7470313B2 (ja
JPWO2020004495A5 (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.)
Japan Communications Inc
Original Assignee
Japan Communications Inc
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 Japan Communications Inc filed Critical Japan Communications Inc
Publication of JPWO2020004495A1 publication Critical patent/JPWO2020004495A1/ja
Publication of JPWO2020004495A5 publication Critical patent/JPWO2020004495A5/ja
Priority to JP2023222407A priority Critical patent/JP2024029152A/ja
Application granted granted Critical
Publication of JP7470313B2 publication Critical patent/JP7470313B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/108Source integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/40Security arrangements using identity modules
    • H04W12/48Security arrangements using identity modules using secure binding, e.g. securely binding identity modules to devices, services or applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

ユーザがアプリから振込などの手続を行おうとすると、まず、PINコードなどによるユーザ認証が要求される。ユーザ認証に成功すると、ICチップの機能制限が解除され、ICチップが提供する機能を利用可能なモードとなる。アプリは、ICチップの機能を利用して、手続内容が記述された手続メッセージを秘密鍵で暗号化し電子署名を生成する。この電子署名と手続メッセージをオンラインサービスのサーバに送ると、該サーバが、対応する電子証明書を用いて電子署名の検証を行う。検証の結果、正当なユーザから送られてきた手続メッセージであり、かつ、内容が改ざんされていないことが確認されると、サーバは、手続メッセージの内容に従い振込などの手続を実行する。

Description

本発明は、携帯機器からオンラインサービスを利用する際のセキュリティを向上する技術に関する。
インターネットの普及により多種多様なオンラインサービスが登場し、多くの人々に利用されている。一方で、サイバーセキュリティ問題は日増しに増大しているため、安心・安全にオンラインサービスを利用するためのセキュリティ対策が求められている。
例えば、オンラインバンキングサービスにおいては、昨今、中間者攻撃(MITM:Man In The Middle)と呼ばれるサイバー攻撃による被害が急増している。MITM攻撃は、マルウェアや偽サイトを使って、オンラインバンキングの利用者と金融機関との間の通信を乗っ取り(通信内容を改ざんし)、利用者と金融機関の双方に気づかれることなく不正な送金処理などを行う攻撃手法である。MITB(Man In The Browser)もMITMの一種である。なお、ATM網を利用した送金処理は古くから行なわれていたが、従来は専用線を利用していたためサイバー攻撃のリスクは極めて低かった。これに対し、インターネットのようなオープンなネットワークを利用するオンラインサービスは、MITM攻撃のような様々な脅威に晒されるのである。
現在のオンラインバンキングサービスでは、セキュリティ対策として、ワンタイムパスワード発行器を利用する方法が広く用いられている。これは、サービス利用者にあらかじめワンタイムパスワード発行器を配布しておき、サービスへのログイン時や送金処理を行う際などに、ワンタイムパスワード発行器で生成・表示されるワンタイムパスワードを使って認証を行うという方法である(特許文献1参照)。しかしこの方法は、MITM攻撃に対しては効果がない。MITM攻撃の一種であるMITB攻撃では、マルウェアや偽サイトによりログインIDやワンタイムパスワードなどの認証情報を利用者自身に入力させ、それらの認証情報をそのまま使って利用者へのなりすましを行うからである。
そこで最近では、MITM攻撃への対策として「トランザクション認証」と呼ばれる対策をとる金融機関が増えてきている。トランザクション認証は、一般的に、利用者とサーバの間のトランザクションの暗号化(電子署名)と、ブラウザとは別経路のセッションを利用したトランザクション内容の確認との組み合わせにより実現される。トランザクション内容の確認には、トークンと呼ばれる専用のデバイスが利用されることが多い(特許文献2参照)。
特開2016−071538号公報 特開2012−048728号公報
トランザクション認証は、利用者とサーバの間のトランザクションに電子署名を行うため、MITM攻撃には有効な対策である。しかしながら、現在主流であるハードウェアトークンを用いる方法はいくつかの課題が指摘されている。一つは、ユーザにとっての利便性の低さである。スマートフォンやタブレット端末などの携帯機器(モバイルデバイス)でオンラインサービスを利用することを想定した場合、ユーザは外出先に常にトークンを携帯しなければならず面倒である。しかも、サービスごとにトークンが異なるため、利用するサービスが増えるほど携帯するトークンの数も増えてしまい、実用性に欠ける。さらに、盗難や紛失のリスクを考慮すると、トークンを持ち歩くことに抵抗を感じる人も多い。二つ目は、サービス提供者の負担コストである。サービス提供者は、オンラインサービスの利用者全員にトークンを配布し管理する必要があり、そのコストは無視できない。
本発明は上記実情に鑑みなされたものであって、モバイルの利便性を損なうことなく、セキュアなサービス利用を実現可能な、新たなセキュリティ技術を提供することを目的とする。また、本発明のさらなる目的は、オンラインサービスの提供者が、ユーザから受信した内容が改ざんされていないことを容易に確認できると共に、ユーザに対してセキュアな環境を保証することのできる、新たなセキュリティ技術を提供することにある。
本発明の第一側面は、
携帯機器からオンラインサービスを安全に利用可能な仕組みを提供するオンラインサービス提供システムであって、
登録されたユーザに対し、インターネットを通じてオンラインサービスを提供するサービス提供サーバと、
前記ユーザが所持している携帯機器であるユーザ機器に設けられるICチップと、
前記ユーザ機器が有する本体プロセッサにより実行され、前記ユーザ機器を前記オンラインサービスを利用するための端末として機能させるアプリケーションプログラムと、を有し、
前記ICチップは、
少なくとも、前記ユーザ機器を使用する者の正当性を確認するためのユーザ認証に用いられる本人情報、前記ユーザの秘密鍵、前記秘密鍵とペアになる前記ユーザの公開鍵、及び、前記公開鍵を含む前記ユーザの電子証明書を非一時的に記憶するメモリと、
少なくとも、前記アプリケーションプログラムから与えられる情報を前記本人情報と照合することにより前記ユーザ認証を行う認証機能、及び、前記アプリケーションプログラムから与えられるデータに対し前記秘密鍵を用いた電子署名を行う電子署名機能を有するプロセッサと、
を有しており、
前記アプリケーションプログラムは、前記ユーザ機器を、
前記ユーザ機器を使用する者から取得した情報に基づき、前記ICチップの前記認証機能を利用して、前記ユーザ認証を行うユーザ認証手段、及び、
前記ユーザ認証により前記ユーザ機器を使用する者が正当であると確認された場合に、前記ICチップの前記電子署名機能を利用して、前記オンラインサービスの手続に必要な情報を記述したメッセージに対し電子署名を行い、電子署名付きメッセージを含む手続要求をインターネットを通じて前記サービス提供サーバに送信する送信手段、
として機能させ、
前記サービス提供サーバは、
前記ユーザに関する情報として、前記ユーザの電子証明書を記憶するユーザ情報記憶手段と、
前記ユーザ機器から前記手続要求を受信した場合に、前記ユーザの電子証明書を用いて前記手続要求に含まれる前記電子署名付きメッセージを検証することによって前記手続要求の正当性を確認し、前記手続要求が正当であると確認された場合に前記手続要求に含まれる前記電子署名付きメッセージに記述された情報に基づく手続を実行する手続制御手段と、
を有することを特徴とするオンラインサービス提供システムを提供する。
本発明の第二側面は、
ユーザが所持している携帯機器であるユーザ機器が有する本体プロセッサにより実行され、前記ユーザ機器を、サービス提供サーバがインターネットを通じて提供するオンラインサービスを利用するための端末として機能させるアプリケーションプログラムであって、
前記ユーザ機器には、
少なくとも、前記ユーザ機器を使用する者の正当性を確認するためのユーザ認証に用いられる本人情報、前記ユーザの秘密鍵、前記秘密鍵とペアになる前記ユーザの公開鍵、及び、前記公開鍵を含む前記ユーザの電子証明書を非一時的に記憶するメモリと、
少なくとも、前記アプリケーションプログラムから与えられる情報を前記本人情報と照合することにより前記ユーザ認証を行う認証機能、及び、前記アプリケーションプログラムから与えられるデータに対し前記秘密鍵を用いた電子署名を行う電子署名機能を有するプロセッサと、
を有するICチップが設けられており、
前記アプリケーションプログラムは、前記ユーザ機器を、
前記ユーザ機器を使用する者から取得した情報に基づき、前記ICチップの前記認証機能を利用して、前記ユーザ認証を行うユーザ認証手段、及び、
前記ユーザ認証により前記ユーザ機器を使用する者が正当であると確認された場合に、前記ICチップの前記電子署名機能を利用して、前記オンラインサービスの手続に必要な情報を記述したメッセージに対し電子署名を行い、電子署名付きメッセージを含む手続要求をインターネットを通じて前記サービス提供サーバに送信する送信手段、
として機能させることを特徴とするアプリケーションプログラムを提供する。
本発明は、上記のサービス提供サーバ、又は、上記のICカードとアプリケーションプログラムを備える携帯機器、又は、上記の処理の少なくとも一部を含むオンラインサービス提供方法、又は、上記のICカードとアプリケーションプログラムによる処理の少なくとも一部を含む携帯機器の制御方法、又は、上記のアプリケーションプログラムを非一時的に記憶したコンピュータ読取可能な記憶媒体、として捉えることもできる。
本発明によれば、モバイルの利便性を損なうことなく、セキュアなサービス利用を実現可能な、新たなセキュリティ技術を提供することができる。また、本発明によれば、オンラインサービスの提供者が、ユーザから受信した内容が改ざんされていないことを容易に確認できると共に、ユーザに対してセキュアな環境を保証することのできる、新たなセキュリティ技術を提供することができる。
図1は、本発明に係るオンラインサービス提供システムの特徴の一つを示す図である。 図2は、オンラインサービスを提供するサービス提供サーバの構成を示すブロック図である。 図3は、オンラインサービスを利用するために使用するユーザ機器の構成を示すブロック図である。 図4は、SIMカードとICカードの外観及び装着形態を模式的に示す図である。 図5は、SIMカードとICカードのハードウェア構成を模式的に示すブロック図である。 図6は、ユーザ機器とICカードの論理的な構成を模式的に示すブロック図である。 図7は、ICカードの発行手続を説明する図である。 図8は、ICカードの発行手続を説明する図である。 図9は、ICカード管理データベースのデータ構造を示す図である。 図10は、オンラインサービスへの登録手続の流れを示す図である。 図11は、オンラインサービスへの登録手続においてユーザ機器に表示される画面例である。 図12は、オンラインサービスのログイン認証の流れを示す図である。 図13は、オンラインサービスのログイン認証においてユーザ機器に表示される画面例である。 図14は、オンラインサービスの利用時の流れを示す図である。 図15は、オンラインサービスの利用時にユーザ機器に表示される画面例である。 図16は、セキュアエレメントを内蔵するユーザ機器のハードウェア構成を模式的に示すブロック図である。 図17は、SIMカードを備えるユーザ機器のハードウェア構成を模式的に示すブロック図である。 図18は、電子証明書のポストインストールを説明する図である。 図19は、ユーザ機器とサーバとの間で通信を行う際に、ユーザ機器において利用されるICチップを特定するための仕組みの一例を示す図である。 図20は、ユーザ機器とサーバとの間で通信を行う際に、ユーザ機器において利用されるICチップを特定するための仕組みの一例を示す図である。
<オンラインサービス提供システムの概要>
図1は、本発明に係るオンラインサービス提供システムの特徴の一つである、サブSIMと呼ばれるICカードを利用した公開鍵暗号による手続内容署名(トランザクション署名)の流れを示している。
ユーザが所持するユーザ機器(スマートフォンなど)には、銀行などのサービス提供者が提供するオンラインサービスを利用するためのアプリケーションプログラム(以下「アプリ(APP)」とも称す)がインストールされていると共に、サブSIMと呼ばれるICカードが装着されている。サブSIMには、当該ユーザ固有の秘密鍵が格納されている。なお、日本国内で本サービスを実施する場合、秘密鍵のペアとなる公開鍵については、電子署名及び認証業務に関する法律(平成12年法律第102号。以下、「電子署名法」という。)に基づく認定を受けている認証局に事前に登録され、認証局より電子証明書が発行されているものとする。
上記システムにおいて、ユーザがアプリから振込などの手続を行おうとすると、まず、PINコード、パスワード、又は生体認証などによるユーザ認証(本人認証)が要求される。ユーザ認証に成功すると(つまり、アプリを操作している者がユーザ本人であることが確認されると)、サブSIMの機能制限が解除され、サブSIMが提供する機能を利用可能なモードとなる。アプリは、サブSIMの機能を利用して、手続内容が記述された手続メッセージ(トランザクション)を秘密鍵で暗号化し電子署名を生成する。この電子署名と手続メッセージをオンラインサービスのサーバに送ると、該サーバが、対応する電子証明書を用いて電子署名の検証を行う。検証の結果、正当なユーザから送られてきた手続メッセージであり、かつ、内容が改ざんされていないことが確認されると、サーバは、手続メッセージの内容に従い振込などの手続を実行する。
このような方法によれば、ユーザ機器以外のデバイス(従来のトークンのようなもの)を持ち歩く必要がなく、ユーザ機器単体でオンラインサービスの利用が可能となるため、利便性が高い。また、本人認証だけで電子署名を用いたセキュアな手続が可能なため、スマートかつ簡便な操作性を実現できる。
さらに、サブSIMと呼ばれるICカードに格納された秘密鍵と、ICカードが提供する暗号化機能を利用するため、セキュアなデータ通信を実現できる。この秘密鍵は漏えいのリスクが小さく、また、PINコードやパスワードや生体認証による本人認証をクリアしなければ秘密鍵や暗号化機能を利用することもできないので、第三者による不正利用のリスクを可及的に小さくできる。
また、サービス提供者にとっては、トークンのようなデバイスを配布したり管理したりする必要がなくなり、運用コストの低減を期待できる。また電子署名法に基づく認定を受けている認証局が発行した電子証明書を利用して電子署名が付されたデータは、電子署名法第3条により、ユーザ本人が真正に作成したものと推定されるため、訴訟リスクを低減できるという利点もある。
<サービス提供サーバ>
図2は、サービス提供サーバの構成を示すブロック図である。サービス提供サーバ20は、サービス提供者によるオンラインサービスをインターネットを通じて提供するサーバである。以下、銀行などの金融機関によるオンラインでの金融取引サービス(いわゆるオンラインバンキング)を例にとり、サービス提供サーバ20の説明を行うが、これはあくまで一つの適用例にすぎず、本発明はあらゆる種類のオンラインサービスに好ましく適用可能である。
サービス提供サーバ20は、主な機能として、ユーザ登録部200、ユーザ情報記憶部201、ログイン制御部202、手続制御部203を有する。ユーザ登録部200は、ユーザの新規登録処理を行う機能である。ユーザ情報記憶部201は、登録されたユーザの情報を記憶・管理するデータベースである。ログイン制御部202は、ユーザからのログイン要求に応答してオンラインサービスの利用の可否を制御する機能である。手続制御部203は、ユーザからの手続要求に応答してオンラインサービスの該当手続の実行を制御する機能である。これらの機能及びその処理の詳細は後述する。
サービス提供サーバ20は、例えば、CPU(プロセッサ)、メモリ(RAM)、ストレージ(HDD、SSDなど)、通信I/F、入出力装置などを備えた汎用のコンピュータにより構成することができる。その場合、上述した機能及びその処理は、ストレージに格納されたプログラムをメモリに展開し、CPUがプログラムを実行することによって実現される。なお、サービス提供サーバ20は、1台のコンピュータで構成してもよいし、分散コンピューティングやクラウドコンピューティングにより構成してもよい。また、汎用のコンピュータではなく、専用のコンピュータにより構成してもよいし、上述した機能又はその処理の一部をソフトウェアではなくASICやFPGAなどで構成してもよい。
<ユーザ機器>
図3は、ユーザがオンラインサービスを利用するために使用する携帯機器(「ユーザ機器」と称す)の構成を示すブロック図である。本実施形態では、ユーザ機器30の一例としてスマートフォンを例示するが、これはあくまで一つの適用例にすぎない。ユーザ機器30としては、オンラインサービスを利用するためのアプリケーションプログラムを実行するためのプロセッサとメモリを有し、SIMカード(Subscriber Identity Module Card)が装着され、かつ、インターネットとの接続が可能な携帯型の電子機器であればいかなるデバイスを用いてもよい。スマートフォンの他、例えば、タブレット端末、モバイルPC、ウェアラブルPC、スマートウォッチ、スマートグラス、スマートウォレット、携帯ゲーム機などを例示できる。
ユーザ機器30は、主なハードウェア資源として、CPU(プロセッサ)300、メモリ301、ストレージ302、タッチパネルディスプレイ303、通信モジュール304、電源305、SIMカード306、ICカード307、NFCチップ320を有する。メモリ301はRAMであり、CPU300がワーキングメモリとして使用する記憶領域を提供する。ストレージ302はアプリケーションプログラムや各種のデータを格納するための不揮発性の記憶媒体であり、例えば、内蔵のEEPROM、カードスロットに装着されるフラッシュメモリなどが該当する。タッチパネルディスプレイ303は、表示装置と入力装置を兼ねたデバイスである。通信モジュール304は、ユーザ機器30によるデータ通信や音声通信を担うデバイスである。本実施形態の通信モジュール304は、3Gや4G/LTEなどの携帯電話網を利用した通信、Wi−Fiによる通信、近距離無線通信などに対応しているものとする。電源305は、ユーザ機器30に対し電力を供給するものであり、リチウムイオンバッテリと電源回路から構成される。SIMカード306は、携帯電話網を利用した通信の加入者情報が記録された接触型のICカードである。ICカード307も、SIMカード306と同じく接触型のICカードである。ICカード307は、オンラインサービスのセキュアな利用を実現するためにユーザ機器30に付加的に装着されたデバイスである。NFCチップ320は、NFC(Near Field Communication)規格の近距離無線通信機能とそれを利用したアプリケーションを提供するICチップである。なお、本実施形態では、SIMカード306、ICカード307、NFCチップ320を別のハードウェアで構成したが、SIMカード306及び/又はICカード307にNFCの機能を搭載してもよい。
<ICカード>
図4は、SIMカード306とICカード307の外観及び装着形態を模式的に示し、図5は、SIMカード306とICカード307のハードウェア構成を模式的に示すブロック図である。
SIMカード306は、幅15mm×高さ12mm×厚み0.76mmの樹脂プレート上にICチップ40が実装された構造を有する。図5に示すように、ICチップ40は、プロセッサ401、RAM402、不揮発性メモリ403、及び、8つのピン(電極)404を有する。不揮発性メモリ403には、SIMカード306のユニークなシリアルナンバー(ICCID)、加入者識別情報(IMSI)などのデータと、プロセッサ401で実行されるプログラムとが格納されている。8つのピン404は、電源入力端子、リセット端子、クロック端子、アース端子、プログラム用電圧入力端子、I/O端子、予備端子を含む。
SIMカード306は、ユーザが移動体通信事業者(MNO)又は仮想移動体通信事業者(MVNO)の提供する移動通信サービスに加入したときに、その事業者から提供されるものである。SIMカード306に格納されるデータやプログラムは事業者ごとに相違しているが、SIMカード306自体の基本的な構造は国際規格に準拠している限りにおいて同一である。なお、本実施形態では、micro−SIMを例に挙げたが、SIMカードとしてはmini−SIMやnano−SIMを用いることもできる。
ICカード307は、幅と高さがSIMカード306と同じ又は略同じサイズであり、厚みが約0.1〜0.2mm程度の可撓性フィルムにICチップ41が埋め込まれた構造を有する。ICチップ41も、プロセッサ411、RAM412、不揮発性メモリ413、及び、8つのピン(電極)414を有している。ICカード307の不揮発性メモリ413には、オンラインサービスのセキュアな利用を実現するためのデータ及びプログラムが格納される(詳細は後述する)。
ICカード307の8つのピン414は、ICカード307の表面と裏面の両方に露出しており、かつ、SIMカード306の8つのピン404と同じ配列になっている。図4に示すように、このICカード307をSIMカード306に重ねて貼り付けることにより、ICカード307とSIMカード306の対応するピン(電極)同士が物理的・電気的に接続されることとなる。ICカード307は極めて薄いため、ICカード307を貼り付けた状態のSIMカード306をユーザ機器30のSIMカードスロット308に装着することが可能である。図5は、ICカード307とSIMカード306がSIMカードスロット308に装着された状態を模式的に示している。ICカード307の表面のピン414がユーザ機器30の制御基板309の端子310に接続され、SIMカード306のピン404はICカード307のピン414を介して制御基板309の端子310に接続されることとなる。
ユーザ機器30のCPU300は、ICカード307とSIMカード306のいずれに対しても選択的にアクセスすることができる。言い換えると、ユーザ機器30のCPU300で動作するアプリケーションプログラムは、ICカード307と通信を行うモードとSIMカード306と通信を行うモードを選択的に切り替えることができる。前者のモードの場合、ICカード307のプロセッサ411は、ユーザ機器30から受信した信号(命令)を自身で処理し、SIMカード306には伝送しない。他方、後者のモードの場合は、ICカード307のプロセッサ411は、ユーザ機器30とSIMカード306の間の信号を仲介する(スルーする)動作を行う。本実施形態のように、通信用のSIMカード306に重ね貼りするタイプのICカード307は「サブSIM」とも呼ばれる。
サブSIMタイプのICカード307を用いることにより、次のようなメリットがある。SIMカードスロットを有する携帯機器であれば、ICカード307の装着が可能である(すなわち、携帯機器側に特別な構造や細工が一切不要であり、ほとんど全ての携帯機器にICカード307の装着が可能である)。SIMカードスロットが1つしかない携帯機器に対しても(言い換えると、SIMカードスロットの空きが無い場合でも)、ICカード307を装着可能である。また、通信用のSIMカード306とICカード307とは機能的には完全に独立しており、互いに影響を与えることが無いため、ICカード307を装着した後も音声通信やデータ通信をこれまで同様利用することができる。しかも、どの事業者のSIMカードに対しても追加可能であるため、導入・普及が容易である。
<ICカードの機能>
図6は、ユーザ機器30とICカード307の論理的な構成を模式的に示すブロック図である。
ユーザ機器30には、サービス提供サーバ20が提供するオンラインサービスを利用するためのアプリケーションプログラム60(以下単に「本体アプリ60」と称す)がインストールされている。この本体アプリ60は、オンラインサービスのサービス提供者(本実施形態の場合は銀行など)により配布されるプログラムであり、ユーザはオンラインサービスの利用に先立ちインターネット上のアプリケーションディストリビュータを通じて本体アプリ60をダウンロードしインストールする。
本体アプリ60は、主な機能として、メイン処理部600、ユーザ認証部601、セキュリティ処理部602を有している。メイン処理部600は、オンラインサービスの利用画面の表示や入力の制御、サービス提供サーバ20とのデータ送受信などを担う機能である。ユーザ認証部601は、ユーザ機器30を使用する者の正当性を確認する処理を担う機能である。ここでのユーザ認証は、ユーザ機器30を現に操作している者が正当な者(ユーザ本人、あるいは、正当なユーザから許可を受けている者)かどうかを確認することが目的である。セキュリティ処理部602は、ICカード307の機能を利用してデータの暗号化や電子署名などのセキュリティ処理を実行する機能である。
ICカード307の不揮発性メモリ413(以下単に「メモリ413」と称す)には、上述したユーザ認証に用いられる本人情報610、ユーザの秘密鍵611と公開鍵612のペア、ユーザの電子証明書613、ハッシュ関数614、プログラム615などが格納されている。メモリ413のアドレス空間は、外部からのアクセス(読み書き)が可能なエリア4130と、外部からのアクセスが不可能なエリア(つまりICカード307のプロセッサ411しかアクセスできないエリア)4131とを有している。セキュリティ処理で用いるデータ(本人情報610、秘密鍵611、公開鍵612、電子証明書613、ハッシュ関数614、プログラム615など)はいずれもエリア4131内に格納され、外部(例えば本体アプリ60など)からは直接に読み書きできないようになっている。ICカード307のシリアル番号616、製造番号617などのデータはエリア4130内に格納され、外部から読み出し可能となっている。
ICカード307のプロセッサ411は、外部のアプリに対して、セキュリティ機能に関するいくつかのAPI(Application Programming Interface)を提供する。図6では、一例として、認証機能620、暗号化機能621、電子署名機能622、本人情報変更機能623、鍵生成機能624、公開鍵読出機能625、電子証明書書込機能626、電子証明書読出機能627を示している。これらの機能は、プロセッサ411がプログラム615を実行することによって実現されるものである。
認証機能620は、外部から与えられる情報を、メモリ413に格納されている本人情報610と照合することにより、ユーザ認証を行う機能である。認証機能620以外の機能621〜627は、ユーザ認証に成功しなければ利用できないようになっている。ユーザ認証の方法は何でもよい。例えばPINコード認証であれば、認証機能620は、本体アプリ60のユーザ認証部601からユーザの入力したコード(例えば4ケタの数字)を受け取り、その入力コードが本人情報610として登録されているPINコードと一致するか確認し、一致していれば「OK」、一致していなければ「NG」という結果を返す。パスワード認証であれば、認証機能620は、本体アプリ60のユーザ認証部601からユーザの入力したパスワード(例えば6〜16文字のパスワード)を受け取り、その入力パスワードが本人情報610として登録されているパスワードと一致するか確認し、一致していれば「OK」、一致していなければ「NG」という結果を返す。生体認証の場合であれば、認証機能620は、本体アプリ60のユーザ認証部601からユーザの生体情報(顔画像、声紋、虹彩、指紋、静脈など)を受け取り、その生体情報から抽出される特徴と本人情報610として登録されている本人特徴とを比較することにより本人か否かを判定し、本人と判定されたら「OK」、そうでなければ「NG」という結果を返す。PINコード認証とパスワード認証と生体認証のうちの2つ以上を組み合わせたり、さらに他の認証方法を組み合わせることで、さらに高度なセキュリティを実現してもよい。
暗号化機能621は、外部から与えられるデータに対し秘密鍵611を用いた暗号化を行う機能である。例えば、暗号化機能621は、本体アプリ60のセキュリティ処理部602からデータを受け取り、そのデータを秘密鍵611を用いて暗号化し、暗号化されたデータ(暗号文)を返す。なお、暗号アルゴリズムはRSA、DSA、ECDSAなどが好ましいが、それら以外のアルゴリズムを利用してもよい。
電子署名機能622は、外部から与えられるデータに対し秘密鍵611を用いた電子署名を行う機能である。暗号化機能621との違いは、与えられたデータそのものを暗号化するのではなく、与えられたデータのハッシュ値を暗号化する点である。例えば、電子署名機能622は、本体アプリ60のセキュリティ処理部602からデータを受け取り、ハッシュ関数614によりハッシュ値を計算し、ハッシュ値を秘密鍵611を用いて暗号化し、暗号化されたハッシュ値を返す。ハッシュ関数は何を用いてもよい(本実施形態では、SHA−1とSHA−256を用いる)。なお、電子署名の対象となるデータのサイズが小さい場合には、ハッシュ値ではなく、データそのものを暗号化したものを電子署名として用いてもよい。
本人情報変更機能623は、本人情報610をメモリ413に書き込んだり、メモリ413に格納されている本人情報610を更新又は削除する機能である。本体アプリ60がICカード307に対しユーザの情報を新規登録したり変更したりする場合には、この機能を利用する。
鍵生成機能624は、秘密鍵611と公開鍵612の鍵ペアを生成する機能である。ICカード307の初期状態においては、本人情報610、秘密鍵611、公開鍵612、電子証明書613などのユーザに紐付く情報はメモリ413内に格納されておらず、後述するICカード発行手続のときにメモリ413に登録される(この操作をICカードの活性化と呼ぶ)。このとき、秘密鍵611の生成とメモリ413への格納を、ICカード307内の閉じられた空間の中で行う構成としたことで、秘密鍵611の漏えいリスクを低減することができる。なお、本実施形態では、メモリ413から秘密鍵611を読み出すAPIを用意していないので、秘密鍵611が外部に漏えいするリスクはゼロに近い。
公開鍵読出機能625はメモリ413から公開鍵612を読み出す機能である。また、電子証明書書込機能626はメモリ413に電子証明書613を書き込む機能であり、電子証明書読出機能627はメモリ413から電子証明書613を読み出す機能である。公開鍵612や電子証明書613は通信の相手先に配布するためのものなので、外部に読み出すことができるようになっている。なお、電子証明書613の書き込みは、ICカード発行手続のときに必要となる。
以上述べた構成によれば、ユーザ機器30の本体アプリ60は、ICカード307を利用することにより公開鍵暗号によるデータの暗号化や電子署名を簡便に実現できる。また、ICカード307の暗号化や電子署名の機能を利用するにはユーザ認証が必要であり、しかも秘密鍵の漏えいリスクはゼロに近いため、極めて堅牢なセキュリティが担保される。
<ICカードの発行手続>
図7及び図8を参照して、ICカード307の発行手続(ICカードの活性化)を説明する。図7はICカード発行端末を示す図であり、図8はICカードの発行手続の流れを示す図である。
ICカード発行端末70は、ICカード307の新規発行を行う端末であり、例えば、携帯電話ショップ、サービス提供者の店頭(銀行など)、コンビニエンスストア、代理店窓口などに設置される。ICカード発行端末70は、ICカードのリーダ/ライタを備えたコンピュータにより構成される。店員が操作するのであれば、汎用のパーソナルコンピュータやタブレット端末で構成してもよいし、ユーザ(ICカードの申込者)本人に操作させるのであれば、キオスク端末にしてもよい。
図8に沿って、発行手続の流れを説明する。ここで、「ユーザ」は、オンラインサービスを利用するためにICカード307を新規に申し込む者である(図8の説明では、「ユーザ」又は「申込者」と称す)。「窓口」は、ICカード発行端末70を利用してICカード307の発行業務を行う者である。「通信サービス管理者」は、ICカード307の発行や運用の管理を担う者である。通信サービス管理者は、例えば、ICカード307の提供、認証局への電子証明書の申請、発行済みICカードの管理、ICカード307とSIMカード306の紐付け管理、ICカード307の無効化(例えばユーザ機器30の紛失・盗難・廃棄のとき)などの役割を担う。ICカード307のセキュリティ機能は様々なオンラインサービスに利用できるため、通信サービス管理者はオンラインサービスのサービス提供者とは異なる事業体で構成するとよい。「認証局」は公開鍵の電子証明書の発行及び失効を行う者である。
ICカードの申込者は、まず、窓口においてICカードの利用申請を行う(ステップS800)。利用申請にあたっては、申込者の本人確認情報を伝えると共に、本人確認書類(運転免許証など)を提出する。本人確認情報は、例えば、氏名、性別、生年月日、住所を含むとよい。また申込者は、ICカードに登録するPINコードを指定する。窓口スタッフは、申込者から伝えられた情報を本人確認書類により照合することにより本人確認を行った後、それらの情報をICカード発行端末70に入力する(ステップS801)。なお、PINコードが窓口スタッフに知得されないよう、PINコードの入力だけは申込者本人に行わせてもよい。
次に、窓口スタッフがICカード発行端末70に新規のICカード307をセットし、活性化(アクティベート)処理の開始を指示する。この段階のICカード307のメモリ413には、図6に示す情報のうち、「ハッシュ関数614、プログラム615」のみが格納されており、ユーザに紐付く情報である「秘密鍵611、公開鍵612、電子証明書613」は未だ格納されておらず、本人情報610のPINコードは初期値(例えば「0000」)である。まずICカード発行端末70は、認証機能620を利用して初期値のPINコードにより認証を行った後に、本人情報変更機能623を利用して申込者が指定したPINコードの登録を行うと共に、鍵生成機能624に鍵ペアの生成を指示して秘密鍵611と公開鍵612を生成させる(ステップS802)。PINコードと鍵ペアはメモリ413の所定のエリア4131に書き込まれる。続いて、ICカード発行端末70は、公開鍵読出機能625を利用してメモリ413から公開鍵612を読み出し、この公開鍵612とステップS801で入力された本人確認情報とからCSR(Certificate Signing Request)を作成し、通信サービス管理者の管理サーバに送信する(ステップS803)。
管理サーバは、ICカード発行端末70からCSRを受信すると、そのCSRを所定の認証局に対し送信する(ステップS804)。このとき、管理サーバは、本人確認情報に基づいて申込者の与信調査を実施してもよい。
認証局は、受信したCSRに従って申込者の公開鍵の電子証明書を発行し、管理サーバへ送付する(ステップS805)。電子証明書は公開鍵とその所有者を証明するものである。ITU−Tにより策定されたX.509の場合、電子証明書は、公開鍵、所有者情報(本人確認情報が該当)、認証局の電子署名、電子証明書の有効期限、発行者の情報を含んだデータである。なお、認証局の電子署名は、電子証明書に含まれる公開鍵と所有者情報から生成したハッシュ値を認証局の秘密鍵で暗号化したものである。
管理サーバは、発行された電子証明書をICカード発行端末70に送信する(ステップS806)。ICカード発行端末70は、ICカード307の電子証明書書込機能626を利用して電子証明書をメモリ413に書き込む(ステップS807)。この段階で、ICカード307のメモリ413には、セキュリティ処理に必要なデータである、本人情報610(本実施形態ではPINコード)、秘密鍵611、公開鍵612、電子証明書613が揃ったことになる。
次に、ICカード307を申込者のユーザ機器30に装着する(ステップS808)。具体的には、ユーザ機器30から通信用のSIMカード306を取り出し、SIMカード306上にICカード307を貼り付けた後、再びユーザ機器30にSIMカード306を挿入する。さらに、セットアッププログラムをユーザ機器30にインストールし、セットアッププログラムによるICカード307のセットアップ処理を実行する。ICカード307の装着及びセットアップは、窓口スタッフが行ってもよいし、申込者自身が行ってもよい。
セットアップ処理では、ユーザ機器30(で動作するセットアッププログラム)が、ICカード307から「シリアル番号」と「製造番号」を読み出すと共に、SIMカード306から「電話番号」と「製造番号」を読み出す。また、セットアッププログラムは、ユーザ機器30自体の情報として「IMEI(International Mobile Equipment Identity)」を取得する。そしてセットアッププログラムは、それらの情報と共にICカード登録要求を通信サービス管理者の管理サーバへ送信する(ステップS809)。管理サーバは、ユーザ機器30からICカード登録要求を受信すると、そこに含まれるICカード307とSIMカード306とユーザ機器30の情報をICカード管理データベースに登録する(ステップS810)。
図9はICカード管理データベースに格納されているICカード管理情報のデータ構造の一例である。ICカード307の「シリアル番号」及び「製造番号」に紐付けて、SIMカード306の「電話番号」及び「製造番号」とユーザ機器30の「IMEI」が管理されている。図示しないが、ICカード管理情報として、ユーザの本人確認情報(氏名、性別、住所、生年月日)、公開鍵、電子証明書の情報などを管理してもよい。
ICカード管理情報の登録が完了すると、管理サーバが、ユーザ機器30に対して登録完了を通知する(ステップS811)。これによりユーザ機器30のセットアップが完了し、ICカード307が利用可能な状態(活性化状態)となる。
なお、図8に示した発行手順はあくまで一例であり、異なる手順で発行手続を行っても構わない。例えば、秘密鍵、公開鍵、電子証明書、PINコードが予め登録されたICカード307を窓口に用意しておいてもよい。この場合は、ICカード307への書き込み処理が不要なため、ICカード発行端末70を用いる必要がなくなり、ユーザ機器30でのセットアップ処理だけで済み、ICカードの発行手続が簡便となる。また、PINコード認証ではなく、生体認証を用いる場合には、ICカード307に本人情報として登録する生体情報(顔画像、声紋、虹彩、指紋など)をICカード発行端末70などを利用して入力すればよい。
<オンラインサービスへの初回登録>
図10及び図11を参照して、オンラインサービスへの初回登録手続を説明する。図10は、オンラインサービスへの登録手続の流れを示す図であり、図11は、ユーザ機器30に表示される画面例である。
まず、ユーザは、ユーザ機器30を操作し、本体アプリ60のダウンロード及びインストールを行う(ステップS1001)。そして、ユーザは、本体アプリ60を起動し、オンラインサービスのログイン画面を開く(ステップS1002)。図11に示すように、初回のログイン時には、ログイン画面110においてユーザIDとパスワードを入力し、オンラインサービスにログインする(ステップS1003)。このとき、本体アプリ60は、ユーザIDを不揮発性メモリに記憶する(ステップS1004)。パスワードについては、セキュリティの観点からユーザ機器30には記憶させないほうがよい。なお、ユーザIDとパスワードは、別途の手続であるオンラインサービスの新規利用申込を行ったときに、サービス提供者から付与される情報である。
ログインが完了すると、サービス提供サーバ20は、所定の電文(内容はどのようなものでもよい)をユーザ機器30に送信し、電子署名と電子証明書を要求する(ステップS1005)。
本体アプリ60のユーザ認証部601は、図11に示すように、PINコード入力画面111を表示する。ユーザによりPINコードが入力されると、ユーザ認証部601は、ICカード307の認証機能620を利用して、入力されたPINコードが正しいか否かを確認する(ステップS1006)。PINコードが正しい場合(つまり、ユーザ認証に成功した場合)は、本体アプリ60からICカード307の他の機能621〜627を利用可能となる。本体アプリ60のセキュリティ処理部602は、ICカード307の電子署名機能622を利用して、サービス提供サーバ20から受信した電文に電子署名を行うと共に、電子証明書読出機能627を利用して、メモリ413から電子証明書613を読み出す。そして、本体アプリ60のメイン処理部600は、電子署名付き電文と電子証明書613をサービス提供サーバ20に送信する(ステップS1007)。
サービス提供サーバ20は、ユーザ機器30から受信した電子証明書613を用いて電子署名付き電文を検証する(ステップS1008)。「検証」とは、電子証明書613に含まれる公開鍵によって電子署名付き電文を復号し、復号結果と元の電文との一致を調べることにより、電子署名がユーザ本人によって行われたこと(つまり、ユーザの秘密鍵によって電子署名が作成されたこと)を確認する操作である。なお、電子署名が電文そのものを暗号化したデータである場合は復号結果と元の電文とを比較すればよく、電子署名が電文のハッシュ値を暗号化したデータである場合は復号結果と元の電文のハッシュ値とを比較すればよい。
検証に成功した場合、サービス提供サーバ20は、当該ユーザのユーザID・パスワードと電子証明書を紐付けて、ユーザ情報記憶部201に登録する(ステップS1009)。そして、サービス提供サーバ20は、電子証明書の登録が完了した旨を本体アプリ60へ通知する(ステップS1010)。ユーザIDと電子証明書との紐付けが完了した後は、次に述べるように、より簡便な操作でログインを行うことができるようになる。
<オンラインサービスへのログイン>
図12及び図13を参照して、オンラインサービスのログイン認証を説明する。図12は、オンラインサービスのログイン認証の流れを示す図であり、図13は、ユーザ機器30に表示される画面例である。
ユーザが、ユーザ機器30において本体アプリ60を起動すると、ユーザ認証部601が、図13に示すように、PINコード入力画面130を表示する(ステップS1200)。ユーザによりPINコードが入力されると、ユーザ認証部601は、ICカード307の認証機能620を利用して、入力されたPINコードが正しいか否かを確認する(ステップS1201)。PINコードが正しい場合(つまり、ユーザ認証に成功した場合)、本体アプリ60のセキュリティ処理部602は、ICカード307の電子署名機能622を利用して、オンラインサービスのユーザIDに対し電子署名を行う(ステップS1202)。ユーザIDのデータサイズは数バイトから十数バイト程度のため、ユーザID自体を秘密鍵611で暗号化したものを電子署名として用いればよい。そして、本体アプリ60のメイン処理部600は、ログイン要求をサービス提供サーバ20に送信する(ステップS1203)。ログイン要求には、電子署名付きユーザID(つまり、ユーザIDの電子署名と平文のユーザID)が付加されている。
サービス提供サーバ20のログイン制御部202は、ログイン要求を受信すると、ログイン要求に含まれるユーザIDに基づいて、ユーザ情報記憶部201から対応する電子証明書を読み出す(ステップS1204)。そして、ログイン制御部202は、この電子証明書を用いて、ログイン要求に含まれている電子署名付きユーザIDの検証を行う(ステップS1205)。また、必要に応じて、ログイン制御部202は、電子証明書の有効性を認証局に問い合わせてもよい(ステップS1206、S1207)。電子署名付きユーザIDの検証に成功し、且つ、電子証明書の有効性が確認された場合、ログイン制御部202は、ログイン要求が正当なユーザからのものであると判断し、当該ユーザ機器30からのオンラインサービスの利用を許可する(ステップS1208)。以後、図13に示すように、ユーザ機器30にオンラインサービスのメニュー画面131が表示され、ユーザは希望する手続を行うことができようになる。
以上述べたログイン認証によれば、ユーザはPINコードを入力するだけでよいので、従来のID・パスワードを都度入力する方法や、トークンを用いる方法に比べて、非常に簡便な操作でオンラインサービスへのログインが可能となる。しかも、ICカード307により提供されるセキュリティ機能を利用しているため、高度のセキュリティも担保されている。
<オンラインサービスの利用>
図14及び図15を参照して、オンラインサービス利用時の手順を説明する。図14は、オンラインサービス利用時の流れを示す図であり、図15は、ユーザ機器30に表示される画面例である。オンラインサービスへのログインは既に完了しており、ユーザ機器30にはメニュー画面150が表示されているものとする。
ユーザがメニュー画面150から利用したい手続を選択すると、詳細画面151に遷移する(ステップS1400)。図15では、ユーザが「振込」を選択した場合の画面例が示されている。この詳細画面151においてユーザが必要な情報(例えば振込先、振込額など)を入力し、実行ボタンを押すと(ステップS1401)、本体アプリ60のメイン処理部600が、振込手続に必要な情報を記述した手続メッセージを作成する(ステップS1402)。
続いて、本体アプリ60のユーザ認証部601が、PINコード入力画面152を表示し、PINコード認証を行う(ステップS1403)。PINコード認証の手順は前述したものと同様のため、説明を省略する。PINコード認証に成功した場合、本体アプリ60のセキュリティ処理部602は、ICカード307の電子署名機能622を利用して、手続メッセージに対し電子署名を行う(ステップS1404)。このとき、電子署名機能622は、手続メッセージのハッシュ値を計算し、このハッシュ値を秘密鍵611で暗号化することにより電子署名を生成してもよいし、手続メッセージ自体を秘密鍵611で暗号化することにより電子署名を生成してもよい。そして、本体アプリ60のメイン処理部600は、手続要求をサービス提供サーバ20に送信する(ステップS1405)。手続要求には、電子署名付き手続メッセージとユーザIDが付加されている。
サービス提供サーバ20の手続制御部203は、手続要求を受信すると、手続要求に含まれるユーザIDに基づいて、ユーザ情報記憶部201から対応する電子証明書を読み出す(ステップS1406)。そして、手続制御部203は、この電子証明書を用いて、手続要求に含まれている電子署名付き手続メッセージの検証を行う(ステップS1407)。また、必要に応じて、手続制御部203は、電子証明書の有効性を認証局に問い合わせてもよい(ステップS1408、S1409)。電子署名付き手続メッセージの検証に成功し、且つ、電子証明書の有効性が確認された場合、手続制御部203は、手続要求が正当なユーザからのものであると判断する。すなわち、第三者によるなりすましがなく、かつ、手続メッセージの内容も改ざんされていないと判断するのである。
手続要求が正当なユーザからのものであると確認できた場合にのみ、手続制御部203は、手続メッセージに記述された情報に基づく手続(振込など)を実行する(ステップS1410)。手続が完了すると、手続制御部203は手続完了通知を本体アプリ60に送信する(ステップS1411)。そうすると、図15に示すように、手続完了画面153が表示される。
以上述べた処理によれば、ユーザはPINコードを入力するだけでよいので、従来のID・パスワードを都度入力する方法や、トークンを用いる方法に比べて、非常に簡便な操作でオンラインサービスの利用が可能となる。しかも、ICカード307により提供されるセキュリティ機能を利用しているため、高度のセキュリティも担保され、いわゆる中間者攻撃によるなりすましや手続メッセージの改ざんを防止することが可能となる。
<ICカードの無効化>
本実施形態のユーザ機器30によれば、PINコードや生体情報によるユーザ認証に成功しなければ、オンラインサービスを利用することができない。したがって、仮にユーザ機器30の紛失や盗難が起きた場合でも、第三者によるユーザ機器30の不正使用のリスクは小さい。とはいえ、PINコード認証や生体認証が破られる可能性はゼロではないことから、好ましくは、以下に述べるようなICカードの無効化機能を実装するとよい。
(1)ICカードの自滅機能
自滅とは、ICカード307のプロセッサ411自身がICカード307の機能を無効化する操作である。具体的な操作としては、外部(本体アプリ60)からICカード307の機能を利用できないようにロックをかけたり、メモリ413に格納されているデータ(鍵ペア、電子証明書など)を消去したりする方法などがある。例えば、誤ったPINコードが連続して所定回数入力された場合、API以外の方法でメモリ413へのアクセスが行われた場合などに、プロセッサ411は自滅を実行するとよい。
(2)ICカードの無効化
通信サービス管理者が、ユーザから、ユーザ機器30又はICカード307の紛失・盗難の報告を受けた場合に、管理サーバからユーザ機器30又はICカード307に対して無効化信号を送信し、ICカード307を無効化してもよい。あるいは、管理サーバが、ICカード307の使用状況を監視し、異常を検知した場合(例えば、不使用状態が長期間続いた場合、使用頻度が突然増加した場合、大金を送金しようとした場合など)にICカード307を無効化してもよい。あるいは、管理サーバが、ICカード307とSIMカード306とユーザ機器30の組み合わせを監視し、ICカード管理情報で管理されている情報との齟齬を検知した場合(例えば、ICカードが単独又はSIMカードと一緒に抜き取られ、他の携帯機器に装着された場合などに、そのような齟齬が発生し得る)にICカード307を無効化してもよい。無効化の方法も、外部(本体アプリ60)からICカード307の機能を利用できないようにロックをかけたり、メモリ413に格納されているデータ(鍵ペア、電子証明書など)を消去したりする方法などがある。
(3)電子証明書の無効化
通信サービス管理者が、ユーザから、ユーザ機器30又はICカード307の紛失・盗難の報告を受けた場合に、管理サーバから認証局に対して当該ユーザの電子証明書の無効化を依頼してもよい。あるいは、管理サーバが、ICカード307の使用状況やICカード・SIMカード・ユーザ機器の組み合わせを監視し、異常を検知した場合に認証局に電子証明書の無効化を依頼してもよい。
<その他>
上述した実施形態は本発明の具体例の一つを説明したにすぎず、本発明の技術的範囲は上述した実施形態の内容に限定されるものではなく、また本発明はその技術思想の範囲内で様々な具体的形態を採り得るものである。例えば、本発明はオンラインバンキングサービス以外にも様々な種類のオンラインサービスに適用することができる。また、上述した実施形態ではサブSIMタイプのICカードを例示したが、SIMカードスロットを複数備える携帯機器であれば、一般的なmicro−SIMやnano−SIMと同じ仕様のICカードを(通信用SIMカードとは別のスロットに)装着してもよい。あるいは、SIMカードスロット以外のスロットに装着するタイプのICカードを用いてもよいし、携帯機器に内蔵されたICチップ(例えばSecure Elementなど)を用いてもよい。また、上述した実施形態では、ログイン要求の中に電子署名付きユーザIDのみ含めたが、さらに電子証明書を一緒に送ってもよい。また、上述した実施形態では、ユーザ機器からサービス提供サーバに送るデータにのみ電子署名を行ったが、サービス提供サーバがユーザ機器に送るデータに対し電子署名や暗号化を行うことも好ましい。その場合、サービス提供サーバは、自身の暗号鍵で電子署名や暗号化を行ってもよいし、ユーザの公開鍵で暗号化を行ってもよい。
<セキュアエレメント>
上述した実施形態では、サブSIMタイプのICカードによって暗号化機能(セキュリティ機能)を提供したが、暗号化機能の全部又は一部を、ユーザ機器30に内蔵もしくは接続されたセキュアエレメント1600によって提供してもよい。図16は、セキュアエレメント1600を内蔵するユーザ機器30のハードウェア構成を模式的に示すブロック図である。
セキュアエレメント1600とは格納したデータを外部から解析されることへの耐性(耐タンパー性)を持ち、主に機密情報を管理するために用いられるICチップである。セキュアエレメント1600は、ユーザ機器30本体の制御基板309(プロセッサ1611、RAM1612、不揮発性メモリ1613を有する)とは独立したICチップであり、プロセッサ1601、RAM1602、不揮発性メモリ1603を有している。セキュアエレメント1600はユーザ機器30本体のプロセッサ1611などと通信を行う。
暗号化機能をセキュアエレメント1600により提供する場合、暗号化機能で用いるデータ(図6に示す、本人情報610、秘密鍵611、公開鍵612、電子証明書613、ハッシュ関数614、プログラム615など)はセキュアエレメント1600内の不揮発性メモリ1603に格納されるとよい。また、暗号化機能(図6に示す、認証機能620、暗号化機能621、電子署名機能622、本人情報変更機能623、鍵生成機能624、公開鍵読出機能625、電子証明書書込機能626、電子証明書読出機能627など)はセキュアエレメント1600のプロセッサ1601がプログラム615を実行することにより提供されるとよい。
以上述べた構成によれば、ユーザ機器以外のデバイス(従来のトークンのようなもの)を持ち歩く必要がなく、ユーザ機器単体でオンラインサービスの利用が可能となるため、利便性が高い。また、アプリの起動と本人認証だけで自動ログインが可能なため、スマートかつ簡便な操作性を実現できる。さらに、セキュアエレメント1600に格納された秘密鍵と、セキュアエレメント1600が提供する暗号化機能を利用するため、セキュアなデータ通信を実現できる。この秘密鍵は漏えいのリスクが小さく、また、PINコードやパスワードや生体認証による本人認証をクリアしなければ秘密鍵や暗号化機能を利用することもできないので、第三者による不正利用のリスクを可及的に小さくできる。
<SIMカード>
暗号化機能の全部又は一部が、ユーザ機器30に内蔵もしくは接続されたSIMカードによって提供されてもよい。図17は、SIMカード1700を備えるユーザ機器30のハードウェア構成を模式的に示すブロック図である。
SIMカード1700は、プロセッサ1701、RAM1702、不揮発性メモリ1703、及び、8つのピン1705(電極)を有する。不揮発性メモリ1703には、SIMカード1700のユニークなシリアルナンバー(ICCID)、加入者識別情報(IMSI)などのデータと、暗号化機能で利用するデータと、プロセッサ1701で実行されるプログラムとが格納されている。8つのピン1705は、電源入力端子、リセット端子、クロック端子、アース端子、プログラム用電圧入力端子、I/O端子、予備端子を含む。
図10は、SIMカード1700がSIMカードスロット1704に装着された状態を模式的に示している。SIMカード1700のピン1705がユーザ機器30の制御基板309の端子1706に接続される。
SIMカード1700は、ユーザが移動体通信事業者(MNO)又は仮想移動体通信事業者(MVNO)の提供する移動通信サービスに加入したときに、その事業者から提供されるものである。SIMカード1700に格納されるデータやプログラムは事業者ごとに相違しているが、SIMカード1700自体の基本的な構造は国際規格に準拠している限りにおいて同一である。SIMカード1700としては、標準−SIM、micro−SIM、nano−SIMのいずれのタイプを用いてもよい。
暗号化機能をSIMカード1700により提供する場合、暗号化機能で用いるデータ(図6に示す、本人情報610、秘密鍵611、公開鍵612、電子証明書613、ハッシュ関数614、プログラム615など)はSIMカード1700内の不揮発性メモリ1703に格納されるとよい。また、暗号化機能(図6に示す、認証機能620、暗号化機能621、電子署名機能622、本人情報変更機能623、鍵生成機能624、公開鍵読出機能625、電子証明書書込機能626、電子証明書読出機能627など)はSIMカード1700のプロセッサ1601がプログラム615を実行することにより提供されるとよい。
以上述べた構成によれば、ユーザ機器以外のデバイス(従来のトークンのようなもの)を持ち歩く必要がなく、ユーザ機器単体でオンラインサービスの利用が可能となるため、利便性が高い。また、アプリの起動と本人認証だけで自動ログインが可能なため、スマートかつ簡便な操作性を実現できる。さらに、SIMカード1700に格納された秘密鍵と、SIMカード1700が提供する暗号化機能を利用するため、セキュアなデータ通信を実現できる。この秘密鍵は漏えいのリスクが小さく、また、PINコードやパスワードや生体認証による本人認証をクリアしなければ秘密鍵や暗号化機能を利用することもできないので、第三者による不正利用のリスクを可及的に小さくできる。
<電子証明書のポストインストール>
図18を用いて、電子証明書のポストインストールについて説明する。図8に示した手順では、窓口において電子証明書がインストールされたICカードをユーザに引き渡したのに対し、図18に示す手順(ポストインストール)では、ユーザ機器に内蔵又は接続されたICカードやICチップに後から電子証明書を書き込むことができる点が異なる。
ICカードの申込者(ユーザ)は、まず、窓口においてICカードの利用申請を行う(ステップS1800)。利用申請にあたっては、ユーザの本人確認情報及び電話番号を手続端末に入力すると共に、本人確認書類(運転免許証、住民票など)を提出する。本人確認情報は、例えば、氏名、性別、生年月日、住所を含むとよい。電話番号は、ユーザ機器30に装着された通信用のSIMカードに割り当てられた電話番号である。ユーザは、これらの本人確認情報及び電話番号を手続端末に入力する(ステップS1801)。本人確認書類については、手続端末に備えられたカメラ又はスキャナによって電子データ化(例えば画像データ)されるとよい。手続端末は本人確認情報と本人確認書類と電話番号を通信サービス管理者に送信する(ステップS1802)。なお、ここではユーザが自ら手続端末を操作し、必要な情報を入力する手順を想定するが、図8の場合と同じように窓口スタッフが入力を代行してもよい。
一方、ユーザは、暗号化機能をインストール及びアクティベートするための所定のプログラム(「セットアッププログラム」と呼ぶ)をユーザ機器30にインストールする(図6に示す本体アプリ60がセットアッププログラムを兼ねていてもよい)。そして、ユーザ機器30のプロセッサは、セットアッププログラムによって、通信用のSIMカードから電話番号とIMSIを読み込み(ステップS1803)、SIMカードの電話番号とIMSIを通信サービス管理者に送信する(ステップS1804)。
この後、ユーザは、ICカードを受け取り、ユーザ機器30に装着する。この段階のICカードのメモリには、図6に示す情報のうち、「ハッシュ関数、プログラム」のみが格納されており、ユーザに紐付く情報である「秘密鍵、公開鍵、電子証明書」は未だ格納されていない。
通信サービス管理者は、電話番号をキーとして、ユーザ機器30から受信した情報と手続端末から受信した情報の対応をとり、本人確認情報と本人確認書類とSIMカードの電話番号及びIMSIとを紐づけて記憶する。そして、通信サービス管理者は、本人確認情報を本人確認書類と照合し、情報に齟齬がないかをチェックすることにより本人確認を行う(ステップS1806)。本人確認完了後、通信サービス管理者は、証明書発行依頼とユーザ機器30から受信した通信用SIMカードの電話番号及び/又はIMSIを認証局に送信する(ステップS1807)。なお、本例では電話番号及び/又はIMSIをユーザ機器30が通信サービス管理者を介して間接的に認証局に通知したが、電話番号及び/又はIMSIをユーザ機器30が直接的に認証局に通知してもよい。また、本例では本人確認書類の電子データを通信サービス管理者にネットワークを介して送信したが、本人確認書類の原本確認が必要な場合は、窓口又はユーザから通信サービス管理者に本人確認書類の原本を提出ないし郵送するようにしてもよい。この場合は、通信サービス管理者が本人確認書類の原本を受領したのち、ステップS1806の本人確認処理が開始される。
証明書発行依頼を受信した認証局は、利用者識別符号を生成し、IMSI又は電話番号により特定される送信先に利用者識別符号を送信する(ステップS1808)。利用者識別符号の送信手段としては、例えば、SMS(ショートメッセージサービス)を利用することができる。ユーザ機器30のセットアッププログラムは、ICカードの鍵生成機能624に鍵ペアの生成を指示して秘密鍵と公開鍵を生成させる(ステップS1809)。なお、利用者識別符号の送付(ステップS1808)と鍵ペア生成(ステップS1809)の順序は問わない。
その後、ユーザ機器30のセットアッププログラムは、ICカードの公開鍵読出機能625を利用して、ICカードのメモリから公開鍵を読み出し、この公開鍵と利用者識別符号とから電子証明書の発行要求であるCSR(Certificate Signing Request)を作成し、所定の認証局に送信する(ステップS1810)。
認証局は、受信したCSRに従ってユーザの公開鍵の電子証明書を発行し、ユーザ機器30へ、有線インターネット経由あるいは無線インターネット経由で送信する(ステップS1811)。このとき、プロトコルとしてHTTP(Hypertext Transfer Protocol)又はHTTPS(Hypertext Transfer Protocol Secure)を用いて送信してもよい。電子証明書を認証局から受信する処理も、ユーザ機器30のセットアッププログラムによって行われる。
電子証明書は電子的に利用者が本人であることを証明するものである。本実施形態では、電子証明書として、公開鍵とその所有者の同定情報を結びつける公開鍵証明書が用いられる。ITU−Tにより策定されたX.509の場合、電子証明書は、公開鍵、所有者情報(本人確認情報が該当)、認証局の電子署名、電子証明書の有効期限、発行者の情報を含んだデータである。なお、認証局の電子署名は、電子証明書に含まれる公開鍵と所有者情報から生成したハッシュ値を認証局の秘密鍵で暗号化したものである。
認証局が電子証明書をユーザ機器30へ送信するタイミング、あるいは、ユーザ機器30が電子証明書を認証局から受信するタイミングは、任意に制御できる。例えば、ユーザ機器30のセットアッププログラムがバックグラウンドで定期的に認証局と通信を行い、電子証明書の発行が完了したか否かを確認し、準備が整った段階で電子証明書をダウンロードしてもよい。あるいは、認証局がCSRを受信したときに、ユーザ機器30に対し、電子証明書の発行予定日時(ダウンロードが可能となる日時)を通知してもよい。その場合、ユーザ機器30のセットアッププログラムは、通知された発行予定日時の経過後に、認証局にアクセスし電子証明書を取得すればよい。あるいは、SMSやプッシュ通知などの仕組みを用いて、認証局が、電子証明書の発行が完了した旨をユーザ機器30のセットアッププログラムに通知し、応答したセットアッププログラムに対し電子証明書を送信してもよい。このように、電子証明書の発行依頼と電子証明書のユーザ機器への送信とを異なるタイミングで行えるようにしたことにより、例えば、本人確認までの業務を店頭窓口で行い、電子証明書発行以降のフローはユーザが希望する時間帯に行うというように、時間や場所の制限のないオペレーションが可能となる。したがって、暗号化機能のインストール及びアクティベーションの利便性向上を図ることができる。なお、いずれの方法の場合でも、ユーザ機器30のセットアッププログラムは、利用者識別符号とともに通信用SIMカードの電話番号及び/又はIMSIを認証局に通知することによって、申込者本人の端末(正当な端末)であることを認証局に証明するとよい。これにより、電子証明書の発行依頼とユーザ機器への送信とが異なるタイミングで行われる場合においても、別人の端末に誤って電子証明書を送信するといったミスの発生を防ぐことができる。また、悪意をもった者が不正に電子証明書を取得することも抑制できるため、電子証明書の発行及び送信を安全に行うことができる。
ユーザ機器30のセットアッププログラムは、ICカードの電子証明書書込機能626を利用して電子証明書をICカードのメモリに書き込む(ステップS1812)。この段階で、ICカードのメモリには、セキュリティ処理に必要なデータである、本人情報、秘密鍵、公開鍵、電子証明書が揃ったことになる。このとき、電子証明書をユーザ機器30に搭載されるSIMカードやセキュアエレメントに格納してもよい。
ユーザ機器30のセットアッププログラムは、ICカードから「シリアル番号」と「製造番号」を読み出すと共に、通信用のSIMカードから「電話番号」と「IMSI」を読み出す。また、セットアッププログラムは、ユーザ機器自体の情報として「IMEI(International Mobile Equipment Identity)」を取得する。そしてセットアッププログラムは、それらの情報と共にICカード登録要求を通信サービス管理者の管理サーバへ送信する。管理サーバは、ユーザ機器30からICカード登録要求を受信すると、そこに含まれるICカードとSIMカードとユーザ機器の情報をICカード管理データベースに登録する(ステップS1814)。
ICカード管理情報の登録が完了すると、管理サーバが、ユーザ機器30に対して登録完了を通知する。これによりユーザ機器30のセットアップが完了し、ICカードが利用可能な状態(活性化状態)となる。
なお、図18に示した発行手順はあくまで一例であり、異なる手順で発行手続を行っても構わない。例えば、SMSの代わりにインターネットを介したデータ通信により利用者識別符号をユーザ機器に送信してもよい。このとき、通信用のSIMカードのIMSIを用いてユーザ機器のIPアドレスを特定してもよい。また、PINコード認証ではなく、生体認証を用いる場合には、ICカードに本人情報として登録する生体情報(顔画像、声紋、虹彩、指紋など)を手続端末などを利用して入力してもよい。
<ICチップの特定>
図19は、ユーザ機器とサービス提供サーバとの間で通信を行う際に、ユーザ機器において利用されるICチップを特定するための仕組みの一例を示す図である。図19の例では、ユーザ機器30が2つのICチップ190、191を有しており、ICチップ190がサーバA192との通信に利用され、ICチップ191がサーバB193との通信に利用されるものとする。ICチップ190、191としては、前述したサブSIMタイプのICカード、通信用のSIMカード、セキュアエレメントなどのほか、いかなるタイプのICチップを利用してもよい。
各ICチップ190、191には、ユニークなIDが割り振られている。このIDは、ICチップを一意に特定しうる識別情報であって、ICチップの内蔵メモリ内に格納されている。図19の例では、ICチップ190のIDは「aaa1」であり、ICチップ191のIDは「bbb2」である。IDとしては、他のICチップと重ならなければいかなる情報でもよい。例えば、IMSI(International Mobile Subscriber Identity)、ICCID(Integrated Circuit Card ID)、電話番号、シリアル番号、製造番号などをIDとして用いることができる。また、IMSIなどに対応づけられたIPアドレスをIDとして用いてもよい。
ユーザ機器30の本体アプリ60は、サーバA192に送信するデータ(通信パケット)194のヘッダなどに、送信元の情報として、ICチップ190のID「aaa1」を付加する。これにより、サーバA192は、ユーザ機器30において使用されているICチップ190を特定することができる。またサーバA192も、ユーザ機器30に送信するデータ(通信パケット)194のヘッダなどに、送信先の情報として、ICチップ190のID「aaa1」を付加する。このIDにより、本体アプリ60は、サーバA192から受信したデータの処理を担当するICチップ190を特定することができる。
一方、ユーザ機器30の本体アプリ60は、サーバB193に送信するデータ(通信パケット)195のヘッダなどに、送信元の情報として、ICチップ191のID「bbb2」を付加する。これにより、サーバB193は、ユーザ機器30において使用されているICチップ191を特定することができる。またサーバB193も、ユーザ機器30に送信するデータ(通信パケット)195のヘッダなどに、送信先の情報として、ICチップ191のID「bbb2」を付加する。このIDにより、本体アプリ60は、サーバA192から受信したデータの処理を担当するICチップ190を特定することができる。
以上述べた構成によれば、ユーザ機器30と各サーバとの間において、送信元又は送信先となるICチップを特定したデータ送受信が行われるため、通信の安全性をより高めることができる。また、図19に示すように、ICチップとサーバの組み合わせが複数組ある場合には、本体アプリ60がデータ194、195のヘッダに含まれるID情報に基づいて、データ194、195の処理に利用すべきICチップ190、191を選択(切り替え)することができる。このような利点は、ユーザ機器30が複数のICチップを備えている場合や、ユーザ機器30が複数のサーバとセキュアな通信を行う場合などに、特にメリットが大きい。
図19の例では、ユーザ機器30と各サーバとの間で送受信されるデータにICチップの識別情報を付加することによって、ICチップとサーバとの対応付けを行ったが、別の方法で同様のことを実現しても構わない。例えば、図20に示すように、本体アプリ60が、ICチップとサーバとの対応付けを行う対応付け情報196(以下、「対応テーブル196」と呼ぶ)を有していてもよい。対応テーブル196では、例えば、ICチップの識別情報と、そのICチップの暗号化機能を利用して通信を行うサーバの識別情報との対応付けが行われるとよい。ICチップの識別情報としては、例えば、IMSI(International Mobile Subscriber Identity)、ICCID(Integrated Circuit Card ID)、電話番号、シリアル番号、製造番号、IMSIに対応付けられたIPアドレスなどを用いてもよい。また、サーバの識別情報としては、例えば、サーバのIPアドレス、URLなどを用いてもよい。図20に示す方法の場合、本体アプリ60が、サーバと通信を行う際に、対応テーブル196に基づいて、サーバとの通信において利用するICチップを特定することができる。したがって、図19の方法と同様の効果を奏することが可能である。
上述した各実施形態において、ユーザ機器30が各サーバや認証局との間でインターネットを介したデータ通信を行う場合には、ユーザ機器30が備える通信用のSIMカードのIMSI又はそのIMSIに対応付けられたIPアドレスによって、データの送信元あるいは送信先としてのSIMカード(すなわちユーザ機器30)が特定される。IPアドレスは、動的に割り当てられるIPアドレスであってもよいし、固定のIPアドレスであってもよい。
20:サービス提供サーバ
30:ユーザ機器
60:アプリケーションプログラム
70:ICカード発行端末
306:SIMカード
307:ICカード(サブSIM)
308:SIMカードスロット

Claims (15)

  1. 携帯機器からオンラインサービスを安全に利用可能な仕組みを提供するオンラインサービス提供システムであって、
    登録されたユーザに対し、インターネットを通じてオンラインサービスを提供するサービス提供サーバと、
    前記ユーザが所持している携帯機器であるユーザ機器に設けられるICチップと、
    前記ユーザ機器が有する本体プロセッサにより実行され、前記ユーザ機器を前記オンラインサービスを利用するための端末として機能させるアプリケーションプログラムと、を有し、
    前記ICチップは、
    少なくとも、前記ユーザ機器を使用する者の正当性を確認するためのユーザ認証に用いられる本人情報、前記ユーザの秘密鍵、前記秘密鍵とペアになる前記ユーザの公開鍵、及び、前記公開鍵を含む前記ユーザの電子証明書を非一時的に記憶するメモリと、
    少なくとも、前記アプリケーションプログラムから与えられる情報を前記本人情報と照合することにより前記ユーザ認証を行う認証機能、及び、前記アプリケーションプログラムから与えられるデータに対し前記秘密鍵を用いた電子署名を行う電子署名機能を有するプロセッサと、
    を有しており、
    前記アプリケーションプログラムは、前記ユーザ機器を、
    前記ユーザ機器を使用する者から取得した情報に基づき、前記ICチップの前記認証機能を利用して、前記ユーザ認証を行うユーザ認証手段、及び、
    前記ユーザ認証により前記ユーザ機器を使用する者が正当であると確認された場合に、前記ICチップの前記電子署名機能を利用して、前記オンラインサービスの手続に必要な情報を記述したメッセージに対し電子署名を行い、電子署名付きメッセージを含む手続要求をインターネットを通じて前記サービス提供サーバに送信する送信手段、
    として機能させ、
    前記サービス提供サーバは、
    前記ユーザに関する情報として、前記ユーザの電子証明書を記憶するユーザ情報記憶手段と、
    前記ユーザ機器から前記手続要求を受信した場合に、前記ユーザの電子証明書を用いて前記手続要求に含まれる前記電子署名付きメッセージを検証することによって前記手続要求の正当性を確認し、前記手続要求が正当であると確認された場合に前記手続要求に含まれる前記電子署名付きメッセージに記述された情報に基づく手続を実行する手続制御手段と、
    を有することを特徴とするオンラインサービス提供システム。
  2. 前記ICチップは、通信用のSIMカード上に重ねて貼り付けられた状態でSIMカードスロットに装着されるものである
    ことを特徴とする請求項1に記載のオンラインサービス提供システム。
  3. 前記ICチップは、通信用のSIMカードである
    ことを特徴とする請求項1に記載のオンラインサービス提供システム。
  4. 前記ICチップは、セキュアエレメントである
    ことを特徴とする請求項1に記載のオンラインサービス提供システム。
  5. 前記ICチップの前記メモリは、外部からのアクセスが不可能なエリアを有しており、
    少なくとも前記本人情報及び前記秘密鍵は、外部からのアクセスが不可能な前記エリア内に格納されている
    ことを特徴とする請求項1〜4のいずれかに記載のオンラインサービス提供システム。
  6. 前記ICチップの前記プロセッサは、前記秘密鍵と前記公開鍵を生成する鍵生成機能を有している
    ことを特徴とする請求項1〜5のいずれかに記載のオンラインサービス提供システム。
  7. 前記ICチップは、前記ICチップを一意に特定しうる識別情報を有しており、
    前記ユーザ機器と前記サービス提供サーバとの間で、前記識別情報により前記ICチップが特定された通信が行われる
    ことを特徴とする請求項1〜6のいずれかに記載のオンラインサービス提供システム。
  8. 前記アプリケーションプログラムは、前記サービス提供サーバと前記ICチップとの対応付けを行う対応付け情報を有しており、前記対応付け情報に基づいて、前記サービス提供サーバとの通信において利用する前記ICチップを特定する
    ことを特徴とする請求項1〜6のいずれかに記載のオンラインサービス提供システム。
  9. 前記ユーザ機器と前記サービス提供サーバとの間で、前記ユーザ機器が備える通信用のSIMカードのIMSI又はそのIMSIに対応付けられたIPアドレスにより前記SIMカードが特定された通信が行われる
    ことを特徴とする請求項1〜8のいずれかに記載のオンラインサービス提供システム。
  10. 前記ユーザ機器が有する本体プロセッサにより実行され、前記ICチップをセットアップするための機能を提供するセットアッププログラムを有している
    ことを特徴とする請求項1〜9のいずれかに記載のオンラインサービス提供システム。
  11. 前記セットアッププログラムは、前記ユーザ機器を、
    認証局に対して電子証明書の発行要求を送信する手段、および、
    前記認証局より前記電子証明書を受信し、前記ICチップの前記メモリに前記電子証明書を格納する手段、
    として機能させる
    ことを特徴とする請求項10に記載のオンラインサービス提供システム。
  12. 前記セットアッププログラムは、前記ユーザ機器を、
    前記ユーザ機器が備える通信用のSIMカードから電話番号及び/又はIMSIを読み出す手段、
    前記電話番号及び/又はIMSIを前記認証局に通知するための手段、
    前記認証局から前記電話番号又は前記IMSIにより特定される宛先に送信された情報を受信する手段、
    として機能させる
    ことを特徴とする請求項11に記載のオンラインサービス提供システム。
  13. 前記情報は、SMSにより前記ユーザ機器に送信される
    ことを特徴とする請求項12に記載のオンラインサービス提供システム。
  14. 前記情報は、インターネットを介したデータ通信により前記ユーザ機器に送信される
    ことを特徴とする請求項12に記載のオンラインサービス提供システム。
  15. ユーザが所持している携帯機器であるユーザ機器が有する本体プロセッサにより実行され、前記ユーザ機器を、サービス提供サーバがインターネットを通じて提供するオンラインサービスを利用するための端末として機能させるアプリケーションプログラムであって、
    前記ユーザ機器には、
    少なくとも、前記ユーザ機器を使用する者の正当性を確認するためのユーザ認証に用いられる本人情報、前記ユーザの秘密鍵、前記秘密鍵とペアになる前記ユーザの公開鍵、及び、前記公開鍵を含む前記ユーザの電子証明書を非一時的に記憶するメモリと、
    少なくとも、前記アプリケーションプログラムから与えられる情報を前記本人情報と照合することにより前記ユーザ認証を行う認証機能、及び、前記アプリケーションプログラムから与えられるデータに対し前記秘密鍵を用いた電子署名を行う電子署名機能を有するプロセッサと、
    を有するICチップが設けられており、
    前記アプリケーションプログラムは、前記ユーザ機器を、
    前記ユーザ機器を使用する者から取得した情報に基づき、前記ICチップの前記認証機能を利用して、前記ユーザ認証を行うユーザ認証手段、及び、
    前記ユーザ認証により前記ユーザ機器を使用する者が正当であると確認された場合に、前記ICチップの前記電子署名機能を利用して、前記オンラインサービスの手続に必要な情報を記述したメッセージに対し電子署名を行い、電子署名付きメッセージを含む手続要求をインターネットを通じて前記サービス提供サーバに送信する送信手段、
    として機能させることを特徴とするアプリケーションプログラム。
JP2020527595A 2018-06-26 2019-06-26 オンラインサービス提供システム Active JP7470313B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023222407A JP2024029152A (ja) 2018-06-26 2023-12-28 オンラインサービス提供システム、アプリケーションプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018121030 2018-06-26
JP2018121030 2018-06-26
PCT/JP2019/025457 WO2020004495A1 (ja) 2018-06-26 2019-06-26 オンラインサービス提供システム、アプリケーションプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023222407A Division JP2024029152A (ja) 2018-06-26 2023-12-28 オンラインサービス提供システム、アプリケーションプログラム

Publications (3)

Publication Number Publication Date
JPWO2020004495A1 true JPWO2020004495A1 (ja) 2021-08-02
JPWO2020004495A5 JPWO2020004495A5 (ja) 2022-09-14
JP7470313B2 JP7470313B2 (ja) 2024-04-18

Family

ID=68984911

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020527595A Active JP7470313B2 (ja) 2018-06-26 2019-06-26 オンラインサービス提供システム
JP2023222407A Pending JP2024029152A (ja) 2018-06-26 2023-12-28 オンラインサービス提供システム、アプリケーションプログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023222407A Pending JP2024029152A (ja) 2018-06-26 2023-12-28 オンラインサービス提供システム、アプリケーションプログラム

Country Status (4)

Country Link
US (1) US11870907B2 (ja)
EP (1) EP3817279A4 (ja)
JP (2) JP7470313B2 (ja)
WO (1) WO2020004495A1 (ja)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10177552A (ja) * 1996-12-17 1998-06-30 Fuji Xerox Co Ltd 認証応答方法およびその方法を用いた認証応答装置
JP2003298574A (ja) * 2002-03-29 2003-10-17 Toshiba Corp 電子機器、認証局、電子機器認証システム、電子機器の認証方法
JP2004102872A (ja) * 2002-09-12 2004-04-02 Mitsubishi Electric Corp 個人情報保護オンライン・コマース・システム
JP2007058455A (ja) * 2005-08-23 2007-03-08 Dainippon Printing Co Ltd アクセス管理システム、および、アクセス管理方法
WO2007094035A1 (ja) * 2006-02-13 2007-08-23 Seiko Instruments Inc. 検証サーバ機器
JP2009217722A (ja) * 2008-03-12 2009-09-24 Nippon Telegr & Teleph Corp <Ntt> 認証処理システム、認証装置、管理装置、認証処理方法、認証処理プログラムおよび管理処理プログラム
JP2009237774A (ja) * 2008-03-26 2009-10-15 Advanced Media Inc 認証サーバ、サービス提供サーバ、認証方法、通信端末、およびログイン方法
JP2010509838A (ja) * 2006-11-09 2010-03-25 ブロードオン コミュニケーションズ コーポレーション セキュアプロセッサにおけるオンチップ不揮発性メモリのプログラミング方法、及びそのようにプログラミングされた装置
JP2014010486A (ja) * 2012-06-27 2014-01-20 Ntt Docomo Inc 情報処理装置及び認可情報管理方法
WO2017022121A1 (ja) * 2015-08-06 2017-02-09 三菱電機株式会社 認証装置、認証システム、及び認証方法
JP2017157984A (ja) * 2016-02-29 2017-09-07 Kddi株式会社 通信システム、ハードウェアセキュリティモジュール、端末装置、通信方法、及びプログラム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6038551A (en) * 1996-03-11 2000-03-14 Microsoft Corporation System and method for configuring and managing resources on a multi-purpose integrated circuit card using a personal computer
US6779113B1 (en) * 1999-11-05 2004-08-17 Microsoft Corporation Integrated circuit card with situation dependent identity authentication
US7336973B2 (en) * 2002-10-30 2008-02-26 Way Systems, Inc Mobile communication device equipped with a magnetic stripe reader
US7242676B2 (en) * 2002-10-17 2007-07-10 Herman Rao Wireless LAN authentication, authorization, and accounting system and method utilizing a telecommunications network
FI116654B (fi) * 2003-10-23 2006-01-13 Siltanet Ltd Menetelmä käyttäjän autentikoimiseksi
CN100570631C (zh) 2004-05-24 2009-12-16 松下电器产业株式会社 存取控制方法、安全模块保持器以及安全模块
US10867024B2 (en) * 2005-08-20 2020-12-15 Tara Chand Singhal Systems and methods for two-factor remote user authentication
US20130281077A1 (en) * 2007-09-10 2013-10-24 NQ Mobile Lux S.A. Service management platform for configuring, monitoring, and managing mobile devices
US8286865B2 (en) * 2008-04-14 2012-10-16 Lockstep Technologies Pty Ltd Authenticating electronic financial transactions
JP5049862B2 (ja) * 2008-04-23 2012-10-17 日本放送協会 送信装置及び限定受信装置
US9609510B2 (en) * 2009-01-28 2017-03-28 Headwater Research Llc Automated credential porting for mobile devices
IT1396776B1 (it) 2009-11-11 2012-12-14 Sisvel Technology Srl Dispositivo e metodo di comunicazione in una rete di comunicazione mobile
JP2012048728A (ja) 2011-09-20 2012-03-08 Sandisk Il Ltd 個人の存在を条件とする、トークンによるトランザクション認証
CN102802036B (zh) * 2012-07-26 2015-04-29 深圳创维-Rgb电子有限公司 一种数字电视认证的系统及方法
WO2014196969A1 (en) * 2013-06-05 2014-12-11 American Express Travel Related Services Company, Inc. System and method for multi-factor mobile user authentication
JP2017524220A (ja) * 2014-08-04 2017-08-24 アリエリ, ファブリツィオAlieri, Fabrizio ソーシャルネットワークとappsカード
US20160048688A1 (en) * 2014-08-14 2016-02-18 Google Inc. Restricting System Calls using Protected Storage
JP6294203B2 (ja) 2014-09-29 2018-03-14 株式会社日立製作所 認証システム
EP3128453B1 (en) * 2015-08-06 2021-11-03 Nokia Technologies Oy An apparatus comprising a biometric sensor
KR102425368B1 (ko) * 2016-05-02 2022-07-27 삼성전자주식회사 가상 sim 운용 방법 및 그 장치
WO2018182897A1 (en) * 2017-03-28 2018-10-04 Telit Technologies (Cyprus) Ltd. Virtual sim with multiple mobile network operator profiles for operating over multiple wireless ip networks
US11617084B2 (en) * 2018-06-26 2023-03-28 Japan Communications Inc. Online service providing system and application program

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10177552A (ja) * 1996-12-17 1998-06-30 Fuji Xerox Co Ltd 認証応答方法およびその方法を用いた認証応答装置
JP2003298574A (ja) * 2002-03-29 2003-10-17 Toshiba Corp 電子機器、認証局、電子機器認証システム、電子機器の認証方法
JP2004102872A (ja) * 2002-09-12 2004-04-02 Mitsubishi Electric Corp 個人情報保護オンライン・コマース・システム
JP2007058455A (ja) * 2005-08-23 2007-03-08 Dainippon Printing Co Ltd アクセス管理システム、および、アクセス管理方法
WO2007094035A1 (ja) * 2006-02-13 2007-08-23 Seiko Instruments Inc. 検証サーバ機器
JP2010509838A (ja) * 2006-11-09 2010-03-25 ブロードオン コミュニケーションズ コーポレーション セキュアプロセッサにおけるオンチップ不揮発性メモリのプログラミング方法、及びそのようにプログラミングされた装置
JP2009217722A (ja) * 2008-03-12 2009-09-24 Nippon Telegr & Teleph Corp <Ntt> 認証処理システム、認証装置、管理装置、認証処理方法、認証処理プログラムおよび管理処理プログラム
JP2009237774A (ja) * 2008-03-26 2009-10-15 Advanced Media Inc 認証サーバ、サービス提供サーバ、認証方法、通信端末、およびログイン方法
JP2014010486A (ja) * 2012-06-27 2014-01-20 Ntt Docomo Inc 情報処理装置及び認可情報管理方法
WO2017022121A1 (ja) * 2015-08-06 2017-02-09 三菱電機株式会社 認証装置、認証システム、及び認証方法
JP2017157984A (ja) * 2016-02-29 2017-09-07 Kddi株式会社 通信システム、ハードウェアセキュリティモジュール、端末装置、通信方法、及びプログラム

Also Published As

Publication number Publication date
JP7470313B2 (ja) 2024-04-18
EP3817279A1 (en) 2021-05-05
EP3817279A4 (en) 2022-03-23
US11870907B2 (en) 2024-01-09
US20210281416A1 (en) 2021-09-09
WO2020004495A1 (ja) 2020-01-02
JP2024029152A (ja) 2024-03-05

Similar Documents

Publication Publication Date Title
KR101680525B1 (ko) 앱 위변조 탐지 가능한 2채널 인증 대행 시스템 및 그 방법
TWI469612B (zh) 實體安全裝置與方法的模擬
KR101544722B1 (ko) 부인 방지 방법, 이를 위한 결제 관리 서버 및 사용자 단말기
US11617084B2 (en) Online service providing system and application program
US20190087814A1 (en) Method for securing a payment token
CA2914956C (en) System and method for encryption
US10572683B2 (en) Individual data unit and methods and systems for enhancing the security of user data
KR20070048815A (ko) 스마트카드 또는 스마트카드 칩이 내장된 휴대전화기를이용한 원타임패스워드 인증 방법 및 시스템
JP2008522470A (ja) 端末ユーザ識別情報モジュールを接続した通信端末を保護する方法
KR102012262B1 (ko) 키 관리 방법 및 fido 소프트웨어 인증장치
KR20120080283A (ko) 통합센터를 이용한 유심칩기반 모바일 오티피 인증장치 및 인증방법
JP6499368B1 (ja) オンラインサービス提供システム
US10333707B1 (en) Systems and methods for user authentication
KR101656458B1 (ko) 본인 확인 및 본인 인증을 위한 인증 방법 및 시스템
JPWO2020004486A5 (ja)
US20180240113A1 (en) Determining legitimate conditions at a computing device
JP6499367B1 (ja) オンラインサービス提供システム
JP6499369B1 (ja) オンラインサービス提供システム
US20180240111A1 (en) Security architecture for device applications
US20240129139A1 (en) User authentication using two independent security elements
JP7470313B2 (ja) オンラインサービス提供システム
JP7469757B2 (ja) オンラインサービス提供システム
JP2012044430A (ja) 携帯型情報装置及び暗号化通信プログラム
Van Damme et al. A PKI-based mobile banking demonstrator
JPWO2020004495A5 (ja)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220906

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230829

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20231026

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240327

R150 Certificate of patent or registration of utility model

Ref document number: 7470313

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150