JP2023164828A - ブロックチェーンを使用する取引口座データ保守 - Google Patents

ブロックチェーンを使用する取引口座データ保守 Download PDF

Info

Publication number
JP2023164828A
JP2023164828A JP2023132227A JP2023132227A JP2023164828A JP 2023164828 A JP2023164828 A JP 2023164828A JP 2023132227 A JP2023132227 A JP 2023132227A JP 2023132227 A JP2023132227 A JP 2023132227A JP 2023164828 A JP2023164828 A JP 2023164828A
Authority
JP
Japan
Prior art keywords
account
hash
data
issuer
stored
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
JP2023132227A
Other languages
English (en)
Inventor
ファラーズ ババール,
BABAR Faraz
エイミー カードウェル,
CARDWELL Aimee
アンドラス エル. フェレンツィ,
L FERENCZI Andras
ダラス ゲイル,
GALE Dallas
ニーレシュ ヤシャヴァント ジャドハヴ,
Yashavant JADHAV Nilesh
アシシュ クマール,
Kumar Ashish
ハリッシュ アール. ナーイク,
R Naik Harish
ラヴァンヤ ヴェンカタナラヤナン,
VENKATANARAYANAN Lavanya
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.)
American Express Travel Related Services Co Inc
Original Assignee
American Express Travel Related Services Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by American Express Travel Related Services Co Inc filed Critical American Express Travel Related Services Co Inc
Publication of JP2023164828A publication Critical patent/JP2023164828A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic 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 cryptographic hash functions
    • H04L9/3239Cryptographic 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 cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • 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/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • 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
    • 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/405Establishing or using transaction specific rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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
    • G06Q2220/00Business processing using cryptography

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】販売者記憶の取引口座データの保守のためのシステム及び方法を提供する。【解決手段】システムは、ブロックチェーン・ネットワークによって通信する様々な販売者システム及び発行者システムを含み、保守スマート・コントラクトを呼び出すことで、様々な記憶された取引口座における変更、取り消し、更新などに応じて販売者記憶の取引口座データを更新して保守するための、様々な発行者システムと販売者システムとの間の連携用の処理を実行する。【選択図】図2

Description

