(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】特表2017-502549(P2017-502549A)
(43)【公表日】2017年1月19日
(54)【発明の名称】セキュア・モバイル・ユーザ・インターフェースおよびモバイル装置ケース
(51)【国際特許分類】
H04M 1/00 20060101AFI20161222BHJP
H04M 1/11 20060101ALI20161222BHJP
G06F 3/02 20060101ALI20161222BHJP
G06F 21/45 20130101ALI20161222BHJP
【FI】
H04M1/00 U
H04M1/11 Z
G06F3/02 360B
G06F21/45
【審査請求】未請求
【予備審査請求】未請求
【全頁数】34
(21)【出願番号】特願2016-526887(P2016-526887)
(86)(22)【出願日】2014年10月29日
(85)【翻訳文提出日】2016年6月17日
(86)【国際出願番号】GB2014053209
(87)【国際公開番号】WO2015063474
(87)【国際公開日】20150507
(31)【優先権主張番号】61/896,820
(32)【優先日】2013年10月29日
(33)【優先権主張国】US
(31)【優先権主張番号】1407528.7
(32)【優先日】2014年4月29日
(33)【優先権主張国】GB
(81)【指定国】
AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JP,KE,KG,KN,KP,KR,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT,TZ,UA,UG,US
(71)【出願人】
【識別番号】510287256
【氏名又は名称】クリプトマティック リミテッド
【氏名又は名称原語表記】CRYPTOMATHIC LTD
(74)【代理人】
【識別番号】100108855
【弁理士】
【氏名又は名称】蔵田 昌俊
(74)【代理人】
【識別番号】100103034
【弁理士】
【氏名又は名称】野河 信久
(74)【代理人】
【識別番号】100153051
【弁理士】
【氏名又は名称】河野 直樹
(74)【代理人】
【識別番号】100179062
【弁理士】
【氏名又は名称】井上 正
(74)【代理人】
【識別番号】100189913
【弁理士】
【氏名又は名称】鵜飼 健
(74)【代理人】
【識別番号】100199565
【弁理士】
【氏名又は名称】飯野 茂
(72)【発明者】
【氏名】ランドロック、ピーター
(72)【発明者】
【氏名】ボンド、マイク
【テーマコード(参考)】
5B020
5K023
5K127
【Fターム(参考)】
5B020AA01
5B020CC12
5B020DD04
5B020FF17
5B020GG02
5K023AA07
5K023BB27
5K023HH08
5K023MM03
5K023MM25
5K023QQ04
5K023QQ05
5K127BA03
5K127BA16
5K127BB05
5K127CA03
5K127CA07
5K127CA08
5K127CB02
5K127CB06
5K127CB13
5K127CB30
5K127DA13
5K127DA15
5K127FA07
5K127GD05
5K127GD16
5K127GE04
5K127GE06
5K127JA05
5K127JA48
(57)【要約】
【解決手段】 本発明はユーザからユーザデータをモバイル装置にセキュアに入力する、またユーザによってモバイル装置に入力されるユーザデータを生成するシステムおよび方法を提供する。例えば、マイクロコントローラと、モバイル装置と通信するための通信モジュールと、ユーザがユーザデータを入力することを可能にするユーザ・インターフェースとを備える、ユーザからユーザデータをモバイル装置にセキュアに入力するモバイル装置ケースが提供される。マイクロコントローラは、ユーザ・インターフェースを介してユーザによって入力されるユーザデータを受信し、ユーザデータを処理して被処理データを形成し、被処理データをモバイル装置に伝達するように構成されるのが好ましい。または、マイクロコントローラは、ユーザデータを生成する要求を受信し、ユーザデータを生成し、ユーザ・インターフェース上でユーザデータを表示するように構成される。
【選択図】
図3a
【特許請求の範囲】
【請求項1】
ユーザデータをセキュアに入力するモバイル装置ケースであって、前記ケースは、
マイクロコントローラと、
通信モジュールと、
前記ユーザが前記ユーザデータを入力することを可能にするユーザ・インターフェースと、
を備え、
前記マイクロコントローラは、
前記ユーザ・インターフェースを介してユーザによって入力される前記ユーザデータを受信し、
前記ユーザデータを処理して、被処理データを形成し、
モバイル装置またはサードパーティーに前記被処理データを出力して、前記ユーザデータが、前記モバイル装置またはサードパーティーが前記ユーザ・インターフェースを介して入力された前記ユーザデータを解釈できることなく前記ユーザデータがセキュアに前記モバイル装置またはサードパーティーに伝達される、
モバイル装置ケース。
【請求項2】
前記ユーザ・インターフェースは、前記ユーザデータのどの文字が入力されているかを前記ユーザに示す少なくとも1つの視覚的インジケータを備える、
請求項1のモバイル装置ケース。
【請求項3】
前記少なくとも1つの視覚的インジケータは、1回に1つが点灯させられる複数の発光体を備え、前記点灯させられる発光体は前記ユーザデータのどの文字が入力されているかを示す、
請求項2に記載のモバイル装置ケース。
【請求項4】
前記少なくとも1つの視覚的インジケータは、1回に1つが消灯させられる複数の点灯させられた発光体を備え、前記消灯させられる発光体は前記ユーザデータのどの文字が入力されているかを示す、
請求項2に記載のモバイル装置ケース。
【請求項5】
前記ユーザ・インターフェースは、ユーザが前記ユーザデータ中の各文字を入力するためのタッチ機構を備える、
請求項1乃至請求項4のいずれか1項のモバイル装置ケース。
【請求項6】
前記タッチ機構は、どの発光体が点灯させられるかまたはどの発光体が消灯させられるかを変更するためのタッチセンサを備える、
請求項3または請求項4にそれぞれ従属する場合の請求項5のモバイル装置ケース。
【請求項7】
前記タッチ機構は、1つが前記ユーザデータの各文字のための複数のタッチセンサを備え、それにより、前記ユーザは、所望の文字に対応する前記タッチセンサを押すことによって前記ユーザデータを入力する、
請求項5のモバイル装置ケース。
【請求項8】
前記タッチセンサまたは各タッチセンサは容量性タッチセンサである、
請求項6または請求項7のモバイル装置ケース。
【請求項9】
前記ユーザ・インターフェースは前記通信モジュールを介して前記モバイル装置から調整データを受信するように構成され、前記モバイル装置は前記ユーザデータを入力するために使用可能である、
請求項1乃至請求項8のいずれか1項のモバイル装置ケース。
【請求項10】
前記マイクロコントローラは、前記調整データに基づいて、どの発光体が点灯させられるかまたはどの発光体が消灯させられるかを変更するように構成される、
請求項3または請求項4に従属する場合の請求項9のモバイル装置ケース。
【請求項11】
前記マイクロコントローラは、少なくとも前記ユーザデータの第1文字が入力される前に、前記複数の発光体のうちの1つをランダムに点灯させるようにさらに構成される、
請求項10のモバイル装置ケース。
【請求項12】
前記ユーザ・インターフェースは、前記通信モジュールを介して前記モバイル装置から文字データを受信するように構成され、前記文字データは、前記モバイル装置のスクリーンに表示されかつ各発光体と並べられる文字を示し、前記マイクロコントローラは、どの文字が前記文字データから選択されるかを割り出すように構成される、
請求項10または請求項11のモバイル装置ケース。
【請求項13】
前記マイクロコントローラは、前記ユーザデータを確認することによって前記ユーザデータを処理するように構成され、前記被処理データは、前記ユーザデータが確認されたかどうかを示す、
請求項1乃至請求項12のいずれか1項のモバイル装置ケース。
【請求項14】
前記マイクロコントローラは、前記ユーザデータに一方向性関数を適用しかつ前記被処理データを同じ一方向性関数が適用された同じユーザデータから形成された被保持データと比べることによって、前記ユーザデータを処理するように構成される、
請求項13のモバイル装置ケース。
【請求項15】
前記マイクロコントローラは、前記ユーザデータを処理するように構成され、前記ユーザデータを暗号化しかつ前記モバイル装置に前記被暗号化被処理データを伝達する、
請求項1乃至請求項12のいずれか1項のモバイル装置ケース。
【請求項16】
前記マイクロコントローラは、前記ユーザデータを処理してトークンを形成するように構成され、前記トークンは、前記モバイル装置に伝達される、
請求項1乃至請求項12のいずれか1項のモバイル装置ケース。
【請求項17】
カウンタをさらに備え、前記マイクロコントローラは、前記カウンタからの計数値を使用して前記トークンを生成するように構成される、
請求項16のモバイル装置ケース。
【請求項18】
クロックをさらに備え、前記マイクロコントローラは、前記クロックから得られた現在時刻を使用して前記トークンを生成するように構成される、
請求項16または請求項17のモバイル装置ケース。
【請求項19】
前記マイクロコントローラは、認証データを使用して前記トークンを生成するように構成され、前記認証データは、前記モバイル装置上で動作するアプリケーションのタイプに関連するデータ、前記モバイル装置のタイプに関連するデータ、およびユーザ固有データの1つまたは複数を備える、
請求項16乃至請求項18のいずれか1項のモバイル装置ケース。
【請求項20】
前記ケースに統合されたスマートカード・リーダをさらに備え、前記ユーザ固有データは、前記リーダに挿入されたスマートカードから得られる、
請求項19のモバイル装置ケース。
【請求項21】
前記マイクロコントローラを取り込んだ被埋込みEMVチップをさらに備え、前記ユーザ固有データは、前記EMVチップから得られる、
請求項19のモバイル装置ケース。
【請求項22】
前記ユーザ・インターフェースは前記ケースが完全性または機密性保護モードにあるかを示す視覚的インジケータをさらに備える、
請求項1乃至請求項21のいずれか1項のモバイル装置ケース。
【請求項23】
モバイル装置にデータをセキュアに入力するシステムであって、前記システムは、
請求項1乃至請求項22のいずれか1項のモバイル装置ケースと、
ディスプレイおよび前記モバイル装置ケースと通信する通信モジュールを備えるモバイル装置と、
を備えるシステム。
【請求項24】
前記モバイル装置は前記ディスプレイ上に文字の組を表示するように構成される、
請求項23のシステム。
【請求項25】
前記モバイル装置ケースは複数の発光体を備え、前記複数の発光体のうちの1つは各表示された文字と並べられ、使用の際、一度に1つの発光体がどの文字が選択されているか示すために点灯させられる、
請求項24のシステム。
【請求項26】
前記モバイル装置ケースは複数の発光体を備え、前記複数の発光体のうちの1つは各表示された文字と並べられ、使用の際、一度に1つの発光体がどの文字が選択されているか示すために消灯させられる、
請求項24のシステム。
【請求項27】
前記モバイル装置は少なくとも1つのタッチセンサをさらに備えかつ前記モバイル装置ケースに調整データを送信し、それにより点灯または消灯させられる発光体が制御可能である、
請求項25または請求項26のシステム。
【請求項28】
前記モバイル装置およびモバイル装置ケースは1つのデバイスに統合される、
請求項23乃至請求項27のいずれか1項のシステム。
【請求項29】
前記モバイル装置ケースは事実上のケースである、
請求項28のシステム。
【請求項30】
前記モバイル装置はスマートフォンまたはタブレット・コンピュータである、
請求項23乃至請求項29のいずれか1項のシステム。
【請求項31】
ユーザによって入力されるユーザデータを生成するモバイル装置ケースであって、前記ケースは、
マイクロコントローラと、
前記被生成ユーザデータをユーザに表示するユーザ・インターフェースと、を備え、
前記マイクロコントローラは
前記ユーザデータを生成する要求を受信し、
前記ユーザデータを生成し、
前記ユーザデータを前記ユーザ・インターフェース上で表示するように構成される、
ように構成される、モバイル装置ケース。
【請求項32】
前記ケースは、カウンタをさらに備え、前記マイクロコントローラは、前記カウンタからの計数値を使用して前記ユーザデータを生成するように構成される、
請求項31のモバイル装置ケース。
【請求項33】
クロックをさらに備え、前記マイクロコントローラは、前記クロックから得られた現在時刻を使用して前記ユーザデータを生成するように構成される、
請求項31または請求項32のモバイル装置ケース。
【請求項34】
前記マイクロコントローラは、認証データを使用して前記ユーザデータを生成するように構成され、前記認証データは、前記モバイル装置上で動作するアプリケーションのタイプに関連するデータ、前記モバイル装置のタイプに関連するデータ、およびユーザ固有データの1つまたは複数を備える、
請求項31乃至請求項33のいずれか1項のモバイル装置ケース。
【請求項35】
前記ケースに統合されたスマートカード・リーダをさらに備え、前記ユーザ固有データは、前記リーダに挿入されたスマートカードから得られる、
請求項30のモバイル装置ケース。
【請求項36】
前記ユーザ固有データは、ケースに保持される、
請求項35のモバイル装置ケース。
【請求項37】
前記マイクロコントローラを取り込んだ被埋込みEMVチップをさらに備え、前記ユーザ固有データは、前記EMVチップから得られる、
請求項36のモバイル装置ケース。
【請求項38】
前記ユーザ・インターフェースは、前記被生成ユーザデータを前記ユーザに示す少なくとも1つの視覚的インジケータを備える、
請求項31乃至請求項37のいずれか1項のモバイル装置ケース。
【請求項39】
前記少なくとも1つの視覚的インジケータは、1回に1つが順に点灯する複数の発光体を備え、各点灯する発光体は前記ユーザデータの各連続的文字を示す、請求項38のモバイル装置ケース。
【請求項40】
前記少なくとも1つの視覚的インジケータは、1回に1つが順に消灯させられる複数の発光体を備え、前記消灯する発光体は、前記ユーザデータの各連続的文字を示す、
請求項38のモバイル装置ケース。
【請求項41】
モバイル装置にデータを入力するシステムであって、前記システムは、
請求項31乃至請求項40のいずれか1項の、ユーザデータを生成するモバイル装置ケースと、
ディスプレイを備えるモバイル装置と、
を備えるシステム。
【請求項42】
前記モバイル装置は前記ディスプレイ上に文字の組を表示するように構成される、
請求項41のシステム。
【請求項43】
前記モバイル装置ケースは、複数の発光体を備え、各表示された文字は、前記複数の発光体のうちの1つと並べられ、使用の際、一度に1つの発光体が前記ユーザデータのどの文字が生成されているかを示すために点灯させられる、
請求項42のシステム。
【請求項44】
前記モバイル装置ケースは、複数の発光体を備え、各表示された文字は、前記複数の発光体のうちの1つと並べられ、使用の際、一度に1つの発光体が前記ユーザデータのどの文字が生成されているか示すために消灯させられる、
請求項42のシステム。
【請求項45】
前記モバイル装置は仮想キーパッドを表示し、それにより、前記ユーザは前記ユーザデータを生成される通りに前記モバイル装置に入力する、
請求項41乃至請求項44のいずれか1項のシステム。
【請求項46】
前記モバイル装置ケースは、請求項1乃至請求項22のいずれか1項に記載のように前記被生成ユーザデータをセキュアに入力するように構成される、
請求項41乃至請求項44のいずれか1項のシステム。
【請求項47】
マイクロコントローラと、通信モジュールと、ユーザがユーザデータを入力することを可能にするユーザ・インターフェースと、を備えるモバイル装置ケースを使用して、前記ユーザから前記ユーザデータをセキュアに入力する方法であって、
前記マイクロコントローラにおいて、前記ユーザ・インターフェースを介して入力されたユーザデータを受信することと、
前記マイクロコントローラにおいて、前記ユーザデータを処理して被処理データを形成することと、
前記被処理データをモバイル装置またはサードパーティーに出力することと、
を備える方法。
【請求項48】
マイクロコントローラと、被生成ユーザデータをユーザに表示するユーザ・インターフェースと、を備えるモバイル装置ケースを使用して、前記ユーザによって入力される前記ユーザデータを生成する方法であって、
前記マイクロコントローラにおいて、前記ユーザデータを生成する要求を受信することと、
前記マイクロコントローラにおいて、前記ユーザデータを生成することと、
前記ユーザ・インターフェース上で前記ユーザデータを表示することと、
を備える方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はモバイル装置用のハードウェア・ベースのユーザ・インターフェースに関し、特に、データをモバイル装置にセキュアに(安全に)入力するためのセキュア(セキュアな、安全な)ユーザ・インターフェース・システムおよび方法の使用可能性に関する。
【背景技術】
【0002】
スマートフォン、タブレット、および電子書籍リーダのようなモバイル装置はインターネット上のコンテンツを見るため、オンラインで品物を購入するため、オンライン・バンキングのトランザクションを行うため、および銀行預金残高を確認するために頻繁に使用される。モバイル装置のユーザは、定期的に、データを見たり、またはトランザクションの完了のためにユーザが認証される前にパスワードを入力することをユーザに要求するトランザクションを行ったりする。しかしながら、モバイル装置は、従来のPCと同様に、マルウェア感染の影響を受けやすく、また、機密データまたは重要なトランザクション・データを改竄のリスクなしにセキュアに入力するのは困難な可能性がある。一旦モバイル装置が危険な状態になると、悪意あるソフトウェアは装置のユーザによって入力されたどのような機密データをも記録しかつサードパーティー(第三者団体)へと送信したり、またはユーザに意図されていない行為を行わせるように被入力データを変更したり、またはユーザを(例えばユーザにさらなる機密情報を入力させるように)欺くためにユーザに対して装置に表示されたデータを変更したりし得る。マルウェアの攻撃は資金、プライバシー、および安全性の喪失につながる場合がある。したがって、データを装置にセキュアに(すなわち秘密にまたはデータが改竄されることなく)、装置上のいかなるマルウェアも処理に干渉できないように入力できるという要求がある。
【0003】
多くの顧客が、自身のモバイル装置を使用して、自身の銀行口座にオンラインでアクセスする。金融機関は、顧客の口座が認証無しにアクセスされるというリスクを減じるために多くの方法を作ってきた。例えば、ほとんどの機関はオンライン・バンキングのためにセキュアなウェブサイト(すなわちHTTPS通信プロトコル)を使用し、多くは、アクセスを認証するために少なくとも1つのパスワードが入力されることを要求する。多くの銀行は、口座へのアクセスを制御し、かつオンライン・バンキング・トランザクションを認証するためにOTPシステムを使用する。典型的には、顧客は、ウェブサイトへログインするために使用されるパスワード、および特定のトランザクションを認証するために1回のログイン・セッションまたはトランザクションにとってのみ有効なパスワードであるOTP(ワン・タイム・パスワード)を入力することを要求される。OTPはいくつかの種々のアプローチで使用されることが可能である。
【0004】
OTPは、SMSメッセージによって顧客の携帯電話に銀行によって送信され得る。OTPがSMSによって顧客に送信される場合、顧客は、SMSを読み、OTPを記憶し、それをウェブサイトに入力するために自身のモバイル装置上でウェブサイトとSMSアプリケーションとの間を行きつ戻りつ切り替える必要がある。ユーザは、このアプローチを、行うには不便または困難であると考え得る。
【0005】
顧客は、セキュア・トークンを使用することによって、必要な時にOTPを生成し得る。セキュア・トークンは典型的には1つのハードウェアであり、それはクロックまたはカウンタを含んでいる。したがって、時刻とイベントの順序付けはOTP生成アルゴリズムの重要部分である。あるいは、OTPはチップ認証プログラム(CAP)装置を使用して、顧客によって生成され得る。これについては、後に詳述される。どちらの方法がOTPを生成するために使用されても、ユーザはオンライン・トランザクションを完了するために銀行のウェブサイトへOTPを入力する。
【0006】
多くの銀行はオンライン・バンキング・トランザクションの認証のためにチップ認証プログラム(CAP)を使用する。CAPは、2段階認証システムであり、OTPを生成するために「チップおよびPIN」バンクカード(またはチップカード)ならびに有効なPINの両方を必要とする。自身のオンライン・バンキング・アカウント(口座)にログインしておりかつトランザクション(例えば口座間での金銭の振替または支払い)を行いたいユーザは、それらのトランザクションが成功するためにCAPを使用して生成されたOTPをオンライン・バンキング・システムに入力しなければならない。CAPは、典型的にはカードスロット、テンキー、および多くの文字/数字を表示することが可能なディスプレイを備える携帯型装置、すなわちCAPリーダ、の使用を要求する。オンライン・バンキング・トランザクションを行いたいユーザは、自身の「チップおよびPIN」バンクカードをカードスロットに挿入し、かつ自身のPINをキーパッドによってCAPリーダへ入力することを要求される。ユーザは、また、自身が実行を望むトランザクションのタイプ、およびトランザクションの詳細を選択し得る。CAPリーダは、PIN、バンクカード固有データ、および現在時刻を使用して生成された数字のパスコード(すなわちOTP)を出力する。ユーザは、銀行トランザクションを完了するためにOTPをオンラインで入力することを要求される。
【0007】
CAPは、モバイル装置によってオンライン・トランザクションを行いたいユーザがCAPリーダを携帯することを要求する。
図1は、スマートフォン22、スマートフォン・ケース30、チップ&ピン・バンクカード(またはEMVカード)32、およびCAPリーダ34の相対的な大きさを例示する。
図1に示されるように、典型的なCAPリーダ34は多くのスマートフォン22と同様の大きさであり得、したがって、ユーザは、余分な装置を携帯することを厄介であると感じるかもしれない。CAPアプローチは、またユーザにとって魅力でないかもしれない。それが、セキュアなトランザクションを完了するために2つの相違するユーザ・インターフェースを有する2つの相違する装置を使用することをユーザに要求するからである。さらに、CAPリーダは特定の銀行関連トランザクションのためだけに使用され、セキュアにパスワードを入力したりまたは機密ユーザデータの入力を必要とする他の動作を実行したりするためには使用されることが可能でない。
【0008】
スマートフォンは典型的には単にソフトウェア保護されているだけであり、したがって、スマートフォンおよび同様のモバイル装置は非常に機密な情報を保持するためにはまだ広く使用されておらず、当てにされてもいない。例えば、スマートフォンはデビットカードまたはクレジットカードのチップに保持されている機密情報を格納することを期待されていないかもしれない。一方、デビットカードまたはクレジットカード内のチップは、十分に安全であると一般に考えられている。スマートフォン上のセキュリティーの不足についての1つの理由は、スマートフォンのチップまたはマイクロプロセッサが(理論上セキュアな保持および適切な保護を提供できる)いわゆるセキュア要素を含んでいるにもかかわらず、この「セキュア・エレメント」が電話回線網の運営主体によってもっぱら制御されているということである。すなわち、このスマートフォン・チップは、典型的には、例えばセキュアなトランザクション(例えばスマートフォンによるオンライン・バンキング・トランザクション)を実行する銀行によって供給されたソフトウェア・アプリケーションにとってアクセス可能ではない。このように、スマートフォンがトランザクションを実行するために使用される場合、スマートフォンの「セキュア・エレメント」は使用されず、その結果、スマートフォンは特にトランザクションの間に機密情報を安全に保持できない。
【0009】
背景的事項は、US2013/0120913、US2013/0077235、US2003/0073415、US2002/0089410およびEP1971111A2、EP1467275A2において見つかる。
【0010】
本出願人は、セキュアなモバイル・コンピューティングのユーザ経験を向上させる要求を認識してきた。
【発明の概要】
【0011】
本発明の第1側面によれば、ユーザからのユーザデータをセキュアに入力するモバイル装置ケースであって、マイクロコントローラと、モバイル装置またはサードパーティーと通信する通信モジュールと、ユーザがユーザデータを入力することを可能にするユーザ・インターフェースと、を備えるモバイル装置ケースが提供される。マイクロコントローラは、ユーザ・インターフェースを介してユーザによって入力されるユーザデータを受信し、前記ユーザデータを処理して被処理データを形成し、前記被処理データを前記モバイル装置または前記サードパーティーに伝達するように構成されるのが好ましい。
【0012】
本発明の第2側面によれば、マイクロコントローラと、通信モジュールと、ユーザがユーザデータを入力することを可能にするユーザ・インターフェースと、を備えるモバイル装置ケースにユーザからユーザデータを入力する方法が提供される。本方法は、マイクロコントローラにおいて、ユーザ・インターフェースを介して入力されたユーザデータを受信することと、マイクロコントローラにおいて、前記ユーザデータを処理して被処理データを形成することと、前記被処理データを前記通信モジュールを介してモバイル装置またはサードパーティーに出力することと、を備える。
【0013】
これらの両方の側面において、ユーザデータは、前記モバイル装置またはサードパーティーに、前記モバイル装置またはサードパーティーがユーザ・インターフェースを介して入力されたユーザデータを解釈できることなく安全に伝達される。例えば、モバイル装置およびサードパーティーのいずれも、入力されたユーザデータとランダム・データを区別することができない。以下の特徴は発明の両方の側面に当てはまる。
【0014】
ユーザデータは、パスワード(PINおよびパスコードを含む)、または受取人詳細事項のような機密トランザクション・データを備え得る。ユーザデータは数値の桁または他の文字(例えばアルファベット文字)を備え得る。ユーザデータは、モバイル装置上で動作するアプリケーション(例えばゲーム、ウェブブラウザ、オフィス・パッケージなど)に安全に入力され得る。あるいは、ユーザデータは、サードパーティーに安全に伝達され得る。サードパーティーは、ユーザデータを必要とするあらゆる団体(例えば銀行または店)であり得、またはそのようなサードパーティーのための別個の認証サービスであり得る。
【0015】
ケースはユーザ・インターフェースを含んでおり、このユーザ・インターフェースを介してユーザはユーザデータをケースに直接またはモバイル装置を介して間接的に入力する。しかしながら、いずれの構成であっても、後に詳述されるように、キーボードとしてのモバイル装置の使用が回避される。したがって、モバイル装置上に存在し得るマルウェアは、ユーザによって入力された文字を知らない。文字が、モバイル装置がそれらを直接受信することなくケースに統合されたハードウェアを使用してシステムに入力されるからであり、または、モバイル装置に入力されたどのようなデータも知られていない初期データにのみ関連しているからである。さらに、ユーザデータはモバイル装置またはサードパーティーに送信される前にケースのマイクロコントローラによって処理され、よって、ユーザデータは邪魔されることなく受信されはしない、すなわちユーザデータは被処理データから割り出されることが可能でない。
【0016】
これが機能するために、ケースは信号を、信号がモバイル装置に知られないように、ユーザに送信できなければならない。1つの選択肢は、ケースのユーザ・インターフェースが、どの文字が現在選択されているかをユーザに表示する少なくとも1つの視覚的インジケータを有することである。視覚的インジケータは1または複数の発光体(例えばLED)を備え得る。そのような発光体はそれらがケースの重さまたは大きさを著しく上げずに、ケースに組み入れら得るほどに小さい。複数の発光体(例えば、0から9までの各数について1つ)があり得る。複数の発光体は1回につき1つ点灯され、点灯された光はユーザデータのどの文字が選択されているかを示し得る。あるいは、複数の発光体は、ユーザデータのどの文字が入力に向けて選択されているかを示す不点灯の1つの発光体以外の全てが点灯され得る。あるいは、異色の発光体が、入力に向けてどの文字が選択されているかを示すために使用され得る(例えば選択されている文字のための緑および他の文字のための赤)。換言すると、1つの発光体が、どの文字が選択されているか示すために、他のものと異なる。発光体は、ケースの1または複数の側面に沿って配置され得る。各発光体は、ケースに示され得るかまたはモバイル装置のスクリーンに表示され得る文字と並んでいることが好ましい。
【0017】
ユーザ・インターフェースは、ユーザがユーザデータ中の各文字を入力するためのタッチ機構を備え得る。例えば、複数の発光体がある場合、タッチ機構はタッチセンサを備え得、これによりユーザはどの発光体が点灯されるかを変更できる。ユーザの指の動きが、タッチセンサによって検出され得、例えばタッチセンサに沿ってのスワイプまたはタッチセンサの長押しによって点灯される発光体の循環を引き起こし得る。ユーザは、循環を始めるためにセンサをタッチし、次いで循環が所望の発光体を点灯させている際にセンサから指を離し、および/または所望の発光体が点灯されているときにセンサをタップすることによって、ユーザデータ中の文字を選択し得る。
【0018】
加えてまたは代替的に、タッチ機構は、ユーザデータの1文字に各々が対応する複数のタッチセンサを備え得る。この構成では、ユーザが文字を入力するために単に正確なタッチセンサを押せるように、視覚的インジケータは各タッチセンサに隣り合う/接する単なる文字であり得る。ユーザ・インターフェースが複数の発光体を含んでいる場合、各発光体はタッチセンサに隣り合い得る。複数のセンサは、各発光体がケース上でその隣に配置された対応するセンサまたはセンサ・ボタンを有するように設けられ得る。ユーザは、文字を選択するために所望の発光体と関連するセンサをタップし得る。
【0019】
ユーザデータを入力するためにケース上のタッチ機構が使用される構成では、モバイル装置は、どの文字が選択されたかを知らず、また、セキュア・マイクロコントローラによって処理されたデータを知らない。したがって、ユーザデータを入力する処理は、モバイル装置から隠される。センサは、容量性センサ(すなわち多くのラップトップ・タッチパッドにおいて使用される技術に類似の技術)であり得る。
【0020】
タッチ機構を備えるユーザ・インターフェースの選択肢として、ユーザ・インターフェースは通信モジュールを介してモバイル装置から調整データを受信するように構成され得る。調整データは、セキュアなケースによって表示されている選択中の値の所望の変更を示し得る。例えば、複数の発光体がある構成において、モバイル装置のスクリーン上での垂直タッチ・ジェスチャーは、発光体の点灯を循環させるために使用され得る。こうして、ユーザは、データ入力の絶対値が見えることなく、モバイル装置自体の上のタッチスクリーンを使用することによって、点灯する発光体を変更することができ得る。
【0021】
ユーザデータを入力するこの方法は、モバイル装置のキーボードを使用して文字を入力するよりもセキュアである。モバイル装置上のマルウェアはスクリーン上に表示された文字を見ることが可能であり得るが、どの発光体が点灯するかを見ることはできない。発光体がケースの一部であって、モバイル装置の一部ではないからである。しかしながら、モバイル装置、ひいては装置上で動作するどのようなマルウェアも、ユーザの指の動きからユーザデータに関する情報を、限定はされるものの、取得でき得る。したがって、向上したセキュリティーは、マイクロコントローラを、ランダムに選択された1つの発光体を点灯させるか、ランダムに選択された1つの発光体を消灯させるように構成することによって設けられ得る。ランダムな発光体は、最大限の安全のためにユーザデータの各文字が入力される前、または少なくとも最初の文字が入力される前に、選択され得る。ランダムに選択されたLEDはランダムな「開始位置」を表す。ユーザは、必要な文字の隣のスクリーンに単に触れることはできず、自身が所望の数字に達するまで、開始位置から文字を循環させなければならない。スクリーン上でのユーザの指の初期位置およびそれがスクリーンに沿って移動する距離は、モバイル装置によって知られる。
【0022】
さらに、ディスプレイのスクリーンは、各文字が複数の発光体のうちの1つと並べられた文字の組を表示するように構成され得る。ユーザ・インターフェースは、さらに、各発光体と並べられた文字の種類を備える文字データを受信し得る。表示される文字の組は静的であり得、その場合、ユーザ・インターフェースは、どの文字が各発光体と並べられているかを示す文字データのみを1回受信する。あるいは、表示される文字の組は、例えば入力されることが可能なデータ中でのより大きな多様性を可能にするために変化させられ得る。そのような構成では、文字の組についての最新版の各々がユーザ・インターフェースに伝達される必要がある。やはり、この文字データがマイクロコントローラに送信され、マイクロコントローラがデータを処理することが好ましい。マイクロコントローラはどの文字が選択されるかを文字データから割り出せるように構成され得る。しかしながら、モバイル装置とケースの両方がユーザデータを入力するために使用されるが、処理はケース上で生じ、モバイル装置はユーザがどの文字をディスプレイ上の組から選択したかを認識しない。
【0023】
一旦ユーザデータ(例えばPINの全体)が入力されると、ケース中のマイクロコントローラは、例えば受信された数字に対して関数を実行することによってユーザデータを処理する。処理はユーザによって入力されたユーザデータの文字を確認することを備え得、被処理データが確認の結果であり得、被処理データは出力される。確認処理は、ユーザデータの被受信文字をマイクロコントローラに保持されたパスコードと比較して被受信文字が保持されたパスコードと一致するかを判断することを備え得る。したがって、この構成では、適用される関数は単純なマッチング(比較)処理である。あるいは、マイクロコントローラは暗号化ハッシュ関数または被受信文字に対する他の同様の一方向性関数を適用するように構成され得る。出力ハッシュ値は、出力された値が保持された値と一致するかを判断するために、マイクロコントローラに保持されたハッシュ値(または同じ入力ユーザデータに対する同じ一方向性関数を使用して算出された値)と比較され得る。一方向性関数を使用する利点は、ケースが、アクセス可能な形態でユーザデータを保持せず、しかし同じユーザデータが入力される場合に保持された値と同じ値を常に再現できるということである。(ハッシュ化されている、またはいない)ユーザデータが一致しない場合、ユーザは正確なユーザデータを入力する固定回数の別の機会を許され、その後、正確なデータが正確に入力されなかった場合、ユーザはロックアウトされ、かつ/またはトランザクションの完了を阻まれ得る。
【0024】
加えてまたは代替的に、マイクロコントローラはマイクロコントローラに保持された暗号鍵を使用して、被受信数字を暗号化するように構成され得る。被暗号化データは、サードパーティーによって復号および確認のために使用され得る。この構成では、モバイル装置ケースは被受信数字自体を確認しないかもしれないが、それらを認証のためにサードパーティーに(例えばモバイル装置への通信モジュールを介して)送信する。暗号鍵は公開鍵であり得、また、サードパーティーは、秘密鍵を使用して、被暗号化データを復号しかつユーザデータがサードパーティーに知られている真のユーザデータと一致するかを判断し得る。このシナリオでは、ユーザ固有データはシステム上で保持される必要がなく、よって、セキュリティーが向上する。
【0025】
システムは、少なくとも被受信ユーザデータを使用してワンタイム・パスコード(OTP)またはトランザクション認証番号(TAN)のような、セキュリティー・トークンを生成するように構成され得る。セキュリティー・トークンの生成は、被受信ユーザデータに加えてさらなる認証データ、例えば計数値、現在時刻、モバイル装置上で動作するアプリケーションのタイプに関連するデータ、モバイル装置のタイプに関連するデータ、および/またはユーザ固有データ、を使用することを要求し得る。
【0026】
セキュリティー・トークンの生成が計数値を要求する場合、ケースは計数値を提供するためのカウンタをさらに備え得る。同様に、トークン生成が現在時刻を要求する場合、ケースはクロックをさらに備え得る。クロックは、パスコードを要求したアプリケーションにリンクされた認証サーバのクロックと同期させられ得る。
【0027】
トークン生成がユーザ固有データを備える場合、認証データは、スマートカード(例えば「チップ&ピン」カードまたはEMVカード)からデータを読むことによって取得され得る。このように、ケースは上記のCAPリーダに類似の機能を実行するように構成され得る。したがって、ケースは、ケースに統合されたスマートカード・リーダ、および/またはケースに統合された非接触スマートカード・リーダをさらに備え得る。あるいは、ケース中のマイクロコントローラは、実際上、本発明のために必要なさらなる機能性を有する埋込み型EMVチップであり得る。
【0028】
視覚的インジケータは、システムのセキュリティーモードを示すために、すなわちケースが完全性または機密性保護モードであるかを示すために使用され得る。例えば、複数のLEDがある場合、それらは複数色のLEDであり得る。1色の光(例えば緑)は、ユーザデータがモバイル装置に対して平文で明かされない機密性保護モード(これは、パスワード・エントリーに適しているかもしれない)を示し得る。別の色は、モバイル装置が平文でデータ値を知りはするものの検知なしにそれを修正できない完全性保護モード(これは、トランザクション受取人または額の入力に適しているかもしれない)を示し得る。マイクロコントローラは必要に応じてLEDの色を切り替えるように構成され得る。
【0029】
モバイル装置ケースは、モバイル装置とともに使用されるように設計され、また、モバイル装置に取り外し可能に取り付け可能であることが好ましい。一般に、使用の際、モバイル装置は、モバイル装置ケースの内側に維持されるか、または部分的に覆われる。このように、発明の別の側面に従って、上記のようにモバイル装置ケースを備えるシステム、およびディスプレイならびにモバイル装置ケースと通信する通信モジュールを備えるモバイル装置が記述されている。ユーザデータが入力されることを可能にするためにモバイル装置とモバイル装置ケースの両方の間でのインタラクションおよび通信があることが好ましい。しかしながら、上記のように、インタラクションは、ユーザデータがモバイル装置上で平文で入力されるのを防ぎ、またはモバイル装置によって解釈可能などのような方法でもモバイル装置上で入力されないよう防ぐように設計されている。
【0030】
あるいは、モバイル装置ケースの機能性は、実際上、モバイル装置に組み込まれた付加的な機能として提供され得る。こうして、モバイル装置ケースおよびモバイル装置は完全に統合される。モバイル装置ケースは、標準的な携帯電話の筐体の全体または部分を物理的に置き換え得る。あるいは、システムは、事実上のモバイル装置ケースを備え得、この場合、上記の物理的なモバイル装置ケースの機能性はモバイル装置に加えられる。ケースとモバイル装置が統合される場合、2つの別個のプロセッサがあることが必要である。すなわち、モバイル装置の機能性を制御する標準プロセッサと、上記のモバイル装置ケースの機能性を提供する独立かつ別個のマイクロコントローラである。
【0031】
1または各プロセッサは、マイクロプロセッサ、ディジタル信号処理(DSP)チップ、特定用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲート・アレイ(FPGA)等のような任意の既知の適切なハードウェアにおいて実現され得る。1または各プロセッサは、1つの処理コアまたは各々が独立して動作するように動作するように構成された複数の処理コアを含み得る。1または各プロセッサは、例えばメモリに保持された指示およびプロセス情報を実行するためにバスへの接続性を有し得る。
【0032】
モバイル装置はディスプレイ上に文字の組を表示するように構成され得る。ケースが複数の発光体を備える場合、1文字は各発光体と並んで表示され得る。上記のように、モバイル装置はユーザがモバイル装置中のタッチセンサを使用してどの発光体が点灯されるか制御することを可能にするように構成される。例えば、システムのユーザは、点灯されているLEDの隣のスクリーン上の点から始めてタッチスクリーンをスワイプすることによって、表示された文字からユーザデータ中の各文字を選択する。使用の際、ケースは、モバイル装置の背面を覆い、モバイル装置にその側面に沿って取り外し可能に固定され得る。
【0033】
モバイル装置およびモバイル装置ケースがインタラクトするように構成されることが可能な他の方法がある。例えば、本発明のさらなる側面において、ユーザによってモバイル装置に入力されるユーザデータを生成するためのモバイル装置ケースであって、マイクロコントローラおよび被生成ユーザデータをユーザに表示するユーザ・インターフェースを備えるケースが提供される。マイクロコントローラはユーザデータを生成する要求を受信し、前記ユーザデータを生成し、前記ユーザデータをユーザ・インターフェース上で表示するように構成される。この構成では、ケースはTANおよび/またはOTPを生成し得る。ユーザデータの生成は、ユーザによって要求されるか、(例えば携帯電話を介して)サードパーティーによって要求され得る。
【0034】
ユーザデータの生成は計数値、現在時刻、モバイル装置上で動作するアプリケーションのタイプに関連するデータ、モバイル装置のタイプに関連するデータ、および/またはユーザ固有データのような認証データを使用することを要求し得る。
【0035】
ユーザデータ生成が計数値を要求する場合、ケースは計数値を提供するためのカウンタをさらに備え得る。同様に、ユーザデータ生成が現在時刻を要求する場合、ケースはクロックをさらに備え得る。クロックは、ユーザデータを要求したアプリケーションにリンクされた認証サーバのクロックと同期させられ得る。
【0036】
ユーザデータ生成がユーザ固有データを備える場合、認証データは、スマートカード(例えば「チップ&ピン」カードまたはEMVカード)からデータを読むことによって取得され得る。このように、ケースは上記のCAPリーダに類似の機能を実行するように構成され得る。したがって、ケースは、ケースに統合されたスマートカード・リーダ、および/またはケースに統合された非接触スマートカード・リーダをさらに備え得る。あるいは、ユーザ固有データはケースにおいて(例えばセキュアなメモリにおいて)、(恐らく永続的に)保存され得る。
【0037】
ユーザ・インターフェースは、生成されたユーザデータについての文字をユーザに示す1または複数の視覚的インジケータを具備し得る。視覚的インジケータは、1または複数の発光体(例えば上記のようにLED)を備え得る。複数の発光体は、シーケンスにおいて1回につき1つ点灯され得、各点灯された発光体はユーザデータの各連続的文字を示す。発光体は、ケースの1または複数の側面に沿って配置され得る。各発光体は、モバイル装置自体に表示されている文字と並べられ得る。あるいは、ケースは、どの発光体がどの文字に対応するかを示す情報を備え得る(例えば文字は発光体と隣り合う)。
【0038】
生成されたユーザデータは、そのまま、モバイル装置に入力され得る。このように、本発明のさらなる側面に従って、上記のようにユーザデータを生成するためのモバイル装置ケースおよびディスプレイを備えるモバイル装置が提供される。
【0039】
モバイル装置はディスプレイ上に文字の組を表示するように構成され得る。さらに、先の実施形態との関連でより詳細に記述されているように、モバイル装置ケースは複数の発光体を備え得、各表示された文字は、複数の発光体のうちの1つと並べられる。前の実施形態と対照的に、これらの発光体はユーザデータのどの文字が生成されているかを示すために使用される。例えば、ケースに統合されたLEDは、マイクロコントローラによって生成されたパスコードを示すために順々に点灯し得る。
【0040】
モバイル装置は、仮想キーパッドを表示し得、これによってユーザはモバイル装置に、ユーザデータを生成されたまま入力する。仮想キーパッドは発光体の隣の被表示文字と同じものであってもよいし、別個のキーパッドであってもよい。例えば、使用の際、ユーザは、モバイル装置のタッチスクリーンに表示された、発光体と並べられている仮想キーパッド上でボタンをタップし得る。ユーザが各点滅する発光体に対応する適切なキーパッド・ボタンに触れると、ユーザは点滅する発光体をコピーすることによって、ユーザデータ(例えば複数桁の数字コード)を入力する。有利なことに、ユーザは、パスコードを生成かつ入力するために装置を切り替える必要がないし、コードのどの数字も記憶する必要がない。さらに、ケースとモバイル装置の間で通信(無線、またはその他で)は必要ない。また、発光体がモバイル装置のディスプレイ・スクリーン上の仮想キーパッドの隣に配置されている場合、ユーザデータを入力する処理はユーザにとって簡略化されている。
【0041】
上記のセキュアな方法を使用してユーザデータが入力されることも可能であり、ひいては本発明の2つの側面が組み合わせられることが可能であることは認識されるだろう。
【0042】
上記の実施形態の全てにおいて、モバイル装置は、携帯電話、スマートフォンまたはタブレット・コンピュータ、あるいはセキュアなデータ入力をユーザに要求するようにアプリケーションが構成され得る他の電子デバイスであり得る。ケースは、モバイル装置に取り付け可能なあらゆる構成部分であり得る。例えば、ケースは、モバイル装置の背部の全体または部分を覆うカバーであり得る。あるいは、ケースはモバイル装置の唯1つのまたは複数の側面に付き得る。
【0043】
通信モジュールは、ケースがモバイル装置と無線通信することを可能にする無線通信モジュールであり得る。無線通信モジュールは、Bluetooth(登録商標)チップまたはBluetoothローエナジー・チップであり得る。
【0044】
本発明は、上記システムおよび方法を、例えば汎用計算機システムまたはディジタル信号プロセッサ(DSP)上で実現するためのプロセッサ制御コードをさらに提供する。本発明は、また特に非一時的データ搬送体(例えばディスク、マイクロプロセッサ、CDまたはDVD−ROM、または読み取り専用メモリのようなプログラムされたメモリ(ファームウェア))または光学的または電気的信号搬送体のようなデータ搬送体上の、動作の際に上記の方法の任意のものを実現するためのプロセッサ制御コードを搬送する搬送体を提供する。コードは、ディスク、マイクロプロセッサ、CDまたはDVD−ROM、不揮発性メモリ(例えばフラッシュ)または読み取り専用メモリ(ファームウェア)のようなプログラムされたメモリのような搬送体上で提供され得る。発明の実施形態を実現するコード(および/またはデータ)は、Cまたはアセンブラコードのような従来のプログラミング言語(解釈されたものまたはコンパイルされたもの)のソース、オブジェクト、または実行可能コード、ASIC(特定用途向け集積回路)またはFPGA(フィールド・プログラマブル・ゲート・アレイ)を設定または制御するためのコード、またはVerilog
TMまたはVHDL(超高速集積回路ハードウェア記述言語)のようなハードウェア記述言語のためのコードを備え得る。当業者は、そのようなコードおよび/またはデータが相互通信している複数の結合された構成部分間で分散され得ることを認識するであろう。本発明は、システムの構成部分の1つまたは複数に結合されたマイクロプロセッサ、ワーキングメモリ、およびプログラムメモリを含むコントローラを備え得る。
【0045】
物理的または事実上のモバイル装置ケース上のマイクロコントローラ上で動作しているソフトウェアは、再プログラム可能でなく、またモバイル装置またはサードパーティーと同じ団体によって開発されないことが好ましい。これは、ケース用のソフトウェアが、より単純ではあるものの、モバイル装置自体上で動作するどのようなソフトウェアよりも高い機密保護基準へと開発されることを意味する。
【図面の簡単な説明】
【0046】
本発明は、添付図面において、例として、図式的に図示されている。
【
図1】スマートフォン、スマートフォン・ケース、バンクカード、およびCAPリーダの相対的な大きさを図示する。
【
図2】モバイル装置およびモバイル装置ケースを備えるセキュア・ユーザ・インターフェース・システムの概略図を示す。
【
図3a】
図2のシステムのセキュアなトランザクションを実行するための一構成を図示する。
【
図3b】
図3aのシステム上のパスコードの入力におけるフローチャートのステップである。
【
図4a】は、モバイル装置ケースがタッチパッドを備える、他のセキュア・ユーザ・インターフェース・システムを図示する。
【
図4b】は、モバイル装置ケースが独立したタッチパッド・ボタンを備える他のセキュア・ユーザ・インターフェース・システムを図示する。
【
図4c】
図4aのシステム上のパスコードを入力するステップのフローチャートをそれぞれ示す。
【
図4d】
図4bのシステム上のパスコードを入力するステップのフローチャートをそれぞれ示す。
【
図5】本発明のセキュア・ユーザ・インターフェース・システムを使用したパスコード入力における一般的ステップのフローチャートを示す。
【
図6】セキュア・ユーザ・インターフェース・システムを使用して、セキュアにPINを入力することを要求する特定のオンライン・バンキング・トランザクションの実行におけるステップのフローチャートを示す。
【
図7】ユーザのためのPINの形成におけるステップのフローチャートを示す。
【発明を実施するための形態】
【0047】
概して、本発明は、(独立型の、または実際にはスマートフォンに対する強化として作製されているが1つの被強化ユニットへと完全に統合された)モバイル装置用ケースを提供する。ケースはモバイル装置と通信しかつPINまたはパスコードを形成する数字がモバイル装置上で動作するアプリケーションにセキュアに入力されることを可能にするように構成される。アプリケーションは、装置上で動作するどのようなソフトウェア・アプリケーションであってもよい(例えばゲーム、ウェブブラウザ、オフィス・パッケージ等)。本発明は、ユーザのモバイル装置上で動作するウェブブラウザを介してオンライン・バンキング・トランザクションを行うユーザの例を主に使用して以下に記述される。しかしながら、オンライン・バンキングが単なる例示であること、およびシステムは例えばセキュアなインターネット・ショッピングのためにまたは実店舗の販売時点管理(POS)端末として任意のサードパーティーとのセキュアな通信を確立するために使用されることが可能であることが認識されるであろう。
【0048】
上に概説されているように、ユーザが自身のモバイル装置を使用してオンライン・バンキング・トランザクションを行いたい時、ユーザは典型的にはウェブブラウザを使用して自身のアカウントにアクセスする。ユーザは、銀行のオンライン・バンキング・サービスのセキュアな部分にアクセスするためにモバイル装置上のキーボードを使用してPINまたはパスワードを入力し、オンライン・バンキング・トランザクションを完了するために第2のパスコードまたはOTPを入力する。しかしながら、マルウェアがモバイル装置上で動作している場合、それは(仮想または実際の)キーボード入力を検出または傍受し、かつ/または何がモバイル装置のディスプレイ上で入力されたか知ることができ得る。このように、それはユーザの秘密のPINまたはパスコードを検出でき得、これは、ユーザのアカウントが認証無しでアクセスされることまた/または認証されていないトランザクションを行うためにユーザの詳細事項が使用されることに繋がり得る。(以下では、パスコード、パスワード、PIN、およびOTPという用語は可換的に使用される)。
【0049】
本発明は、モバイル装置キーボードを使用せずにパスコードを入力することをユーザに要求することによって、この問題への解決策を提供する。さらに、いくつかの記述されている構成では、パスコード数字はモバイル装置ディスプレイ上に(短時間でさえも)表示されない。これは、ユーザが、モバイル装置キーボードを使用することが回避されるように、ケースに統合されたハードウェアを使用して、自身のパスコードに対応する数字を入力することによって達成され得る。したがって、モバイル装置上で動作するマルウェアは、ユーザによって入力された数字を知らない。
【0050】
モバイル装置用の多くの市販のカバーまたはケースがある。これらは、一般に、(例えばモバイル装置を傷から保護するために)モバイル装置の周囲の一部または全体の保護を提供する。
図1は、例示的モバイル装置22およびこの装置用の従来の形態フィット型(ぴったり形状の)のケース30を示す。形態フィット型ケースは特定のモバイル装置にフィットするように設計されている。ケースは、一般に、モバイル装置のボタン、カメラ・レンズ、ヘッドホン、および充電器ソケット等へのアクセスを可能にするためにスロットまたは開口を備える。典型的には、モバイル装置は、ケースが電話の背部および側面を損傷から保護するように、正面をユーザにとって可視かつアクセス可能にしつつ、形態フィット型ケースに挿入される。ケースは、衝撃吸収材料(例えば固い高分子材料、ゴム、またはビニール)から形成され得る。これらの保護ケースは典型的にはそれ以上、技術的機能を実行しない。
【0051】
次に
図2に移ると、これは、モバイル装置用のセキュア・ユーザ・インターフェース・システム10の概略図を示す。セキュア・ユーザ・インターフェース・システム10は、大きさ、材料および形状において、既知のケースのそれらに概して類似し得るモバイル装置22用のケース12を備える。
図1に示されるもののような既知のケースと対照的に、本発明は、ハードウェア部品を備えかつ例えばインターネット・バンキング・トランザクションを行なう場合にセキュアなパスコード入力を可能にするケース中に維持されたモバイル装置22と通信可能なケース12を提供する。ケース12は、標準的なカバーと同じ保護も提供し得る。ケース12は、好ましくはモバイル装置のディスプレイ・スクリーンをユーザにとって可視かつアクセス可能にしかつモバイル装置の背部に存在するカメラを除いてモバイル装置の背部および側面の一部または全体を覆い得る。
【0052】
モバイル装置22は複数の標準的部品(例えばディスプレイ・スクリーン28、中央処理装置(CPU)26、および通信モジュール24)を備える。ディスプレイ・スクリーン28はタッチスクリーン(例えば容量性タッチスクリーン)であり得る。通信モジュールは、Bluetooth(登録商標)(RTM)チップまたは短距離無線通信のための他の手段を備え得る。
【0053】
ケース12は、ケースに統合された多くの部品(例えば通信モジュール14、マイクロコントローラ16、ユーザ・インターフェース18)を備える。ユーザ・インターフェースは、より詳細に下に記述されているように配置され得る複数の発光ダイオード(LED)の形態の視覚的インジケータを備え得る。ユーザ・インターフェース18は、ユーザがパスコードを入力することを可能にするユーザ向け視覚的インジケーション(表示)を提供するために、ケース12中のマイクロコントローラ16によって制御される。マイクロコントローラは、少なくとも1つの中央処理装置(CPU)(例えば8ビット〜32ビット)、少なくとも1つの専用暗号化エンジン、少なくとも1つの乱数発生器、および/または通信チャネルを安全にしかつデータを保護する他の機構、を備え得るセキュア・マイクロコントローラであることが好ましい。マイクロコントローラは、マイクロプロセッサを備え得る。ケース12内部のマイクロコントローラ16はまた、通信モジュール14を備え得る。通信モジュール14は、BluetoothまたはBluetoothローエナジー(BLE)プロトコルを介して、ケース12がケース内に維持されたモバイル装置22と通信することを可能にするBluetooth(登録商標)(RTM)チップ14を制御する。あるいは、ケース12は、好ましくは低電力短距離通信を提供する他のワイヤレス通信プロトコルを使用して、モバイル装置22と通信し得る。例えば、ケースは、近接している装置間(すなわちケース12とモバイル装置22間)の無線通信チャネルを確立するために近距離無線通信(NFC)アンテナを備え得る。ケース12は、ケースの端に沿って容量性スライダおよび/または容量性ボタンのようなタッチ機構をさらに備え得る(
図4aおよび
図4b、ならびに付随の記述を参照)。
【0054】
ケース12中のハードウェアはバッテリ20によって電力供給される。バッテリ20は充電式電池であり得る。充電式電池は、交流商用電源に接続された電池充電器(それはモバイル装置22を充電するのと同じ充電器または別個の充電器であり得る)に、誘導式または無線の充電によって充電され得る。あるいは、バッテリ20は、低電流消費を有する携帯機器において一般に使用されるもののような非充電式電池であり得る。典型的にはモバイル装置22上でパスコードを入力する場合のみケース12が利用されるので、ケース12中のハードウェア部品は断続的にのみ使用され得る。よって、ケース12中の、典型的なモバイル装置の寿命(例えば2年未満)だけ持続する非充電式電池を使用することで足り得る。
【0055】
発明の特定の実施において、顧客に対して自身のアカウントへのオンラインでのアクセスを提供する組織(例えばオンライン・バンキング設備を有する金融機関)と、セキュア・ユーザ・インターフェース・システムの提供主体の間で関係が築かれる必要がある。例えば、銀行またはオンラインショップは、ユーザがオンライン・トランザクションを行おうとする場合にユーザのモバイル装置上で(仮想的または実際の)キーパッドを使用するのではなくセキュア・ユーザ・インターフェース・システム10を使用して自身のパスコード(および他のさらなる数的セキュリティー情報)を入力するようにウェブサイトがユーザに促すようにウェブサイトを構成する必要があり得る。
【0056】
図2に示されるように、モバイル装置ケース12はまた、メモリ19を備え得る。メモリはマイクロコントローラ16の一部であるか、あるいはケース12中の別個のストレージ/メモリ・モジュールとして提供され得る。メモリ19は、ユーザによってケースに入力されたデータを一時的に保持するため、例えばユーザのパスコードまたはパスコードのハッシュされた形態等のユーザ固有データ(それはユーザによって入力されたデータを確認するために使用され得る)、および/またはデータを確認し、セキュアなトークンを生成するため、あるいは送信などのために被暗号化データを生成するために使用され得る。メモリ19は、発明の様々なステップを実行するためのプロセッサ制御コードを保持し得る。
【0057】
上述のように、ケース12は、ケース12がモバイル装置22と通信することを可能にする通信モジュール14を備え得る。加えてまたは代替的に、ケース12は、ケース12がサードパーティー15と直接通信することを可能にし得るさらなる通信モジュール17を備え得、これにより、モバイル装置22と通信する要求をバイパスする。これはより安全であり得る。データがモバイル装置によって受信されないからである。通信モジュール17は、無線通信プロトコルを使用してケース12とサードパーティー15の間の通信リンクを確立し得る。
【0058】
ケース12は、ケースに統合されたスマートカード・リーダ11、および/またはケースに統合された非接触スマートカード・リーダを備え得る。あるいは、ケース12は被埋込みEMVチップ13を備え得る。被埋込みEMVチップ13はケース中のマイクロコントローラまたは別個の要素の一部であり得る。このように、ケースは、CAPリーダの機能性を実行し得、ユーザは、マイクロコントローラ16がユーザによって入力されたPINと、スマートカード・リーダ11を使用して読まれたデータまたは被埋込みEMVチップ13上に保持されたデータとの両方を使用してOTPを生成するために、モバイル装置に有効なPINまたはパスコードを(下に詳述されているように)安全に入力することを要求され得る。
【0059】
図3aは、モバイル装置22およびケース12を備える、セキュア・ユーザ・インターフェース・システム10のプロトタイプを図示する。この構成では、ケース上の視覚的インジケータは、ケースに統合されかつケースの1つの面に沿って設けられた複数のLEDを備える。他の発光体源が使用されてもよい。セキュア・ユーザ・インターフェース・システム10のユーザが自身のモバイル装置22上で動作するウェブブラウザ・アプリケーションを介してオンライン・バンキング・トランザクション(または他の類似のセキュアなトランザクション)行いたい場合、銀行(または他のサードパーティー)は、ケース12を介したPIN入力を開始するためにケース12のセキュア・マイクロコントローラ16と(モバイル装置22のCPU26を介して)通信する。文字38(例えば数字0〜9)の静的な組は、モバイル装置のディスプレイ・スクリーン28上に表示される。さらなる数字(例えばアルファベットまたは他の文字)が、表示されてもよい。しかしながら、表示された文字の各々がLED18のうちの1つと並べられていることが重要である。このように、図示された例においては、10個のLEDがあり、各々が数字0〜9のうちの1つを表す。しかしながら、このLEDおよび文字の表示の構成は単に例示であり、LEDおよび/または文字の任意の個数が使用され得る。また、(例えば左利きのユーザのために)ケースの反対側またはケースの2つ以上の側面に沿ってLED18が設けられることが可能である。
【0060】
セキュア・ユーザ・インターフェース・システム10を使用したい銀行顧客は、自身のアカウントを構成するための情報を銀行に提供する必要があり得る。例えば、銀行顧客は、自身のアカウントにアクセスするために、どんなタイプ(例えばモバイル装置メーカー(装置モデル番号など))のモバイル装置22を使用するかを銀行に通知する必要があり得る。モバイル装置のスクリーン寸法はメーカーおよび型式の間で多様であり、よって、この情報が、静的な文字38がLED18と並べられるようにディスプレイ・スクリーン26上に正確に表示されるために必要であり得る。ユーザは、唯一のPINまたは数字パスコードを形成することを要求され得、それは、オンライン・バンキング・トランザクションを行う際にセキュア・ユーザ・インターフェース・システム10を使用して入力される。加えてまたは代替的に、PINは銀行によってユーザに提供され得る。PINは、ユーザがPINを入力する際にPINが正確かどうかをセキュア・マイクロコントローラが確認できるように、ケース12中のセキュア・マイクロコントローラに知らされ得る。あるいは、PINは、サードパーティーがPINが正確かどうかを確認する必要があり得るように、セキュア・マイクロコントローラに知らされなくてもよい。これは、
図5を参照してより詳細に下に記述される。
【0061】
上記のように、セキュア・ユーザ・インターフェース・システムが、ユーザがモバイル装置上でキーボードを使用せずにPIN数字を入力することを可能にしており、よって、マルウェアはユーザがどのキーを押したかを割り出すことができない。
図3aは、本発明の一実施形態を示し、この実施形態では、ユーザはモバイル装置22のタッチスクリーン28を使用して数字を選択し、キーボードを使用して数字を入力しない。この実例の構成では、静的な数字38は、スクリーンの端に沿った複数のLED18のうちの1つと各数字が並べられるようにディスプレイ・スクリーン28上に表示される。ケース12内に統合されたセキュア・マイクロコントローラは、ランダムに選択されたLEDを点灯することを促される。
図3では、ディスプレイ・スクリーン上の数字「2」の隣りのLEDが点灯している。モバイル装置上のマルウェアは静的な数字38がスクリーンに表示されたのを見ることはできるが、どのLEDが点灯するかを知ることができない。LED(およびそれらを制御する回路)がケース12の一部であってモバイル装置22の一部ではないからである。
【0062】
図3bは、セキュアにPINを入力するための、ユーザ、モバイル装置、およびモバイル装置ケースの間のインタラクションを示す。ステップS300において、ユーザは、スクリーン上のメッセージ36によって自身のPINを桁ごとに入力するように促される。スクリーン上メッセージは、PINを入力するために必要な文字を、例えばモバイル装置スクリーンの1つの側のリストとして備える。さらに、
図3aに示されるように、スクリーン上メッセージ36は箱の列を含み得る。少なくとも、ユーザのPIN中の桁数と同数の箱がある。
図3a中のユーザは、自身のPINの(数字「3」が列の3番目の箱を指すことによって示されているように)第3桁目を入力している最中である。しかしながら、示されるように、ユーザによって入力された第1および第2桁目はスクリーン上の1番目および2番目の箱に表示されない。(箱は、数字が入力されると、グレイアウトさせられ得、または、アスタリスクを含み得、その結果、ユーザは自身がどの桁を入力済みかの可視表示を提供される)。こうして、PINの文字はモバイル装置上で表示されない。
【0063】
スクリーン上メッセージが現われるのと同時(または少し後)に、LEDのうちの1つがケース中のマイクロコントローラによってランダムに選択および点灯させられる。スクリーン上メッセージは、スクリーン上で、ランダムに選択されたLEDの隣に現われ得るインジケータ46を任意で含み得る。このように、
図3aに示される例において、対応するLEDが点灯すると、インジケータ46は数字「2」の隣において開始する。しかしながら、高められたセキュリティーのためには、そのようなインジケータは使用されず、その結果、どのLEDが最初に点灯させられるかを示すものはスクリーン上にない。
【0064】
次のステップ(S304)は、ユーザが自身の指でスクリーン28に触れて、特定の数字を選択するためにインジケータ46をスクリーン上でのインジケータの開始位置から上または下に移動することである。(インジケータが設けられない場合、ユーザは単にランダムに選択されかつ点灯させられたLEDの隣に自身の指を置き、数字を選択するために上または下へ動かす)。スクリーン28にわたるタッチおよび後続の動きは、モバイル装置によって検出され、ケースに伝達される(S306)。ユーザの指の位置がスクリーン上で変わると、点灯させられるLEDが変わる(S308)。ユーザは、所望の数字に対応するLEDが点灯させられているときに、スクリーンから自身の指を放し得る(S310)。この動きは、モバイル装置によって検出され、ケースに伝達される(S312)。LEDは、ユーザがスクリーンから偶然に自身の指を上げる場合に備えて、選択が完成する前に「確認期間」の間短く点滅し得る。ユーザは、確認期間の間にスクリーンに触れると、数の選択を変更でき得る。(ユーザが図らずも間違った数字を選択し、この期間中にそれを変更しなければ、全工程を取り消して再度始める必要があり得る)。
【0065】
モバイル装置はスクリーンにわたる移動を検出するが、どのLEDが点灯させられるか(したがって、どの数字が選択されるか)に関する情報は、モバイル装置22にではなくケース12中のセキュア・マイクロコントローラにのみ知られる。したがって、ユーザによって選択された文字は、ケース12中のセキュア・マイクロコントローラによってのみ知られており、ケース12上のメモリに保持され得る(S316)。モバイル装置22中のマルウェアは、単にスクリーン28上でのユーザのスクロール動作(それはスクリーン上の未知の開始点から始まる)を観察することから、どのPIN数字が入力されたか推定することは困難であると分かるだろう。
【0066】
文字が入力された後、システム(例えば図示されるようなケースのコントローラ)はさらなる文字がPINのために必要かどうかを判断する(S318)。モバイル装置がPINが完全に入力されたかどうかを判断することができ、または、ユーザがPINが完成したことを入力でき得ることが認識されるだろう。
【0067】
ある文字が入力された後さらなる文字がさらなるセキュリティーのために要求される場合、ケース12中のマイクロコントローラは、LEDを、次の文字が入力されるべき開始位置としてランダムに選択して点灯させる。換言すると、処理はステップS302に戻り、次の文字を入力する処理が開始する。このように、スクリーン上でのユーザの開始位置は、新たな桁が選択される度に異なり得る。あるいは、以前の文字として選択されたLEDは点灯され続け得、ユーザはこの位置からスクロールし得る。換言すると、処理は、(代案として点線で示されるように)ステップS304に戻り得る。いずれのアプローチでも、ユーザは選択を行うために所望の数字の隣のスクリーン28をタップすることができないことに注意することが重要である。これが数を選択するためにキーボードを使用することに類似するからである。ユーザは、所望の数字に達するまで、開始位置から(上方および/または下方に)スクロールしなければならない。スクロールは、循環的であり得る。セキュリティーは、ユーザが単一方向のみ(すなわち上方または下方)にスクロールすることを許可することによってさらに向上され得る。これは、PINが(スクリーン上でのユーザの指の)移動の方向から知られるリスクを減じる。
【0068】
一旦この処理を使用してPINの全体が入力されると、ケース12中のセキュア・マイクロコントローラは受信された数字に対する関数を実行することができる。セキュア・マイクロコントローラがユーザの本当のPINを(セット・アップ処理から、または他の方法により)知っている場合、関数はユーザが入力した数字をユーザが銀行トランザクションを継続することを許可されるべきかを決定するためにマイクロコントローラ中の本当の(保持された)PINと比較することを備え得る。ユーザが不正確なPINを入力すると、ユーザは正確なPINを入力するための固定回数の機会を許され得、その後、PINが正確に入力されていない場合、ユーザは自身のオンライン・バンキング・アカウントからロックアウトされ、トランザクションの完了を妨げられ得る。セキュア・マイクロコントローラによって実行される関数の例は、
図5を参照してより詳細に下に記述されている。
【0069】
図3aでは、ユーザは、数字38の静的な組から数字を選択するためにモバイル装置22のタッチスクリーン28を使用する。
図4aおよび
図4bは、数字選択のための他の構成を図示する。
図4aでは、モバイル装置ケース12はタッチパッド40を備える。数字選択のためにタッチスクリーン28を使用する代わりに、ユーザは、ケース12の側面に統合されたセンサまたはタッチパッド40を使用して、数字を選択し得る。センサ40は、容量性センサ(すなわち多くのラップトップ・タッチパッド中で使用されるものに類似の技術)であり得る。
【0070】
図4cは、
図4aの構成でユーザ、モバイル装置、およびモバイル装置ケースの間でセキュアにPINを入力するためのインタラクションを示す。先の実施形態でのように、モバイル装置はLEDと並べられた、PIN入力のための文字を備える「input PIN」メッセージを表示し得る(S400)。ケースは1つのLEDを点灯させ(S402)、また、ユーザは、所望の文字と一致させるために点灯させられたLEDを変更する(S404)。しかしながら、先の構成と対照的に、ユーザの指の動きはケース上のセンサ40によって検出され、よって、点灯する最初のLEDがランダムである必要はない。モバイル装置がタッチパッド上の移動を検出できる方法はない。ユーザは、循環する点灯処理が所望のLEDを点灯させるときにセンサ40から自身の指を離すことによって、および/または所望のLEDが点灯するときにセンサ40をタップすることによって、数字を選択し得る(S408)。先の実施形態でのように、任意で、ユーザが自身の考えを変えることを可能にする「点滅」ステップがあり得る(S410)。次に、ケース中のマイクロコントローラは、LEDに対応する文字を割り出しかつ保持し(S412)、何らかのさらなる文字が要求されるかどうかを判断する(S414)。やはり、PINが完成しているかに関するこの決定は様々な方法でなされることが可能である。さらなる文字が要求される場合、処理は、たった今入力されたのと同じまたは異なるLEDを点灯することに戻る(S416)。
【0071】
図4bでは、モバイル装置ケース12は複数の別個のタッチパッド・ボタン42を備える。そのような10個のタッチパッド・ボタン42は、ケースの一側面に沿って設けられ得、0〜9(またはPINのために必要な他の文字)を与えられ得る。ボタンにラベルが付されている場合、ユーザは単にボタンの正確な順序をキーにより入力することによって自身のPINを入力できる、ケースとモバイル装置との間でPINを形成するためのインタラクションはない。このように、独立のボタン42はキーパッドに類似する。しかし、ここで、ボタンは、モバイル装置22上に設けられるのではなくケース12に統合される。これはPIN入力の間のセキュリティーを維持する。有利なことに、ケースの側面に沿ってボタンを設けることは、セキュア・ユーザ・インターフェース・システム10のユーザが自身のモバイル装置上でアプリケーション間を切り替えたり、ボタンにアクセスするために装置をフリップしたりする必要がなく、これによってユーザ経験を向上させることを意味する。
【0072】
ボタンにラベルが付される場合、LEDは省略され得る。あるいは、ボタンにラベルが付される場合であっても、先に記述されたのと同様の方法で、ケースは依然モバイル装置とインタラクトし得る。この構成では、ボタンは、1つのボタンが1つのLEDに対応するように、LED18と並べられ得る。
図4dは、装置とそのケースとの間でどのようにインタラクションがあり得るかを示す。先の実施形態でのように、モバイル装置はLEDと並べられたPIN入力用文字を備える「input PIN」メッセージを表示し得る(S450)。表示された文字を選択するために、ユーザは、単に所望の文字(S452)の隣のボタンを押し得る。これは、ボタンの隣のLEDを点灯させる(S454)。一旦LEDが点灯させられると、ユーザはボタンを離し(S456)、任意で、処理は確認期間の間LEDを点滅させ得る(S458)。次に、ケース中のマイクロコントローラは、LEDに対応する文字を割り出しかつ保持し(S460)、さらなる文字が要求されるかどうかを判断する(S414)。やはり、PINが完成しているかに関するこの決定は、様々な方法で行われることが可能である。さらなる文字が要求される場合、処理はユーザが次のボタンを押すのを待つことへと戻る(S452)。
【0073】
セキュア・ユーザ・インターフェース・システムを使用してPINを入力する他の多くの方法がある。例えば、モバイル装置ケース12は、タッチパッド40またはボタン42の代わりに回転可能なホイールを設けられ得る。ホイールは、どのLEDが点灯させられるかを変更するためにユーザによって回転させられ得る。ユーザは、所望の数字に対応するLEDが点灯させられるときにホイールを回転させることを止め、また/または選択を行うためにホイールを押すかタップし得る。
【0074】
図5は、上記のセキュア・ユーザ・インターフェース・システムを使用してパスコードを入力することにおける一般的なステップのフローチャートを示す。セキュア・ユーザ・インターフェース・システムのユーザは、モバイル装置上で動作するアプリケーションを開始する。アプリケーションは、ゲーム、ワープロソフト、ウェブブラウザなどであり得る。ユーザは、例えば、ウェブブラウザを介してセキュアなウェブサイト(例えばオンライン銀行口座)にアクセスすることを望み得、あるいはゲーム上の付加的な機能性にアクセスすることを望み得る。アクセスを許可にするために、アプリケーションは、パスコードまたはPINを入力することをユーザに要求する(ステップS500)。ユーザは、セキュア・ユーザ・インターフェース・システムを介した上記のようなパスコード入力に進む(ステップS502)。パスコードの入力は、ユーザにモバイル装置のタッチスクリーンをスクロール/スワイプすることを要求し得、または先に説明されたようにユーザにケース上でセンサ/ボタンを使用することを要求し得る。パスコードがタッチスクリーンに触れることによって入力される場合、スクリーン上でのユーザの指の初期位置、およびそれがスクリーンに沿って移動する距離は、モバイル装置に知られる。このデータはBluetooth(登録商標)(RTM)を介してケース中のセキュア・マイクロコントローラに送信され、セキュア・マイクロコントローラは、データを処理してスクリーン上でユーザがどの数字を選択したか、ひいてはケース上でどのLEDを点灯させるかを割り出す。このように、モバイル装置およびケースの両方が数字を入力するために使用されるが、この処理はケース上で生じ、モバイル装置は、ユーザがディスプレイ上の静的な組からどの数字を選択したかを知らない。パスコードがケースの側面上のセンサ/ボタンを使用して入力される場合、モバイル装置は、ユーザがどの数字を選択したかを知らず、また、セキュア・マイクロコントローラによって実行された処理を知らない。
【0075】
一旦PINの全ての数字がケースによって(モバイル装置がそれらを受信することなく)受信されると(ステップS504)、ケース中のセキュア・マイクロコントローラは被受信数字(ステップS506)に対して関数を実行する。セキュア・マイクロコントローラは、例えば以下を実行し得る。
・被受信数字をケースに保持された本当のPINと比較する。比較が、ユーザが正確なPINを入力したことを確認すると、セキュア・マイクロコントローラはステップS508へ進む。PINが不正確の場合、上記のように、ユーザは、ある回数、PINを入力してみることを許される。
・被受信数字を暗号化ハッシュ関数を使用してハッシュし、結果得るハッシュ値をマイクロコントローラに保持されたハッシュ値と比較する。これは上記のものよりセキュアな選択肢であり得る。これがマイクロコントローラが本当のPINを保持することを必要とせず、PINのハッシュだけを要求するからである。ハッシュ値が一致する場合、セキュア・マイクロコントローラはステップS508に進む。
・入力された数字を暗号鍵を使用して暗号化する。この例では、セキュア・マイクロコントローラは確認自体を実行せず、被暗号化データを生成する(ステップS508)。生成されたデータは確認のためにサードパーティーへ転送される。これは、先の2つの例よりセキュアであり得る。データ(本当のPINまたはハッシュされた本当のPIN)がケースに保存されないからである。
【0076】
データに対して実行された関数の出力は各場合において異なる(ステップS508)。例えば、セキュア・マイクロコントローラ自身がPINが正確であることを確認する場合、出力は、セキュリティー・トークン、ワン・タイム・パスワード(OTP)、トランザクション認証番号など(TAN)などであり得る。入力された数字が暗号化される場合、出力は被暗号化データである。各場合において、出力はBluetooth(登録商標)(RTM)のような特定の無線通信プロトコルを使用して、モバイル装置に送信される(ステップS510)。モバイル装置によって受信されたデータは装置上で動作するマルウェアによって傍受または読まれることが可能であるが、マルウェアがデータ生成のために使用されたユーザのPINを割り出すのは難しいだろう。次に、モバイル装置は、パスコードを要求したアプリケーションに被受信データを入力する(ステップS512)。このデータが被暗号化PINである場合、アプリケーションは、PINが正確であることを確認するためにデータを復号する。(そうでない場合、ユーザは、処理をやり直すように促され得る。)。
【0077】
上記されかつ
図5に示される処理は一般的なものである。発明についてさらに説明するために、
図6は、特定のオンライン・バンキング・トランザクションの実行における例示的ステップのフローチャートを示す。ここで、セキュア・マイクロコントローラは、実行された関数がユーザによって入力されたPIN数字を本当のPIN数字と比較することを備えられるように、本当のPINを知っている。
【0078】
ステップS600では、セキュア・ユーザ・インターフェース・システムのユーザは自身のモバイル装置を介して自身のオンライン・バンキング・アカウントにログインする。典型的には、ユーザはウェブブラウザを介して自身のアカウントにアクセスする。ユーザは、アカウント間で金銭を振替えたりまたは請求書支払をするようなオンライン・バンキング・トランザクションを開始する(S602)。オンライン・アカウントにアクセスする人が銀行口座に関連する顧客であると確実にし、かつトランザクションを認証するために、銀行のウェブサイトは、トランザクションを継続するためにワンタイム・パスコード(OTP)を入力するようにユーザに促す(S604)。OTPは上記の方法のうちの任意のものを使用して入力され得る。例えば、ウェブサイトはモバイル装置にモバイル装置スクリーン上に1組の静的な数字を表示させ得る。数字は、モバイル装置ケースのLEDの隣に並べられ得る。ユーザが数字の選択を行う際、ケース中のマイクロコントローラは特定の点灯するLEDに関連する数字を保持する。このように、各LEDの位置をスクリーンに表示された文字にリンクする知識も、ウェブサイトからケースに伝達される。
【0079】
一旦ユーザが全てのPIN数字を入力すると、セキュア・マイクロコントローラは、ユーザが入力したPINが正確かを確認するために、保持されたユーザ入力数字をマイクロコントローラに知られている本当のPIN値と比較する(ステップS608)。(本当のPINはマイクロコントローラ中に保持され得、あるいはケース中の他のハードウェア部品からマイクロコントローラにとってアクセス可能であり得る。)ユーザ入力PINが不正確であると判断される場合、ユーザは同じ数字選択処理を使用して、自身のPINを再び入れるように促され得る。ユーザは、固定回数(例えば3回)のPINを入力する試みを与えられ得、その後は、ユーザはオンライン・トランザクションの継続を阻まれ得る。
【0080】
PINが正確であると確認されると、セキュア・マイクロコントローラはワンタイム・パスコード(OTP)を発行し得る(ステップS610)。ワンタイム・パスコードは、次いで、(Bluetooth(登録商標)(RTM)のような無線通信手段を介して)モバイル装置に送信され(ステップS612)、ウェブサイトへモバイル装置によってさらに送信される(ステップS614)。たとえOTPがモバイル装置に知られても、モバイル装置上のマルウェアはPINおよび他のOTP生成に使用されたどのようなデータへのアクセスも有しない。これがモバイル装置ケース上でのみ提供されるからである。さらに、OTPは有限の期限を有し、1回のトランザクションのみのために有効である。このため、マルウェアがOTPを傍受したとしても、それは1回の使用の後に失効するので、詐欺目的で使用されることが可能でない。加えてまたは代替的に、ステップS610においてOTPを発行するのではなく、セキュア・マイクロコントローラは内部リソースへのアクセスのロックを解除するか、または遠隔のリソースへのアクセスのロックを解除するために認証トークンを発行するか、セキュアな送信およびサードパーティー(例えば銀行)による確認のために暗号鍵を使用してユーザ入力PINを暗号化し得る。
【0081】
銀行は、自身が受信するOTPを確認する(ステップS616)。例えば、それは、OTPが、OTPが生成されてかつ適当な時間後に受信されたかどうかをチェックし得る。ユーザがトランザクションを開始しかつOTPの生成の要求したのと、OTPが受信される時と、の間にあまりに長い時間(例えば数分超)が経過する場合、OTPは失効し得、銀行は新たなOTPを入力するようにユーザに促し得る。OTPが確認されると、銀行はオンライン・トランザクションを完了する(ステップS618)。
【0082】
セキュア・ユーザ・インターフェース・システムが、オンライン・バンキング・トランザクションを完了するためのOTPの生成を参照してここまで記述された。しかし、この具体的な使用は、単に例示の目的で使用され、限定するものではない。セキュア・ユーザ・インターフェース・システムは次のものを含む様々な目的で使用され得る(ただし、これらに限定されない)。
・認証コードを生成するMasterCard CAP/Visa DPA(動的パスコード認証)計算機。ケース内に統合されたセキュア・マイクロコントローラは、ユーザの「チップ&ピン」またはEMVバンクカード中のものと同じデータを保持し得る。あるいは、ケースは、ケースが認証コードを生成するためにバンクカード上のチップからデータを読むことを可能にするために、被統合EMVバンクカード・リーダを設けられ得る。被統合バンクカード・リーダは、(上記の従来のCAPリーダのように)物理的コンタクトを必要としてもよいし、非接触型であってもよい。
・上記のように、OATH準拠のOTPまたはTAN(トランザクション認証番号)生成器。
・上記のように、モバイル装置上のローカル・アプリケーションのロックを解除するためのセキュアな入力装置。
・上記のように、被暗号化/被ハッシュ信用証書をウェブサイト/バンキング・システムへアップロードするためのセキュアな入力装置。
・支払い/振替を承認するための装置。
・Bitcoin(RTM)のような仮想通貨による、セキュアに通貨を保持しかつトランザクションするための装置。
【0083】
完全性が保護された入力
セキュア・ユーザ・インターフェース・システムは、入力されたデータを認証するために使用され得る。ユーザは、この実施形態では、開始数字が毎回ランダム化されないかもしれず、選択された数字がディスプレイ・スクリーン上で隠されないこと以外は、先に記述されたのと同様の方法で自身のPINの各数字を選択し得る。この実施形態では、セキュア・マイクロコントローラはユーザが入力したPINを使用してメッセージ認証コード(MAC)を構築するか、またはPINをディジタル署名する。セキュア・ユーザ・インターフェース・システムのユーザは、このPIN入力方法を、上記されたものより簡単であると考え得る。しかしながら、この非秘密入力機構は、それが乱用されるという、対応するリスクを引き起こす。この実施形態においてマルウェア攻撃を最小化するために、ユーザはセキュア・ユーザ・インターフェース・システムが「秘密入力モード」にある場合(かつシステムが「非秘密入力モード」にない場合)にのみ、自身のPINを入力することを奨励される。システムの2つの相違するモードは、2色のLEDを使用することによってユーザに視覚的に示され得る。例えば、システムが「秘密入力モード」にある場合、LEDは緑に切り替えられ得、他方、システムが非セキュアなモードにある場合、LEDは赤に切り替えら得る。ユーザは、発光体が緑でない限り、自身のPINを入力しないように教えられ得る。
【0084】
人的確認裏ルート
発明の他の構成では、モバイル装置ケースはモバイル装置と通信できないかもしれない。しかしながら、それでもケースは、
図7に図示されるように、(ケースまたはセキュア・マイクロコントローラ中のクロックまたはカウンタを使用して)時間/計数値に基づいて、またはセキュアに入力されたトランザクション・データに基づいて、TAN/OTPを生成する等の有用な機能を実行し得る。第1ステップで、ケース中のマイクロコントローラはTANまたはOTPを生成する(S700)。TANまたはOTPの生成は、ユーザ要求またはユーザによる他の動作(例えば、ケースがそのように適合されている場合にケース中へのカードの挿入)への応答であり得る。先の実施形態でのように、モバイル装置は、各々が1つのLEDと並べられた1組の文字を表示する(S702)。当該最初のステップ群は、同時に起こることが可能であること、または別の順序にあることが可能であることが認識されるだろう。ケースに統合されたLEDは、生成されたTANを示すために、順に点滅し得る(S704)。同時に、モバイル装置は、ユーザがTANを入力することを可能にするためにキーボードまたは類似のインターフェースを表示する(S706)。任意で、キーパッド・ボタンはLEDと並び得る。その結果、コードの入力はユーザにとって簡略化される。次いで、ユーザは、モバイル装置のタッチスクリーンに表示された仮想キーパッド上でボタンをタップし得る(S708)。LEDがボタンと並べられている場合、ユーザが各点滅するLEDに従って適切なキーパッド・ボタンに触れるに連れ、ユーザは、コードを、LEDの点滅をコピーすることによって、コードのどの数字も記憶する必要なしに複数数字の数字コードを入力する。この裏ルートは、モバイル装置との電子通信の必要性なくセキュア・ユーザ・インターフェース・システムが使用されることを可能にする。また、最終ステップで示されるように、モバイル装置はモバイル装置から隠されている機密データではなくTANを直接受信する(S710)。
【0085】
代わりとして、ユーザは、生成された通りのTANを書き留めるか記憶し得る。一旦完全なTANが生成されると、ユーザは上記のよりセキュアな方法のうちの1つでTANを入力し得る。
【0086】
他の多くの有効な代替案が当業者にとって思いつくであろう。発明が、記述されている実施形態に限定されず、かつ本明細書に添付の請求項の思想および範囲内の当業者に明らかな変更を包含することが理解されるだろう。
【国際調査報告】