(57)【特許請求の範囲】
【請求項１】
一以上のデータプロセッサを使用して、クライアントデバイスから製品ページチェックアウト要求をマーチャントサーバが受信し、
前記一以上のデータプロセッサを使用して、マーチャントとユーザに関連付けられた情報をダイナミックチェックアウトボタンサーバがクエリし、
前記一以上のデータプロセッサを使用して、前記ダイナミックチェックアウトボタンサーバが、前記マーチャントのウェブサイトまたはワールドワイドウェブを介して解析を行い、前記ユーザにとって関心がある結果を生成し、
前記一以上のデータプロセッサを使用して、ウォレット関連チェックアウトボタンに埋め込まれる一以上の財政アカウントを表すダイナミック画像を前記ダイナミックチェックアウトボタンサーバが生成し、
前記一以上のデータプロセッサを使用して、前記ダイナミック画像を前記クライアントデバイスに前記ダイナミックチェックアウトボタンサーバが送信し、
前記ダイナミック画像の受信に応じて、前記ダイナミック画像を前記ウォレット関連チェックアウトボタンに前記クライアントデバイスが埋め込み、
前記クライアントデバイスが、前記ダイナミック画像とともに前記ウォレット関連チェックアウトボタンを表示し、
前記ダイナミック画像は、前記一以上の財政アカウントに対応するカードアートの視覚表示と前記ユーザにとって関心がある前記結果の視覚表示を含み、
前記カードアートの視覚表示は、閾値を考慮して前記一以上の財政アカウントの表示を含むことを特徴とする方法。
【請求項２】
前記製品ページチェックアウト要求は、一以上のマーチャントの製品リストを閲覧するワールドワイドウェブからもたらされることを特徴とする請求項１に記載の方法。
【請求項３】
前記閾値はカスタム化可能でユーザに特有であることを特徴とする請求項１または２に記載の方法。
【請求項４】
前記閾値は、ユーザのウォレットアカウントへのアクセスに基づいて、カスタム化可能でユーザに特有であることを特徴とする請求項３に記載の方法。
【請求項５】
前記ユーザのウォレットアカウントは、前記ユーザのプロフィール情報、支払方法情報及び送付先住所を格納することを特徴とする請求項４に記載の方法。
【請求項６】
前記解析は、前記一以上の財政アカウントに対して最大キャッシュバックを決定することを含み、前記最大キャッシュバックをもたらす財政アカウントを前記ダイナミック画像に示すことを特徴とする請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記ダイナミック画像は、ユーザのデバイスに表示するために前記ウォレット関連チェックアウトボタンのリンク位置に埋め込まれていることを特徴とする請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記ウォレット関連チェックアウトボタンは、ユーザディスプレイ内の領域を占めることを特徴とする請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記ウォレット関連チェックアウトボタンにおける前記埋め込まれたダイナミック画像は、前記ウォレット関連チェックアウトボタンによって占められた前記領域内に表示される前記ダイナミック画像を含むことを特徴とする請求項８に記載の方法。
【請求項１０】
一以上のサーバは、前記一以上のデータプロセッサを含み、前記製品ページチェックアウト要求と前記ダイナミック画像は一以上の通信ネットワークを通じて送信されることを特徴とする請求項１から９のいずれか一項に記載の方法。
【請求項１１】
前記クライアントデバイスは無線デバイスを含むことを特徴とする請求項１から１０のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２０１４年７月６日提出の米国仮特許出願シリアル番号第６２／０２１，１８７号、発明の名称「ダイナミックチェックアウトボタン装置、方法及びシステム」に対する優先権を主張する。上記出願の全体の内容は、明示的にここで参照されて結合される。
【０００２】
本特許開示書類のための本出願は、様々な新規な改良のための発明的側面（以下「開示」）を記載し、著作権、マスクワーク、及び／又はその他の知的財産権保護の対象である素材を含んでいる。この知的財産権の各所有者は、公開された特許庁書類／記録に現れる場合、何人による複製にも異議を唱えないが、それ以外では全ての権利を留保する。
【０００３】
本改良は、一般に、電子商取引とデジタルウォレットに係り、特に、ダイナミックチェックアウトボタン装置、方法及びシステムに関する。
【背景技術】
【０００４】
ワールドワイドウェブを使用するコンシューマは、マーチャントの製品リストを閲覧し、選択された製品を購入する。これらの購入に対して割引がコンシューマに提案される。
【０００５】
添付付録及び／又は図面は、本開示の様々な非限定的な革新的な例示的側面を示す。
【０００６】
図面における、各参照番号の最初の番号は、参照番号が導入及び／又は詳述される図を示している、従って、参照番号１０１の詳細な説明は図１にあり、及び／又は与えられる。参照番号２０１は図２に使用されるなどである。
【図面の簡単な説明】
【０００７】
【図１Ａ】図１Ａは、ＤＣＢの例示的な実施例を示すブロック図である。
【図１Ｂ】図１Ｂは、ＤＣＢの例示的な実施例を示すブロック図である。
【図２】ＤＣＢのある実施例における例示的なデータフローを示すブロック図である。
【図３】ＤＣＢのある実施例における例示的なコンポーネントを示す論理フロー図である。
【図４】ＤＣＢの更なる例示的な実施例を示している。
【図５】ＤＣＢの更なる例示的な実施例を示している。
【図６】ＤＣＢの更なる例示的な実施例を示している。
【図７】ＤＣＢの更なる例示的な実施例を示している。
【図８】ＤＣＢコントローラの実施例を示すブロック図である。
【発明を実施するための形態】
【０００８】
ＤＣＢ
ダイナミックチェックアウトボタン装置、方法及びシステム（ＤＣＢ）は、提案／割引決定コンポーネント８４１とチェックアウトボタン埋め込みコンポーネント８４２等のＤＣＢコンポーネントを介して、製品ページチェックアウト要求及びユーザＩＤ入力等の入力（例えば、２１１）を、ダイナミックチェックアウトボタン（例えば、２６５）出力に変換する。図１Ａは、ＤＣＢの例示的な実施例を示すブロック図である。ある実施例においては、ＤＣＢは、ユーザ１０５の種類を決定してもよい。ユーザが新規ユーザであれば、ＤＣＢは、新規顧客１１０用の提案、例えば、「２５％オフを得よう」と共にウォレットチェックアウトボタンを表示してもよい１１５。ユーザが既存でアクティブなユーザであれば、既存／アクティブな顧客１３０用の提案、例えば、「１０％オフを得よう」と共にチェックアウトボタンを表示してもよい１３５。ユーザが既存だが休眠ユーザであれば、ＤＣＢは、既存／休眠顧客１２０用の提案、例えば、「購入時送料無料を得よう」と共にチェックアウトボタンを表示してもよい１２５。
【０００９】
図１Ｂは、ＤＣＢのある実施例におけるウォレットチェックアウトボタンに埋め込まれた例示的な提案／割引を示すブロック図である。ある実施例においては、割引／提案は、有効となる割引／提案の残り時間を示すタイマーが付随してもよい。例えば、それは、「４０％オフでチェックアウトするまでの時間は１０分」を示してもよい１５０。残り時間はカウントダウンされてもよい１５５。割引／提案は、時間のカウントダウンと共に変化してもよい。例えば、割引は、７分で３５％オフ１６０から６分で３０％オフ１６５、５分で２５％オフ１７０に変化してもよい等である。ある実施例では、ＤＣＢは、ユーザのプロフィール情報、支払方法情報、送付先等の、ユーザのウォレットアカウントにアクセスしてもよいので、割引／提案はカスタム化及びユーザ専用にされてもよい。例えば、それは、「やあジョン、今すぐチェックアウトして君のアメックスカードに３０００ポイントを貯めよう」１７５のようなメッセージを表示してもよい。別の実施例では、それは、「やあジョン、君のディスカバーカードを使用して購入時に５％のキャッシュバックを受けよう」１８０のメッセージを表示してもよい。ＤＣＢは、マーチャントのサイトまたはウェブを介して、解析を行い、ユーザの興味がある解析を表示してもよい。例えば、このマーチャントサイトの製品の史上最低価格を示すメッセージを表示してもよい１８５。別の実施例では、それは、別のマーチャントにおける最低価格を表示してもよい１９０。
【００１０】
図２は、ＤＣＢのある実施例における例示的なデータフローを示すブロック図である。ある実施例では、ユーザ２０１（例えば、顧客）は、製品ページチェックアウト要求とユーザＩＤ入力２１１を（例えば、モバイルデバイス、コンピュータ、販売時点情報管理、ラップトップ等の）クライアント２０２に送信してもよい。クライアントは、製品ページチェックアウト要求２１５をマーチャントサーバ２０５に更に送信してもよい。例えば、マーチャントサーバは、以下に与える例示的リストに類似した、拡張マークアップ言語（ＸＭＬ）フォーマットの製品ページチェックアウト要求２１５を含むＨＴＴＰ（Ｓ）ＧＥＴメッセージを提供してもよい。
【００１１】
【表１】
0006615798.tif 000002
【００１２】
マーチャントサーバは、埋め込まれる提案／取引リンク２２０と共に、製品チェックアウトボタンを生成してもよい。マーチャントサーバは、その後、埋め込まれる提案／取引リンク２２５と共に、製品チェックアウトボタンをクライアントに送信してもよい。例えば、マーチャントサーバは、ＸＭＬフォーマットの提案／割引リンクメッセージ２２５と共に、製品チェックアウトボタンを含むＨＴＴＰ（Ｓ）ＰＯＳＴメッセージを提供してもよい。
【００１３】
【表２】
0006615798.tif 000003
0006615798.tif 000004
【００１４】
ユーザＩＤ入力を受信すると、クライアントは、ユーザＩＤ入力メッセージ２３０をＤＣＢサーバ２１０に送信してもよい。ＤＣＢサーバは、ユーザのマーチャントロイヤルティレベル２３５のクエリを生成してユーザデータベース２２０に送信してもよい。例えば、データベースは、ストラクチャード・クエリ・ラングエージ（ＳＱＬ）コマンドに応答するリレーショナルデータベースであってもよい。ＤＣＢサーバは、データベースにユーザのマーチャントロイヤルティレベルをクエリするためのＳＱＬコマンドを含むハイパーテキスト・プリプロセッサ（ＰＨＰ）スクリプトを実行してもよい。例示的なＰＨＰ／ＳＱＬコマンドリストは、ユーザデータベース２３５をクエリする実質的側面を示し、以下に与えられる。
【００１５】
【表３】
0006615798.tif 000005
【００１６】
ユーザのマーチャントロイヤルティレベル２４０を受信すると、ＤＣＢサーバは、ユーザのマーチャントロイヤルティレベル２４５に従って提案／取引を決定してもよい。例えば、ユーザのマーチャントロイヤルティレベルデータは、ユーザが新規ユーザであることを示してもよく、ＤＣＢサーバは新規ユーザに対する提案／割引を決定してもよい。ユーザのマーチャントロイヤルティレベルデータは、ユーザのウォレットに格納されたユーザプロフィール情報及び／又はその他の情報を含んでもよい。従って、提案／割引メッセージは、ユーザのウォレットからのいかなる情報を含んでいてもよい。ＤＣＢサーバは、ウォレット（例えば、１５０、１５５、１６０、１６５、１７０、１７５、１８０、１８５、１９０等）に格納された情報に基づいて、他のユーザの特定の行為を決定してもよい。一旦ＤＣＢサーバが提案／割引２４５を決定すると、ＤＣＢサーバは対応する提案／割引メッセージ２５０を生成し続けてもよい。ＤＣＢサーバは、対応する提案／取引メッセージ２５５を更に送信してもよい。例えば、ＤＣＢサーバは、以下に提供する例示的なリストに類似した、ＸＭＬフォーマットの対応する提案／取引メッセージ２５５を含むＨＴＴＰ（Ｓ）ＰＯＳＴメッセージを提供してもよい。
【００１７】
【表４】
0006615798.tif 000006
【００１８】
クライアントは、表示２６５のために、提案／割引を製品チェックアウトボタン２６０のリンク位置に埋め込んでもよい。例示的なＨＴＴＰメッセージは以下のようであってもよい。
【００１９】
【表５】
0006615798.tif 000007
0006615798.tif 000008
【００２０】
図３は、ＤＣＢのある実施例における例示的なコンポーネントを示す論理フロー図である。ある実施例では、クライアントは、マーチャントサーバに製品ページチェックアウト要求を送信する３０１。マーチャントサーバは、製品が入手可能であるかどうかを決定してもよい３０５。製品が入手可能であれば、マーチャントサーバは、埋め込まれる提案／割引へのリンクと共に、製品チェックアウトボタンを生成及びクライアントに送信してもよい３１０。クライアントは、ユーザからユーザＩＤ入力を受信する場合３４０、クライアントはＤＣＢサーバ３５０にユーザＩＤ入力を送信してもよい。ＤＣＢサーバは、ユーザのマーチャントロイヤルティレベルデータ３５５のクエリを生成してユーザデータベースに送信してもよい。ユーザのマーチャントロイヤルティレベルデータを受信すると３６０、ＤＣＢサーバは、ユーザのマーチャントロイヤルティレベルデータ３６５に応じて提案／割引を決定してもよい。ＤＣＢサーバは、対応する提案／割引メッセージを生成してクライアントに送信する３７０。一旦クライアントは、マーチャント３１５から埋め込まれる提案／割引へのリンクと共に製品チェックアウトボタンと、ＤＣＢサーバ３７０から対応する提案／割引メッセージを受信すると、クライアントは製品チェックアウトボタンのリンク位置に提案／割引を埋め込んでもよい３２０。一旦ユーザがチェックアウトの準備が整うと、ユーザは、チェックアウト要求をクライアント３２５に送信し、ＤＣＢサーバは決定された提案／割引３３０とのトランザクションを処理してもよい。クライアントがユーザＩＤ入力を受信しない場合３４０、ＤＣＢサーバは、ログイン不成功メッセージを生成及びクライアントに送信してもよい３４５。製品が入手可能でなければ３０５、マーチャントは、製品入手不能メッセージを生成しクライアントに送信し３３５、処理を終了してもよい。
【００２１】
図４及び５は、ここで説明される広範囲なシステムと方法を示している。図４及び５に示すように、システム及び方法は、上述した処理に使用されるチェックアウトボタンの多くの異なる種類を有するように構成されてもよい。これらは、ダイナミックテキスト、ダイナミック画像（写真（コンシューマの写真、好みのペットの写真等）、カードアート、製品画像、その他の画像を含む）、ダイナミックな色、ダイナミックな図柄、ダイナミックなタイマー／カレンダー／リマインダー、動画（画像は経時的に移動する）を含むが、それらには限定されない。
【００２２】
図４は、カードアートと他の種類のダイナミック画像を含む、４１０でダイナミック画像を示す。図４に示すように、コンシューマのデフォルトカードのカードアートは、システムが（クッキーやデバイスフィンガープリント等によって）コンシューマを認識するときに、チェックアウトボタンに配置され、コンシューマは実施可能にされた一種の「リメンバーミー」機能を有する。これらの条件が本実施例で満足されると、システムは、図４に示すように、ボタンバックを使用する。グレイカードとシュッとしたもの（図４上側にあるチェックアウトボタン）は未認識ボタンであり、ゴールドカード（図４下側にあるチェックアウトボタン）を有する者は、認識されたデフォルトカードアートを表している。カードアートは、例えば、コンシューマのＢのＡリワードカードであってもよい。ある実施例では、カードアートは、幾つかのアカウントのどのアカウントをユーザが現在のトランザクションに使用しているかを表してもよい。例えば、ユーザはＡリワードカードのＢとローカルバンクカードを有し、カードアートは特定のトランザクションにどのカードが使用されているかを視覚的に表してもよい。
【００２３】
ある実施例では、ユーザは、どのアカウントがトランザクションに使用されているのかを決定することを容易にするために、トランザクションの一部として表示されるアートを選択可能であってもよい。例えば、ＡのＢは、ユーザが所有するＡカードのＢの外観を複写する利用可能なカードアートであってもよい。また、ユーザは、アカウントを表す更なるカードアートを選択又は作成可能でもよい。既存のユーザは、例えば、より大きなレタリングを希望してもよいし、レタリングはユーザによって修正可能でもよい。別のユーザは、最初のカードが、そのカードが既に高い残高を有して使用できないことを示す赤で着色されることを希望し、別のカードはカードが残高を有さずに使用可能であることを示す緑で着色されてもよい。
【００２４】
別の実施例では、カードアートは、支払デバイス又はカードに関連付けられたアカウントにおける残高を示してもよい。例えば、ユーザは、残高限界を設定し、アカウントの金額が限界を超えるまたは下である場合、カードアートは変化してもよい。閾値は、ユーザによって設定、イシュアによって設定、又は、機関によって設定されてもよいし、閾値は、ユーザの一以上のアカウントの現在の状態を示すために、リアルタイム通信とアカウントデータを、外観を設定するために使用してもよい。
【００２５】
別の実施例では、カードアートは、他に対して一の支払アカウントを勧める様々な要因を分析するアルゴリズムの結果を示してもよい。要因は、小売店、購入される商品又は役務、商品又は役務の価格、異なるベンダーにおいて異なる商品又は役務に対する各支払アカウントを使用することに対して提案されるリワードなどを含んでもよい。より具体的な実施例として、ユーザは支払デバイスからキャッシュバックを最大化したいと思い、ガソリンを購入しているのであれば、アルゴリズムは、どのアカウントが最大キャッシュバックリワードをもたらすかを決定するために、様々なユーザのアカウントを見直してもよい。
【００２６】
カードアートは、ボタンにおける表示に影響を与えるかもしれない、更なるコンピュータが実行可能な命令を含んでもよい。例えば、コンピュータが実行可能な命令は、点滅、移動、色を変更、大きさを変更、音を出すためのカードアートに対する命令を含んでもよい。例えば、ユーザが支払いをするためにスワイプすると、カードアートの大きさは増加するか、所与の音が再生してもよい。表示変更はユーザが選択してもよいし、カードイシュア、発行銀行等によって選択されてもよい。
【００２７】
図５は、５１０において、ダイナミック画像の他の非制限的な例を示している。これらは、経時的に変化し得る割引情報を含む。例えば、割引は、最初の時点で２５％であってもよいが、その後の時点では異なる割引レベルであってもよい。別の実施例として、経時的に動的に変化する情報は、価格又は割引が何であるかだけでなくかかる提案を含む具体的な店舗又はウェブサイトを含み、チェックアウトボタンに挿入されてもよい。チェックアウトボタンは、継続的に更新されたクロックを更に含んでもよい（例えば、５分、１分、１５秒間隔）。更に、チェックアウトボタンは、チェックアウトボタンを選択するユーザによってリワード（例えば、ポイント、送料無料等）を稼ぐことに加え、ユーザ名等の個人情報を含むようにカスタム化されてもよい。このようなカスタム化は、チェックアウトボタンを介して購入の効果を得るために、ユーザに対する更なる誘惑として働く。
【００２８】
図６は、多くの異なる種類のエンドタッチポイント（例えば、ウェブ、モバイル、ウェアラブル、キオスク、キャッシュレジスタ、他のタッチスクリーンデバイス等）を介してチェックアウトボタンがサポート可能であることを、６１０において示している。これらのタッチポイントで個人化を達成することを補助するために、情報は様々なソースから入手可能である。ソースは、ユーザが既に何の情報をイシュア及び／又はマーチャントに与えた情報が何であるかを含んでもよい。ある状況では、イシュア及び／又はマーチャントサーバに既に格納された情報は、チェックアウトボタンに挿入される（例えば、テキスト情報、画像情報等の）適当な個人情報を得るために結合可能である。独立して又は上記に関連して使用可能な他の情報源は、ユーザのデバイスのクッキーに格納された情報を含む。クッキーは、一以上のショッピング関連又は他の種類のウェブサイトに亘るユーザのショッピング行為を追跡するものを含んでもよい。
【００２９】
例えば、個人の購入カード、ユーザ名又は他の特定情報がチェックボタンを動的に作成する際に利用可能となるようにユーザ特有情報が入手可能である。他のカスタム化は、ユーザの購入履歴を解析すること、及び、どの製品を顧客が購入する可能性が高いかを決定することを含んでもよい。別の実施例として、システムは、ユーザがマーチャントのウェブサイトを良く訪れるため、チェックアウトボタンにより良い提案を有する資格があることを決定することができる。別の状況では、ユーザ及び／又はマーチャント及び／又はイシュア間の関係が深くなればなるほど、よりユーザ特有及び／又は一般の提案／データがチェックアウトボタンに配置可能である。
【００３０】
マーチャント情報を入手することをボタンに表示することを可能にするコードは以下の通りである。
【００３１】
【表６】
0006615798.tif 000009
0006615798.tif 000010
【００３２】
ある実施例では、ウォレットサーバからの応答に応じて、ボタンを作るかボタンを隠すかの決定がなされてもよい。例えば、カードアートが入手可能であれば表示されてもよく、カードアートがなければボタン画像がデフォルト画像であってもよい。ボタン決定におけるアートを作成又は隠すことを可能にするサンプルコンピュータが実行可能な命令は、以下のようであってもよい。
【００３３】
【表７】
0006615798.tif 000011
0006615798.tif 000012
0006615798.tif 000013
0006615798.tif 000014
【００３４】
もちろん、コンピュータが実行可能な命令は、目的内蔵プロセッサに埋め込まれてもよいし、コンピュータが実行可能な命令に応じて物理的に構成されている別のプロセッサによって実行可能であってもよい。
【００３５】
図７の７１０に示すように、チェックアウトボタンの内容は、多くの異なる種類のデータに基づいてもよい。例えば、ユーザの時間と場所は、チェックアウトボタンへの挿入用のテキスト／画像データを生成するように処理されるべき情報を補充するように確認されてもよい。テキスト／画像データは、特定チャンネルのユーザ（例えば、携帯電話上のユーザ対キオスク又はマーチャントが操作するレジにいるユーザ）に適合されてもよい。
【００３６】
また、例えば、マーチャント又は他の企業を識別することを補助する色やマーチャント又は他の企業のロゴ等、より大きなブランド化がチェックアウトボタンに配置されてもよい。「不動産」はチェックボタン（例えば、２インチ×１インチサイズのチェックアウトボタン）に対するプレミアであるので、データ（例えば、画像、テキスト等）は、ユーザがチェックアウトボタンをクリックする可能性を高めるために、特定のマーチャント及び／又はユーザに適合されてもよい。
【００３７】
ＤＣＢコントローラ
図８は、ＤＣＢコントローラの実施例を示すブロック図である。本実施例では、ＤＣＢコントローラ８０１は、様々な双方向リンク技術及び／又は他の関連データを通じてコンピュータとのインタラクションを収集、処理、格納、探索、使用、識別、命令、生成、適合及び／又は容易化する機能を有してもよい。
【００３８】
典型的に、人々及び／又は他のシステムであってもよいユーザは、情報処理を容易にするために、情報技術システム（例えば、コンピュータ）を使用してもよい。次いで、コンピュータは、情報処理のためにプロセッサを使用してもよい。かかるプロセッサ８０３は、中央演算処理装置（ＣＰＵ）と呼ばれてもよい。プロセッサの一形態はマイクロプロセッサと呼ばれる。ＣＰＵは、様々な操作を可能にする命令として動作する二値化信号を通過させるのに通信回路を使用する。これらの命令は、様々なプロセッサがアクセス可能及び操作可能領域のメモリ８２９（例えば、レジスタ、キャッシュメモリ、ランダムアクセスメモリなど）において、他の命令及びデータを含有及び／又は参照する操作的及び／又はデータ命令であってもよい。かかる通信命令は、所望の操作を容易にするためにプログラム及び／又はデータコンポーネントとしてバッチ（命令バッチ）において格納及び/又は送信されてもよい。これらの格納命令コード、例えば、プログラムは、ＣＰＵ回路コンポーネント及び他のマザーボード及び／又はシステムコンポーネントを使用して、所望の操作を実行してもよい。他の種類のプログラムは、コンピュータオペレーティングシステムであり、それは、コンピュータのＣＰＵによって実行されてもよい。オペレーティングシステムは、ユーザがコンピュータ情報技術及びリソースにアクセスして操作することを可能及び容易にする。情報技術システムに使用可能な幾つかのリソースは、データがコンピュータへ及びから通過可能な入出力機構、データが保存されるメモリストレージ及び情報が処理可能なプロセッサを含む。これらの情報技術システムは、データベースプログラムを通じて容易にすることが可能な、その後の検索、分析及び操作のためにデータを収集するのに使用可能である。これらの情報技術システムは、様々なシステムコンポーネントにユーザがアクセス及び操作することを許可するインターフェースを提供する。
【００３９】
ある実施例において、ＤＣＢコントローラ８０１は、ユーザ入力デバイス８１１から一以上のユーザ、周辺機器８１２、操作暗号プロセッサデバイス８２８、及び／又は、通信ネットワーク８１３等の、但しこれらに限定されないエンティティに接続及び／又は通信してもよい。
【００４０】
ネットワークは、グラフトポロジーにおけるクライアント、サーバ及び中継ノード内部接続及び内部操作を有すると一般に考えられてもよい。本出願を通じて使用されるように、「サーバ」という用語は、一般に、通信ネットワークを介して遠隔ユーザの要求を処理応答するコンピュータ、他の装置、プログラム又はそれらの組み合わせを表すことに留意すべきである。サーバは、要求する「クライアント」にそれらの情報を提供する。ここで使用される「クライアント」という用語は、一般に、通信ネットワークを介して要求を処理及び作成並びにサーバからの応答を取得及び処理することができるコンピュータ、プログラム、他のデバイス、ユーザ及び／又はそれらの組み合わせを表す。情報及び要求を容易化、処理及び/又はソースユーザから目的ユーザまでの情報の通過を促進するコンピュータ、他のデバイス、プログラム又はそれらの組み合わせは、一般に、「ノード」と呼ばれる。ネットワークは、ソースポイントからデスティネーションへ情報の移転を促進するものと一般に考えられている。ソースからデスティネーションに情報の通過を促進することに特化したノードは、一般に「ルータ」と呼ばれている。ネットワークには、ローカルエリアネットワーク（ＬＡＮ）、ピコネットワーク、ワイドエリアネットワーク（ＷＡＮ）、ワイヤレスネットワーク（ＷＬＡＮｓ）等の多くの形態がある。例えば、インターネットは、遠隔クライアントとサーバが互いにアクセス及び内部操作可能になる多数のネットワークの内部接続として一般に受け入れられている。
【００４１】
ＤＣＢコントローラ８０１は、メモリ８２９に接続されたコンピュータシステム８０２等の但しこれらに限定されない、コンピュータシステムに基づいてもよい。
【００４２】
コンピュータシステム構成
コンピュータシステム構成８０２は、クロック８３０、中央演算処理装置（「ＣＰＵ」及び／又は「プロセッサ」）（これらの用語は、特に断りのない限り、本開示の全体を通じて交換可能に使用される）８０３、メモリ８２９（例えば、リードオンリーメモリ（ＲＯＭ）８０６、ランダムアクセスメモリ（ＲＡＭ）８０５等）、及び／又は、インターフェースバス８０７を有してもよく、必須ではないが、多くの場合、命令（例えば、二値化信号）が通信、演算、記憶等を達成するために伝達する導電性及び／又はその他の点で伝送用の回路経路を有する、一以上の（マザー）ボード８０２上のシステムバス８０４を介して全部が相互接続及び／又は通信する。コンピュータシステム構成は、電源８８６に接続されてもよく、例えば、選択的に、電源は内在してもよい。選択的に、暗号プロセッサ８２６及び／又はトランシーバ（例えば、ＩＣ）８７４がシステムバスに接続されてもよい。別の実施例では、暗号プロセッサ及び／又はトランシーバは、インターフェースバスＩ／Ｏを介して、内部及び／又は外部の周辺デバイス８１２として接続されてもよい。次に、トランシーバは、アンテナ８７５に接続され、これにより、様々な通信及び／又はセンサプロトコルの無線送受信を達成し、例えば、アンテナは、Ｔｅｘａｓ  Ｉｎｓｔｒｕｍｅｎｔ  ＷｉＬｉｎｋ  ＷＬ１２８３トランシーバチップ（例えば、８０２．１１ｎ、Ｂｌｕｅｔｏｏｔｈ（登録商標）３．０，ＦＭ、全地球測位システム（ＧＰＳ）（その結果、ＤＣＢコントローラがこれ自体の位置を決定することを可能にする）を提供する、Ｂｒｏａｄｃｏｍ  ＢＣＭ４３２９ＦＫＵＢＧトランシーバチップ（例えば、８０２．１１ｎ、Ｂｌｕｅｔｏｏｔｈ２．１＋ＥＤＲ、ＦＭなどを提供する）、Ｂｒｏａｄｃｏｍ  ＢＣＭ４７５０ＩＵＢ８レシーバチップ（例えば、ＧＰＳ）、Ｉｎｆｉｎｅｏｎ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  Ｘ−Ｇｏｌｄ６１８−ＰＭＢ９８００（例えば、２Ｇ／３Ｇ  ＨＳＤＰＡ／ＨＳＵＰＡ通信を提供する）等に接続してもよい。システムクロックは、典型的に、水晶発振器を有し、コンピュータシステム構成の回路経路を通る基準信号を発生する。クロックは、典型的に、システムバス、及び、コンピュータシステム構成内に相互接続されている他のコンポーネントのための基準動作周波数を増減する種々のクロック乗算器に連結されている。クロック及びコンピュータシステム構成内の種々のコンポーネントは、システム全体を通じて情報を具現化する信号を駆動する。コンピュータシステム構成の全体を通じて情報を具現化する命令の送信及び受信は、一般に通信と称されてもよい。これらの通信命令は、さらに、送受信されてもよく、本コンピュータシステム構成を越えて、通信ネットワーク、入力デバイス、他のコンピュータシステム構成、周辺デバイス等への返信及び／又は応答通信の原因となる。代替的実施例では、上記コンポーネントのいずれも、直接相互接続され、ＣＰＵに接続され、及び／又は、様々なコンピュータシステムで例示的に採用された多くの変形例で構成されてもよいことが理解されるべきである。
【００４３】
ＣＰＵは、ユーザ及び／又はシステムが生成した要求を実行するプログラムコンポーネントを実行するのに適した、少なくとも１つの高速データプロセッサを備える。しばしば、プロセッサ自体は、集積システム（バス）コントローラ、メモリ管理制御ユニット、浮動小数点ユニット及び専用処理サブユニットのグラフィックス処理ユニット、デジタル信号処理ユニット等の、但し、これらに限定されない様々な専用処理ユニットを組み込む。更に、プロセッサは、内部高速アクセスアドレス指定可能メモリを含み、プロセッサ自体を越えてメモリ８２９をマッピング及びアドレッシングする能力を有し、内部メモリは、高速レジスタ、様々なレベルのキャッシュメモリ（例えば、レベル１、２、３など）、ＲＡＭ等を含んでもよいが、これらに限定されることはない。プロセッサは、命令アドレスを介してアクセス可能なメモリアドレス空間の使用を通じてこのメモリにアクセスしてもよく、プロセッサは、この命令アドレスを構成及びデコードすることが可能であり、プロセッサがあるメモリ状態を有している特定のメモリアドレス空間までの回路経路にアクセスする。ＣＰＵは、ＡＭＤのＡｔｈｌｏｎ、Ｄｕｒｏｎ及び／又はＯｐｔｅｒｏｎ、ＡＲＭのアプリケーション、内蔵型かつ安全なプロセッサ、ＩＢＭ及び／又はＭｏｔｏｒｏｌａのＤｒａｇｏｎＢａｌｌ及びＰｏｗｅｒＰＣ、ＩＢＭ及びＳｏｎｙのＣｅｌｌプロセッサ、ＩｎｔｅｌのＣｅｌｅｒｏｎ、Ｃｏｒｅ（２）Ｄｕｏ、Ｉｔａｎｉｕｍ、Ｐｅｎｔｉｕｍ、Ｘｅｏｎ、及び／又は、ＸＳｃａｌｅ、及び／又は、類似のプロセッサのマイクロプロセッサでもよい。ＣＰＵは、従来型のデータ処理手法に従って、記憶された命令（即ち、プログラムコード）を実行するために導電性及び／又はトランスポート経路（例えば、（印刷）電子及び／又は光回路）を通過する命令を通してメモリと相互作用する。この命令通過は、ＤＣＢコントローラ内部、及び、様々なインターフェースを越える通信を容易にする。処理要件がより大きい速度及び／又は容量を規定する場合、分散プロセッサ（例えば、分散ＤＣＢ）、メインフレーム、マルチコア、パラレル、及び／又は、スーパーコンピュータアーキテクチャが同様に採用されてもよい。代替的に、配備要件がより高い携帯性を規定する場合、より小型のパーソナルデジタルアシスタンツ（ＰＤＡ）が採用されてもよい。
【００４４】
特定の実施例に依存して、ＤＣＢの特徴は、ＣＡＳＴのＲ８０５１ＸＣ２マイクロコントローラ、ＩｎｔｅｌのＭＣＳ５１（すなわち、８０５１マイクロコントローラ）等のマイクロコントローラを実施することにより達成されてもよい。同様に、ＤＣＢのある特徴を実施するために、ある特徴的な実施例は、特定用途向け集積回路（ＡＳＩＣ）、デジタル信号処理（ＤＳＰ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、及び／又は、その他の同様の内蔵技術の内蔵コンポーネントに依拠してもよい。例えば、ＤＣＢコンポーネントのコレクション（分散またはそれ以外）及び／又は特徴のいずれかは、マイクロプロセッサによって、及び／又は、内蔵コンポーネント、例えば、ＡＳＩＣ、コプロセッサ、ＤＳＰ、ＦＰＧＡ等によって実施されてもよい。代替的に、ＤＣＢの幾つかの実施例は、種々の特徴又は信号処理を達成するために構成、使用される内蔵コンポーネントを使って実施されてもよい。
【００４５】
特定の実施例に依存して、内蔵コンポーネントは、ソフトウェアソリューション、ハードウェアソリューション、及び／又は、ハードウェア／ソフトウェアソリューションの何らかの組み合わせを含んでもよい。例えば、ここで説明するＤＣＢの特徴は、Ｘｉｌｉｎｘにより製造された高性能ＦＰＧＡ  Ｖｉｒｔｅｘシリーズ及び／又は低コストＳｐａｒｔａｎシリーズの、「論理ブロック」と称されるプログラマブル論理コンポーネントと、プログラマブル相互接続とを収容する半導体装置であるＦＰＧＡを実施することにより達成されてもよい。論理ブロック及び相互接続は、ＦＰＧＡが製造された後、ＤＣＢ特徴のうちのいずれかを実施するために、顧客または設計者によりプログラムされる可能性がある。プログラマブル相互接続の階層性は、ワンチップ・プログラマブル・ブレッドボードと若干類似しているように、論理ブロックがＤＣＢシステム設計者／管理者による必要に応じて相互接続されることを可能にする。ＦＰＧＡの論理ブロックは、ＡＮＤ及びＸＯＲの基本的な論理ゲートの演算、または、デコーダもしくは簡単な数学演算のより複雑な結合演算子を実行するためにプログラムされる可能性がある。殆どのＦＰＧＡでは、論理ブロックは、回路フリップフロップでもよく、または、より完全なメモリのブロックでもよいメモリ素子をさらに含んでもよい。ある状況では、ＤＣＢは、普通のＦＰＧＡ上に開発され、その後、ＡＳＩＣ方式の実施により類似している固定バージョンに移されてもよい。代替の、または、協調的な実施は、ＤＣＢコントローラ特徴をＦＰＧＡの代わりに、または、ＦＰＧＡに加えて、最終的なＡＳＩＣに移してもよい。上記内蔵コンポーネント及びマイクロプロセッサの実施全体に依存して、ＤＣＢのための「ＣＰＵ」及び／又は「プロセッサ」が考慮されてもよい。
【００４６】
電源
電源８８６は、以下のパワーセル：アルカリ、水素化リチウム、リチウムイオン、リチウムポリマー、ニッケルカドミウム、太陽電池等の、小型電子回路ボードデバイスに給電する標準的な形式であればよい。その他の種類のＡＣまたはＤＣ電源が同様に使用されてもよい。太陽電池の場合、ある実施例では、この事例は、太陽電池が光エネルギーを捕捉するための開口を設ける。パワーセル８８６は、ＤＣＢの相互接続された後続のコンポーネントの少なくとも１つに接続され、それによって、電流を全ての後続のコンポーネントに電流を供給する。一実施例では、電源８８６は、システム・バスコンポーネント８０４に接続されている。代替的実施例では、外部電源８８６がＩ／Ｏ８０８インターフェースを越える接続を介して設けられている。例えば、ＵＳＢ及び／又はＩＥＥＥ１３９４接続は、接続を越えてデータ及び電力の両方を搬送し、その結果、適当な電源である。
【００４７】
インターフェースアダプタ
インターフェースバス８０７は、入出力インターフェース（Ｉ／Ｏ）８０８、ストレージインターフェース８０９、ネットワークインターフェース８１０等の、但し、これらに限定されない、従来であるがアダプタカードの形式が必須ではない、複数のインターフェースアダプタを受容、接続及び／又は通信してもよい。選択的に、暗号プロセッサインターフェース８２７はインターフェースバスにも接続されてもよい。インターフェースバスは、コンピュータシステム構成の他のコンポーネントとの通信の他に、インターフェースアダプタの相互通信を提供する。インターフェースアダプタは、互換性インターフェースバスに適合している。インターフェースアダプタは、従来、スロットアーキテクチャによってインターフェースバスに接続している。アクセラレーテッド・グラフィックス・ポート（ＡＧＰ）、カードバス、（拡張型）業界標準アーキテクチャ（（Ｅ）ＩＳＡ）、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）、ＮｕＢｕｓ、周辺コンポーネント相互接続（拡張型）（ＰＣＩ（Ｘ））、ＰＣＩエクスプレス、パーソナル・コンピュータ・メモリ・カード国際協会（ＰＣＭＣＩＡ）等の、但し、これらに限定されない従来のスロットアーキテクチャが採用されてもよい。
【００４８】
ストレージインターフェース８０９は、ストレージデバイス８１４、リムーバブルディスクデバイス等の、但し、これらに限定されない複数のストレージデバイスを受容、通信及び／又は接続してもよい。ストレージインターフェースは、（ウルトラ）（シリアル）アドバンスド・テクノロジー・アタッチメント（パケットインターフェース）（（ウルトラ）（シリアル）ＡＴＰ（ＰＩ））、（エンハンスト）インテグレーテッド・ドライブ・エレクトロニクス（（Ｅ）ＩＤＥ）、米国電気電子学会（ＩＥＥＥ）１３９４、ファイバチャネル、スモール・コンピュータシステムインターフェース（ＳＣＳＩ）、ユニバーサル・シリアル・バス（ＵＳＢ）等の、但し、これらに限定されない接続プロトコルを採用してもよい。
【００４９】
ネットワークインターフェース８１０は、通信ネットワーク８１３を受容、通信及び／又は接続してもよい。通信ネットワーク８１３を介して、ＤＣＢコントローラは、ユーザ８３３ａによりリモートクライアント８３３ｂ（例えば、ウェブブラウザ付きのコンピュータ）を通じてアクセス可能である。ネットワークインターフェースは、直接接続、イーサネット（登録商標）（シック、シン、ツイストペア１０／１００／１０００ベースＴ等）、トークンリング、ＩＥＥＥ８０２．１１ａ〜ｘのワイヤレス接続等の、但し、これらに限定されない通信プロトコルを採用してもよい。処理要件がより大きい速度及び／又は容量を規定する場合、分散ネットワークコントローラ（例えば、分散ＤＣＢ）アーキテクチャがＤＣＢコントローラによって要求される通信帯域幅をプールする、ロードバランスさせる、及び／又は、そうではない場合、増加させるために同様に採用されてもよい。通信ネットワークは、直接相互接続、インターネット、ローカルエリアネットワーク（ＬＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、オペレーティング・ミッション・アズ・ノード・オン・インターネット（ＯＭＮＩ）、セキュアド・カスタム・コネクション、ワイドエリアネットワーク（ＷＡＮ）、ワイヤレスネットワーク（例えば、ワイヤレスアプリケーション・プロトコル（ＷＡＰ）、Ｉモード等の、但し、これらに限定されないプロトコルを採用する）等のうちのいずれか１つ、及び／又は、組み合わせでもよい。ネットワークインターフェースは、入出力インターフェースの専用形式であるとみなされてもよい。更に、複数のネットワークインターフェース８１０が様々な通信ネットワーク種類８１３に関与するために使用されてもよい。例えば、複数のネットワークインターフェースがブロードキャスト、マルチキャスト、及び／又は、ユニキャストネットワークを越える通信を許可するために採用されてもよい。
【００５０】
入出力インターフェース（Ｉ／Ｏ）８０８は、ユーザ入力デバイス８１１、周辺デバイス８１２、暗号プロセッサデバイス８２８等を受け入れ、通信し、及び／又は、接続してもよい。Ｉ／Ｏは、オーディオ：アナログ、デジタル、モノラル、ＲＣＡ、ステレオ等、データ：Ａｐｐｌｅ  Ｄｅｓｋｔｏｐ  Ｂｕｓ（ＡＤＢ）、ＩＥＥＥ１３９４ａ〜ｂ、シリアル、ユニバーサル・シリアル・バス（ＵＳＢ）、赤外線、ジョイスティック、キーボード、ミディ、光学式、ＰＣ  ＡＴ、パラレル、無線：ビデオインターフェース：Ａｐｐｌｅ  Ｄｅｓｋｔｏｐ  Ｃｏｎｅｃｔｏｒ（ＡＤＣ）、ＡＮＣ、同軸、コンポーネント、コンポジット、デジタル、デジタル・ビジュアルインターフェース（ＤＶＩ）、高品位マルチメディアインターフェース（ＨＤＭＩ（登録商標））、ＲＣＡ、ＲＦアンテナ、Ｓ−Ｖｉｄｅｏ、ＶＧＡ等、ワイヤレストランシーバ：８０２．１１ａ／ｂ／ｇ／ｎ／ｘ、Ｂｌｕｅｔｏｏｔｈ、セルラ（例えば、符号分割多元接続（ＣＤＭＡ）、高速パケットアクセス（ＨＰＳＡ（＋））、高速ダウンリンク・パケット・アクセス（ＨＳＤＰＡ）、モバイル通信用グローバルシステム（ＧＳＭ（登録商標））、ロング・ターム・エボリューション（ＬＴＥ）、ＷｉＭａｘなど）、等の、但し、これらに限定されない接続プロトコルを採用してもよい。１つの典型的な出力デバイスは、典型的に、ビデオインターフェースからの信号を受け入れるインターフェース（例えば、ＤＶＩ回路及びケーブル）付きの陰極線管（ＣＲＴ）または液晶ディスプレイ（ＬＣＤ）に基づくモニタを備えるビデオディスプレイが使用されてもよい。ビデオインターフェースは、コンピュータシステム構成により発生された情報を合成し、ビデオ・メモリ・フレーム内で合成された情報に基づいてビデオ信号を発生する。別の出力デバイスは、ビデオインターフェースからの信号を受け入れるテレビジョンセットである。典型的に、ビデオインターフェースは、ビデオ・ディスプレイインターフェースを受け入れるビデオ接続インターフェースを介して合成されたビデオ情報を提供する（例えば、ＲＣＡコンポジット・ビデオ・コネクタは、ＲＣＡコンポジット・ビデオ・ケーブルを受け入れ、ＤＶＩコネクタは、ＤＶＩディスプレイケーブルを受け入れるなどである）。
【００５１】
ユーザ入力デバイス８１１は、しばしば、一種の周辺デバイス８１２（以下を参照）であり、カードリーダー、ドングル、指紋リーダー、グローブ、グラフィックスタブレット、ジョイスティック、キーボード、マイクロフォン、マウス（マイス）、リモートコントローラ、網膜リーダー、タッチ画面（例えば、容量性、抵抗性など）、トラックボール、トラックパッド、センサ（例えば、加速度計、周囲光、ＧＰＳ，ジャイロスコープ、近接性など）、スタイラス等を含んでもよい。
【００５２】
周辺デバイス８１２は、Ｉ／Ｏ、及び／又は、ネットワークインターフェース、ストレージインターフェース、直接的にインターフェースバス、システムバス、ＣＰＵ等のその他の同様の機能に接続及び／又は通信してもよい。周辺デバイスは、ＤＣＢコントローラの外部、内部、及び／又は、一部でもよい。周辺デバイスは、アンテナ、オーディオデバイス（例えば、ラインイン、ラインアウト、マイクロフォン入力、スピーカーなど）、カメラ（例えば、スチル、ビデオ、ウェブカメラなど）、ドングル（例えば、コピー防止用、デジタル署名を使った安全な取引の保証、及び／又は、その他の同様のもの），外部プロセッサ（機能追加のため、例えば、暗号デバイス８２８）、力フィードバックデバイス（例えば、振動モーター）、ネットワークインターフェース、プリンタ、スキャナ、ストレージデバイス、トランシーバ（例えば、セルラ、ＧＰＳなど）、ビデオデバイス（例えば、ゴーグル、モニタなど）、ビデオソース、バイザー等を含んでもよい。周辺デバイスは、多くの場合に、何種類もの入力デバイス（例えば、カメラ）を含む。
【００５３】
ユーザ入力デバイス及び周辺デバイスが利用され、ＤＣＢコントローラは、内蔵、専用、及び／又は、モニタ無しの（すなわち、ヘッド無しの）デバイスとして具現化され、アクセスがネットワークインターフェース接続を越えて行われてもよいことに留意すべきである。
【００５４】
マイクロコントローラ、プロセッサ８２６、インターフェース８２７及び／又はデバイス８２８等の、但し、これらに限定されない暗号ユニットは、ＤＣＢコントローラに付属及び／又は通信してもよい。Ｍｏｔｏｒｏｌａ社により製造されたＭＣ６８ＨＣ１６マイクロコントローラは、暗号ユニットのため、及び／又は、暗号ユニットの内部で使用されてもよい。ＭＣ６８ＨＣ１６マイクロコントローラは、１６ＭＨｚ構成において１６ビット積和命令を利用し、５１２ビットのＲＳＡ秘密鍵演算を実行するために１秒未満しか必要としない。暗号ユニットは、相互作用するエージェントからの通信の認証をサポートすると共に、匿名取引を許可する。暗号ユニットは、ＣＰＵの一部として構成されることもある。等価的なマイクロコントローラ及び／又はプロセッサが使用されてもよい。その他の市販されている専用暗号プロセッサは、ＢｒｏａｄｃｏｍのＣｒｙｐｔｏＮｅｔＸ及びその他のセキュリティプロセッサ、ｎＣｉｐｈｅｒのｎＳｈｉｅｌｄ、ＳａｆｅＮｅｔのＬｕｎａ  ＰＣＩ（例えば、７１００）シリーズ、Ｓｅｍａｐｈｏｒｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓの４０ＭＨｚ  Ｒｏａｄｒｕｎｎｎｅｒ１８４、ＳｕｎのＣｒｙｐｔｏｇｒａｐｈｉｃ  Ａｃｃｅｌｅｒａｔｏｒｓ（例えば、Ａｃｃｅｌｅｒａｔｏｒ６０００ＰＣＩｅ  Ｂｏａｒｄ、Ａｃｃｅｌｅｒａｔｏｒ５００Ｄａｕｇｈｔｅｒｃａｒｄ）、暗号命令を５００ＭＢ／ｓ以上で実行する能力をもつＶｉａ  Ｎａｎｏ  Ｐｒｏｃｅｓｓｏｒ（例えば、Ｌ２１００、Ｌ２２００、Ｕ２４００）ライン、ＶＬＳＩ  Ｔｅｃｈｎｏｌｏｇｙの３３ＭＨｚ６８６８等を含む。
【００５５】
メモリ
一般に、プロセッサが情報の記憶及び／又は検索を実施することを可能にする機械化及び／又は実施例は、メモリ８２９であると考えられる。しかし、メモリは、代替可能な技術及び資源であり、その結果、いくつものメモリ実施例が別の実施例の代わりに、または、別の実施例と併せて利用されてもよい。ＤＣＢコントローラ及び／又はコンピュータシステム構成は、様々な形式のメモリ８２９を利用してもよいことが理解されるべきである。例えば、オンチップＣＰＵメモリ（例えば、レジスタ）、ＲＡＭ、ＲＯＭ、及び、その他のストレージデバイスの動作が穿孔テープまたは穿孔カード機構により提供されるコンピュータシステム構成が構成されてもよいが、かかる実施例は、非常に低速の動作となる。典型的な構成では、メモリ８２９は、ＲＯＭ８０６、ＲＡＭ８０５、及び、ストレージデバイス８１４を含む。ストレージデバイス８１４は、どの従来型のコンピュータシステムストレージでもよい。ストレージデバイスは、ドラム式：（固定式またはリムーバブル式）磁気ディスクドライブ、光磁気式ドライブ、光学式ドライブ（すなわち、Ｂｌｕｒａｙ、ＣＤ  ＲＯＭ／ＲＡＭ／書き込み可能（Ｒ）／再書き込み可能（ＲＷ）、ＤＶＤ  Ｒ／ＲＷ、ＨＤ  ＤＶＤ  Ｒ／ＲＷなど）、デバイスのアレイ（例えば、独立ディスク冗長アレイ（ＲＡＩＤ））、固体メモリデバイス（ＵＳＢメモリ、固体ドライブ（ＳＳＤ）など）、その他のプロセッサ読み取り可能なストレージ媒体、及び／又は、類似デバイスを含んでもよい。その結果、コンピュータシステム構成は、広くは、メモリを必要とし、かつ、メモリを利用する。
【００５６】
コンポーネントコレクション
メモリ８２９は、オペレーティングシステムコンポーネント８１５（オペレーティングシステム）、情報サーバコンポーネント８１６（情報サーバ）、ユーザインターフェースコンポーネント８１７（ユーザインターフェース）、ウェブブラウザコンポーネント８１８、データベース８１９、メールサーバコンポーネント８２１、メールクライアントコンポーネント８２２、暗号サーバコンポーネント８２０（暗号サーバ）、ＤＣＢコンポーネント８３５等（すなわち、集合的にコンポーネントコレクション）の、但し、これらに限定されないプログラム及び／又はデータベースコンポーネント及び／又はデータのコレクションを収容してもよい。これらのコンポーネントは、記憶され、ストレージデバイス及び／又はインターフェースバスを介してアクセス可能なストレージデバイスからアクセスされてもよい。コンポーネントコレクションの中のプログラムコンポーネントの従来的ではないプログラムコンポーネントは、典型的に、ローカルストレージデバイス８１４に記憶されるが、これらは、周辺デバイス、ＲＡＭ、通信ネットワークを介するリモートストレージ機能、ＲＯＭ、様々な形式のメモリ等のメモリにロード及び／又は記憶されてもよい。
【００５７】
オペレーティングシステム
オペレーティングシステムコンポーネント８１５は、ＤＣＢコントローラの動作を容易にする実行可能なプログラムコンポーネントである。典型的に、オペレーティングシステムは、Ｉ／Ｏ、ネットワークインターフェース、周辺デバイス、ストレージデバイス等のアクセスを容易にする。オペレーティングシステムは、Ａｐｐｌｅ  Ｍａｃｉｎｔｏｓｈ  ＯＳ  Ｘ（サーバ）、ＡＴ＆Ｔ  Ｐｌａｎ９、Ｂｅ  ＯＳ、（ＡＴ＆ＴのＵＮＩＸ（登録商標）、Ｆｒｅｅｄ、ＮｅｔＢＳＤ、ＯｐｅｎＢＳＤ等のバークレイソフトウェア配布（ＢＳＤ）変形版、Ｒｅｄ  Ｈａｔ、Ｕｂｕｎｔｕ等のＬｉｎｕｘ（登録商標）配布の）Ｕｎｉｘ及びＵｎｉｘライクシステム配布、及び／又は、類似のオペレーティングシステムの高度にフォールトトレラント、スケーラブル、かつ、安全なシステムでもよい。しかし、Ａｐｐｌｅ  Ｍａｃｉｎｔｏｓｈ  ＯＳ、ＩＢＭ  ＯＳ／２、Ｍｉｃｒｏｓｏｆｔ  ＤＯＳ、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ２０００／２００３／３．１／９５／９８／ＣＥ／Ｍｉｌｌｅｎｉｕｍ／ＮＴ／Ｖｉｓｔａ／ＸＰ（Ｓｅｒｖｅｒ）、Ｐａｌｍ  ＯＳ等のより限定的で、及び／又は、セキュアではないオペレーティングシステムが採用されてもよい。オペレーティングシステムは、これ自体を含むコンポーネントコレクション内の他のコンポーネント等の機能に通信すること、及び／又は、この機能などと通信してもよい。多くの場合、オペレーティングシステムは、他のプログラムコンポーネント、ユーザインターフェース等と通信する。例えば、オペレーティングシステムは、プログラムコンポーネント、システム、ユーザ、及び／又は、データ通信、要求、及び／又は、応答を収容、通信、発生、取得、及び／又は、提供してもよい。オペレーティングシステムは、ＣＰＵにより実行されると、通信ネットワーク、Ｉ／Ｏ、周辺デバイス、プログラムコンポーネント、メモリ、ユーザ入力デバイス等との相互作用を可能にしてもよい。オペレーティングシステムは、ＤＣＢコントローラが通信ネットワーク８１３を介してその他のエンティティと通信することを可能にする通信プロトコルを提供してもよい。種々の通信プロトコルが限定されることなく、マルチキャスト、ＴＣＰ／ＩＰ、ＵＤＰ、ユニキャスト等の相互作用のためのサブキャリアトランスポート機構としてＤＣＢコントローラにより使用されてもよい。
【００５８】
情報サーバ
情報サーバコンポーネント８１６は、ＣＰＵにより実行されるストアドプログラムコンポーネントである。情報サーバは、Ａｐａｃｈｅソフトウェア財団のＡｐａｃｈｅ、Ｍｉｃｒｏｓｏｆｔのインターネット情報サーバ等の、但し、これらに限定されない従来型のインターネット情報サーバでもよい。情報サーバは、アクティブサーバ・ページ（ＡＳＰ）、ＡｃｔｉｖｅＸ、（ＡＮＳＩ）（Ｏｂｊｅｃｔｉｖｅ−）Ｃ（＋＋）、Ｃ＃及び／又は．ＮＥＴ、共通ゲートウェイインターフェース（ＣＧＩ）スクリプト、ダイナミック（Ｄ）ハイパーテキスト・マークアップ言語（ＨＴＭＬ）、ＦＬＡＳＨ、Ｊａｖａ（登録商標）、ＪａｖａＳｃｒｉｐｔ（登録商標）、Ｐｒａｃｔｉｃａｌ  Ｅｘｔｒａｃｔｉｏｎ  Ｒｅｐｏｒｔ  Ｌａｎｇｕａｇｅ（ＰＥＲＬ）、ハイパーテキスト・プリプロセッサ（ＰＨＰ）、ｐｉｐｅｓ、Ｐｙｔｈｏｎ、ワイヤレスアプリケーション・プロトコル（ＷＡＰ）、ＷｅｂＯｂｊｅｃｔｓ等の機能を通じてプログラムコンポーネントの実行を可能にしてもよい。情報サーバは、Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ（ＦＴＰ）、ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ（ＨＴＴＰ）、Ｓｅｃｕｒｅ  Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ（ＨＴＴＰＳ）、Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ（ＳＳＬ），ｍｅｓｓａｇｉｎｇ  ｐｒｏｔｏｃｏｌｓ（例えば、Ａｍｅｒｉｃａ  Ｏｎｌｉｎｅ（ＡＯＬ）Ｉｎｓｔａｎｔ  Ｍｅｓｓｅｎｇｅｒ（ＡＩＭ）、Ａｐｐｌｉｃａｔｉｏｎ  Ｅｘｃｈａｎｇｅ（ＡＰＥＸ）、ＩＣＱ、Ｉｎｔｅｒｎｅｔ  Ｒｅｌａｙ  Ｃｈａｔ（ＩＲＣ），Ｍｉｃｒｏｓｏｆｔ  Ｎｅｔｗｏｒｋ（ＭＳＮ）Ｍｅｓｓｅｎｇｅｒ  Ｓｅｒｖｉｃｅ、Ｐｒｅｓｅｎｃｅ  ａｎｄ  Ｉｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ  Ｐｒｏｔｏｃｏｌ（ＰＲＩＭ）、Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ’ｓ（ＩＥＴＦ’ｓ）Ｓｅｓｓｉｏｎ  Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＳＩＰ）、ＳＩＰ  ｆｏｒ  Ｉｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ  ａｎｄ  Ｐｒｅｓｅｎｃｅ  Ｌｅｖｅｒａｇｉｎｇ  Ｅｘｔｅｎｓｉｏｎｓ（ＳＩＭＰＬＥ）、ｏｐｅｎ  ＸＭＬ−ｂａｓｅｄ  Ｅｘｔｅｎｓｉｂｌｅ  Ｍｅｓｓａｇｉｎｇ  ａｎｄ  Ｐｒｅｓｅｎｃｅ  Ｐｒｏｔｏｃｏｌ（ＸＭＰＰ）（すなわち、Ｊａｂｂｅｒ  ｏｒ  Ｏｐｅｎ  Ｍｏｂｉｌｅ  Ａｌｌｉａｎｃｅ’ｓ（ＯＭＡ’ｓ）Ｉｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ  ａｎｄ  Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｉｃｅ（ＩＭＰＳ）），Ｙａｈｏｏ！  Ｉｎｓｔａｎｔ  Ｍｅｓｓｅｎｇｅｒ  Ｓｅｒｖｉｃｅ等の、但し、これらに限定されない安全な通信プロトコルをサポートしてもよい。情報サーバは、ウェブページの形式で結果をウェブブラウザに提供し、他のプログラムコンポーネントとの相互作用によるウェブページの操作された生成を可能にする。ＨＴＴＰ要求のドメイン・ネームシステム（ＤＮＳ）解決部が特定情報サーバに解決された後、情報サーバは、ＨＴＴＰ要求のリマインダーに基づいてＤＣＢコントローラ上の指定された位置で情報の要求を解決する。例えば、ｈｔｔｐ：／／１２３．１２４．１２５．１２６／ｍｙＩｎｆｏｒｍａｔｉｏｎ．ｈｔｍｌの要求は、そのＩ��アドレスでＤＮＳサーバによって解決される情報サーバへの要求のＩＰ部「１２３．１２４．１２５．１２６」を有し、その情報サーバは、次に、要求の「／ｍｙＩｎｆｏｒｍａｔｉｏｎ．ｈｔｍｌ」部についてｈｔｔｐ要求をさらに解析してもよく、これを情報「ｍｙＩｎｆｏｒｍａｔｉｏｎ．ｈｔｍｌ」を含むメモリ内の位置に解決する。さらに、他の情報提供プロトコルが様々なポートに亘って、例えば、ＦＴＰ通信がポート２１等に亘って採用されてもよい。情報サーバは、それ自身を含むコンポーネントコレクション内の他のコンポーネント及び／又はその設備に、及び／又は、それを利用して通信してもよい。情報サーバは、しばしばＤＣＢデータベース８１９、オペレーティングシステム、その他のプログラムコンポーネント、ユーザインターフェース、ウェブブラウザ等と通信する。
【００５９】
ＤＣＢデータベースへのアクセスは、以下に列挙するスクリプト化言語（例えば、ＣＧＩ）、及び、以下に列挙するアプリケーション間通信チャネル（例えば、ＣＯＲＢＡ、ＷｅｂＯｂｊｅｃｔｓなど）の複数のデータベースブリッジ機構を通じて達成されてもよい。ウェブブラウザを介したデータ要求は、ブリッジ機構を通じて、ＤＣＢにより要求される適切なグラマーに解析される。ある実施例では、情報サーバは、ウェブブラウザによってアクセス可能なウェブフォームを提供する。ウェブフォームの提供されたフィールドになされた入力は、特定のフィールドに入力されているとタグ付けされ、そのように解析される。入力されたタームは、次に、フィールドタグと共に送られ、それは、適切なテーブル及び／又はフィールドに向けられたクエリを発生させることをパーサーに命令する機能を果たす。ある実施例では、パーサーは、タグ付けされたテキスト入力に基づいて適当な結合／選択コマンドを使って検索列をインスタンス化することにより標準ＳＱＬでクエリを発生させ、結果コマンドは、ブリッジ機構を越えてクエリとしてＤＣＢへ提供される。クエリからクエリ結果を発生させると、結果は、ブリッジ機構を介して送られ、ブリッジ機構による新しい結果のウェブページのフォーマットと生成のため解析されてもよい。この新しい結果のウェブ／ページは、その後、情報サーバに提供され、情報サーバは、これを要求しているウェブブラウザに供給してもよい。
【００６０】
同様に、情報サーバは、プログラムコンポーネント、システム、ユーザ、及び／又は、データ通信、要求、及び／又は、応答を収容、通信、発生、取得、及び／又は、提供してもよい。
【００６１】
ユーザインターフェース
コンピュータインターフェースは、幾つかの点で、自動車運転インターフェースに類似している。ステアリングホイール、ギアシフト、及び、速度計の自動車運転インターフェース要素は、自動車資源及び状態のアクセス、操作、及び表示を容易にする。チェックボックス、カーソル、メニュー、スクローラー、及びウィンドウ（集合的かつ一般的にウィジェットと称される）のコンピュータ相互作用インターフェース要素は、データと、コンピュータハードウェア及びオペレーティングシステム資源と状態のアクセス、機能、動作、及び表示も容易にする。操作インターフェースは、一般に、ユーザインターフェースと称される。Ａｐｐｌｅ  Ｍａｃｃｉｎｔｏｓｈオペレーティング／システムのＡｑｕａ、ＩＢＭのＯＳ／２、ＭｉｃｒｏｓｏｆｔのＷｉｎｄｏｗｓ２０００／２００３／３．１／９５／９８／ＣＥ／Ｍｉｌｌｅｎｉｕｍ／ＮＴ／Ｖｉｓｔａ／７（すなわち、Ａｅｒｏ）、ＵｎｉｘのＸ−Ｗｉｎｄｏｗｓ（例えば、Ｋ  Ｄｅｓｋｔｏｐ  Ｅｎｖｉｒｏｎｍｅｎｔ（ＫＤＥ）、ｍｙｔｈＴＶ及びＧＮＵ  Ｎｅｔｗｏｒｋ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ  Ｅｎｖｉｒｏｎｍｅｎｔ（ＧＮＯＭＥ）の付加的なＵｎｉｘグラフィックインターフェースライブラリ及びレイヤを含んでもよい）、ウェブインターフェースライブラリ（例えば、ＡｃｔｉｖｅＸ、ＡＪＡＸ、（Ｄ）ＨＴＭＬ、ＦＬＡＳＨ、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔなど、Ｄｏｊｏ、ｊＱｕｅｒｙ（ＵＩ）、ＭｏｏＴｏｏｌｓ、Ｐｒｏｔｏｔｙｐｅ、ｓｃｒｉｐｔ．ａｃｕｌｏ．ｕｓ、ＳＷＦＯｂｊｅｃｔ、Ｙａｈｏｏ！  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ等の、但し、これらに限定されないインターフェースライブラリ、これらのいずれかが使用されてもよい）のグラフィカルユーザインターフェース（ＧＵＩ）は、情報にアクセスし、情報を図示的にユーザに表示する基準と手段を提供する。
【００６２】
ユーザインターフェースコンポーネント８１７は、ＣＰＵにより実行されるストアドプログラムコンポーネントである。ユーザインターフェースは、既に説明したように、オペレーティングシステム及び／又はオペレーティング環境によって、と共に、及び／又は、の上で提供される従来型のグラフィックユーザインターフェースでもよい。ユーザインターフェースは、テキスト機能及び／又はグラフィカル機能を通じたプログラムコンポーネント及び／又はシステム機能の表示、実行、相互作用、操作、及び／又は、動作を可能にしてもよい。ユーザインターフェースは、ユーザがコンピュータシステムに影響を与え、相互作用し、及び／又は、操作するために用いる機能を提供する。ユーザインターフェースは、これ自体を含むコンポーネントコレクション内の他のコンポーネント等の機能に通信すること、及び／又は、この機能などと通信してもよい。ユーザインターフェースは、しばしばオペレーティングシステム、その他のプログラムコンポーネント等と通信する。ユーザインターフェースは、プログラムコンポーネント、システム、ユーザ、及び／又は、データ通信、要求、及び／又は、応答を収容、通信、発生、取得、及び／又は、提供してもよい。
【００６３】
ウェブブラウザ
ウェブブラウザコンポーネント８１８は、ＣＰＵにより実行されるストアドプログラムコンポーネントである。ウェブブラウザは、Ｍｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  ＥｘｐｌｏｒｅｒまたはＮｅｔｓｃａｐｅ  Ｎａｖｉｇａｔｏｒの従来型のハイパーテキストビューイングアプリケーションである。セキュアウェブブラウジングは、ＨＴＴＰＳ、ＳＳＬ等を用いる１２８ビット（または、それ以上）の暗号化と共に供給されてもよい。ＡｃｔｉｖｅＸ、ＡＪＡＸ、（Ｄ）ＨＴＭＬ、ＦＬＡＳＨ、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔ、ウェブブラウザプラグインＡＰＩｓ（例えば、ＦｉｒｅＦｏｘ、Ｓａｆａｒｉ  Ｐｌｕｇ−ｉｎ、及び／又は、類似のＡＰＩｓ）等の機能を通じたプログラムコンポーネントの実行を可能にする。ウェブブラウザ、及び、同様の情報アクセスツールは、ＰＤＡ、携帯電話、及び／又は、その他のモバイルデバイスに統合されてもよい。ウェブブラウザは、これ自体を含むコンポーネントコレクション内の他のコンポーネント及び／又は類似の設備に、及び／又は、設備と通信してもよい。ウェブブラウザは、しばしば情報サーバ、オペレーティングシステム、統合プログラムコンポーネント（例えば、プラグイン）等と通信し、例えば、それは、プログラムコンポーネント、システム、ユーザ、及び／又は、データ通信、要求、及び／又は、応答を収容、通信、発生、取得、及び／又は、提供してもよい。さらに、ウェブブラウザ及び情報サーバの代わりに、結合アプリケーションは両者の動作に類似する機能を与えるように開発されてもよい。結合アプリケーションは、ＤＣＢが使用可能なノードからユーザ、ユーザ代理人等への情報の取得と提供に同様に影響を与える。結合アプリケーションは、標準ウェブブラウザを利用するシステム上で役に立たないことがある。
【００６４】
メールサーバ
メールサーバコンポーネント８２１は、ＣＰＵ８０３により実行されるストアドプログラムコンポーネントである。メールサーバは、センドメール、Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｈａｎｇｅ等の、但し、これらに限定されない従来型のインターネットメールサーバでもよい。メールサーバは、ＤＣＢ、ＡｃｔｉｖｅＸ、（ＡＮＳＩ）（Ｏｂｊｅｃｔｉｖｅ−）Ｃ（＋＋）、Ｃ＃及び／又は．ＮＥＴ、ＣＧＩ  ｓｃｒｉｐｔｓ、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔ、ＰＥＲＬ、ＰＨＰ、ｐｉｐｅｓ、Ｐｙｔｈｏｎ、ＷｅｂＯｂｊｅｃｔｓ等の機能を通じてプログラムコンポーネントの実行を可能にしてもよい。メールサーバは、インターネット・メッセージ・アクセス・プロトコル（ＩＭＡＰ）、メッセージングアプリケーション・プログラミングインターフェース（ＭＡＰＩ）／Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｈａｎｇｅ、ポスト・オフィス・プロトコル（ＰＯＰ３）、シンプル・メール・トランスファー・プロトコル（ＳＭＴＰ）等の、但し、これらに限定されない通信プロトコルをサポートしてもよい。メールサーバは、送信、中継、及び／又は、ＤＣＢを介して、及び／又は、に向かう着信メールメッセージ及び送信メールメッセージをルーティング、転送、及び処理することが可能である。
【００６５】
ＤＣＢメールへのアクセスは、個々のウェブサーバコンポーネント及び／又はオペレーティングシステムにより提供された、複数のＡＰＩを通じて達成されてもよい。
【００６６】
同様に、メールサーバは、プログラムコンポーネント、システム、ユーザ、及び／又は、データ通信、要求、及び／又は、応答を収容、通信、発生、取得、及び／又は、提供してもよい。
【００６７】
メールクライアント
メールクライアントコンポーネント８２２は、ＣＰＵ８０３により実行されるストアドプログラムコンポーネントである。メールクライアントは、Ａｐｐｌｅ  Ｍａｉｌ、Ｍｉｃｒｏｓｏｆｔ  Ｅｎｔｏｕｒａｇｅ、Ｍｉｃｒｏｓｏｆｔ  Ｏｕｔｌｏｏｋ、Ｍｉｃｒｏｓｏｆｔ  Ｏｕｔｌｏｏｋ  Ｅｘｐｒｅｓｓ、Ｍｏｚｉｌｌａ、Ｔｈｕｎｄｅｒｂｉｒｄ等の従来型のメール閲覧アプリケーションでもよい。メールクライアントは、ＩＭＡＰ、Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｈａｎｇｅ、ＰＯＰ３、ＳＭＴＰ等の複数の転送プロトコルをサポートしてもよい。メールクライアントは、これ自体を含むコンポーネントコレクション内の他のコンポーネント等の設備に通信すること、及び／又は、この設備と通信などしてもよい。多くの場合、メールクライアントは、メールサーバ、オペレーティングシステム、その他のメールクライアント等と通信し、例えば、このメールクライアントは、プログラムコンポーネント、システム、ユーザ、及び／又は、データ通信、要求、及び／又は、応答を収容、通信、発生、取得、及び／又は、提供してもよい。一般に、メールクライアントは、電子メールメッセージを作成、送信する設備を提供してもよい。
【００６８】
暗号サーバ
暗号サーバコンポーネント８２０は、ＣＰＵ８０３、暗号プロセッサ８２６、暗号プロセッサインターフェース８２７、暗号プロセッサデバイス８２８等により実行されるストアドプログラムコンポーネントである。暗号プロセッサインターフェースは、暗号コンポーネントによる暗号及び／又は復号要求の迅速さを可能にするが、暗号コンポーネントは、代替的に、従来のＣＰＵ上で動作してもよい。暗号コンポーネントは、提供されたデータの暗号及び／又は復号を可能にする。暗号コンポーネントは、対称及び非対称（例えば、Ｐｒｅｔｙ  Ｇｏｏｄ  Ｐｒｏｔｅｃｔｉｏｎ（ＰＧＰ））の両方の暗号及び／又は復号を可能にする。暗号コンポーネントは、デジタル証明書（例えば、Ｘ．５０９認証フレームワーク）、デジタル署名、二重署名、エンベロープ、パスワードアクセス保護、公開鍵管理等の、但し、これらに限定されない暗号方式を利用してもよい。暗号コンポーネントは、チェックサム、データ暗号化標準（ＤＥＳ）、楕円曲線暗号化（ＥＣＣ）、国際データ暗号化アルゴリズム（ＩＤＥＡ）、メッセージ・ディジット５（一方向ハッシュ演算であるＭＤ５）、パスワード、ライベスト暗号（ＲＣ５）、Ｒｉｊｎｄａｅｌ、ＲＳＡ（Ｒｏｎ  Ｒｉｖｅｓｔ、Ａｄｉ  Ｓｈａｍｉｒ、及びＬｅｏｎａｒｄ  Ａｌｄｅｌｍａｎにより１９７７年に開発されたアルゴリズムを使用する国際的な暗号化認証システムである）、セキュア・ハッシュ・アルゴリズム（ＳＨＡ）、セキュア・ソケット・レイヤ（ＳＳＬ）、セキュア・ハイパーテキスト・トランスファー・プロトコル（ＨＴＴＰＳ）等の、但し、これらに限定されない数多くの（暗号及び／又は復号）セキュリティプロトコルを容易にする。この暗号セキュリティプロトコルを利用して、ＤＣＢは、全ての着信及び／又は発信通信を暗号化し、より広い通信ネットワークをもつ仮想プライベートネットワーク（ＮＰＮ）内でノードとして機能してもよい。暗号コンポーネントは、「セキュリティ認証」のプロセスを容易にし、その結果、資源へのアクセスは、暗号コンポーネントがセキュアド資源への承認されたアクセスを実施するセキュリティプロトコルにより禁止される。また、暗号コンポーネントは、コンテンツのユニークな識別子を提供してもよく、例えば、デジタルオーディオファイルのユニークな署名を取得するためにＭＤ５ハッシュを利用する。暗号コンポーネントは、これ自体を含むコンポーネントコレクション内のその他のコンポーネント等の機能に通信すること、及び／又は、この機能などと通信してもよい。暗号コンポーネントは、ＤＣＢコンポーネントが必要に応じてセキュア取引に加わることを可能にするために、通信ネットワークを越える情報のセキュア送信を可能にする暗号方式をサポートする。暗号コンポーネントは、ＤＣＢ上の資源の安全なアクセスを容易にし、遠隔システム上の資源のセキュアアクセスを容易にし、すなわち、暗号コンポーネントは、セキュアド資源のクライアント及び／又はサーバとして機能してもよい。暗号コンポーネントは、しばしば情報サーバ、オペレーティングシステム、他のプログラムコンポーネント等と通信する。暗号コンポーネントは、プログラムコンポーネント、システム、ユーザ、及��／又は、データ通信、要求、及び／又は、応答を収容、通信、発生、取得、及び／又は、提供してもよい。
【００６９】
ＤＣＢデータベース
ＤＣＢデータベースコンポーネント８１９は、データベース内でそのデータとして具現化されてもよい。データベースは、ＣＰＵにより実行されるストアドプログラムコンポーネントであり、ストアドプログラムコンポーネント部分が保存されたデータを処理するためにＣＰＵを構成する。データベースは、ＯｒａｃｌｅまたはＳｙｂａｓｅの、従来の、フォールトトレランスなリレーショナル型で、スケーラブルでセキュアなデータベースである。リレーショナルデータベースは、フラットファイルの拡張である。リレーショナルデータベースは、一連の関連テーブルで構成されている。テーブルは、キーフィールドにより相互接続されている。キーフィールドの使用は、キーフィールドに対してインデックスを付けることにより、テーブルの組み合わせを可能にさせ、すなわち、キーフィールドは、様々なテーブルからの情報を組み合わせる次元ピボットポイントとしての機能を果たす。関係は、広くは、主キーを一致させることによりテーブルの間に保持されたリンクを識別する。主キーは、リレーショナルデータベース内のテーブルの行を一意に識別するフィールドを表現する。より正確には、主キーは、１対多関係の「１」の側にあるテーブルの行をユニークに識別する。
【００７０】
代替的に、ＤＣＢデータベースは、アレイ、ハッシュ、（リンクド）リスト、構造体、構造化テキストファイル（例えば、ＸＭＬ）、テーブル等の様々な標準的なデータ構造を使用して具現化されてもよい。このデータ構造は、メモリ、及び／又は、（構造化）ファイルに保存されてもよい。別の変形例では、Ｆｒｏｎｔｉｅｒ、ＯｂｊｅｃｔＳｔｏｒｅ、Ｐｏｅｔ、Ｚｏｐｅ等のオブジェクト指向データベースが使用される。オブジェクトデータベースは、共通の属性によりグループ分けされるか、及び／又は、一体としてリンクされる複数のオブジェクトコレクションを含み、オブジェクトコレクションは、何らかの共通属性によって他のオブジェクトコレクションに関連付けられる。オブジェクト指向データベースは、オブジェクトが単にデータではなく、所与のオブジェクト内にカプセル化された他の種類の能力を有している点を除いて、リレーショナルデータベースと同様に機能する。ＤＣＢデータベースがデータ構造として実施される場合、ＤＣＢデータベース８１９の使用は、ＤＣＢコンポーネント８３５の別のコンポーネントに統合されてもよい。さらに、データベースは、データ構造、オブジェクト、及びリレーショナル構造の混合として具現化されてもよい。データベースは、標準的なデータ処理方式を通じて無数の変形で集約、及び／又は、分散されてもよい。データベースの部分、例えば、テーブルは、エクスポート及び／又はインポートされ、分散及び／又は統合されてもよい。
【００７１】
ある実施例では、データベースコンポーネント８１９は、幾つかのテーブル４１９ａ〜ｍを含む。ユーザテーブル８１９ａは、ユーザＩＤ、氏名、自宅住所、勤務先住所、電話番号、ｅメール、マーチャントＩＤ、クライアントＩＤ、アカウントＩＤ等のフィールドを含むが、これらに限定されない。ユーザテーブルは、ＤＣＢ上の複数のエンティティアカウントをサポート及び／又は追跡してもよい。マーチャント／サービスプロバイダーテーブル８１９ｂは、マーチャントＩＤ、マーチャントの氏名、マーチャントの位置、マーチャントの住所、マーチャントのカテゴリーコード、マーチャントａｐｉキー、ロイヤルティプログラムＩＤ等のフィールドを含むが、これらに限定されない。顧客プロフィールテーブル８１９ｃは、ユーザＩＤ、マーチャントＩＤ、支払カードＩＤ、好ましい支払いの種類、デモグラフィックス、マーチャントロイヤルティレベル等のフィールドを含むが、これらに限定されない。許可テーブル８１９ｄは、顧客ＩＤ、トランザクション実行オーソライゼーション状態、確認オーソライゼーション状態、請求書オーソライゼーション状態、サブスクリプション支払オーソライゼーション状態等のフィールドを含むが、これらに限定されない。支払いカードテーブル８１９ｅは、支払いカードＩＤ、ユーザＩＤ、識別子、ブランド、有効期限、支払限度額、請求書送付先住所、イシュア氏名、ニックネーム、ロイヤルティプログラムＩＤ等のフィールドを含むが、これらに限定されない。請求合意テーブル８１９ｆは、顧客ＩＤ、請求書ＩＤ、請求日、請求限度額、確認要求、認証レベル、請求書オーソライゼーション状態等のフィールドを含むが、これらに限定されない。解約テーブル８１９ｇは、顧客ＩＤ、ロイヤルティプログラムＩＤ、クーポンＩＤ、解約日、解約時刻、解約金額、解約の種類、トランザクションＩＤ等のフィールドを含むが、これらに限定されない。ロイヤルティテーブル８１９ｈは、ロイヤルティプログラムＩＤ、規則、ロイヤルティ通貨金額、ロイヤルティ有効期限、トランザクションＩＤ等のフィールドを含むが、これらに限定されない。割引テーブル８１９ｉは、割引ＩＤ、割引値、割引受容位置、割引有効期限等のフィールドを含むが、これらに限定されない。ウィッシュリストテーブル８１９ｊは、ウィッシュリストＩＤ、マーチャントＩＤ、品物ＩＤ等のフィールドを含むが、これらに限定されない。トランザクションテーブル８１９ｋは、トランザクションＩＤ、マーチャントＩＤ、ユーザＩＤ、セッションＩＤ、日時、品物モデル、製造業者、価格、品物ＩＤ等のフィールドを含むが、これらに限定されない。製品テーブル８１９ｌは、製品ＩＤ、マーチャントＩＤ、品物ＩＤ等のフィールドを含むが、これらに限定されない。アカウント残高テーブル８１９ｍは、アカウントＩＤ、アカウントＰＡＮ、アカウントの種類、ブランド、有効期限、支払限度額、請求書送付先住所、イシュア氏名、ニックネーム、ロイヤルティプログラムＩＤ等のフィールドを含むが、これらに限定されない。
【００７２】
ある実施例では、ＤＣＢデータベースは、他のデータベースシステムと相互作用してもよい。例えば、分散データベースシステムを採用すると、検索ＤＣＢコンポーネントによるクエリ及びデータアクセスは、ＤＣＢデータベースの結合、統合データセキュリティレイヤデータベースを単一のデータベースエンティティとして取り扱うことができる。
【００７３】
ある実施例では、ユーザプログラムは、ＤＣＢを更新するために役立つ様々なユーザインターフェースプリミティブを含んでもよい。同様に、様々なアカウントが環境とＤＣＢがサービスを行う必要があるクライアントの種類に依存してカスタムデータベーステーブルを必要としてもよい。ユニークなフィールドが全体を通じてキーフィールドとして指定されてもよいことに注意を要する。代替的実施例では、これらのテーブルは、これらのテーブル自体のデータベース及びそれぞれのデータベースコントローラに分散される（即ち、個々のデータベースコントローラが上記テーブルの各々に対応する）。標準データ処理手法を採用して、データベースを幾つかのコンピュータシステム構成及び／又はストレージデバイスの上にさらに分散させてもよい。同様に、分散データベースコントローラの構成は、様々なデータベースコンポーネント８１９ａ〜ｍを集約及び／又は分散することにより変更されてもよい。ＤＣＢは、データベースコントローラを介して様々な設定、入力、及びパラメータに追従するように構成されてもよい。
【００７４】
ＤＣＢデータベースは、これ自体を含むコンポーネントコレクション内のその他のコンポーネント等の機能に通信すること、及び／又は、この機能などと通信してもよい。多くの場合、ＤＣＢデータベースは、ＤＣＢコンポーネント、その他のプログラムコンポーネント等と通信してもよい。データベースは、その他のノード及びデータに関する情報を収容、保持、及び提供してもよい。
【００７５】
ＤＣＢ
ＤＣＢコンポーネント８３５は、ＣＰＵにより実行されるストアドプログラムコンポーネントである。ある実施例では、ＤＣＢコンポーネントは、前の図において説明されたＤＣＢの対象のいずれか及び／又は全部の組み合わせを組み込む。その結果、ＤＣＢは、様々な通信ネットワークを通じて情報、サービス、取引等のアクセス、取得、及び提供に影響を与える。
【００７６】
ＤＣＢは、提案／割引決定コンポーネント８４１とチェックアウトボタン埋め込みコンポーネント８４２等のＤＣＢコンポーネントを介して、製品ページチェックアウト要求及びユーザＩＤ入力等の入力（例えば、２１１）を、ダイナミックチェックアウトボタン（例えば、２６５）出力に変換する。
【００７７】
ノード間の情報のアクセスを可能にするＤＣＢコンポーネントは、Ａｐａｃｈｅコンポーネント、Ａｓｓｅｍｂｌｙ、ＡｃｔｉｖｅＸ、バイナリ・エグゼキュータブル、（ＡＮＳＩ）（Ｏｂｊｅｃｔｉｖｅ−）Ｃ（＋＋）、Ｃ＃ａｎｄ／ｏｒ．ＮＥＴ、  データベースアダプタ、ＣＧＩスクリプト、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔ、マッピングツール、手続き的及びオブジェクト指向開発ツール、ＰＥＲＬ、ＰＨＰ、Ｐｙｔｈｏｎ、シェルスクリプト、ＳＱＬコマンド、ウェブアプリケーションサーバ・エクステンション、ウェブ開発環境及びライブラリ（例えば、ＭｉｃｒｏｓｏｆｔのＡｃｔｉｖｅＸ、Ａｄｏｂｅ  ＡＩＲ、ＦＬＥＸ＆ＦＬＡＳＨ、ＡＪＡＸ、（Ｄ）ＨＴＭＬ、Ｄｏｊｏ、Ｊａｖａ、ＪａｖａＳｃｒｉｐｔ、ｊＱｕｅｒｙ（ＵＩ）、ＭｏｏＴｏｏｌｓ、Ｐｒｏｔｏｔｙｐｅ、ｓｃｒｉｐｔ．ａｃｕｌｏ．ｕｓ、Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）、ＳＷＦＯｂｊｅｃｔ、Ｙａｈｏｏ！  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ、等）、ＷｅｂＯｂｊｅｃｔｓ等の、但し、これらに限定されない標準開発ツール及び言語を採用することにより開発されてもよい。ある実施例では、ＤＣＢサーバは、通信を暗号化及び復号するために暗号サーバを利用する。ＤＣＢコンポーネントは、これ自体を含むコンポーネントコレクション内のその他のコンポーネント等の機能に通信すること、及び／又は、この機能などと通信してもよい。ＤＣＢコンポーネントは、しばしばＤＣＢデータベース、オペレーティングシステム、その他のプログラムコンポーネント等と通信してもよい。ＤＣＢは、プログラムコンポーネント、システム、ユーザ、及び／又は、データ通信、要求、及び／又は、応答を収容、通信、生成、取得、及び／又は、提供してもよい。
【００７８】
分散ＤＣＢ
ＤＣＢノードコントローラコンポーネントのいずれかの構造及び／又は動作は、開発及び／又は配備を容易にするために、いかなる方法で結合、集約、及び／又は、分散されてもよい。同様に、コンポーネントコレクションは、配備及び／又は開発を容易にするために、いかなる方法で結合されてもよい。これを実現するために、コンポーネントを共通コードベース、または、要求に応じてコンポーネントを統合して動的にロードできる設備に統合してもよい。
【００７９】
コンポーネントコレクションは、標準データ処理及び／又は開発方式を通じて無数の変形例で集約、及び／又は、分散されてもよい。プログラムコンポーネントコレクションの中のいずれか１つのプログラムコンポーネントの複数のインスタンスは、負荷バランス及び／又はデータ処理方式を通じて、性能を改善するために、単一ノード上で、及び／又は、多数のノード上で、インスタンス化されてもよい。更に、単一のインスタンスは、複数のコントローラ及び／又はストレージデバイス、例えば、データベースに亘って分散させられることもある。全てのプログラムコンポーネントインスタンス、及び、一斉に機能するコントローラは、標準データ処理通信手法を通じてこのように行うことがある。
【００８０】
ＤＣＢコントローラの構成は、システム配備のコンテキストに依存する。予算、容量、位置、及び／又は、基底ハードウェア資源の使用等の、但し、これらに限定されない要因は、配備要件及び構成に影響を与えてもよい。この構成がより集約及び／又は統合的なプログラムコンポーネントをもたらすか、より分散された一連のプログラムコンポーネントをもたらすか、及び／又は、集約分散構成との間の何らかの結合もたらすか否かとは無関係に、データは、通信、取得、及び／又は、提供されてもよい。プログラムコンポーネントコレクションから共通コードベースに集約されたコンポーネントのインスタンスは、データを通信、取得、及び／又は、提供してもよい。これは、データ参照（例えば、ポインタ）、内部メッセージング、オブジェクトインスタンス可変通信、共有メモリ空間、可変パース等の、但し、これらに限定されないアプリケーション内データ処理通信手法によって達成されてもよい。
【００８１】
コンポーネントコレクションコンポーネントが離散的、別個、及び／又は、互いに外部にある場合、他のコンポーネントへの，及び／又は、他のコンポーネントとのデータの通信、取得、及び／又は、提供は、アプリケーションプログラムインターフェース（ＡＰＩ）情報通過、（分散）コンポーネント・オブジェクト・モデル（（Ｄ）ＣＯＭ）、（分散）オブジェクトリンキング及びエンベッディング（（Ｄ）ＯＬＥ）等）、共通オブジェクト要求ブローカーアーキテクチャ（ＣＯＲＢＡ）、Ｊｉｎｉローカル及びリモートアプリケーション・プログラムインターフェース、ＪａｖａＳｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、Ｒｅｍｏｔｅ  Ｍｅｔｈｏｄ  Ｉｎｖｏｃａｔｉｏｎ（ＲＭＩ）、ＳＯＡＰ、プロセスパイプ、共有ファイル等の、但し、これらに限定されないアプリケーション間データ処理通信手法によって達成されてもよい。アプリケーション間通信のための離散コンポーネントコンポーネント間で、または、アプリケーション内通信のための単一コンポーネントのメモリ空間内で送信されたメッセージは、グラマーの生成及び解析により容易にされてもよい。グラマーは、ｌｅｘ、ｙａｃｃ、ＸＭＬ等の開発ツールを使用して開発されてもよく、その上、グラマー生成及び解析能力を許可し、次に、コンポーネント内、及び、コンポーネント間の通信メッセージの基礎を形成してもよい。
【００８２】
例えば、グラマーは、ＨＴＴＰポストコマンド、例えば、以下のトークンを認識するために配置されてもよい。
【００８３】
【表８】
0006615798.tif 000015
【００８４】
「ｈｔｔｐ：／／」がグラマー構文の一部であるため、Ｖａｌｕｅ１はパラメータとして識別され、パラメータであると考えられ、その後に続くものは、ポスト値の一部と考えられる。同様に、かかるグラマーを用いて、変数Ｖａｌｕｅ１は、「ｈｔｔｐ：／／」ポストコマンドに挿入され、その後、送信されてもよい。グラマー構文自体は、解析機構（例えば、ｌｅｘ，ｙａｃｃなどにより処理される構文記述テキストファイル）と解釈及び／又は、そうではない場合それを生成するのに使用される構造化データとして提示されてもよい。一旦解析機構が生成、インスタンス化されると、それ自体は、文字（例えば、タブ）表現テキスト、ＨＴＭＬ、構造化テキストストリーム、ＸＭＬ、及び／又は、類似構造化データの構造化データを処理及び／又は解析してもよい。別の実施例では、アプリケーション間データ処理プロトコル自体が、データを解析（例えば、通信）するために使用可能な統合及び／又は直ちに利用可能なパーサー（例えば、ＪＳＯＮ、ＳＯＡＰ、及び／又は、類似のパーサー）を有してもよい。更に、解析グラマーは、メッセージ解析を越えて利用されてもよいが、データベース、データコレクション、データ保存、構造化データ等を構文解析するためにも使用されてもよい。所望の構成は、コンテキスト、環境、及びシステム配備の要件に依存する。
【００８５】
例えば、ある実施例では、ＤＣＢコントローラは、クライアントがデータ、例えば、ＪＳＯＮフォーマットで符号化されたデータを送信してもよいサーバ・ポートの入来通信を聞く情報サーバを介してセキュア・ソケット・レイヤ（ＳＳＬ）ソケットサーバを具現化するＰＨＰスクリプトを実行してもよい。着信通信を識別すると、ＰＨＰスクリプトは、クライアントデバイスから着信メッセージを読み、ＪＳＯＮ符号テキストデータから情報を抽出するために、受信ＪＳＯＮ符号テキストデータをＰＨＰスクリプト変数に解析し、データ（例えば、クライアント識別情報など）、及び／又は、抽出された情報を、構造化クエリ言語（ＳＱＬ）を使用してアクセス可能なリレーショナルデータベースに保存してもよい。ＳＳＬ接続を介してクライアントデバイスからＪＳＯＮ符号入力データを受け取り、変数を抽出するためにデータを解析し、データをデータベースに保存する実質的にＰＨＰ／ＳＱＬコマンドの形式で記述された例示的なリストを以下に示す。
【００８６】
【表９】
0006615798.tif 000016
【００８７】
更に、以下の資源がＳＯＡＰパーサーの実施例に関する例示的実施例を提供するために使用されてもよい。
【００８８】
【表１０】
0006615798.tif 000017
【００８９】
他のパーサー実施例については以下の通りである。
【００９０】
【表１１】
0006615798.tif 000018
【００９１】
これらの全部がここで参照されて明示的に結合される。
【００９２】
様々な問題に着目し技術を進歩させるために、（表紙、発明の名称、見出し、分野、背景、要約、図面の簡単な説明、詳細な説明、特許請求の範囲、要約、図面、付録などを含む）ダイナミックチェックアウトボタン装置、方法及びシステムの全体は、例示として、特許請求の範囲に記載された発明が実施される種々の実施例を示す。本出願の利点と特徴は、単に実施例を表す見本であり、網羅的及び／又は排他的ではない。これらは、特許請求の範囲に記載された原理の理解を助け、教示をするためだけに提示されている。これらは、特許請求の範囲に記載された発明の全てを表すものではないことが理解されるべきである。従って、開示のある側面は、ここで説明されていない。代替的実施例が革新の特定部分に対して提示されていないこと、または、記載されていない更なる代替的実施例が一部に対して利用可能であることは、これらの代替的実施例の放棄と考えるべきではない。それらの記載されていない実施例の多くは、革新の同じ原理を組み込み、それ以外は均等であると理解されるであろう。従って、他の実施例が利用されてもよく、機能的、論理的、動作的、系統的、構造的、及び／又は、トポロジー的な変更が開示の範囲及び／又は趣旨から逸脱することなく行われてもよいことが理解されるべきである。従って、全ての例及び／又は実施例は、本開示の全体を通じて非限定的であると考えられるべきである。また、ここで説明したこれらの実施例に関して、スペース及び繰り返しを削減する目的で説明されていない場合を除いて、ここで説明していない実施例に関して推論すべきではない。例えば、いずれかのプログラムコンポーネント（コンポーネントコレクション）、その他のコンポーネント、及び／又は、図面及び／又は全体を通じて記載される何らかの特徴セットのいずれかの組み合わせの論理的及び／又はトポロジー的な構造は、固定した動作順序及び／又は配置に限定されるべきではなく、むしろ、何らかの開示された順序は、例示的であり、順序に関わらず全ての均等物が開示によって考慮されていることを理解すべきである。この特徴は、連続的な実行に限定されることはなく、むしろ、非同期、並行、並列、同時、同期、及び／又は、類似の方式で実行するかなりの数のスレッド、プロセス、サービス、サーバ等が開示によって考慮されていることが理解されるべきである。従って、これらの特徴の一部は、単一の実施例に同時に存在し得ないので、相互に矛盾してもよい。同様に、幾つかの特徴は、発明の一態様に適用可能で、その他の態様に適用できない。さらに、開示は、現在特許請求の範囲に記載されていない他の発明を含む。出願人は、この発明を特許請求の範囲に記載する権利、さらなる出願、継続出願、一部継続出願、分割出願、及び／又は、類似の出願を提出する権利を含み、これらの現在特許請求の範囲に記載されていない発明に関する全ての権利を留保する。従って、開示の利点、実施例、例、機能的、特徴、論理的、動作的、系統的、構造的、トポロジー的、及び／又は、その他の側面は、特許請求の範囲により規定される開示に関する限定、または、特許請求の範囲に対する均等物に関する限定とみなされるべきではないことが理解されるべきである。ＤＣＢ個人ユーザ及び／又は企業ユーザの特定の要求及び／又は特色、データベース構成、及び／又は、リレーショナルモデル、データ種類、データ送信及び／又はネットワークフレームワーク、構文構造等に依存して、かなりのフレキシビリティ及びカスタマイズを可能にするＤＣＢの様々な実施例が実施されてもよい。例えば、ＤＣＢの態様は、（電子的／金融的）商取引システム、金融計画システム等のため適合されてもよい。ＤＣＢの様々な実施例及び説明は小売業に向けられているが、ここに記載された実施例は、広範囲の他の用途及び／又は実施のために容易に構成及び／又はカスタマイズ可能であることが理解されるべきである。
【図１Ａ】
0006615798.tif 000019
【図１Ｂ】
0006615798.tif 000020
【図２】
0006615798.tif 000021
【図３】
0006615798.tif 000022
【図４】
0006615798.tif 000023
【図５】
0006615798.tif 000024
【図６】
0006615798.tif 000025
【図７】
0006615798.tif 000026
【図８】
0006615798.tif 000027