関連出願の相互参照
本出願は、2018年12月14日に提出された「TRANSACTION ACCOUNT DATA MAINTENANCE USING BLOCKCHAIN」と題される米国特許出願第16/220,235号の優先権及びその利益を主張するものである。
本開示は、一般的に販売者によって記憶される取引口座データに関し、より詳細にはブロックチェーンを使用する販売者記憶の取引口座データの保守のための、システム及び方法に関する。
ユーザは、例えばユーザ資格証明(例えば、ユーザ名、パスワード、バイオメトリック入力など)を作成すること、ユーザ・データ(例えば、氏名、住所、電子メール・アドレス、電話番号など)を入力すること、取引口座データを入力すること(例えば、取引口座番号、請求書住所、有効期限、セキュリティ・コードなど)などにより、販売者に登録したいと思う場合がある。販売者は、取引口座データを記憶して、いつもデータを再入力する必要なく、ユーザが商品又はサービスを購入及び返品できるようにすることができる。ユーザが購入を開始したことに応じて、販売者は記憶された取引口座データを発行者に送信し、取引を認可することができる。
しかしながら、記憶された取引口座データは、古くなっている場合がある。例えば、取引口座は、有効期限切れになっている、又は危険にさらされている場合があり(例えば、窃盗などにより)、新しい取引口座番号、有効期限、セキュリティ・コードなどがユーザに発行されている可能性がある。通常、販売者は、記憶された取引口座番号のリストを、対応する各発行者に送信して、更新済取引口座データを各発行者から受け取ることにより、記憶された取引口座データを更新することができる。記憶された取引口座データは、リアルタイムで更新されない場合があり、各発行者は、更新の対象となる記憶された取引口座データを送信するための別個でカスタムの処理を有する場合がある。技術的問題は、販売者記憶の取引口座データを更新するための通常処理は、時間がかかる場合があり、販売者及び様々な発行者による、過度な処理及びリソースの消費を招く可能性があることである。
販売者記憶の取引口座データの保守のための、システム、方法、及び製造物品(「システム」と総称する)が開示される。システムは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、口座ハッシュを生成することができる。システムは、口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことができる。保守スマート・コントラクトは、呼び出されたことに応じて、口座ハッシュが記憶された初期口座ハッシュ又は記憶された過去の口座ハッシュと一致するかどうかを判断するように構成することができる。口座ハッシュが記憶された過去の口座ハッシュと一致すると判断したことに応じて、保守スマート・コントラクトは、関連付けられている初期口座ハッシュをプロセッサに返すように構成することができる。システムは、関連付けられている初期口座ハッシュ及び口座ハッシュを、発行者システムに送信することができる。関連付けられている初期口座ハッシュ及び口座ハッシュを受信したことに応じて、発行者システムは、関連付けられている初期口座ハッシュに基づいて更新済取引口座データを決定するように構成することができる。システムは、更新済取引口座データを発行者システムから受信し、更新済取引口座データに基づいて販売者記憶の取引口座データを更新することができる。
様々な実施形態において、システムは、取引要求を受信したことに応じて口座ハッシュを生成することができ、発行者システムから更新済取引口座データを受信したことに応じて、システムは取引要求を認可するように構成される。販売者記憶の取引口座データは、ユーザのファースト・ネーム、ユーザのラスト・ネーム、発行者識別子、取引口座番号、取引口座住所、取引口座セキュリティ・コード、及び/又は取引口座有効期限を含む場合がある。
様々な実施形態において、システムは、販売者記憶の取引口座データを含む口座登録要求を受信することができる。システムは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、記憶された口座ハッシュを生成することができる。システムは、記憶された口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことができる。保守スマート・コントラクトは、呼び出されたことに応じて、記憶された口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成することができる。保守口座ブロックチェーンに書き込んだことに応じて、保守スマート・コントラクトは、発行者システムに書き込みを通知するように構成することができる。発行者システムは、記憶された口座ハッシュ及び販売者記憶の取引口座からの少なくとも一つのデータ要素が最新かどうかを判断することにより、保守口座ブロックチェーンへの書き込みを検証するように構成することができる。
様々な実施形態において、発行者システムは、取引口座更新要求を受信したことに応じて、発行者口座ハッシュを生成するように構成することができる。発行者口座ハッシュは、発行者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含むことができる。発行者システムは、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことができる。保守スマート・コントラクトは、呼び出されたことに応じて、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成することができる。システムは、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンから検索することができる。システムは、発行者記憶の取引口座データに基づいて、販売者記憶の取引口座データを更新することができる。
先の特徴及び要素は、本明細書においてそうではないと明確に示されない限り、排他的ではなく、様々な組み合わせとして組み合わせることができる。これらの特徴及び要素、並びに開示される実施形態の動作は、以下の説明及び添付の図面を考慮するとより明らかとなろう。
本開示の主題は、明細書の結論部分において、特に示され、明確に特許請求される。しかしながら、本開示の更に完全な理解は、詳細な説明及び特許請求の範囲を参照して図面と併せて考慮することにより得ることができ、図面では同一の数字は同一の要素を表す。
様々な実施形態による、記憶された取引口座データの保守のためのシステムの様々なシステム・コンポーネントを図示するブロック図である。 様々な実施形態による、販売者システムにより取引口座データを記憶する方法のための処理の流れ図である。 様々な実施形態による、販売者記憶の取引口座データを更新する方法のための処理の流れ図である。 様々な実施形態による、記憶された取引口座データを、発行者システムによって更新する方法のための処理の流れ図である。
本明細書における様々な実施形態の詳細な説明は、図示により様々な実施形態を示す添付の図面及び画像を参照する。これらの様々な実施形態は、当業者が本開示を実践できるよう十分詳細に説明されるが、本開示の思想及び範囲から逸脱することなく、他の実施形態が実現される場合があること、及び論理的且つ機械的な変更が成され得ることを理解されたい。したがって、本明細書における詳細な説明は、単なる例示の目的のために提示され、限定のためではない。例えば、方法又は処理の説明のいずれかにおいて述べられるステップは、あらゆる順序で実行されてもよく、提示される順序に限定されない。その上、機能又はステップのいずれも、一つ若しくは複数のサード・パーティにアウトソースされること、又は一つ若しくは複数のサード・パーティによって実施される場合がある。本開示の範囲から逸脱することなく、本明細書に説明されるシステム、装置、及び方法に対して、修正、追加、又は省略が成される場合がある。例えば、システム及び装置のコンポーネントは一体化されてもよく、又は別個にされてもよい。その上、本明細書で開示されるシステム及び装置の動作は、より多くの、より少ない、又は他のコンポーネントによって実施される場合があり、説明される方法は、より多くの、より少ない、又は他のステップを含む場合がある。追加的に、ステップは、あらゆる適切な順序で実施される可能性がある。本文書で使用される際、「それぞれ」は、ある集合の各メンバ、又はある集合の部分集合の各メンバを指す。更には、単数形へのあらゆる言及は複数形の実施形態を含み、二つ以上のコンポーネントへのあらゆる言及は単数形の実施形態を含むことができる。本明細書において具体的な利点が列挙されるが、様々な実施形態は列挙される利点のうち、いくつかを含む、いずれも含まない、又はすべてを含む場合がある。
様々な実施形態において、販売者記憶の取引口座データの保守のためのシステムが開示される。システムは、取引口座番号、有効期限、セキュリティ・コード(例えば、カード・セキュリティ・コード(CSC)、カード検証値(CVV)など)などへの変更、並びに取り消し通知を含め、販売者記憶の取引口座データを更新及び保守するため、様々な発行者システムと販売者システムとの連携用の効率的な処理を提供することができる。各販売者システムが各発行者システムと別個に通信する必要な場合がある通常のシステムの代わりに、本システムは、販売者システムが更新済取引口座データを、実質的に同時に、すべての発行者システム(又はそのサブセット)から検索できるようにする。様々な実施形態において、システムは、あらゆる所望の数の発行者システム及び/又は販売者システムを受け入れるようスケーリングすることができる。
様々な実施形態において、システムは、ピアツーピアのネットワーク上で複数のコンピューティング・デバイス(例えば、ノード)によって維持される分散台帳を使用することができる。各コンピューティング・デバイスは、分散台帳の複製及び/又は部分複製を保持し、ネットワーク内の一つ又は複数の他のコンピューティング・デバイスに通信して、データを検証して分散台帳に書き込む。分散台帳は、例えば合意ベースの検証、不変性、及び暗号法的なつながりを持つデータのブロックを含む、ブロックチェーン技術の特徴と機能性を使用することができる。ブロックチェーンは、データを含む相互接続されたブロックである台帳を含むことができる。各ブロックが個々の取引及びあらゆるブロックチェーン実行可能物の結果を保持するため、ブロックチェーンは、高度なセキュリティを提供することができる。各ブロックは、先行するブロックにリンクすることができ、タイムスタンプを含むことができる。各ブロックがブロックチェーン内の先行するブロックのハッシュを含むことができるため、ブロック同士をリンクすることができる。リンクしたブロックはチェーンを形成し、単一のチェーンに対して、一つの後続ブロックだけが他の一つの先行ブロックにリンクすることができる。フォークは、先行する一様なブロックチェーンから分岐チェーンが確立される際に可能な場合があるが、典型的には分岐チェーンのうちの一つだけが合意チェーンとして維持される。様々な実施形態において、ブロックチェーンは、非中央集権的な様式でデータのワークフロを執行するスマート・コントラクトを実装することができる。システムは、例えばコンピュータ、タブレット、スマートフォン、モノのインターネットのデバイス(「IoT」デバイス)などのユーザ・デバイスに展開されるアプリケーションを含むこともできる。アプリケーションは、ブロックチェーンと通信して(例えば、直接的に、又はブロックチェーン・ノードを介して)、データを送信及び検索することができる。様々な実施形態において、組織又はコンソーシアムを統制することは、ブロックチェーン上に記憶されたデータへのアクセスを制御することであり得る。管理組織に登録することにより、ブロックチェーン・ネットワークに参加できる場合がある。
本システムを通じて実施されるデータ転送は、実装される具体的なブロックチェーン技術のブロック作成時間によって決定され得る持続時間中、ブロックチェーン内の接続ピアに伝搬する。例えば、ETHEREUM(登録商標)ベースのネットワークでは、新しいデータ・エントリは書き込み時点から約13~20秒のうちに利用可能になる可能性がある。HYPERLEDGER(登録商標)Fabric1.0ベースのプラットフォームでは、持続時間は選択される具体的な合意アルゴリズムによって決まり、数秒のうちに実施され得る。この点で、システムにおいて、伝搬時間、並びにデータを転送すること、購入を開始すること、及び購入を完了することの速度は、既存のシステムに比べて改善される可能性があり、実装コスト及び市場投入までの時間も劇的に低減することができる。システムは、ブロックチェーンに記憶されるデータの不変的な性質により、少なくとも部分的に向上したセキュリティを更に提供し、様々なデータの入力と出力の改竄の可能性を低減する。その上、データをブロックチェーンに記憶することに先立って、暗号法的処理をデータに対して実施することにより、システムは購買要求及び購入のセキュリティの向上を提供することもできる。したがって、本明細書において説明される本システムを使用して、データを送信、記憶、アクセスすることにより、データのセキュリティが改善され、それによりコンピュータ又はネットワークが危険にさらされるリスクを低下させる。
様々な実施形態において、システムは、共通のデータ構造を設けることにより、データベースの同期エラーを低減することもできるため、記憶されたデータの整合性を少なくとも部分的に改善する。更には、関与する当事者とリアルタイムで(又は、ほぼリアルタイムで)データを同期させることにより、システムは、データの整合性、データの信頼性、及びデータのセキュリティを改善することができ、これにより業務プロセスの速度を向上させることもできる。システムにより、各ノードが記憶されたデータの完全な複製を用いて動作することができるため、従来型のデータベース(例えば、リレーショナル・データベース、分散型のデータベースなど)よりも信頼性及び耐障害性が更に向上し、それによって局所的なネットワーク停止及びハードウェア障害によるダウンタイムを少なくとも部分的に低減する。システムにより、各ノードがすべての接続ピアにメッセージをブロードキャストするため、信頼できるピアと信頼できないピアを有するネットワーク環境におけるデータ転送の信頼性が更に向上し、また各ブロックが先行ブロックへのリンクを含むため、ノードは欠落ブロックを迅速に検出し、欠落ブロックの要求をブロックチェーン内の他のノードに伝搬することができる。
このシステムは、コンピュータ及びネットワークの機能性を更に改善する。例えば、本明細書において説明される処理を使用してデータを送信、記憶、アクセスすることにより、データのセキュリティが改善され、コンピュータ又はネットワークが危険にさらされるリスクを低下させる。更なる例として、本明細書において更に議論するように、完全な口座データの代わりに取引口座データの暗号ハッシュを送信することによって、取引口座データのプライバシ及びセキュリティを改善することができる。その上、暗号ハッシュは、マルチパーティ又はツーパーティの計算方法を使用して生成し、暗号ハッシュの整合性を高め、少なくとも部分的に総当たり攻撃及び/又はレインボー・テーブル攻撃を防ぐことができる。様々な実施形態において、システムの連携的な性質は、要求を、販売者が所与の取引口座についての最新の情報を有していないシナリオに限定することにより、ネットワーク上で送信されるデータ量を減少させることができる。
様々な実施形態において、図1を参照して、販売者記憶の取引口座データの保守のためのシステム100が開示される。システム100は、互いに通信する、様々なコンピューティング・デバイス、ソフトウェア・モジュール、ネットワーク、及びデータ構造を含む可能性がある。システム100は、ウェブ・サービス、ユーティリティ・コンピューティング、汎用及び個別化されたコンピューティング、セキュリティ及び識別情報ソリューション、自律的コンピューティング、クラウド・コンピューティング、コモディティ・コンピューティング、移動性及びワイヤレス・ソリューション、オープン・ソース、バイオメトリクス、グリッド・コンピューティング、並びに/又はメッシュ・コンピューティングと連携した使用を企図している。本明細書において説明されるように、ブロックチェーン技術を実装するシステム100は、分散型の耐改竄性データ・ストアとしてブロックチェーンを使用することにより、販売者記憶の取引データの保守及び関連する処理を簡略化及び自動化することができる。特定の金融機関の代わりに、例えば自律分散型組織(DAO)によって記憶されるデータを使用して検証が行われるため、連合型又はパブリック型のブロックチェーンを使用する様々な実施形態については、透明性が非常に高い。
様々な実施形態において、システム100は、ブロックチェーン・ネットワーク101によって通信する、一つ又は複数の発行者システム110及び販売者システム120を含む場合がある。ブロックチェーン・ネットワーク101は、本明細書において更に議論されるように、一つ又は複数のブロックチェーン・ノードを介して、各発行者システム110及び/又は販売者システム120と電子的に通信することができる。ブロックチェーン・ネットワーク101は、性質として、プライベート型、コンソーシアム型、及び/又はパブリック型のブロックチェーン・ネットワーク又はピアツーピアのネットワークであり得る(例えば、ETHEREUM(登録商標)、HYPERLEDGER(登録商標)Fabricなど)。コンソーシアム型及びプライベート型のネットワークは、ブロックチェーンの内容に対して制御の改善を提供することができ、パブリック型のネットワークは、セキュリティを改善するために累積したネットワークの計算能力を活用することができる。ブロックチェーン・ネットワーク101は、本明細書において更に議論されるように、互いに電子的に通信する様々なブロックチェーン・ノードを含むことができる。
様々な実施形態において、ブロックチェーン・ネットワーク101は、一つ又は複数のスマート・コントラクトをホスト及び/又は実装することができる。スマート・コントラクトは、本明細書において更に議論されるように、システム100においてエンドツーエンドのデータ・フローを制御し、様々な取引データの実行及び記録をサポートすることにより、保守処理を自律的に統制することができる。例えば、様々な実施形態によると、ブロックチェーン・ネットワーク101は、一つ又は複数の保守スマート・コントラクト105をホストすることができる。様々な実施形態において、ブロックチェーン・ネットワーク101は、一つ又は複数の発行者固有の、及び/又は販売者固有のスマート・コントラクト(例えば、プライベートなスマート・コントラクト)をホストすることもできる。ブロックチェーン・ネットワーク101内の各スマート・コントラクトは、以下で更に議論されるように、APIコールなどによって渡される所定の関数パラメータに基づいて、データを所定のフォーマットで保守口座ブロックチェーン107に書き込む、又はデータをシステム100内の一つ又は複数のシステム又は当事者に送信する実行可能物を含むことができる。各スマート・コントラクトは、例えばSolidity又はあらゆる他の適切なスマート・コントラクト用プログラミング言語などのプログラミング言語で記述されたプログラムを含む場合がある。
様々な実施形態において、保守スマート・コントラクト105は、一つ又は複数の発行者システム110及び/又は販売者システム120に呼び出されて、本明細書において開示される様々な動作を実施するように構成することができる。例えば、保守スマート・コントラクト105は、本明細書において更に議論されるように、保守ワークフロを制御すること、データを保守口座ブロックチェーン107に書き込むこと、保守口座ブロックチェーン107からデータを検索すること、一つ又は複数の実体に通知を送信することなどを行うように構成することができる。
様々な実施形態において、それぞれプライベートなスマート・コントラクトは、特定の販売者と特定の発行者システムとの間のプライベートな通信を可能にするように構成することができる。例えば、販売者は、本明細書において更に議論されるように、プライベートなスマート・コントラクトを呼び出して、データ又はデータに関する要求を、発行者システムに対してプライベートに送信することができる。更なる例として、発行者システムは、本明細書において更に議論されるように、プライベートなスマート・コントラクトを呼び出して、データを販売者にプライベートに返すことができる。その点において、プライベートなスマート・コントラクトは、APIコールと同様に機能することができ、特定の発行者システムと販売者との間で、重要なデータのプライベートな通信及び転送を可能にすることができる。
様々な実施形態において、保守スマート・コントラクト105及び/又はブロックチェーン・ネットワーク101内の一つ又は複数の参加者(例えば、ブロックチェーン・ノード)は、ブロックチェーン状態リポジトリを記憶して維持することができる。ブロックチェーン状態リポジトリは、ブロックチェーン・ネットワーク101の状態のローカル複製を含むことができ、ブロックチェーン・ネットワーク101における最新の取引に基づく保守口座ブロックチェーン107からの最新のデータ(例えば、ワールドステート)を含んでいる。例えば、様々な実施形態によると、ブロックチェーン状態リポジトリは、口座ハッシュ、発行者識別子、取引口座データなどを含むことができる。データは、発行者識別子でグループ化されてもよい。
様々な実施形態において、システム100は一つ又は複数の発行者システム110を含む場合がある。例えば、システム100は、第1の発行者システム110-1、第2の発行者システム110-2、及び/又は任意の他の数の発行者システム(総称して、発行者システム110)を含む場合がある。「発行者システム」、「取引口座発行者」、「金融機関」などに類似した言い回し及び用語には、取引口座サービスを提供するあらゆる実体が含まれる場合がある。よく「金融機関」と称されるが、一つ又は複数の発行者システム110は、あらゆるタイプの銀行、貸し手、又はクレジット・カード会社、カード・スポンサ会社、若しくは発行者システム110と提携しているサード・パーティ発行者など他のタイプの口座発行機関を表す場合がある。取引の一部のフェーズには中間決済機関など他の参加者が関与する場合があることに更に留意されたい。
様々な実施形態において、各発行者システム110は、支払いネットワークなどの所与の金融機関用に様々なシステム、エンジン、及びコンポーネントへのアクセス・ポイントを提供するように構成された、サブネットワーク、コンピュータ・ベースのシステム、ソフトウェア・コンポーネントなどを含む場合がある。例えば、発行者システム110は、金融及び/又は取引用のシステム及び処理に関連するシステムとデータベース、例えば一つ又は複数の認可エンジン、認証エンジンとデータベース、決済エンジンとデータベース、売掛金システムとデータベース、買掛金システムとデータベースなどを含むことができる。更なる例として、発行者システム110は、取引を認可して決済すること、取引口座メンバ・データベース(例えば、ローカル発行者リポジトリ117-1、117-2を含む)、売掛金データベース、買掛金データベースなどを維持することなどを行うように構成することができる。様々な実施形態において、発行者システム110は、本明細書において更に議論されるように、取引を認可することができるクレジット認可システム(CAS:Credit Authorization System)を、それぞれ含む場合もある。各発行者システム110は、本明細書において更に議論されるように、ブロックチェーン・ネットワーク101と電子的に通信することができる。
様々な実施形態において、各発行者システム110は、発行者保守の取引口座データを、生成、記憶、及び更新するように構成することができる。発行者保守の取引口座データは、口座ハッシュ(例えば、様々な取引口座データの暗号ハッシュ)、過去の口座ハッシュ(例えば、以前の取引口座データからの口座ハッシュ)、取引口座若しくは取引口座機器(例えば、物理的なカード)有効期限、取引口座住所(例えば、番地、市、州、郵便番号など)、取引口座連絡先情報(例えば、電話番号、電子メール・アドレスなど)などを含むことができる。各発行者システム110は、暗号演算を実施すること、及び口座ハッシュの生成をすることができる、ハードウェア及び/又はソフトウェアのコンポーネントを含むことができる。例えば、発行者システム110は、取引口座データから選択したデータ要素を使用して、例えば、口座保有者氏名(例えば、ファースト・ネーム、ラスト・ネームなど)、取引口座番号、郵便番号、取引機器有効期限などのうちの一つ又は複数を使用して、口座ハッシュを生成するように構成することができる。発行者システム110は、例えば、暗号法SHA-2シリーズからの暗号化アルゴリズム(例えば、SHA256、SHA512など)などのあらゆる適切なハッシュ化アルゴリズム、及び/又は本明細書において議論されるあらゆる他の暗号化アルゴリズム若しくは技法を使用して口座ハッシュを生成することができる。様々な実施形態において、口座ハッシュを生成することは、総当たり攻撃、レインボー・テーブル攻撃、及び類似のセキュリティ攻撃に対して口座ハッシュをよりセキュアにする技法、例えば、鍵ストレッチング技法、マルチパーティ計算法(又はツーパーティ計算法)などを実装することを更に含む場合がある。様々な実施形態において、口座ハッシュは、公開データからは容易に推測することができない発行者システム110からのデータを使用して、更にセキュアにすることもできる。
発行者システム110-1又は110-2が取引口座番号を変更したこと(例えば、有効期限に応じて、又は口座が危険にさらされていることに応じて)、有効期限を更新したこと、又は取引口座を取り消したことに応じて、対応する発行者システム110は、本明細書において更に議論されるように、変更された又は更新された取引口座データに基づいて更新済口座ハッシュを生成することができる。
様々な実施形態において、各発行者システム110は、コンピュータ・ベースであってもよく、プロセッサ、有形の非一時的コンピュータ可読メモリ、及び/又はネットワーク・インターフェースを、他の適切なシステム・ソフトウェア及びハードウェア・コンポーネントと共に含むことができる。有形の非一時的メモリに記憶された命令により、発行者システム110は、本明細書に説明されるような様々な機能を実施することができる。様々な実施形態において、各発行者システム110は、発行者ソフトウェア開発キット(SDK)112、発行者ブロックチェーン・ノード115、及び/又はローカル発行者リポジトリ117のうちの一つ又は複数を含む場合がある。例えば、第1の発行者システム110-1は、第1の発行者SDK112-1、第1の発行者ブロックチェーン・ノード115-1、及び/又は第1のローカル発行者リポジトリ117-1を含む場合がある;第2の発行者システム110-2は、第2の発行者SDK112-2、第2の発行者ブロックチェーン・ノード115-2、及び/又は第2のローカル発行者リポジトリ117-2を含む場合があるなど。
様々な実施形態において、各発行者ブロックチェーン・ノード115は、ブロックチェーン・ネットワーク101内の一つ又は複数の他のブロックチェーン・ノードと電子的に通信することができる。各発行者ブロックチェーン・ノード115は、関連付けられた発行者システム110がブロックチェーン・ネットワーク101及び/又は保守口座ブロックチェーン107にアクセスできるように構成することができる。発行者ブロックチェーン・ノード115は、本明細書において更に議論されるように、保守口座ブロックチェーン107の複製(又は部分的な複製)を維持すること、データ及びブロックを保守口座ブロックチェーン107に書き込むこと及び/若しくは保守口座ブロックチェーン107から検索すること、保守口座ブロックチェーン107のブロックを検証すること、並びに/又は保守口座ブロックチェーン107への書き込みをブロックチェーン・ネットワーク101に伝搬すること、を行うように構成することができる。各発行者ブロックチェーン・ノード115は、ブロックチェーン・ネットワーク101内の一つ又は複数のブロックチェーン・ノードと通信して、ブロックを検証して保守口座ブロックチェーン107に書き込み、ブロックチェーン・ノード間の合意を確立することができる。例えば、ブロックチェーン・ノードは、プルーフ・オブ・ワーク、プルーフ・オブ・ステーク、実際のビザンチン・フォールト・トレランス、委任型(delegated)プルーフ・オブ・ステーク、又は他の適切な合意アルゴリズムに基づいて、合意を確立することができる。
各発行者ブロックチェーン・ノード115は、例えばコンピュータ若しくはプロセッサ、又はコンピュータ、プロセッサ、及び/若しくは特定用途向け集積回路(ASIC)のセットなどの、一つ又は複数のコンピューティング・デバイスを含む場合があるが、他のタイプのコンピューティング・ユニット又はシステムも使用することができる。例示的なコンピューティング・デバイスとしては、サーバ、プール・サーバ、ラップトップ、ノートブック型、ハンドヘルド・コンピュータ、携帯情報端末、携帯電話、スマートフォン(例えば、IPHONE(登録商標)、BLACKBERRY(登録商標)、ANDROID(登録商標)など)、タブレット、ウェアラブル(例えば、スマート・ウォッチ、スマート・グラスなど)、モノのインターネット(IoT)用デバイス、又はネットワーク上でデータを受信することができる、あらゆる他のデバイスなどを挙げることができる。各発行者ブロックチェーン・ノード115は、アプリケーションを実行して、保守口座ブロックチェーン107と対話すること、他のデバイスと通信すること、暗号演算を実施すること、及びその他の形で発行者システム110内部で動作することができる。例えば、各発行者ブロックチェーン・ノード115は、シン・クライアント(ウェブ)、ハイブリッド(例えば、APPLE(登録商標)iOS及びANDROID(登録商標)などの、ウェブとネイティブ)であり得るクライアント・アプリケーション、又はETHEREUM(登録商標)により維持されるブロックチェーン・データベースと互換性のあるweb3 APIなどの、アプリケーション・プログラミング・インターフェース(API)コールを行い、保守口座ブロックチェーン107と対話するためのネイティブ・アプリケーションを実行することができる。
様々な実施形態において、保守口座ブロックチェーン107は、レコードを可読の状態で維持し、改竄に耐性がある、分散型台帳であることができる。保守口座ブロックチェーン107は、例えば、ETHEREUM(登録商標)、Open Chain、Chain Open Standard、HYPERLEDGER(登録商標)Fabric、CORDA CONNECT(登録商標)、INTEL(登録商標)Sawtoothなどのブロックチェーン技術に基づくことができる。保守口座ブロックチェーン107は、データを含む相互接続されたブロックである台帳を含むことができる。各ブロックは、先行するブロックにリンクすることができ、タイムスタンプを含むことができる。各ブロックは、一つ又は複数の口座ハッシュ、取引口座データなどを保持することができる。システム100のサポートで実装される場合、保守口座ブロックチェーン107は、システム100における保守取引口座の不変なログとして機能することができる。保守口座ブロックチェーン107は、ブロックチェーン・ネットワーク101内の様々なブロックチェーン・ノード(例えば、第1の発行者ブロックチェーン・ノード115-1、第2の発行者ブロックチェーン・ノード115-2、第1の販売者ブロックチェーン・ノード125-1、第2の販売者ブロックチェーン・ノード125-2など)上で保守することができ、本明細書において更に議論されるように、保守口座ブロックチェーン107の複製、又はその部分的な複製の形態で、保守することができる。ブロックチェーン・ノード同士で合意を確立することにより、ブロック(例えば、取引口座データ、口座ハッシュなどを含む)を、保守口座ブロックチェーン107へ書き込むことができる。例えば、合意は、プルーフ・オブ・ワーク、プルーフ・オブ・ステーク、実際のビザンチン・フォールト・トレランス、委任型プルーフ・オブ・ステーク、又は他の適切な合意アルゴリズムに基づいて確立することができる。
ブロックチェーン・アドレスは、システム100において一意な識別子として機能するよう、各発行者システム110に一意に割り当てることができる。例えば、各発行者システム110は、システム100及び/又は既存の信頼できる参加者(例えば、アイデンティティ・プロバイダ)に登録することができ、秘密鍵と公開鍵の対を割り振って提供することができる。例えば、様々な実施形態によると、許可されたブロックチェーン・コンソーシアムでは、それぞれ個々の参加者システムは、公開鍵と秘密鍵の対をサード・パーティ認証局(例えば、DIGICERT(登録商標)、VERISIGN(登録商標)など)から調達することになる。ブロックチェーン・コンソーシアムでは、参加者発行者システム110のうちの一つが、ブロックチェーン・ネットワークを開始して作成する場合があり、他の参加者のうちの一つ又は複数を、ブロックチェーン・コンソーシアムに参加させるよう招待する(又は、それらから招待要求を受け取る)ことができる。招待された参加者は、ブロックチェーン・コンソーシアムに参加するために構成要求を送信することにより、要求を受け入れることができる。構成要求は、ブロックチェーン・コンソーシアムの既存の参加者により、デジタル署名検証を使用して検証及び/又は承認され得る。秘密鍵は、それぞれ個別の発行者システム110で記憶することができ、本明細書において更に議論されるように、データは、保守口座ブロックチェーン107への書き込みに先立って、公開鍵で暗号化することができる。
様々な実施形態において、各発行者のSDK112は、各発行者システム110(及び/又は発行者システム110のサブシステム若しくはコンポーネント)と対応する発行者ブロックチェーン・ノード115との間で通信及び送信を可能にするように構成された、一つ又は複数のソフトウェア、サービス、インターフェース、アプリケーション・プログラミング・インターフェース(API)、ソフトウェア開発キット(SDK)などを含むことができる。例えば、各発行者SDK112は、各発行者システム110から(例えば、ユーザ端末などを介して)関連付けられた発行者ブロックチェーン・ノード115へのクエリ及びコマンドを、変換して送信するように構成されたプログラム用ライブラリを含むことができる。発行者SDK112は、各発行者ブロックチェーン・ノード115によって受信された要求をブロックチェーンのフォーマット(システム固有のセキュリティ証明書を使用するデジタル署名が含まれる場合がある)に変換する。例えば、各発行者システム110は、暗号演算を実施するために使用される一つ又は複数のシステム固有暗号鍵を記憶して維持するように構成することができる。更なる例として、様々な実施形態によると、発行者SDK112は、保守口座ブロックチェーン107から検索したデータを、発行者システム110によって可読のフォーマットに変換するように構成することができ、これにはデジタル署名検証及び/又はブロックチェーン固有のデータ・レイアウトからアプリケーション固有のデータ・レイアウトへのデータ変形が含まれる場合がある。
様々な実施形態において、各ローカル発行者リポジトリ117は、発行者固有の保守取引口座データを、記憶、及び維持するように構成することができる。各ローカル発行者リポジトリ117は、本明細書において説明される、あらゆる適切なデータベース、データ構造、リスト、ファイル、リポジトリなどを含むことができる。ローカル発行者リポジトリ117は、口座ハッシュを記憶して、過去の口座ハッシュと関連付けるように構成することができる。その点では、関連付けられた発行者システム110が取引口座データを更新して新しい口座ハッシュを生成したことに応じて、ローカル発行者リポジトリ117は、新しい口座ハッシュを記憶して、新しい口座ハッシュを初期ハッシュ(例えば、タグ、識別子などを介して)として指定し、記憶されている過去の口座ハッシュの初期ハッシュ指定を除去することができる。
様々な実施形態において、システム100は一つ又は複数の販売者システム120を含む場合がある。例えば、システム100は、第1の販売者システム120-1、第2の販売者システム120-2、及び/又は任意の他の数の販売者システム(総称して、販売者システム120)を含む場合がある。各販売者システム120は、ブロックチェーン・ネットワーク101、資格証明発行局130、及び/又は一つ若しくは複数の発行者システム110と電子的に通信することができる。「販売者システム」、「販売者」、「事業体」などに類似した言い回し及び用語は、互いに互換的に使用される場合があり、あらゆる人物、実体、配信システム、ソフトウェア、並びに/又は、商品若しくはサービスの配信チェーン内のプロバイダ、ブローカ、及び/若しくは任意の他の実体であるハードウェアを意味する。例えば、一つ又は複数の販売者システム120は、食料品店、小売店、旅行代理店、サービス・プロバイダ、オンライン販売者などと関連付けられ得る。様々な実施形態では、販売者システム120は、オンライン販売者と一つ又は複数の発行者システム110との間の接続を提供するように構成される支払いサービス・プロバイダでもあり得る。
販売者システム120は、例えば商品及びサービスの販売の間に取引を完了するために、様々なユーザと対話するように構成することができる。販売者システム120は、口座登録要求を受信して処理するように構成することができる。口座登録要求は、ユーザが取引口座を販売者システム120に記憶したいと所望することに応じて受信される場合がある。例えば、口座登録要求は、ユーザ登録処理の間、取引の間、又はチェックアウト処理の一部などとして、販売者システム120により受信される場合がある。口座登録要求は、ユーザ・データ(例えば、ファースト・ネーム、ラスト・ネームなど)、発行者識別子(例えば、取引口座を発行した発行者システム110)、及び例えば取引口座番号、取引口座住所(例えば、番地、市、州、郵便番号など)、取引口座セキュリティ・コード(例えば、カード・セキュリティ・コード(CSC)、カード検証値(CVV)など)、取引口座有効期限などの取引口座データを含むことができる。販売者システム120は、本明細書において更に説明するように、販売者記憶の取引口座データを、記憶、更新、及び維持するように構成することができる。各販売者システム120は、ハードウェア及び/又はソフトウェアのあらゆる適切な組み合わせを含むことができ、サーバ、コンピューティング・デバイス、データ構造などのうちの一つ又は複数を含むことができる。
様々な実施形態において、各販売者システム120は、コンピュータ・ベースであってもよく、プロセッサ、有形の非一時的コンピュータ可読メモリ、及び/又はネットワーク・インターフェースを、他の適切なシステム・ソフトウェア及びハードウェア・コンポーネントと共に含むことができる。有形の非一時的メモリに記憶された命令により、各販売者システム120は、本明細書に説明されるような様々な機能を実施することができる。様々な実施形態において、各販売者システム120は、販売者ソフトウェア開発キット(SDK)122、販売者ブロックチェーン・ノード125、及び/又はローカル販売者リポジトリ127のうちの一つ又は複数を含む場合がある。例えば、第1の販売者システム120-1は、第1の販売者SDK122-1、第1の販売者ブロックチェーン・ノード125-1、及び/又は第1のローカル販売者リポジトリ127-1を含む場合がある;第2の販売者システム120-2は、第2の販売者SDK122-2、第2の販売者ブロックチェーン・ノード125-2、及び/又は第2のローカル販売者リポジトリ127-2を含む場合がある、など。
様々な実施形態において、各販売者ブロックチェーン・ノード125は、ブロックチェーン・ネットワーク101内の一つ又は複数の他のブロックチェーン・ノードと電子的に通信することができる。各販売者ブロックチェーン・ノード125は、関連付けられた販売者システム120が、ブロックチェーン・ネットワーク101及び/又は保守口座ブロックチェーン107にアクセスできるように構成することができる。販売者ブロックチェーン・ノード125は、本明細書において更に議論されるように、保守口座ブロックチェーン107の複製(又は部分的な複製)を維持すること、データ及びブロックを保守口座ブロックチェーン107に書き込むこと及び/若しくは保守口座ブロックチェーン107から検索すること、保守口座ブロックチェーン107のブロックを検証すること、並びに/又は保守口座ブロックチェーン107への書き込みをブロックチェーン・ネットワーク101に伝搬すること、を行うように構成することができる。各販売者ブロックチェーン・ノード125は、ブロックチェーン・ネットワーク101内の一つ又は複数のブロックチェーン・ノードと通信してブロックを検証し、保守口座ブロックチェーン107に書き込み、ブロックチェーン・ノード間の合意を確立することができる。例えば、ブロックチェーンは、プルーフ・オブ・ワーク、プルーフ・オブ・ステーク、実際のビザンチン・フォールト・トレランス、委任型プルーフ・オブ・ステーク、又は他の適切な合意アルゴリズムに基づいて、合意を確立することができる。
各販売者ブロックチェーン・ノード125は、例えばコンピュータ若しくはプロセッサ、又はコンピュータ、プロセッサ、及び/若しくは特定用途向け集積回路(ASIC)のセットなどの、一つ又は複数のコンピューティング・デバイスを含む場合があるが、他のタイプのコンピューティング・ユニット又はシステムも使用することができる。例示的なコンピューティング・デバイスとしては、サーバ、プール・サーバ、ラップトップ、ノートブック型、ハンドヘルド・コンピュータ、携帯情報端末、携帯電話、スマートフォン(例えば、IPHONE(登録商標)、BLACKBERRY(登録商標)、ANDROID(登録商標)など)、タブレット、ウェアラブル(例えば、スマート・ウォッチ、スマート・グラスなど)、モノのインターネット(IoT)用デバイス、又はネットワーク上でデータを受信することができる、あらゆる他のデバイスなどを挙げることができる。各販売者ブロックチェーン・ノード125は、アプリケーションを実行して、保守口座ブロックチェーン107と対話すること、他のデバイスと通信すること、暗号演算を実施すること、及びその他の形で販売者システム120内部で動作することができる。例えば、各販売者ブロックチェーン・ノード125は、シン・クライアント(ウェブ)、ハイブリッド(例えば、APPLE(登録商標)iOS及びANDROID(登録商標)などの、ウェブとネイティブ)であり得るクライアント・アプリケーション、又はETHEREUM(登録商標)により維持されるブロックチェーン・データベースと互換性のあるweb3 APIなどの、アプリケーション・プログラミング・インターフェース(API)コールを行い保守口座ブロックチェーン107と対話するためのネイティブ・アプリケーションを実行することができる。
様々な実施形態において、各販売者のSDK122は、各販売者システム120(及び/又は販売者システム120のサブシステム若しくはコンポーネント)と対応する販売者ブロックチェーン・ノード125との間で通信及び送信を可能にするように構成された、一つ又は複数のソフトウェア、サービス、インターフェース、アプリケーション・プログラミング・インターフェース(API)、ソフトウェア開発キット(SDK)などを含むことができる。例えば、各販売者SDK122は、各販売者システム120から(例えば、ユーザ端末などを介して)関連付けられた販売者ブロックチェーン・ノード125へのクエリ及びコマンドを、変換して送信するように構成されたプログラム用ライブラリを含むことができる。販売者SDK122は、各販売者ブロックチェーン・ノード125によって受信された要求をブロックチェーンのフォーマット(システム固有のセキュリティ証明書を使用するデジタル署名が含まれる場合がある)に変換する。例えば、各販売者システム120は、暗号演算を実施するために使用される一つ又は複数のシステム固有暗号鍵を記憶して維持するように構成することができる。更なる例として、様々な実施形態によると、販売者SDK122は、保守口座ブロックチェーン107から検索したデータを、販売者システム120によって可読のフォーマットに変換するように構成することができ、これにはデジタル署名検証及び/又はブロックチェーン固有のデータ・レイアウトからアプリケーション固有のデータ・レイアウトへのデータ変形が含まれる場合がある。
様々な実施形態では、データが保守口座ブロックチェーン107に書き込まれたことに応じて、販売者システム120は、一つ又は複数の通知を生成するように構成されたブロックチェーン・オラクルを、それぞれ含むことができる。例えば、ブロックチェーン・オラクルは、関連付けられた販売者ブロックチェーン・ノード125を、定義された間隔で、保守口座ブロックチェーン107への新しい書き込みを探索するよう、問い合わせるように構成され得る。ブロックチェーン・オラクルは、通知を生成する保守口座ブロックチェーン107に書き込まれたデータのタイプを示すフィルタを含む通知トリガにより制御することができる。
様々な実施形態において、各ローカル販売者リポジトリ127は、販売者記憶の取引口座データを、記憶、及び維持するように構成することができる。各ローカル販売者リポジトリ127は、本明細書において説明される、あらゆる適切なデータベース、データ構造、リスト、ファイル、リポジトリなどを含むことができる。ローカル販売者リポジトリ127は、口座ハッシュを記憶して、過去の口座ハッシュと関連付けるように構成することができる。その点では、関連付けられた販売者システム120が取引口座データを更新して新しい口座ハッシュを生成したことなどに応じて、ローカル販売者リポジトリ127は、新しい口座ハッシュを記憶して、新しい口座ハッシュを初期ハッシュ(例えば、タグ、識別子などを介して)として指定し、記憶されている過去の口座ハッシュの初期ハッシュ指定を除去することができる。
様々な実施形態において、資格証明発行局130は一つ又は複数の販売者システム120(例えば、第1の販売者システム120-1、第2の販売者システム120-2など)と電子的に通信することができる。資格証明発行局130は、ハードウェア、ソフトウェア、及び/又はデータベース・コンポーネントのあらゆる適切な組み合わせを含むことができる。資格証明発行局130は、一つ又は複数の販売者システム120から販売者資格証明についての要求を受信し、リターンとして販売者資格証明を発行するように構成することができる。販売者資格証明は、販売者システム120の識別情報についての情報を明らかにすることなく、有効な販売者口座を特定するように構成された、生成ID、証明書、トークンなどを含むことができる。その点では、販売者資格証明の使用は、販売者システム120が、販売者ブロックチェーン・ノード125を介して、データを保守口座ブロックチェーン107に書き込むことができるようにすることができ、それにより、サード・パーティは、販売者システム120の識別情報を検出又は追跡できなくなる。例えば、販売者資格証明は、資格証明発行局130によって、ゼロ知識証明プロトコル及び技術、例えばIBM(登録商標)IDENTITY MIXERのインテグレーションなどを使用して生成することができる。販売者システム120は、資格証明発行局130に登録することができ、保守口座ブロックチェーン107に書き込まれる一つ又は複数の生成された口座ハッシュについて販売者資格証明を要求することができる。様々な実施形態では、資格証明発行局130は、販売者資格証明に基づいて、及び/又はあらゆる他の適切な検証方法により、各販売者システム120を検証することができる。様々な実施形態において、資格証明発行局130は、一つ又は複数の発行者システムを含む場合がある。様々な実施形態において、資格証明発行局130は、販売者システム120に資格証明を発行するように構成された、一つ又は複数の独立的な実体を含むことができる。
本明細書において使用される際、「送信する」には、電子データの少なくとも一部を一つのシステム100コンポーネントから別のものに送信することが含まれる場合がある。加えて、本明細書において使用される際、「データ」、「情報」などには、デジタル又は任意の他の形態のコマンド、クエリ、ファイル、メッセージ、記憶用のデータなどの情報を包含することが含まれる場合がある。
本明細書において使用される際、「電子的通信」には、システム100コンポーネントがデータを送受信することを可能にする、物理的な結合及び/又は非物理的な結合が含まれる場合がある。例えば、「電子的通信」は、CANバス・プロトコル、イーサネット物理層プロトコル(例えば、10BASE-T、100BASE-T、1000BASE-Tなどを使用するもの)、IEEE1394インターフェース(例えば、FireWire)、サービス総合デジタル網(ISDN)、デジタル加入者線(DSL)、802.11a/b/g/n/ac信号(例えば、Wi-Fi)、短波長UHF電波を用いてIEEE802.15.1(例えば、Bluetooth Special Interest Groupによって維持されるBLUETOOTH(登録商標)プロトコル)により少なくとも部分的に定義された無線通信プロトコル、IEEE802.15.4(例えば、ZigBee allianceによって維持されるZIGBEE(登録商標)プロトコル)により少なくとも部分的に定義された無線通信プロトコル、セルラ・プロトコル、赤外プロトコル、光学プロトコル、又は有線若しくは無線接続を介して情報を送信することができるあらゆる他のプロトコルなどの、有線又は無線プロトコルを指す場合がある。
システム100コンポーネントのうちの一つ又は複数は、ネットワークによって電子的に通信することができる。本明細書で使用される際、用語「ネットワーク」は、あらゆるクラウド、クラウド・コンピューティング・システム、又はハードウェア及び/若しくはソフトウェア・コンポーネントを組み込む電子的通信システム若しくは方法を更に含む場合がある。ノード間の通信は、例えば電話網、エクストラネット、イントラネット、インターネット、加盟店端末装置(携帯情報端末、携帯電話、キオスク、タブレットなど)、オンライン通信、衛星通信、オフライン通信、無線通信、トランスポンダ通信、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、仮想プライベート・ネットワーク(VPN)、ネットワーク化若しくはリンク化デバイス、キーボード、マウス、及び/又はあらゆる適切な通信若しくはデータ入力様式などのあらゆる適切な通信チャネルを通じて実現することができる。その上、本明細書においてシステムはTCP/IP通信プロトコルで実装されるように説明されることが多いが、システムはインターネットワーク・パケット交換(IPX)、APPLETALK(登録商標)プログラム、IP-6、NetBIOS、OSI、あらゆるトンネリング・プロトコル(例えば、IPsec、SSHなど)、又はあらゆる数の既存の若しくは将来的なプロトコルを使用して実装することもできる。ネットワークが性質として、インターネットなどのパブリックなネットワークである場合、ネットワークはセキュアではなく盗聴者に対してオープンであると想定することが有利な場合がある。インターネットに関連して利用されるプロトコル、規格、及びアプリケーション・ソフトウェアに関する具体的な情報は、一般的に当業者に既知であるため、本明細書において詳しく述べる必要はない。
「クラウド」又は「クラウド・コンピューティング」は、構成可能なコンピューティング・リソース(例えば、ネットワーク、サーバ、ストレージ、アプリケーション、及びサービス)の共有プールへの便利でオンデマンドのネットワーク・アクセスを可能にするためのモデルを含み、最小限の管理努力又はサービス・プロバイダとの対話で、迅速にプロビジョニングされリリースされる。クラウド・コンピューティングは、共有サーバが、リソース、ソフトウェア、データをオンデマンドでコンピュータ及び他のデバイスに提供する、場所独立的なコンピューティングを含むことができる。クラウド・コンピューティングに関する更なる情報は、NIST(National Institute of Standards and Technology)のクラウド・コンピューティングの定義を参照されたい。
様々なシステム・コンポーネントは独立的に、別個に、集合的に、データ・リンクを介して、ネットワークに適切に結合され得、データ・リンクには例えば通常、標準モデム通信、ケーブル・モデム、DISH NETWORKS(登録商標)、ISDN、DSL、又は様々な無線通信方法に関して用いられるようなローカル・ループ上のインターネット・サービス・プロバイダ(ISP)への接続が含まれる。ネットワークは、対話型テレビジョン(ITV)ネットワークなど他のタイプのネットワークとして実装される場合もあることに留意されたい。その上、システムは、本明細書において説明される類似の機能性を有するあらゆるネットワーク上での、あらゆる商品、サービス、又は情報の、使用、販売、又は配信を企図している。
ネットワークは、セキュアではない場合がある。したがって、ネットワーク上の通信はデータ暗号化を利用することがある。暗号化は、現在当分野で利用可能な、又は利用可能になる可能性がある技法のうちのいずれかを用いて実施することができる。例えば、Twofish、RSA、エルガマル、ショア署名、DSA、PGP、PKI、GPG(GnuPG)、HPEフォーマット保持暗号化(FPE)、Voltage、Triple DES、Blowfish、AES、MD5、HMAC、IDEA、RC6、並びに対称及び非対称暗号化システムなどである。ネットワーク通信は、SHA系暗号化法、楕円曲線暗号化法(例えば、ECC、ECDH、ECDSAなど)、及び/又は開発中の他のポスト量子暗号化アルゴリズムを組み込む場合もある。
簡単にするため、従来のデータ・ネットワーキング、アプリケーション開発、及びシステム100の他の機能上の態様は、本明細書において詳細には説明しない場合がある。更には、本明細書に含まれる様々な図面に示される連結線は、様々な要素間の例示的な機能上の関係性及び/又は電子的通信を表現することを意図されている。現実のシステムにおいては、多くの代替的又は追加的な機能上の関係性又は電子的通信が存在し得ることに留意されたい。
次に図2~図4を参照すると、描かれている処理の流れ及びスクリーンショットは、単なる実施形態であり、本開示の範囲を限定することは意図されていない。例えば、方法又は処理の説明のいずれかにおいて述べられるステップは、あらゆる順序で実行されてもよく、提示される順序に限定されない。以下の説明は、図2~図4に描かれるステップ及びユーザ・インターフェースの要素だけでなく、図1を参照して上述したような様々なシステム・コンポーネントにも適当な参照を行うことを諒解されたい。まず、例示の実施形態が図面及び以下の説明で示されるが、本開示の原理は、現在知られていても知られていなくても、あらゆる数の技法を用いて実装することができることが理解されるべきである。本開示は、例示の実装形態、並びに図面及び以下の説明で示される技法に決して限定されるべきではない。そうではないと具体的に述べられない限り、図面に描かれる物品は必ずしも縮尺通りに描かれていない。
様々な実施形態において、また図2を特に参照して、販売者システムによって取引口座を記憶するための方法201が開示される。販売者システム120は、口座登録要求を受信する(ステップ202)。口座登録要求は、ユーザが取引口座を販売者システム120に記憶したいとの所望に応じて受信される場合がある。例えば、口座登録要求は、ユーザ登録処理の間、取引の間、チェックアウト処理の一部としてなど、販売者システム120により受信される場合がある。口座登録要求は、ユーザ・データ(例えば、ファースト・ネーム、ラスト・ネームなど)、発行者識別子(例えば、取引口座を発行した発行者システム110)、及び例えば取引口座番号、取引口座住所(例えば、番地、市、州、郵便番号など)、取引口座セキュリティ・コード(例えば、カード・セキュリティ・コード(CSC)、カード検証値(CVV)など)、取引口座有効期限などの取引口座データを含むことができる。様々な実施形態では、販売者システム120は、ローカル販売者リポジトリ127に口座登録要求を記憶することができる。
様々な実施形態において、販売者システム120は、口座ハッシュを生成する(ステップ204)。販売者システム120は、口座登録要求からの一つ又は複数のデータ要素に基づいて、口座ハッシュを生成する。例えば、口座ハッシュは、ユーザのファースト・ネーム、ユーザのラスト・ネーム、取引口座番号、取引口座住所、取引口座セキュリティ・コード、取引口座有効期限などのうちの一つ又は複数の、一方向暗号化ハッシュを含むことができる。販売者システム120は、公開データからは容易に推測することができない販売者システム120からの取引口座データを使用して口座ハッシュのセキュリティを強化することができる。販売者システム120は、暗号法SHA-2シリーズからの暗号化アルゴリズム(例えば、SHA256、SHA512など)などの、あらゆる適切なハッシュ化アルゴリズムを使用して口座ハッシュを生成することができる。様々な実施形態において、口座ハッシュを生成することは、総当たり攻撃、レインボー・テーブル攻撃、及び類似のセキュリティ攻撃に対して口座ハッシュをよりセキュアにする技法、例えば、鍵ストレッチング技法、マルチパーティ計算法(又はツーパーティ計算法)などを実装することを更に含む場合がある。
様々な実施形態では、販売者システム120は、資格証明発行局130に、販売者資格証明を要求することもできる。販売者資格証明は、販売者システム120の識別情報についての情報を明らかにすることなく、有効な販売者口座を特定するように構成された、生成ID、証明書、トークンなどを含むことができる。例えば、販売者資格証明は、資格証明発行局130によって、ゼロ知識証明プロトコル及び技術、例えばIBM(登録商標)IDENTITY MIXERのインテグレーションなどを使用して生成することができる。販売者システム120は、資格証明発行局130に登録することができ、保守口座ブロックチェーン107に書き込まれる一つ又は複数の生成された口座ハッシュに使用するための販売者資格証明を要求することができる。様々な実施形態では、資格証明発行局130は、登録の間、例えば販売者資格証明を検証することなどによって、あらゆる適切な検証方法に基づいて、各販売者システム120を検証することができる。更なる例として、販売者を、システム100内の発行者システムに対応する信頼できる発行者ポータルのうちの一つにサイン・インさせるために、OAuth2.0(など)が、資格証明発行局130によって実装される場合がある。
販売者システム120は、保守スマート・コントラクト105を呼び出す(ステップ206)。販売者システム120は、販売者ブロックチェーン・ノード125を介して、口座ハッシュ、発行者ID、及び一つ又は複数の取引口座データ(例えば、取引口座有効期限、取引口座住所など)を渡すことにより、保守スマート・コントラクト105を呼び出すことができる。様々な実施形態では、販売者システム120は、資格証明発行局130から入手した生成済の販売者資格証明を、保守スマート・コントラクト105に渡す場合もある。この点では、販売者システム120の識別情報は、保守口座ブロックチェーン107に書き込む間は、隠されている可能性がある。様々な実施形態では、保守スマート・コントラクト105に渡された取引口座データは、システム内のデータ・セキュリティを改善させるために重要ではないデータ(例えば、取引口座セキュリティ・コードなど)である可能性がある。保守スマート・コントラクト105は、呼び出されたことに応じて、口座ハッシュ及び発行者IDなどの渡されたデータに基づいて、ブロックチェーン状態リポジトリに問い合わせる(ステップ208)。ブロックチェーン状態リポジトリ内で、口座ハッシュ及び発行者IDを位置特定したことに応じて、保守スマート・コントラクト105は、口座ハッシュ及び発行者IDが既存であることを示し、販売者システム120が登録を確認する(例えば、口座ハッシュ及び発行者IDは、以前に保守スマート・コントラクト105に登録された)ことを要求するデータを返すことができる。
口座ハッシュ及び発行者IDを位置特定できなかったことに応じて、保守スマート・コントラクト105は、口座レコードを生成する(ステップ210)。口座レコードは、口座ハッシュ、並びに、取引口座有効期限、及び/又は取引口座住所(例えば、番地、市、州、郵便番号のうちの一つ又は複数など)などの、一つ又は複数の非重要取引口座データを含む場合がある。口座レコードを生成したことに応じて、保守スマート・コントラクト105は、口座レコードを保守口座ブロックチェーン107に書き込む(ステップ212)。保守スマート・コントラクト105は、販売者ブロックチェーン・ノード125を介して、保守口座ブロックチェーン107への書き込みのために、書き込みをブロックチェーン・ネットワーク101内の少なくとも第2のブロックチェーン・ノードに伝搬することができる。販売者ブロックチェーン・ノード125、及び少なくとも第2のブロックチェーン・ノードは、あらゆる適切な方法を使用して書き込みに対して合意することができる。ブロックチェーン書き込みは、販売者システムに対応するデジタル証明書によって署名することができる。
様々な実施形態において、保守スマート・コントラクト105は、発行者システム110に、口座レコードの書き込みを通知する(ステップ214)。通知は、保守口座ブロックチェーン107に書き込まれた、口座ハッシュ及び一つ又は複数の非重要取引口座データを含む場合もある。通知は、ブロックチェーン・ネットワーク101を通じて(例えば、ブロックチェーン・ソフトウェアを通じてプログラム的に提供される事象インターフェースを介して)送信することができる。発行者システム110は、通知を受信したことに応じて、口座レコードからの口座ハッシュに基づいて、ローカル発行者リポジトリ117に問い合わせる(ステップ216)。様々な実施形態において、発行者システム110は、保守取引口座用に、初期口座ハッシュ、過去の口座ハッシュなどを含む、様々な口座ハッシュを予め生成して記憶してもよい。発行者システム110は、口座ハッシュを位置特定したことに応じて、口座レコードを検証する(ステップ218)。発行者システム110は、口座ハッシュが現在の初期口座ハッシュ(若しくは過去の口座ハッシュ)であるかどうか、及び/又は一つ又は複数の非重要取引口座データが最新かどうか(例えば、取引口座有効期限、取引口座住所など)を判断することによって、口座レコードを検証することができる。発行者システム110は、新しい取引口座データ(例えば、更新された取引口座住所、取引口座有効期限など)及び発行者システム110に対応する発行者IDを含む更新された口座レコード・データを生成することができる。
発行者システム110は、以前に保守口座ブロックチェーン107に書き込まれた口座レコードを更新する(ステップ220)。例えば、発行者システム110は、発行者ブロックチェーン・ノード115を介して、保守スマート・コントラクト105を呼び出すことによって(例えば、更新された口座レコード・データを渡すことによって)、口座レコードを更新することができる。例えば、発行者システム110は、発行者ブロックチェーン・ノード115を介して、更新された口座レコード・データを保守スマート・コントラクト105に渡すことにより、保守スマート・コントラクト105を呼び出す。保守スマート・コントラクト105は、呼び出されたことに応じて、発行者ブロックチェーン・ノード115を介して、更新された口座レコード・データを保守口座ブロックチェーン107に書き込むことができ、更新された口座レコード・データを以前に書き込まれた口座レコードに関連付けることができる。保守スマート・コントラクト105は、発行者ブロックチェーン・ノード115を介して、保守口座ブロックチェーン107への書き込みのために、書き込みをブロックチェーン・ネットワーク101内の少なくとも第2のブロックチェーン・ノードに伝搬することができる。発行者ブロックチェーン・ノード115、及び少なくとも第2のブロックチェーン・ノードは、あらゆる適切な方法を使用して書き込みに対して合意することができる。
様々な実施形態において、特に図3を参照して、販売者記憶の取引口座を更新するための方法301が開示される。販売者システム120は、取引要求を受信する(ステップ302)。例えば、ユーザは、販売者オンライン・ポータルなどを介して販売者システム120と対話することができ、商品又はサービスを購入することにより取引の開始を所望する場合がある。ユーザは、例えば図2を簡単に参照すると、方法201の口座登録要求を完了させることなどによって、販売者システム120に事前登録されている場合がある。取引要求は、取引データ(例えば、取引額、出荷詳細など)及び販売者記憶の取引口座データを含む場合がある。例えば、ユーザが取引を開始したことに応じて、販売者システム120は、販売者記憶の取引口座データをローカル販売者リポジトリ127から検索する場合がある。販売者記憶の取引口座データは、ユーザ・データ(例えば、ファースト・ネーム、ラスト・ネームなど)、発行者識別子(例えば、取引口座を発行した発行者システム110)、及び例えば取引口座番号、取引口座住所(例えば、番地、市、州、郵便番号など)、取引口座セキュリティ・コード(例えば、カード・セキュリティ・コード(CSC)、カード検証値(CVV)など)、取引口座有効期限などの取引口座データを含むことができる。
販売者システム120は、口座ハッシュを生成する(ステップ304)。販売者システム120は、販売者記憶の取引口座データからの一つ又は複数のデータ要素に基づいて、口座ハッシュを生成する。例えば、口座ハッシュは、ユーザのファースト・ネーム、ユーザのラスト・ネーム、取引口座番号、取引口座住所、取引口座セキュリティ・コード、取引口座有効期限などのうちの一つ又は複数の、一方向暗号化ハッシュを含むことができる。販売者システム120は、公開データからは容易に推測することができない販売者システム120からの取引口座データを使用して口座ハッシュのセキュリティを強化することができる。販売者システム120は、暗号法SHA-2シリーズからの暗号化アルゴリズム(例えば、SHA256、SHA512など)などの、あらゆる適切なハッシュ化アルゴリズムを使用して口座ハッシュを生成することができる。様々な実施形態において、口座ハッシュを生成することは、総当たり攻撃、レインボー・テーブル攻撃、及び類似のセキュリティ攻撃に対して口座ハッシュをよりセキュアにする技法、例えば、鍵ストレッチング技法、マルチパーティ計算法(又はツーパーティ計算法)などを実装することを更に含む場合がある。
販売者システム120は、保守スマート・コントラクト105を呼び出す(ステップ306)。販売者システム120は、販売者ブロックチェーン・ノード125を介して、口座ハッシュ、発行者ID、及び一つ又は複数の取引口座データ(例えば、取引口座有効期限、取引口座住所など)を渡すことにより、保守スマート・コントラクト105を呼び出すことができる。様々な実施形態では、販売者システム120は、資格証明発行局130から入手した生成済の販売者資格証明を、保守スマート・コントラクト105に渡す場合もある。この点では、販売者システム120の識別情報は、保守口座ブロックチェーン107に書き込む間は、隠されている可能性がある。様々な実施形態では、保守スマート・コントラクト105に渡された取引口座データは、システム内のデータ・セキュリティを改善させるために重要ではないデータ(例えば、取引口座セキュリティ・コードなど)である可能性がある。
様々な実施形態では、保守スマート・コントラクト105は、口座ハッシュに基づいて、ブロックチェーン状態リポジトリに問い合わせる(ステップ308)。保守スマート・コントラクト105は、ブロックチェーン状態リポジトリに問い合わせて、口座ハッシュが初期口座ハッシュ、又は過去の口座ハッシュのどちらとして存在するかを判断することができる。口座ハッシュを初期口座ハッシュとして位置特定したことに応じて、販売者記憶の取引口座データは、いかなる更新も必要としない場合がある。口座ハッシュを過去の口座ハッシュとして位置特定したことに応じて、販売者記憶の取引口座データは、更新する必要がある場合がある。
様々な実施形態では、保守スマート・コントラクト105が記憶された取引口座データへの更新が必要ないと判断されたことに応じて(ステップ310)、保守スマート・コントラクト105は、口座ハッシュ検証を返す(ステップ312)。口座ハッシュ検証は、販売者記憶の取引口座データが現在最新であることを示すデータを含む場合がある。この点では、販売者システム120は、口座ハッシュ検証を受信したことに応じて、取引を処理し続けて完了することができる。
様々な実施形態では、保守スマート・コントラクト105が記憶された取引口座データへの更新が必要であると判断されたことに応じて(ステップ310)、保守スマート・コントラクト105は、更新済口座ハッシュを返す(ステップ314)。更新済口座ハッシュは、保守スマート・コントラクト105によって位置特定された過去の口座ハッシュに対応する初期口座ハッシュを含む場合がある。
販売者システム120は、発行者システム110と通信する(ステップ316)。例えば、様々な実施形態によると、販売者システム120は、発行者システム110との通信を確立するためにプライベートなスマート・コントラクトを呼び出す場合がある。プライベートなスマート・コントラクトは、販売者システム120と発行者システム110のみに対して固有且つ可視であり、当事者間のプライベートな通信を可能にすることができる。販売者システム120は、更新済口座ハッシュ、(生成済)口座ハッシュ、及び販売者記憶の取引口座データのうちの一つ又は複数を渡すことにより、プライベートなスマート・コントラクトを呼び出すことができる。プライベートなスマート・コントラクトは、更新済口座ハッシュ、(生成済)口座ハッシュ、及び販売者記憶の取引口座データのうちの一つ又は複数を発行者システム110に渡すことにより、発行者システム110を促すことができる。更なる例として、様々な実施形態によると、販売者システム120は、発行者システム110との通信を確立するためにAPIコールを行う場合もある。販売者システム120は、更新済口座ハッシュ、(生成済)口座ハッシュ、及び販売者記憶の取引口座データのうちの一つ又は複数を渡すことにより、APIコールを行うことができる。
発行者システム110は、プライベートなスマート・コントラクトによって促されたこと、APIコールを受信したことなどに応じて、ローカル発行者リポジトリ117に問い合わせて、更新済口座ハッシュに対応する取引口座データを位置特定することができる。例えば、発行者システム110は、更新済口座ハッシュ及び/又は(生成済)口座ハッシュに基づいてローカル発行者リポジトリ117に問い合わせて、個々の更新済口座ハッシュ又は(生成済口座ハッシュ)に関連付けられる取引口座データを決定することができる。この点では、発行者システム110は、販売者記憶の取引口座データ内で古くなった取引口座データ、例えば、取引口座番号、取引口座住所、取引口座有効期限、取引口座セキュリティ・コードなどを位置特定することができる。発行者システム110は、更新済取引口座データを販売者システム120に返す(ステップ318)。例えば、様々な実施形態によると、販売者システム120が、データを送信するためにプライベートなスマート・コントラクトを呼び出したことに応じて、発行者システム110は、更新済口座ハッシュ及び更新済取引口座データを渡すことにより、プライベートなスマート・コントラクトを呼び出すことができる。販売者システム120は、更新済取引口座データを受信したことに応じて、更新済口座ハッシュ及び更新済取引口座データを含むよう、販売者記憶の取引口座データを更新することができる。販売者システム120は、取引要求を認可して(ステップ320)、取引の処理を進める。販売者システム120は、処理を進め、あらゆる適切な処理を用いて取引を認可する。
様々な実施形態において、また図4を特に参照して、発行者システムによって記憶された取引口座データを更新するための方法401が開示される。発行者システム110は、取引口座更新要求を受信する(ステップ402)。取引口座更新要求は、発行者記憶の取引口座データが更新されたことに応じて、例えば、取引口座が取り消されたか、又は新しくされたこと、取引口座が危険にさらされたことなどに応じて、受信される場合がある。取引口座更新要求は、取引口座内で更新されるデータと共に取引口座を特定するデータを含むことができる。
発行者システム110は、取引口座更新要求を受信したことに応じて、口座ハッシュを生成する(ステップ404)。発行者システム110は、取引口座更新要求からの一つ又は複数のデータ要素に基づいて、口座ハッシュを生成する。例えば、口座ハッシュは、ユーザのファースト・ネーム、ユーザのラスト・ネーム、取引口座番号、取引口座住所、取引口座セキュリティ・コード、取引口座有効期限などのうちの一つ又は複数の、一方向暗号化ハッシュを含むことができる。発行者システム110は、公開データからは容易に推測することができない販売者システム120からの取引口座データを使用して口座ハッシュのセキュリティを強化することができる。発行者システム110は、暗号法SHA-2シリーズからの暗号化アルゴリズム(例えば、SHA256、SHA512など)などの、あらゆる適切なハッシュ化アルゴリズムを使用して口座ハッシュを生成することができる。様々な実施形態において、口座ハッシュを生成することは、総当たり攻撃、レインボー・テーブル攻撃、及び類似のセキュリティ攻撃に対して口座ハッシュをよりセキュアにする技法、例えば、鍵ストレッチング技法、マルチパーティ計算法(又はツーパーティ計算法)などを実装することを更に含む場合がある。
発行者システム110は、取引口座更新要求に基づいて、ローカル発行者リポジトリ117に問い合わせる(ステップ406)。例えば、発行者システム110は、取引口座番号に基づいてローカル発行者リポジトリに問い合わせて、取引口座更新要求に対応するデータ・レコードを位置特定することができる。発行者システム110は、更新済取引口座データ及び(新しい)口座ハッシュを含むよう、データ・レコードを更新することができる。この点では、発行者システム110は(新しい)口座ハッシュを初期口座ハッシュとして指定することができ、以前に記憶された口座ハッシュを過去の口座ハッシュとして指定を変更することができる。
様々な実施形態において、発行者システム110は、保守スマート・コントラクト105を呼び出す(ステップ408)。発行者システム110は、発行者ブロックチェーン・ノード115を介して、初期口座ハッシュ、過去の口座ハッシュ、発行者ID、及び/又は更新済取引口座データを渡すことにより、保守スマート・コントラクト105を呼び出すことができる。保守スマート・コントラクト105は、呼び出されたことに応じて、過去の口座ハッシュ及び発行者IDなどの渡されたデータに基づいて、ブロックチェーン状態リポジトリに問い合わせる。ブロックチェーン状態リポジトリ内の口座ハッシュ、及び発行者IDを位置特定したことに応じて、保守スマート・コントラクト105は、ブロックチェーン状態リポジトリを更新する(ステップ410)。例えば、保守スマート・コントラクト105は、記憶された口座ハッシュを過去の口座ハッシュに更新し、初期口座ハッシュ及び更新済取引口座データをブロックチェーン状態リポジトリに書き込むことができる。
保守スマート・コントラクト105は、取引口座更新データを販売者システム120に送信する(ステップ412)。販売者システム120は、ローカル販売者リポジトリ127を更新する(ステップ414)。例えば、販売者システム120は、過去の口座ハッシュに基づいて、ローカル販売者リポジトリ127に問い合わせることができる。販売者システム120は、販売者記憶の口座ハッシュを過去の口座ハッシュに更新し、初期口座ハッシュ及び更新済取引口座データをローカル販売者リポジトリ127に書き込むことができる。
様々な実施形態において、更新済取引口座データが重要なデータであることに応じて(例えば、取引口座番号など)、更新済取引口座データは、プライベートなチャネルによって販売者システム120に送信される場合がある。例えば、エンタープライズ・ブロックチェーン・ソフトウェアは、プライベートなチャネル(例えば、サイド・チャネル)を提供することができる。ブロックチェーン・ネットワーク101は、一つ又は複数のプライベートなチャネルを提供することができ、プライベートなチャネル内の通信は、ピアツーピアであり得、システム100内の他の参加者にはブロードキャストすることができない。プライベートなチャネル内で送信されるデータ、及び送信そのものは、暗号化される場合があり、通信中の当事者にのみ可視である。
システム、方法、及びコンピュータ・プログラム製品が提供される。本明細書における詳細な説明では、「様々な実施形態」、「一実施形態」、「実施形態」、「例示の実施形態」などの言及は、説明される実施形態が、特定の特徴、構造又は特性を含む可能性があるが、すべての実施形態がその特定の特徴、構造又は特性を必ずしも含まないことを示す。更には、そのような言い回しは、必ずしも同一の実施形態に言及しない。更には、特定の特徴、構造又は特性がある実施形態と併せて説明される場合、明示的に説明されるかどうかに関わらず、他の実施形態と併せてそのような特徴、構造又は特性に影響することは当業者の知識のうちであると思われる。説明を読めば、関連分野の当業者には、代替的な実施形態においてどのように本開示を実装するかが明らかとなろう。
本明細書において使用される場合、「満足する」、「満たす」、「一致する」、「に関連付けられる」又は類似の言い回しには、同一の一致、部分的な一致、一定の基準を満たすこと、データの部分集合の一致、相関関係、一定の基準を満足すること、対応関係、関連付け、アルゴリズム上の関連性などが含まれる場合がある。同様に、本明細書において使用される際、「認証」又は類似の用語には、完全な認証、部分的な認証、データの部分集合を認証すること、対応関係、一定の基準を満足すること、関連付け、アルゴリズム上の関連性などが含まれる場合がある。
「関連付ける」及び/又は「関連付けること」に類似した用語及び言い回しには、タグ付けすること、フラグを立てること、相関付けること、ルックアップ・テーブルを使用すること、又は例えば(i)取引口座と(ii)項目(例えば、提案、報酬、ディスカウントなど)及び/若しくはデジタル・チャネルとの要素間の関連性を示す若しくは作るための、あらゆる他の方法若しくはシステムが含まれる場合がある。その上、関連付けは、あらゆる適切な行為、事象、又は期間に応じてあらゆる時点で生じる可能性がある。関連付けは、所定の間隔で、定期的に、ランダムに、一度だけ、複数回、又は適切な要求若しくは行為に応じて生じる場合がある。情報のいずれも、ソフトウェア対応リンクを介して配信及び/又はアクセスされる場合があり、リンクは電子メール、テキスト、投稿、ソーシャル・ネットワーク入力、及び/又は当分野で既知のあらゆる他の方法により送信される場合がある。
「ユーザ」、「取引口座保有者」、「取引口座受取人」、「取引口座アフィリエイト」、「消費者」、「顧客」、「カードメンバ」などの言い回しは、あらゆる人物、実体、事業体、政府組織、事業体、ソフトウェア、ハードウェア、又は取引口座に関連付けられたマシン、取引口座を使用して一人若しくは複数の販売者により提供される販売者提供物を買う人、及び/又は物理的なカードが取引口座に関連付けられているかどうかに関わらず取引口座に対して取引を行うために合法的に指定される人、を含むものである。例えば、ユーザには、取引口座の所有者、取引口座のユーザ、口座アフィリエイト、子口座のユーザ、子会社口座ユーザ、口座の受取人、口座の管理人、及び/又は取引口座に関係する、若しくは関連付けられた、他の人物若しくは実体が含まれる場合がある。
本明細書において使用される際、「取引口座」、「口座番号」、「口座コード」、又は「消費者口座」に類似した言い回し及び用語には、あらゆるデバイス、コード(例えば、認可/アクセス・コード、個人識別番号(「PIN」)、インターネット・コード、他の識別コードなどのうちの一つ又は複数)、数字、文字、記号、デジタル証明、スマート・チップ、デジタル信号、アナログ信号、バイオメトリック、又は消費者がシステムとアクセス、対話若しくは通信できるように適切に構成された他の識別子/インデックスが含まれる場合がある。取引口座番号は、任意選択的に、報酬口座、掛売口座、クレジット口座、デビット口座、プリペイド口座、テレホン・カード、エンボス・カード、スマート・カード、磁気ストライプ・カード、バーコード・カード、トランスポンダ、無線周波カード又は関連する口座に、配置又は関連付けられる場合がある。
取引口座番号は、自分自身から第2のデバイスに対して、データを送信又はダウンロードすることが可能な、あらゆる形態のプラスチック、電子的、磁気的、無線周波数、ワイヤレス、音声、及び/又は光学的なデバイスとして、配布され、記憶することができる。取引口座番号は、例えば、16桁の口座番号であり得るが、各取引口座発行者は、AMERICAN EXPRESS(登録商標)社によって使用される15桁の番号体系など、独自の番号体系を有している。この点において、取引口座発行者の取引口座番号のそれぞれは、その取引口座発行者の標準化されたフォーマットに準ずることができ、それにより、15桁フォーマットを使用する取引口座発行者は、数字「0000 000000 00000」として表現されるような、三つのスペースを伴う一組の数字を、一般的に使用する。先頭の5桁から7桁は、処理目的用に予約済であり得、取引口座発行者、口座タイプなどを特定する。この例では、最終桁(15桁目)は、15桁の数についてのチェック・サムとして使用され、中間の8桁から11桁はユーザを一意に特定するために使用される。販売者識別子は、例えば、口座の受付、口座の精算、レポーティングなどの目的で、特定の販売者を特定する、あらゆる数字又は英数字であり得る。
様々な実施形態において、本明細書において説明される方法は、本明細書において説明される様々な特定のマシンを使用して実装される。本明細書において説明される方法は、当業者がすぐに理解できるように、以下の特定のマシン及び今後開発されるマシンを使用して、あらゆる適当な組み合わせで実装することができる。更には、本開示から明白なように、本明細書において説明される方法は、ある物品の様々な変形形態をもたらす可能性がある。
本明細書において議論される様々なシステム・コンポーネントは次のうちの一つ又は複数を含むことができる:デジタル・データを処理するためのプロセッサを含むホスト・サーバ又は他のコンピューティング・システム;デジタル・データを記憶するためにプロセッサに結合されたメモリ;デジタル・データを入力するためにプロセッサに結合された入力デジタイザ;プロセッサによるデジタル・データの処理を指示するための、メモリに記憶されプロセッサからアクセス可能なアプリケーション・プログラム;プロセッサによって処理されたデジタル・データから導かれた情報を表示するための、プロセッサ及びメモリに結合されたディスプレイ・デバイス;及び複数のデータベース。本明細書で使用される様々なデータベースには、クライアント・データ、販売者データ、金融機関データ、及び/又はシステムの動作に有用なデータが含まれる場合がある。当業者であれば、ユーザ・コンピュータはオペレーティング・システム(例えば、WINDOWS(登録商標)、UNIX(登録商標)、LINUX(登録商標)、SOLARIS(登録商標)、MACOS(登録商標)など)並びに通常コンピュータに関連付けられた様々な従来型のサポート・ソフトウェア及びドライバを含む可能性があることを諒解されよう。
本システム、又はそのあらゆる部分若しくは機能は、ハードウェア、ソフトウェア、又はその組み合わせを使用して実装されてもよく、一つ又は複数のコンピュータ・システム若しくは他の処理システムに実装することができる。しかしながら、実装形態によって実施される操作は、一致する又は選択するなどの用語で言及されることが多く、これらは一般的に人間オペレータにより行われる精神的な作用に関連付けられる。本明細書において説明される操作のいずれにおいても、人間オペレータのそのような能力は、必要ないか、又はたいていの場合、望ましくない。むしろ、操作は機械操作である可能性があるか、又は操作のいずれも人工知能(AI)若しくは機械学習によって行うことができる若しくは拡張することができる。人工知能は、一般に、自身の周囲を知覚する、計画を立てる、及び自身の目的を達成するために決定を行う学習エージェント(例えば、機械、コンピュータ・ベースのシステムなど)を指す場合がある。AIの基礎としては、数学、論理、哲学、確率、言語学、神経科学、及び意志決定理論が挙げられる。コンピュータ・ビジョン、ロボット工学、機械学習、及び自然言語処理などの多くの分野がAIの傘下に入る。様々な実施形態を実施するために有用な機械には、汎用のデジタル・コンピュータ又は類似のデバイスが含まれる。
様々な実施形態では、実施形態は、本明細書において説明される機能性を遂行することができる、一つ又は複数のコンピュータ・システムを対象としている。コンピュータ・システムは一つ又は複数のプロセッサを含む。プロセッサは、通信インフラストラクチャに接続される(例えば、通信バス、クロス・オーバ・バー、ネットワークなど)。様々なソフトウェア実施形態を、この例示的なコンピュータ・システムの観点から説明する。本説明を読めば、当業者には、他のコンピュータ・システム及び/又はアーキテクチャを使用して様々な実施形態をどのように実装するか、明らかとなろう。コンピュータ・システムは、グラフィック、テキスト、及び通信インフラストラクチャから(又は、図示されていないフレーム・バッファから)の他のデータをディスプレイ・ユニット上での表示用に転送する、ディスプレイ・インターフェースを含むことができる。
コンピュータ・システムは、ランダム・アクセス・メモリ(RAM)などの主メモリも含むことができ、セカンダリ・メモリを含むこともできる。セカンダリ・メモリとしては、例えばハード・ディスク・ドライブ、ソリッドステート・ドライブ、及び/又はリムーバブル記憶ドライブを挙げることができる。リムーバブル記憶ドライブは、周知のやり方で、リムーバブル記憶ユニットから読み出し、及び/又はリムーバブル記憶ユニットに書き込みを行う。理解されるように、リムーバブル記憶ユニットは、コンピュータ・ソフトウェア及び/又はデータが記憶されている、コンピュータ使用可能な記憶媒体を含む。
様々な実施形態において、セカンダリ・メモリは、コンピュータ・プログラム又は他の命令をコンピュータ・システムにロードできるようにする、他の類似のデバイスを含むことができる。そのようなデバイスとしては、例えば、リムーバブル記憶ユニット及びインターフェースが挙げられる。そのような例としては、プログラム・カートリッジとカートリッジ・インターフェース(テレビゲーム機で見られるようなもの)、リムーバブル・メモリ・チップ(消去可能プログラマブル読み出し専用メモリ(EPROM)、プログラマブル読み出し専用メモリ(PROM)など)と関連するソケット、又は他のリムーバブル記憶ユニットとインターフェースを挙げることができ、これらはソフトウェア及びデータを、リムーバブル記憶ユニットからコンピュータ・システムに転送できるようにする。
用語「コンピュータ・プログラム媒体」、「コンピュータ使用可能媒体」及び「コンピュータ可読媒体」は、一般的にリムーバブル記憶ドライブ及びハード・ディスク・ドライブに設置されたハード・ディスクなどの媒体を称するために使用される。これらのコンピュータ・プログラム製品は、ソフトウェアをコンピュータ・システムに与える。
コンピュータ・システムには通信インターフェースが含まれる場合もある。通信インターフェースにより、コンピュータ・システムと外部デバイスとの間で、ソフトウェア及びデータを転送することができる。通信インターフェースの例としては、モデム、ネットワーク・インターフェース(イーサネット・カードなど)、通信ポート、パーソナル・コンピュータ・メモリ・カード国際協会(PCMCIA)スロット及びカードなどを挙げることができる。通信インターフェースを介して転送されるソフトウェア及びデータは、電子的、電磁気的、光学的、又は通信インターフェースによって受信可能な他の信号であり得る信号の形態である。これらの信号は通信経路(例えば、チャネル)を介して通信インターフェースに与えられる。このチャネルは、信号を搬送し、ワイヤ、ケーブル、光ファイバ、電話線、セルラ・リンク、無線周波数(RF)リンク、ワイヤレス、及び他の通信チャネルを使用して実装することができる。
本明細書において議論されるあらゆる通信、送信、通信チャネル、チャネルなどには、コンテンツ(例えば、データ、情報、メタデータなど)を配信するためのあらゆるシステム若しくは方法、及び/又はコンテンツそのものが含まれる場合がある。コンテンツは、あらゆる形態又は媒体で存在することができ、様々な実施形態において、コンテンツは電子的に配信することができる、及び/又は電子的に提示することができる。例えば、チャネルはウェブサイト、モバイル・アプリケーション、又はデバイス(例えば、FACEBOOK(登録商標)、YOUTUBE(登録商標)、PANDORA(登録商標)、APPLE TV(登録商標)、MICROSOFT(登録商標)XBOX(登録商標)、ROKU(登録商標)、AMAZON FIRE(登録商標)、GOOGLE CHROMECAST(商標)、SONY(登録商標)PLAYSTATION(登録商標)、NINTENDO(登録商標)SWITCH(登録商標)など)、uniform resource locator(「URL」)、文書(例えば、MICROSOFT(登録商標)Word(商標)若しくはEXCEL(登録商標)、ADOBE(登録商標)Portable Document Format(PDF)文書など)、「電子ブック」、「電子雑誌」、アプリケーション若しくはマイクロアプリケーション(本明細書において説明されるようなもの)、SMS若しくは他のタイプのテキスト・メッセージ、電子メール、FACEBOOK(登録商標)メッセージ、TWITTER(登録商標)ツイート、マルチメディア・メッセージング・サービス(MMS)、及び/又は他のタイプの通信技術を含むことができる。様々な実施形態において、チャネルはデータ・パートナによってホストされ得る又は提供され得る。様々な実施形態において、配信チャネルは、販売者ウェブサイト、ソーシャル・メディア・ウェブサイト、アフィリエイト若しくはパートナのウェブサイト、外部ベンダ、モバイル・デバイス通信、ソーシャル・メディア・ネットワーク、及び/又はロケーション・ベースのサービスのうちの少なくとも一つを含む場合がある。配信チャネルは、販売者ウェブサイト、ソーシャル・メディア・サイト、アフィリエイト若しくはパートナのウェブサイト、外部ベンダ、及びモバイル・デバイス通信のうちの少なくとも一つを含む場合がある。ソーシャル・メディア・サイトの例としては、FACEBOOK(登録商標)、FOURSQUARE(登録商標)、TWITTER(登録商標)、LINKEDIN(登録商標)、INSTAGRAM(登録商標)、PINTEREST(登録商標)、TUMBLR(登録商標)、REDDIT(登録商標)、SNAPCHAT(登録商標)、WHATSAPP(登録商標)、FLICKR(登録商標)、VK(登録商標)、QZONE(登録商標)、WECHAT(登録商標)などが挙げられる。アフィリエイト若しくはパートナのウェブサイトの例としては、AMERICAN EXPRESS(登録商標)、GROUPON(登録商標)、LIVINGSOCIAL(登録商標)などが挙げられる。その上、モバイル・デバイス通信の例としては、テキスト送信、電子メール、及びスマートフォン用モバイル・アプリケーションが挙げられる。
コンピュータ・プログラム(コンピュータ制御ロジックとも称される)は、主メモリ及び/又はセカンダリ・メモリに記憶される。コンピュータ・プログラムは、通信インターフェースを介して受信することもできる。このようなコンピュータ・プログラムは、実行されると、コンピュータ・システムが、本明細書において議論されるような特徴を実施できるようにする。特に、コンピュータ・プログラムは、実行されると、プロセッサが、様々な実施形態の特徴を実施できるようにする。したがって、このようなコンピュータ・プログラムは、コンピュータ・システムのコントローラを代表する。
これらのコンピュータ・プログラム命令は、コンピュータ、又は他のプログラム可能データ処理装置で実行される命令が、フローチャートの一つ又は複数のブロックで指定される機能を実装するための手段を作出するべく、汎用コンピュータ、特殊目的コンピュータ、又は他のプログラム可能データ処理装置にロードされ、マシンを作り出すものであってよい。このようなコンピュータ・プログラム命令は、コンピュータ可読メモリに記憶された命令により、フローチャートの一つ又は複数のブロックで指定される機能を実装する命令手段を含んだ製造物品を作り出すべく、コンピュータ可読メモリに記憶され、コンピュータ、又は他のプログラム可能データ処理装置に特定の方式で機能するように指示するものであってもよい。コンピュータ・プログラム命令は、コンピュータ又は他のプログラム可能データ処理装置で実行される命令がフローチャートの一つ又は複数のブロックで指定される機能を実装するためのステップを提供するように、コンピュータ実装の処理を作出するべく、コンピュータ又は他のプログラム可能データ処理装置にロードされ、コンピュータ又は他のプログラム可能データ処理装置上で一連の動作ステップを実行させるものであってもよい。
したがって、ブロック図及びフローチャート図の機能ブロックは、指定された機能を実施するための手段の組み合わせ、指定された機能を実施するためのステップの組み合わせ、及び指定された機能を実施するためのプログラム命令手段をサポートする。ブロック図及びフローチャート図の各機能ブロック、並びにブロック図及びフローチャート図における機能ブロックの組み合わせは、指定された機能若しくはステップを実行する特殊目的ハードウェアベースのコンピュータ・システム、又は特殊目的ハードウェアとコンピュータ命令との適切な組み合わせのいずれかによって実装可能であることも理解されたい。更には、処理の流れの図面及びその説明は、ユーザのWINDOWS(登録商標)アプリケーション、ウェブ・ページ、ウェブサイト、ウェブ・フォーム、プロンプトなどを参照する場合がある。実務者であれば、本明細書において説明される図示のステップは、WINDOWS(登録商標)アプリケーション、ウェブ・ページ、ウェブ・フォーム、ポップアップWINDOWS(登録商標)アプリケーション、プロンプトなどの使用を含むあらゆる数の構成を含むことを諒解されよう。図示及び説明されるような複数のステップが単一のウェブ・ページ及び/又はWINDOWS(登録商標)アプリケーションに組み合わせることができるが、簡略のため分けたままであることを更に諒解されたい。他の場合では、単一の処理ステップとして図示及び説明されるステップが、複数のウェブ・ページ及び/又はWINDOWS(登録商標)アプリケーションに別個にすることができるが、簡略のため組み合わせたままである。
様々な実施形態において、ソフトウェアは、コンピュータ・プログラム製品に記憶され、リムーバブル記憶ドライブ、ハード・ディスク・ドライブ、又は通信インターフェースを使用して、コンピュータ・システムにロードすることができる。制御ロジック(ソフトウェア)は、プロセッサによって実行されると、プロセッサに、本明細書において説明されるような様々な実施形態の機能を実施させる。様々な実施形態において、ハードウェア構成要素は、特定用途向け集積回路(ASIC)の形態を取ることができる。本明細書において説明される機能を実施するためのハードウェア状態機械の実装形態は、当業者には明らかである。
様々な実施形態において、システム100のコンポーネント、モジュール、及び/又はエンジンは、マイクロアプリケーション又はマイクロアプリとして実装される場合がある。マイクロアプリは、通常モバイルのオペレーティング・システム、例えばWINDOWS(登録商標)モバイル・オペレーティング・システム、ANDROID(登録商標)オペレーティング・システム、APPLE(登録商標)iOSオペレーティング・システム、BLACKBERRY(登録商標)社のオペレーティング・システムなどのコンテキストで展開される。マイクロアプリは、より大きいオペレーティング・システムのリソース並びに所定の規則のセットにより様々なオペレーティング・システム及びハードウェア・リソースを管理する関連付けられたハードウェアを活用するように構成され得る。例えば、マイクロアプリがモバイル・デバイス又はモバイル・オペレーティング・システム以外のデバイス又はネットワークと通信したい場合、マイクロアプリはモバイル・オペレーティング・システムの所定の規則の下、オペレーティング・システム及び関連付けられたデバイス・ハードウェアの通信プロトコルを活用することができる。その上、マイクロアプリがユーザからの入力を所望する場合、マイクロアプリは様々なハードウェア・コンポーネントをモニタリングし、ハードウェアからの検出した入力をマイクロアプリに通信するオペレーティング・システムに、応答を要求するように構成することができる。
様々な実施形態において、システムは、ミドルウェアを実装してソフトウェア・アプリケーション及びサービスを提供すること、並びに/又はオペレーティング・システム、データベース、アプリケーションなどコンピュータ・ベースのシステムにおいてソフトウェア・コンポーネントをブリッジすることができる。ミドルウェアは、異なるコンピューティング・システム間での通信及び/又は取引処理を容易にするために適切に構成されたあらゆるハードウェア及び/又はソフトウェアを含む場合がある。ミドルウェア・コンポーネントは市販されており、当分野で既知である。ミドルウェアは市販のハードウェア及び/又はソフトウェアにより、カスタムのハードウェア及び/又はソフトウェアにより、或いはその組み合わせにより実装することができる。ミドルウェアは、様々な構成で存在することができ、スタンドアロンのシステムとして存在することができるか、又はインターネット・サーバ上に存在するソフトウェア・コンポーネントであってもよい。ミドルウェアは、本明細書において開示されるあらゆる目的のために、アプリケーション・サーバの様々なコンポーネントとあらゆる数の内部又は外部のシステムとの間での取引を処理するように構成することができる。市販のミドルウェア製品の例としては、IBM(登録商標)Inc.(Armonk、NY)のWEBSPHERE(登録商標)MQTM(以前のMQシリーズ)がある。ミドルウェアの別の例としては、Enterprise Service Bus(「ESB」)アプリケーションがある。
本明細書において開示されるシステム、コンピュータ、コンピュータ・ベースのシステムなどは、ユーザからアクセス可能な、適切なウェブサイト又は他のインターネットベースのグラフィカル・ユーザ・インターフェースを提供することができる。実務者であれば、ブラウザベースの文書内にデータを表示するためには複数の方法が存在することを諒解されたい。データは、標準的なテキストとして、又は固定リスト、スクロール可能リスト、ドロップダウン・リスト、編集可能テキスト・フィールド、固定テキスト・フィールド、ポップアップ・ウィンドウなどの内部で表現され得る。同様に、例えばキーボードを使用したフリー・テキスト入力、メニュ項目、チェック・ボックス、オプション・ボックスの選択など、ウェブ・ページ内のデータを修正するために使用可能な方法が複数ある。
本明細書において議論される通信、入力、ストレージ、データベース、又はディスプレイのいずれも、ウェブ・ページを有するウェブサイトを通じて容易にすることができる。本明細書において使用されるような用語「ウェブ・ページ」は、ユーザと対話するために使用され得る文書及びアプリケーションのタイプを限定するよう意図されていない。例えば、典型的なウェブサイトは標準的なHTML文書に加えて、様々なフォーム、JAVA(登録商標)アプレット、JAVASCRIPT(登録商標)プログラム、active server page(ASP)、common gateway interface(CGI)スクリプト、拡張可能マークアップ言語(XML)、ダイナミックHTML、カスケード・スタイル・シート(CSS)、AJAX(非同期JAVASCRIPT and XML)プログラム、ヘルパ・アプリケーション、プラグインなどを含む可能性がある。サーバは、ウェブ・サーバから要求を受信するウェブ・サービスを含む場合があり、要求にはURL及びIPアドレス(192.168.1.1)が含まれる。ウェブ・サーバは適当なウェブ・ページを検索し、そのウェブ・ページ用のデータ又はアプリケーションをそのIPアドレスに送信する。ウェブ・サービスは、インターネットなどの通信手段により他のアプリケーションと対話することができるアプリケーションである。ウェブ・サービスは、通常XML、SOAP、AJAX、WSDL及びUDDIなどの規格又はプロトコルに基づいている。ウェブ・サービス方法は、当分野でよく知られており、多くの標準的なテキストでカバーされている。更なる例として、representational state transfer(REST)、すなわちRESTfulなウェブ・サービスは、アプリケーション間の相互運用性を可能にする一方法を与えることができる。
一実施形態では、MICROSOFT(登録商標)社のInternet Information Services(IIS)、Transaction Server(MTS)サービス、及びSQL SERVER(登録商標)データベースは、MICROSOFT(登録商標)オペレーティング・システム、WINDOWS NT(登録商標)ウェブ・サーバ・ソフトウェア、SQL SERVER(登録商標)データベース、及びMICROSOFT(登録商標)Commerce Serverと併せて使用される。加えて、ACCESS(登録商標)ソフトウェア、SQL SERVER(登録商標)データベース、ORACLE(登録商標)ソフトウェア、SYBASE(登録商標)ソフトウェア、INFORMIX(登録商標)ソフトウェア、MYSQL(登録商標)ソフトウェア、INTERBASE(登録商標)ソフトウェア、などのコンポーネントなどは、Active Data Object(ADO)準拠データベース管理システムを提供するために使用される場合がある。一実施形態では、APACHE(登録商標)ウェブ・サーバは、LINUX(登録商標)オペレーティング・システム、MYSQL(登録商標)データベース、並びにPERL(登録商標)、PHP、Ruby及び/又はPYTHON(登録商標)プログラミング言語と併せて使用される。
様々な実施形態において、サーバには、アプリケーション・サーバ(例えば、WEBSPHERE(登録商標)、WEBLOGIC(登録商標)、JBOSS(登録商標)、POSTGRES PLUS ADVANCED SERVER(登録商標)など)が含まれる場合がある。様々な実施形態において、サーバには、ウェブ・サーバ(例えば、Apache、IIS、GOOGLE(登録商標)Web Server、SUN JAVA(登録商標)System Web Server、LINUX(登録商標)又はWINDOWS(登録商標)オペレーティング・システム上で動作するJAVA(登録商標)仮想マシン)が含まれる場合がある。
ユーザ、システム、コンピュータ・ベースのシステムなどは、ウェブ・クライアントを介してサーバと通信することができる。ウェブ・クライアントには、例えば本明細書において議論されるあらゆるデバイス又はソフトウェアなど、あらゆるネットワークを介して通信するあらゆるデバイス又はソフトウェアが含まれる場合がある。ウェブ・クライアントには、オンライン取引及び/又は通信を行うためにコンピューティング・ユニット又はシステムにインストールされたインターネット閲覧ソフトウェアが含まれる場合がある。これらのコンピューティング・ユニット又はシステムは、一つのコンピュータ、又は一組のコンピュータの形態を取ることができるが、他のタイプのコンピューティング・ユニット又はシステムを使用することもでき、パーソナル・コンピュータ、ラップトップ、ノートブック、タブレット、スマートフォン、携帯電話、携帯情報端末、サーバ、プール・サーバ、メーンフレーム・コンピュータ、分散コンピューティング・クラスタ、キオスク、端末、販売時点情報管理(POS)デバイス若しくは端末、テレビ、又はネットワーク上でデータを受信することができるあらゆる他のデバイスを含む。ウェブ・クライアントとしては、オペレーティング・システム(例えば、WINDOWS(登録商標)、WINDOWS MOBILE(登録商標)オペレーティング・システム、UNIX(登録商標)オペレーティング・システム、LINUX(登録商標)オペレーティング・システム、APPLE(登録商標)OS(登録商標)オペレーティング・システムなど)、並びに通常コンピュータに関連付けられた様々な従来型のサポート・ソフトウェア及びドライバを挙げることができる。ウェブ・クライアントは、MICROSOFT(登録商標)INTERNET EXPLORER(登録商標)ソフトウェア、MOZILLA(登録商標)FIREFOX(登録商標)ソフトウェア、GOOGLE(登録商標)CHROME(登録商標)ソフトウェア、APPLE(登録商標)SAFARI(登録商標)ソフトウェア、又はインターネットを閲覧するために利用可能な数々のソフトウェア・パッケージのうちの任意の他のものを実行することもある。
当業者であれば、ウェブ・クライアントは、サーバ(例えば、本明細書において議論されるようなアプリケーション・サーバ、ウェブ・サーバなど)と直接接していてもよく、接していなくてもよいことを諒解されよう。例えば、ウェブ・クライアントは、インターネット・サーバへの直接又は間接の接続を有する場合がある別のサーバ及び/又はハードウェア・コンポーネントを通じてサーバのサービスにアクセスすることができる。例えば、ウェブ・クライアントは、ロード・バランサを介してサーバと通信する場合がある。様々な実施形態において、ウェブ・クライアントのアクセスは、市販のウェブ・ブラウザのソフトウェア・パッケージを通じてネットワーク又はインターネットを通じたものである。この点では、ウェブ・クライアントは、ネットワーク又はインターネットへのアクセスを有する家庭用又は事業用の環境内にあることができる。ウェブ・クライアントは、セキュア・ソケット・レイヤ(SSL)及びトランスポート層セキュリティ(TLS)などのセキュリティ・プロトコルを実装することができる。ウェブ・クライアントは、HTTP、HTTPS、FTP及びSFTPを含むいくつかのアプリケーション層プロトコルを実装することができる。
本明細書において議論されるあらゆるデータベースは、リレーショナル、階層的、グラフィカル、ブロックチェーン、オブジェクト指向構造、及び/又はあらゆる他のデータベース構成を含むことができる。あらゆるデータベースは、フラット・ファイル構造を含む場合もあり、フラット・ファイル構造では、データは、インデックス付けの構造がなくレコード間に構造的なリレーションシップのない行列形式で単一ファイルに記憶することができる。例えば、フラット・ファイル構造は、区切られたテキストのファイル、CSV(カンマ区切り値)ファイル、及び/又はあらゆる他の適切なフラット・ファイル構造を含むことができる。データベースを実装するために使用することができる一般的なデータベース製品には、IBM(登録商標)(Armonk、NY)のDB2(登録商標)、ORACLE(登録商標)コーポレーション(Redwood Shores、CA)から利用可能な様々なデータベース製品、MICROSOFT(登録商標)コーポレーション(Redmond、Washington)からのMICROSOFT ACCESS(登録商標)又はMICROSOFT SQL SERVER(登録商標)、MySQL AB(Uppsala、Sweden)のMYSQL(登録商標)、MONGODB(登録商標)、Redis、Apache Cassandra(登録商標)、APACHE(登録商標)のHBASE(登録商標)、MAPR(登録商標)のMapR-DB、又はあらゆる他の適切なデータベース製品が挙げられる。その上、あらゆるデータベースは、例えばデータ・テーブル又はルックアップ・テーブルとして、あらゆる適切な様式で編成することができる。各レコードは、単一ファイル、一連のファイル、リンクされた一連のデータ・フィールド、又はあらゆる他のデータ構造であり得る。
一定のデータの関連付けは、当分野で既知又は実用化されるもののような、あらゆる所望のデータ関連付け手法を通じて実現することができる。例えば、関連付けは、手動又は自動のいずれでも実現することができる。自動の関連付け手法としては、例えばデータベース検索、データベースのマージ、GREP、AGREP、SQL、検索を高速化するためにテーブルでキー・フィールドを使用すること、すべてのテーブル及びファイルを通る順次検索、ルックアップを簡略化するために既知の順序にしたがってファイル内でレコードをソートすることなどを挙げることができる。関連付けステップは、データベースのマージ機能によって実現することができ、例えば予め選択されたデータベース又はデータ・セクタ内で「キー・フィールド」を使用する。様々なデータベース・チューニングのステップが、データベースのパフォーマンスを最適化するために企図される。例えば、インデックスなどの頻繁に使用されるファイルは、in/Out(「I/O」)ボトルネックを低減するために別個のファイル・システムに配置される場合がある。
より詳細には、「キー・フィールド」は、そのキー・フィールドによって定義されるオブジェクトの高次クラスにしたがってデータベースを分割する。例えば、特定のタイプのデータは、複数の関連データ・テーブル内でキー・フィールドとして指定することができ、次いでデータ・テーブルはキー・フィールド内のデータのタイプに基づいてリンクされる場合がある。リンク済データ・テーブルのそれぞれにおけるキー・フィールドに対応するデータは、同一であるか、又は同一のタイプのデータであることが好ましい。しかしながら、キー・フィールドにおいて類似しているが同一ではないデータを有するデータ・テーブルは、例えばAGREPを用いてリンクすることもできる。一実施形態によると、あらゆる適切なデータ記憶技法を利用して、標準フォーマットを伴わずデータを記憶することができる。データ・セットは、あらゆる適切な技法を用いて記憶することができ、例えばISO/IEC7816-4ファイル構造を使用して個々のファイルを記憶すること;一つ又は複数のデータ・セットを含む一つ又は複数の基本ファイルを公開する専用ファイルが選択されるドメインを実装すること;階層的なファイル・システムを使用して個々のファイルに記憶されたデータ・セットを使用すること;単一ファイル内のレコードとして記憶されたデータ・セット(圧縮、SQLアクセス可能、一つ又は複数のキーでハッシュ化、数字、第1のタプルによるアルファベット順などを含む);Binary Large Object(BLOB)として記憶されるデータ;ISO/IEC7816-6データ要素を用いてエンコードされた未グループ化のデータ要素として記憶されるデータ;ISO/IEC8824及び8825におけるようにISO/IEC Abstract Syntax Notation(ASN.1)を用いてエンコードされた未グループ化のデータ要素として記憶されるデータ;フラクタル圧縮法、画像圧縮法などを含む可能性がある他のプロプライエタリな技法を挙げることができる。
様々な実施形態において、異なるフォーマットの多様な情報を記憶する機能は、情報をBLOBとして記憶することにより容易になる。そのため、あらゆるバイナリ情報をデータ・セットに関連付けられた記憶空間に記憶することができる。上で議論したように、バイナリ情報は、システムに関連付けられて記憶することができ、又はシステムと連携しているが外部にあってもよい。BLOBの方法は、データ・セットを、固定記憶割り当て、環状キュー技法、又はメモリ管理に関するベスト・プラクティス(例えば、メモリのページング、least recently usedなど)のうちのいずれかを用いる固定メモリ・オフセットによりバイナリのブロックとしてフォーマットされた未グループ化のデータ要素として記憶することができる。BLOB方法を用いることにより、異なるフォーマットを有する様々なデータ・セットを記憶する機能は、データ・セットの複数且つ関連性のない所有者による、データベースにおける、又はシステムに関連付けられるデータの記憶を容易にする。例えば、記憶され得る第1のデータ・セットは第1のパーティによって提供される可能性があり、記憶され得る第2のデータ・セットは関連性のない第2のパーティによって提供される可能性があり、更に記憶され得る第3のデータ・セットは第1のパーティ及び第2のパーティと関連性のない第3のパーティによって提供される可能性がある。これら三つの例示的なデータ・セットのそれぞれは、異なるデータ記憶フォーマット及び/又は技法を用いて記憶される異なる情報を含む可能性がある。更には、それぞれのデータ・セットは、データの部分集合を含む可能性があり、データの部分集合はやはり他の部分集合とは異なっている可能性がある。
上述のように、様々な実施形態において、データは共通フォーマットとは無関係に記憶することができる。しかしながら、データ・セット(例えば、BLOB)は、データベース又はシステムにおけるデータの操作のために与えられる際、標準様式で注釈がつけられる場合がある。注釈には、短いヘッダ、トレイラ、又は様々なデータ・セットを管理するのに有用な情報を伝達するように構成された各データ・セットに関連する他の適当なインジケータが含まれ得る。例えば、注釈は本明細書では「条件ヘッダ」、「ヘッダ」、「トレイラ」、又は「ステータス」と呼ばれることがあり、データ・セットのステータスの指標を含むことができるか、又は具体的な発行者若しくはデータの所有者に相関する識別子を含む場合がある。一例では、それぞれのデータ・セットBLOBの最初の3バイトは、その特定のデータ・セットのステータス、例えば、LOADED、INITIALIZED、READY、BLOCKED、REMOVABLE、又はDELETEDを示すように構成することができる、又は構成可能である。データの後続のバイトは、例えば、発行者の身元、ユーザ、取引/メンバーシップ口座識別子などを示すために使用することができる。これらの条件注釈のそれぞれを、本明細書において更に議論する。
注釈は、他のタイプのステータス情報のため、並びに様々な他の目的のために使用することもできる。例えば、データ・セット注釈は、アクセス・レベルを定めるセキュリティ情報を含む場合がある。アクセス・レベルは、例えば、特定の個人、従業員のクラス、会社、又は他の実体にのみデータ・セットへのアクセスを許可するように、或いは取引、販売者、発行者、又はユーザなどに基づいて具体的なデータ・セットへのアクセスを許可するように構成することができる。更には、セキュリティ情報は、データ・セットのアクセス、修正、及び/又は削除などの特定の行為のみ制限/許可する場合がある。一例では、データ・セットの注釈は、データ・セットの所有者又はユーザだけがデータ・セットを削除することを許可されること、様々な識別済ユーザがデータ・セットの読み取りのためにアクセスすることを許可され得ること、及びその他は完全にデータ・セットへのアクセスから除外されることを示す。しかしながら、他のアクセス制限パラメータを使用して様々な実体に、適宜様々なパーミッション・レベルでデータ・セットへのアクセスを許可することもできる。
ヘッダ又はトレイラを含むデータは、ヘッダ又はトレイラにしたがってデータを追加、削除、修正、又は強化するように構成されたスタンドアロン対話デバイスによって受信することができる。そのようにして、一実施形態では、ヘッダ又はトレイラは取引デバイスに関連付けられる発行者所有データと共に記憶されず、代わりにスタンドアロンのデバイスにおいて取るべき行為の適当な選択肢をユーザに提供することにより、適当な行為が取られる場合がある。システムは、データ記憶配置を企図することができ、データのヘッダ若しくはトレイラ、又はヘッダ若しくはトレイラ履歴は、適当なデータに関連して、システム、デバイス又は取引機器に記憶される。
当業者であれば、セキュリティ上の理由で、あらゆるデータベース、システム、デバイス、サーバ、又はシステムの他のコンポーネントは、一か所又は複数の場所において、あらゆるその組み合わせから構成され得、各データベース、システム、デバイス、サーバ、及び/又は他のコンポーネントは、ファイアウォール、アクセス・コード、暗号化、復号化、圧縮、解凍などの様々な適切なセキュリティ特徴のいずれか含むことを更に諒解されよう。
暗号化は、現在当分野で利用可能な、又は利用可能になる可能性がある技法のうちのいずれかを用いて実施することができる。例えば、Twofish、RSA、エルガマル、ショア署名、DSA、PGP、PKI、GPG(GnuPG)、HPEフォーマット保持暗号化(FPE)、Voltage、Triple DES、Blowfish、AES、MD5、HMAC、IDEA、RC6、並びに対称及び非対称暗号化システムなどである。システム及び方法は、SHA系暗号化法、楕円曲線暗号化法(例えば、ECC、ECDH、ECDSAなど)、及び/又は開発中の他のポスト量子暗号化アルゴリズムを組み込む場合もある。
ファイアウォールは、CMSコンポーネント及び/又は企業用コンピューティング・リソースを他のネットワークのユーザから保護するように適切に構成されたあらゆるハードウェア及び/又はソフトウェアを含むことができる。更には、ファイアウォールは、ファイアウォールの内側で、ウェブ・サーバを通じて接続するウェブ・クライアントについて、様々なシステム及びコンポーネントへのアクセスを限定又は制限するように構成することができる。ファイアウォールは、ステートフル・インスペクション、プロキシベース、アクセス制御リスト、及びとりわけパケット・フィルタリングを含む様々な構成で存在する場合がある。ファイアウォールは、ウェブ・サーバ又はあらゆる他のCMSコンポーネント内に一体化されてもよく、或いは別個の実体として更に存在することもできる。ファイアウォールは、ネットワーク・アドレス変換(「NAT」)及び/又はネットワーク・アドレス・ポート変換(「NAPT」)を実装することができる。ファイアウォールは、様々なトンネリング・プロトコルに対応して、仮想プライベート・ネットワーキングで使用される通信のようなセキュアな通信を容易にすることができる。ファイアウォールは、非武装地帯(「DMZ」)を実装して、インターネットなどのパブリックなネットワークとの通信を容易にすることができる。ファイアウォールは、インターネット・サーバ、あらゆる他のアプリケーション・サーバ・コンポーネント内にソフトウェアとして一体化されてもよく、又は別のコンピューティング・デバイス内で存在してもよく、又はスタンドアロンのハードウェア・コンポーネントの形態を取ることもできる。
システム及び方法は、本明細書において、機能的なブロック・コンポーネント、スクリーン・ショット、任意選択の選択、及び様々な処理ステップの観点で説明することができる。そのような機能的なブロックは、指定された機能を実施するように構成された任意の数のハードウェア及び/又はソフトウェア・コンポーネントによって実現され得ることを諒解されたい。例えば、システムは、例えばメモリ素子、処理素子、論理素子、ルックアップ・テーブルなどの様々な集積回路コンポーネントを採用することができ、これらは一つ又は複数のマイクロプロセッサ或いは他の制御デバイスの制御の下、多様な機能を実行することができる。同様に、システムのソフトウェア要素は、データ構造、オブジェクト、処理、ルーチン、又は他のプログラミング要素のあらゆる組み合わせで実装される様々なアルゴリズムを用いたC、C++、C#、JAVA(登録商標)、JAVASCRIPT(登録商標)、JAVASCRIPT(登録商標)Object Notation(JSON)、VBScript、Macromedia COLD FUSION、COBOL、MICROSOFT(登録商標)社のActive Server Pages、アセンブリ、PERL(登録商標)、PHP、awk、PYTHON(登録商標)、Visual Basic、SQLストアドプロシージャ、PL/SQL、あらゆるUNIX(登録商標)シェル・スクリプト、及び拡張可能マークアップ言語(XML)などの、あらゆるプログラミング言語又はスクリプト言語で実装することができる。更には、システムは、データ送信、シグナリング、データ処理、ネットワーク制御などについて、任意の数の従来技法を採用することができることに留意されたい。なお更には、システムは、JAVASCRIPT(登録商標)、VBScriptなどのクライアントサイドのスクリプト言語を用いてセキュリティ問題を検出する又は防ぐために使用することができる。暗号化及びネットワーク・セキュリティの方法は、当分野でよく知られており、多くの標準的なテキストでカバーされている。
様々な実施形態において、システムのソフトウェア要素は、NODE.JS(登録商標)コンポーネントを使用して実装することもできる。NODE.JS(登録商標)プログラムは、いくつかのモジュールを実装して様々なコアな機能性を扱うことができる。例えば、NPM(登録商標)などのパッケージ管理モジュールを、オープン・ソース・ライブラリとして実装して、サード・パーティNODE.JS(登録商標)プログラムのインストール及び管理の統制を支援することができる。NODE.JS(登録商標)プログラムは、例えばParallel Multithreaded Machine(「PM2」)などのプロセス・マネージャ;例えばNode Application Metrics(「appmetrics」)などのリソース及びパフォーマンス監視ツール;ユーザ・インターフェースをビルドするためのライブラリ・モジュール、並びに/又はあらゆる他の適切な及び/若しくは所望のモジュールを実装することもできる。
当業者であれば諒解されるように、システムは、既存システムのカスタマイゼーション、アドオン製品、アップグレードしたソフトウェアを実行する処理装置、スタンドアロンのシステム、分散システム、方法、データ処理システム、データ処理用デバイス、及び/又はコンピュータ・プログラム製品として具体化することができる。したがって、システム又はモジュールのあらゆる部分は、コードを実行する処理装置、インターネットベースの実施形態、完全にハードウェアの実施形態、又はインターネット、ソフトウェア及びハードウェアの態様を組み合わせた実施形態の形態を取ることができる。更には、システムは、記憶媒体上に具体化されたコンピュータ可読プログラムコード手段を有するコンピュータ可読記憶媒体上のコンピュータ・プログラム製品の形態を取ることができる。ハード・ディスク、CD-ROM、SONY BLU-RAY DISC(登録商標)、光学記憶装置、磁気記憶装置などを含む、あらゆる適切なコンピュータ可読記憶媒体を利用することができる。用語「非一時的な」は、伝搬する一時的な信号そのものだけを特許請求される範囲から除外するよう理解されるべきであり、一時的な信号そのものだけを伝搬しているのではないすべての標準的なコンピュータ可読媒体に対する権利を放棄するものではない。
本明細書において、恩恵、他の利点、及び問題に対する解決策を具体的な実施形態に関して説明した。しかしながら、恩恵、利点、問題に対する解決策、及びあらゆる恩恵、利点、又は解決策を、生じ得る又はより顕著にさせ得るあらゆる要素は、本開示の重要な、要求される、又は必須の特徴若しくは要素として解釈されるべきではない。したがって、本開示の範囲は、何よりも添付の特許請求の範囲によって限定され、添付の特許請求の範囲では単数形での要素への言及は、明示的に述べられない限り「一つ、且つ一つだけ」を意味することを意図されるのではなく、むしろ「一つ又は複数」を意味することを意図される。その上、「A、B、及びCのうちの少なくとも一つ」又は「A、B、又はCのうちの少なくとも一つ」に類似した言い回しが請求項又は明細書で使用される場合、この言い回しは、実施形態にはAだけが存在し得る、実施形態にはBだけが存在し得る、実施形態にはCだけが存在し得る、或いは単一の実施形態に要素A、B、及びCの任意の組み合わせ、例えばAとB、AとC、BとC、又はAとBとCとが存在し得ることを意味するものと解釈されるよう意図される。
本開示は方法を含むが、磁気若しくは光学メモリ又は磁気若しくは光学ディスクなどの有形のコンピュータ可読キャリア上でコンピュータ・プログラム命令として具体化され得ることが企図される。その上、デバイス又は方法は、本特許請求の範囲によって包含されるため、本開示によって解決しようとするそれぞれ及びすべての問題に対処する必要はない。更には、要素、コンポーネント、又は方法ステップが特許請求の範囲に明示的に記載されているかどうかに関わらず、本開示におけるどの要素、コンポーネント、又は方法ステップも、一般公衆に捧げることを意図されていない。本明細書で使用される際、用語「を含む」、「を含んでいる」、又はそのあらゆる他の変形は、非排他的な包含をカバーするよう意図されており、それにより要素の列挙を含むプロセス、方法、物品、又は装置は、それらの要素だけを含むのではなく、明示的に列挙されなかった他の要素、又はそのようなプロセス、方法、物品、若しくは装置に固有な他の要素を含むことができる。
様々な実施形態の例を、以下の段落で説明する。以下の実施形態は、様々な例の実装形態を例示することを意図されているが、本開示の可能な実施形態のみを特定するものではない。本開示の他の実施形態もまた、例示的な目的で与えられる実施形態の範囲外の係属出願により包含される。
実施形態1
プロセッサによって、口座ハッシュを生成することであって、口座ハッシュは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、プロセッサによって、口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことであって、保守スマート・コントラクトは、呼び出されたことに応じて、口座ハッシュが記憶された初期口座ハッシュ又は記憶された過去の口座ハッシュと一致するかどうかを判断するように構成され、口座ハッシュが記憶された過去の口座ハッシュと一致すると判断したことに応じて、保守スマート・コントラクトは、関連付けられている初期口座ハッシュをプロセッサに返すように構成される、呼び出すことと、プロセッサによって、関連付けられている初期口座ハッシュ及び口座ハッシュを、発行者システムに送信することであって、関連付けられている初期口座ハッシュ及び口座ハッシュを受信したことに応じて、発行者システムは、関連付けられている初期口座ハッシュに基づいて更新済取引口座データを決定するように構成される、送信することと、プロセッサによって、発行者システムからの更新済口座データに基づいて販売者記憶の取引口座データを更新することとを含む、方法。
実施形態2
プロセッサが、取引要求を受信したことに応じて口座ハッシュを生成するように構成され、発行者システムから更新済取引口座データを受信したことに応じて、プロセッサが、取引要求を認可するように構成される、実施形態1に記載の方法。
実施形態3
販売者記憶の取引口座データが、ユーザのファースト・ネーム、ユーザのラスト・ネーム、発行者識別子、取引口座番号、取引口座住所、取引口座セキュリティ・コード、又は取引口座有効期限のうちの、少なくとも一つを含む、実施形態1又は2に記載の方法。
実施形態4
プロセッサによって、販売者記憶の取引口座データを含む口座登録要求を受信することと、プロセッサによって、記憶された口座ハッシュを生成することであって、記憶された口座ハッシュは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、プロセッサによって、記憶された口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことであって、保守スマート・コントラクトが、呼び出されたことに応じて、記憶された口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成される、呼び出すこととを更に含む、実施形態1乃至3のいずれか一項に記載の方法。
実施形態5
保守口座ブロックチェーンに書き込んだことに応じて、保守スマート・コントラクトが、発行者システムに書き込みを通知するように構成され、発行者システムが、記憶された口座ハッシュ及び販売者記憶の取引口座からの少なくとも一つのデータ要素が最新かどうかを判断することにより、保守口座ブロックチェーンへの書き込みを検証するように構成される、実施形態4に記載の方法。
実施形態6
発行者システムが、取引口座更新要求を受信したことに応じて、発行者口座ハッシュを生成するように構成され、発行者口座ハッシュが、発行者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含み、発行者システムが、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すように構成され、保守スマート・コントラクトが、呼び出されたことに応じて、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成される、実施形態1乃至5のいずれか一項に記載の方法。
実施形態7
プロセッサによって、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンから検索することと、プロセッサによって、発行者記憶の取引口座データに基づいて、販売者記憶の取引口座データを更新することとを更に含む、実施形態6に記載の方法。
実施形態8
プロセッサと、プロセッサと通信するように構成された有形の非一時的メモリとを備えるシステムであって、有形の非一時的メモリには命令が記憶されており、命令はプロセッサによって実行されることに応じて、プロセッサによって、口座ハッシュを生成することであって、口座ハッシュは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、プロセッサによって、口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことであって、保守スマート・コントラクトは、呼び出されたことに応じて、口座ハッシュが記憶された初期口座ハッシュ又は記憶された過去の口座ハッシュと一致するかどうかを判断するように構成され、口座ハッシュが記憶された過去の口座ハッシュと一致すると判断したことに応じて、保守スマート・コントラクトは、関連付けられている初期口座ハッシュをプロセッサに返すように構成される、呼び出すことと、プロセッサによって、関連付けられている初期口座ハッシュ及び口座ハッシュを、発行者システムに送信することであって、関連付けられている初期口座ハッシュ及び口座ハッシュを受信したことに応じて、発行者システムは、関連付けられている初期口座ハッシュに基づいて更新済取引口座データを決定するように構成される、送信することと、プロセッサによって、発行者システムからの更新済口座データに基づいて販売者記憶の取引口座データを更新することとを含む動作をプロセッサに実施させる、システム。
実施形態9
プロセッサが、取引要求を受信したことに応じて口座ハッシュを生成するように構成され、発行者システムから更新済取引口座データを受信したことに応じて、プロセッサが、取引要求を認可するように構成される、実施形態8に記載のシステム。
実施形態10
販売者記憶の取引口座データが、ユーザのファースト・ネーム、ユーザのラスト・ネーム、発行者識別子、取引口座番号、取引口座住所、取引口座セキュリティ・コード、又は取引口座有効期限のうちの、少なくとも一つを含む、実施形態8又は9に記載のシステム。
実施形態11
プロセッサによって、販売者記憶の取引口座データを含む口座登録要求を受信することと、プロセッサによって、記憶された口座ハッシュを生成することであって、記憶された口座ハッシュは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、プロセッサによって、記憶された口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことであって、保守スマート・コントラクトが、呼び出されたことに応じて、記憶された口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成される、呼び出すこととを更に含む、実施形態8乃至10のいずれか一項に記載のシステム。
実施形態12
保守口座ブロックチェーンに書き込んだことに応じて、保守スマート・コントラクトが、発行者システムに書き込みを通知するように構成され、発行者システムが、記憶された口座ハッシュ及び販売者記憶の取引口座からの少なくとも一つのデータ要素が最新かどうかを判断することにより、保守口座ブロックチェーンへの書き込みを検証するように構成される、実施形態11に記載のシステム。
実施形態13
発行者システムが、取引口座更新要求を受信したことに応じて、発行者口座ハッシュを生成するように構成され、発行者口座ハッシュが、発行者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含み、発行者システムが、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すように構成され、保守スマート・コントラクトが、呼び出されたことに応じて、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成される、実施形態8乃至12のいずれか一項に記載のシステム。
実施形態14
プロセッサによって、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンから検索することと、プロセッサによって、発行者記憶の取引口座データに基づいて、販売者記憶の取引口座データを更新することとを更に含む、実施形態13に記載のシステム。
実施形態15
命令が記憶された非一時的な有形のコンピュータ可読記憶媒体を含む製造物品であって、命令は、コンピュータ・ベースのシステムによって実行されることに応じて、コンピュータ・ベースのシステムによって、口座ハッシュを生成することであって、口座ハッシュは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、コンピュータ・ベースのシステムによって、口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことであって、保守スマート・コントラクトは、呼び出されたことに応じて、口座ハッシュが記憶された初期口座ハッシュ又は記憶された過去の口座ハッシュと一致するかどうかを判断するように構成され、口座ハッシュが記憶された過去の口座ハッシュと一致すると判断したことに応じて、保守スマート・コントラクトは、関連付けられている初期口座ハッシュをコンピュータ・ベースのシステムに返すように構成される、呼び出すことと、コンピュータ・ベースのシステムによって、関連付けられている初期口座ハッシュ及び口座ハッシュを、発行者システムに送信することであって、関連付けられている初期口座ハッシュ及び口座ハッシュを受信したことに応じて、発行者システムは、関連付けられている初期口座ハッシュに基づいて更新済取引口座データを決定するように構成される、送信することと、コンピュータ・ベースのシステムによって、発行者システムからの更新済口座データに基づいて販売者記憶の取引口座データを更新することとを含む動作をコンピュータ・ベースのシステムに実施させる、製造物品。
実施形態16
コンピュータ・ベースのシステムが、取引要求を受信したことに応じて口座ハッシュを生成するように構成され、発行者システムから更新済取引口座データを受信したことに応じて、コンピュータ・ベースのシステムが、取引要求を認可するように構成される、実施形態15に記載の製造物品。
実施形態17
コンピュータ・ベースのシステムによって、販売者記憶の取引口座データを含む口座登録要求を受信することと、コンピュータ・ベースのシステムによって、記憶された口座ハッシュを生成することであって、記憶された口座ハッシュは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、コンピュータ・ベースのシステムによって、記憶された口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことであって、保守スマート・コントラクトは、呼び出されたことに応じて、記憶された口座ハッシュ、及び販売者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成される、呼び出すこととを更に含む、実施形態15又は16に記載の製造物品。
実施形態18
保守口座ブロックチェーンに書き込んだことに応じて、保守スマート・コントラクトが、発行者システムに書き込みを通知するように構成され、発行者システムが、記憶された口座ハッシュ及び販売者記憶の取引口座からの少なくとも一つのデータ要素が最新かどうかを判断することにより、保守口座ブロックチェーンへの書き込みを検証するように構成される、実施形態17に記載の製造物品。
実施形態19
発行者システムが、取引口座更新要求を受信したことに応じて、発行者口座ハッシュを生成するように構成され、発行者口座ハッシュが、発行者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含み、発行者システムが、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すように構成され、保守スマート・コントラクトが、呼び出されたことに応じて、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成される、実施形態15乃至18のいずれか一項に記載の製造物品。
実施形態20
コンピュータ・ベースのシステムによって、発行者口座ハッシュ、及び発行者記憶の取引口座データからの少なくとも一つのデータ要素を、保守口座ブロックチェーンから検索することと、コンピュータ・ベースのシステムによって、発行者記憶の取引口座データに基づいて、販売者記憶の取引口座データを更新することとを更に含む、実施形態19に記載の製造物品。

