(57)【要約】【課題】  コンピューティングデバイスのアプリケーションから受信者に送信アイテムを送信することと併せてユーザの対話について記述する。【解決手段】  コンピューティングデバイスは、信頼性を証明するための証明ユニットをその上に有する。アプリケーションは、送信アイテムを構築する際にユーザを支援し、送信アイテムを構築するための取組みをユーザが実際に行っていることを検出するために使用できる所定の証印がモニタされる。証明ユニットは、アプリケーションを認証して、それに対して信用を供与し、ユーザが送信するようアプリケーションに命令すると、送信証明が構築されて送信アイテムに添付される。送信証明は、モニタされた証印およびアプリケーションの認証に基づき、これによってユーザの対話について記述する。構築された送信証明は、構築された送信アイテムと共にパッケージされ、このパッケージは受信者に送信される。【選択図】  図２
2006005921.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングデバイスのアプリケーションから受信者に送信アイテムを送信する方法であって、前記コンピューティングデバイスは、信頼性を証明するための証明ユニットをその上に有し、前記方法は、
前記コンピューティングデバイス上の前記アプリケーションが、前記送信アイテムを構築し、
前記アプリケーションおよび前記証明ユニットの一方が、前記送信アイテムを構築するための最小限の取組みが実際に行われていることを検出するために使用できる所定の証印をモニタし、
前記証明ユニットが、前記アプリケーションを認証して、それに対して信用を供与し、
前記アプリケーションおよび前記証明ユニットの一方が、前記構築された送信アイテムを前記受信者に送信するコマンドが発行されると、送信証明を構築して前記送信アイテムに添付し、前記送信証明は、前記モニタされた証印および前記アプリケーションの前記認証に基づき、それによって前記送信アイテムを構築するために行われた取組みについて記述し、
前記証明ユニットおよび前記アプリケーションの一方が、前記構築された送信証明と前記構築された送信アイテムとをパッケージし、
前記証明ユニットおよび前記アプリケーションの一方が、前記パッケージされた送信アイテムおよび送信証明を前記受信者に送信すること
を備えたことを特徴とする方法。
【請求項２】
前記コンピューティングデバイスの前記アプリケーションから前記受信者によって前記送信アイテムを送信することと併せてユーザの対話について記述する請求項１の方法において、前記コンピューティングデバイスは、信頼性を証明するための前記証明ユニットをその上に有し、前記方法は、
前記コンピューティングデバイス上の前記アプリケーションが、前記送信アイテムを構築する際にユーザを支援し、
前記アプリケーションおよび前記証明ユニットの一方が、前記送信アイテムを構築するための取組みを前記ユーザが実際に行っていることを検出するために使用できる所定の証印をモニタし、
前記証明ユニットが、前記アプリケーションを認証して、それに対して信用を供与し、
前記アプリケーションおよび前記証明ユニットの一方が、前記構築された送信アイテムを前記受信者に送信するように前記ユーザが前記アプリケーションに命令すると、送信証明を構築して前記送信アイテムに添付し、前記送信証明は、前記モニタされた証印および前記アプリケーションの前記認証に基づき、それによって前記ユーザの対話について記述し、
前記証明ユニットおよび前記アプリケーションの一方が、前記構築された送信証明と前記構築された送信アイテムをパッケージし、
前記証明ユニットおよび前記アプリケーションの一方が、前記パッケージされた送信アイテムおよび送信証明を前記受信者に送信すること
を備えたことを特徴とする方法。
【請求項３】
前記コンピューティングデバイス上の電子メールアプリケーションが、前記受信者に送信される電子メールメッセージを構築することをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項４】
前記コンピューティングデバイス上の要求を行うアプリケーションが、前記受信者に送信される要求を構築することをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項５】
前記アプリケーションおよび前記証明ユニットの一方が、キーボードによる行為と、タブレットによる行為と、マウスによる行為と、前記アプリケーションの行為を制御する実行スクリプトの欠如との少なくとも１つを含む所定の証印をモニタすることをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項６】
前記アプリケーションおよび前記証明ユニットの一方が、前記送信アイテムを構築するための最小の構築時間と、単位時間あたりに送信される最大数の送信アイテムとの少なくとも１つを含む所定の証印をモニタすることをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項７】
前記証明ユニットが、前記アプリケーションによって提供された電子証明書を精査することによって前記アプリケーションを認証することをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項８】
前記コンピューティングデバイスは、ハードウェアおよびリソースを含み、前記方法は、前記証明ユニットが、前記送信アイテムを構築する際に使用される前記コンピューティングデバイスの前記ハードウェアおよび／またはリソースの少なくともいくつかを認証することをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項９】
前記証明ユニットが、前記ハードウェアおよび／またはリソースの各部分によって提供された電子証明書を精査することによって前記ハードウェアおよび／またはリソースの各部分を認証することをさらに備えたことを特徴とする請求項８に記載の方法。
【請求項１０】
前記アプリケーションおよび前記証明ユニットの一方が、前記モニタされた証印に基づいて、所定の要件が満たされているかどうかを判定し、満たされている場合には、前記送信証明を構築することをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項１１】
前記アプリケーションおよび前記アプリケーションに関する情報について記述するステートメントと、
前記送信アイテおよび前記モニタされた証印の少なくとも一部に関する情報を含む前記送信アイテムに関する情報について記述するステートメントと
を含むように前記送信証明を構築することをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項１２】
前記コンピューティングデバイスは、ハードウェアおよびリソースを含み、前記方法は、前記証明ユニットが、前記送信アイテムを構築する際に使用される前記コンピューティングデバイスの前記ハードウェアおよび／またはリソースの少なくともいくつかを認証することをさらに備え、前記方法は、前記ハードウェアおよび／またはリソース、ならびにそうしたハードウェアおよび／またはリソースに関する情報について記述するステートメントを含むように前記送信証明を構築することをさらに備えたことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記送信証明を前記送信アイテムに添付することによって、前記構築された送信証明と前記構築された送信アイテムをパッケージすること、前記証明ユニットの鍵に基づいて、前記パッケージされた送信アイテム／送信証明に署名して電子署名すること、および、前記電子署名を前記パッケージされた送信アイテム／送信証明に添付することをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項１４】
コンピューティングデバイスのアプリケーションから受信者によって受信された送信アイテムと併せて最小限の行われた取組みを検証する方法であって、前記送信アイテムは、前記送信アイテムを構築するための最小限の取組みが実際に行われたことを検出するために使用できるモニタされた証印と前記アプリケーションの認証とに基づくことによって前記行われた取組みについて記述する送信証明と共に１つのパッケージ内にあり、前記方法は、
前記送信アイテムおよび前記送信証明を有する前記パッケージを受信すること、
前記パッケージ内に含まれる少なくとも１つの署名を検証すること、
前記パッケージの前記送信証明を所定のポリシーに照らして点検して、前記送信アイテムを承認するかどうかを決定することであって、前記ポリシーは、前記最小限の行われた取組みについて詳述し、それによってポリシーの各側面を、前記送信証明から得られる情報と比較できること、および、
前記送信証明が実際に前記ポリシーを満たしている場合には、前記送信アイテムを承認し、それによって前記送信アイテムを受け入れ、前記送信アイテムに基づいて行動すること
を備えたことを特徴とする方法。
【請求項１５】
前記コンピューティングデバイスの前記アプリケーションから前記受信者によって受信された前記送信アイテムと併せてユーザの対話を検証する請求項１４の方法において、前記送信アイテムは、前記送信アイテムを構築するための取組みをユーザが実際に行ったことを検出するために使用できる前記モニタされた証印と前記アプリケーションの前記認証とに基づき、それによって前記ユーザの対話について記述する前記送信証明と共に前記パッケージ内にあり、前記方法は、
前記送信アイテムおよび前記送信証明を有する前記パッケージを受信すること、
前記パッケージ内に含まれる少なくとも１つの署名を検証すること、
前記パッケージの前記送信証明を所定のポリシーに照らして点検して、前記送信アイテムを承認するかどうかを決定し、それによってポリシーの各側面を前記送信証明から得られる情報と比較できること、および、
前記送信証明が実際に前記ポリシーを満たしている場合には、前記送信アイテムを承認し、それによって前記送信アイテムを受け入れ、前記送信アイテムに基づいて行動すること
を備えたことを特徴とする方法。
【請求項１６】
対価報酬を得ることになっている仲介者を介して発生する要求を含む前記送信アイテムを有する前記パッケージを受信すること、および前記仲介者が検証されたユーザの対話を伴わずに前記要求を送信したと判定された場合には、前記送信アイテムを拒絶することをさらに備えたことを特徴とする請求項１５に記載の方法。
【請求項１７】
前記送信証明が実際に前記ポリシーを満たしていない場合には、前記送信アイテムを拒絶し、それによって前記送信アイテムを受け入れず、前記送信アイテムに基づいて行動しないこと、および前記コンピューティングデバイスに拒否メッセージを返すことをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項１８】
前記送信証明が実際に前記ポリシーを満たしていない場合には、前記送信アイテムを拒絶し、それによって前記送信アイテムを受け入れず、前記送信アイテムに基づいて行動しないこと、および同じ送信アイテムを拒否フィルタに通知し、それによって前記拒否フィルタは前記コンピューティングデバイスからのさらなる送信アイテムを除去することをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項１９】
前記送信証明が実際に前記ポリシーを満たしていない場合には、前記送信アイテムを拒絶し、それによって前記送信アイテムを受け入れず、前記送信アイテムに基づいて行動しないこと、および前記コンピューティングデバイスを拒否リストに追加し、それによって前記コンピューティングデバイスからのさらなる送信アイテムは、前記リスト上にあることに基づいて異なる取扱いを受けることをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項２０】
電子メールメッセージを含む前記送信アイテムを有する前記パッケージを受信することをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項２１】
要求を含む前記送信アイテムを有する前記パッケージを受信することをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項２２】
前記送信アイテムの構築中にモニタされた証印を含む前記送信証明を有する前記パッケージを受信することであって、前記証印は、キーボードによる行為と、タブレットによる行為と、マウスによる行為と、前記アプリケーションの行為を制御する実行スクリプトの欠如との少なくとも１つを含むことをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項２３】
前記送信アイテムの構築中にモニタされた証印を含む前記送信証明を有する前記パッケージを受信することであって、前記証印は、前記送信アイテムを構築するための最小の構築時間と、単位時間あたりに送信される最大数の送信アイテムとの少なくとも１つを含むことをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項２４】
前記アプリケーションおよび前記アプリケーションに関する情報について記述するステートメントと、
前記送信アイテムおよび前記モニタされた証印の少なくとも一部に関する情報を含む前記送信アイテムに関する情報について記述するステートメントと
を含むように前記送信証明を有する前記パッケージを受信することをさらに備えたことを特徴とする請求項１４に記載の方法。
【請求項２５】
前記コンピューティングデバイスは、ハードウェアおよびリソースを含み、前記方法は、前記ハードウェアおよび／またはリソース、ならびにそうしたハードウェアおよび／またはリソースに関する情報について記述するステートメントをさらに含む前記送信証明を有する前記パッケージを受信することをさらに備えたことを特徴とする請求項２４に記載の方法。
【請求項２６】
前記送信アイテムに添付された前記送信証明と、前記パッケージされた送信アイテム／送信証明に基づいて添付された電子署名とを有する前記パッケージを受信することをさらに備えたことを特徴とする請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピューティングデバイスに関連して行われたコンピュータ要求が人間から生じたものであり、コンピュータアプリケーションなどから生じたものではないことをコンピュータエンティティに対して検証するためのアーキテクチャおよび方法に関する。より詳細には、本発明は、コンピューティングデバイス上で動作する信用されたコンポーネントを介して検証を実行するアーキテクチャおよび方法に関する。
【背景技術】
【０００２】
コンピューティングデバイスからエンティティへの要求が、コンピューティングデバイスにおける人間から生じたものであり、単にコンピューティングデバイス上で実行されているアプリケーションから生じたものではないことをコンピュータエンティティに明示するために、ＨＩＰ（Human Interactive Proof)技術が存在する。従って、ＨＩＰ技術は、例えば、ネットワークサイトにより使用することができ、サイトＩＤを求める要求が、おそらくは合法的な目的で単一のサイトＩＤを得ようと試みる人間からのものであり、そうした要求が、おそらくは違法なまたは少なくとも望ましくない目的で複数のサイトＩＤを得ようと試みるコンピュータアプリケーションからのものではないことを確認することができる。理解できることであろうが、後者の場合、そうした複数のサイトＩＤは、例えば、正直に身元を明かすことを避けるためにそうした複数のサイトＩＤの陰に隠れることを望む不正なエンティティによって使用される可能性がある。
【０００３】
そうしたＨＩＰ技術は、例えば、メッセージの受信者により使用することができ、メッセージの送信者が、おそらくは望ましい目的で個人的なメッセージを受信者に送信することを試みる人間であり、そうしたメッセージが、おそらくは望ましくない目的で複数の非個人的な大量のメッセージを送信することを試みるコンピュータアプリケーションからのものではないことを確認することもできる。理解できることであろうが、後者の場合、そうした複数の大量のメッセージは、例えば、受信者に対して何の個人的な関係も持たない不正なエンティティからの広告または「スパム」の形態を取る可能性がある。
【０００４】
ＨＩＰ技術は、例えば、オンライン仲介者によって提供されたリンクがユーザによって選択されるたびに、その仲介者に紹介料を支払うオンライン広告主により使用することができる。この場合、証明は、メッセージが、リンクを介して広告主へのアクセスを望むユーザを選択する人間からのものであり、そうしたメッセージが、仲介者またはそのエージェントから広告主に複数の非個人的な大量のメッセージを送信することを試みるコンピュータアプリケーションからのものではないことを確認する。理解できることであろうが、後者の場合、そうした複数の大量のメッセージは、例えば、エンドユーザがまったく関与していなくても単に紹介料を発生させるためだけに送信されることがあり、時に「不正クリックスルー」と呼ばれる。さらに理解できることであろうが、そうした不正クリックスルーは、広告の環境において、および仲介者がそうしたメッセージを作成する誘因を有する他の環境において発生しうる。
【０００５】
より一般には、ＨＩＰ技術は、望ましくない大量の送信メッセージを防止するため、広告の環境などにおける不正クリックスルーを防止するため、オンラインオークションサイト上の略奪的狙い撃ちの防止、オンライン購入用の人間による証明、アカウント設定用の人間による証明などに使用されることを理解されたい。そして、ＨＩＰ技術は、要求またはメッセージ（以降、「送信アイテム」と呼ぶ）の受信者が、その送信アイテムが、人間型のアクションを実行するコンピューティングデバイスにおける人間から生じたものであり、単にプログラムされたアクションを実行するコンピューティングデバイスから生じたものではないことを確認したい任意の状況において使用することができる。
【０００６】
それぞれのＨＩＰ技術は、基本的に前述の送信アイテムを送信する人間が何らかの能動的な取組みを行うことを要求するように設計されており、取組みとは、コンピューティングデバイスがおそらく実行できない性質のアクションである。１つの一般的なバージョンのＨＩＰ技術では、例えば受信希望者は、犬、ボール、鉛筆など、１つの言葉で簡単に表現できる物品の画像を含む「チャレンジ（challenge）」を送信希望者に送信し、送信者は送信アイテムと共にその１つの言葉を送信しなければならない。おそらく送信者が人間である場合、そうした送信者は、チャレンジ内に描かれた物品を容易に認識し、その言葉を提供することができる。おそらく送信者が人間ではなくコンピューティングデバイスである場合、そうした送信者は、描かれた物品を容易に認識してその言葉を提供することはできない。別の一般的なバージョンのＨＩＰ技術では、受信希望者は、おそらくコンピューティングデバイスによって実行される光学式文字認識プロトコルに基づいて、容易に認識できないと予想されるが、人間にとっては容易に認識できるはずの言葉の画像を含むチャレンジを送信希望者に送信し、送信者は、送信アイテムと共にその言葉を送信しなければならない。
【０００７】
いずれにしても、送信アイテムと共にその言葉を提供することができない場合、例えば、受信希望者は、送信者は望ましい送信アイテムを送信する人間ではないという推定に基づいて、そのメッセージを無視することができる。画像または言葉を認識してその１つの言葉を提供するという取組みは、コンピューティングデバイスによって容易に実行できるものではないため、ＨＩＰ技術はほとんどの場合、要求またはメッセージの送信者が人間であることを立証する。
【０００８】
さらに、たとえ認識する取組みをコンピューティングデバイスによって何らかの形で実行できるとしても、あるいは不正なエンティティが、認識を実行するための人間の作業者を利用できるとしても、この取組みは、送信者としてコンピューティングデバイスまたは作業者を利用する者に対して、金銭的価値、処理能力、時間などの点でコストを強いる。例えば、１００万人の受信者に電子メールメッセージを送信するコンピューティングデバイスは、その１００万通のメッセージのそれぞれについてＨＩＰ技術を要求されないならば、現在の技術に基づいて比較的簡単にその送信を行うことができる。しかし注目すべきことに、１００万人の受信者に電子メールメッセージを送信する同じコンピューティングデバイスは、その１００万通のメッセージのそれぞれについて固有のＨＩＰ技術を要求されるならば、膨大な取組みを行わなければならない。従って理解できることであろうが、多数の送信アイテムのそれぞれについてＨＩＰ技術を実行するようコンピューティングデバイスまたは人間の作業者に要求することは、特にコンピューティングデバイスまたは作業者を利用する者が、数百、数千、あるいは数百万ものそうした送信アイテムの送信をもくろんでいる場合には、すぐに深刻な妨害となりうる。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従って要約すると、ＨＩＰ技術は、コンピューティングデバイスによって大量に送信される可能性のあるアイテムなどの望ましくない送信アイテムを防止する。これは、ＨＩＰ技術が、実際にコンピューティングデバイスが実行できないアクションを実行するようコンピューティングデバイスに要求するか、あるいは送信アイテムごとにアクションを実行すること、すなわち膨大な取組みを行うことをコンピューティングデバイスまたは人間の作業者に要求するためである。しかし今日までのＨＩＰ技術が直面している問題は、このような証明は、この証明を満たすために人間が能動的な取組みを行う必要があり、アイテムを送信する過程で人間が自然に行うことができる受動的な取組みを説明できないことである。言い換えれば、現行のＨＩＰ技術は、人間がアイテムを送信する際に、例えばキーボードでタイプすること、マウスデバイスを介してカーソルを動かすことなど、コンピュータが同様に行うことのできない受動的な取組みまたは自然な取組みを行っていることを認識しない。そうした受動的な取組みが行われていることを検出することにより、ＨＩＰ技術は、「試練を経る」ような形で能動的な取組みまたは個別の取組みを行うように人間に実際に要求する必要がないことを認識しない。
【００１０】
従って、人間によって基本的に能動的な取組みを行う必要がなく、人間は、検出される自然な取組みを行うだけですむＨＩＰ技術に対するニーズが存在する。詳細には、そうしたＨＩＰ技術を実施し、そのような検出された自然な取組みを受信者に対して信用された方法で検証し、それによって受信者は、検出された自然な取組みは実際に行われたものであり、受信者をだますことをもくろむ不正なエンティティによって企てられたものでは決してないことを確信することができるアーキテクチャおよび方法に対するニーズが存在する。さらに、送信者のコンピューティングデバイス上の信用されたコンポーネントがそうした検証を実行するそのようなアーキテクチャおよび方法に対するニーズが存在する。
【課題を解決するための手段】
【００１１】
前述のニーズの少なくとも一部は、コンピューティングデバイスのアプリケーションから受信者に送信アイテムを送信することと共に、ユーザの対話について記述する方法を提供する本発明によって満たされる。コンピューティングデバイスは、信頼性を証明するための証明ユニットをその上に有する。この方法では、コンピューティングデバイス上のアプリケーションは、送信アイテムを構築する際にユーザを支援し、アプリケーションおよび証明ユニットの一方が、送信アイテムを構築するための取組みをユーザが実際に行っていることを検出するために使用できる所定の証印を探してモニタする。
【００１２】
証明ユニットは、アプリケーションを認証して、それに対して信用を供与し、アプリケーションおよび証明ユニットの一方は、構築された送信アイテムを受信者に送信するようユーザがアプリケーションに命令すると、送信証明を構築して送信アイテムに添付する。送信証明は、モニタされた証印およびアプリケーションの認証に基づき、これによってユーザの対話について記述する。証明ユニットおよびアプリケーションの一方は、構築された送信証明と構築された送信アイテムをパッケージし、証明ユニットおよびアプリケーションの一方は、パッケージされた送信アイテムおよび送信証明を受信者に送信する。
【００１３】
前述の概要、ならびに後述する本発明の実施形態に関する詳細な説明は、添付の図面と併せて読めば、よりよく理解できるであろう。本発明を説明する目的で、図面には現時点で好ましい実施形態が示されている。しかし本発明は、示された厳密な構成および手段に限定されるものではないことを理解されたい。
【発明を実施するための最良の形態】
【００１４】
（コンピュータ環境）
図１および以降の考察は、本発明および／またはその一部を実装できる適切なコンピューティング環境の大まかな概要を提供することを意図している。必須ではないが、クライアントワークステーションやサーバなどのコンピュータによって実行される、プログラムモジュールなどのコンピュータ実行可能命令という一般的な文脈において本発明について説明する。一般にプログラムモジュールは、特定のタスクを実行したり特定の抽象データ型を実装したりするルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。さらに本発明および／またはその一部は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの家庭用電化製品またはプログラム可能な家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステム構成と共に実施できることを理解されたい。また本発明は、通信ネットワークを介してリンクされるリモート処理デバイスによってタスクが実行される分散コンピューティング環境において実施することもできる。分散コンピューティング環境では、プログラムモジュールは、ローカルメモリストレージデバイスおよびリモートメモリストレージデバイスの双方に配置することができる。
【００１５】
図１に示されているように、典型的な汎用コンピューティングシステムは、従来のパーソナルコンピュータ１２０などを含み、パーソナルコンピュータ１２０は、処理装置１２１、システムメモリ１２２、およびシステムバス１２３を含み、システムバス１２３は、システムメモリを含む様々なシステムコンポーネントを処理装置１２１に結合する。システムバス１２３は、メモリバスまたはメモリコントローラ、ペリフェラルバス、および様々なバスアーキテクチャのいずれかを使用するローカルバスを含む複数のタイプのバス構造のいずれにすることもできる。システムメモリは、ＲＯＭ（Read Only Memory）１２４およびＲＡＭ（Random Access Memory）１２５を含む。基本入出力システム１２６（ＢＩＯＳ）は、起動中などにパーソナルコンピュータ１２０内の要素間における情報伝達を補助する基本ルーチンを含み、ＲＯＭ１２４内に格納されている。
【００１６】
パーソナルコンピュータ１２０は、ハードディスクとの間で読取りおよび書込みを行うためのハードディスクドライブ１２７（図示せず）、取外し可能な磁気ディスク１２９との間で読取りや書込みを行うための磁気ディスクドライブ１２８、およびＣＤ−ＲＯＭや他の光媒体などの取外し可能な光ディスク１３１との間で読取りや書込みを行うための光ディスクドライブ１３０をさらに含むことができる。ハードディスクドライブ１２７、磁気ディスクドライブ１２８、および光ディスクドライブ１３０は、それぞれハードディスクドライブインタフェース１３２、磁気ディスクドライブインタフェース１３３、および光ディスクドライブインタフェース１３４によってシステムバス１２３に接続される。これらのドライブおよびその関連するコンピュータ読取り可能媒体は、パーソナルコンピュータ１２０用のコンピュータ読取り可能命令、データ構造、プログラムモジュール、および他のデータの不揮発性ストレージを提供する。
【００１７】
本明細書に記載する典型的な環境では、ハードディスク、取外し可能な磁気ディスク１２９、および取外し可能な光ディスク１３１を採用しているが、コンピュータによってアクセス可能なデータを保存できる他のタイプのコンピュータ読取り可能媒体を典型的な動作環境において使用することもできることを理解されたい。そうした他の種類の媒体としては、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ＲＡＭ、ＲＯＭなどがある。
【００１８】
オペレーティングシステム１３５、１または複数のアプリケーションプログラム１３６、他のプログラムモジュール１３７、およびプログラムデータ１３８を含む複数のプログラムモジュールを、ハードディスク、磁気ディスク１２９、光ディスク１３１、ＲＯＭ１２４、またはＲＡＭ１２５上に保存することができる。ユーザは、キーボード１４０およびポインティングデバイス１４２などの入力デバイスを介してパーソナルコンピュータ１２０にコマンドおよび情報を入力することができる。他の入力デバイス（図示せず）は、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送受信用アンテナ、スキャナなどを含むことができる。これらの入力デバイスおよび他の入力デバイスは、システムバスに結合されているシリアルポートインタフェース１４６を介して処理装置１２１に接続される場合が多いが、パラレルポート、ゲームポート、ＵＳＢ（Universal Serial Bus）などの他のインタフェースによって接続することもできる。またモニタ１４７や他のタイプのディスプレイデバイスも、ビデオアダプタ１４８などのインタフェースを介してシステムバス１２３に接続される。モニタ１４７に加えて、パーソナルコンピュータは通常、スピーカおよびプリンタなどの他の周辺出力デバイス（図示せず）を含む。また図１の典型的なシステムは、ホストアダプタ１５５、ＳＣＳＩ（Small Computer System Interface）バス１５６、およびＳＣＳＩバス１５６に接続される外部ストレージデバイス１６２も含む。
【００１９】
パーソナルコンピュータ１２０は、リモートコンピュータ１４９などの１または複数のリモートコンピュータへの論理接続を使用して、ネットワーク化された環境内で動作することができる。リモートコンピュータ１４９は、別のパーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、または他の一般的なネットワークノードとすることができ、図１にはメモリストレージデバイス１５０しか示されていないが、通常はパーソナルコンピュータ１２０に関連する上述の要素の多くまたはすべてを含む。図１に示されている論理接続は、ローカルエリアネットワーク（ＬＡＮ）１５１およびワイドエリアネットワーク（ＷＡＮ）１５２を含む。こうしたネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、およびインターネットにおいてよく見受けられる。
【００２０】
ＬＡＮネットワーキング環境において使用する場合、パーソナルコンピュータ１２０は、ネットワークインタフェースまたはアダプタ１５３を介してＬＡＮ１５１に接続される。ＷＡＮネットワーキング環境において使用する場合、パーソナルコンピュータ１２０は通常、モデム１５４、またはインターネットなどのワイドエリアネットワーク１５２上で通信を確立するための他の手段を含む。モデム１５４は内蔵型または外付け型とすることができ、シリアルポートインタフェース１４６を介してシステムバス１２３に接続することができる。ネットワーク化された環境では、パーソナルコンピュータ１２０またはその一部に関連して示されているプログラムモジュールをリモートメモリストレージデバイス内に記憶することができる。示したネットワーク接続は代表的なものであり、コンピュータ間に通信リンクを確立する他の手段も使用できることを理解されたい。
【００２１】
（受動的取組みを検出することによる人間との対話の検証）
本発明では、コンピューティングトランザクションに人間が関与しており、それによって人間が受信者にアイテムを送信していることを検証するＨＩＰ技術を実施するための方法およびアーキテクチャを提供する。一般的に、証明において、送信されるアイテムは、その送信されるアイテムに関連して実際に十分な人間の取組みが検出され、従ってコンピュータは、送信アイテムごとに意味のある人間の取組みをまったく必要としないプログラムやアプリケーションに基づいて単にアイテムを送信したのではないという旨を示す送信証明を伴う。検出される十分な人間の取組みは、例えば、キーストローク、マウスクリック、最小回数のキーストロークまたはマウスクリック、最小の構成時間、最大数の受信者の選択、単位時間あたりに送達される最大数の送信アイテムなどを含むことができる。本発明では、人間の対話は受動的に検出されるため、人間は送信証明に関連して能動的な取組みを行う必要はまったくない。従って人間の対話は、送信アイテムを作成してその受信者へ送信する過程で人間なら通常行うであろう行動に基づいて検出される。
【００２２】
次いで図２を参照すると、送信証明に信用を供与するため、そうした送信証明１８は、送信アイテム１４の送信者のコンピューティングデバイス１２上で運営される安全なコンピューティング環境１０によって、またはそれを代表するものとして構成される。この安全なコンピューティング環境１０は、受信者１６によって信用される。理解できることであろうが、送信アイテム１４は、例えばコンピューティングデバイス１２上で実行される送信アプリケーション２６を活用するなどしてコンピューティングデバイス１２によって、またはそれに関連して構築される。また、送信証明１８は、コンピューティングデバイス１２上で構成される。安全なコンピューティング環境１０は、信用に基づいて送信証明１８を受信者１６に提供し、対応する送信アイテム１４の構築に関連して十分な人間の取組みが検出されたことを、やはり人間からの能動的な関与をまったく必要とせずに受動的に確認するように構成される。様々な実施形態では、送信アイテム１４は、送信証明１８を添付オブジェクトなどとして含むか、あるいは送信証明１８は、送信アイテム１４から分離されるが、おそらくはポインタまたは他の参照を介してリンクされる。
【００２３】
送信者のコンピューティングデバイス１２は、本発明の趣旨および範囲から逸脱しない任意の適切なコンピューティングデバイスとすることができる。例えば、このコンピューティングデバイスは、パーソナルコンピュータ、携帯通信デバイス、無線通信デバイスなどとすることができる。こうしたコンピューティングデバイス１２は、適切な通信リンクを介して受信者１６に適切に結合される。このようなリンクは、直接接続とすることができ、あるいは適切な通信プロトコルを採用するイントラまたはインターネットワーク接続などのネットワーク接続とすることができる。
【００２４】
受信者１６は、典型的には、コンピューティングデバイス１２から離れた場所またはコンピューティングデバイス１２のローカルな場所にあるサーバ、コンピュータ、または他のコンピューティングデバイス上で実行されるアプリケーションである。そうした受信者１６は、コンピューティングデバイス１２における送信者からの要求に基づいてその送信者にサービスを提供することができ、この場合、そうした要求は送信アイテム１４の形態を取る。従って、送信アイテム１４は、コンテンツの一部を求める要求、ユーザＩＤを求める要求、ネットワークリソースを求める要求などとすることができる。あるいは受信者１６は、その場所でユーザ用のメッセージを受信することができ、この場合も、そうしたメッセージは送信アイテム１４の形態を取る。従って、送信アイテム１４は、例えば電子メールアイテムの形態のネットワークメッセージとすることもできる。送信アイテム１４が、対応する受信者１６へ適切に導かれることを理解されたい。従って、そうした送信アイテム１４および対応する受信者１６は、本発明の趣旨および範囲から逸脱しない任意の適切な送信アイテム１４および受信者１６とすることができる。
【００２５】
送信アイテム１４の送信者のコンピューティングデバイス１２上で運営される安全なコンピューティング環境１０は、前述のように受信者１６によって信用される安全なコンピューティング環境である。従って、安全なコンピューティング環境１０は、例えば、鍵、電子署名、電子証明書などを提供できることなどによって、そうした信用を受信者１６に明示できるべきである。典型的には、そうした電子証明書は、おおもとの信用当事者へと導く一連の証明書を含み、受信者１６は、そうした証明書のおおもとの信用当事者を認識および承認する場合、その電子証明書を受け入れ、それに基づいて信用を供与する。
【００２６】
理解できることであろうが、送信者のコンピューティングデバイス１２上で運営される安全なコンピューティング環境１０は、そのコンピューティングデバイス１２上で動作する他のエンティティによる制御や、他のコンピューティングデバイスからの、または人間の形態の他のエンティティによる制御を免れるべきである。従って、安全なコンピューティング環境１０には、送信証明１８が保証されていない場合、例えば、不正なエンティティが適切な人間の対話を伴わずに送信アイテム１４の発行をもくろむ場合などに、そうした送信証明１８の発行を強要できないようにすべきである。
【００２７】
そうした安全なコンピューティング環境１０は、もちろん本明細書に記載の制約を前提として本発明の趣旨および範囲から逸脱しない任意の適切な安全なコンピューティング環境とすることができる。例えば、安全なコンピューティング環境１０は、コンピューティングデバイス１２上のオペレーティングシステムの信用された部分とすることができる。そうしたオペレーティングシステムの信用された部分は、不適切な外部の影響を免れる。安全なコンピューティング環境１０は、自分自身が送信アイテム１４に関連して十分な人間の取組みを検出するか、またはそのように検出するためにその上で実行される何らかのアプリケーションおよびおそらくは関連するハードウェアにおいて信用を供与することができ、同様に、必要に応じて自分自身が送信アイテム１４用の送信証明１８を構築するか、またはそのように構築するためにその上で実行される何らかのアプリケーションにおいて信用を供与することができる。本発明の一実施形態において、実際に安全なコンピューティング環境１０は、前述の十分な人間の取組みを検出して前述の送信証明１８を構築するためにその上で実行されるアプリケーションおよび／またはその中で実行されるハードウェアとして証明ユニット２４を含む。
【００２８】
証明ユニット２４は、本発明の趣旨および範囲から逸脱しない任意の適切なハードウェアおよび／またはソフトウェアとすることができる。例えば、証明ユニット２４は、安全なコンピューティング環境１０の信用された領域内で実行される信用されたソフトウェアとして確立することができ、あるいは本明細書に記載の証明機能を実行するように設計されるコンピューティングデバイス１２上のハードウェアの一部とすることができる。いずれの場合も、そうした証明ユニット２４は、コンピューティングデバイス上で動作する任意の他のソフトウェアまたはハードウェアによってモニタまたは影響されることから保護されており、特に証明ユニット２４の機能の妨害を企てる不正なエンティティによって使用される可能性のある攻撃などから保護されている。証明ユニット２４は、不正に操作できないように設計すべきであり、電子署名、署名の検証、暗号化、復号などを行えるべきである。そうした証明ユニット２４は、少なくとも関連する公衆にとって明白なはずであり、従って本明細書において何ら詳しく記載する必要はない。
【００２９】
安全なコンピューティング環境１０および／またはその証明ユニット２４は、十分な人間の取組みが行われているかどうかを検出する際に、送信アイテム１４を構築する過程で人間が使用するであろうコンピューティングデバイス１２上のハードウェア２０から得られる入力をおそらく受け入れなければならない点に留意されたい。例えば、そうしたハードウェア２０は、タッチスクリーン、キーボード、マウス等のカーソルコントロールデバイスなどを含むことができる。その上、安全なコンピューティング環境１０／証明ユニット２４（以降、「証明ユニット２４」と呼ぶ）は、クロック、メモリ、コントローラなど、コンピューティングデバイス１２の他のリソース２２を参照することができる。そしてハードウェア２０のそうした各部分およびそのような各リソース２２は、送信アイテム１４に関連して十分な人間の取組みが行われていることを検出する上で不正なエンティティが不正に妨害を企てる際の手段となるおそれがある。従って、本発明の一実施形態では、ハードウェア２０のそうした各部分およびそのような各リソース２２は、証明ユニット２４によって信用されるように、また、例えば鍵、電子署名、電子証明書などを提供できることなどによってそうした信用を証明ユニット２４に明示できるように構築される。やはり、そうした電子証明書は、典型的には、おおもとの信用当事者へと導く一連の証明書を含む。そうした証明ユニット２４がこうした証明書のおおもとの信用当事者を認識および承認する場合、安全なコンピューティング環境１０は、その電子証明書を受け入れ、それに基づいて信用を供与する。
【００３０】
送信証明１８自体は、本発明の趣旨および範囲から逸脱しない任意の適切な形態を取ることができる。例えば、送信証明１８は、ＸＭＬ（eXtensible Markup Language）の何らかの形態に基づいて電子文書として構築することができ、秘密鍵に基づいて電子署名することができ、安全なコンピューティング環境１０の前述の電子証明書または証明ユニット２４の電子証明書から利用可能な対応する公開鍵に従って検証することができる。従って、このような送信証明１８は、そうした電子証明書を含むことができ、また対応する送信アイテム１４を構築する過程で行われているものとして、十分な人間の取組みが検出されたという事実を証明する何らかの肯定的なステートメントを含むことができる。その上、送信証明１８は、例えば、複数のキーストローク、送信アイテム１４を構築するために使用した一定量の時間、複数の受信者１６等、以前の所定の期間中に送信された複数の送信アイテム１４など、このような検出された人間の行った取組みに関する詳細、および／または使用したハードウェア２０および／またはリソース２２に関する詳細を含む場合もある。理解できることであろうが、そうした詳細について、受信者１６は、送信アイテム１４を承認するかどうかを決定する過程においてさらなる選別を実施することができる。
【００３１】
要約すると、本発明において、送信アイテム１４を受信者１６に送信する送信側のユーザは、キーボード、マウスなどの何らかの入力デバイスを含むハードウェア２０と、メモリなどを含むリソース２２と、送信アイテム１４を構築するためのアプリケーション２６と、安全なコンピューティング環境１０内で動作し、ユーザによって影響されることがなく、送信アイテム１４を証明できる信用された証明ユニット２４とを有するコンピューティングデバイス１２を使用する。受信者１６は、送信アイテム１４および添付の送信証明１８を受信すると、同じ送信アイテムに添付されている送信証明がその受信者１６にとって受け入れ可能な場合に限り、その送信アイテム１４を承認する。次に、図３を参照すると、前述のコンポーネントによって、および／または前述のコンポーネントに関連して使用される方法が示されている。
【００３２】
コンピューティングデバイス１２におけるユーザは、送信アプリケーション２６を介して送信アイテム１４を構築することがあらかじめ予想される（ステップ３０１）。もちろん、送信アイテム１４がメッセージである場合、アプリケーション２６は、電子メールアプリケーションなどのメッセージ送信アプリケーションであり、その一方で送信アイテム１４が要求である場合、アプリケーション２６は、例えばコンピュータブラウザなど、受信者１６から受信したコードに基づいて要求を構成できるアプリケーションである。
【００３３】
ステップ３０１におけるように送信アイテム１４を構築することに関連して、アプリケーション２６および証明ユニット２４の一方は、送信アイテム１４を構築するためにユーザが実際に取組みを行っていること（ステップ３０３）、およびアプリケーション２６自体がユーザの実質的な関与を伴わない自動化されたプロセスによる方法で送信アイテム１４を構築しているのではないことを検出するために使用できる何らかの所定の証印を探してモニタする。こうした証印は、本発明の趣旨および範囲から逸脱しない任意の証印とすることができる。例えば、アプリケーション２６または証明ユニット２４は、実質的なキーボードによる行為および／またはマウスによる行為、送信アイテム１４を構築するための最小の構築時間、単位時間あたりに送信される最大数の送信アイテム、アプリケーション２６の行為を制御する実行スクリプトの欠如などを探してモニタすることができる。
【００３４】
注目すべきことに、ステップ３０１におけるような送信アイテム１４の構築前または後に、証明ユニット２４はアプリケーション２６を認証して（ステップ３０５）、それに対して信用を供与する。証明ユニット２４によるそのようなアプリケーション２６のこうした認証は、例えば、コンピューティングデバイス１２上でアプリケーション２６のインスタンスが作成されたとき、ユーザが送信アイテム１４を構築するためにアプリケーション２６を呼び出したとき、または送信アイテム１４が構築されて受信者１６に送信できるときに行うことができる。証明ユニット２４によるアプリケーション２６のこうした認証は、本発明の趣旨および範囲から逸脱しない任意の適切な認証を含むことができる。例えば、このような認証は、電子証明書と、おそらくは他の動作関連文書と、おそらくはアプリケーション２６の動作環境に関する情報とを、アプリケーション２６が証明ユニット２４に提供することを含むことができる。そうした情報に基づいて証明ユニット２４は、例えば、電子証明書を検証して、アプリケーション２６が動作関連文書に基づいて予想される環境内で動作していることを確認することによって、アプリケーション２６が正しく動作するものとして信用できることを確かめる。
【００３５】
証明ユニット２４は、ステップ３０３のモニタリングを実行することができるが、アプリケーション２６自体がそうしたモニタリングを実行することになる可能性の方が高いことを理解できる点に留意されたい。とりわけ、アプリケーション２６が自分自身をモニタしている限り、またアプリケーション２６およびそのインタフェースが証明ユニット２４にあまり知られていない可能性がある場合は、そうする方がより簡単である。いずれにしても、ステップ３０５におけるように証明ユニット２４がいったんアプリケーション２６を信用すると、そうした信用は、ステップ３０３におけるようにアプリケーション２６が自分自身をモニタする能力へ拡張される。
【００３６】
ステップ３０５におけるようにアプリケーション２６を認証して、それに対して信用を供与することと併せて、証明ユニット２４は、送信アイテム１４を構築する際に使用されるまたは使用されると予想されるハードウェア２０および／またはリソース２２の少なくともいくつかを認証することもできる（ステップ３０７）。この場合もやはり、証明ユニット２４によるそのようなハードウェア２０および／またはリソース２２のこうした認証は、例えば、コンピューティングデバイス１２上でアプリケーション２６のインスタンスが作成されたとき、ユーザが送信アイテム１４を構築するためにアプリケーション２６を呼び出したとき、または送信アイテム１４が構築されて受信者１６に送信できるときに行うことができる。前述のように、こうした認証は、本発明の趣旨および範囲から逸脱しない任意の適切な認証を含むことができる。例えば、そうした認証は、複数のハードウェア２０および／またはリソース２２のそれぞれが証明ユニット２４に、電子証明書と、おそらくは他の文書および環境に関する情報とを提供することを含む。そうした情報に基づいて証明ユニット２４は、例えば、キーボードが正しく動作するものとして信用できること、メモリが正しく動作するものとして信用できることなどを確かめる。
【００３７】
いずれにしても、ステップ３０３におけるようにユーザが送信アイテムを実際に構築したと仮定すると、そうしたユーザは、構築された送信アイテム１４を受信者１６へ実際に送信するようアプリケーション２６に命令する（ステップ３０９）。そうすると、証明ユニット２４は、ステップ３０３でモニタされた証印とステップ３０５および３０７の認証とに基づいてすべての関連する要件が満たされているかどうかを判定する（ステップ３１１）。すべての関連する要件が満たされている場合、証明ユニット２４および／またはアプリケーション２６は、送信証明１８を構築して、そうした送信アイテム１４に添付する（ステップ３１３）。その後、証明ユニット２４および／またはアプリケーション２６は、構築された送信証明１８と構築された送信アイテム１４をパッケージし（ステップ３１５）、アプリケーション２６および／または証明ユニット２４は、パッケージされた送信アイテム１４および送信証明１８を受信者１６へ実際に送信する（ステップ３１７）。
【００３８】
証明ユニット２４は、本発明の趣旨および範囲から逸脱しない任意の適切な方法でステップ３１１におけるようにすべての関連する要件が満たされているかどうかを判定することができる。例えば、証明ユニットは、ステップ３０５および３０７におけるようにすべての認証が成功すること、またステップ３０３でモニタされた証印が何らかの所定の要件を満たすことを要求することができる。そうした要件は、例えば、証明ユニット２４によって、または受信者１６によって記載することができる。後者の場合、受信者は事前のどこかの時点でそうした要件を証明ユニット２４へ送達することができる。ステップ３１１を実行する際、証明ユニットは、判定全体の何らかの最小限の部分を実際に実行するか、またはまったく実行せずに、そうした判定の残りの部分を受信者１６に委ねることができる点に留意されたい。こうした場合、証明ユニット２４は、ステップ３１３におけるように送信証明１８を構築して、受信者１６が判定の残りの部分を行うのに必要なすべての情報を含める。
【００３９】
証明ユニット２４および／またはアプリケーション２６は、本発明の趣旨および範囲から逸脱しない適切な方法でステップ３１３におけるように送信証明１８を構築することができる。例えば、本発明の一実施形態では、構築された送信証明１８は、証明ユニット２４からのステートメントを含み、このステートメントは、アプリケーション２６と、おそらくは使用されるハードウェア２０および／またはリソース２２と、またおそらくはそうしたアプリケーション２６、ハードウェア２０、および／またはリソース２２に関する関連情報、例えばその環境などについて記述する。理解できることであろうが、そうした関連情報は、送信証明１８を受け入れて承認するかどうかを決定する際に、および／または送信アイテム１４を受け入れて処理するかどうかを決定する際に、受信者１６によって使用することができる。構築された送信証明１８は、前述のアプリケーション２６、ハードウェア２０、および／またはリソース２２が確かに信用できる旨の証明ユニット２４からのステートメントを含むこともできるが、そうしたステートメントは、特に証明ユニット２４が、アプリケーション２６について記述するステートメントの発行を選択したという事実から暗に見て取れるため、絶対に必要とはみなされない点に留意されたい。
【００４０】
注目すべきことに、構築された送信証明１８は、送信アイテム１４について記述するステートメントと送信アイテム１４に関する関連情報も含む。とりわけ、そうしたステートメントは、証明ユニット２４またはアプリケーション２６から生じることができる。後者の場合、アプリケーション２６について記述する証明ユニット２４からのステートメントは、送信アイテム１４について記述するステートメントを発行するものとしてアプリケーション２６が信用できることを少なくとも暗に示す。ここで、証明ユニット２４またはアプリケーション２６からのステートメント内の送信アイテム１４に関する関連情報は、おそらく送信アイテム１４の構築に関連してユーザがキーボードのキーを複数回押したことおよび／またはマウスを複数回クリックしたこと、構築に要した時間、複数の受信者１６などのモニタされたデータを含む。理解できることであろうが、そうした関連情報は、送信証明１８を受け入れて承認するかどうかを決定する際に、および／または送信アイテム１４を受け入れて処理するかどうかを決定する際に、受信者１６によって使用することができる。やはり、構築された送信証明１８は、送信アイテム１４が確かに信用できる旨のステートメントを含むこともできるが、そうしたステートメントは、特に証明ユニット２４またはアプリケーション２６が、送信アイテム１４について記述するステートメントの発行を選択したという事実から暗に見て取れるため、絶対に必要とはみなされない点に留意されたい。
【００４１】
証明ユニット２４および／またはアプリケーション２６は、本発明の趣旨および範囲から逸脱しない任意の適切な方法でステップ３１５におけるように、構築された送信証明１８と構築された送信アイテム１４をパッケージすることができる。例えば、本発明の一実施形態では、送信証明１８を送信アイテム１４に添付し、証明ユニット２４の鍵に基づいて、組み合わせた送信アイテム１４／送信証明１８に署名し、組み合わせた送信アイテム１４／送信証明１８に添付される電子署名を形成する。知られているように、そうした電子署名は、おそらく受信者１６に知られて信用されているおおもとの当事者へと導く一連の証明書を含むかまたは参照することができる。
【００４２】
アプリケーション２６および／または証明ユニット２４は、本発明の趣旨および範囲から逸脱しない任意の適切な方法でステップ３１７におけるように、パッケージされた送信アイテム１４および送信証明１８を受信者１６に送信することができる。例えば、本発明の一実施形態では、証明ユニット２４／アプリケーション２６のコンピューティングデバイス１２は、イントラまたはインターネットワークなどのネットワークを介して受信者１６に結合され、その場合にパッケージ１４／１８は、相互に受け入れ可能なネットワーク通信プロトコルによる１または複数のネットワークパケットを介して送信することができる。
【００４３】
ここまでは、様々なアクションを実行する証明ユニット２４の観点から説明したが、証明ユニット２４は、安全なコンピューティング環境１０の証明、および安全なコンピューティング環境１０に関するステートメントの作成だけを行い、安全なコンピューティング環境１０がそうしたアクションのいくつかまたはすべてを実行することも可能である点に留意されたい。そうした場合、送信証明１８は、安全なコンピューティング環境１０について記述および証明するステートメントを含むことができる。
【００４４】
次に、図４を参照すると、送信アイテム１４および送信証明１８を伴うパッケージ１４／１８を受信すると（ステップ４０１）、受信者１６は、そこに含まれる各署名を検証する（ステップ４０３）。この署名は、証明ユニット２４の鍵に基づいており、かつ組み合わせた送信アイテム１４／送信証明１８に添付されているすべての署名を含む。その後、受信者１６は、パッケージ１４／１８からの送信証明１８内に記載されている証明ユニット２４からのステートメントを点検する（ステップ４０５）。詳細には受信者１６は、とりわけ、送信証明１８内に記載されているアプリケーション２６について記述するステートメントと、送信証明１８内に記載されている送信アイテム１４について記述するステートメントとに基づいて、送信アイテムを承認するかどうかを決定する。
【００４５】
本発明の一実施形態では、送信証明１８に記載されているステートメントは、受信者１６によってまたは受信者１６のために記載されている所定のポリシーに照らして、ステップ４０５におけるように点検される。そうした所定のポリシーは、本発明の趣旨および範囲から逸脱しない任意の適切なポリシーとすることができる。例えば、このようなポリシーは、記述されているアプリケーション２６が特定の型やバージョンでなければならないこと、またはそうした記述されているアプリケーション２６が特定の型やバージョンであってはならないことを記載することができる。同様に、ポリシーは、アプリケーション２６が動作している特定の環境、そうした環境内に存在するはずのない要素などを指定することができる。
【００４６】
同様に、送信アイテム１４自体に関してポリシーは、例えば、そうした送信アイテム１４の特定のフォーマット、特定の暗号化、そうした送信アイテムのコンテンツ上の制限、送信アイテム１４の受信者数の制限、送信アイテム内に存在すべき言葉、送信アイテム内に存在すべきでない言葉などを記載することができる。注目すべきことに、送信アイテム１４自体に関してポリシーは、送信アイテム１４に関連する特定のパラメータについて、とりわけ、行われた人間の取組みに基づいて送信アイテム１４が確かに構築されたかどうかを決定する可能性のある要因に関連する特定のパラメータについて、さらに記載することができる。理解できることであろうが、これに関してポリシーは、例えば、送信アイテム１４用の最小の構築時間、最小回数のキーボードキーの押下、最小回数のマウスクリック、単位時間あたりに送信される最大数の送信アイテム１４などを記載することができる。理解すべきことであるが、仮定によれば、受信者１６用に記載されるポリシーの各側面は、送信証明１８内のステートメントから得られる情報と比較することができる。
【００４７】
ステップ４０５におけるようにポリシーに基づいて送信証明１８内のステートメントを点検した後、受信者１６は、送信証明１８が実際にポリシーを満たしているかどうかに基づいて、送信アイテム１４を実際に承認するかどうかを決定する（ステップ４０７）。理解すべきことであるが、送信証明１８が実際にポリシーを満たしている場合、送信アイテム１４は承認され、受け入れられ、適切とみなされるいかなる方法によっても送信アイテム１４に基づいた行動が取られる（ステップ４０９）。例えば、送信アイテム１４が、受信者１６に関連付けられたユーザ用のメッセージである場合、そうした送信アイテム１４メッセージは、ユーザ用の受信領域などへ送達される。同様に、送信アイテム１４が、受信者１６または関連するエンティティからのサービスやオブジェクトを求める要求である場合、そうした送信アイテム１４／要求は、それらを処理できるサーバなどへ送達され、そうしたサービスやオブジェクトなどを提供する。
【００４８】
送信証明１８が実際にポリシーを満たしていない場合、送信アイテム１４は拒否され、承認されず、受け入れられず、また送信アイテム１４に基づいた行動は取られない（ステップ４１１）ことに留意されたい。そうした状況では、受信者１６はコンピューティングデバイス１２の送信者に簡潔な拒否メッセージや、拒否について説明する詳細なメッセージなどを返すことができる（ステップ４１３）。しかしながら、特に送信者が何らかの不正なエンティティである場合、いかなる返信メッセージもさらなる望ましくない要求や他の望ましくない注意喚起をもたらす可能性があり、こうした場合、そのような返信メッセージはおそらく推奨することができない。
【００４９】
また受信者１６は、拒否する状況では、それらを拒否フィルタに通知することもできる（ステップ４１５）。理解できることであろうが、そうした拒否フィルタは、拒否された要求の送信者からのさらなる要求を除去する。加えて、または別法として、受信者１６は、拒否する状況において、拒否された要求の送信者を、拒否された送信者のリストに追加することもできる（ステップ４１７）。この場合、その送信者からのさらなる要求は、除去されるのではなく、そうしたリスト上に記載されていることに基づいて異なる取扱いを受けることになる。
【００５０】
（結論）
本発明は、送信アイテム１４を受信者に送信する任意の適切な送信者に関して、そうした送信者および受信者１６が適切に構成されていることを前提に実施することができる。この時点で理解すべきことであるが、本明細書に記載の本発明については、送信アイテム１４を受信者へ送信することは、送信者によって行われた人間の取組みについて詳述する送信証明１８を送信アイテム１４に添付する方法で行うことができる。
【００５１】
本発明に関連して実行されるプロセスを実施するのに必要なプログラミングは、比較的簡単であり、関連するプログラミング業界には明らかなはずである。従って、そうしたプログラミングは本発明に属するものではない。本発明を実施する上で、本発明の趣旨および範囲から逸脱することなく任意の特定のプログラミングを採用することができる。
【００５２】
前述の説明から分かることは、本発明は、ＨＩＰ技術を実施するための新しく有用なアーキテクチャおよび方法を含み、人間によって行われる能動的な取組みを基本的に必要とせず、人間は、検出される自然な取組みを行うだけでよいということである。そうした検出された自然な取組みは、受信者１６に対して信用された証明ユニット２４によって信用された方法で検証され、これによって受信者１６は、検出された自然な取組みは実際に行われたものであり、受信者１６をだますことをもくろむ不正なエンティティによって企てられたものでは決してないことを確信することができる。
【００５３】
前述の実施形態に対して、その発明性のある発想から逸脱することなく変更を実施できることを理解されたい。最も注目すべきこととして、人間と送信アイテム１４の対話の証印を含めるためだけでなく、人間の対話、機械の対話、またはその他など、送信アイテム１４に関する任意の証印を含めるためにも本発明を使用できることを理解されたい。従って、例えば何らかの人間の対話が含まれていても、送信アプリケーション２６は単位時間あたりの最大数を超えて送信アイテム１４を送信していないことを受信者１６に明示するために、本発明を使用することができる。従って全般的に本発明は、開示された特定の実施形態に限定されるものではなく、添付の特許請求の範囲によって定義される本発明の趣旨および範囲内の修正を包含することを意図している点を理解されたい。
【図面の簡単な説明】
【００５４】
【図１】本発明および／またはその一部の態様を組み込むことができる汎用コンピュータシステムを示すブロック図である。
【図２】本発明の一実施形態にかかる送信アイテムおよび送信証明を受信者に送信する送信アプリケーションおよび証明ユニットを有するコンピューティングデバイスを示すブロック図である。
【図３】本発明の一実施形態にかかり、図２のコンピューティングデバイスにおいて実行される主要なステップを示す流れ図である。
【図４】本発明の一実施形態にかかり、図２の受信者において実行される主要なステップを示す流れ図である。
【符号の説明】
【００５５】
１０  安全なコンピューティング環境
１２  コンピューティングデバイス
１４  送信アイテム
１６  受信者
１８  送信証明
２０  ハードウェア
２２  リソース
２４  証明ユニット
２６  送信アプリケーション
【図１】
2006005921.tif 000003
【図２】
2006005921.tif 000004
【図３】
2006005921.tif 000005
【図４】
2006005921.tif 000006