JP2018157585A - パスコード入力セキュリティのための生のセンサインプットの暗号化 - Google Patents

パスコード入力セキュリティのための生のセンサインプットの暗号化 Download PDF

Info

Publication number
JP2018157585A
JP2018157585A JP2018101693A JP2018101693A JP2018157585A JP 2018157585 A JP2018157585 A JP 2018157585A JP 2018101693 A JP2018101693 A JP 2018101693A JP 2018101693 A JP2018101693 A JP 2018101693A JP 2018157585 A JP2018157585 A JP 2018157585A
Authority
JP
Japan
Prior art keywords
input
passcode
sensor
interface
electronic device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018101693A
Other languages
English (en)
Inventor
ピー. マッコーリー,ネイサン
P Mccauley Nathan
ピー. マッコーリー,ネイサン
エス.シー. キグリー,オリバー
S C Quigley Oliver
エス.シー. キグリー,オリバー
シー. アダムス,デイビッド
C Adams David
シー. アダムス,デイビッド
ジェイ. エドワーズ,トロイ
J Edwards Troy
ジェイ. エドワーズ,トロイ
シー. スクーグ,ルーカス
C Skoog Lukas
シー. スクーグ,ルーカス
ディー. ポール,ジョナサン
D Paull Jonathan
ディー. ポール,ジョナサン
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.)
Block Inc
Original Assignee
Square 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
Priority claimed from US14/055,838 external-priority patent/US20140324708A1/en
Application filed by Square Inc filed Critical Square Inc
Publication of JP2018157585A publication Critical patent/JP2018157585A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4012Verifying personal identification numbers [PIN]
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1025Identification of user by a PIN code
    • G07F7/1033Details of the PIN pad
    • G07F7/1041PIN input keyboard gets new key allocation at each use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/031Protect user input by software means

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • User Interface Of Digital Computer (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】パスコード入力セキュリティのためのセンサインプット入力の暗号化方法を提供する。【解決手段】方法は、ユーザがパスコード入力をインプットするためのパスコード入力インタフェースを電子デバイス上に提示することを含む。次に、該電子デバイスは、該ユーザによる該パスコード入力の少なくとも一部を示すインプットイベントを、該電子デバイスのセンサより受信する。続いて、該電子デバイスは、該インプットイベントのセンサ値を暗号化して、該暗号化されたセンサ値を外部システムへとネットワーク越しに伝送し、それによって該暗号化されたセンサ値からの該パスコード入力を解読する。【選択図】図1

Description

関連出願の相互参照
本出願は、2013年6月28日出願の米国仮出願第61/859,253号の利益を
主張する2013年10月16日出願の米国特許出願第14/055,838号について
の利益を主張し、上記出願の全ての内容が、それら全てを参照することにより本明細書に
組み込まれる。
情報にアクセスする際及び情報を伝送する際のセキュリティは、物質的な財産を保護す
るためのセキュリティと同程度に重要である。ナンバーロックのような従来のセキュリテ
ィデバイスは、仮想「鍵」を所有していることに基づいてアクセスを制御するデバイスを
含んでいることがあり、このような仮想「鍵」は、例えば、非公開情報(例えば、パスコ
ード)の形態となっている。パスコードは、英字(letters)、数字(numbers)、特殊文
字(special characters)又はそれらの任意の組み合わせ等の一連の文字(characters)
の組み合わせである。デジタルの分野では、パスコードベースのロックは、現金自動預け
払い機(ATM)のキーパッドや、デビットカードの個人識別番号(PIN)キーパッド
のような、デジタルパスコードベースのセキュリティデバイスによってエミュレートされ
ている。これらのデジタルパスコードベースのセキュリティデバイスは、一般的に、専用
の(すなわち、種々の機能コンポーネントを実行するための汎用オペレーティングシステ
ム/カーネルを備えていない)ハードウェアデバイスであって、ユーザがパスコードを知
っていることに基づいてシステムへのアクセスを制御するデバイスである。従来のデジタ
ルパスコードベースのセキュリティデバイスが専用のデバイス上に実装されている理由は
様々だが、なかでも、あらゆる汎用デバイスはマルウェア(すなわち、認証を行うことな
くセキュリティを乗り越えるためのソフトウェア設計)のインストールを可能にし得る、
という理由が挙げられる。
例えば、従来のEuropay、MasterCard及びVisa(EMV)のカードのようなデビットカード
又はスマートカード等による販売時点電子決済カード取引では、カード所有者の本人性及
び/または真正性は、紙の領収書への署名ではなく、または該署名に加えて、PINの入
力を要求することによって確認される。ユーザは、専用のカードリーダにPINを入力し
得る。カードリーダは、その後、スマートカードからPINを取得し得る。ユーザに入力
されたPINは、スマートカードから取得されたPINと比較され得る。カードの使用の
認可は、該入力されたPINが該取得されたPINに一致していることに基づいて与えら
れ得る。
上記の例では、ユーザを認可するのに、汎用デバイスの代わりに専用のデバイスを使用
している。汎用デバイスは、任意のサードパーティ製アプリケーションを実行可能にする
オペレーティングシステムを有している。汎用デバイスでは、セキュリティ上において注
意を要するアプリケーションの実装が容易になる。汎用デバイスが使用可能であれば、安
全な認証システムを使用又は実装することを望んでいる商業者及び消費者が、既に所有し
ているデバイスを当該目的のために使用し得るようになる。しかしながら、カードリーダ
を汎用デバイスの一部にすることは、同じ汎用デバイス上へのマルウェアのインストール
から十分に守れなくなるため、実現不可能なことがある。このとき懸念され得るマルウェ
アの特定の形態の一つは、汎用デバイス上で支払い認証アプリケーションの静的解析を実
行するマルウェアである。例えば、そのようなマルウェアは、該支払い認証アプリケーシ
ョンによって使用されるメモリを読み取る能力を有していることがある。汎用デバイスが
消費者のPINを処理及び格納する際において、該汎用デバイスがこのタイプのマルウェ
アにPINを発見させてしまうことがある。
図1は、センサ入力の暗号化技法を表すデータフロー図である。 図2は、パスコード入力のための電子デバイスを表すブロック図である。 図3は、パスコード入力を暗号化するための認証システムを表すブロック図である。 図4は、センサ入力が処理され得るデータ経路を表す電子デバイスのシステムアーキテクチャ図である。 図5は、パスコード入力インタフェースへのユーザインプットを示すセンサ値を暗号化する電子デバイスを動作させる方法のフローチャートを表す。 図6は、ユーザによるパスコードを解読するためのコンピューティングシステムを動作させる方法のフローチャートを表す。 図7は、電子デバイス及び認証システムを含む、構成されたパスコード入力システムのブロック図である。 図8は、コンピュータシステムの図式的表示である。
上記図面は、本発明の種々の実施形態について、例示の目的においてのみ示している。
当業者は、本明細書に表される構造及び方法に係る代替の実施形態が、本明細書に記載さ
れる本発明の原理から逸脱することなく採用され得ることを、以降の説明により容易に理
解するであろう。
電子デバイス上へのパスコード入力をセキュアに行う技術が、本明細書に開示される。
該技術は、電子デバイスのインプットデバイスからの生のインプットイベントを暗号化す
ることを含む。パスコード入力が完了することにより、複数の生のインプットイベントが
生成され得る。該複数の生のインプットイベントは、例えば、タッチスクリーン上におけ
る複数のタッチイベントである。そのような場合では、各々の生のインプットがタッチス
クリーン上におけるタッチイベントの位置を表し得ると共に、タッチ位置を表す各イベン
トは、暗号化される。したがって、個々のインプットイベントの暗号化は、パスコードの
(例えば、マルウェアによる)認可されない発見を防止するための尺度として役立つ。
上記開示の技術は、上記電子デバイスのアプリケーションメモリが完全に解読された上
記パスコードを含まないため、有利であり得る。それによって、該技術は、マルウェアが
該電子デバイス上のアプリケーションメモリ空間の静的解析によって該パスコードを発見
することを防止するのである。さらに、該パスコードを示す上記インプットイベントは、
カーネルレベルで暗号化されることが可能であり、それによって、上記オペレーティング
システムのユーザアプリケーションレベルで実行されるマルウェアが暗号化の前に生のイ
ンプットイベントのログを取得することを防止すると共に、既知のパスコードインタフェ
ースの構成に基づいて該パスコードをリバースエンジニアリングするための任意の解析を
防止する。
種々の実施形態では、上記暗号化は公開鍵暗号方式に基づいている。該公開暗号方式は
、2つの別々の鍵を必要とする。一方の鍵は、復号化に使用されるトラステッドコンピュ
ーティングシステムによって保持されるように非公開/秘密とされる。もう一方の鍵は、
暗号化に使用される電子デバイスに知られるように公開される。他の暗号化方法は、該開
示の技術の代わりに、または該開示の技術と組み合わせて使用されてもよい。そのような
暗号化方法は、最適非対称暗号化パディング(RSAES−OAEP)の標準暗号方式ま
たはホワイトボックス暗号方式を備えたRSA暗号方式などの、種々の対称及び/又は非
対称暗号化アルゴリズムを含む。
上記生のインプットイベントは、上記電子デバイスのタッチスクリーンにより記録され
るタッチイベントであり得る。PIN又はキーパッドのようなパスコードインタフェース
は、該タッチスクリーン上に表示され得る。上記ユーザは、該タッチスクリーン上での認
証のために、上記パスコード入力を入力し得る。該電子デバイスは、該タッチスクリーン
との相互作用によって生じる該タッチイベントを暗号化し得る。該電子デバイスは、その
後、タッチスクリーンの座標によって表される暗号化された該タッチイベントをトラステ
ッドコンピューティングシステムに伝送し、それによって、該トラステッドコンピューテ
ィングシステムに、該ユーザによって入力された該パスコードを、該暗号化されたタッチ
イベントに基づいて解読するようにさせる。この文脈では、「させる(to cause)」が、
該暗号化されたタッチイベントに基づいてパスコードを解読するような規定の動作を結果
的にもたらす命令、要求、又は任意の他のタイプのメッセージ若しくは信号を送信するこ
とを含むことを企図されている。
種々の実施形態では、上記トラステッドコンピューティングシステムのみが、上記暗号
化された生のインプットイベントから上記パスコード入力への変換を行う。上記電子デバ
イス上で該パスコード入力を解読する代わりに、該インプットイベントは、解釈のために
該トラステッドコンピューティングシステムに送信される。該トラステッドコンピューテ
ィングシステムは、該電子デバイスの外部にあってもよい。該トラステッドコンピューテ
ィングシステムは、その後、上記ユーザが入力したパスコードを解読するために、各イン
プットイベントを復号化し得る。
パスコードの解読は、上記復号化されたタッチイベントをパスコードインタフェースの
構成と比較することを含んでいてもよい。例えば、該パスコードインタフェースの構成は
、キーパッドレイアウトであってもよく、キーパッドレイアウトを含んでいてもよい。該
キーパッドレイアウトは、データ構造またはオブジェクトとして表現され得る。より具体
的な例としては、該キーパッドレイアウトは、トラステッドコンピューティングシステム
により生成され得ると共に、解読のために上記電子デバイスに送られ得る。別の具体的な
例としては、該キーパッドレイアウトは、該電子デバイスによって生成され得ると共に、
解読のために該トラステッドコンピューティングシステムに送られ得る。いずれにしても
、該トラステッドコンピューティングシステムは、上記パスコード入力を編成するように
用いられる一連の文字にセンサインプットイベントをマッピングするために、キーパッド
レイアウト等のパスコードインタフェースの構成を使用していてもよい。
上記キーパッドレイアウトは、ジオメトリ、位置、相対位置、アニメーションシーケン
ス、又は他のバリエーションのキーパッドの提示を含んでいてもよい。該キーパッドは、
電子デバイスのタッチスクリーン領域を占有する複数のボタンを含んでいてもよい。各タ
ッチイベントは(X,Y)位置座標により表されてもよく、各座標又は各座標集合は、開
示の技術の種々の実施形態に従って暗号化される。その後、上記パスコードは、各(X,
Y)座標を、パスコード入力を編成するのに用いられる文字を表す特定のソフトボタンに
対応する二次元空間にマッピングすることによって解読されてもよい。
別の具体的な例としては、上記生のインプットイベントは、上記電子デバイスのカメラ
又は加速度計により記録されるタッチイベントであり得る。マルウェアアプリケーション
は、上記パスコードインタフェースを通じてパスコード入力を導出するために、他のセン
サインプットを使用する可能性がある。そのため、該電子デバイスは、上記パスコードの
リバースエンジニアリングを防止するにあたって追加のセキュリティ層を提供するために
、該電子デバイスの種々の他のセンサにおける該生のインプットイベントを暗号化しても
よい。
上述の例では、上記パスコードインタフェース及びインプットデバイスの両方における
提示デバイスが、タッチスクリーンとして例示されている。しかしながら、オーディオベ
ースのパスコードインタフェースも同様に企図される。例えば、上記センサインプットイ
ベントは、マイクロホンによって記録される発声された音節(syllables)、単語(words
)、連語(phrases)(「サウンドバイト」)であってもよい。該パスコードインタフェ
ースの構成は、順次組み合わせられてパスコード入力にされ得る有効な発声されたサウン
ドバイトを含んでいてもよい。
図1は、センサ入力の暗号化技法100を表すデータフロー図である。図示のように、
技法100は、電子デバイス102と、認証システム104とを含む。電子デバイス10
2は、データ処理機能を備えた汎用デバイスであってもよい。例えば、電子デバイス10
2は、携帯電話、タブレット、電子書籍リーダ(e-reader)、他のモバイル若しくはポー
タブルコンピューティングデバイス又は他の据置コンピューティングデバイスであっても
よい。認証システム104は、電子デバイス102とのデータ通信、例えばネットワーク
越しのデータ通信におけるトラステッドコンピューティングシステムであってもよい。認
証システム104は、1つ以上のコンピューティングデバイスであってもよい。例えば、
認証システム104は、サーバコンピュータ、コンピューティングシステムのネットワー
ク、クラウドコンピューティング環境、仮想化されたコンピューティング環境又はそれら
の任意の組み合わせであってもよい。認証システム104と電子デバイス102との間の
通信は、モバイル通信(例えば、セルラー)、WiFi、無線イーサネット、有線イーサ
ネット又は任意の他の形態のインターネット接続を含む任意の形態のデータ通信であって
もよい。
電子デバイス102は、スマートフォン又はタブレットコンピュータのような、出力デ
バイス上にパスコードインタフェース106を提示するモバイルデバイスであってもよい
。図示の実施形態では、該出力デバイスは、タッチスクリーン108である。認証を求め
るユーザは、電子デバイス102のセンサ(すなわち、インプットデバイス)を通じて、
PIN、パスフレーズ、デジタル鍵又はそれらの任意の組み合わせ等の、パスコードを編
成するインプットのシーケンスをインプットしてもよい。図示の実施形態では、該センサ
は、タッチスクリーン108である。もっとも、インプットを検出するための該センサ(
例えば、タッチパネル又はカーソルデバイス)は、出力デバイス(例えば、ディスプレイ
、投射デバイス、スピーカ又は他のパスコードインタフェース106を提示可能なデバイ
ス)とは異なってもよい。
複数のセンサ入力110は、それらを合わせてタッチイベントストリームのようなセン
サインプットストリーム114を形成する。センサインプットストリーム114は、該複
数のセンサインプットシーケンスである。センサインプットストリーム114は、単一の
ユーザ、単一セッション、単一のアプリケーション、またはそれらの任意の組み合わせに
関連付けられていてもよい。パスコードインタフェース106がタッチスクリーン108
上に提示され、上記ユーザがパスコードインタフェース106にてインプットを入力した
際に、電子デバイス102はセンサインプットストリーム114をキャプチャして解釈す
る。
各センサ入力110が上記センサによりキャプチャされる際、該センサ入力110は、
処理を行うために電子デバイス102のオペレーティングシステムに経路指定される。セ
ンサ入力110は、このデータ経路の間に、任意のレベルで暗号化されてもよい。該デー
タ経路は、図4に示すように、電子デバイス102のソフトウェアスタックを伝播する。
上記暗号化は、非対称暗号方式、対称暗号方式又はホワイトボックス暗号方式に基づくも
のであってもよい。該暗号化は、図4に示すように、ソフトウェアスタックの種々の異な
る任意のレベルにおいて起こってもよい。該センサ入力が暗号化されると、電子デバイス
102は、暗号化されたセンサ入力110を直接認証システム104にまで送信してもよ
い。
種々の実施形態では、センサインプットストリーム114の部分は、復号を行うために
認証システム104に送信される。種々の実施形態では、認証システム104がセンサイ
ンプットストリーム114の一部を受信した際に、認証システム104は、ユーザに入力
されたパスコード入力116を解読する前にセンサ入力110を復号化してもよい。パス
コードインタフェース構成118は、該パスコードインタフェースと対話する機構を規定
するものであって、電子デバイス102によって生成された後、同様に認証システム10
4まで送信されてもよい。該パスコードインタフェース構成は、該センサ入力に係るセン
サ値と該パスコード入力を編成するのに使用される文字のセットとのマッピングを指定し
てもよい。例として、該パスコードインタフェースがタッチスクリーン108上に表示さ
れる場合には、該パスコードインタフェース構成は、タッチスクリーン108上の該パス
コードインタフェースのジオメトリの規定を含んでいてもよい。他の実施形態では、該パ
スコードインタフェース構成は、認証システム104により生成される。該パスコードイ
ンタフェース構成は、特に該パスコード入力インタフェースと対話するユーザとのセッシ
ョンのために生成されてもよい。
種々の実施形態では、センサインプットストリーム114を既知のインタフェース構成
118と対照することによって、センサインプットストリーム114の一部がパスコード
入力116を生成するように解釈される。認証システム104は、上記復号化されたセン
サ入力に対応する文字または文字のセットを解読し得る。認証システム104は、その後
、該解読された文字または文字のセットを、順次パスコード入力116に集約し得る。パ
スコード入力116は、上記ユーザが該パスコードインタフェースの提示に応じて入力し
たパスコードに対応している。
この技法は、例えば、金融取引認証プロセスにおいて適用され得る。パスコード入力を
介してユーザを認証するため、パスコード入力116は、認可されたユーザに対応した認
証済みパスコードと対照され得る。例えば、該認証済みパスコードは、金融サービスシス
テム120に格納されている。いくつかの実施形態では、金融サービスシステム120は
、認証システム104を含む。いくつかの実施形態では、パスコードの入力116の解読
は、認証システム104ではなく電子デバイス102上のモジュールによって実行される
認可された上記ユーザ及び上記認証済みパスコードは、ペイメントカードID122と
関連付けられてもよい。ペイメントカードID122は、デビットカード又はクレジット
カードに対応してもよい。図示の例では、ペイメントカードID122は、ペイメントカ
ード124に格納されている。ペイメントカードID122は、カードリーダ126を介
して抽出される。カードリーダ126は、有線配線を介して又は無線方式により、電子デ
バイス102に結合される。ペイメントカードID122及び他のパスコードに関連しな
いデータは、電子機器102に転送される。種々の実施形態では、ペイメントカードID
122及び他のパスコードに関連しないデータは、暗号化される。ペイメントカードID
122及び他のパスコードに関連しないデータは、その後、認証システム104と共有さ
れる。ペイメントID120及びパスコード入力116に基づき、認証システム104は
金融サービスシステム120と通信して、それによりユーザの支払い等のユーザの本人性
及び認可を確認する。
なお、他の実施形態では、上記認証済みパスコードは、ペイメントカード124上に格
納されている。例えば、EMVクレジットカードは、該EMVクレジットカードのユーザ
に関連付けられた該認証済みパスコードを含有する集積回路(IC)チップ130を含む
。該EMVクレジットカードを使用するユーザの認可には、パスコード入力116と該E
MVクレジットカードのICチップ130上の該認証済みパスコードとを対照することが
要求されてもよい。その後、パスコード入力116が解読されると、認証システム104
は、電子デバイス102にパスコード入力116を送信してもよい。電子デバイス102
に返信されたパスコード入力116は、同様に暗号化されてもよい。その後、パスコード
入力116は、対照のためにICチップ130に送信され得る。
図示の実施形態は、上記センサ入力がタッチスクリーン上のタッチイベントであり、上
記パスコードインタフェースがタッチスクリーン上に表示されたキーパッドであることを
企図しているが、該パスコードインタフェースは、該センサデバイスと一体である必要は
ない。例えば、該センサは、振動センサ、加速度計、光センサ、カメラ、触覚センサ、又
は、電子デバイスの画面上に表示されたパスコードインタフェースとのユーザ対話を検出
する他の手段であってもよい。
また、上記パスコードインタフェースがビジュアルベース単独ではないことも企図され
る。この点において、開示の技法が適用可能であるセンサイベントのタイプの他の例は、
音声入力(例えば、認識によるインプット)、ジェスチャ入力(例えば、ジェスチャ認識
による)、振動入力、視線追跡又は他の直接的又は間接的なユーザインプットの方法を含
む。例えば、該パスコードインタフェースは、画面に表示されるビジュアルインタフェー
スとオーディオインタフェースとの組み合わせであってもよい。該オーディオインタフェ
ースは、スピーカを通じての聴覚的指令及び/又はマイクを通じての聴覚的インプットを
含み得る。例えば、該センサ入力は、マイクへの音声入力であってもよく、その場合、該
パスコードインタフェースは、音声入力を通じてインプットを受信することが可能なユー
ザインタフェースである。
図2は、パスコード入力のための電子デバイス200を表すブロック図である。電子デ
バイス200は、図1のデバイス102を表すものであってもよい。電子デバイス200
は、汎用コンピューティングデバイスであってもよい。電子デバイス200は、以下に説
明するような種々のモジュール及び記憶装置を含む。電子デバイス200は、パスコード
インタフェースを提示及び維持するように構成されたパスコードインタフェースモジュー
ル202を含む。
種々の実施形態では、パスコードインタフェースモジュール202は、上記パスコード
インタフェースを生成するように構成されている。パスコードインタフェースモジュール
202は、該パスコードインタフェースをランダムに又は擬似ランダムに生成してもよい
。一例として、該パスコードインタフェースは、PINパッドレイアウトとして構成され
ていてもよい。該パスコードインタフェースのサイズ、配置、位置、向き、形状及び他の
絶対的または相対的なジオメトリ特性、並びに該パスコードインタフェース内の要素は、
全てパスコードインタフェース構成の例である。該パスコードインタフェース構成は、ユ
ーザのパスコード入力を該パスコードインタフェース上において隠蔽することを促進する
ように選択されてもよい。例えば、該パスコードインタフェースの該要素は、パスコード
の組み合わせ(例えば、パスコード入力116)を選択するための文字であってもよい。
該文字の配列並びに該文字のジオメトリ形状及びサイズは、ランダム化されてもよい。該
パスコードインタフェース構成の他の属性は、全体的又は部分的にランダム生成されても
よい。該パスコードインタフェースの絶対的及び相対的(例えば、電子デバイス200の
ディスプレイに対して相対的)なジオメトリ特性のような該パスコードインタフェース構
成は、インタフェース構成記憶機構204内に格納されてもよい。
他の実施形態では、上記パスコードインタフェース構成は、図1の認証システム104
のように、ネットワークを通じてリモートシステムにより提供される。例えば、該パスコ
ードインタフェース構成は、認証通信モジュール206を通じて受信されてもよい。これ
らの実施形態では、該パスコードインタフェース構成は、いったん受信された後に、イン
タフェース構成記憶機構204に格納されてもよい。該パスコードインタフェース構成は
、ユーザに該パスコードインタフェースを提示するために、パスコードインタフェースモ
ジュール202に使用されてもよい。
パスコードインタフェース構成が電子デバイス200上に生成された際、認証通信モジ
ュール206は上記パスコードインタフェース構成を上記リモートシステムに伝送しても
よく、それによって、該リモートシステムは上記センサインプットストリームの一部と該
パスコードインタフェース構成とを使用してパスコード入力を解読してもよい。
パスコードインタフェースモジュール202は、さらに、パスコードインタフェースを
種々の方法で提供するように構成されていてもよい。一例として、上記パスコードインタ
フェースの提示は、レイアウト構成等のパスコードインタフェース構成に従い、該パスコ
ードインタフェースをタッチスクリーン上に表示又は描画することを含んでいてもよい。
パスコードインタフェースモジュール202は、パスコードインタフェースを二次元的又
は三次元的に描画してもよい。パスコードインタフェースモジュール202はまた、他の
方法でパスコードインタフェースを提示してもよく、該他の方法には、アニメーション、
オーディオ、ウェブページ、ウィジェット、他の受動型若しくは対話型のマルチメディア
、又はそれらの任意の組み合わせを通じて該パスコードインタフェースを提示することが
含まれる。
パスコードインタフェースモジュール202は、上記パスコードインタフェースとユー
ザとの対話に基づくフィードバックを維持するように構成されていてもよい。例えば、パ
スコードインタフェースモジュール202は、図1のタッチスクリーン108のような電
子デバイス200のタッチスクリーンに結合されてもよい。この対話によって、ユーザが
パスコード入力の一部となる文字又は文字のセットを入力した際に、パスコードインタフ
ェースがフィードバックを提供することが可能になる。
対話の記録は、図1のタッチスクリーン108のようなインプットデバイス205でキ
ャプチャされる。インプットデバイス205は、電子デバイス200のインプットデバイ
スドライバ208によって制御される。インプットデバイスドライバ208は、電子デバ
イス200のオペレーティングシステムのカーネルレベルにおいて実行されてもよい。
種々の実施形態では、インプットデバイスドライバ208は、インプットデバイス20
5からのインプットストリームをキャプチャする。インプットデバイス205は、ユーザ
のパスコードインタフェースとの対話に関する(すなわち、該対話を示す)センサ入力を
検出することが可能な任意のインプットハードウェア(すなわち、1つ以上のセンサ)を
含むことができる。受信されたセンサ入力の該シーケンスは、該インプットストリームを
構成してもよい。
電子デバイス200は、暗号化モジュール210を含む。暗号化モジュール210は、
上記インプットストリームをインプットデバイスドライバ208から直接的または間接的
に受信する。例えば、暗号化モジュール210は、該インプットストリームを含有するイ
ンプットデバイスドライバ208のドライババッファにアクセスしてもよい。別の例では
、暗号化モジュール210は、インプットデバイスドライバ208によって発生した割り
込みに対し、上記オペレーティングシステムの上記カーネルレベルにおいて応答してもよ
い。さらに別の例では、暗号化モジュール210は、一端においてドライバとインタフェ
ース接続し、他端においてユーザレベルアプリケーションとインタフェース接続するオペ
レーティングシステムレベルライブラリの一部であってもよい。
暗号化モジュール210は、上記インプットストリームのセンサ入力を暗号化するよう
に構成されている。いくつかの実施形態では、暗号化モジュール210は、各センサ入力
を別々に暗号化する。他の実施形態では、センサ入力のセットが合わせて暗号化される。
いくつかの実施形態では、各センサ入力のコンテンツ値及び/又はメタデータ値は、別々
に暗号化される。例えば、センサ入力がタッチスクリーンからのタッチイベントである場
合、各タッチスクリーンのX及びY座標を含む位置は、暗号化されてもよい。別の例では
、該X及びY座標は、別々に暗号化されてもよい。
認証通信モジュール206は、電子デバイス200のシステムコールインタフェースモ
ジュール212にセンサインプットストリームを要求するように構成される。システムコ
ールインタフェースモジュール212は、電子デバイス200のオペレーティングシステ
ムカーネルの一部であってもよい。システムコールインタフェースモジュール212は、
暗号化モジュール210からの該センサインプットストリームを取得することによって、
該要求に応答することができる。種々の実施形態では、暗号化モジュール210は、シス
テムコールインタフェースモジュール212と統合されていてもよく、システムコールイ
ンタフェースモジュール212では、暗号化モジュール210が、認証通信モジュール2
06及び/又は他のアプリケーションからの要求に基づいて該センサ入力を動的に暗号化
してもよい。
上記センサインプットストリームの受信に応答して、認証通信モジュール206は、上
記暗号化されたセンサインプットストリームの一部を、図1の認証システム104のよう
な外部認証システムにネットワークを通じて送信する。該一部は、上記パスコードインタ
フェースを電子デバイス200上に提示している間に記録されたセンサ入力から選択され
てもよい。
図2は、インプットデバイスドライバ208とシステムコールインタフェースモジュー
ル212との間にて上記センサ入力を暗号化する暗号化モジュール210を示しているが
、本開示では、他の実施形態も同様に企図される。例えば、暗号化モジュール210とシ
ステムコールインタフェースモジュール212とは、単一のプログラムに統合されてもよ
い。
の例では、暗号化モジュール210とインプットデバイスドライバ208とが、単一のプ
ログラムに統合されてもよい。さらに別の例では、暗号化モジュール210と認証通信モ
ジュール206とが、単一のプログラムに統合されていてもよい。
記載のインタフェース構成記憶機構204は、ハードウェアのメモリコンポーネントの
1つ以上又はハードウェアのメモリコンポーネントの一部に実装され得る。インタフェー
ス構成記憶機構204は、動的なデータベースサービスまたは静的なデータ構造として実
装され得る。該記憶機構は、単一の物理デバイスにより実装され得るか、複数の物理デバ
イスに分布され得る。該記憶機構の記憶領域は、パスコードインタフェースアプリケーシ
ョン202のような上述のモジュールの実行時に割り当てられ得る。
図3は、認証システム300を表すブロック図である。図示のように、認証システム3
00は、図2の電子デバイス200のような電子デバイスと通信するように構成されたデ
バイス通信モジュール302を含む。例えば、デバイス通信モジュール302は、タッチ
イベントシーケンスのようなセンサインプットシーケンスを、電子デバイス200のよう
な電子デバイスから受信することができる。種々の実施形態では、センサ入力シーケンス
内のセンサの入力は、暗号化されている。
認証システム300は、復号化モジュール304を含む。復号化モジュール304は、
上記センサインプットシーケンス内の上記暗号化されたセンサ入力を復号化するように構
成されている。認証システム300における該復号方法は、暗号化モジュール210につ
いて記載した暗号化メカニズムに従うような、上記電子デバイスに実装された任意の暗号
化方法に対応していてもよい。例えば、該復号化方法は、非対称暗号方式、対称暗号方式
又はホワイトボックス暗号方式に従うものであってもよい。
いくつかの実施形態では、復号化モジュール304及び/又は暗号モジュール306は
、ハードウェアコンポーネントとして実装される。該ハードウェアコンポーネントは、任
意の外部アプリケーション(例えば、マルウェアアプリケーション)からの外部アクセス
を防止するように適合させられてもよく、その他、認証システム300にアクセスしてい
てもよい。このことは、ユーザのパスコードを発見しようと試みる攻撃者予備軍に対する
追加のセキュリティ層を設けるという点において有利である。
復号化に使用される暗号鍵は、暗号モジュール306に格納され得ると共に、該暗号モ
ジュール306から取得され得る。暗号モジュール306は、上記電子デバイス上におけ
る暗号化及び認証システム300上における復号化に使用される暗号化鍵(例えば、公開
鍵又は非公開鍵)を管理するように構成されている。種々の実施形態では、暗号モジュー
ル306は、デバイス通信モジュール302を通じて暗号化鍵を伝送することにより、該
電子デバイスに該暗号化鍵を割り当てる。
認証システム300は、解読モジュール308を含む。解読モジュール308は、セン
サインプットシーケンスに基づいて、ユーザからのパスコード入力を解読するように構成
されている。例えば、解読モジュール308は、復号化されたセンサインプットシーケン
スを復号化モジュール304から受信してもよい。いくつかの実施形態では、解読モジュ
ール308は、パスコードインタフェース構成を、上記電子デバイスからデバイス通信モ
ジュール302を通じて受信する。他の実施形態では、解読モジュール308は、認証シ
ステム300に格納されている既知のパスコードインタフェース構成(図示せず)にアク
セスする。
解読モジュール308は、上記復号化されたセンサインプットシーケンス及び上記パス
コードインタフェース構成に基づいて、ユーザによるパスコード入力を決定してもよい。
例えば、該パスコードインタフェースがキーパッドであり、センサインプットシーケンス
がタッチイベントである場合、解読モジュール308は、該タッチイベントのタッチ座標
を、該キーパッド上に配置された既知の文字要素にマッピングしてもよい。そして、解釈
された文字要素のシーケンスは、該ユーザによるパスコード入力であると解読されてもよ
い。
上記パスコード入力は、電子デバイスに取り付けられたカードリーダによる検証などの
検証を受けるために、デバイス通信モジュール302を通じて上記電子デバイスに戻され
てもよい。パスコード入力はまた、検証を受けるために金融サービス通信モジュール31
0を通じて金融サービスシステムへと渡されてもよい。金融サービス通信モジュール31
0は、図1の金融サービスシステム120のような外部金融サービスシステムと通信する
ように構成されている。
電子デバイス200上における1つ以上のモジュールは認証システム300上に実装さ
れてもよく、認証システム300の1つ以上のモジュールは電子デバイス200上に実装
されてもよい。例えば、認証システム300の暗号モジュール306は、電子デバイス2
00上に実装されてもよく、その場合には、上記暗号化鍵及び復号化鍵が電子デバイス2
00から認証システム300へと配布されることになる。
図4は、電子デバイス102又は電子デバイス200のような電子デバイス400のシ
ステムアーキテクチャ図であって、センサ入力が処理され得るデータ経路を表している。
電子デバイス400は、タッチスクリーン上に検出されたタッチの座標(「タッチイベン
ト」)のようなセンサ入力についてのシーケンス又はストリームを、ハードウェアレベル
404で記録することが可能なセンサデバイス402を含む。ハードウェアレベル404
は、電子デバイス400に結合されているか該電子デバイスに統合されている電子デバイ
ス400の物理ハードウェアコンポーネントを少なくとも含む。センサデバイス402は
、例えば、タッチスクリーンであってもよい。センサデバイス402は、センサコントロ
ーラ406を含んでいてもよい。センサコントローラ406は、例えば、センサデバイス
402内の1つ以上のセンサを制御するための専用の集積回路であり得る。センサコント
ローラ406は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、プログ
ラム可能なマイクロコントローラ又は特定用途向けIC(ASIC)であり得る。センサ
コントローラ406は、センサファームウェア408を実行してもよい。センサファーム
ウェア408の動作は、該システムアーキテクチャのファームウェアレベル410内にて
行われるとみなされてもよい。
センサファームウェア408又はセンサコントローラ406は、上記システムアーキテ
クチャのカーネルレベル414において、センサ入力をセンサデバイスドライバ412へ
と伝送してもよい。センサデバイスドライバ412は、入ってくるセンサインプットを格
納するためのメモリ領域であるドライババッファ416に結合されてもよい。センサデバ
イスドライバ412によって受信されるセンサ入力は、ドライババッファ416内に格納
されてもよい。センサデバイスドライバ412は、電子デバイス400のオペレーティン
グシステム418に代わって、センサデバイス402を動作させる又は制御するコンピュ
ータプログラムである。センサデバイスドライバ412は、バス又は他の有線若しくは無
線通信システムを通じて、センサコントローラ406又はセンサファームウェア408と
通信することができる。
図4に示されるように、電子デバイス400上で実行されているオペレーティングシス
テム418は、カーネルプログラム420を含む。カーネルプログラム420は、電子デ
バイス400上で実行されているソフトウェアからのインプット/アウトプット要求を管
理するコンピュータプログラムであり、該要求を電子デバイス400の中央処理ユニット
(CPU)及び/又は他の電子コンポーネントのためのデータ処理命令へと変換する。例
えば、カーネルプログラム420は、オペレーティングシステム418のユーザレベル4
24で実行されているパスコード認証アプリケーション422に対するシステムコールイ
ンタフェースサービスとして機能してもよい。カーネルプログラム420は、デバイスド
ライバ(例えば、センサデバイスドライバ412)を含む特定のプログラムを、ユーザレ
ベル424上のアプリケーションとは異なる権限及び/又は制約により、カーネルレベル
414上にて実行することを可能にする。カーネルレベル414で実行されているモジュ
ールは、より高位の実行権限を有していてもよく、独立したアドレス空間を有していても
よく、(例えば、逐次実行の代わりに)並列実行スレッドを有していてもよく、割り込み
ベースの処理の能力を有していてもよく、互いにデータを共有することができ、プリエン
プト可能であることができ、又はそれらの任意の組み合わせであってもよい。
図2の認証通信モジュール206のようなパスコード認証アプリケーション422は、
カーネルプログラム420を通じてセンサデバイスドライバ412と通信してもよい。例
えば、パスコード認証アプリケーション422は、センサデバイス402により提供され
る上記センサインプットストリーム内のセンサ入力にアクセスしてもよい。
上記センサインプットストリーム内のセンサ入力の暗号化は、ファームウェアレベル4
10、カーネルレベル414、ユーザレベル424、又はそれらの組み合わせにおいて生
じてもよい。上記暗号化されたセンサ入力は、カーネルレベル414又はユーザレベル4
24のいずれか上で実行されているマルウェアに対して保護するのに有利である。種々の
実施形態では、暗号化鍵は上記電子デバイスに設けられている一方で、復号化鍵は該電子
デバイスには知られていない。他の実施形態では、対称鍵が、暗号化及び復号化の両方に
使用される。この場合には、該対称鍵及び暗号化アルゴリズムは、データオブジェクト(
例えば、コードのブロック又はコンパイルされたバイナリ)として数理的に編成されてお
り、該データオブジェクトからでは、攻撃者は相当な努力なしでは元の該対称鍵を特定す
ることができない。
図5は、パスコード入力インタフェースへのユーザインプットを示すセンサ値を暗号化
する電子デバイス(例えば、電子デバイス102、電子デバイス200又は電子デバイス
400)を動作させるプロセス500のフローチャートを表す。該電子デバイスは、ステ
ップ502において、ユーザがパスコード入力をインプットするためのパスコードコード
インタフェースをタッチスクリーン等のディスプレイ上に提示する。例えば、提示された
該パスコード入力インタフェースは、金融サービスシステムへの/からの支払いのために
ユーザを認証するためのキーパッドであってもよい。ステップ502は、パスコード入力
インタフェースモジュール202によって実行されてもよい。該パスコード入力インタフ
ェースは、電子デバイスに結合されたカードリーダがユーザによるクレジットカードのス
ワイプを検出した時のような、該電子デバイス上における金融取引の開始に応答して提示
されてもよい。
上記電子デバイスのセンサからのセンサインプットストリームは、ステップ504にお
いて受信される。該センサインプットストリームからの該センサ入力は、パスコード入力
インタフェースとのユーザ対話を表して又は示していてもよい。例えば、該センサインプ
ットストリームは、該電子デバイスのタッチスクリーンからのタッチイベントストリーム
であり得る。各タッチイベントは、タッチスクリーンによりタッチが検出された場所の座
標を含んでいてもよい。ステップ504は、インプットデバイスドライバ208によって
実行されてもよい。
次に、電子システムは、ステップ506において、上記センサインプットストリームか
らのインプットイベントのセンサ値を暗号化する。該センサ値は、インプットイベント入
力のメタデータと共に暗号化されてもよい。複数のセンサ値が単一のインプットイベント
入力(例えば、タッチイベントのx座標及びy座標)に集約される場合には、複数のセン
サ値が合わせて暗号化されてもよい。いくつかの実装態様では、複数のタッチ位置(例え
ば、x座標及びy座標の複数のセット)のような複数のセンサ入力が、合わせて暗号化さ
れてもよい。ステップ506は、暗号化モジュール210によって実行されてもよく、上
記電子デバイスのカーネルレベル上で実行されてもよい。
続いて、上記電子デバイスは、ステップ508において、上記暗号化されたセンサ値を
外部システムへとネットワーク越しに伝送することができる。該暗号化されたセンサ値は
、外部システムに該暗号化されたセンサ値からパスコードを解読させるための命令、要求
又は任意の他のタイプのメッセージ若しくは信号として送信されてもよい。該外部システ
ムは、該暗号化されたセンサ値からパスコードを解読し、該パスコードに基づいてユーザ
を認証するための図3の認証システム300であってもよい。ステップ508は、認証通
信モジュール206によって実行されてもよい。
図6は、ユーザによるパスコードを解読するためのコンピューティングシステム(例え
ば、図3の認証システム300)を動作させるプロセス600のフローチャートを表す。
該コンピューティングシステムは、ステップ602において、電子デバイス102、電子
デバイス200又は電子デバイス400のような電子デバイスからの暗号化されたセンサ
インプット値を受信する。種々の実施形態では、該センサインプット値は、該電子デバイ
ス上に提示されたパスコード入力インタフェースとのユーザ対話に対応する。該暗号化さ
れたセンサインプット値は、パスコード入力インタフェースが電子デバイス上に提示され
る期間に対応していてもよい。ステップ602は、図3のデバイス通信モジュール302
によって実行されてもよい。
次に、上記コンピューティングシステムは、ステップ604において、上記暗号化され
たセンサインプット値から、センサ値を復号化する。該復号化されたセンサ値は、上記パ
スコード入力インタフェースを用いて、ユーザインプットイベントを特定してもよい。ス
テップ604は、図3の復号化モジュール304によって実行されてもよい。
いったん復号化されると、上記コンピューティングシステムは、ステップ606におい
て、上記パスコード入力インタフェースのインタフェース構成にアクセスする。該インタ
フェース構成は、上記センサインプット値と、該センサインプット値に対応するパスコー
ド入力を編成する文字のようなパスコード入力を編成するのに使用される文字のセットと
のマッピングを指定してもよい。該インタフェース構成は、該コンピューティングシステ
ム又は上記電子デバイス上で生成されてもよい。該インタフェース構成は、該パスコード
入力インタフェースと対話するユーザとのセッションのために特化して生成されてもよい
上記インタフェース構成及び上記ユーザインプットイベントの上記復号化されたセンサ
インプット値に基づいて、コンピューティングシステムは、ステップ608において、上
記ユーザにより入力された上記パスコード入力を解読する。ステップ606及びステップ
608は、図3の解読モジュール306によって実行されてもよい。
プロセス500及びプロセス600に関して、種々のステップ、ブロック又はサブプロ
セスが特定の順序で提示されているが、代替の実施形態では、異なる順序でステップを有
するルーチンが実行されてもよく、異なる順序でステップ、ブロック又はサブプロセスを
有するシステムが採用されてもよい。また、代替案又は部分的組み合わせを提供するため
に、いくつかのステップ、サブプロセス又はブロックが、削除され、移動され、追加され
、再分割され、組み合わせられ及び/又は修正されてもよい。これらのステップ、ブロッ
ク又はサブプロセスの各々は、種々の異なる方法で実施されてもよい。また、ステップ、
サブプロセス又はブロックは、ここではある時に連続して実行されるものとして示されて
いるが、いくつかのステップ、サブプロセス又はブロックは、代わりに、当業者によって
認識されるように、並列に実行されてもよく、異なる時に実行されてもよい。さらに、本
明細書に記載の任意の特定の数は、単なる例示である。
図7は、電子デバイス702(例えば、図2の電子デバイス200)及び認証システム
704(例えば、図3の認証システム300)を含む、パスコード入力システム700の
ブロック図である。なお、図7に示されるアーキテクチャは、パスコード入力システム7
00のアーキテクチャの単なる一例であって、電子デバイス702は図示よりも多くの又
は少ないコンポーネント又は異なるコンポーネント構成を有することがある。図7に示す
種々のコンポーネントは、1つ以上の信号処理集積回路及び/又は特定用途向け集積回路
を含むハードウェア、ソフトウェア、ファームウェア又はそれらの組み合わせを用いて実
装され得る。
電子デバイス702は、1つ以上のコンピュータ読み取り可能な媒体710、処理シス
テム720、タッチサブシステム730、ディスプレイ/グラフィックスサブシステム7
40、通信回路750、記憶装置760、及びオーディオ回路770を含み得る。これら
のコンポーネントは、1つ以上の通信バス又は他の信号線路により結合されてもよい。電
子デバイス702は、電子デバイス102、電子デバイス200又は電子デバイス400
と同一又は類似のものであり得る。
通信回路750は、RF回路752及び/又は情報を送受信するためのポート754を
含み得る。RF回路752は、1つ以上の他のデバイスへの無線リンク又はネットワーク
越しに情報を伝送することを可能にすると共に、この機能を実行するための周知の回路を
含む。ポート754は、有線リンク越しに情報を伝送することを可能にする。通信回路7
50は、例えば、認証システム704と通信し得る。通信回路750は、処理システム7
20に周辺機器インタフェース724を介して結合され得る。周辺機器インタフェース7
24は、周辺機器と処理システム720との間の通信を確立して維持するための種々の既
知のコンポーネントを含み得る。
オーディオ回路770は、オーディオスピーカ(図示せず)、マイク(図示せず)、電
子カードリーダ(図示せず)又はそれらの任意の組合せに結合され得ると共に、ユーザが
他のユーザとリアルタイムで通信することを可能にするために、周辺機器インタフェース
724から受信した音声信号を処理するための既知の回路を含む。いくつかの実施形態で
は、オーディオ回路770は、ヘッドホンジャック(図示せず)を含む。
周辺機器インタフェース724は、電子カードリーダのような、システムの種々の周辺
機器を、1つ以上のプロセッサ726及びコンピュータ読み取り可能な媒体710に結合
し得る。1つ以上のプロセッサ726は、1つ以上のコンピュータ読み取り可能な710
とコントローラ722を介して通信することができる。コンピュータ読み取り可能な媒体
710は、1つ以上のプロセッサ726により使用するためのコード及び/又はデータを
格納可能な任意のデバイス又は媒体であり得る。媒体710は、メモリ階層を含むことが
でき、該メモリ階層には、これらに限定されないが、キャッシュ、メインメモリ及び二次
メモリが含まれる。メモリ階層は、RAM(例えば、SRAM、DRAM、DDRAM)
、ROM、FLASH、並びに、ディスクドライブ、磁気テープ、CD(コンパクトディ
スク)及びDVD(デジタルビデオディスク)のような磁気及び/又は光学記憶デバイス
の任意の組み合わせを用いて実装され得る。媒体710は、コンピュータ命令又はデータ
を示す情報担持信号を(信号が変調される際の搬送波の有無にかかわらず)搬送するため
の伝送媒体もまた含んでいてもよい。例えば、該伝送媒体は通信ネットワークを含んでい
てもよく、該通信ネットワークには、これらに限定されないが、インターネット、イント
ラネット、ローカルエリアネットワーク(LAN)、ワイドローカルエリアネットワーク
(WLAN)、ストレージエリアネットワーク(SAN)、メトロポリタンエリアネット
ワーク(MAN)等が含まれる。
1つ以上のプロセッサ726は、電子デバイス702のための種々の機能を実行するた
め、媒体710に格納されている種々のソフトウェアコンポーネントを実行し得る。なお
、媒体710のモジュールの順序は、媒体710に実装されるソフトウェアスタックの順
序を意味しない。いくつかの実施形態では、該ソフトウェアコンポーネントは、オペレー
ティングシステム711、通信モジュール(又は命令のセット)712、タッチ処理モジ
ュール(又は命令のセット)713、図2のパスコードインタフェースモジュール202
のようなインタフェースモジュール(又は命令のセット)715、及び、1つ以上のアプ
リケーション(又は命令のセット)718を含む。これらのモジュール及び上述のアプリ
ケーションの各々は、上述の機能及び本出願に記載の上記方法(例えば、本明細書に記載
される、コンピュータにより実施される方法及び他の情報処理方法)の1つ以上を実行す
るための命令のセットに対応する。これらのモジュール(例えば、命令のセット)は、別
々のソフトウェアプログラム、プロシージャ又はモジュールとして実装される必要はなく
、そのため、種々の実施形態において、これらのモジュールの種々のサブセットは組み合
わせられてもよく、そうでない場合には再構成されてもよい。いくつかの実施形態では、
媒体710は、上述のモジュール及びデータ構造のサブセットを格納してもよい。さらに
、媒体710は、上述されていない追加のモジュール及びデータ構造を格納してもよい。
オペレーティングシステム711は、一般的なシステムタスク(例えば、メモリ管理、
記憶デバイス制御、電源管理など)を制御及び管理するための種々のプロシージャ、命令
のセット、ソフトウェアコンポーネント及び/又はドライバを含むことができ、種々のハ
ードウェア及びソフトウェアコンポーネント間の通信を容易し得る。
通信モジュール712は、通信回路750を用いた他のデバイスとの通信を容易にする
と共に、RF回路752及び/又はポート754から受信したデータを取り扱うための種
々のソフトウェアコンポーネントを含む。
タッチ処理モジュール713は、タッチハードウェア734に関する種々のタスクを実
行するための種々のソフトウェアコンポーネントを含んでおり、該タスクには、これらに
限定されないが、タッチI/Oデバイスコントローラ732を介してI/Oデバイス73
0から受信したタッチインプットを受信して処理することが含まれる。例えば、タッチ処
理モジュール713は、他のI/Oデバイス(図示せず)に関するタスクを実行するため
のソフトウェアコンポーネントもまた含み得る。
インタフェースモジュール715は、ユーザの本人性を認証するためのパスコードを該
ユーザが入力するようなパスコードインタフェースを提示及び維持するように構成されて
いる。インタフェースモジュール715は、グラフィカルオブジェクトをディスプレイ面
上に描画し、アニメーションさせ、表示するための種々の既知のソフトウェアコンポーネ
ントを含み得る。タッチハードウェア734がタッチ感知ディスプレイ(例えば、タッチ
スクリーン)である実施形態では、インタフェースモジュール715は、タッチ感知ディ
スプレイ上のオブジェクトを描画し、表示し、アニメーションさせるためのコンポーネン
トを含む。インタフェースモジュール715は、グラフィックスI/Oコントローラ74
4が該グラフィックスをディスプレイ746上に表示し得るように、該グラフィックスを
描画すること及びグラフィックスI/Oコントローラ744に描画を提供することが可能
なアニメーションエンジン722に、アニメーション命令を提供し得る。インタフェース
モジュール715は、該パスコードインタフェースにオーディオコンポーネントを提供す
るように、オーディオ回路770をさらに制御し得る。
1つ以上のアプリケーション718は、電子デバイス702にインストールされる任意
のアプリケーションを含み得る。このようなアプリケーションは、これらに限定されない
が、電子デバイス200のモジュール、ブラウザ、キーボードエミュレーション、ウィジ
ェット、JAVA対応アプリケーション、暗号化、デジタル著作権管理、音声認識、音声
複製、位置決定機能(例えば、全地球測位システム(GPS)によって提供されるような
)等が含まれる。
タッチI/Oコントローラ732は、種々の機能を制御及び実行するためのタッチハー
ドウェア734に結合されている。タッチハードウェア732は、タッチI/Oデバイス
コントローラ732を介して、処理システム720と通信する。該タッチI/Oデバイス
コントローラ732には、ユーザのタッチインプットを処理するための種々のコンポーネ
ント(例えば、スキャニングハードウェア)が含まれる。1つ以上の他のインプットコン
トローラ(図示せず)は、他のI/Oデバイス(図示せず)へ/からの電気信号を送信/
受信する。他のI/Oデバイスには、物理ボタン、ダイヤル、スライダースイッチ、ステ
ィック、キーボード、タッチパッド、追加の表示画面、又はそれらの任意の組み合わせを
含んでいてもよい。
タッチスクリーンとして実施されている場合、タッチハードウェア734は、上記ユー
ザにGUIにてビジュアル出力を表示する。該ビジュアル出力は、テキスト、グラフィッ
クス、ビデオ、及びそれらの任意の組み合わせを含んでいてもよい。該ビジュアル出力の
一部又は全部は、ユーザインタフェースオブジェクトに対応していてもよい。タッチハー
ドウェア734は、ユーザからのタッチインプットを受け付けるタッチ感知面を形成する
。タッチハードウェア734及びタッチコントローラ732は、(メディア710内の任
意の関連モジュール及び/又は命令のセットと共に、)タッチハードウェア734上のタ
ッチ又はタッチに近い状態(及び任意のタッチの動き又は解放)を検出及び追跡して、該
検出されたタッチインプットを、1つ以上のユーザインタフェースオブジェクトなどのグ
ラフィカルオブジェクトとの対話に変換する。タッチハードウェア734及びディスプレ
イ746がタッチスクリーンとして実施されている場合には、該ユーザは、タッチスクリ
ーン上に表示されているグラフィカルオブジェクトと直接対話することができる。あるい
は、ハードウェア734がタッチスクリーン(例えば、タッチパッド)以外のタッチデバ
イスとして実施されている場合には、該ユーザは、別のディスプレイ画面に表示されるグ
ラフィカルオブジェクトと間接的に対話することができる。
タッチハードウェア734がタッチスクリーンである実施形態では、該タッチスクリー
ンは、LCD(液晶ディスプレイ)技術、LPD(発光ポリマーディスプレイ)技術、O
LED(有機発光ダイオード)技術、又はOEL(有機エレクトロルミネッセンス)を用
いていてもよいが、他の実施形態では、他のディスプレイ技術が用いられてもよい。
上記ユーザのタッチインプット、並びに、表示されているものの状態及び/又は上記コ
ンピューティングシステムの状態に基づいて、タッチハードウェア734によりフィード
バックが提供されてもよい。フィードバックは、光学的に(例えば、光信号又は表示され
た画像)、機械的に(例えば、触覚フィードバック、タッチフィードバック、力フィード
バック)、電気的に(例えば、電気刺激)、嗅覚的に、音響的に(例えば、ビープ音又は
それに類するもの)など、又はそれらの任意の組合せにより伝導されてもよく、変化可能
又は変化不可能な方式で伝送されてもよい。
いくつかの実施形態では、周辺機器インタフェース724、1つ以上のプロセッサ72
6及びメモリコントローラ722は、単一のチップ上に実装されてもよい。いくつかの他
の実施形態では、これらは別々のチップ上に実装されてもよい。記憶装置760は、デー
タを格納するための任意の適切な媒体であってもよい。例えば、該媒体には、揮発性メモ
リ(例えば、キャッシュ、RAM)、不揮発性メモリ(例えば、フラッシュ、ハードディ
スクドライブ)、又はその両方が含まれ、該データには、遷移アニメーションのために用
いられるページが含まれる。
図2〜4及び7に関し、電子デバイス200、認証システム300若しくは電子デバイ
ス702に関連するブロック、コンポーネント及び/又はモジュールは、それぞれ、専用
回路の形態で実装されていてもよく、又は1つ以上の適切にプログラムされたプログラム
可能なプロセッサの形態で実装されていてもよく、又はそれらの組合せにより実装されて
いてもよい。例えば、記載のモジュールは、マシン上のプロセッサ又はコントローラによ
り実行されることが可能な有形の(tangible)記憶メモリ上の命令として実装され得る。
該有形の記憶メモリは、揮発性又は不揮発性メモリであってもよい。いくつかの実施形態
では、該揮発性メモリは、一時的な信号ではないという意味で「非一時的(non-transito
ry)」とみなされてもよい。モジュールの動作は、プロセッサ又は他のコンピューティン
グデバイス、例えば、シングルボードチップ、特定用途向け集積回路、フィールドプログ
ラム可能なフィールドアレイ、ネットワーク利用可能なコンピューティングデバイス、仮
想マシン端末デバイス、クラウドベースのコンピューティング端末デバイス、又はそれら
の任意の組み合わせによって実行された際に、可能となってもよい。
上記モジュールの各々は、他のモジュールとは個々に独立して動作してもよい。該モジ
ュールのいくつか又は全ては、同一のホストデバイス上で実行されてもよく、別々のデバ
イス上で実行されてもよい。該別々のデバイスは、その動作を調整するために、通信モジ
ュールを介してインターコネクト経由で又は無線により結合され得る。該モジュールのい
くつか又は全ては、一つのモジュールとして組み合わせられてもよい。
単一のモジュールは、複数のサブモジュールであって、各サブモジュールが該単一のモ
ジュールの別々の1つ又は複数の方法ステップを実行する複数のサブモジュールへと分割
されてもよい。いくつかの実施形態では、該モジュールは、メモリ空間へのアクセスを共
有することができる。あるモジュールは、別のモジュールによりアクセス又は変換される
データにアクセスしてもよい。これらのモジュールが物理的な接続又は仮想接続を直接的
又は間接的に共有しており、それによって、あるモジュールからアクセス又は変更された
データが別のモジュールにアクセスされ得るようになる場合には、それらのモジュールは
相互に「結合されている」とみなすことができる。いくつかの実施形態では、該モジュー
ルの一部又は全ては、リモートでアップグレード又は修正され得る。電子デバイス200
、認証システム300又は電子デバイス702は、種々の用途のために、追加のモジュー
ル、より少ない数のモジュール又は異なるモジュールを含んでいてもよい。
図8は、コンピュータシステム800の図式的表示である。コンピュータシステム80
0は、図3の例に図示される任意のモジュール及びコンポーネント(及び本明細書に記載
の任意の他のモジュール及び/又はコンポーネント)が実装され得るハードウェアデバイ
スを表すことを企図されている。図示のように、コンピュータシステム800は、プロセ
ッサ802と、メモリ804と、不揮発性メモリ806と、ネットワークインタフェース
808とを含む。種々の共通コンポーネント(例えば、キャッシュメモリ)は、図示の簡
略化のために省略されている。コンピュータシステム800は、パーソナルコンピュータ
(PC)、サーバクラスのコンピュータ又はモバイルデバイス(例えば、スマートフォン
、カードリーダ、タブレットコンピュータ、等)のような任意の適用可能な公知又は従来
のタイプのものであり得る。コンピュータシステム800の複数の該コンポーネントは、
バスを介して、及び/又は、他の任意の既知又は従来の相互接続の形態を通じて、互いに
結合されてもよい。
関連技術の当業者は、用語「マシン読み取り可能な(記憶)媒体」又は「コンピュータ
読み取り可能な(記憶)媒体」が、プロセッサ802によってアクセス可能な任意のタイ
プのデバイスを含むことを理解するであろう。メモリ804は、例えばバス810によっ
て、プロセッサ802に結合される。メモリ804は、例示であって限定ではないが、ダ
イナミックRAM(DRAM)及びスタティックRAM(SRAM)のようなランダムア
クセスメモリ(RAM)を含み得る。メモリ804は、ローカル、リモート又は分散型で
あり得る。
バス810はまた、プロセッサ802を不揮発性メモリ806及びドライブユニット8
12に結合してもよい。不揮発性メモリ806は、ハードディスク、光磁気ディスク、光
ディスク、読み出し専用メモリ(ROM)であってもよく、例えば、CD−ROM、消去
可能なプログラム可能読み出し専用メモリ(EPROM)、若しくは電気的に消去可能な
プログラム可能読み出し専用メモリ(EEPROM)、磁気若しくは光カード、又は他の
形態の大量データ用記憶装置であってもよい。不揮発性記憶デバイス806は、ローカル
、リモート又は分散型であり得る。
図3に記載のモジュールは、不揮発性メモリ806、ドライブユニット812又はメモ
リ804内に格納されてもよい。プロセッサ802は、上記メモリコンポーネント内に格
納された1つ以上のモジュールを実行してもよい。
バス810はまた、プロセッサ802をネットワークインタフェースデバイス808に
結合する。インタフェース808は、1つ以上のモデム又はネットワークインタフェース
を含み得る。モデム又はネットワークインタフェースは、コンピュータシステム800の
一部であるとみなすことができる。インタフェース808は、アナログモデム、ISDN
モデム、ケーブルモデム、トークンリングインタフェース、衛星伝送インタフェース(例
えば、「ダイレクトPC(direct PC)」)又はコンピュータシステムを他のコンピュー
タシステムに結合するための他のインタフェースを含み得る。
本開示のセクション又は図面の各々は、異なる実装、及び、要素と用語との間の異なる
関係を例示することができる。しかし、本開示の異なるセクションで参照される類似の要
素及び用語、並びに図面は、種々の実施形態において相互に交換可能であることが意味さ
れる。
代替となる言葉及び同義語は、本明細書で説明された用語の任意の1つ以上に使用され
てもよく、本明細書中で用語が詳述又は説明されているか否かには、特別な意味が認めら
れるわけではない。1つ以上の同義語の記述は、他の同義語の使用を排除しない。本明細
書で説明された任意の用語の例を含む、本明細書中の任意の箇所における例の使用は、単
なる例示であって、本開示又は任意の例示の用語についての範囲及び意味をさらに限定す
るものではない。同様に、本開示は、本明細書に記載される種々の実施形態に限定されな
い。
当業者は、以下に示されていない他の形態及び方法にて本発明が実施されてもよいこと
を理解するであろう。第1又は第2のような関係性を表す用語の使用は、それがある場合
、ある物又は動作を別のものと区別することのみを目的として使用され、このような物又
は動作の間における実際の関係性又は順序を必ずしも要求又は暗示するものではない。
本明細書において、用語は「接続された(connected)」「結合された(coupled)」、
又はそれらの任意の異形は、システムのモジュールに対して適用する場合には、直接的又
は間接的のいずれかでの、2つ以上の要素間における、任意の接続又は結合を意味する。
該要素間の接続の結合は、物理的、論理的、又はそれらの任意の組み合わせであり得る。
文脈上許される箇所では、上述の詳細な説明において単数又は複数を使用している単語は
、それぞれ複数又は単数もまた含んでいてもよい。2つ以上の項目の列挙に関する単語「
又は(or)」は、以下の単語解釈の全てを包含する:該列挙内の任意の項目、該列挙内の
全ての項目、及び該列挙内の項目の任意の組み合わせ。シーケンスに関する単語「部分(
portion)」又は「部分化された(portioned)」は、任意のサブセット又はシーケンス全
体を含む。
本明細書における「種々の実施形態」又は「いくつかの実施形態」の参照は、実施形態
に関連して記載される特定の特徴、構造又は特性が、本開示の少なくとも1つの実施形態
に含まれることを意味する。それらに参照される実施形態及び代替実施形態(例えば、「
他の実施形態」と称される)は、互いに対して相互に排他的でなくてもよい。さらに、記
載される種々の特徴は、いくつかの実施形態には示されているが他の実施形態には示され
ていないものであってもよい。同様に、記載される種々の要件は、いくつかの実施形態の
要件であるが他の実施形態の要件でないものであってもよい。
上記説明及び図面は例示であって、開示された厳密な形態まで本発明を限定するものと
して解釈されるべきではない。関連技術の当業者は、多くの修正及び変形が上記開示に照
らして可能であることを理解し得る。多数の具体的な詳細が、本開示の完全な理解を提供
するために記載されている。しかしながら、特定の例では、周知又は従来についての詳細
は、該説明を不明瞭にすることを避けるため、記載されていない。本開示における1つの
(one)実施形態又はある(an)実施形態への参照は、必ずしもそうではないが、同一の
実施形態への参照であり得る。そして、そのような参照は、実施形態のうち少なくとも1
つを意味している。
以上要約すると、本開示は、以下を含む。
1.金融取引におけるパスコード入力の認可されないキャプチャを防止するようにモバイ
ルデバイスを動作させる方法であって、
前記モバイルデバイスに結合されたカードリーダがユーザからのペイメントカードのス
ワイプを検出した際に、前記金融取引を開始する工程と、
ユーザがパスコードをインプットするためのパスコード入力インタフェースを、前記モ
バイルデバイスのタッチスクリーン上に提示する工程と、
前記パスコード入力インタフェースを提示している間に、前記タッチスクリーンからタ
ッチイベントを受信する工程と、
前記ユーザによるタッチが前記タッチスクリーン上に生じた場所を示す位置である前記
タッチイベントの位置を暗号化する工程と、
前記タッチイベントの前記暗号化された位置に少なくとも部分的に基づいて前記パスコ
ードを解読することにより外部システムに前記ユーザを認証させるため、前記暗号化され
た位置を前記外部システムへとネットワーク越しに伝送する工程と
を備える、方法。
2.前記タッチイベントのメタデータ入力を、前記タッチイベントの前記位置と共に暗号
化する工程をさらに備える、第1項に記載の方法。
3.前記タッチイベントの前記位置を暗号化する前記工程が、非対称暗号方式を用いるこ
とを備える、第1項に記載の方法。
4.前記タッチイベントの前記位置を暗号化する前記工程が、別のタッチイベントの位置
の暗号化と合わせて実行される、第1項に記載の方法。
5.前記タッチスクリーンの画面ジオメトリを示すデータを前記外部システムに伝送する
工程をさらに備える、第1項に記載の方法。
6.金融取引におけるパスコード入力の認可されないキャプチャを防止するように電子デ
バイスを動作させる方法であって、
ユーザにパスコード入力をインプットさせるために、パスコード入力インタフェースを
前記電子デバイス上に提示する工程と、
前記電子デバイスのセンサからインプットイベントを受信する工程であって、前記イン
プットイベントが、前記ユーザによる前記パスコード入力の少なくとも一部を示すと共に
、少なくとも前記センサにより測定されるセンサ値を含んでいる、工程と、
前記インプットイベントの前記センサ値を暗号化する工程と、
前記暗号化されたセンサ値に少なくとも部分的に基づいて前記パスコード入力を外部シ
ステムに解読させるため、前記暗号化されたセンサ値を前記外部システムへとネットワー
ク越しに伝送する工程と
を備える、方法。
7.前記パスコード入力インタフェースのインタフェース構成を前記外部システムへと伝
送する工程であって、前記インタフェース構成が前記センサ入力に係るセンサ値と前記パ
スコード入力を編成するための文字のセットとのマッピングを指定する工程をさらに備え
ている、第6項に記載の方法。
8.前記インタフェース構成が、前記電子デバイスのタッチスクリーン上に提示される前
記パスコード入力インタフェースのジオメトリ特性を含んでいる、第7項に記載の方法。
9.前記インタフェース構成を伝送する前に、前記インタフェース構成を暗号化する工程
をさらに備える、第7項に記載の方法。
10.前記パスコード入力インタフェース用のランダム化された配置を生成する工程であ
って、前記ランダム化された配置が前記インタフェース構成の一部として記録される工程
をさらに備える、第7項に記載の方法。
11.前記電子デバイスのディスプレイデバイスの画面ジオメトリを前記外部システムに
伝送する工程であって、前記パスコード入力インタフェースが前記ディスプレイデバイス
に表示される工程をさらに備える、第6項に記載の方法。
12.前記インプットイベントの前記センサ値を暗号化する前記工程が、ホワイトボック
ス暗号技法を使用することを備える、第6項に記載の方法。
13.前記インプットイベントの前記センサ値を暗号化する前記工程が、非対称暗号技法
を使用することを備える、第6項に記載の方法。
14.センサインプットに少なくとも部分的に基づいてパスコードを解読するためのコン
ピューティングシステムを動作させる方法であって、
暗号化されたセンサインプット値を電子デバイスから受信する工程であって、前記暗号
化されたセンサインプット値が前記電子デバイス上のパスコード入力インタフェースとの
ユーザ対話に対応する工程と、
前記ユーザインプットイベントを決定するために前記暗号化されたセンサインプット値
を復号化する工程と、
センサインプット値と前記パスコードを編成するための文字のセットとのマッピングを
指定する前記パスコード入力インタフェースのインタフェース構成にアクセスする工程と
前記ユーザインプットイベント及び前記インタフェース構成に少なくとも部分的に基づ
いてユーザによるパスコード入力を解読する工程と
を備える、方法。
15.前記パスコード入力インタフェースと対話するユーザとのセッションのために特化
して前記インタフェース構成を生成する工程をさらに備える、第14項に記載の方法。
16.前記インタフェース構成を生成する前記工程が、前記インタフェース構成を対話型
ボタンのランダム化された配置として生成することを含んでおり、前記インタフェース構
成にアクセスする前記工程が、前記対話型ボタンの位置にアクセスすることを含んでいる
、第15項に記載の方法。
17.前記電子デバイス上に前記パスコード入力インタフェースを表示することを可能に
するために、前記インタフェース構成を前記電子デバイスに伝送する工程をさらに備える
、第16項に記載の方法。
18.前記インタフェース構成にアクセスする前記工程が、暗号化された構成を前記電子
デバイスから受信することと、前記暗号化された構成を前記インタフェース構成として解
読することとを含んでいる、第14項に記載の方法。
19.コンピュータ記憶媒体上に符号化されたコンピュータプログラム製品であって、プ
ロセッサにより実行された際に動作可能であり、前記コンピュータプログラム製品が、
ユーザがパスコード入力をインプットするためのパスコード入力インタフェースを電子
デバイス上に提示するように、
前記電子デバイスのセンサからインプットイベントを受信するように、このとき、前記
インプットイベントが、前記ユーザによる前記パスコード入力の少なくとも一部を示すと
共に、少なくとも前記センサにより測定されるセンサ値を含んでいるように、
前記インプットイベントの前記センサ値を暗号化するように、及び、
前記暗号化されたセンサ値に少なくとも部分的に基づいて前記パスコード入力を外部シ
ステムに解読させるため、前記暗号化されたセンサ値を前記外部システムへとネットワー
ク越しに伝送するように
動作可能である、コンピュータプログラム製品。
20.メモリと、
ユーザがパスコード入力をインプットさせるためのパスコード入力インタフェースを提
示する電子デバイスと、
センサインプットシーケンスをメモリ内に格納するセンサであって、前記センサインプ
ットシーケンスが、前記パスコード入力インタフェースとのユーザ対話を示す、センサと

前記センサインプットシーケンスのセンサ入力を暗号化して、前記ユーザによる前記パ
スコード入力を解読するために前記暗号化されたセンサ入力をリモートシステムへとネッ
トワーク越しに伝送するプロセッサと
を備える、電子デバイス。
21.電子デバイスからセンサインプットシーケンスを受信するためのネットワークイン
タフェースであって、前記センサインプットシーケンスは、電子デバイス上のパスコード
入力インタフェースとのユーザ対話を示す、ネットワークインタフェースと、
前記センサインプットシーケンスの暗号化されたセンサ入力を復号化するセキュリティ
コンポーネントと、
前記復号化されたセンサ入力と前記パスコード入力インタフェースのジオメトリを示す
データとに少なくとも基づいて、ユーザによるパスコード入力を解読するように構成され
るプロセッサと
を備える、コンピュータサーバシステム。

Claims (21)

  1. 金融取引におけるパスコード入力の認可されないキャプチャを防止するようにモバイル
    デバイスを動作させる方法であって、
    前記モバイルデバイスに結合されたカードリーダがユーザからのペイメントカードのス
    ワイプを検出した際に、前記金融取引を開始する工程と、
    ユーザがパスコードをインプットするためのパスコード入力インタフェースを、前記モ
    バイルデバイスのタッチスクリーン上に提示する工程と、
    前記パスコード入力インタフェースを提示している間に、前記タッチスクリーンからタ
    ッチイベントを受信する工程と、
    前記ユーザによるタッチが前記タッチスクリーン上に生じた場所を示す位置である前記
    タッチイベントの位置を暗号化する工程と、
    前記タッチイベントの前記暗号化された位置に少なくとも部分的に基づいて前記パスコ
    ードを解読することにより外部システムに前記ユーザを認証させるため、前記暗号化され
    た位置を前記外部システムへとネットワーク越しに伝送する工程と
    を備える、方法。
  2. 前記タッチイベントのメタデータ入力を、前記タッチイベントの前記位置と共に暗号化
    する工程をさらに備える、請求項1に記載の方法。
  3. 前記タッチイベントの前記位置を暗号化する前記工程が、非対称暗号方式を用いること
    を備える、請求項1に記載の方法。
  4. 前記タッチイベントの前記位置を暗号化する前記工程が、別のタッチイベントの位置の
    暗号化と合わせて実行される、請求項1に記載の方法。
  5. 前記タッチスクリーンの画面ジオメトリを示すデータを前記外部システムに伝送する工
    程をさらに備える、請求項1に記載の方法。
  6. 金融取引におけるパスコード入力の認可されないキャプチャを防止するように電子デバ
    イスを動作させる方法であって、
    ユーザにパスコード入力をインプットさせるために、パスコード入力インタフェースを
    前記電子デバイス上に提示する工程と、
    前記電子デバイスのセンサからインプットイベントを受信する工程であって、前記イン
    プットイベントが、前記ユーザによる前記パスコード入力の少なくとも一部を示すと共に
    、少なくとも前記センサにより測定されるセンサ値を含んでいる、工程と、
    前記インプットイベントの前記センサ値を暗号化する工程と、
    前記暗号化されたセンサ値に少なくとも部分的に基づいて前記パスコード入力を外部シ
    ステムに解読させるため、前記暗号化されたセンサ値を前記外部システムへとネットワー
    ク越しに伝送する工程と
    を備える、方法。
  7. 前記パスコード入力インタフェースのインタフェース構成を前記外部システムへと伝送
    する工程であって、前記インタフェース構成が前記センサからのセンサ値と前記パスコー
    ド入力を編成するための文字のセットとのマッピングを指定する工程をさらに備えている
    、請求項6に記載の方法。
  8. 前記インタフェース構成が、前記電子デバイスのタッチスクリーン上に提示される前記
    パスコード入力インタフェースのジオメトリ特性を含んでいる、請求項7に記載の方法。
  9. 前記インタフェース構成を伝送する前に、前記インタフェース構成を暗号化する工程を
    さらに備える、請求項7に記載の方法。
  10. 前記パスコード入力インタフェース用のランダム化された配置を生成する工程であって
    、前記ランダム化された配置が前記インタフェース構成の一部として記録される工程をさ
    らに備える、請求項7に記載の方法。
  11. 前記電子デバイスのディスプレイデバイスの画面ジオメトリを前記外部システムに伝送
    する工程であって、前記パスコード入力インタフェースが前記ディスプレイデバイスに表
    示される工程をさらに備える、請求項6に記載の方法。
  12. 前記インプットイベントの前記センサ値を暗号化する前記工程が、ホワイトボックス暗
    号技法を使用することを備える、請求項6に記載の方法。
  13. 前記インプットイベントの前記センサ値を暗号化する前記工程が、非対称暗号技法を使
    用することを備える、請求項6に記載の方法。
  14. センサインプットに少なくとも部分的に基づいてパスコードを解読するためのコンピュ
    ーティングシステムを動作させる方法であって、
    暗号化されたセンサインプット値を電子デバイスから受信する工程であって、前記暗号
    化されたセンサインプット値が前記電子デバイス上のパスコード入力インタフェースとの
    ユーザ対話に対応する工程と、
    前記ユーザインプットイベントを決定するために前記暗号化されたセンサインプット値
    を復号化する工程と、
    センサインプット値と前記パスコードを編成するための文字のセットとのマッピングを
    指定する前記パスコード入力インタフェースのインタフェース構成にアクセスする工程と
    前記ユーザインプットイベント及び前記インタフェース構成に少なくとも部分的に基づ
    いてユーザによるパスコード入力を解読する工程と
    を備える、方法。
  15. 前記パスコード入力インタフェースと対話するユーザとのセッションのために特化して
    前記インタフェース構成を生成する工程をさらに備える、請求項14に記載の方法。
  16. 前記インタフェース構成を生成する前記工程が、前記インタフェース構成を対話型ボタ
    ンのランダム化された配置として生成することを含んでおり、前記インタフェース構成に
    アクセスする前記工程が、前記対話型ボタンの位置にアクセスすることを含んでいる、請
    求項15に記載の方法。
  17. 前記電子デバイス上に前記パスコード入力インタフェースを表示することを可能にする
    ために、前記インタフェース構成を前記電子デバイスに伝送する工程をさらに備える、請
    求項16に記載の方法。
  18. 前記インタフェース構成にアクセスする前記工程が、暗号化された構成を前記電子デバ
    イスから受信することと、前記暗号化された構成を前記インタフェース構成として解読す
    ることとを含んでいる、請求項14に記載の方法。
  19. コンピュータ記憶媒体上に符号化されたコンピュータプログラム製品であって、プロセ
    ッサにより実行された際に動作可能であり、前記コンピュータプログラム製品が、
    ユーザがパスコード入力をインプットするためのパスコード入力インタフェースを電子
    デバイス上に提示するように、
    前記電子デバイスのセンサからインプットイベントを受信するように、このとき、前記
    インプットイベントが、前記ユーザによる前記パスコード入力の少なくとも一部を示すと
    共に、少なくとも前記センサにより測定されるセンサ値を含んでいるように、
    前記インプットイベントの前記センサ値を暗号化するように、及び、
    前記暗号化されたセンサ値に少なくとも部分的に基づいて前記パスコード入力を外部シ
    ステムに解読させるため、前記暗号化されたセンサ値を前記外部システムへとネットワー
    ク越しに伝送するように
    動作可能である、コンピュータプログラム製品。
  20. メモリと、
    ユーザがパスコード入力をインプットするためのパスコード入力インタフェースを提示
    する電子デバイスと、
    センサインプットシーケンスをメモリ内に格納するセンサであって、前記センサインプ
    ットシーケンスが、前記パスコード入力インタフェースとのユーザ対話を示す、センサと

    前記センサインプットシーケンスのセンサ入力を暗号化して、前記ユーザによる前記パ
    スコード入力を解読するために前記暗号化されたセンサ入力をリモートシステムへとネッ
    トワーク越しに伝送するプロセッサと
    を備える、電子デバイス。
  21. 電子デバイスからセンサインプットシーケンスを受信するためのネットワークインタフ
    ェースであって、前記センサインプットシーケンスは、電子デバイス上のパスコード入力
    インタフェースとのユーザ対話を示す、ネットワークインタフェースと、
    前記センサインプットシーケンスの暗号化されたセンサ入力を復号化するセキュリティ
    コンポーネントと、
    前記復号化されたセンサ入力と前記パスコード入力インタフェースのジオメトリを示す
    データとに少なくとも基づいて、ユーザによるパスコード入力を解読するように構成され
    るプロセッサと
    を備える、コンピュータサーバシステム。
JP2018101693A 2013-07-28 2018-05-28 パスコード入力セキュリティのための生のセンサインプットの暗号化 Pending JP2018157585A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361859253P 2013-07-28 2013-07-28
US61/859,253 2013-07-28
US14/055,838 US20140324708A1 (en) 2012-06-12 2013-10-16 Raw sensor input encryption for passcode entry security
US14/055,838 2013-10-16

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016531736A Division JP2016530802A (ja) 2013-07-28 2014-07-16 パスコード入力セキュリティのための生のセンサインプットの暗号化

Publications (1)

Publication Number Publication Date
JP2018157585A true JP2018157585A (ja) 2018-10-04

Family

ID=52432331

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016531736A Pending JP2016530802A (ja) 2013-07-28 2014-07-16 パスコード入力セキュリティのための生のセンサインプットの暗号化
JP2018101693A Pending JP2018157585A (ja) 2013-07-28 2018-05-28 パスコード入力セキュリティのための生のセンサインプットの暗号化

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016531736A Pending JP2016530802A (ja) 2013-07-28 2014-07-16 パスコード入力セキュリティのための生のセンサインプットの暗号化

Country Status (5)

Country Link
EP (1) EP3028205A4 (ja)
JP (2) JP2016530802A (ja)
AU (5) AU2014296635A1 (ja)
CA (1) CA2919655A1 (ja)
WO (1) WO2015017130A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10515363B2 (en) 2012-06-12 2019-12-24 Square, Inc. Software PIN entry
US9773240B1 (en) 2013-09-13 2017-09-26 Square, Inc. Fake sensor input for passcode entry security
US9558491B2 (en) 2013-09-30 2017-01-31 Square, Inc. Scrambling passcode entry interface
US9613356B2 (en) 2013-09-30 2017-04-04 Square, Inc. Secure passcode entry user interface
US9928501B1 (en) 2013-10-09 2018-03-27 Square, Inc. Secure passcode entry docking station
CN108460299A (zh) * 2017-02-20 2018-08-28 江苏蓝深远望科技股份有限公司 一种基于非对称算法的键盘加密系统及键盘加密方法
CN107172005A (zh) * 2017-02-20 2017-09-15 江苏蓝深远望科技股份有限公司 一种基于非对称算法的高安全性电传码加密方法
US20190065726A1 (en) * 2017-08-30 2019-02-28 Verifone, Inc. Systems, methods and devices for secure input processing
JP7246695B2 (ja) * 2019-01-10 2023-03-28 株式会社ネクステッジテクノロジー 施解錠制御装置、施解錠制御方法及びプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6549194B1 (en) * 1999-10-01 2003-04-15 Hewlett-Packard Development Company, L.P. Method for secure pin entry on touch screen display
US9916581B2 (en) * 2002-02-05 2018-03-13 Square, Inc. Back end of payment system associated with financial transactions using card readers coupled to mobile devices
US7992007B2 (en) * 2002-02-05 2011-08-02 Cardinalcommerce Corporation Dynamic pin pad for credit/debit/ other electronic transactions
JP3976201B2 (ja) * 2002-02-15 2007-09-12 サイエンスパーク株式会社 ネットワークによる入力装置の入力特徴を用いた個人認証方法、そのプログラム及びプログラムの記録媒体
JP2004102460A (ja) * 2002-09-06 2004-04-02 Hitachi Software Eng Co Ltd 個人認証方法及びプログラム
US7596701B2 (en) * 2004-07-07 2009-09-29 Oracle International Corporation Online data encryption and decryption
US9123042B2 (en) * 2006-10-17 2015-09-01 Verifone, Inc. Pin block replacement
US20160210491A9 (en) * 2008-09-30 2016-07-21 Apple Inc. Systems and methods for secure wireless financial transactions
EP2396756A4 (en) * 2009-02-10 2012-07-25 4361423 Canada Inc METHOD AND SYSTEMS FOR IMPLEMENTING TRADE ACTIONS THROUGH A COMMUNICATION DEVICE
US7896248B2 (en) * 2009-06-10 2011-03-01 Rem Holdings 3, Llc Card reader device and method of use
MX2012004397A (es) * 2009-10-13 2012-08-15 Square Inc Sistemas y metodos para transaccion financiera a traves de lector de tarjeta miniaturizado.
KR101340746B1 (ko) 2011-04-18 2013-12-12 주식회사 팬택 전자 기기, 전자 기기의 사용자 입력 데이터의 보안 방법 및 장치

Also Published As

Publication number Publication date
AU2014296635A1 (en) 2016-02-11
CA2919655A1 (en) 2015-02-05
AU2022204797B2 (en) 2024-02-08
AU2018201016A1 (en) 2018-03-01
EP3028205A1 (en) 2016-06-08
JP2016530802A (ja) 2016-09-29
AU2024202880A1 (en) 2024-05-23
WO2015017130A1 (en) 2015-02-05
EP3028205A4 (en) 2017-01-11
AU2022204797A1 (en) 2022-07-21
AU2020202014A1 (en) 2020-04-09

Similar Documents

Publication Publication Date Title
AU2022204797B2 (en) Raw sensor input encryption for passcode entry security
US20140324708A1 (en) Raw sensor input encryption for passcode entry security
US10540657B2 (en) Secure passcode entry user interface
US9558491B2 (en) Scrambling passcode entry interface
CN106255976B (zh) 机密数据管理方法及装置以及安全认证方法及系统
JP6887956B2 (ja) 安全なバイオメトリックデータのキャプチャ、処理及び管理
KR101508320B1 (ko) Nfc 카드를 이용한 otp 발급 장치, otp 생성 장치, 및 이를 이용한 방법
EP3183681B1 (en) Accessing a secured software application
US9773240B1 (en) Fake sensor input for passcode entry security
JP5357783B2 (ja) 確認済取引データ生成のための方法及び装置
US8874931B2 (en) System and method for securing a user interface
CN101529366A (zh) 可信用户界面对象的标识和可视化
KR20130125316A (ko) 패스워드의 보안 입력 및 처리 장치, 시스템 및 방법
TW201539247A (zh) 密碼輸入與確認方法及其系統
US9928501B1 (en) Secure passcode entry docking station
WO2015043444A1 (zh) 安全模式提示方法和实现该方法的移动设备
KR20140110637A (ko) 데이터 보호 방법 및 이를 구현하는 전자 장치

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180607

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190607

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200107