Claims (20)

  1. プロセッサによって、口座ハッシュを生成することであって、前記口座ハッシュは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、
    前記プロセッサによって、前記口座ハッシュ、及び前記販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことであって、
    前記保守スマート・コントラクトは、呼び出されたことに応じて、前記口座ハッシュが記憶された初期口座ハッシュ又は記憶された過去の口座ハッシュと一致するかどうかを判断するように構成され、
    前記口座ハッシュが前記記憶された過去の口座ハッシュと一致すると判断したことに応じて、前記保守スマート・コントラクトは、関連付けられている初期口座ハッシュを前記プロセッサに返すように構成される、呼び出すことと、
    前記プロセッサによって、前記関連付けられている初期口座ハッシュ及び前記口座ハッシュを、発行者システムに送信することであって、
    前記関連付けられている初期口座ハッシュ及び前記口座ハッシュを受信したことに応じて、前記発行者システムは、前記関連付けられている初期口座ハッシュに基づいて更新済取引口座データを決定するように構成される、送信することと、
    前記プロセッサによって、前記発行者システムからの前記更新済口座データに基づいて前記販売者記憶の取引口座データを更新することと
    を含む、方法。
  2. 前記プロセッサが、取引要求を受信したことに応じて前記口座ハッシュを生成するように構成され、前記発行者システムから前記更新済取引口座データを受信したことに応じて、前記プロセッサが、前記取引要求を認可するように構成される、請求項1に記載の方法。
  3. 前記販売者記憶の取引口座データが、ユーザのファースト・ネーム、ユーザのラスト・ネーム、発行者識別子、取引口座番号、取引口座住所、取引口座セキュリティ・コード、又は取引口座有効期限のうちの、少なくとも一つを含む、請求項1又は2に記載の方法。
  4. 前記プロセッサによって、前記販売者記憶の取引口座データを含む口座登録要求を受信することと、
    前記プロセッサによって、記憶された口座ハッシュを生成することであって、前記記憶された口座ハッシュは、前記販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、
    前記プロセッサによって、前記記憶された口座ハッシュ、及び前記販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、前記保守スマート・コントラクトを呼び出すことであって、
    前記保守スマート・コントラクトが、呼び出されたことに応じて、前記記憶された口座ハッシュ、及び前記販売者記憶の取引口座データからの前記少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成される、呼び出すことと
    を更に含む、請求項1乃至3のいずれか一項に記載の方法。
  5. 前記保守口座ブロックチェーンに書き込んだことに応じて、前記保守スマート・コントラクトが、前記発行者システムに前記書き込みを通知するように構成され、前記発行者システムが、前記記憶された口座ハッシュ及び前記販売者記憶の取引口座からの前記少なくとも一つのデータ要素が最新かどうかを判断することにより、前記保守口座ブロックチェーンへの前記書き込みを検証するように構成される、請求項4に記載の方法。
  6. 前記発行者システムが、取引口座更新要求を受信したことに応じて、発行者口座ハッシュを生成するように構成され、
    前記発行者口座ハッシュが、発行者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含み、
    前記発行者システムが、前記発行者口座ハッシュ、及び前記発行者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、前記保守スマート・コントラクトを呼び出すように構成され、
    前記保守スマート・コントラクトが、呼び出されたことに応じて、前記発行者口座ハッシュ、及び前記発行者記憶の取引口座データからの前記少なくとも一つのデータ要素を、前記保守口座ブロックチェーンに書き込むように構成される、
    請求項1乃至5のいずれか一項に記載の方法。
  7. 前記プロセッサによって、前記発行者口座ハッシュ、及び前記発行者記憶の取引口座データからの前記少なくとも一つのデータ要素を、前記保守口座ブロックチェーンから検索することと、
    前記プロセッサによって、前記発行者記憶の取引口座データに基づいて、前記販売者記憶の取引口座データを更新することと
    を更に含む、請求項6に記載の方法。
  8. プロセッサと、
    前記プロセッサと通信するように構成された有形の非一時的メモリと
    を備えるシステムであって、前記有形の非一時的メモリには命令が記憶されており、前記命令は前記プロセッサによって実行されることに応じて、
    前記プロセッサによって、口座ハッシュを生成することであって、前記口座ハッシュは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、
    前記プロセッサによって、前記口座ハッシュ、及び前記販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことであって、
    前記保守スマート・コントラクトは、呼び出されたことに応じて、前記口座ハッシュが記憶された初期口座ハッシュ又は記憶された過去の口座ハッシュと一致するかどうかを判断するように構成され、
    前記口座ハッシュが前記記憶された過去の口座ハッシュと一致すると判断したことに応じて、前記保守スマート・コントラクトは、関連付けられている初期口座ハッシュを前記プロセッサに返すように構成される、呼び出すことと、
    前記プロセッサによって、前記関連付けられている初期口座ハッシュ及び前記口座ハッシュを、発行者システムに送信することであって、
    前記関連付けられている初期口座ハッシュ及び前記口座ハッシュを受信したことに応じて、前記発行者システムは、前記関連付けられている初期口座ハッシュに基づいて更新済取引口座データを決定するように構成される、送信することと、
    前記プロセッサによって、前記発行者システムからの前記更新済口座データに基づいて前記販売者記憶の取引口座データを更新することと
    を含む動作を前記プロセッサに実施させる、システム。
  9. 前記プロセッサが、取引要求を受信したことに応じて前記口座ハッシュを生成するように構成され、前記発行者システムから前記更新済取引口座データを受信したことに応じて、前記プロセッサが、前記取引要求を認可するように構成される、請求項8に記載のシステム。
  10. 前記販売者記憶の取引口座データが、ユーザのファースト・ネーム、ユーザのラスト・ネーム、発行者識別子、取引口座番号、取引口座住所、取引口座セキュリティ・コード、又は取引口座有効期限のうちの、少なくとも一つを含む、請求項8又は9に記載のシステム。
  11. 前記プロセッサによって、前記販売者記憶の取引口座データを含む口座登録要求を受信することと、
    前記プロセッサによって、記憶された口座ハッシュを生成することであって、前記記憶された口座ハッシュは、前記販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、
    前記プロセッサによって、前記記憶された口座ハッシュ、及び前記販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、前記保守スマート・コントラクトを呼び出すことであって、
    前記保守スマート・コントラクトが、呼び出されたことに応じて、前記記憶された口座ハッシュ、及び前記販売者記憶の取引口座データからの前記少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成される、呼び出すことと
    を更に含む、請求項8乃至10のいずれか一項に記載のシステム。
  12. 前記保守口座ブロックチェーンに書き込んだことに応じて、前記保守スマート・コントラクトが、前記発行者システムに前記書き込みを通知するように構成され、前記発行者システムが、前記記憶された口座ハッシュ及び前記販売者記憶の取引口座からの前記少なくとも一つのデータ要素が最新かどうかを判断することにより、前記保守口座ブロックチェーンへの前記書き込みを検証するように構成される、請求項11に記載のシステム。
  13. 前記発行者システムが、取引口座更新要求を受信したことに応じて、発行者口座ハッシュを生成するように構成され、
    前記発行者口座ハッシュが、発行者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含み、
    前記発行者システムが、前記発行者口座ハッシュ、及び前記発行者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、前記保守スマート・コントラクトを呼び出すように構成され、
    前記保守スマート・コントラクトが、呼び出されたことに応じて、前記発行者口座ハッシュ、及び前記発行者記憶の取引口座データからの前記少なくとも一つのデータ要素を、前記保守口座ブロックチェーンに書き込むように構成される、
    請求項8乃至12のいずれか一項に記載のシステム。
  14. 前記プロセッサによって、前記発行者口座ハッシュ、及び前記発行者記憶の取引口座データからの前記少なくとも一つのデータ要素を、前記保守口座ブロックチェーンから検索することと、
    前記プロセッサによって、前記発行者記憶の取引口座データに基づいて、前記販売者記憶の取引口座データを更新することと
    を更に含む、請求項13に記載のシステム。
  15. 命令が記憶された非一時的な有形のコンピュータ可読記憶媒体を含む製造物品であって、前記命令は、コンピュータ・ベースのシステムによって実行されることに応じて、
    前記コンピュータ・ベースのシステムによって、口座ハッシュを生成することであって、前記口座ハッシュは、販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、
    前記コンピュータ・ベースのシステムによって、前記口座ハッシュ、及び前記販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、保守スマート・コントラクトを呼び出すことであって、
    前記保守スマート・コントラクトは、呼び出されたことに応じて、前記口座ハッシュが記憶された初期口座ハッシュ又は記憶された過去の口座ハッシュと一致するかどうかを判断するように構成され、
    前記口座ハッシュが前記記憶された過去の口座ハッシュと一致すると判断したことに応じて、前記保守スマート・コントラクトは、関連付けられている初期口座ハッシュを前記コンピュータ・ベースのシステムに返すように構成される、呼び出すことと、
    前記コンピュータ・ベースのシステムによって、前記関連付けられている初期口座ハッシュ及び前記口座ハッシュを、発行者システムに送信することであって、
    前記関連付けられている初期口座ハッシュ及び前記口座ハッシュを受信したことに応じて、前記発行者システムは、前記関連付けられている初期口座ハッシュに基づいて更新済取引口座データを決定するように構成される、送信することと、
    前記コンピュータ・ベースのシステムによって、前記発行者システムからの前記更新済口座データに基づいて前記販売者記憶の取引口座データを更新することと
    を含む動作を前記コンピュータ・ベースのシステムに実施させる、製造物品。
  16. 前記コンピュータ・ベースのシステムが、取引要求を受信したことに応じて前記口座ハッシュを生成するように構成され、前記発行者システムから前記更新済取引口座データを受信したことに応じて、前記コンピュータ・ベースのシステムが、前記取引要求を認可するように構成される、請求項15に記載の製造物品。
  17. 前記コンピュータ・ベースのシステムによって、前記販売者記憶の取引口座データを含む口座登録要求を受信することと、
    前記コンピュータ・ベースのシステムによって、記憶された口座ハッシュを生成することであって、前記記憶された口座ハッシュは、前記販売者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含む、生成することと、
    前記コンピュータ・ベースのシステムによって、前記記憶された口座ハッシュ、及び前記販売者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、前記保守スマート・コントラクトを呼び出すことであって、
    前記保守スマート・コントラクトは、呼び出されたことに応じて、前記記憶された口座ハッシュ、及び前記販売者記憶の取引口座データからの前記少なくとも一つのデータ要素を、保守口座ブロックチェーンに書き込むように構成される、呼び出すことと
    を更に含む、請求項15又は16に記載の製造物品。
  18. 前記保守口座ブロックチェーンに書き込んだことに応じて、前記保守スマート・コントラクトが、前記発行者システムに前記書き込みを通知するように構成され、前記発行者システムが、前記記憶された口座ハッシュ及び前記販売者記憶の取引口座からの前記少なくとも一つのデータ要素が最新かどうかを判断することにより、前記保守口座ブロックチェーンへの前記書き込みを検証するように構成される、請求項17に記載の製造物品。
  19. 前記発行者システムが、取引口座更新要求を受信したことに応じて、発行者口座ハッシュを生成するように構成され、
    前記発行者口座ハッシュが、発行者記憶の取引口座データからの少なくとも一つのデータ要素の暗号ハッシュを含み、
    前記発行者システムが、前記発行者口座ハッシュ、及び前記発行者記憶の取引口座データからの少なくとも一つのデータ要素を渡すことにより、前記保守スマート・コントラクトを呼び出すように構成され、
    前記保守スマート・コントラクトが、呼び出されたことに応じて、前記発行者口座ハッシュ、及び前記発行者記憶の取引口座データからの前記少なくとも一つのデータ要素を、前記保守口座ブロックチェーンに書き込むように構成される、
    請求項15乃至18のいずれか一項に記載の製造物品。
  20. 前記コンピュータ・ベースのシステムによって、前記発行者口座ハッシュ、及び前記発行者記憶の取引口座データからの前記少なくとも一つのデータ要素を、前記保守口座ブロックチェーンから検索することと、
    前記コンピュータ・ベースのシステムによって、前記発行者記憶の取引口座データに基づいて、前記販売者記憶の取引口座データを更新することと
    を更に含む、請求項19に記載の製造物品。
