JP2018519562A - Method and system for transaction security - Google Patents
Method and system for transaction security Download PDFInfo
- Publication number
- JP2018519562A JP2018519562A JP2017554348A JP2017554348A JP2018519562A JP 2018519562 A JP2018519562 A JP 2018519562A JP 2017554348 A JP2017554348 A JP 2017554348A JP 2017554348 A JP2017554348 A JP 2017554348A JP 2018519562 A JP2018519562 A JP 2018519562A
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- verification code
- user
- data
- communication channel
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/385—Payment protocols; Details thereof using an alias or single-use codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, 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/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/42—Confirmation, e.g. check or permission by the legal debtor of payment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Abstract
取引は、第1の通信チャンネルを介して取引サーバに送信される1つ以上のメッセージを含む。各取引メッセージは、重要取引データの少なくとも1つの項目を含む。取引を安全に処理する方法は、第1の取引メッセージを第1の通信チャンネルを介して取引サーバに送信するステップ(606)を含む。その後、取引検証コードを生成するために重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータが生成される(608)。ワンタイムセキュリティデータ(402、403)は、第1の通信チャンネルとは機能的に区別される第2の通信チャンネルを介してユーザーに送信される。取引サーバは、第2の通信チャンネルを介したワンタイムセキュリティデータの受信に応答してユーザーによって提供された第1の取引検証コードを含む第2の取引メッセージを第1の通信チャンネルを介して受信する。第2の取引検証コードは、受信された第1の取引メッセージ内に含まれた重要取引データに基づいてワンタイムセキュリティデータによって定義された動作を実行することによって生成され、第1の取引検証コードは、第2の取引検証コードと比較される(616)。第1の取引検証コードと第2の取引検証コードとの間の不一致の場合、取引要求は拒否される(622)。 The transaction includes one or more messages that are transmitted to the transaction server via the first communication channel. Each transaction message includes at least one item of important transaction data. A method for securely processing a transaction includes transmitting (606) a first transaction message to a transaction server via a first communication channel. Thereafter, one-time security data is generated that defines one or more actions to be performed based on the key transaction data to generate a transaction verification code (608). The one-time security data (402, 403) is transmitted to the user via a second communication channel that is functionally distinct from the first communication channel. The transaction server receives a second transaction message over the first communication channel that includes a first transaction verification code provided by the user in response to receiving the one-time security data over the second communication channel. To do. The second transaction verification code is generated by performing an action defined by the one-time security data based on the key transaction data included in the received first transaction message, and the first transaction verification code Is compared (616) with a second transaction verification code. If there is a mismatch between the first transaction verification code and the second transaction verification code, the transaction request is rejected (622).
Description
本発明は、情報セキュリティに関し、より詳細には、インターネットを介して交換される金融取引細目を含むが、これに限定されない、通信ネットワークを介して交換される重要なデータのセキュリティを強化することに関する。 The present invention relates to information security, and more particularly to enhancing the security of important data exchanged over a communications network, including but not limited to financial transaction details exchanged over the Internet. .
2要素認証(Two Factor Authentication:TFA)は、一般的にインターネットを含んだ通信ネットワークを介して実行される通信を認証するために使用される。基本認証において、要求側エンティティ(例えば、ユーザー)は、第2のエンティティ(例えば、銀行のようなサービスプロバイダー)に自分の身元に対する一部の証拠を提示する。TFAの使用は、事前に承認された要素などの有限リストの中から2つの異なるタイプの証拠、または要素を要求することによって、要求側エンティティがその身元に対する偽りの証拠を提示する可能性を減少させる。通常的に、TFAは、3つの可能な要素、すなわち、 要求者が知っているもの(例えば、PINまたはパスワード)、要求者が持っているもの(例えば、ATMカードまたは登録された携帯電話)、及びユーザー‘自体である’もの(例えば、指紋または他のバイオメトリック情報)、のうちの2つを提供することを要求側エンティティに要求する。 Two-factor authentication (TFA) is generally used to authenticate communications performed via a communication network including the Internet. In basic authentication, a requesting entity (eg, a user) presents some evidence of his identity to a second entity (eg, a service provider such as a bank). The use of TFA reduces the chance that the requesting entity will present false evidence for its identity by requesting two different types of evidence, or elements, from a finite list, such as pre-approved elements Let Typically, a TFA has three possible elements: what the requester knows (eg PIN or password), what the requester has (eg ATM card or registered mobile phone), And requesting the requesting entity to provide two of the user's own (eg, fingerprint or other biometric information).
TFAの1つの一般的なカテゴリーは、一般に、SMSメッセージング、自動電話通話、またはユーザーのスマートフォン上で実行する専用アプリケーションを使用して、ユーザーの携帯電話をトークン(token)デバイスに変換する。典型的な例は、ユーザーがパーソナルコンピュータまたは他のインターネット可能デバイス上で個人識別情報(例えば、ユーザー名及びパスワード)を使用して銀行のオンラインポータルに署名することができる、インターネットバンキングシステムである。この識別情報は、TFAスキーム(scheme)内の知識因子である。ユーザーが携帯電話番号を自分のオンラインバンキングサービスに事前に登録した場合には、携帯電話が所有因子として機能することができる。一部のこのようなシステムによれば、ユーザーがインターネットバンキングを介して取引(例えば、資金振込み、または代金支払い)の実行を要求するとき、ランダムに生成された検証コードが登録された携帯電話番号にSMSを介して送信され、取引の完了を確認し承認するために、インターネットバンキングインターフェースに入力しなければならない。 One general category of TFA generally converts a user's mobile phone to a token device using SMS messaging, automated phone calls, or a dedicated application running on the user's smartphone. A typical example is an internet banking system that allows a user to sign a bank's online portal using personally identifiable information (eg, username and password) on a personal computer or other internet-enabled device. This identification information is a knowledge factor in the TFA scheme. If the user registers the mobile phone number with his online banking service in advance, the mobile phone can act as an ownership factor. According to some such systems, a mobile phone number with a randomly generated verification code registered when a user requests a transaction (eg, fund transfer or payment) via internet banking. In order to confirm and approve the transaction completion, it must be entered into the internet banking interface.
前記の実施例において、SMSメッセージングは、ユーザーとインターネットバンキングポータルとの間の主通信チャンネルと独立的に検証トークンを送信するためのバックチャンネルとして使用される。従って、不正ユーザーは、不正取引を完了するために、真正なユーザーの識別情報だけではなく、真正なユーザーの携帯電話の所有を必要とする。しかしながら、このようなTFAの方法は、主通信チャンネル自体が損傷される攻撃に脆弱であり得る。特に、このような認証技術は、中間子(man−in−the−middle:MIM)攻撃及びマン−イン−ザ−ブラウザ(man−in−the−browser:MIB)攻撃に脆弱であり得る。これらの攻撃が動作するメカニズムが図1a、図1b及び図2に示されている。 In the above embodiment, SMS messaging is used as a back channel to send a verification token independent of the main communication channel between the user and the internet banking portal. Therefore, an unauthorized user needs not only the authentic user identification information but also the authentic user's mobile phone to complete the unauthorized transaction. However, such a TFA method may be vulnerable to attacks that damage the main communication channel itself. In particular, such authentication techniques may be vulnerable to man-in-the-middle (MIM) attacks and man-in-the-browser (MIB) attacks. The mechanism by which these attacks operate is shown in FIGS. 1a, 1b and 2.
図1aのブロック図100に示されたように、ユーザー102は、インターネット108を介してインターネットバンキングポータルのような安全なサービスポータル(secure service portal:SSP)106にアクセスするため、例えば、デスクトップPC104を使用する。ウェブブラウザソフトウェア110は、PC104上で実行され、ユーザーにグラフィックインターフェースを提供する。ウェブブラウザ110は、一般に、1つ以上の通信ネットワークを介して他のデバイスと情報を交換するために必要な様々な通信プロトコルを実現するネットワークインターフェースソフトウェア(プロトコルスタック)と共に、ローカルネットワークに接続するために必要な物理ハードウェアの両方を含むネットワークインターフェース112を介してインターネット108にアクセスする。
As shown in the block diagram 100 of FIG. 1 a, a
しかしながら、シナリオ100において、ユーザーのPC104が、例えば、一部形態のマルウェアによって損傷され、ブラウザ110がインターネットバンキングポータル106に直接接続されず、その代わり不正MIMサーバ114に接続されている。これは、インターネットバンキングポータル106の真正なホストネームが不正サーバ114のIPアドレスにマッピングされるよう、ユーザーが不正サイト114へのリダイレクトリンクをクリックするようにユーザーをトリックすることによって、またはドメインネームサービス(domain name service:DNS)ザブシステムのようなPC104のネットワークインターフェース構成を損傷させることによって達成され得る。
However, in
不正サーバ114は、ポータル106によって提供されたインターネットバンキングウェブサイトの近接した模倣、または正確なコピーであるウェブサイトを提供する。通常的に、SSL TLS(すなわち、HTTPSプロトコル)がサーバを認証し、すべての通信を暗号化するために使用されるように、ポータル106との安全な接続が要求される。その結果、ユーザー102は、不正サーバ114によって提供されたデジタル証明書と明らかなドメイン、すなわち、ユーザーのバンキングサービスプロバイダーのものとの間の不一致に関する警告を受信することができる。しかし、多くのユーザーは、このような警告を無視したり、見落としたりすることがある。
The
このセキュリティレベルさえ、例えば、図1bのブロック図120に示されたMIB攻撃によって損傷され得る。MIB攻撃において、悪意のあるソフトウェアアプリケーション122は、ユーザーのPC104に侵入し、それ自体がブラウザインターフェース11とネットワークインターフェース112との間に介在される。MIBマルウェアは、ブラウザインターフェース110に、またはそれから伝送されたすべてのデータに直接アクセスし、これによって、PC104のネットワークインターフェース112とインターネットバンキングポータル106との間で実行される任意の暗号化及び認証とは独立的に、ユーザー102とインターネットバンキングポータル106との間で通信される情報を読み取り及び/または修正することができる。
Even this security level can be damaged, for example, by the MIB attack shown in block diagram 120 of FIG. 1b. In the MIB attack, the
図2は、図1a及び図1bに示されたMIMまたはMIBシナリオにおける攻撃メカニズムのタイムライン200を示す。示された例において、ユーザーは、先ず、振込金額‘a’及び受取人口座番号‘A’を含むことができる取引細目を入力する202。取引要求が送信されるが204、MIM/MIB114/122が傍受する(intercept)。不正サービスは、要求を修正し、例えば、取引金額をより高い値‘b’に、受取人口座を不正口座番号‘B’に変更する。このような修正された振込み要求は、インターネットバンキングポータル106を介して受信され、取引細目が銀行サーバによって検証される208。その後、インターネットバンキングポータル106は、不正金額‘b’及び受取人口座‘B’を含む取引細目を含む確認ページを返送する210。これらは不正ソフトウェアによって修正され、ユーザー要求金額‘a’及び受取人口座‘A’を再挿入し、ブラウザ110に送信され212、そのディスプレイを更新する214。この時点で、ユーザーは、インターネットバンキングポータル106に実際に要求された振替が最初に入力された取引要求とは異なっていることに気付かない。
FIG. 2 shows an
同時に、銀行サーバは、検証コードを生成し216、そのコードをSMSメッセージングチャンネルのようなバックチャンネル218を介してユーザーの携帯電話に送信する。ユーザーは、検証コードを受信し220、ウェブブラウザ110によって表示された確認ページに検証コードを入力する222。その後、確認コードが送信され224、MIM/MIB114/122マルウェアによって226上に伝えられ、銀行サーバによって受信され、有効性検証される228。これは、口座‘B’への不正取引の金額‘b’が有効性検証及び承認されるようにし、その後、インターネットバンキングポータル106は、さらなる取引確認ページ230を提供する。マルウェア114/122は、不正取引を隠すために、再び確認ページ232を修正することができる。実際に、精巧なマルウェア114/112は、資金が不正者の口座‘B’から引き出されるか、または振込まされ得る時間まで不正取引の発見を遅延させるために、ユーザーに自分のインターネットバンキングセッションにわたって続いて一貫した偽り情報を提示するであろう。
At the same time, the bank server generates a
前記の実施例から理解されるように、損傷された主通信チャンネルに基づいたMIM、MIB、及び他の攻撃に関連する危険を阻止するか、または少なくとも緩和させることができる、改善された取引セキュリティ方法及びシステムが必要である。本発明は、このような改善を提供することに関する。 As can be appreciated from the foregoing embodiments, improved transaction security that can prevent or at least mitigate the risks associated with MIM, MIB, and other attacks based on a damaged primary communication channel What is needed is a method and system. The present invention is directed to providing such improvements.
一つの態様において、本発明は、第1の通信チャンネルを介して取引サーバに送信され、重要取引データの少なくとも1つの項目を含む1つ以上の取引メッセージを含む取引を安全に処理する方法を提供し、前記の方法は:
重要取引データの項目を含むユーザーの取引要求に対応する第1の取引メッセージを第1の通信チャンネルを介して取引サーバによって受信するステップと;
第1の取引メッセージの受信に応答して取引検証コードを生成するために、重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを生成するステップと;
第1の通信チャンネルとは機能的に区別される第2の通信チャンネルを介してユーザーに前記ワンタイムセキュリティデータを送信するステップと、
第2の通信チャンネルを介した前記ワンタイムセキュリティデータの受信に応答してユーザーによって提供された第1の取引検証コードを含む第2の取引メッセージを第1の通信チャンネルを介して取引サーバによって受信するステップと;
受信された第1の取引メッセージ内に含まれた重要取引データに基づいてワンタイムセキュリティデータによって定義された動作を実行することによって第2の取引検証コードを生成するステップと;
第1の取引検証コードと第2の取引検証コードとを比較するステップと;及び
第1の取引検証コードと第2の取引検証コードとの間の不一致の場合、取引要求を拒否するステップと、を含む。
In one aspect, the present invention provides a method for securely processing a transaction that includes one or more transaction messages that are transmitted to a transaction server via a first communication channel and that include at least one item of significant transaction data. And the above method is:
Receiving a first transaction message corresponding to a user's transaction request including an item of significant transaction data by a transaction server via a first communication channel;
Generating one-time security data defining one or more actions to be performed based on the key transaction data to generate a transaction verification code in response to receiving the first transaction message;
Transmitting the one-time security data to a user via a second communication channel that is functionally distinct from the first communication channel;
A second transaction message including a first transaction verification code provided by a user in response to receiving the one-time security data via a second communication channel is received by the transaction server via the first communication channel. Step to do;
Generating a second transaction verification code by performing the operations defined by the one-time security data based on the key transaction data included in the received first transaction message;
Comparing the first transaction verification code with the second transaction verification code; and rejecting the transaction request if there is a mismatch between the first transaction verification code and the second transaction verification code; including.
有利には、本発明の実施形態は、検証コードが2つの遠隔位置で、例えば、エンドユーザー位置とセキュリティシステム位置から独立的に生成され得る技術的な配置を提供する。検証コードは、第1の通信チャンネルを介した伝送中に重要取引データの任意の修正が、独立的に生成された検証コードにおける不一致として検出され得るように、重要取引データの少なくとも1つの項目に依存する。第2のチャンネルは、検証コードを生成するために使用されるワンタイムセキュリティデータを送信するために使用される。その結果、本発明の実施形態によって提供されたセキュリティを損傷させることには、第1及び第2の通信チャンネルの両方の侵入が必要である。特に、1次取引メッセージが交換される第1のチャンネルを侵入したMIMまたはMIB攻撃者は、第2のチャンネルに対するアクセスの不在時、宛先銀行口座番号のような変更された重要取引データに対応する正確な検証コードを確実に生成することができない。 Advantageously, embodiments of the present invention provide a technical arrangement in which a verification code can be generated at two remote locations, eg, independently from an end user location and a security system location. The verification code is in at least one item of the key transaction data so that any modification of key transaction data can be detected as a mismatch in the independently generated verification code during transmission over the first communication channel. Dependent. The second channel is used to transmit one-time security data that is used to generate a verification code. As a result, breaching the security provided by embodiments of the present invention requires intrusion of both the first and second communication channels. In particular, an MIM or MIB attacker who has infiltrated the first channel with which the primary transaction message is exchanged responds to modified critical transaction data such as the destination bank account number in the absence of access to the second channel. An accurate verification code cannot be generated reliably.
本発明の実施形態によれば、ワンタイムセキュリティデータは、重要取引データに関連するシンボルセット内の各シンボルとコードセットからランダムに選択されるコード値との間のマッピングを含むセキュリティマトリックスを含み、これにより、重要取引データに基づいて実行される動作は、重要取引データの1つ以上のシンボルをマッピングによって定義された関連コード値に代替することによって置換コードを生成することを含む。セキュリティマトリックスは、取引の持続期間にのみ有効であり得る。 According to an embodiment of the present invention, the one-time security data includes a security matrix including a mapping between each symbol in the symbol set associated with the key transaction data and a code value randomly selected from the code set; Thereby, the operations performed based on the key transaction data include generating a replacement code by substituting one or more symbols of the key transaction data with an associated code value defined by the mapping. The security matrix may only be valid for the duration of the transaction.
セキュリティマトリックスマッピングの使用、例えば、コードセット(例えば、大文字、小文字、及び数字の完全なセット)から、シンボルの対応するランダム選択に対して、重要取引データを含むシンボル(例えば、重要データが口座番号である場合、数字‘0’〜‘9’)の使用は、有利には、ユーザーが技術的支援なしに検証コードを生成することができるようにし、これは単に、マトリックスを使用して口座番号の指定された数字を対応するコードシンボルにマッピングすることである。従って、セキュリティデータは、例えば、SMSメッセージングを介したセルラモバイルネットワークリンクを含む第2のチャンネルを介して送信され得る。 Use of security matrix mapping, for example from code sets (eg upper case, lower case, and complete set of numbers) to corresponding random selection of symbols, symbols containing important transaction data (eg important data account number The use of the numbers '0' to '9') advantageously allows the user to generate a verification code without technical assistance, which simply uses a matrix to account number Is to map the specified number of to the corresponding code symbol. Thus, the security data can be transmitted over a second channel including, for example, a cellular mobile network link via SMS messaging.
ワンタイムセキュリティデータは、取引検証コードを生成するために置換コードに対して実行される1つ以上の追加の動作を定義する補足的なセキュリティデータをさらに含むことができる。例えば、補足的なセキュリティデータによって定義される1つ以上の追加の動作は、取引検証コード内に含めるために、置換コードのシンボルなどのサブセットを選択することを含むことができる。補足的なセキュリティデータの一例は、検証コードを生成するために使用される口座番号の選択された数字を定義する仕様である。有利には、補足的なセキュリティデータの使用は、変更された重要取引データに対応する正確な検証コードを誘導するか、または推測しようとする際に、第1の通信チャンネルの侵入者に対するチャレンジレベルを高める。 The one-time security data can further include supplemental security data that defines one or more additional actions to be performed on the replacement code to generate a transaction verification code. For example, one or more additional actions defined by supplemental security data can include selecting a subset, such as a symbol of a replacement code, for inclusion in a transaction verification code. An example of supplemental security data is a specification that defines selected numbers of account numbers used to generate a verification code. Advantageously, the use of supplemental security data provides a challenge level for an intruder on the first communication channel when trying to derive or guess an accurate verification code corresponding to the changed critical transaction data. To increase.
本発明の実施形態において、取引検証コードは、重要取引データに基づいてワンタイムセキュリティデータによって定義された動作を実行することによって生成されるコードのハッシュ(hash)から誘導され得る。 In an embodiment of the present invention, the transaction verification code may be derived from a hash of code that is generated by performing the operations defined by the one-time security data based on the key transaction data.
いくつかの実施形態において、ワンタイムセキュリティデータは、ユーザーデバイス上で実行するソフトウェアアプリケーションによって処理するために、第2の通信チャンネルを介してユーザーデバイスに送信される。ソフトウェアアプリケーションは:
第2の通信チャンネルを介してワンタイムセキュリティデータを受信することと;
ユーザーから、ユーザーデバイスのユーザーインターフェースを介して、ワンタイムセキュリティデータに定義された動作によって取引セキュリティコードの生成のために必要な重要取引データを要求及び受信することと;
ユーザーから受信された重要取引データに基づいてワンタイムセキュリティデータによって定義された動作を実行することによって取引検証コードを生成することと;及び
生成された取引検証コードをユーザーデバイスのユーザーインターフェースを介してユーザーに提供することと、を実行するように構成される。
In some embodiments, the one-time security data is transmitted to the user device via the second communication channel for processing by a software application executing on the user device. Software applications are:
Receiving one-time security data via a second communication channel;
Requesting and receiving from the user important transaction data necessary for the generation of a transaction security code by means of an action defined in the one-time security data via the user interface of the user device;
Generating a transaction verification code by performing the actions defined by the one-time security data based on the key transaction data received from the user; and generating the generated transaction verification code via the user device user interface And providing to the user.
例えば、ソフトウェアアプリケーション[‘アプリ(app)’]は、スマートデバイス(例えば、ユーザーのスマートフォンまたはタブレット)上で実行するように構成され得る。その後、アプリは、機能的に区別された第2の通信チャンネルを介してセキュリティデータを受信し、ユーザーが重要取引データ(例えば、口座番号)を提供するように促し、取引検証コードを生成し、取引検証コードの人間が可読な表現を表示することができる。従って、アプリの使用から導出される特定の利点は、ユーザーによって入力された重要取引データに基づいて実行される動作が、より複雑になることができ、これにより、有利な技術支援なしにユーザーによって実際に実行され得るより限定された動作などのセットよりも潜在的により安全であることである。さらなる利点は、ヒューマンエラーの発生を減少させる可能性があることである。 For example, a software application ['app'] may be configured to run on a smart device (eg, a user's smartphone or tablet). The app then receives security data via a functionally differentiated second communication channel, prompts the user to provide key transaction data (eg, account number), generates a transaction verification code, A human readable representation of the transaction verification code can be displayed. Thus, certain benefits derived from the use of the app can make the actions performed based on the key transaction data entered by the user more complex, which allows the user to do without advantageous technical assistance. It is potentially safer than a set of more limited actions that can actually be performed. A further advantage is that it can reduce the occurrence of human errors.
別の態様において、本発明は、実行可能なプログラム命令を含むメモリストアに接続されるプロセッサを含むコンピュータサーバシステムを提供し、前記実行可能なプログラム命令は、実行されたとき、プロセッサが:
第1の通信チャンネルを介してユーザーにアクセス可能であり、ユーザーの取引要求に応答して取引を容易にするように構成された安全なサービスポータルを提供することと;
第1の通信チャンネルを介して、重要取引データの項目を含むユーザーの取引要求に対応する第1の取引メッセージを受信することに応答して、取引検証コードを生成するために重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを生成することと;
第1の通信チャンネルとは機能的に区別される第2の通信チャンネルを介してユーザーに送信されて来たワンタイムセキュリティデータの受信に応答して、ユーザーによって提供された第1の取引検証コードを含む第2の取引メッセージを第1の通信チャンネルを介して受信することと;
受信された第1の取引メッセージ内に含まれた重要取引データに基づいてワンタイムセキュリティデータによって定義された動作を実行することによって第2の取引検証コードを生成することと;
第1の取引検証コードと第2の取引検証コードとを比較することと;及び
第1の取引検証コードと第2の取引検証コードとの間の不一致の場合、取引要求を拒否することと、を実行するようにする。
In another aspect, the present invention provides a computer server system including a processor coupled to a memory store that includes executable program instructions, when the executable program instructions are executed by the processor:
Providing a secure service portal accessible to a user via a first communication channel and configured to facilitate transactions in response to a user transaction request;
Responsive to receiving a first transaction message corresponding to a user's transaction request that includes an item of important transaction data via a first communication channel, based on the important transaction data to generate a transaction verification code. Generating one-time security data defining one or more actions to be performed;
A first transaction verification code provided by the user in response to receiving one-time security data transmitted to the user via a second communication channel that is functionally distinct from the first communication channel; Receiving a second transaction message including: via a first communication channel;
Generating a second transaction verification code by performing the operations defined by the one-time security data based on the key transaction data included in the received first transaction message;
Comparing the first transaction verification code with the second transaction verification code; and rejecting the transaction request if there is a mismatch between the first transaction verification code and the second transaction verification code; To execute.
本発明のいくつかの実施形態において、前記実行可能なプログラム命令は、実行されたとき、プロセッサが:
ワンタイムセキュリティデータの生成のための要求を安全な通信チャンネルを介して、ワンタイムセキュリティデータを生成するように構成されたセキュリティシステムに送信することによってワンタイムセキュリティデータを生成するようにする。
In some embodiments of the invention, when the executable program instructions are executed, the processor:
One-time security data is generated by sending a request for generation of one-time security data over a secure communication channel to a security system configured to generate the one-time security data.
有利には、セキュリティデータを生成するために別途のセキュリティシステムを使用することは、各サーバシステムにおいて全体セキュリティ機能を複製する必要なく、関連するセキュリティサービスを複数のサーバシステムで使用することができるようにする。また、エンドユーザーは、単一のセキュリティシステムプロバイダーに登録することができ、関連するユーザーの好みを単一のセキュリティシステムプロバイダーに確立することができる。ユーザーの好みは、取引検証コードを生成するために重要取引データに基づいて実行される動作の態様を修正または決定する好みを含むことができる。この方式で、2つの取引が同一のセキュリティデータによって保護される場合であっても、異なるユーザーの好みの適用が異なる取引検証コードを導出することができるという点で、追加的なセキュリティレベルが実現され得る。 Advantageously, using a separate security system to generate security data allows the associated security services to be used in multiple server systems without having to duplicate the overall security function in each server system. To. End users can also register with a single security system provider and establish relevant user preferences with a single security system provider. User preferences can include preferences that modify or determine the manner of operations performed based on key transaction data to generate a transaction verification code. This method provides an additional level of security in that even if two transactions are protected by the same security data, different transaction preference codes can be derived by applying different user preferences. Can be done.
いくつかの実施形態において、実行可能なプログラム命令は、実行されたとき、プロセッサが第2の取引検証コードを生成するようにし:
第1の取引検証コードを、安全な通信チャンネルを介してワンタイムセキュリティデータを生成するように構成されるセキュリティシステムに送信すること;及び
第1の取引検証コードと、受信された第1の取引メッセージ内に含まれた重要取引データに基づいてワンタイムセキュリティデータによって定義された動作を実行するセキュリティシステムによって生成されている第2の取引検証コードとの間の比較結果の表示を含む応答メッセージをセキュリティシステムから安全な通信チャンネルを介して受信することによって、第1の取引検証コードと第2の取引検証コードとを比較するようにする。
In some embodiments, the executable program instructions cause the processor to generate a second transaction verification code when executed:
Sending a first transaction verification code to a security system configured to generate one-time security data via a secure communication channel; and a first transaction verification code and a received first transaction A response message including a display of a comparison result with a second transaction verification code generated by a security system that performs an action defined by the one-time security data based on the key transaction data included in the message The first transaction verification code and the second transaction verification code are compared by receiving from the security system via a secure communication channel.
さらなる態様において、本発明は、実行可能なプログラム命令を含むメモリストアに接続されるプロセッサを含むセキュリティシステムを提供し、前記実行可能なプログラム命令は、実行されたとき、プロセッサが:
ワンタイムセキュリティデータの生成のための要求を遠隔プロセッサから安全な通信チャンネルを介して受信することと;
取引検証コードを生成するためにユーザーの取引の重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを生成することと;
ワンタイムセキュリティデータを含むセキュリティメッセージを、通信バックチャンネルを介して、ユーザーのデバイスに送信することと;
重要取引データに基づいてユーザーによって生成され、1次通信チャンネルを介して遠隔プロセッサに提供される第1の取引検証コードを遠隔プロセッサから安全な通信チャンネルを介して受信することと;
ユーザーによって1次通信チャンネルを介して遠隔プロセッサに送信された取引メッセージ内に含まれた重要取引データに基づいて、ワンタイムセキュリティデータによって定義された動作を実行することによって第2の取引検証コードを生成することと;
第1の取引検証コードと第2の取引検証コードとを比較することと;および
第1の取引検証コードと第2の取引検証コードとの間の比較結果の表示を含む応答メッセージを安全な通信チャンネルを介して遠隔プロセッサに送信することと、を実行するようにする。
In a further aspect, the present invention provides a security system that includes a processor coupled to a memory store that includes executable program instructions, when the executable program instructions are executed by the processor:
Receiving a request for generation of one-time security data from a remote processor via a secure communication channel;
Generating one-time security data defining one or more actions to be performed based on key transaction data of the user's transaction to generate a transaction verification code;
Sending a security message containing one-time security data to the user's device via a communication back channel;
Receiving a first transaction verification code generated by a user based on the key transaction data and provided to the remote processor via the primary communication channel from the remote processor via a secure communication channel;
A second transaction verification code is obtained by performing an action defined by the one-time security data based on the key transaction data contained in the transaction message sent by the user to the remote processor via the primary communication channel. Generating;
Comparing a first transaction verification code with a second transaction verification code; and securely communicating a response message including an indication of a comparison result between the first transaction verification code and the second transaction verification code Transmitting to the remote processor via the channel.
実行可能なプログラム命令は、実行されたとき、プロセッサが、ワンタイムセキュリティデータを含むセキュリティメッセージを、遠隔プロセッサを介して、ユーザーのデバイスに送信させることができる。 Executable program instructions, when executed, cause the processor to send a security message including one-time security data to the user's device via the remote processor.
また別の態様において、本発明は、実行可能なプログラム命令を含むメモリストアに接続されるプロセッサを含むポータブル演算及び通信デバイスを提供し、前記実行可能なプログラム命令は、実行されたとき、プロセッサが:
取引検証コードを生成するために重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを関連する通信チャンネルを介して受信することと;
重要取引データを入力しろというユーザーに対する促しをポータブル演算及び通信デバイスのユーザーインターフェースを介してユーザーに提示することと;
重要取引データをユーザーからユーザーインターフェースを介して受信することと;
重要取引データに基づいたワンタイムセキュリティデータによって定義された動作を実行することによって取引検証コードを生成することと;及び
取引検証コードの人間が可読な表現を、ユーザーインターフェースを介して、ユーザーに提示することと、を実行するようにする。
In yet another aspect, the present invention provides a portable computing and communication device that includes a processor coupled to a memory store that includes executable program instructions, the executable program instructions being executed by the processor when executed. :
Receiving one-time security data via an associated communication channel defining one or more actions to be performed based on key transaction data to generate a transaction verification code;
Presenting the user with a prompt to enter important transaction data via the portable computing and communication device user interface;
Receiving important transaction data from the user via the user interface;
Generating a transaction verification code by performing actions defined by one-time security data based on critical transaction data; and presenting a human-readable representation of the transaction verification code to the user via a user interface To do and to do.
実行可能なプログラム命令は、実行されたとき、プロセッサが、変換された重要取引データのハッシュを演算することを含む方法に従って、取引検証コードを生成させることができる。 Executable program instructions, when executed, may cause the processor to generate a transaction verification code according to a method that includes computing a hash of the converted key transaction data.
さらに別の態様において、本発明は、実行可能なプログラム命令が内部に格納されたコンピュータ可読媒体を含むコンピュータプログラム製品を提供し、前記実行可能なプログラム命令は、関連する通信チャンネルに接続されるプロセッサによって実行されたとき、プロセッサが:
取引検証コードを生成するために重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを関連する通信チャンネルを介して受信することと;
重要取引データを入力しろというユーザーに対する促しを、ユーザーインターフェースを介して、ユーザーに提示することと;
重要取引データをユーザーからユーザーインターフェースを介して受信することと;
重要取引データに基づいてワンタイムセキュリティデータによって定義された動作を実行することによって取引検証コードを生成することと;及び
取引検証コードの人間が可読な表現を、ユーザーインターフェースを介して、ユーザーに提示することと、を実行するようにする。
In yet another aspect, the present invention provides a computer program product comprising a computer readable medium having executable program instructions stored therein, wherein the executable program instructions are connected to an associated communication channel. When executed by the processor:
Receiving one-time security data via an associated communication channel defining one or more actions to be performed based on key transaction data to generate a transaction verification code;
Presenting the user with a prompt through the user interface to enter important transaction data;
Receiving important transaction data from the user via the user interface;
Generating a transaction verification code by performing the actions defined by the one-time security data based on the key transaction data; and presenting a human-readable representation of the transaction verification code to the user via the user interface To do and to do.
様々な適用及び構成と共に、本発明の動作原理に対するさらなる詳細、及びそれらに関連する利点及び長所は、以下のような様々な実施形態の開示内容から理解されるであろう。しかしながら、これらの実施形態は、例として提供され、前記の説明のうちのいずれかの1つに、または添付された特許請求の範囲に定義された本発明の全体範囲を限定しようとするものではない。 Further details on the operating principles of the present invention, as well as various applications and configurations, and the advantages and advantages associated therewith, will be understood from the disclosure of the various embodiments as follows. However, these embodiments are provided by way of example and are not intended to limit the overall scope of the invention as defined in any one of the above descriptions or in the appended claims. Absent.
本発明の実施形態が、添付図面を参照して説明されるはずであり、ここで、類似の参照番号は類似の特徴部を示す。
図3は、本発明を実現するシステム300を示すブロック図である。インターネットのような公衆通信ネットワーク108は、クライアントデバイス304と安全なサービスポータル(SSP)106との間のメッセージングのために使用される。一般的に言えば、クライアントデバイス304は、例えば、ウェブブラウザソフトウェア及び/または他の接続されたアプリケーションを使用して、インターネット108を介して通信する能力を有する任意の適した演算または処理機器であり得る。同様に、SSP106を含むシステム300に示された他の構成要素は、一般的に、1つ以上の処理、演算及び/またはストレージデバイスを含む。本明細書において、‘プロセッサ’、‘コンピュータ’などのような用語は、文脈によって特に要求されない限り、ハードウェアとソフトウェアの組み合わせを含むデバイスまたは装置の様々な可能な実現例を言及するものと理解されるべきである。これは、共同配置または分布され得る協動するハードウェア及びソフトウェアプラットフォームを含み、シングルプロセッサ及びマルチプロセッサデバイス及び装置を含む。ハードウェアは、通常のパーソナルコンピュータアキテクチャーまたは他の汎用ハードウェアプラットフォームを含むことができる。ソフトウェアは、様々なアプリケーション及びサービスプログラムと組み合わせる商用可能なオペレーティングシステムソフトウェアを含むことができる。代替的に、演算または処理プラットフォームは、カスタム(custom)ハードウェア及び/またはソフトウェアアキテクチャーを含むことができる。向上したスケーラビリティのために、演算及び処理システムは、物理ハードウェアリソースがサービス要求に応答して動的に割り当てられ得るようにするクラウド演算プラットフォームを含むことができる。これらの変形例の全部は、本発明の範囲内に属するが、容易な説明及び理解のために、本明細書で説明される例示的な実施形態は、シングルプロセッサ汎用演算プラットフォーム、一般的に利用可能なオペレーティングシステムプラットフォーム、及び/またはデスクトップPC、ノートブックまたはラップトップPC、スマートフォンなどのような広く利用可能な消費者製品に基づく。
FIG. 3 is a block diagram illustrating a
本発明の特徴を実現するソフトウェア構成要素は、ソフトウェア工学分野の熟練者に親しいように、任意の適したプログラミング言語、開発環境、または言語と開発環境との組み合わせを使用して開発され得る。例えば、適したソフトウェアは、Cプログラミング言語、ジャバ(Java)プログラミング言語、C++プログラミング言語、及び/またはジャバスクリプト(JavaScript)、HTML、PHP、ASP、JSPなどのようなネットワークまたはウェブベースサービスの実現に適した様々な言語を使用して開発され得る。これらの例は、限定しようとするものではなく、システム要求事項に従って、他の便利な言語または開発システムが使用され得ることが理解されるであろう。 Software components that implement the features of the present invention may be developed using any suitable programming language, development environment, or combination of language and development environment, as is familiar to those skilled in the software engineering field. For example, suitable software can be used to implement network or web-based services such as C programming language, Java programming language, C ++ programming language, and / or JavaScript, HTML, PHP, ASP, JSP, etc. It can be developed using a variety of suitable languages. It will be appreciated that these examples are not intended to be limiting and that other convenient languages or development systems may be used in accordance with system requirements.
例示的なシステム300において、SSP106は、プロセッサ312を含む。プロセッサ312は、不揮発性メモリ/ストレージデバイス314にインターフェースされるか、そうでなければそれと動作可能に結合される。不揮発性ストレージデバイス314は、ハードディスクドライブであることができ、及び/または読み出し専用メモリ(ROM)、フラッシュメモリなどのようなソリッド−ステート不揮発性メモリを含むことができる。プロセッサ312は、また、SSP106の動作に関するプログラム命令及び一時データを含むランダムアクセスメモリ(RAM)のような揮発性ストレージデバイス316にもインターフェースされる。
In the
通常の構成において、ストレージデバイス114は、SSP106の正常動作に関する知られているプログラム及びデータコンテンツを維持する。例えば、ストレージデバイス314は、オペレーティングシステムプログラム及びデータだけでなく、SSP106の意図された機能に必要な他の実行可能なアプリケーションソフトウェアを含むことができる。ストレージデバイス314は、プロセッサ312によって実行されたとき、本発明による取引セキュリティシステムの一実施形態に関する動作を実行するように、SSP106に指示するプログラム命令をまた含む。動作中、ストレージデバイス314上に保持された命令及びデータは、要求による実行のために揮発性メモリ316に転送される。
In a normal configuration, the
プロセッサ312は、また、通常の方式で通信インターフェース318と動作可能に結合される。通信インターフェース318は、公衆データ通信ネットワーク108に対するアクセスを容易にする。
The
使用中、揮発性ストレージデバイス316は、特に図4及び図5に示されたタイムラインを参照して後述するように、システムの様々な機能要素を含む、本発明の特徴を実現する処理及び動作を実行するように構成されたプログラム命令の対応する本体320を含む。
In use, the volatile storage device 316 includes processes and operations that implement the features of the present invention, including the various functional elements of the system, as will be described below with particular reference to the timelines shown in FIGS. Includes a
SSP106は、公衆ネットワーク108を介して直接アクセスすることができるように意図されないシステム300の他の要素と安全に通信するために使用される、プライベートネットワーク324に対するアクセスを提供するさらなるネットワークインターフェース322をさらに含むことができる。プライベートネットワーク324は、公衆ネットワーク108と物理的に区別され得るか、または公衆ネットワーク108の基盤施設を物理的に使用する仮想プライベートネットワーク(virtual private network:VPN)として実現されることができ、これにより、ネットワークインターフェース322は、公衆ネットワークインターフェース318とハードウェア構成要素を共有することができる仮想ネットワークインターフェースである。従って、用語‘ネットワークインターフェース’は、本明細書を通して使用される場合、文脈によって特に要求されない限り、1つ以上の対応する物理的または仮想的な通信ネットワークを介して他のデバイスと情報を交換するために必要な様々な通信プロトコルを実現する物理ハードウェア及び/またはネットワークインターフェースソフトウェア(プロトコルスタック)の組み合わせを指すということが理解されるであろう。
The
システム300に示されたように、SSP106は、プライベートネットワーク324を介してセキュリティシステム326と通信することができる。セキュリティシステム326は、また、図3のブロック図内で単純化された形態で示されるサーバプラットフォームである。セキュリティシステム326は、さらなる不揮発性メモリ/ストレージデバイス330にインターフェースされるか、そうでなければ、それと動作可能に関連付けられるプロセッサ328を含む。プロセッサ328は、また、セキュリティシステム326の動作に関するプログラム命令及び一時データを含む揮発性ストレージデバイス332にもインターフェースされる。
As shown in
プロセッサ328は、プライベートネットワーク324を介してSSP106と通信することができる通信インターフェース334と動作可能に結合される。
The
使用中、揮発性ストレージデバイス332は、特に図5のタイムラインを参照して、以下に説明するシステムの様々な機能要素を含む、本発明の特徴を実現する処理及び動作を実行するように構成されたプログラム命令の対応する本体336を含む。
In use, the
セキュリティシステム326の一般的な機能は、SSP106から要求を受信すること、及びMIM及びMIB攻撃に対して強力な検証コードの生成のために使用され得るワンタイムセキュリティデータを生成することである。いくつかの実施形態において、図4を参照して以下でより詳細に説明されるように、ワンタイムセキュリティデータは、検証マトリックスまたはテーブルを含む。
The general function of the
セキュリティシステム326は、例えば、不揮発性ストレージデバイス330内に、ユーザー口座情報のデータベースを維持する。このユーザーデータベースは、システム300の各エンドユーザー、すなわち、クライアントアプライアンス304を動作させるユーザーに対するレコードを含む。各ユーザーレコードは、固有のユーザー識別子(ID)、及び関連キーワードまたはパスワードを含む。ユーザーレコードは、セキュリティシステム326の使用と、セキュリティシステム326によって提供されたサービスを使用するSSP106のようなすべての安全なシステム、デバイス及びサービスの使用に関連するユーザーの好みをまた含む。例えば、ユーザー認証(例えば、安全なログイン)のためにシステム326と対応する特徴を有するセキュリティシステムの使用は、2014年10月21日に許与された、共同に譲渡された米国特許第8,869,255号に開示されている。
プライベートネットワーク324は、また、ネットワーク終端ユニット(network termination unit:NTU)340を介して公衆交換電話ネットワーク(public switched telephony network:PSTN)のような電気通信サービスプロバイダーネットワーク338にも接続される。これは、SSP106、セキュリティシステム326、及び/またはプライベートネットワーク324に接続された任意の他のシステムがPSTN338を介してエンドユーザーとの通信に関与することができるようにする。このような通信は、音声電話通話、自動電話通話、及びSMSメッセージングを含むことができる。例示的なシステム300において、PSTN338は、クライアントデバイス304を介してSSP106にもアクセスしているエンドユーザーのモバイルデバイス344との通信を容易にする、セルラーモバイル基地局342に接続されたものと示されている。
The
従って、システム300によれば、エンドユーザーは、インターネットバンキングサービスのような安全なサービスを提供することができる、公衆ネットワーク108を介したクライアント装置304とSSP106との間の1次または主通信チャンネルを有する。さらに、PSTN338を介してプライベートネットワーク324上の安全なシステムをエンドユーザーデバイス344に接続する2次チャンネル(バックチャンネルとも呼ばれる)がある。このバックチャンネルは、公衆ネットワーク108を介して主チャンネルに配置された任意のMIM、MIB、または他の損傷エンティティにアクセスできないように、図4を参照してより詳細に説明されるようにワンタイムセキュリティデータ、例えば、セキュリティマトリックスまたはテーブルを送信するために使用され得る。
Thus, according to the
ここで、図4を参照すると、本発明を実現する検証コード生成及び交換を示すタイムライン400が示されている。タイムライン400における送信は、図2の従来技術の実現例200に示されたように、バックチャンネル送信218、及び以下の主チャンネル確認送信224、226と対応する。
Turning now to FIG. 4, a
本発明の実施形態によれば、バックチャンネルを介してエンドユーザークライアントデバイスに送信される固定検証コードを生成する代わりに、SSP106は、ワンタイムセキュリティデータの生成のための要求をセキュリティシステム326に発行する。図4に示された例では、ワンタイムセキュリティマトリックスまたはテーブル402が生成され、これは、Kキーシンボルなど(テーブル402の最上段行に示す)のセットとNコードシンボルなど(テーブル402の下段行に示す)の対応するセットとの間のマッピングを含む。このマッピングは、実質的にランダムまたは疑似ランダムであり、SSP106によって、または例示的なシステム300内の任意の他のエンティティによって事前に予測されることができない。この例において、ワンタイムセキュリティデータは、また補足的なセキュリティデータ403を含み、その目的は後述される。
According to embodiments of the present invention, instead of generating a fixed verification code that is sent to the end-user client device over the back channel, the
セキュリティデータ402の生成を要求する際に、SSP106は、セキュリティマトリックス402が任意の関連ユーザーの好みに従って、それだけでなく、SSP106の要求事項に従って生成され得るように、クライアントデバイス304の対応するユーザーを識別することができる。ユーザー及び/またはSSP好みまたは要求事項は、最上段行上のKキーシンボルなどを構成するシンボルなどの特定のセット、及びテーブル402の下段行上のマッピングに使用されるコードシンボルなどの数及び属性のような事項を含むことができる。一般に、NはKよりも小さいか、それと同じか、それより大きいことができ、キーシンボルとコードシンボルとの間のマッピングは、一意である必要がなく、すなわち、コードシンボルは再使用され得る。本発明の実施形態は、対応する検証コード(例えば、後述するように生成された)を傍受することができるMIMまたはMIB攻撃者がセキュリティマトリックス402を傍受せずに対応する不正検証コードを生成することができる可能性を大幅に減少させようとする。
In requesting the generation of
本発明の実施形態によれば、キーシンボルセットは、ユーザーの取引の1つ以上の重要構成要素の要素に対応するように選択される。例えば、インターネットバンキング振込みの場合、受取人口座番号は、MIM/MIB攻撃者によって不正に改ざんされることができれば、資金が承認されていない口座に振り込まれることができるので重要である。口座番号が‘0’と‘9’との間の桁数からなると仮定すると、このような桁などのセットは、マトリックス402の上段行内のキーシンボルセットを含む。次いで、ユーザーは、重要な受取人口座番号の一部またはすべての数字に基づいて検証コードを生成するように要求され得る。コードは、口座番号の各桁を、セキュリティマトリックス402の最下段行からの対応するコードシンボルで置換することによって生成される。さらに、補足的なセキュリティデータ403は、取引のための検証コードを生成するために使用される受取人口座番号の4桁の数字(7番目、8番目、10番目及び11番目)を識別する。
According to embodiments of the present invention, the key symbol set is selected to correspond to one or more key component elements of the user's transaction. For example, in the case of Internet banking transfers, the recipient account number is important because if the money can be tampered with by an MIM / MIB attacker, the funds can be transferred to an unauthorized account. Assuming that the account number consists of digits between ‘0’ and ‘9’, such a set of digits includes the key symbol set in the upper row of the
さらに、ユーザーは、セキュリティシステム326によって維持される関連ユーザーの好みに従って、検証コードを生成する間に口座数字(すなわち、キーシンボル)及び/またはコードシンボルに対して一部の操作を実行することができる。このような操作及び好みは、以下でより詳細に説明されるはずであるが、本例では、キーシンボルとコードシンボルとの間の直接マッピングの簡単な場合が説明される。
Further, the user may perform some operations on account numbers (ie, key symbols) and / or code symbols while generating a verification code according to the relevant user preferences maintained by
セキュリティマトリックスマッピング402がエンドユーザーに送信される正確なフォーマットは重要ではなく、バックチャンネルの属性に依存することができる。例えば、ユーザーデバイス344は、グラフィックフォーマットで情報を表示することができ、この場合に、セキュリティマトリックス402は、対応するグラフィックフォーマットで送信され得る。代替的に、バックチャンネルがSMSバックチャンネルである場合には、セキュリティマトリックス402の表現をテキストフォーマット、例えば、‘0=X;1=a;2=Q;…’などに送信することがより便利であり得る。
The exact format in which the
セキュリティマトリックス402が送信されるフォーマットに関わらず、タイムライン400は、ワンタイムセキュリティデータ402、403及び受取人口座番号(345−001 91567182)に従う検証コードの生成を示す。404において示したように、対応する検証コードは、口座番号の7番目、8番目、10番目及び11番目の桁(‘9’、‘1’、‘6’及び‘7’)をマトリックス402内の対応するシンボル、すなわち、‘h’、‘a’、M、‘s’にマッピングすることによって得られた‘haMs’である。この検証コードは、ユーザーによって自分のウェブブラウザ上に提示された確認スクリーンに入力され、主チャンネルを介して送信される406。
Regardless of the format in which the
コードは、通常の実施形態に従って、何らの変更もなく、単純に送信408を介してこのコードを通過するMIM/MIB114/122によって傍受される。しかしながら、MIM/MIB114/122が取引を改ざんするために受取人口座番号を事前に修正したので、送信406から送信408に通過されたコードは、SSP106によって最初に受信された口座番号と一致しない。従って、SSP106が検証コード404を受信して有効性を検証しようとするとき、この有効性の検証は失敗するはずであり、重要取引情報の不正修正が検出されるであろう。また、MIM/MIB攻撃者114/122がセキュリティマトリックスマッピングシステムが使用されたことを気付いた場合であっても、ワンタイムセキュリティデータ402、403を得るために、バックチャンネルに対するアクセスなしに不正に修正された受取人口座番号と一致させるための検証コードを生成することができない。従って、本発明を実現するシステム及び方法は、図1a、図1b及び図2に関連して前記で示されて記述されたように、既存のMIM/MIB攻撃を阻止することができるか、少なくとも大幅に緩和させることができる。
The code is intercepted by the MIM /
図5は、SSP106と本発明の実施形態によるセキュリティシステム326との間の通信を示すタイムライン500を示す。タイムライン500に示した送信は、図4のタイムライン400に示した交換の前後に生じる。これらの送信は、SSP106がセキュリティマトリックス402を生成するためにセキュリティシステム326によって提供されたサービスを活用して、エンドユーザーから再び受信された検証コードを有効性検証することができるようにする。しかし、理解され得るように、セキュリティシステム326がSSP106とは別途の遠隔サービスとして実施される必要はない。セキュリティシステム326と共に示され、それに関連するすべての機能は、代替的にSSP106の構成要素として実現され得る。しかし、遠隔サービスとしてのセキュリティシステム326の実施形態は、全体機能が各場合に複製される必要なく、少なくとも関連するセキュリティサービスが複数のSSP106によって使用され得るようにする利点がある。また、エンドユーザーは、単一のセキュリティシステムプロバイダーに登録し、自分の関連ユーザーの好みをデータベース330内に確立した後に、複数のSSPプロバイダーにわたって同一の口座及び好みを使用することができる。
FIG. 5 shows a
タイムライン500に示したように、SSP106が有効性検証を必要とする要求された取引細目を受信したとき、セキュリティシステム326に送信される要求502を生成する。この要求は、互換可能なワンタイムセキュリティデータを生成するためにセキュリティシステム326によって要求される任意の追加情報またはパラメーターを識別することができる。例えば、要求502は、セキュリティシステム326がデータベース330からの任意の関連ユーザーの好みをセキュリティマトリックスの生成に組み込むことができるように、ユーザーの識別を含むことができる。要求502は、このような特定の有効性検証要求に特定されるSSP106によって供給された任意のパラメーターをまた含むことができる。例えば、ワンタイムセキュリティデータがセキュリティマトリックスを含む場合、パラメーターは、受取人口座番号に基づいた有効性検証のために‘0’と‘9’の間の桁のみを含むことができるキーシンボルセットの識別を含むことができる。しかし、他の文脈において、検証コードの生成に使用された取引情報は、キーシンボルセットが、例えば、すべてのアルファベット文字及び選択された特殊文字を含めてより大きくなるように、口座名のようなものなどを含むことができる。さらに、要求502は、コードシンボルセット、及び/またはコードシンボルセットに使用すべきシンボルなどの数Nを定義したパラメーターを含むことができる。
As shown in
要求502の受信時、セキュリティシステム326は、対応するセキュリティマトリックスを生成し、そのマトリックスを含む応答504が送信される。その後、SSP106、またはシステム300の他の構成要素が、応答504で返送されたセキュリティマトリックスを使用して、バックチャンネルを介してユーザーデバイス344にユーザーに送信されるメッセージを生成するであろう。
Upon receipt of the
その後、ユーザーは、タイムライン400に示されたように、SSP106に再送信される検証コード404を生成して入力する。その後、SSP106は、セキュリティシステム326に対するさらなる要求506を生成する。このさらなる要求506は、セキュリティシステム326が主チャンネルを介して受信された検証コードを有効性検証し、検証コードが成功的に有効性検証されるか否かを示すさらなる応答508を返送するためのことである。セキュリティシステム326に送信されたメッセージ506は、セキュリティシステム326が検証コードを有効性検証するために必要なパラメーターを含むことができる。これらのパラメーターは、ユーザーの識別、返送された検証コード自体、及び検証コードを生成するために使用される関連取引細目、例えば、受取人口座番号、または他の重要情報を含むことができる。その後、セキュリティシステム326は、エンドユーザーによって入力され、返送されるべき検証コードを再生性するために、取引細目と共に、応答504を介して事前に生成され返送されたワンタイムセキュリティデータのそのレコード、及びデータベース330から検索された任意の関連ユーザーの好みを使用する。その後、このように局部的に生成された検証コードは、取引が有効性検証されるか否かを決定するために、要求506に含まれたコードと比較され得る。その比較の結果が、応答508に返送される。その後、SSP106は、有効性検証結果508によって取引を実行するか否かを決定することができる。
The user then generates and enters a
前述したように、本発明のいくつかの実施形態において、ユーザーは、セキュリティシステム326に登録されることができ、検証コード404を生成するためにキーシンボル及び/またはコードシンボルに対して実行される追加の操作を定義するユーザー口座レコード内に格納された関連ユーザーの好みデータを有することができる。ユーザーに提供されることができ、自分の口座レコード内に格納され得る可能な操作の徹底的でないリストが以下に列挙され、一般に、検証コードを修正するための適した操作は、セキュリティシステム326が共同に譲渡された米国特許第8,869,255号に記述されたような認証(例えば、安全なログイン)サービスを提供するようにまた構成されるときに利用可能な操作のサブセットを含むことができる。実際に、いくつかの実施形態において、セキュリティシステム326は、複数の目的のために、例えば、ログインプロセスの一部として、ユーザーを最初に認証し、続いてユーザーが要求した取引を有効性検証するためにSSP106によって使用され得る。この方式で、MIM/MIB攻撃者114/122が初期ログインプロセス中にユーザーのパスワードを取得することがまた防止され得る。
As described above, in some embodiments of the present invention, a user can be registered with
ユーザーの好みによって提供され得る操作は、以下を含む:
・ポジティブオフセット(positive offset)、すなわち、検証コード404を生成する際に各コード値に適用される増分(必要な場合、数字は、9+1=0となるようにラップすることができ、文字はZ+1=Aとなるようにラップすることができる);
・ネガティブオフセット(negative offset)、すなわち、各コード値に適用される減分(必要な場合、逆ラッピングが使用され得る);
・増分がポジティブオフセットのように各コード値に適用されるが、増分自体の大きさは検証コードの各要素によって増加する、増加型ポジティブ増分、またはポジティブ‘クロール(crawl)’;
・減分がネガティブオフセットのように各コード値に適用されるが、減分の大きさが検証コードの各要素によって増加する、増加型ネガティブ増分;及び/または
・検証コードを公式化するために使用すべき全体コード内のコード値などのサブセットを識別する、マスク(従って、マスクは、前記実施例で記述された補足的なセキュリティデータ403と類似の機能を実行するが、‘取引当たり(per transaction)’基準ではなく。‘ユーザー当たり(per−user)’基準で実行する)。
Operations that can be provided by user preferences include:
Positive offset, ie the increment applied to each code value when generating the verification code 404 (if necessary, the number can be wrapped so that 9 + 1 = 0, the character is Z + 1 = Can be wrapped to be A);
A negative offset, ie a decrement applied to each code value (reverse wrapping can be used if necessary);
An increment is applied to each code value as a positive offset, but the magnitude of the increment itself is increased by each element of the verification code, an incremental positive increment, or positive 'crawl';
A decrement is applied to each code value as a negative offset, but the magnitude of the decrement is increased by each element of the verification code; and / or • used to formulate the verification code A mask that identifies a subset of code values within the overall code to be performed (thus, the mask performs a similar function as the
ここで、図6を参照すると、前述したタイムライン及び一般的なシステムアーキテクチャに対応する、本発明を実現する取引セキュリティ方法を示すフローチャート600が示されている。
Referring now to FIG. 6, a
ステップ602において、ユーザーは、SSP106で認証する。この認証は、ユーザーID及びパスワードのような識別及び認証情報を使用してSSP106にサインインすることを含むことができる。選択的に、認証プロセスは、米国特許第8,869,255号に記述されたような方式でセキュリティシステム326のサービスを使用することによってより安全になることができる。
In
ステップ604において、ユーザーは、取引を実行することを望み、例えば、インターネットバンキングポータルを介した資金振込みの場合に、受取人口座番号及び取引金額のような重要な細目を含む取引細目を入力する。ステップ606において、取引細目は、SSP106に送信され、その時点で、MIM/MIB攻撃者114/122による潜在的な傍受にさらされる。
In
ステップ608において、ワンタイムセキュリティデータが、例えば、SSP106とセキュリティシステム326との間の相互作用502,504を介して生成される。結果として生じたセキュリティデータは、バックチャンネルを介して送信される。
In
ステップ610において、SSP106は、ユーザーが検証コードを入力するための機能を含む確認ページを生成してエンドユーザーに提供する。ユーザーは、セキュリティデータ、重要取引細目、及び任意の適用可能なユーザーの好みに従って適切な検証コードを決定し、その後、ステップ612でコードを入力する。
In step 610, the
ステップ614において、ユーザーによって入力された検証コードはSSP106に送信され、その時点で、MIM/MIB攻撃者114/122による潜在的な傍受及び再送信を受ける。
In
ステップ616において、例えば、図5に示されたように、SSP106とセキュリティシステム326との間の相互作用506、508を介して、検証コードが有効性検証される。このような有効性検証結果に応じて、ステップ618で取引が確認されるか、または拒否される。
In
前記実施形態の説明は、本発明の原理を例示する役割を果たすが、エンドユーザーに追加的な便宜を提供する変形例を含め、多くの変形例が可能であることが理解されるであろう。例えば、スマートフォンまたはタブレットのような‘スマートデバイス’のユーザーには、検証コードの生成を支援するために専用アプリケーション(または‘アプリ’)が提供され得る。例えば、専用アプリ、SSP106及び/またはセキュリティシステム326からユーザーに代わって通信を受信することができる。これらの通信は、例えば、信頼される発信番号からのSMSを介して、またはセキュリティシステム326及びアプリ内の適切にセキュリティされたコード要素などのみに知られた秘密情報(例えば、秘密キー)に基づいて、インターネットまたは一部の他の通信ネットワークを介して確立され得る安全な暗号化されたチャンネルを介して受信され得る。
While the description of the above embodiment serves to illustrate the principles of the present invention, it will be understood that many variations are possible, including variations that provide additional convenience to the end user. . For example, a user of a 'smart device' such as a smartphone or tablet may be provided with a dedicated application (or 'app') to assist in generating a verification code. For example, communications can be received on behalf of a user from a dedicated app,
図7は、本発明を実現するスマートフォンアプリの例示的なスクリーンディスプレイを示す。ユーザーは、SSP106との取引を開始する前にアプリを開いてアプリの実行を開始することができるか、またはアプリは、バックチャンネルをモニタリングして、セキュリティマトリックス情報402の受信時に自動的に開かれることができる。このとき、ディスプレイ700は、テキスト入力ボックス702を介して関連取引細目、例えば、インターネットバンキング資金振込みの受取人口座番号を入力することをユーザーに促すことを示すことができる。受信されたセキュリティマトリックスデータと共に、この情報を所有すると、アプリは、検証コードを演算して確認ページに入力するために、すなわち、プロセス600のステップ612でユーザーに提示することができる。対応する例示的なスクリーンディスプレイ704は、ユーザーに対応する検証コード706を提供する。
FIG. 7 shows an exemplary screen display of a smartphone app that implements the present invention. The user can open the app and start running the app before initiating a transaction with the
検証コード706を生成するためにユーザーがスマートフォンアプリまたは類似のものを使用する実施形態では、ユーザーが検証コードを手動で生成する必要があるときに妥当であるものよりも、より複雑な演算が使用され得る。例えば、アプリは、重要取引データの項目(例えば、受取人口座番号702)を対応する検証コード706に変換するために実行される動作を指定するセキュリティマトリックス402及び/または他のワンタイムセキュリティデータを受信することができる。前記動作は、例えば、MD5、SHA−1、SHA−2、または他の公知されたハッシングアルゴリズムを使用して、変換された重要取引データのハッシュを演算することを含むことができ、検証コードは、演算されたハッシュから導出され得る。この場合、MIM/MIB攻撃者が検証コードから元の変換された重要取引データを導出することは、計算上妥当でないことであるため、攻撃者が重要取引データに適用された変換を決定することは不可能である。従って、MIM/MIB攻撃者は、任意の不正に修正された重要取引データと一致するそれ自体の検証コードを生成することができないであろう。
In embodiments where the user uses a smartphone app or the like to generate the
図8は、安全なサービスプロバイダーと本発明を実現するスマートデバイスアプリとの間の信頼バックチャンネルを確立するためのシステム800の概路図である。示したように、アプリが通信するセキュリティシステム326は、どのような潜在的な攻撃者に対してもアクセスできないように、安全に格納される関連秘密キー806を有する。対応する公開キー804は、アプリが自分の公式供給源から始まったものであることを保障する、アップルアプリストア(Apple App Store)またはグーグル プレイ(Google Play)のような信頼できるアプリストア808を介してエンドユーザーが利用できるようにするスマートデバイスアプリ806に事前にロードされ、エンドユーザーデバイス810にダウンロードする前に修正または改ざんされない。一応エンドユーザーデバイス804上で実行すると、アプリは、固有の暗号キーを生成し、事前にロードされた公開キー804を使用して暗号化し、暗号化された暗号キーをセキュリティシステム326に送信することができる。その後、このような固有の暗号キーは、セキュリティシステム326とユーザースマートデバイス804との間の対称的暗号化通信のために使用され得る。セキュリティを強化するために、対称暗号化キーは、必要に応じて、頻繁にユーザーデバイス804上のアプリによって再生性されることができ、特にそれぞれの使用後に代替され得る。
FIG. 8 is a schematic diagram of a
代替の実施形態において、信頼できるアプリストア802から入手可能なアプリに事前にロードされた情報は、アプリがセキュリティシステム326で発信した着信SMSメッセージを認識できるように、セキュリティシステム326に関連付けられた固有の電話番号であり得る。
In an alternative embodiment, information pre-loaded into an app available from trusted
本発明の特定の実施形態及び変形例が本明細書に記述されたが、さらなる修正例及び代替例が関連技術分野の当業者には明らかであることが理解されるであろう。特に、これらの実施例などは、本発明の原理を例示するために提供され、該原理を実施するための多数の特定の方法を提供することである。一般に、本発明の実施形態は、検証コードが2つの遠隔位置で、例えば、エンドユーザー位置及びセキュリティシステム位置において、独立的に生成され得る技術的配置を提供することに依拠し、ここで、検証コードは、1次通信チャンネルを介した伝送中の重要取引データの任意の修正が独立的に生成された検証コードなどでの不一致として検出され得るように、重要取引データの少なくとも1つの項目に依存する。本発明を実現する配置は、検証コードを生成するために使用されるワンタイムセキュリティデータをセキュリティシステム位置からエンドユーザー位置に送信するために2次チャンネルを使用する。従って、本発明の実施形態によって提供されたセキュリティを組織的に損傷させることは、1次及び2次通信チャンネルの両方の侵入を必要とする。 While particular embodiments and variations of the invention have been described herein, it will be appreciated that further modifications and alternatives will be apparent to those skilled in the relevant art. In particular, these examples and the like are provided to illustrate the principles of the invention and provide a number of specific ways to implement the principles. In general, embodiments of the present invention rely on providing a technical arrangement where verification codes can be generated independently at two remote locations, eg, at an end-user location and a security system location, where verification The code depends on at least one item of key transaction data so that any modification of key transaction data in transit over the primary communication channel can be detected as a discrepancy, such as in an independently generated verification code To do. An arrangement implementing the present invention uses a secondary channel to transmit one-time security data used to generate the verification code from the security system location to the end user location. Thus, systematically damaging the security provided by embodiments of the present invention requires intrusion of both primary and secondary communication channels.
従って、記述された実施形態は、本発明の一般的な特徴及び原理を教示する目的のために例として提供されるものとして理解されるべきであり、添付された特許請求の範囲に定義された本発明の範囲を限定するものとして理解されるべきではない。 Accordingly, the described embodiments are to be understood as being provided by way of example for the purpose of teaching general features and principles of the invention and as defined in the appended claims. It should not be understood as limiting the scope of the invention.
Claims (15)
重要取引データの項目を含むユーザーの取引要求に対応する第1の取引メッセージを前記第1の通信チャンネルを介して前記取引サーバによって受信するステップと;
前記第1の取引メッセージの受信に応答して取引検証コードを生成するために、前記重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを生成するステップと;
前記第1の通信チャンネルとは機能的に区別される第2の通信チャンネルを介して前記ユーザーに前記ワンタイムセキュリティデータを送信するステップと;
前記第2の通信チャンネルを介した前記ワンタイムセキュリティデータの受信に応答して前記ユーザーによって提供された第1の取引検証コードを含む第2の取引メッセージを前記第1の通信チャンネルを介して前記取引サーバによって受信するステップと;
前記受信された第1の取引メッセージ内に含まれた前記重要取引データに基づいて前記ワンタイムセキュリティデータによって定義された前記動作を実行することによって第2の取引検証コードを生成するステップと;
前記第1の取引検証コードと前記第2の取引検証コードとを比較するステップと;及び
前記第1の取引検証コードと前記第2の取引検証コードとの間の不一致の場合、前記取引要求を拒否するステップと、を含む、方法。 As a method of securely processing a transaction that is sent over a first communication channel to a transaction server and that includes one or more transaction messages that include at least one item of important transaction data:
Receiving a first transaction message corresponding to a user transaction request including an item of significant transaction data by the transaction server via the first communication channel;
Generating one-time security data defining one or more actions to be performed based on the key transaction data to generate a transaction verification code in response to receiving the first transaction message;
Transmitting the one-time security data to the user via a second communication channel that is functionally distinct from the first communication channel;
A second transaction message including a first transaction verification code provided by the user in response to receipt of the one-time security data over the second communication channel via the first communication channel. Receiving by the transaction server;
Generating a second transaction verification code by performing the operation defined by the one-time security data based on the important transaction data included in the received first transaction message;
Comparing the first transaction verification code and the second transaction verification code; and if there is a mismatch between the first transaction verification code and the second transaction verification code, the transaction request And a step of rejecting.
前記第2の通信チャンネルを介して前記ワンタイムセキュリティデータを受信することと;
前記ユーザーから、前記ユーザーデバイスのユーザーインターフェースを介して、前記ワンタイムセキュリティデータに定義された動作によって前記取引セキュリティコードの生成のために必要な前記重要取引データを要求及び受信することと;
ユーザーから受信された重要取引データに基づいてワンタイムセキュリティデータによって定義された動作を実行することによって取引検証コードを生成することと;及び
前記生成された取引検証コードを前記ユーザーデバイスの前記ユーザーインターフェースを介して前記ユーザーに提供することと、を実行するように構成される、請求項1に記載の方法。 The one-time security data is transmitted to the user device via the second communication channel for processing by a software application executing on the user device, the software application:
Receiving the one-time security data via the second communication channel;
Requesting and receiving from the user the critical transaction data required for the generation of the transaction security code by an operation defined in the one-time security data via a user interface of the user device;
Generating a transaction verification code by performing an action defined by one-time security data based on important transaction data received from a user; and generating the transaction verification code in the user interface of the user device The method of claim 1, wherein the method is configured to perform providing to the user via
第1の通信チャンネルを介してユーザーにアクセス可能であり、前記ユーザーの取引要求に応答して取引を容易にするように構成された安全なサービスポータルを提供することと;
前記第1の通信チャンネルを介して、重要取引データの項目を含む前記ユーザーの取引要求に対応する第1の取引メッセージを受信することに応答して、取引検証コードを生成するために前記重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを生成することと;
前記第1の通信チャンネルとは機能的に区別される第2の通信チャンネルを介して前記ユーザーに送信されて来た前記ワンタイムセキュリティデータの受信に応答して、ユーザーによって提供された第1の取引検証コードを含む第2の取引メッセージを第1の通信チャンネルを介して受信することと;
前記受信された第1の取引メッセージ内に含まれた前記重要取引データに基づいて前記ワンタイムセキュリティデータによって定義された前記動作を実行することによって第2の取引検証コードを生成することと;
前記第1の取引検証コードと前記第2の取引検証コードとを比較することと;及び
前記第1の取引検証コードと前記第2の取引検証コードとの間の不一致の場合、前記取引要求を拒否することと、を実行するようにする、コンピュータサーバシステム。 A computer server system including a processor connected to a memory store that includes executable program instructions, when the executable program instructions are executed, the processor:
Providing a secure service portal accessible to a user via a first communication channel and configured to facilitate a transaction in response to the user's transaction request;
In response to receiving a first transaction message corresponding to the user's transaction request including an item of important transaction data via the first communication channel, the important transaction to generate a transaction verification code. Generating one-time security data defining one or more actions to be performed based on the data;
In response to receiving the one-time security data transmitted to the user via a second communication channel that is functionally distinct from the first communication channel, a first provided by the user Receiving a second transaction message including a transaction verification code via the first communication channel;
Generating a second transaction verification code by performing the operations defined by the one-time security data based on the key transaction data included in the received first transaction message;
Comparing the first transaction verification code and the second transaction verification code; and in the case of a mismatch between the first transaction verification code and the second transaction verification code, A computer server system that performs the refusal.
前記ワンタイムセキュリティデータの生成のための要求を、前記ワンタイムセキュリティデータを生成するように構成されるセキュリティシステムに、安全な通信チャンネルを介して送信することによって前記ワンタイムセキュリティデータを生成するようにする、請求項8に記載のコンピュータサーバシステム。 When the executable program instructions are executed, the processor:
Generating the one-time security data by transmitting a request for generation of the one-time security data to a security system configured to generate the one-time security data via a secure communication channel; The computer server system according to claim 8.
前記第1の取引検証コードを、安全な通信チャンネルを介して前記ワンタイムセキュリティデータを生成するように構成されるセキュリティシステムに送信すること;及び
前記第1の取引検証コードと前記受信された第1の取引メッセージ内に含まれた前記重要取引データに基づいて前記ワンタイムセキュリティデータによって定義された前記動作を実行するセキュリティシステムによって生成されている前記第2の取引検証コードとの間の比較結果の表示を含む応答メッセージをセキュリティシステムから安全な通信チャンネルを介して受信することによって、前記第1の取引検証コードと前記第2の取引検証コードとを比較するようにする、請求項8に記載のコンピュータサーバシステム。 The executable program instructions, when executed, cause the processor to generate the second transaction verification code:
Transmitting the first transaction verification code to a security system configured to generate the one-time security data via a secure communication channel; and the first transaction verification code and the received first Comparison result between the second transaction verification code generated by a security system that performs the operation defined by the one-time security data based on the important transaction data included in one transaction message 9. The first transaction verification code and the second transaction verification code are compared by receiving a response message including an indication of via a secure communication channel from a security system. Computer server system.
ワンタイムセキュリティデータの生成のための要求を遠隔プロセッサから安全な通信チャンネルを介して受信することと;
取引検証コードを生成するためにユーザーの取引の重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを生成することと;
前記ワンタイムセキュリティデータを含むセキュリティメッセージを、通信バックチャンネルを介して、前記ユーザーのデバイスに送信することと;
前記重要取引データに基づいて前記ユーザーによって生成され、1次通信チャンネルを介して遠隔プロセッサに提供される第1の取引検証コードを前記遠隔プロセッサから前記安全な通信チャンネルを介して受信することと;
前記ユーザーによって前記1次通信チャンネルを介して遠隔プロセッサに送信された取引メッセージ内に含まれた重要取引データに基づいて、前記ワンタイムセキュリティデータによって定義された前記動作を実行することによって第2の取引検証コードを生成することと;
前記第1の取引検証コードと前記第2の取引検証コードとを比較することと、;及び
前記第1の取引検証コードと前記第2の取引検証コードとの間の比較結果の表示を含む応答メッセージを前記安全な通信チャンネルを介して前記遠隔プロセッサに送信することと、を実行するようにする、セキュリティシステム。 A security system including a processor connected to a memory store that includes executable program instructions, when the executable program instructions are executed, the processor:
Receiving a request for generation of one-time security data from a remote processor via a secure communication channel;
Generating one-time security data defining one or more actions to be performed based on key transaction data of the user's transaction to generate a transaction verification code;
Sending a security message including the one-time security data to the user's device via a communication back channel;
Receiving a first transaction verification code generated by the user based on the critical transaction data and provided to a remote processor via a primary communication channel from the remote processor via the secure communication channel;
By performing the operations defined by the one-time security data based on key transaction data included in a transaction message sent by the user to a remote processor via the primary communication channel. Generating a transaction verification code;
Comparing the first transaction verification code with the second transaction verification code; and a response including an indication of a comparison result between the first transaction verification code and the second transaction verification code Sending a message to the remote processor via the secure communication channel.
取引検証コードを生成するために重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを関連する通信チャンネルを介して受信することと;
前記重要取引データを入力しろというユーザーに対する促しを前記ポータブル演算及び通信デバイスのユーザーインターフェースを介してユーザーに提示することと;
前記重要取引データをユーザーから前記ユーザーインターフェースを介して受信することと;
前記重要取引データに基づいて前記ワンタイムセキュリティデータによって定義された前記動作を実行することによって前記取引検証コードを生成することと;及び
前記取引検証コードの人間が可読な表現を、前記ユーザーインターフェースを介して、前記ユーザーに提示することと、を実行するようにする、ポータブル演算及び通信デバイス。 A portable computing and communication device that includes a processor connected to a memory store that includes executable program instructions when the executable program instructions are executed by the processor:
Receiving one-time security data via an associated communication channel defining one or more actions to be performed based on key transaction data to generate a transaction verification code;
Presenting a prompt to the user to enter the key transaction data to the user via the portable computing and communication device user interface;
Receiving the important transaction data from a user via the user interface;
Generating the transaction verification code by performing the operations defined by the one-time security data based on the key transaction data; and a human-readable representation of the transaction verification code for the user interface A portable computing and communication device for performing the presenting to the user.
取引検証コードを生成するために重要取引データに基づいて実行される1つ以上の動作を定義するワンタイムセキュリティデータを関連する通信チャンネルを介して受信することと;
前記重要取引データを入力しろというユーザーに対する促しを、ユーザーインターフェースを介して、ユーザーに提示することと;
前記重要取引データを前記ユーザーから前記ユーザーインターフェースを介して受信することと;
前記重要取引データに基づいて前記ワンタイムセキュリティデータによって定義された前記動作を実行することによって前記取引検証コードを生成することと;及び
前記取引検証コードの人間が可読な表現を、前記ユーザーインターフェースを介して、前記ユーザーに提示することと、を実行するようにする、コンピュータプログラム製品。 A computer program product comprising a computer readable medium having executable program instructions stored thereon, wherein when the executable program instructions are executed by a processor connected to an associated communication channel, the processor:
Receiving one-time security data via an associated communication channel defining one or more actions to be performed based on key transaction data to generate a transaction verification code;
Presenting the user with a prompt through the user interface to enter the key transaction data;
Receiving the important transaction data from the user via the user interface;
Generating the transaction verification code by performing the operations defined by the one-time security data based on the key transaction data; and a human-readable representation of the transaction verification code for the user interface A computer program product for performing to the user.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562149270P | 2015-04-17 | 2015-04-17 | |
US62/149,270 | 2015-04-17 | ||
PCT/AU2016/050279 WO2016164984A1 (en) | 2015-04-17 | 2016-04-15 | Method and system for transaction security |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018519562A true JP2018519562A (en) | 2018-07-19 |
Family
ID=57125452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017554348A Pending JP2018519562A (en) | 2015-04-17 | 2016-04-15 | Method and system for transaction security |
Country Status (10)
Country | Link |
---|---|
US (1) | US20180130056A1 (en) |
EP (1) | EP3284241A4 (en) |
JP (1) | JP2018519562A (en) |
KR (1) | KR20170140215A (en) |
CN (1) | CN107534668A (en) |
AU (1) | AU2016250293A1 (en) |
CA (1) | CA2982865A1 (en) |
HK (1) | HK1243834A1 (en) |
SG (1) | SG11201708124RA (en) |
WO (1) | WO2016164984A1 (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180204423A1 (en) * | 2015-12-25 | 2018-07-19 | Hitachi-Omron Terminal Solutions, Corp. | Automatic transaction system |
EP3532926A1 (en) * | 2016-10-31 | 2019-09-04 | Harman Becker Automotive Systems GmbH | Software update mechanism for safety critical systems |
EP3803649A1 (en) * | 2018-06-03 | 2021-04-14 | Apple Inc. | User interfaces for transfer accounts |
CN109862562A (en) * | 2019-01-02 | 2019-06-07 | 武汉极意网络科技有限公司 | A kind of dynamic verification code choosing method and system |
US11146954B2 (en) | 2019-10-08 | 2021-10-12 | The Toronto-Dominion Bank | System and method for establishing a trusted session |
US20210248600A1 (en) * | 2020-02-07 | 2021-08-12 | Mastercard International Incorporated | System and method to secure payment transactions |
CN112712368B (en) * | 2021-02-23 | 2021-12-14 | 深圳亚桐荟科技有限公司 | Cloud security account management method based on big data and cloud security platform |
CN113364777B (en) * | 2021-06-07 | 2022-11-11 | 中国工商银行股份有限公司 | Identity security verification method and system |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030149869A1 (en) * | 2002-02-01 | 2003-08-07 | Paul Gleichauf | Method and system for securely storing and trasmitting data by applying a one-time pad |
KR20040103581A (en) * | 2003-05-29 | 2004-12-09 | 나인섭 | Secondary Authentication and gateway System for Banking |
JP3996939B2 (en) * | 2006-03-30 | 2007-10-24 | 株式会社シー・エス・イー | Offline user authentication system, method thereof, and program thereof |
US8239680B2 (en) * | 2006-07-26 | 2012-08-07 | Japan Science And Technology Agency | Secret communication method and secret communication device thereof |
KR20100049882A (en) * | 2008-11-04 | 2010-05-13 | (주)에이티솔루션 | Method for internet banking using mobile |
US20100125635A1 (en) * | 2008-11-17 | 2010-05-20 | Vadim Axelrod | User authentication using alternative communication channels |
CN101540031A (en) * | 2009-05-04 | 2009-09-23 | 李勇 | Confirmation method for ensuring data validity in network electronic trade |
KR101232373B1 (en) * | 2010-06-11 | 2013-02-12 | 주식회사 하나은행 | Smart phone with bank security card application, method for providing bank security card usint the smart phone and device of managing security card |
CN101950403A (en) * | 2010-09-15 | 2011-01-19 | 中国工商银行股份有限公司 | Data processing method, device and system based on internet banking |
US8869255B2 (en) * | 2010-11-30 | 2014-10-21 | Forticom Group Ltd | Method and system for abstracted and randomized one-time use passwords for transactional authentication |
KR101202245B1 (en) * | 2011-02-15 | 2012-11-20 | 동서대학교산학협력단 | System and Method For Transferring Money Using OTP Generated From Account Number |
CN102202300B (en) * | 2011-06-14 | 2016-01-20 | 上海众人网络安全技术有限公司 | A kind of based on twin-channel dynamic cipher authentication system and method |
WO2014027110A1 (en) * | 2012-08-16 | 2014-02-20 | Cargonis Gmbh | Authentication method and system |
CN104243157A (en) * | 2013-06-24 | 2014-12-24 | 阿里巴巴集团控股有限公司 | Method and device for user identity authentication |
-
2016
- 2016-04-15 SG SG11201708124RA patent/SG11201708124RA/en unknown
- 2016-04-15 JP JP2017554348A patent/JP2018519562A/en active Pending
- 2016-04-15 CA CA2982865A patent/CA2982865A1/en not_active Abandoned
- 2016-04-15 AU AU2016250293A patent/AU2016250293A1/en not_active Abandoned
- 2016-04-15 US US15/566,915 patent/US20180130056A1/en not_active Abandoned
- 2016-04-15 KR KR1020177030657A patent/KR20170140215A/en unknown
- 2016-04-15 WO PCT/AU2016/050279 patent/WO2016164984A1/en active Application Filing
- 2016-04-15 CN CN201680024034.1A patent/CN107534668A/en active Pending
- 2016-04-15 EP EP16779344.7A patent/EP3284241A4/en not_active Withdrawn
-
2018
- 2018-02-23 HK HK18102660.5A patent/HK1243834A1/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2016164984A1 (en) | 2016-10-20 |
EP3284241A1 (en) | 2018-02-21 |
HK1243834A1 (en) | 2018-07-20 |
EP3284241A4 (en) | 2018-12-19 |
KR20170140215A (en) | 2017-12-20 |
US20180130056A1 (en) | 2018-05-10 |
CN107534668A (en) | 2018-01-02 |
SG11201708124RA (en) | 2017-11-29 |
CA2982865A1 (en) | 2016-10-20 |
AU2016250293A1 (en) | 2019-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9838205B2 (en) | Network authentication method for secure electronic transactions | |
US9231925B1 (en) | Network authentication method for secure electronic transactions | |
US9485254B2 (en) | Method and system for authenticating a security device | |
JP4861417B2 (en) | Extended one-time password method and apparatus | |
JP6012125B2 (en) | Enhanced 2CHK authentication security through inquiry-type transactions | |
JP2018519562A (en) | Method and system for transaction security | |
US9083746B2 (en) | Method of providing assured transactions using secure transaction appliance and watermark verification | |
US9391982B1 (en) | Network authentication of multiple profile accesses from a single remote device | |
KR101879758B1 (en) | Method for Generating User Digital Certificate for Individual User Terminal and for Authenticating Using the Same Digital Certificate | |
CN111131416A (en) | Business service providing method and device, storage medium and electronic device | |
US20210399897A1 (en) | Protection of online applications and webpages using a blockchain | |
CN112448930A (en) | Account registration method, device, server and computer readable storage medium | |
AU2009295193A1 (en) | Method and system for user authentication | |
JP5186648B2 (en) | System and method for facilitating secure online transactions | |
US11184339B2 (en) | Method and system for secure communication | |
KR102211033B1 (en) | Agency service system for accredited certification procedures | |
JP6454493B2 (en) | Authentication system, authentication method, and authentication program | |
CA2904646A1 (en) | Secure authentication using dynamic passcode | |
US20210194919A1 (en) | System and method for protection against malicious program code injection | |
JP6560649B2 (en) | Authentication server, terminal device, system, authentication method, and program | |
Corella et al. | Fundamental Security Flaws in the 3-D Secure 2 Cardholder Authentication Specification | |
CN117062078A (en) | Online identity authentication system, method and equipment for mobile internet | |
KR20190020542A (en) | Generating digital signature messages using a script engine in a device and an external mobile terminal | |
Mannan et al. | Using a personal device to strengthen password authentication from an untrusted computer (revised march 2007) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190213 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20191119 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191210 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20200630 |