JP2023132227A 2018-12-14 2023-08-15 ブロックチェーンを使用する取引口座データ保守 Pending JP2023164828A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US16/220,235 2018-12-14
US16/220,235 US11282076B2 (en) 2018-12-14 2018-12-14 Transaction account data maintenance using blockchain
PCT/US2019/065975 WO2020123801A1 (en) 2018-12-14 2019-12-12 Transaction account data maintenance using blockchain
JP2021529742A JP2022510885A (ja) 2018-12-14 2019-12-12 ブロックチェーンを使用する取引口座データ保守

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021529742A Division JP2022510885A (ja) 2018-12-14 2019-12-12 ブロックチェーンを使用する取引口座データ保守

Publications (1)

Publication Number Publication Date
JP2023164828A true JP2023164828A (ja) 2023-11-14

Family

ID=71072709

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021529742A Pending JP2022510885A (ja) 2018-12-14 2019-12-12 ブロックチェーンを使用する取引口座データ保守
JP2023132227A Pending JP2023164828A (ja) 2018-12-14 2023-08-15 ブロックチェーンを使用する取引口座データ保守

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2021529742A Pending JP2022510885A (ja) 2018-12-14 2019-12-12 ブロックチェーンを使用する取引口座データ保守

Country Status (7)

Country Link
US (2) US11282076B2 (ja)
EP (1) EP3895403A4 (ja)
JP (2) JP2022510885A (ja)
KR (1) KR102621900B1 (ja)
CN (1) CN113169980B (ja)
SG (1) SG11202105615XA (ja)
WO (1) WO2020123801A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10721069B2 (en) 2018-08-18 2020-07-21 Eygs Llp Methods and systems for enhancing privacy and efficiency on distributed ledger-based networks
US10928848B2 (en) * 2018-11-28 2021-02-23 International Business Machines Corporation Distributed clock
US11282076B2 (en) * 2018-12-14 2022-03-22 American Express Travel Related Services Company, Inc. Transaction account data maintenance using blockchain
CN110070359B (zh) * 2019-03-19 2020-12-01 创新先进技术有限公司 基于区块链的数据核对系统、方法、计算设备及存储介质
US11677563B2 (en) 2019-04-15 2023-06-13 Eygs Llp Systems, apparatus and methods for local state storage of distributed ledger data without cloning
US11502838B2 (en) 2019-04-15 2022-11-15 Eygs Llp Methods and systems for tracking and recovering assets stolen on distributed ledger-based networks
US11943358B2 (en) * 2019-04-15 2024-03-26 Eygs Llp Methods and systems for identifying anonymized participants of distributed ledger-based networks using zero-knowledge proofs
US11027197B2 (en) * 2019-09-30 2021-06-08 Sony Interactive Entertainment Inc. Serverless gaming through zero-knowledge proofs
EP3769490B1 (en) * 2019-10-16 2022-05-04 Alipay (Hangzhou) Information Technology Co., Ltd. Implementing a blockchain-based web service
US11100501B1 (en) * 2020-05-22 2021-08-24 Kpmg Llp Modular, configurable smart contracts for blockchain transactions
US20210398093A1 (en) * 2020-06-19 2021-12-23 Mastercard International Incorporated Method and system for payment integration with provenance supply chain events
TWI777208B (zh) * 2020-08-03 2022-09-11 立新 陳 多位電商業者之間安全交易的方法
US11880838B2 (en) * 2020-10-07 2024-01-23 Mastercard International Incorporated Systems and methods for use in promoting hash key account access
CN112367194B (zh) * 2020-10-27 2022-03-25 四川长虹电器股份有限公司 一种Fabric智能合约更新通道配置的方法
US11799658B2 (en) * 2020-10-28 2023-10-24 Bank Of America Corporation Tracking data throughout an asset lifecycle
CN112286643B (zh) * 2020-12-24 2021-04-20 北京百度网讯科技有限公司 以太坊虚拟机的事务处理方法、装置、设备和介质
US20220337424A1 (en) * 2021-04-16 2022-10-20 Portable Data Corp Apparatuses And Methods For Facilitating Cryptographically Mediated Organizations And Tokens And Related Interactions
CN113691373B (zh) * 2021-08-20 2022-06-10 华中农业大学 一种基于联盟区块链的抗量子密钥托管系统及方法
CN114938280A (zh) * 2022-05-24 2022-08-23 中国科学技术大学 一种基于非交互零知识证明与智能合约的认证方法及系统
EP4311156A1 (en) * 2022-07-18 2024-01-24 Wei Yeh Device and method for securing and verifying business data via a blockchain system
US20240152920A1 (en) * 2022-11-08 2024-05-09 American Express Travel Related Services Company, Inc. Systems and methods for payment using biometric information
CN117093654B (zh) * 2023-10-19 2024-02-09 湖南三湘银行股份有限公司 一种基于区块链技术的账务标记方法

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658568B1 (en) * 1995-02-13 2003-12-02 Intertrust Technologies Corporation Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management
US7899742B2 (en) * 2001-05-29 2011-03-01 American Express Travel Related Services Company, Inc. System and method for facilitating a subsidiary card account
US8046299B2 (en) * 2003-10-15 2011-10-25 American Express Travel Related Services Company, Inc. Systems, methods, and devices for selling transaction accounts
CA2655026C (en) 2006-06-15 2016-08-02 Microvention, Inc. Embolization device constructed from expansible polymer
US7806323B2 (en) * 2008-01-04 2010-10-05 Visa U.S.A. Inc. System and method for providing activation and expiration data associated with newly issued financial presentation devices
JP2009169490A (ja) * 2008-01-11 2009-07-30 Fuji Xerox Co Ltd ユーザ属性情報管理プログラム、ユーザ属性情報確認プログラム、ユーザ属性情報管理装置、ユーザ属性情報確認装置及びユーザ属性情報管理システム
US8706622B2 (en) * 2008-08-05 2014-04-22 Visa U.S.A. Inc. Account holder demand account update
US20150220914A1 (en) * 2011-08-18 2015-08-06 Visa International Service Association Electronic Wallet Management Apparatuses, Methods and Systems
US9710807B2 (en) * 2011-08-18 2017-07-18 Visa International Service Association Third-party value added wallet features and interfaces apparatuses, methods and systems
US20130073460A1 (en) * 2011-09-15 2013-03-21 Microsoft Corporation Enabling paid-for exchange of identity attributes with minimal disclosure credentials
US20130117087A1 (en) * 2011-11-07 2013-05-09 Apriva, Llc System and method for authenticating electronic transaction instruments
US8719167B2 (en) * 2012-03-02 2014-05-06 American Express Travel Related Services Company, Inc. Systems and methods for enhanced authorization fraud mitigation
US9305073B1 (en) * 2012-05-24 2016-04-05 Luminix, Inc. Systems and methods for facilitation communications among customer relationship management users
US9947007B2 (en) * 2013-01-27 2018-04-17 Barry Greenbaum Payment information technologies
US20180315046A1 (en) * 2013-06-17 2018-11-01 Raymond Anthony Joao Apparatus and method for providing transaction security and/or account security
US9805366B1 (en) * 2013-09-16 2017-10-31 Square, Inc. Associating payment information from a payment transaction with a user account
US9596267B2 (en) * 2014-08-26 2017-03-14 Microsoft Technology Licensing, Llc Multi cloud policy enactment via organizations to cloud-provider partnerships
JP6704985B2 (ja) * 2015-04-05 2020-06-03 デジタル・アセット・ホールディングス・エルエルシー デジタル資産仲介電子決済プラットフォーム
US20160342989A1 (en) * 2015-05-21 2016-11-24 Mastercard International Incorporated Method and system for processing blockchain-based transactions on existing payment networks
US10963881B2 (en) * 2015-05-21 2021-03-30 Mastercard International Incorporated Method and system for fraud control of blockchain-based transactions
US9870562B2 (en) * 2015-05-21 2018-01-16 Mastercard International Incorporated Method and system for integration of market exchange and issuer processing for blockchain-based transactions
US20180191503A1 (en) * 2015-07-14 2018-07-05 Fmr Llc Asynchronous Crypto Asset Transfer and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
US20170048209A1 (en) * 2015-07-14 2017-02-16 Fmr Llc Crypto Key Recovery and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
US20170109735A1 (en) * 2015-07-14 2017-04-20 Fmr Llc Computationally Efficient Transfer Processing and Auditing Apparatuses, Methods and Systems
JP6288022B2 (ja) * 2015-09-24 2018-03-07 カシオ計算機株式会社 売上データ処理装置及びプログラム
US20170132626A1 (en) * 2015-11-05 2017-05-11 Mastercard International Incorporated Method and system for processing of a blockchain transaction in a transaction processing network
US9849364B2 (en) 2016-02-02 2017-12-26 Bao Tran Smart device
EP3411824B1 (en) * 2016-02-04 2019-10-30 Nasdaq Technology AB Systems and methods for storing and sharing transactional data using distributed computer systems
US10108954B2 (en) * 2016-06-24 2018-10-23 PokitDok, Inc. System and method for cryptographically verified data driven contracts
US10411905B2 (en) * 2016-07-01 2019-09-10 Intel Corporation Public key infrastructure using blockchains
US10705926B2 (en) * 2016-07-29 2020-07-07 Rubrik, Inc. Data protection and recovery across relational and non-relational databases
US9940089B2 (en) * 2016-08-31 2018-04-10 International Business Machines Corporation Vehicle information display and management
US10832247B2 (en) * 2016-09-15 2020-11-10 American Express Travel Related Services Company, Inc. Systems and methods for blockchain based payment networks
US10475035B2 (en) * 2016-10-11 2019-11-12 Mastercard International Incorporated Methods, systems, and computer readable media for consolidated registration of payment cards
US11005650B2 (en) * 2016-10-19 2021-05-11 Stripe, Inc. Systems and methods for data management and the use of salts and keys in data encryption/decryption
US10909513B2 (en) * 2016-10-21 2021-02-02 Mastercard International Incorporated Systems and methods for tracking access data to a data source
US10936565B2 (en) * 2016-12-21 2021-03-02 Mastercard International Incorporated Systems and methods for accessing a subscriber-based source
US20180189753A1 (en) * 2017-01-05 2018-07-05 Beskatta, LLC Infrastructure for obligation management and validation
US20220138741A1 (en) * 2017-01-25 2022-05-05 State Farm Mutual Automobile Insurance Company Blockchain based banking identity authentication
US20180268401A1 (en) * 2017-03-17 2018-09-20 Royal Bank Of Canada Systems and methods for hybrid blockchain platform
CA3065319A1 (en) * 2017-06-01 2018-12-06 Schvey, Inc. d/b/a/ Axoni Distributed privately subspaced blockchain data structures with secure access restriction management
US10810004B2 (en) * 2017-06-30 2020-10-20 Oracle International Corporation System and method for managing a public software component ecosystem using a distributed ledger
US11132704B2 (en) * 2017-07-06 2021-09-28 Mastercard International Incorporated Method and system for electronic vouchers via blockchain
US20190044917A1 (en) * 2017-08-04 2019-02-07 Bank Of America Corporation System for secure verification of identity data
US11900339B1 (en) * 2017-11-30 2024-02-13 Worldpay, Llc Systems and methods for hyperledger-based payment transactions, alerts, and dispute settlement, using smart contracts
US11227284B2 (en) * 2017-12-13 2022-01-18 Mastercard International Incorporated Method and system for consumer-initiated transactions using encrypted tokens
US20190188719A1 (en) * 2017-12-14 2019-06-20 Visa International Service Association Computer-Implemented System, Method, and Computer Program Product for Automatically Generating an Account Profile for at Least One User Associated with a Plurality of Account Identifiers
US20190205871A1 (en) * 2018-01-04 2019-07-04 Mastercard International Incorporated System and methods for populating a merchant advice code
CN108282474B (zh) * 2018-01-18 2020-04-17 山东大学 基于区块链的数字资产交易一致性的维护方法
US11770261B2 (en) * 2018-03-27 2023-09-26 Workday, Inc. Digital credentials for user device authentication
CN108711105A (zh) * 2018-05-16 2018-10-26 四川吉鼎科技有限公司 一种基于区块链的安全交易验证方法及系统
US20220277276A1 (en) * 2018-09-06 2022-09-01 Wells Fargo Bank, N.A. Credit Card As a Foreign Exchange Market Card
US11282076B2 (en) * 2018-12-14 2022-03-22 American Express Travel Related Services Company, Inc. Transaction account data maintenance using blockchain

Also Published As

Publication number Publication date
EP3895403A1 (en) 2021-10-20
KR102621900B1 (ko) 2024-01-08
CN113169980B (zh) 2023-06-23
KR20210090665A (ko) 2021-07-20
US11282076B2 (en) 2022-03-22
EP3895403A4 (en) 2022-11-23
SG11202105615XA (en) 2021-06-29
US20200193429A1 (en) 2020-06-18
CN113169980A (zh) 2021-07-23
JP2022510885A (ja) 2022-01-28
US20220270089A1 (en) 2022-08-25
WO2020123801A1 (en) 2020-06-18

Similar Documents

Publication Publication Date Title
KR102621900B1 (ko) 블록체인을 사용한 거래 계좌 데이터 유지
JP7166453B2 (ja) ブロックチェーンを使用するゼロ知識証明支払い
US20230353375A1 (en) Reward point transfers using blockchain
US11699166B2 (en) Multi-merchant loyalty point partnership
US11397962B2 (en) Loyalty point distributions using a decentralized loyalty ID
US20230401555A1 (en) System and method for transaction account based micro-payments
US11341503B2 (en) Deploying a cloud-based system using a distributed ledger
US10783545B2 (en) Reward point redemption for cryptocurrency
JP7384837B2 (ja) ピア・ツー・ピア金銭移動
US11941654B2 (en) Automated transactional offers using a browser extension
US20240212039A1 (en) Automated non-billing cycle remittance
WO2020167614A1 (en) Loyalty point distributions using a decentralized loyalty id
WO2020150325A1 (en) Automated non-billing cycle remittance
WO2020086654A1 (en) Multi-merchant loyalty point partnership

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230912

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230912

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240723