(57)【要約】  受け手宛の電子的メッセージを処理するように指示される送り手側プロセスはメッセージの少なくとも一部を伴う計算問題の解を作り出すステップを含む。問題のを解くのに関連する計算量の程度が評価される。メッセージは計算量の程度が送り手または受け手により設定された範囲内であったかを決定することにより計算量の程度に従ってさらに処理され、そうでなければ、計算問題は調節されて再び解かれる。次に、メッセージは受け手へ送られ、問題および解の両方を通知される。受け手は受け手側プロセスを実行し、それはメッセージの発生に関連する計算量の程度を問題および解に基づいて評価するステップと、計算量の程度に従ってメッセージをさらに処理するステップとを含む。計算量の程度はメッセージの正当性、たとえば、それは「スパム」であるかを示す。
2008507013.tif 000002
【特許請求の範囲】
【請求項１】
電子メッセージを受信するステップと、
電子メッセージの発生に伴う計算量の程度を評価するステップと、
評価された計算量の程度に従って電子メッセージをさらに処理するステップと、
を含む方法。
【請求項２】
請求項１に記載の方法であって、電子メッセージはオリジナルメッセージを含む第１の部分とオリジナルメッセージの少なくとも一部を伴う計算問題を解いた結果を含む第２の部分とを有し、電子メッセージの発生に関連する計算量の程度の前記評価は計算問題を解くことに関連する計算量の程度を評価するステップを含む方法。
【請求項３】
請求項２に記載の方法であって、計算問題は定義により規定され、計算問題を解くのに関連する計算量の程度の前記評価は計算問題の定義に基づいて実施される方法。
【請求項４】
請求項２に記載の方法であって、計算問題は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は計算問題の定義と前記結果の組合せに基づいて実施される方法。
【請求項５】
請求項２に記載の方法であって、計算問題を解くことに関連する計算量の程度の前記評価は計算問題を解かずに計算問題の解を求めるべく試行するステップを含み、計算問題を解くことに関連する計算量の程度は試行の成功と逆相関するものと評価される方法。
【請求項６】
請求項２に記載の方法であって、計算問題を解くことに関連する計算量の程度の前記評価は定量的に実施される方法。
【請求項７】
請求項２に記載の方法であって、計算問題を解くことに関連する計算量の程度の前記評価は定性的に実施される方法。
【請求項８】
請求項２に記載の方法であって、計算問題を解くステップは電子メッセージの少なくとも一部をオリジナル記号列へ変換しオリジナル記号列に演算を実行して前記結果を得るステップを含み、前記方法は、さらに、
前記結果に演算の逆を適用して再構成された記号列を得るステップと、
再構成された記号列がオリジナル記号列に対応するかどうかを決定するステップと、を含み、
計算問題を解くことに関連する計算量の程度の前記評価はオリジナル記号列に対応する再構成された記号列に応答して実施される方法。
【請求項９】
請求項８に記載の方法であって、さらに、
電子メッセージの送り手から演算の知識を得るステップを含む方法。
【請求項１０】
請求項８に記載の方法であって、さらに、
電子メッセージの受信とは関係なく電子メッセージの送り手から演算の知識を得るステップを含む方法。
【請求項１１】
請求項８に記載の方法であって、
電子メッセージ内に含まれた情報から演算の逆の知識を引き出すステップを含む方法。
【請求項１２】
請求項８に記載の方法であって、さらに、
電子メッセージから演算の知識を引き出すステップを含む方法。
【請求項１３】
請求項１２に記載の方法であって、電子メッセージは演算を識別する第３の部分を含む方法。
【請求項１４】
請求項８に記載の方法であって、計算問題を解くことに関連する計算量の程度の前記評価はオリジナル記号列に演算を実行して前記結果を得ることに関連する計算量のレベルを決定するステップを含む方法。
【請求項１５】
請求項１４に記載の方法であって、オリジナル記号列に演算を実行して前記結果を得ることに関連する計算量のレベルの前記決定は、
受信電子メッセージを第２の記号列へ変換するステップと、
第２の記号列に演算を実行するステップと、を含む方法。
【請求項１６】
請求項８に記載の方法であって、計算問題を解くことに関連する計算量の程度の前記評価は、オリジナル記号列に演算が実行される場合に前記結果を得ることに関連する計算量の平均レベルを推定するステップを含む方法。
【請求項１７】
請求項８に記載の方法であって、演算は単向関数である方法。
【請求項１８】
請求項８に記載の方法であって、演算は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は演算の定義に基づいて実施される方法。
【請求項１９】
請求項２に記載の方法であって、計算問題を解くステップは電子メッセージの少なくとも一部をオリジナル記号列へ変換し、オリジナル記号列に第１の演算を実行して第１の中間積を得、かつ第１の中間積に第２の演算を行って前記結果を得るステップを含み、前記方法は、さらに、
オリジナル記号列に第１の演算を実行して第２の中間積を得るステップと、
前記結果に第２の演算の逆を実行して第２の中間積を得るステップと、
第２の中間積が第１の中間積に対応するかどうかを決定するステップと、を含み、
計算問題を解くことに関連する計算量の程度の前記評価は第１の中間積に対応する第２の中間積に応答して実施される方法。
【請求項２０】
請求項１９に記載の方法であって、さらに、
電子メッセージの送り手から第１の演算および第２の演算の少なくとも一方の知識を得るステップを含む方法。
【請求項２１】
請求項１９に記載の方法であって、さらに、
電子メッセージの受信とは関係なく電子メッセージの送り手から第１の演算および第２の演算の少なくとも一方の知識を得るステップを含む方法。
【請求項２２】
請求項１９に記載の方法であって、さらに、
電子メッセージから第１の演算および第２の演算の逆の少なくとも一方の知識を引き出すステップを含む方法。
【請求項２３】
請求項１９に記載の方法であって、さらに、
電子メッセージから第１の演算および第２の演算の少なくとも一方の知識を引き出すステップを含む方法。
【請求項２４】
請求項２３に記載の方法であって、電子メッセージは第１の演算および第２の演算の少なくとも一方を識別する第３の部分を含む方法。
【請求項２５】
請求項１９に記載の方法であって、計算問題を解くことに関連する計算量の程度の前記評価は第１の中間積に第２の演算を実行して前記結果を得ることに関連する計算量のレベルを決定するステップを含む方法。
【請求項２６】
請求項２５に記載の方法であって、第１の中間積に第２の演算を実行して前記結果を得ることに関連する計算量のレベルを決定する前記ステップは、
受信電子メッセージを第２の記号列へ変換するステップと、
第２の記号列に第２の演算を実行するステップと、を含む方法。
【請求項２７】
請求項２６に記載の方法であって、第２の記号列に第２の演算を実行するステップは第２の記号列を一組の素因子へ因数分解するステップを含む方法。
【請求項２８】
請求項２７に記載の方法であって、計算問題を解くことに関連する計算量の程度は一組の素因子の中の素因子のサイズに相関されるように評価される方法。
【請求項２９】
請求項２７に記載の方法であって、計算問題を解くことに関連する計算量の程度は一組の素因子の中の素因子の数と一組の素因子の中の素因子のサイズの組合せに相関されるように評価される方法。
【請求項３０】
請求項１９に記載の方法であって、計算問題を解くことに関連する計算量の程度の前記評価は、第１の中間積に第２の演算を実行して前記結果を得ることに関連する計算量の平均レベルを推定するステップを含む方法。
【請求項３１】
請求項１９に記載の方法であって、第１の演算はハッシュ関数である方法。
【請求項３２】
請求項３１に記載の方法であって、ハッシュ関数は非局所的である方法。
【請求項３３】
請求項３１に記載の方法であって、ハッシュ関数は少なくとも１つのパラメータに従って時間変動する方法。
【請求項３４】
請求項３３に記載の方法であって、さらに、電子メッセージの送り手からパラメータを受信するステップを含む方法。
【請求項３５】
請求項３３に記載の方法であって、さらに、電子メッセージの送り手ではないソースからパラメータを受信するステップを含む方法。
【請求項３６】
請求項１９に記載の方法であって、第１の演算を実行するステップは（ａ）オリジナル記号列を修正して修正記号列を得るステップと、（ｂ）修正記号列にハッシュ関数を適用するステップと、を含む方法。
【請求項３７】
請求項１９に記載の方法であって、第２の演算は単向関数である方法。
【請求項３８】
請求項３７に記載の方法であって、第２の演算は非局所的である方法。
【請求項３９】
請求項１９に記載の方法であって、第１の演算は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は第１の演算の定義に基づいて実施される方法。
【請求項４０】
請求項１９に記載の方法であって、第２の演算は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は第２の演算の定義に基づいて実施される方法。
【請求項４１】
請求項１９に記載の方法であって、第１および第２の演算は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は第１の演算の定義と第２の演算は定義の組合せに基づいて実施される方法。
【請求項４２】
請求項１９に記載の方法であって、第２の演算は暗号鍵により特徴づけられる暗号関数である方法。
【請求項４３】
請求項４２に記載の方法であって、さらに、暗号鍵の知識を得るステップを含む方法。
【請求項４４】
請求項１に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、さらに、
閾値を超えない評価された計算量の程度に応答して、電子メッセージを潜在的に正当ではないものとして分類する、ステップを含む方法。
【請求項４５】
請求項１に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、
評価された計算量の程度が閾値を超えるかどうかを決定するステップと、
閾値を超える評価された計算量の程度に応答して、電子メッセージを正当であるものとして分類するステップと、を含む方法。
【請求項４６】
請求項４５に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、さらに、
閾値を超えない評価された計算量の程度に応答して、電子メッセージを潜在的に正当ではないものとして分類する、ステップを含む方法。
【請求項４７】
請求項１に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、
評価された計算量の程度が閾値を下回るかどうかを決定するステップと、
閾値を下回る評価された計算量の程度に応答して、電子メッセージの再送信を要求するステップと、を含む方法。
【請求項４８】
請求項１に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、
評価された計算量の程度が閾値を超えるかどうかを決定するステップと、
閾値を超える評価された計算量の程度に応答して、電子メッセージの少なくとも一部をメールボックスに入れるステップと、を含む方法。
【請求項４９】
請求項４８に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、さらに、
閾値を超えない評価された計算量の程度に応答して、電子メッセージをメールボックスに入れないようにするステップと、を含む方法。
【請求項５０】
請求項４９に記載の方法であって、
電子メッセージをメールボックスに入れないようにするステップは電子メッセージを廃棄するステップを含む方法。
【請求項５１】
請求項１に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、
電子メッセージおよび評価された計算量の程度をメッセージングクライアントへ解放するステップを含む方法。
【請求項５２】
請求項１に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、
評価された計算量の程度が予め定められた範囲内に入るかどうかを決定するステップと、
予め定められた範囲内に入る評価された計算量の程度に応答して、電子メッセージを正当であるものとして分類するステップと、を含む方法。
【請求項５３】
請求項１に記載の方法であって、電子メッセージはデータ網を介してサードパーティに接続された受け手へ宛てられ、電子メッセージの発生に関連する計算量の程度の前記評価はサードパーティにおいて実行される方法。
【請求項５４】
請求項１に記載の方法であって、電子メッセージは電子メールメッセージを含む方法。
【請求項５５】
請求項１に記載の方法であって、電子メッセージはインスタントメッセージおよびショートメッセージサービス（ＳＭＳ）メッセージの少なくとも１つを含む方法。
【請求項５６】
請求項１に記載の方法であって、電子メッセージは物理的対象のイメージスキャンから引き出される部分を含む方法。
【請求項５７】
請求項１に記載の方法であって、電子メッセージはデジタル化された音声通信、オーディオのデジタル化されたセグメント、デジタル化された映像通信、およびデジタル化された映像片の少なくとも１つを含む方法。
【請求項５８】
請求項１に記載の方法であって、電子メッセージは広告を運ぶ方法。
【請求項５９】
請求項１に記載の方法であって、電子メッセージはテレマーケッティング通信を運ぶ方法。
【請求項６０】
請求項１に記載の方法であって、電子メッセージはコンピュータサーバへのアクセス要求を運ぶ方法。
【請求項６１】
請求項１に記載の方法であって、電子メッセージはデータベースへのアクセス要求を運ぶ方法。
【請求項６２】
請求項１に記載の方法であって、パーソナルコンピュータ、セルラー電話機、パーソナルデジタルアシスタント、コンピュータサーバおよびネットワーク電子通信装置の少なくとも１つの中のプロセッサにより実行される方法。
【請求項６３】
請求項１に記載の方法であって、さらに、電子メッセージに関連する緊急性の程度を評価するステップを含む方法。
【請求項６４】
請求項６３に記載の方法であって、電子メッセージは第１の時点を示すタイムスタンプを有するオリジナルメッセージを含む第１の部分、およびオリジナルメッセージの少なくとも一部を伴う演算の結果を含む第２の部分を有し、電子メッセージは第２の時点において受信され電子メッセージに関連する緊急性の程度の前記評価は、
第１の時点および第２の時点間の時間間隔を決定するステップと、
電子メッセージに関連する緊急性の程度が前記時間間隔と逆相関されるステップと、を含む方法。
【請求項６５】
受信電子メッセージを処理する方法を実施するためにコンピューティング装置により実行されるプログラムエレメントを含むコンピュータ読取可能記憶媒体であって、プログラムエレメントは、
電子メッセージの発生に関連する計算量の程度を評価するプログラムコード手段と、
評価された計算量の程度に従って電子メッセージをさらに処理するプログラムコード手段と、を含むコンピュータ読取可能記憶媒体。
【請求項６６】
電子メッセージを受信するステップと、
電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分を電子メッセージが含んでいるかを決定するステップと、
決定ステップの結果に従って電子メッセージをさらに処理するステップと、
を含む方法。
【請求項６７】
請求項６６に記載の方法であって、決定ステップの結果に従って電子メッセージをさらに処理するステップは、
電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分を電子メッセージは含んでいないという結論を決定ステップが出す場合には、電子メッセージをジャンクメッセージフォールダへ入れるステップ、を含む方法。
【請求項６８】
請求項６７に記載の方法であって、さらに、ジャンクメッセージフォールダへのアクセスを制限するステップを含む方法。
【請求項６９】
請求項６６に記載の方法であって、さらに、
電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分を電子メッセージが含んでいる場合、電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分の有効性を確立するステップと、
確立ステップの結果に従って電子メッセージをさらに処理するステップと、
を含む方法。
【請求項７０】
請求項６９に記載の方法であって、さらに、
（１）電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分を電子メッセージは含んでいないという結論を決定ステップが出す場合、または（２）電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分は有効ではないという結論を確立ステップが出す場合、電子メッセージをジャンクメッセージフォールダへ入れるステップ、を含む方法。
【請求項７１】
請求項７０に記載の方法であって、さらに、ジャンクメッセージフォールダへのアクセスを制限するステップを含む方法。
【請求項７２】
請求項６６に記載の方法であって、決定ステップの結果に従って電子メッセージをさらに処理するステップは、
電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分を電子メッセージは含んでいるという決定に応答して、電子メッセージを正当なメッセージフォールダへ入れるステップ、を含む方法。
【請求項７３】
請求項７２に記載の方法であって、決定ステップの結果に従って電子メッセージをさらに処理するステップは、
電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分を電子メッセージは含んでいないという決定に応答して、電子メッセージにフィルタを適用して電子メッセージをジャンクメッセージであるまたはジャンクメッセージではないものとして分類するステップと、
フィルタを適用した結果に従って電子メッセージをさらに処理するステップと、を含む方法。
【請求項７４】
請求項７３に記載の方法であって、フィルタを適用した結果に従って電子メッセージをさらに処理するステップは、
フィルタを適用して電子メッセージはジャンクメッセージであるという結論が出たら、電子メッセージをジャンクメッセージフォールダへ入れるステップ、を含む方法。
【請求項７５】
請求項７４に記載の方法であって、さらに、ジャンクメッセージフォールダへのアクセスを制限するステップを含む方法。
【請求項７６】
請求項７５に記載の方法であって、ジャンクメッセージフォールダへのアクセスはパスワードにより制限される方法。
【請求項７７】
請求項７４に記載の方法であって、フィルタを適用した結果に従って電子メッセージをさらに処理するステップは、
フィルタを適用して電子メッセージはジャンクメッセージではないという結論が出たら、電子メッセージを第３のフォールダへ入れるステップ、を含む方法。
【請求項７８】
請求項６６に記載の方法であって、決定ステップの結果に従って電子メッセージをさらに処理するステップは、
電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分を電子メッセージは含んでいるという決定に応答して、電子メッセージの発生に関連する計算量の程度を評価するステップと、
電子メッセージおよび評価された計算量の程度の連関をグラフィカルユーザインターフェイスを介してユーザへ運ぶステップと、を含む方法。
【請求項７９】
受信電子メッセージの処理方法を実施するコンピューティング装置が実行するプログラムエレメントを含むコンピュータ読取可能記憶媒体であって、プログラムエレメントは、
電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分を電子メッセージが含んでいるかどうかを決定するプログラムコード手段と、
決定ステップの結果に従って電子メッセージをさらに処理するプログラムコード手段と、
を含むコンピュータ読取可能記憶媒体。
【請求項８０】
プロセッサによりインプリメントされるグラフィカルユーザインターフェイスであって、
電子メッセージを運ぶことができる第１のディスプレイエリアと、
第１のディスプレイエリア内で運ばれる任意の電子メッセージに関連する正当性得点の表示を運ぶ第２のディスプレイエリアと、
を含むグラフィカルユーザインターフェイス。
【請求項８１】
請求項８０に記載のグラフィカルユーザインターフェイスであって、特定の電子メッセージに関連する正当性得点は少なくとも３つの潜在的な正当性得点の１つであるグラフィカルユーザインターフェイス。
【請求項８２】
請求項８０に記載のグラフィカルユーザインターフェイスであって、さらに、
アクションすると第１のディスプレイエリア内の任意の電子メッセージがそれらのそれぞれ関連する正当性得点に従ってランク付けされるようにするアクショナブル・ディスプレイエリアを含む、グラフィカルユーザインターフェイス。
【請求項８３】
グラフィカルユーザインターフェイスをインプリメントするコンピューティング装置が実行するプログラムエレメントを含むコンピュータ読取可能記憶媒体であって、プログラムエレメントは、
電子メッセージを運ぶことができる第１のディスプレイエリアをインプリメントするプログラムコード手段と、
第１のディスプレイエリア内で運ばれる任意の電子メッセージに関連する正当性得点の表示を運ぶ第２のディスプレイエリアをインプリメントするプログラムコード手段と、を含むコンピュータ読取可能記憶媒体。
【請求項８４】
プロセッサによりインプリメントされるグラフィカルユーザインターフェイスであって、
少なくとも３つのメッセージ・レポジトリの１つをユーザが選択できるようにするアクショナブル入力エリアであって、各メッセージ・レポジトリは電子メッセージを含むことができ、各メッセージ・レポジトリは各範囲内に正当性得点を有するメッセージに関連付けられているアクショナブル入力エリアを含み、
各電子メッセージの選択されたメッセージ・レポジトリ内に含まれる部分はユーザへグラフィカルに運ばれる、グラフィカルユーザインターフェイス。
【請求項８５】
請求項８４に記載のグラフィカルユーザインターフェイスであって、最初の１つのメッセージ・レポジトリ内の各電子メッセージの正当性得点は他の各メッセージ・レポジトリ内の各電子メッセージの正当性得点よりも高い、グラフィカルユーザインターフェイス。
【請求項８６】
グラフィカルユーザインターフェイスをインプリメントするコンピューティング装置が実行するプログラムエレメントを含むコンピュータ読取可能記憶媒体であって、プログラムエレメントは、
少なくとも３つのメッセージ・レポジトリの１つをユーザが選択できるようにするアクショナブル入力エリアをインプリメントするプログラムコード手段であって、各メッセージ・レポジトリは電子メッセージを含むことができ、各メッセージ・レポジトリは各正当性得点に関連付けられているプログラムコード手段と、
選択されたメッセージ・レポジトリ内の電子メッセージの一部をグラフィカルに運ぶプログラムコード手段と、
を含むコンピュータ読取可能記憶媒体。
【請求項８７】
受け手宛ての電子メッセージを処理する方法であって、
電子メッセージの少なくとも一部を伴う計算問題を解いて、計算問題の解を作り出すステップと、
計算問題を解くことに関連する計算量の程度を評価するステップと、
評価された計算量の程度に従って電子メッセージをさらに処理するステップと、を含む方法。
【請求項８８】
請求項８７に記載の方法であって、計算問題を解く前記ステップは電子メッセージの少なくとも一部をオリジナル記号列へ変換して、オリジナル記号列に演算を実行するステップを含む方法。
【請求項８９】
請求項８８に記載の方法であって、電子メッセージの少なくとも一部はその全体内に電子メッセージを含む方法。
【請求項９０】
請求項８８に記載の方法であって、オリジナル記号列に演算を実行するステップはオリジナル記号列にハッシュ関数を実行してハッシュ値を得、ハッシュ値に作業関数を実行して計算問題の解を得るステップを含む方法。
【請求項９１】
請求項９０に記載の方法であって、ハッシュ関数は非局所的である方法。
【請求項９２】
請求項９０に記載の方法であって、作業関数は非局所的である方法。
【請求項９３】
請求項９０に記載の方法であって、さらに、受け手にハッシュ関数および作業関数を通知するステップを含む方法。
【請求項９４】
請求項９０に記載の方法であって、作業関数は単向関数である方法。
【請求項９５】
請求項９０に記載の方法であって、ハッシュ値に作業関数を実行するステップはハッシュ値を一組の素因子へ因数分解するステップを含み、計算問題の解は一組の素因子を含む方法。
【請求項９６】
請求項９０に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理するステップは、
評価された計算量の程度が予め定められた範囲内に入るかどうかを決定するステップと、
予め定められた範囲内に入らない評価された計算量の程度に応答して、
オリジナル記号列を修正して修正記号列を生成し、
修正記号列にハッシュ関数を実行して新しいハッシュ値を得、新しいハッシュ値に作業関数を実行して計算問題の新しい解を得、
計算問題の新しい解を得ることに関連する計算量の程度を評価し、
計算問題の新しい解を得ることに関連する評価された計算量の程度に従って、修正電子メッセージをさらに処理するステップと、
を含む方法。
【請求項９７】
請求項８７に記載の方法であって、計算問題は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は計算問題の定義に基づいて実施される方法。
【請求項９８】
請求項９０に記載の方法であって、作業関数は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は作業関数の定義に基づいて実施される方法。
【請求項９９】
請求項９０に記載の方法であって、ハッシュ関数は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価はハッシュ関数の定義に基づいて実施される方法。
【請求項１００】
請求項８７に記載の方法であって、計算問題は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は計算問題の定義および計算問題の解の組合せに基づいて実施される方法。
【請求項１０１】
請求項９０に記載の方法であって、作業関数は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は作業関数の定義および計算問題の解の組合せに基づいて実施される方法。
【請求項１０２】
請求項９０に記載の方法であって、ハッシュ関数は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価はハッシュ関数の定義および計算問題の解の組合せに基づいて実施される方法。
【請求項１０３】
請求項８７に記載の方法であって、計算問題を解くことに関連する計算量の程度の前記評価は計算問題の解の単純性を決定するステップを含む方法。
【請求項１０４】
請求項９５に記載の方法であって、評価される計算問題を解くことに関連する計算量の程度は一組の素因子の中の素因子のサイズに相関するものと評価される方法。
【請求項１０５】
請求項９５に記載の方法であって、評価される計算問題を解くことに関連する計算量の程度は一組の素因子の中の素因子の数と一組の素因子の中の素因子のサイズとの組合せに相関するものと評価される方法。
【請求項１０６】
請求項８７に記載の方法であって、計算問題を解くのに関連する計算量の程度の前記評価は計算問題を解かずに計算問題の解を求めるべく試行するステップを含み、計算問題を解くのに関連する計算量の程度は試行の成功と逆相関するものと評価される方法。
【請求項１０７】
請求項８７に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理するステップは、
評価された計算量の程度が閾値を超えるかどうかを決定するステップと、
閾値を超える評価された計算量の程度に応答して、電子メッセージを受け手へ送信し計算問題の解を受け手に通知するステップと、を含む方法。
【請求項１０８】
請求項１０７に記載の方法であって、閾値は電子メッセージの送り手により指定することができ、前記方法は、さらに、閾値を受信するステップを含む方法。
【請求項１０９】
請求項１０７に記載の方法であって、計算問題の解を受け手に通知する前記ステップは計算問題の解を電子メッセージと共に送信される補助メッセージ内に含めるステップを含む方法。
【請求項１１０】
請求項１０９に記載の方法であって、計算問題は定義により規定され、前記方法は、さらに、計算問題の定義を受け手に通知するステップを含む方法。
【請求項１１１】
請求項１１０に記載の方法であって、計算問題の定義を受け手に通知する前記ステップは計算問題の定義を補助メッセージ内に含めるステップを含む方法。
【請求項１１２】
請求項８７に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理するステップは、
評価された計算量の程度が予め定められた範囲内に入るかどうかを決定するステップと、
予め定められた範囲内に入る評価された計算量の程度に応答して、電子メッセージを受け手へ送信し計算問題の解を受け手に通知するステップと、を含む方法。
【請求項１１３】
請求項１０７に記載の方法であって、計算問題は初期計算問題であり、評価された計算量の程度に従って電子メッセージをさらに処理するステップは、
閾値を超える評価された計算量の程度に応答して、さらに、
（ａ）電子メッセージの少なくとも一部を伴う新しい計算問題を解いて、新しい計算問題の解を作り出すステップと、
（ｂ）新しい計算問題を解くことに関連する計算量の程度を評価するステップと、
（ｃ）新しい計算問題を解くことに関連する評価された計算量の程度に従って電子メッセージをさらに処理するステップと、
を含む方法。
【請求項１１４】
請求項１１３に記載の方法であって、新しい計算問題を解くことに関連する評価された計算量の程度に従って電子メッセージをさらに処理するステップは、
新しい計算問題を解くことに関連する評価された計算量の程度が閾値を超えるかどうかを決定するステップと、
新しい計算問題を解くことに関連する評価された計算量の程度が閾値を超えることに応答して、電子メッセージを受け手に送信して新しい計算問題の解を受け手に通知するステップと、
を含む方法。
【請求項１１５】
請求項１１４に記載の方法であって、新しい計算問題の解を受け手に通知する前記ステップは新しい計算問題の解を電子メッセージと共に送信される補助メッセージ内に含めるステップを含む方法。
【請求項１１６】
請求項１１５に記載の方法であって、初期計算問題および新しい計算問題の各々が各定義により規定され、新しい計算問題の定義は初期計算問題の定義とは異なる方法。
【請求項１１７】
請求項１１６に記載の方法であって、前記方法は、さらに、受け手に新しい計算問題の定義を通知するステップを含む方法。
【請求項１１８】
請求項１１７に記載の方法であって、新しい計算問題の定義を受け手に通知する前記ステップは新しい計算問題の定義を補助メッセージ内に含めるステップを含む方法。
【請求項１１９】
請求項１１８に記載の方法であって、新しい計算問題を解く前記ステップは電子メッセージの少なくとも一部をオリジナル記号列へ変換してオリジナル記号列の演算を実行するステップを含む方法。
【請求項１２０】
請求項１１９に記載の方法であって、オリジナル記号列の演算を実行するステップはオリジナル記号列にハッシュ関数を実行してハッシュ値を得、ハッシュ値に作業関数を実行して計算問題の解を得るステップを含む方法。
【請求項１２１】
請求項１２０に記載の方法であって、前記方法は、さらに、受け手にハッシュ関数および作業関数を通知するステップを含む方法。
【請求項１２２】
請求項１２０に記載の方法であって、作業関数は単向関数である方法。
【請求項１２３】
請求項１２０に記載の方法であって、ハッシュ値に作業関数を実行するステップはハッシュ値を一組の素因子へ因数分解するステップを含み、新しい計算問題の解は一組の素因子を含む方法。
【請求項１２４】
請求項１２０に記載の方法であって、初期計算問題を解くステップは電子メッセージの少なくとも一部を初期記号列へ変換して初期記号列の初期演算を実行するステップを含む方法。
【請求項１２５】
請求項１２４に記載の方法であって、ハッシュ関数は新しいハッシュ関数であり、作業関数は新しい作業関数であり、初期記号列の初期演算を実行するステップは初期記号列に初期ハッシュ関数を実行して初期ハッシュ値を得、初期ハッシュ値に初期作業関数を実行して初期計算問題の解を得るステップを含む方法。
【請求項１２６】
請求項１２５に記載の方法であって、新しいハッシュ関数は初期ハッシュ関数とは異なる方法。
【請求項１２７】
請求項１２６に記載の方法であって、新しい作業関数は初期作業関数と同一である方法。
【請求項１２８】
請求項１２６に記載の方法であって、新しい作業関数は初期作業関数とは異なる方法。
【請求項１２９】
請求項１２５に記載の方法であって、新しいハッシュ関数は初期ハッシュ関数と同一である方法。
【請求項１３０】
請求項１２９に記載の方法であって、新しい作業関数は初期作業関数とは異なる方法。
【請求項１３１】
請求項１１３に記載の方法であって、新しい計算問題を解くことに関連する評価された計算量の程度に従って電子メッセージを処理するステップは、
新しい計算問題を解くことに関連する評価された計算量の程度が閾値を超えないことに応答して、ステップ（ａ），（ｂ）および（ｃ）を繰り返すステップを含む方法。
【請求項１３２】
請求項１１３に記載の方法であって、新しい計算問題を解くことに関連する評価された計算量の程度に従って電子メッセージを処理するステップは、
新しい計算問題を解くことに関連する評価された計算量の程度が閾値を超えないことに応答して、ステップ（ａ），（ｂ）および（ｃ）を間断なく繰り返して、予め定められた時間量が経過するまで一連の計算問題を解くステップと、
電子メッセージを受け手に送って一連の計算問題の中の少なくとも１つの計算問題の解を受け手に通知するステップと、を含む方法。
【請求項１３３】
請求項１３２に記載の方法であって、一連の計算問題の中の少なくとも１つの計算問題の解を受け手に通知する前記ステップは、計算量の程度が最大である一連の計算問題の中の１つの計算問題の解を受け手に通知するステップを含む方法。
【請求項１３４】
請求項１３２に記載の方法であって、一連の計算問題の中の少なくとも１つの計算問題の解を受け手に通知する前記ステップは、最も最近の計算問題の解を受け手に通知するステップを含む方法。
【請求項１３５】
請求項１３２に記載の方法であって、一連の計算問題の中の少なくとも１つの計算問題の解を受け手に通知する前記ステップは、一連の計算問題の中の全計算問題の解を受け手に通知するステップを含む方法。
【請求項１３６】
請求項１１２に記載の方法であって、計算問題は初期計算問題であり、評価された計算量の程度に従って電子メッセージをさらに処理するステップは、さらに、
評価された計算量の程度が予め定められた範囲内に入らないことに応答して、
電子メッセージの少なくとも一部を伴う新しい計算問題を解いて、新しい計算問題の解を作り出すステップと、
新しい計算問題を解くことに関連する計算量の程度を評価するステップと、
新しい計算問題を解くことに関連する評価された計算量の程度に従って電子メッセージをさらに処理するステップと、
を含む方法。
【請求項１３７】
請求項１０７に記載の方法であって、計算問題は初期計算問題であり、評価された計算量の程度に従って電子メッセージをさらに処理するステップは、
評価された計算量の程度が閾値を超えないことに応答して、
電子メッセージを修正して修正電子メッセージを生成するステップと、
修正電子メッセージの少なくとも一部を伴う新しい計算問題を解くステップと、
新しい計算問題を解くことに関連する計算量の程度を評価するステップと、
新しい計算問題を解くことに関連する評価された計算量の程度に従って、修正電子メッセージをさらに処理するステップと、
を含む方法。
【請求項１３８】
請求項１３７に記載の方法であって、新しい計算問題を解くことに関連する評価された計算量の程度に従って電子メッセージをさらに処理するステップは、
新しい計算問題を解くことに関連する評価された計算量の程度が閾値を超えるかどうかを決定するステップと、
新しい計算問題を解くことに関連する評価された計算量の程度が閾値を超えることに応答して、修正電子メッセージを受け手に送信して新しい計算問題の解を受け手に通知するステップと、
を含む方法。
【請求項１３９】
請求項１３８に記載の方法であって、新しい計算問題の解を受け手に通知する前記ステップは新しい計算問題の解を修正電子メッセージと共に送信される補助メッセージ内に含めるステップを含む方法。
【請求項１４０】
請求項１３９に記載の方法であって、初期計算問題および新しい計算問題の各々が各定義により規定され、新しい計算問題の定義は初期計算問題の定義と同じである方法。
【請求項１４１】
請求項１４０に記載の方法であって、前記方法は、さらに、受け手に新しい計算問題の定義を通知するステップを含む方法。
【請求項１４２】
請求項１４１に記載の方法であって、新しい計算問題の定義を受け手に通知する前記ステップは新しい計算問題の定義を修正補助メッセージ内に含めるステップを含む方法。
【請求項１４３】
請求項１４２に記載の方法であって、新しい計算問題を解く前記ステップは修正電子メッセージの少なくとも一部をオリジナル記号列へ変換してオリジナル記号列の演算を実行するステップを含む方法。
【請求項１４４】
請求項１４３に記載の方法であって、オリジナル記号列の演算を実行するステップはオリジナル記号列にハッシュ関数を実行してハッシュ値を得、ハッシュ値に作業関数を実行して計算問題の解を得るステップを含む方法。
【請求項１４５】
請求項１４４に記載の方法であって、前記方法は、さらに、受け手にハッシュ関数および作業関数を通知するステップを含む方法。
【請求項１４６】
請求項１４４に記載の方法であって、作業関数は単向関数である方法。
【請求項１４７】
請求項１４４に記載の方法であって、ハッシュ値に作業関数を実行するステップはハッシュ値を一組の素因子へ因数分解するステップを含み、新しい計算問題の解は一組の素因子を含む方法。
【請求項１４８】
請求項１３７に記載の方法であって、新しい計算問題を解くことに関連する評価された計算量の程度に従って電子メッセージを処理するステップは、
新しい計算問題を解くことに関連する評価された計算量の程度が閾値を超えないことに応答して、
修正電子メッセージを修正してさらなる修正電子メッセージを生成するステップと、
さらなる修正電子メッセージの少なくとも一部を伴うさらなる新しい計算問題を解くステップと、
さらなる新しい計算問題を解くことに関連する計算量の程度を評価するステップと、
さらなる新しい計算問題を解くことに関連する評価された計算量の程度に従って、さらなる修正電子メッセージをさらに処理するステップと、
を含む方法。
【請求項１４９】
請求項１１２に記載の方法であって、計算問題は初期計算問題であり、評価された計算量の程度に従って電子メッセージをさらに処理するステップは、
評価された計算量の程度が予め定められた範囲内に入らないことに応答して、
電子メッセージを修正して修正電子メッセージを生成するステップと、
修正電子メッセージの少なくとも一部を伴う新しい新しい計算問題を解くステップと、
新しい計算問題を解くことに関連する計算量の程度を評価するステップと、
新しい計算問題を解くことに関連する評価された計算量の程度に従って、修正電子メッセージをさらに処理するステップと、
を含む方法。
【請求項１５０】
請求項１０７に記載の方法であって、計算問題は初期計算問題であり、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、
閾値を超えない評価された計算量の程度に応答して、さらに、
（ａ）電子メッセージを初期計算問題の解と組み合わせて修正電子メッセージを生成するステップと、
（ｂ）修正電子メッセージの少なくとも一部を伴う新しい計算問題を解くステップと、
（ｃ）新しい計算問題を解くことに関連する計算量の程度を評価するステップと、
（ｄ）初期計算問題を解くことおよび新しい計算問題を解くことに関連する評価された全体計算量の程度に従って修正電子メッセージをさらに処理するステップと、
を含む方法。
【請求項１５１】
請求項１５０に記載の方法であって、初期計算問題を解くことおよび新しい計算問題を解くことに関連する評価された全体計算量の程度に従って電子メッセージをさらに処理するステップは、
初期計算問題を解くことおよび新しい計算問題を解くことに関連する評価された全体計算量の程度が閾値を超えるかどうかを決定するステップと、
初期計算問題を解くことおよび新しい計算問題を解くことに関連する評価された全体計算量の程度が閾値を超えることに応答して、修正電子メッセージを受け手に送信して新しい計算問題の解を受け手に通知するステップと、
を含む方法。
【請求項１５２】
請求項１５１に記載の方法であって、新しい計算問題を解く前記ステップは修正電子メッセージの少なくとも一部をオリジナル記号列へ変換してオリジナル記号列の演算を実行するステップを含む方法。
【請求項１５３】
請求項１５２に記載の方法であって、オリジナル記号列の演算を実行するステップはオリジナル記号列にハッシュ関数を実行してハッシュ値を得、ハッシュ値に作業関数を実行して新しい計算問題の解を得るステップを含む方法。
【請求項１５４】
請求項１５３に記載の方法であって、前記方法は、さらに、受け手にハッシュ関数および作業関数を通知するステップを含む方法。
【請求項１５５】
請求項１５３に記載の方法であって、作業関数は単向関数である方法。
【請求項１５６】
請求項１５３に記載の方法であって、ハッシュ値に作業関数を実行するステップはハッシュ値を一組の素因子へ因数分解するステップを含み、新しい計算問題の解は一組の素因子を含む方法。
【請求項１５７】
請求項１５０に記載の方法であって、新しい計算問題を解くことに関連する評価された計算量の程度に従って電子メッセージを処理するステップは、さらに、
初期計算問題を解くことおよび新しい計算問題を解くことに関連する評価された全体計算量の程度が閾値を超えないことに応答して、
修正電子メッセージを新しい計算問題の解と組み合わせてさらなる修正電子メッセージを生成するステップと、
さらなる修正電子メッセージの少なくとも一部を伴うさらなる新しい計算問題を解くステップと、
さらなる新しい計算問題を解くことに関連する計算量の程度を評価するステップと、
初期計算問題を解くこと、新しい計算問題を解くことおよびさらなる新しい計算問題を解くことに関連する評価された全体計算量の程度に従ってさらなる修正電子メッセージをさらに処理するステップと、
を含む方法。
【請求項１５８】
請求項１１２に記載の方法であって、計算問題は初期計算問題であり、評価された計算量の程度に従って電子メッセージをさらに処理するステップは、さらに、
評価された計算量の程度が予め定められた範囲内に入らないことに応答して、
電子メッセージを初期計算問題の解と組み合わせて修正電子メッセージを生成するステップと、
修正電子メッセージの少なくとも一部を伴う新しい計算問題を解くステップと、
新しい計算問題を解くことに関連する計算量の程度を評価するステップと、
初期計算問題を解くことおよび新しい計算問題を解くことに関連する評価された全体計算量の程度に従って修正電子メッセージをさらに処理するステップと、
を含む方法。
【請求項１５９】
請求項８７に記載の方法であって、電子メッセージはヘッダーおよびボディを含み、ヘッダーは少なくとも送り手のアドレスおよび受け手のアドレスを示し、組合せ問題はヘッダーの少なくとも一部およびボディの少なくとも一部の関数である方法。
【請求項１６０】
請求項１５９に記載の方法であって、電子メッセージは、さらに、補助データを含む方法。
【請求項１６１】
請求項１６０に記載の方法であって、計算問題は、さらに、補助データの関数である方法。
【請求項１６２】
請求項１６１に記載の方法であって、補助データは時空間座標を含む方法。
【請求項１６３】
請求項１６２に記載の方法であって、時空間座標は時間を含む方法。
【請求項１６４】
請求項１６１に記載の方法であって、補助データは公に入手可能で検証可能なデータを含む方法。
【請求項１６５】
請求項１６１に記載の方法であって、補助データは数字鍵を含む方法。
【請求項１６６】
請求項８７に記載の方法であって、電子メッセージはデータ網を介してサードパーティに接続された送り手から発信され、計算問題を解く前記ステップはサードパーティにおいて実行される方法。
【請求項１６７】
請求項８７に記載の方法であって、電子メッセージは電子メールメッセージを含む方法。
【請求項１６８】
請求項８７に記載の方法であって、電子メッセージはインスタントメッセージおよびショートメッセージサービス（ＳＭＳ）メッセージの少なくとも一方を含む方法。
【請求項１６９】
請求項８７に記載の方法であって、電子メッセージは物理的対象のイメージスキャンから引き出される部分を含む方法。
【請求項１７０】
請求項８７に記載の方法であって、電子メッセージはデジタル化された音声通信、オーディオのデジタル化されたセグメント、デジタル化された映像通信およびデジタル化された映像片の少なくとも１つを含む方法。
【請求項１７１】
請求項８７に記載の方法であって、電子メッセージはヘッダーおよびボディを含み、ヘッダーは受け手を識別する情報を含み、計算問題はヘッダー内の情報および追加情報を付加されるボディの関数である方法。
【請求項１７２】
受け手宛て電子メッセージを処理する方法を実施するコンピューティング装置が実行するプログラムエレメントを含むコンピュータ読取可能記憶媒体であって、プログラムエレメントは、
電子メッセージの少なくとも一部を伴う計算問題を解いて、計算問題の解を作り出すプログラムコード手段と、
計算問題を解くことに関連する計算量の程度を評価するプログラムコード手段と、
評価された計算量の程度に従って電子メッセージをさらに処理するプログラムコード手段と、
を含むコンピュータ読取可能記憶媒体。
【請求項１７３】
請求項１２９に記載の方法であって、新しい作業関数は初期作業関数と同一である方法。
【請求項１７４】
電子メッセージを受け手へ送る方法であって、
電子メッセージの少なくとも一部を伴う計算問題を解いて、計算問題の解を作り出すステップと、
電子メッセージを含む第１のメッセージを受け手へ送信するステップと、
計算問題の解を受け手に通知するステップと、
第１のメッセージとは異なる第２のメッセージ内でトラップドア情報を受け手へ送信するステップと、を含み、
計算問題を解く前記ステップは電子メッセージの少なくとも一部をオリジナル記号列へ変換しオリジナル記号列に演算を実行するステップを含み、
トラップドア情報は受け手において演算の逆を解くのを容易にする方法。
【請求項１７５】
請求項１７４に記載の方法であって、計算問題を解く前記ステップは電子メッセージの少なくとも一部をオリジナル記号列へ変換しオリジナル記号列に演算を実行するステップを含む方法。
【請求項１７６】
請求項１７４に記載の方法であって、オリジナル記号列の演算を実行するステップはオリジナル記号列にハッシュ関数を実行してハッシュ値を得、ハッシュ値に作業関数を実行して計算問題の解を得るステップを含む方法。
【請求項１７７】
請求項１７５に記載の方法であって、前記方法は、さらに、受け手にハッシュ関数および作業関数を通知するステップを含む方法。
【請求項１７８】
請求項１７５に記載の方法であって、ハッシュ値に作業関数を実行するステップはハッシュ値を一組の素因子へ因数分解するステップを含み、計算問題の解は一組の素因子を含む方法。
【請求項１７９】
請求項１７４に記載の方法であって、計算問題の解を受け手に通知する前記ステップは計算問題の解を電子メッセージと共に送信される補助メッセージ内に含めるステップを含む方法。
【請求項１８０】
請求項１７８に記載の方法であって、計算問題は定義により規定され、前記方法は、さらに、計算問題の定義を受け手に通知するステップを含む方法。
【請求項１８１】
請求項１７９に記載の方法であって、計算問題の定義を受け手に通知する前記ステップは計算問題の定義を補助メッセージ内に含めるステップを含む方法。
【請求項１８２】
請求項１７４に記載の方法であって、さらに、計算問題を解くことに関連する計算量の程度を評価するステップを含む方法。
【請求項１８３】
請求項１８１に記載の方法であって、さらに、
計算問題を解くことに関連する計算量の程度が閾値を超えるかどうかを決定するステップを含み、
送信するステップは閾値を超えることに応答して実行される方法。
【請求項１８４】
請求項１８２に記載の方法であって、
通知するステップは閾値を超えることに応答して実行される方法。
【請求項１８５】
請求項１８２に記載の方法であって、計算問題は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は計算問題の定義に基づいて実施される方法。
【請求項１８６】
請求項１８２に記載の方法であって、計算問題は定義により規定され、計算問題を解くことに関連する計算量の程度の前記評価は計算問題の定義および計算問題の解の組合せに基づいて実施される方法。
【請求項１８７】
請求項１８２に記載の方法であって、計算問題を解くことに関連する計算量の程度の前記評価は計算問題を解かずに計算問題の解を求めるべく試行するステップを含み、計算問題を解くことに関連する計算量の程度は試行の成功と逆相関するものと評価される方法。
【請求項１８８】
電子メッセージを受け手へ送る方法を実施するコンピューティング装置が実行するプログラムエレメントを含むコンピュータ読取可能記憶媒体であって、プログラムエレメントは、
電子メッセージの少なくとも一部を伴う計算問題を解いて、計算問題の解を作り出すためのプログラムコード手段と、
電子メッセージを含む第１のメッセージを受け手へ送信するプログラムコード手段と、
計算問題の解を受け手に通知するプログラムコード手段と、
第１のメッセージとは異なる第２のメッセージ内でトラップドア情報を受け手へ送信するプログラムコード手段と、を含み、
計算問題を解く前記ステップは電子メッセージの少なくとも一部をオリジナル記号列へ変換しオリジナル記号列に演算を実行するステップを含み、
トラップドア情報は受け手において演算の逆を解くのを容易にする方法。
【請求項１８９】
電子メッセージを受け手へ送る方法であって、
電子メッセージの少なくとも一部を伴う第１番目の計算問題を解いて、第１番目の計算問題の解を作り出すステップと、
各ｊ，２≦ｊ≦Ｊに対して、電子メッセージの少なくとも一部および第（ｊ−１）番目の計算問題の解を伴う第ｊ番目の計算問題を解いて、第ｊ番目の計算問題の解を作り出すステップと、
電子メッセージを受け手へ送信するステップと、
第１番目，．．．，第ｊ番目の計算問題の解を受け手へ通知するステップと、
を含む方法。
【請求項１９０】
請求項１８８に記載の方法であって、第１番目，．．．，第ｊ番目の各計算問題の解を受け手へ通知する前記ステップは第１番目，．．．，第ｊ番目の計算問題の解を電子メッセージと共に送信される補助メッセージ内に含めるステップを含む方法。
【請求項１９１】
請求項１８８に記載の方法であって、第１番目，．．．，第ｊ番目の各計算問題の解を受け手へ通知する前記ステップは第１番目，．．．，第ｊ番目の計算問題の解を電子メッセージを含む付加されたメッセージ内に含めるステップを含む方法。
【請求項１９２】
請求項１８８に記載の方法であって、Ｊの計算問題の各々が各定義により規定されＪの計算問題の少なくとも２つの定義は異なる方法。
【請求項１９３】
請求項１８８に記載の方法であって、Ｊの計算問題の各々が各定義により規定されＪの計算問題の各々の定義が同一である方法。
【請求項１９４】
電子メッセージを受け手へ送る方法を実施するためにコンピューティング装置が実行するプログラムエレメントを含むコンピュータ読取可能記憶媒体であって、プログラムエレメントは、
電子メッセージの少なくとも一部を伴う第１番目の計算問題を解いて、第１番目の計算問題の解を作り出すプログラムコード手段と、
各ｊ，２≦ｊ≦Ｊに対して、電子メッセージの少なくとも一部および第（ｊ−１）番目の計算問題の解を伴う第ｊ番目の計算問題を解いて、第ｊ番目の計算問題の解を作り出すプログラムコード手段と、
電子メッセージを受け手へ送信するプログラムコード手段と、
第１番目，．．．，第ｊ番目の各計算問題の解を受け手へ通知するプログラムコード手段と、
を含む方法。
【請求項１９５】
受け手宛電子メッセージを処理する方法であって、
電子メッセージに関連する計算量閾値の知識を得るステップと、
電子メッセージの少なくとも一部を伴う計算問題を解いて、計算問題の解を作り出すステップと、
計算問題を解くことに関連する計算量の程度を評価するステップと、
計算量閾値を超える評価された計算量の程度に応答して、電子メッセージを受け手へ送信し計算問題の解を受け手に通知するステップと、
を含む方法。
【請求項１９６】
請求項１９４に記載の方法であって、計算問題を解く前記ステップは送り手からの考慮すべき事柄の受信に応答して実施される方法。
【請求項１９７】
請求項１９５に記載の方法であって、前記考慮すべき事柄は金銭上の事柄である方法。
【請求項１９８】
請求項１９６に記載の方法であって、さらに、受け手への電子メッセージの送信を送り手に通知するステップを含む方法。
【請求項１９９】
電子メッセージを受け手へ送る方法を実施するためにコンピューティング装置が実行するプログラムエレメントを含むコンピュータ読取可能記憶媒体であって、プログラムエレメントは、
電子メッセージに関連する計算量閾値の知識を得るためのプログラムコード手段と、
電子メッセージの少なくとも一部を伴う計算問題を解いて、計算問題の解を作り出すプログラムコード手段と、
計算問題を解くことに関連する計算量の程度を評価するプログラムコード手段と、
計算量閾値を超える評価された計算量の程度に応答して、電子メッセージを受け手へ送信し計算問題の解を受け手に通知するプログラムコード手段と、
を含むコンピュータ読取可能記憶媒体。
【請求項２００】
請求項１に記載の方法であって、評価された計算量の程度に従って電子メッセージをさらに処理する前記ステップは、
評価された計算量の程度が閾値を超えるかどうかを決定するステップと、
閾値を超える評価された計算量の程度に応答して、電子メッセージを画面上にディスプレイするステップと、を含む方法。
【請求項２０１】
請求項１９９に記載の方法であって、電子メッセージは広告を含む一片の映像である方法。
【請求項２０２】
複数の電子メッセージを受信するステップと、
各電子メッセージの発生に関連する計算量の程度を評価するステップと、
評価された計算量の程度に基づいて電子メッセージを画面上に階層的にディスプレイさせるステップと、
を含む方法。
【請求項２０３】
電子メッセージを受け手へ送る方法を実施するためにコンピューティング装置が実行するプログラムエレメントを含むコンピュータ読取可能記憶媒体であって、プログラムエレメントは、
複数の電子メッセージを受信するプログラムコード手段と、
各電子メッセージの発生に関連する計算量の程度を評価するプログラムコード手段と、
評価された計算量の程度に基づいて電子メッセージを画面上に階層的にディスプレイさせるプログラムコード手段と、
を含むコンピュータ読取可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（発明の分野）
本発明は一般的に通信に関し、特に、通信の正当性を確立する方法およびシステムに関する。
【背景技術】
【０００２】
（発明の背景）
一般的に「ジャンクメール」、「ジャンクメッセージ」、「ジャンク通信」または「スパム(ｓｐａｍ)」と呼ばれる余計な通信は、送り手から受け手へのメッセージの価値や重要性が、一般的に、サードパーティにより予測できないため精密に定義するのが困難な概念である。事実、多くの場合送り手自身が受け手（たとえば、潜在的顧客）へのメッセージの価値や重要性を推定するのさえ容易ではなく、受け手がメッセージまたはそのある部分を実際に読まずにそれの価値や重要性を推定するのも必ずしも容易ではない。
【０００３】
これらの事実が受け入れられると、その中のアドレス、単語および表現だけに基づいて着信メッセージについて結論を出す従来のスパム管理技術は不十分であることは明らかである。特に、キーワード、ヒューリスティクス、ベイズフィルタ等の使用は無作為性や予測不能性の要素を導入したり、正当な通信の様相を与えるように設計される要素を挿入する慎重に作られたジャンクメールを見落としてしまう。一方、従来のフィルタを非常に制約的に挙動するように設定すると、余計な通信のある目印（たとえば、キーワードやハイパーリンク）を含んではいるが実際には正当であるメッセージが所期の受け手に送られずに廃棄されてしまう現象である「擬陽性」の発生が増す。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
したがって、産業がジャンクメッセージの発生に対抗する代替ソリューションを必要としているのは明らかである。
【課題を解決するための手段】
【０００５】
（発明の概要）
第１の広範な側面に従って、本発明は電子メッセージを受信し、電子メッセージの発生に関連する計算量の程度を評価し、さらに評価した計算量の程度に従って電子メッセージをさらに処理するステップを含む方法と要約することができる。
【０００６】
第２の広範な側面に従って、本発明は電子メッセージを受信し、電子メッセージの発生に関連する計算量の程度を受け手が評価できるようにする部分を電子メッセージが含んでいるかを決定し、決定ステップの結果に従って電子メッセージをさらに処理するステップを含む方法と要約することができる。
【０００７】
第３の広範な側面に従って、本発明は電子メッセージを運ぶことができる第１のディスプレイエリア、および第１のディスプレイエリア内で運ばれる任意の電子メッセージに関連する正当性得点の表示を運ぶ第２のディスプレイエリアを含むプロセッサにより実現されるグラフィカル・ユーザ・インターフェイスと要約することができる。
【０００８】
第４の広範な側面に従って、本発明は各々が電子メッセージを含むことができ、各々が各正当性得点と関連付けられる少なくとも３つのメッセージ・レポジトリの１つをユーザが選択できるようにするアクショナブル入力エリアを含むプロセッサにより実現され、選択されたメッセージ・レポジトリ内に含まれる各電子メッセージの一部はユーザへグラフィカルに運ばれるグラフィカル・ユーザ・インターフェイスと要約することができる。
【０００９】
第５の広範な側面に従って、本発明は電子メッセージの少なくとも一部を伴う計算問題を解いてその解を作り出し、計算問題を解くのに関連する計算量の程度を評価し、評価した計算量の程度に従って電子メッセージをさらに処理するステップを含む受け手宛電子メッセージの処理方法と要約することができる。
【００１０】
第６の広範な側面に従って、本発明は電子メッセージの少なくとも一部を伴う計算問題を解いてその解を作り出し、電子メッセージを含む第１のメッセージを受け手へ送り、計算問題の解を受け手に通知し、第１のメッセージとは異なる第２のメッセージ内のトラップドア情報を受け手に送信するステップを含む受け手へ電子メッセージを送る方法と要約することができる。この第６の広範な側面に従って、計算問題を解くことは電子メッセージの少なくとも一部をオリジナル記号列へ変換してオリジナル記号列に演算を実行するステップを含み、トラップドア情報により受け手において演算の逆（ｉｎｖｅｒｓｅ）を解くことが容易になる。
【００１１】
第７の広範な側面に従って、本発明は電子メッセージの少なくとも一部を伴う第１の計算問題を解いてその解を作り出し、各ｊ，２≦ｊ≦Ｊについて、電子メッセージの少なくとも一部および第（ｊ−１）番目の計算問題の解を伴う第ｊ番目の計算問題を解いてその解を作り出し、受け手に電子メッセージを送信し、第１番目、．．．，第ｊ番目の各計算問題の解を受け手に通知するステップを含む受け手へ電子メッセージを送る方法と要約することができる。
【００１２】
第８の広範な側面に従って、本発明は電子メッセージに関連する計算量閾値の知識を得、電子メッセージの少なくとも一部を伴う計算問題を解いてその解を作り出し、計算問題を解くのに関連する計算量の程度を評価し、計算量閾値を超える評価した計算量の程度に応答して電子メッセージを受け手に送信し、計算問題の解を受け手に通知するステップを含む受け手宛電子メッセージの処理方法と要約することができる。
【００１３】
第９の広範な側面に従って、本発明は複数の電子メッセージを受信し、各電子メッセージの発生に関連する計算量の程度を評価し、評価した計算量の程度に基づいて電子メッセージを画面上に階層的にディスプレイするステップを含む方法と要約することができる。
【００１４】
また、本発明はコンピューティング装置が前記したさまざまな方法を実施するために実行するプログラム要素を含むコンピュータ読取可能記録媒体と要約することができ、プログラム要素は各方法においてさまざまなステップを実行するプログラムコード手段を含んでいる。
【００１５】
ここで検討されるソリューションは既存の多くの方法とコンパチブルであり、所望によりこれらの方法と共に使用することもできる。
【００１６】
当業者ならば添付図と共に発明の特定実施例の下記の説明を読めば、本発明のこれらおよびその他の側面および特徴が明白となる。
【実施例】
【００１７】
（実施例の詳細な説明）
説明および図面は発明のある実施例を単に例示するのが目的であり理解を助けるものであることが明白に理解される。それらは発明の限界を規定するものではない。
以下において、送り手側プロセスおよび受けて側プロセスが説明される。送り手側プロセスは受け手宛電子メッセージの処理に向けられ、メッセージの少なくとも一部を伴う計算問題を解いてその解を作り出す。随意、問題を解くのに関連する計算量の程度を評価することができ、メッセージは評価した計算量の程度に従ってさらに処理される。さらなる処理は計算量の程度が送り手または受け手により設定された範囲内であるかを決定することに関係しており、そうでなければ計算問題は調整されて再び解かれる。次に、受け手にメッセージが送信され、問題の解および問題自体が通知される。受け手は受け手側プロセスを実行し、それはメッセージを受信すると、その問題および解の知識を使用してメッセージの発生に関連する計算量の程度を評価し、さらに評価した計算量の程度に従ってメッセージをさらに処理する。高いおよび低い計算量の程度は、それぞれ、高いおよび低い正当性の電子メッセージを指す。
【００１８】
送り手側メッセージングクライアント１０２
図１において、送り手側メッセージングクライアント１０２は送り手から発信されるオリジナルメッセージ（以後一字Ｍで示す）を発生する。送り手側メッセージングクライアント１０２は送り手が入出力装置（Ｉ／Ｏ）を介したアクセスを有するコンピューティング装置により実行されるソフトウェアアプリケーションとして実現することができる。コンピューティング装置の例はパーソナルコンピュータに限定されず、コンピュータサーバ、セルラー電話機、パーソナル・デジタル・アシスタント、ネットワーク電子通信装置（たとえば、Ｂｌａｃｋｂｅｒｒｙ（登録商標）等のポータブル装置）等を含んでいる。
【００１９】
オリジナルメッセージＭは電子メールメッセージとすることができる。しかしながら、オリジナルメッセージＭは電子メールメッセージに限定はされず、一般的に任意の通信または転送またはデータを表すことができる。特に、オリジナルメッセージＭは手紙、フライヤ、小包等を含む従来の郵便、限定はしないが、電話で送られるテキストおよび／またはビデオその他のメッセージ（すなわち、たとえばインターネットを介したリアルタイム通信システムを介して送られるメッセージ）、ファックス、テレマーケッティング呼その他の電話呼、ウェブサーバ等の目標コンピュータ、より一般的には、静止または動画、音、テキストおよび／または他のデータを送信する任意の電子システムにより送られる任意の情報または通信への命令、または他のデータまたは情報通信手段等の物理的通信の全てまたは一部のデジタル表現を含むことができる。
【００２０】
オリジナルメッセージＭが電子メールメッセージである特定のケースでは、オリジナルメッセージＭは、限定はしないが、送り手を識別する部分、受け手を識別する部分、補助データを識別する部分、タイトルまたは主題を識別する部分、メッセージ本体を含む部分、および添付ファイルを構成する部分を含むことができる。補助データを識別する部分は、限定はしないが、時間、タイムゾーン、送り手の地理的位置、または、所望により、任意他の有意情報等の時空間座標を指定することができる。あるいは、補助データ専用の特定部分は無いこともあり、あるいはこのような補助データはメッセージ本体の一部と見なすことができる。
【００２１】
このような他の補助データの例としてあるパーティにより保持される数値鍵、公に入手可能で検証可能なデータ（たとえば、ある日ある市場におけるある株式の始め値等の予測不能データ、等）、あるいはセキュアで決定的またはランダムな技術により発生され恐らくは商業投機として考慮するのと引き換えにサードパーティにより提供されるあるデータが含まれる。このような情報はこの補助データが存在しなかったある定められた時間の前に、メッセージは発生されておるがここに記述されるアルゴリズムに従っていないことを保証するのに使用できる。次に、これを使用してどのような計算その他のリソースでもここに記述されたアルゴリズムを最近の過去（ある定義に従って）に行うべきであり、かつ長期間にわたって遅い技術や遅い性能の計算リソースを使用して行ってはならないことに耐えるようにされることを保証できる。
【００２２】
送り手側メッセージングクライアント１０２により発生されたオリジナルメッセージＭは送り手側メッセージ処理機能１０４へ送られる。送り手側メッセージ処理機能１０４は送り手がＩ／Ｏを介してアクセスを有するコンピューティング装置により実行されるソフトウェアアプリケーションとして実現することができる。コンピューティング装置の例として、パーソナルコンピュータに限定はされず、コンピュータサーバ、セルラー電話機、パーソナルデジタルアシスタント、ネットワーク電子通信装置（たとえば、Ｂｌａｃｋｂｅｒｒｙ（登録商標）等のポータブル装置）、等が含まれる。さらに、送り手側メッセージ処理機能１０４は送り手側メッセージングクライアント１０２のサブアプリケーションとすることができる。
【００２３】
送り手側メッセージ処理機能１０４
本発明の一実施例では、通信は読む価値がありそうであること、また送り手は特定の受け手に通信を読ませるまたは処理させることに重きを置いていることを受け手に示すための負担が送り手に課される。そのため、本発明の実施例は送り手側メッセージ処理機能１０４によりオリジナルメッセージＭに付すことができるタグを利用する。以後「正当性の証明」（すなわち、“ＤＯＬ”）と呼ばれ図１に１１４として示すタグは、送り手により選択される方法で、送り手により費やされているある計算量の程度を証明する。送り手により費やされた計算量の程度は定量的に（たとえば、何かの量として）または定性的に（たとえば、ある方法で特徴づけられる）評価することができ、その情報を使用して通信をどのように処理するかを決定することができる。
【００２４】
このため、送り手側メッセージ処理機能１０４はオリジナルメッセージＭの少なくとも一部を伴う計算問題を解くプロセスを実行する。計算問題を解く間に送り手側メッセージ処理機能１０４はある程度の計算量を費やす。本発明の実施例では、送り手側メッセージ処理機能１０４は計算問題を解くのに費やされた計算量の程度が少なくとも「最小閾値計算量」（以後、一文字Ｅで示す）であることを保証しようと試みる。本発明の他の実施例では、送り手側メッセージ処理機能１０４は計算問題を解くのに費やされた計算量の程度が予め定められた範囲内に入ることを保証しようと試みる。
【００２５】
さまざまな実施例において、計算量の程度は定量的または定性的に評価される。したがって、最小閾値計算量Ｅは定量的方法（たとえば、ＣＰＵサイクル、時間、等）または定性的値（たとえば、後述するように、＜Ｍ＞の素因子のサイズおよび数、またはその組合せの制限）により定義することができる。最小閾値計算量Ｅの表示はメッセージ・バイ・メッセージベースで送り手が明白に提供することができ、あるいは特定値に初期化することができ、あるいは他のベースで設定したり他の方法で伝えることができる。
【００２６】
図２には、送り手側メッセージ処理機能１０４により実行されるプロセスの非限定的な特定の実施例が示されている。特に、オリジナルメッセージＭが入力される。ステップ２０４において、送り手側メッセージ処理機能１０４は最小閾値計算量Ｅの知識を得る。最小閾値計算量Ｅは送り手がメッセージ・バイ・メッセージベースで指定することができ、あるいは特定値、たとえば、デフォルト値に設定できることが思い出される。
【００２７】
ステップ２０６において、送り手側メッセージ処理機能１０４は最初にオリジナルメッセージＭを以後“＜Ｍ＞”で示す記号列へ変換することによりオリジナルメッセージＭを伴う計算問題を解こうと試みる。たとえば、記号列は１と０、バイト、文字、等の列とすることができる。
【００２８】
本発明の目的のために、全体オリジナルメッセージＭが記号列へ変換されるものと仮定するが、他の実施例では、オリジナルメッセージＭの一部（たとえば、補助データおよびメッセージ本体のサブセットを識別する部分）しか使用できないことを理解しなければならない。ある例では、ステップ２０６において考えられる変換はオリジナルメッセージＭまたはその関連部を表すバイト列を連接する（たとえば、ＡＳＣＩＩすなわちＡｍｅｒｉｃａｎ  Ｓｔａｎｄａｒｄ  Ｃｏｄｅ  ｆｏｒ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｉｎｔｅｒｃｈａｎｇｅにより）ことにより遂行することができる。
【００２９】
ステップ２０８において、送り手側メッセージ処理機能１０４は記号列＜Ｍ＞に演算を実行する。特に、この実施例では、演算は関数Ｆ（・）により定義され、計算問題はＦ（＜Ｍ＞）として表すことができ、以後一文字“Ｚ”で示される解を得る。関数Ｆ（・）は「作業」関数と呼ぶことができる。
【００３０】
ステップ２１０において、送り手側メッセージ処理機能１０４は計算問題を解くのに費やされた計算量を評価する。ある実施例では、費やした計算量の評価は計算問題の計算量を測定して行われ、それは経過時間の追跡、ＣＰＵサイクルのカウント等の多様な方法で行うことができる。費やした計算量はＥ＊で示される。本発明のある実施例では、送り手側メッセージ処理機能１０４は解Ｚの特性に基づく経験的技術を使用して計算問題を解くのに費やされた計算量の程度を推論する。
【００３１】
次に、送り手側メッセージ処理機能１０４はステップ２１２へ進み、そこで費やした計算量Ｅ＊は最小閾値計算量Ｅと比較される。費やした計算量Ｅ＊が最小閾値計算量Ｅよりも少なければ、送り手側メッセージ処理機能１０４はステップ２１４へ進み、そこで解くべき計算問題はより計算集約的とするために修正される。
【００３２】
たとえば、Ｆ（・）はより計算集約的とするために修正することができ、その場合送り手側メッセージ処理機能１０４はステップ２０８へ戻る。あるいは、記号列＜Ｍ＞はＦ（＜Ｍ＞）の計算をより困難とするために修正することができ、その場合も送り手側メッセージ処理機能１０４はステップ２０８へ戻る。
【００３３】
関数Ｆ（・）への前記した修正と共に適用することができるもう１つの実施例では、オリジナルメッセージＭはＦ（＜Ｍ＞）の計算をより困難とするために修正され、その場合送り手側メッセージ処理機能１０４は前のステップ２０６へ戻る。これはオリジナルメッセージＭへ「ペッパー（ｐｅｐｐｅｒ）」を加えると呼ぶことができる。
【００３４】
当業者ならば最小閾値計算量Ｅは高い値に設定されそうであると理解する。しかしながら、送り手により費やされた計算量の評価を試みる時に受け手の計算リソースが独占されるまたは過剰使用されるような状況の発生を最小限に抑えるよう注意しなければならない。したがって、ここで説明するように、関数Ｆ（・）は慎重に選択しなければならない。
【００３５】
適切な関数の一例は暗号学、数論その他で使用される「単向関数（ｏｎｅ−ｗａｙ  ｔｕｎｃｔｉｏｎ）」Ｆ（・）である。一般的に、単向関数は一方向で計算するのは困難であるが逆方向で計算するのは容易な関数である。限定はしないが、単向関数の一つの説明としてＣＲＣ  Ｐｒｅｓｓ，１９９６，８頁に記載されたＡ．Ｍｅｎｅｚｅｓ，Ｐ．ｖａｎ  Ｏｏｒｓｃｈｏｔ、およびＳ．ＶａｎｓｔｏｎｅによるＨａｎｄｂｏｏｋ  ｏｆ  Ａｐｐｌｉｅｄ  Ｃｒｙｐｔｏｇｒａｐｈｙから取り出した下記の定義がある（それは、実際上、本明細書を通して使用される単向関数の逆であり大文字で書かれる）。
定義１．１２  ｆ（ｘ）が全てのｘ∈Ｘに対して計算するのが「容易」であるが、「本質的に全ての」エレメントｙ∈Ｉｍ（ｆ）［すなわちＩｍａｇｅ［ｆｊ］］に対してはｆ（ｘ）＝ｙであるような任意のｘ∈Ｘを見つける「計算は実行不可能」であれば、集合Ｘから集合Ｙへの関数ｆは単向関数と呼ばれる。
１．１３  注記（定義１．１２における用語の解明）
（ｉ）用語「容易」および「計算実行不可能」の厳密な定義が必要であるが、伝えられる単純なアイデアから逸れてしまう。この章［章１］の目的に対しては、直観的意味で十分である。
（ｉｉ）「Ｙ内の実質的に全ての要素」という句はｙ＝ｆ（ｘ）となるようなｘ∈Ｘを見つけるのが容易ないくつかの値ｙ∈Ｙがある事実に関係する。たとえば、少数のｘ値に対してｙ＝ｆ（ｘ）を計算し、次に、これらに対してテーブルルックアップにより逆が知られる。単向関数のこの性質を説明する別の方法は次のようである、ランダムなｙ∈Ｉｍ（ｆ）に対してｆ（ｘ）＝ｙとなるようないかなるｘ∈Ｘを見つけるのも計算実行不可能。
【００３６】
より直観的表現で、本発明により考慮される単向関数は、限定はしないが、数を素成分（素因子）へ因数分解することにより例示することができる。このような問題のサブセットは２つ以上の大きい素数の積をその素因子へ因数分解する問題である。すなわち、２つの大きい素数が与えられると、それらの積を見つけるのは計算上単純なタスクであるが、積しか与えられなければ、因数分解すべき数のサイズが増すにつれ素数を見つけるのは一般的には前進的により計算集約的となる。
【００３７】
離散的対数の決定によりもう１つの例が与えられる。（たとえば、方程式３ｘ＝７ｍｏｄ１３の想定上の解は検証するのが容易であるが、解を見つけるのに著しい計算量、すなわち、積が１３で除算して７の剰余を残すために３にそれ自体を何回乗算すべきか、を必要とすることがある）。解くのに必要な作業が想定上の解をチェックすなわち立証するのに必要な作業に較べて大きい、この種の問題の例が他にも沢山ある。本明細書全体を通して、「単向関数」という用語はその最も広い範囲で使用され、因数分解問題は特定のインプリメンテーションとして使用される。
【００３８】
次に、図２のフロー図に戻って、大多数のケースでは、ステップ２１２は終局的に費やした計算量Ｅ＊が最小閾値計算量Ｅ以上である結果を生じることが判る。これが生じると、送り手側メッセージ処理機能１０４はステップ２１６において付加されたメッセージ１０６を作成し、それはオリジナルメッセージＭおよびＺ（すなわち、計算問題の解）を含むＤＯＬ１１４を含んでいる。与えられた（すなわち、大きい）量の時間または試行数の後でもステップ２１２の状態が満たされないケースでは、それにもかかわらずループをエグジットしてオリジナルメッセージＭおよび、たとえば、最も最近発生されたＤＯＬまたは発生されたＤＯＬ１１４の最も「困難な」ものまたは発生された全てのＤＯＬ１１４、等から付加されたメッセージ１０６を作成することによりステップ２１６を実施するのも、デフォルト処置として、本発明の範囲内である。それにより、発生される問題が多すぎる試行に対して容易すぎるまたは困難すぎることが判れば明白な解が提供される。
【００３９】
ＤＯＬ１１４はさらにＦ（・）（またはその逆Ｆ−１（・））の定義プラスＤＯＬ１１４により運ばれる計算量の適切な表現を生じるためにＭまたは＜Ｍ＞がどのように修正されたかを記述するするのに必要な情報を含むことができ、あるいは（図１の破線参照）この情報をデータ網１１０を介して受け手へ独立メッセージ内または独立チャネル（たとえば、セキュリティ強化のため）を介して通信することができる。特定関数の「定義」により、送り手および受け手間で相互に一致する一組の関数の指標により特定関数を指示することも含まれる。
【００４０】
したがって、送り手側メッセージ処理機能１０２はステップ２１４で発生されたＤＯＬ１１４がある最小計算量が費やされたことの真の証拠を構成することを保証し、大量郵便会社がその封筒（正規の郵便で配達された）に“Ｃｏｕｒｉｅｒ  Ｍａｉｌ”の単語をスタンプして追加費用または追加計算量で通信文が配達されている印象を与えるのに似た状況を回避する。
【００４１】
費やした計算量Ｅ＊が小さすぎないことをチェックする他に、費やした計算量Ｅ＊は大きすぎないこともチェックすることができる。言い換えれば、費やした計算量Ｅ＊は最小閾値計算量Ｅではなく閾値範囲と比較されることが考えられる。
【００４２】
ある実施例では、与えられたメッセージに対する最小閾値計算量Ｅは修正された問題を循環すると減少して、メッセージが予期せずに過度（ある尺度で）の送信時間をとる状況とならないことを保証する。もちろん、それでもステップ２１２が満たされる結果とならなければ、前記したデフォルト処置を適用することができる。
【００４３】
また、図２のプロセスの実行は送り手側メッセージ処理機能１０４を実現するコンピューティング装置により実行される他のタスクを役立たなくする（あるいは、実行を過度に遅くする）ことのないように送り手の観点から最適化することができる。これを行う最善策はハードウェアおよびオペレーティングシステムの考慮点に依存するが、一つの一般的な方法は図２のプロセスを低優先順位で実行してオペレーティングシステムにＣＰＵサイクルがどのようにＤＯＬ−発生プロセスに割当てられるかの詳細を管理させることを含む。関連方法はプロセスを第ｎ番目クロックサイクル毎だけ実行させることである。第ｎ番目ＣＰＵサイクル毎の使用はＤＯＬ発生に安い／パラレル方法を使用する試みを挫折させるのに使用することもできる。
【００４４】
次に、図２のフロー図に戻り、ステップ２１８において付加されたメッセージ１０６（オリジナルメッセージＭおよびＤＯＬ１１４からなる）は受け手と通信される（たとえば、データ網１１０を介して）。
【００４５】
受け手側メッセージ処理機能３０２
図３に関して、受け手において、付加されたメッセージ１０６は受け手側メッセージ処理機能３０２により受信され、それは受け手がＩ／Ｏを介してアクセスを有するコンピューティング装置により実行されるソフトウェアアプリケーションとして実現することができる。コンピューティング装置の例として、パーソナルコンピュータに限定せずに、コンピュータサーバ、セルラー電話機、パーソナルデジタルアシスタント、ネットワーク電子通信装置（たとえば、Ｂｌａｃｋｂｅｒｒｙ（登録商標）等のポータブル装置）等が含まれる。
【００４６】
前記したように、付加されたメッセージ１０６はオリジナルメッセージＭを構成する第１の部分および解Ｚを含むＤＯＬ１１４を構成する第２の部分を含んでいる。さらに、ＤＯＬ１１４はＭまたは＜Ｍ＞の任意の修正だけでなく解Ｚを発生するのに使用される関数Ｆ（・）（またはその逆Ｆ−（・））の定義を含むことができる。あるいは（図３の破線参照）、この情報を独立メッセージ内でまたは独立チャネルを介して受け手に提供することができる。
【００４７】
一般的に、受け手は付加されたメッセージ１０６以外のメッセージを含むメッセージ３０６を受信する。各受信メッセージ３０６はＤＯＬを含んでいたりいなかったりし、ＤＯＬを含んでおれば、このようなＤＯＬは「正当」であったりなかったりする（すなわち、関連メッセージ３０６の全てまたは一部を伴う問題の正しい解を表す）。したがって、受け手側メッセージ処理機能３０２は特定の受信メッセージ３０６がＤＯＬを含むかどうか、含む場合はＤＯＬが正当か、正当であれば送り手により適切な計算量が費やされたかを検証して始まるプロセスを実行する。
【００４８】
受信メッセージ３０６がＤＯＬを含まなければ、これは計算問題を解くのに送り手がそれ自体の計算量の程度を評価した前記した技術を使用してこれらのメッセージが発生されていることを意味しない。言い換えれば、送り手側および受け手側プロセスは互いに従属的ではない。言い換えれば、メッセージの発生に送り手が費やした計算量の程度は受け手において評価されるが、これは送り手がメッセージを送る前にそれ自体の計算量の程度を評価していることを必要としない。送り手は特定の問題に対する解がある確率である範囲内に入るらしい事前知識を有するにすぎない。
【００４９】
図４Ａおよび４Ｂについて、受け手側メッセージ処理機能３０２により実行されるプロセスの特定の限定しない実施例が示される。特に、ステップ４０２において、受け手側メッセージ処理機能３０２は受信メッセージ３０６が想定ＤＯＬを含むかどうかを決定する。含まなければ、受信メッセージ３０６はゼロ「正当性得点」を運ぶと言うことができる。したがって、ステップ４０４において、受信メッセージ３０６および正当性得点の両方がさらに処理するために受け手側メッセージクライアント３０８へ与えられる。あるいは、受信メッセージ３０６を廃棄することができる。
【００５０】
しかしながら、受信メッセージ３０６が想定ＤＯＬを含む場合、これは受信メッセージ３０６がオリジナルメッセージＭ＊および想定ＤＯＬ４０６を含む付加されたメッセージであることを意味し、それは計算問題に対する解Ｚ＊を含み、その定義は受け手側メッセージ処理機能３０２に提供されている。こうして受け手側メッセージ処理機能３０２は想定ＤＯＬ４０６の正当性を確立するように進む。
【００５１】
特に、ステップ４０８において、受け手側メッセージ処理機能３０２は解Ｚ＊の計算において送り手により使用されていると思われる関数Ｆ＊（・）の逆Ｆ＊−１（・）の知識を得る。受信メッセージ３０６が付加されたメッセージ１０６であれば、関数Ｆ＊（・）は関数Ｆ（・）に対応し下記の検討においてアステリクスは無視される。
【００５２】
ある実施例では、関数Ｆ＊（・）またはその逆Ｆ＊−１（・）の定義は受信ＤＯＬ４０６内に含まれている。受信ＤＯＬ４０６が関数Ｆ＊（・）の定義を含む場合、特に単向関数に対しては、直接的ではあるが、その逆を得る必要がある。たとえば、関数Ｆ＊（・）が素因子分解に対応するケースを考える。逆は単純に因子を乗じて積を得る演算である。
【００５３】
次に、ステップ４１０において、受け手側メッセージ処理機能３０２は逆Ｆ＊−１（・）を受信解Ｚ＊に適用して再構成記号列＜Ｍ＋＞を得る。ステップ４１２において、再構成記号列＜Ｍ＋＞はオリジナルメッセージＭ＊から得られる記号列＜Ｍ＊＞と比較される。一致しなければ、受け手側メッセージ処理機能３０２は即座に受信ＤＯＬ４０６が不当すなわち偽であると結論づけることができる。したがって、受信メッセージ３０６は低いまたはゼロの「正当性得点」を運ぶということができる。したがって、ステップ４１４において、オリジナルメッセージＭ＊と正当性得点の両方がさらに処理するために受け手側メッセージングクライアント３０８へ与えられる。あるいは、受信メッセージ３０６は廃棄することができる。
【００５４】
しかしながら、ステップ４１２において＜Ｍ＋＞および＜Ｍ＊＞が一致すれば、受け手側メッセージ処理機能３０２は図４Ｂについて次に説明するサブプロセスの実行を続ける。
【００５５】
特に、４１６において、受信メッセージ３０６の発生に関連して費やされた計算量の程度が評価され、ある実施例ではＴ＊として定量化することができる。これは暴力的方法、たとえば、送り手と同じ計算問題、すなわち、Ｆ＊（＜Ｍ＊＞）を解き、解を作り出すのに必要な時間またはＣＰＵサイクルを決定して行うことができる。あるいは、受け手側メッセージ処理機能３０２は関数Ｆ＊（・）および恐らくは解Ｚ＊の知識に基づいて、暴力的計算を実施する必要なしにそれ自体の独立評価を行うことができる。
【００５６】
たとえば、Ｆ＊（・）が素数への因数分解に対応するケースを考える。一般的に言って、＜Ｍ＊＞が大きい数であることを知ると、＜Ｍ＊＞をその素数成分へ正しく因数分解するのは、平方根を見つけるような「より容易な」関数に較べて、困難なタスクであると予期することができる。しかしながら、記号列＜Ｍ＊＞のある値は、大きくとも、素数へ因数分解するのは比較的単純であることがある。たとえば、１０の累乗はこのカテゴリに入る。したがって、Ｆ＊（・）の知識の他に＜Ｍ＊＞の知識も受信メッセージ３０６の発生に関連して費やされた計算量の正しい評価または少なくとも近似評価を得るのに寄与する。
【００５７】
次に、ステップ４１８において、評価された計算量Ｔ＊は最小閾値計算量Ｔと比較される。最小閾値計算量Ｔは特定のメッセージが正当と見なされる（すなわち、高い正当性得点を有する）ためにその発生に関連して費やされている最小計算量に対応する。最小閾値計算量Ｔは受け手により構成することができ、前記したある実施例において送り手により使用された最小閾値計算量Ｅと同じだったり異なったりすることがある。
【００５８】
評価された計算量Ｔ＊が少なくとも最小閾値計算量Ｔと同じ大きさであれば、受け手側メッセージ処理機能３０２はステップ４２０へ進み、そこでオリジナルメッセージＭ＊は受け手側メッセージングクライアント３０８へ転送される。さらに、正当性得点を受信メッセージ３０６へ割当てることができ、ステップ４２２において、受け手側メッセージングクライアント３０８へ転送される。正当性得点は計算量Ｔ＊が最小閾値計算量Ｔを超える程度に相関させることができる。
【００５９】
しかしながら、評価された計算量Ｔ＊が最小閾値計算量Ｔを下回る場合、実施例に従って多様なシナリオが可能である。たとえば、ステップ４２４において、受け手側メッセージ処理機能３０２は受信メッセージ３０６を廃棄し、随意ステップ４２６において、受信メッセージ３０６が送り手により再送信されることを要求する。あるいは、ステップ４２８において、受信メッセージ３０６は低いまたはゼロ正当性得点の表示と共に受け手側メッセージングクライアント３０８へ送られる。
【００６０】
受け手側メッセージングクライアント３０８
受け手側メッセージングクライアント３０８は受け手がＩ／Ｏを介してアクセスを有するコンピューティング装置により実行されるソフトウェアアプリケーションとして実現することができる。コンピューティング装置の例はパーソナルコンピュータに限定せず、コンピュータサーバ、セルラー電話機、パーソナルデジタルアシスタント、ネットワーク電子通信装置（たとえば、Ｂｌａｃｋｂｅｒｒｙ（登録商標）等のポータブル装置）等を含む。ある実施例では、受け手側メッセージングクライアント３０８はさまざまな受信メッセージ３０６およびそれらの関連する正当性得点を受け手へ運ぶグラフィカル・ユーザ・インターフェイス（ＧＵＩ）を実現する。
【００６１】
たとえば、図５について、ＧＵＩは各メッセージに対する正当性得点Ｔ１．．．Ｔ４だけでなく、複数のメッセージヘッダ１．．．４（たとえば、送り手アドレス、データ、タイトル、等）を運ぶ「インボックス」５０２を実現する。さらに、または随意に、アクショナブルなディスプレイエリア（たとえば、ボタン）５０４が提供され、それはユーザがクリックすると、受け手側メッセージングクライアント３０８にメッセージを正当性得点に従って上昇順または下降順にソートさせる。したがって、たとえば、受け手はどの受信メッセージが最高正当性得点を有するかを即座に感じ取ることができる。
【００６２】
あるいは、図６について、受け手側メッセージングクライアント３０８は低いまたはゼロ正当性得点を有する受信メッセージ（たとえば、ＤＯＬを伴わないまたは不当ＤＯＬ４０６を伴うまたは正当ＤＯＬ４０６を伴うが、それでも低いまたはゼロ正当性得点を有する受信メッセージ）にのみジャンクメールフィルタ６０２を実行する。このようにして、受信メッセージのコンテンツがどれほどジャンクメールフィルタ６０２によりジャンクメールと見なされる易いかに無関係に、高い正当性得点を有する受信メッセージはジャンクメールフィルタ６０２を蹂躙する。正当なメッセージの配信を保証することにより、この方法はいわゆる「擬陽性」の問題に取り組む。
【００６３】
ジャンクメールフィルタ６０２の例として、従来のジャンクメールフィルタ（たとえば、ベイズ等）をこのカテゴリ内に入る各受信メッセージの全てまたは一部に基づいて利用することができる。その結果、「高い」正当性得点（たとえば、最小閾値計算量Ｔよりも上）を有する受信メッセージはＧＵＩにより「正当なインボックス」６０４内にディスプレイされ（ヘッダ１．．．４および正当性得点Ｔ１．．．Ｔ４）、「低い」正当性得点を有しジャンクメールフィルタによりジャンクメッセージと見なされる受信メッセージはＧＵＩにより「ジャンクインボックス」６０８内にディスプレイされ（ヘッダ９．．．１２および正当性得点Ｔ９．．．Ｔ１２，全てゼロのことがある）、バランス、すなわち、低い（またはゼロ）正当性得点を有するがジャンクメールフィルタによりジャンクメッセージとして分類されない受信メッセージはＧＵＩにより「正規インボックス」６０６内にディスプレイされる（ヘッダ５．．．８および正当性得点Ｔ５．．．Ｔ８）。
【００６４】
もちろん、正当性得点に関する「高い」および「低い」の定義は、ＤＯＬの発生における計算量のより多いまたは少ない消費を介して正当性のさまざまな程度を表現したい、送り手だけでなく受け手も指定することができる。また、当業者ならば受け手の利益のために受信メッセージの正当性得点を反映させるようにＧＵＩを設計できる広範な他の方法があることを理解される。
【００６５】
受け手側メッセージングクライアント３０８および図６について記述したＧＵＩの実施例は今日のメッセージングシステムにおけるＤＯＬの欠落に妨げられずに動作し、同時にここで予想されるようにＤＯＬが普及する日に備えられる。
【００６６】
さらに、受け手側メッセージングクライアント３０８およびそのＧＵＩにより受け手は電子メッセージの読出しに時間をより効率的に割り当てることができ、それは「正当なインボックス」内のメッセージは正当であることが知られており、「正規インボックス」内のメッセージはＤＯＬを使用してきていない電子メールの正当な送り手を捕捉する注目を受けるにふさわしく（時間と共に減少するパーセンテージの送り手が考えられる）、「ジャンクメールインボックス」内のメッセージは時折の「擬陽性（ｆａｌｓｅ  ｐｏｓｉｔｉｖｅｓ）」をフィルタリングするのに十分なだけの注目しか受けるにふさわしくないためである（すなわち、低いまたはゼロ正当性得点を有しジャンクメールではないがジャンクメールフィルタによりフラグを立てられたジャンクメールのある特性を有するメッセージ）。
【００６７】
図６の前記した多層インボックス実施例のバリエーションでは、受け手側メッセージングクライアント３０８により実現されるＧＵＩは「正当なインボックス」６０４しかディスプレイせず（ヘッディング１．．．４および正当性得点Ｔ１．．．Ｔ４）、他方のインボックス６０６および６０８はユーザ構成可能パスワードを供給するだけでアクショナブル釦を介してアクセスすることができ、あるいは全くアクセスできない。したがって、ユーザは正当なＤＯＬタグ付メッセージしか見ることができず、他のメッセージは（正規インボックス６０６内であれジャンクインボックス６０８内であれ）パスワードを知らない者へはアクセス不能とされる（あるいは、単純にアクセス不能とされる、すなわち、有効に廃棄される）。この方法により、たとえば、子供達の電子メールインに対して両親はセキュアな「サンドボックス」を生成することができ、その多くは子供達に不適切な主題（たとえば、ポルノグラフィ等）を含むスパムを子供達が得ることがないよう保証する。
【００６８】
ハッシュ関数を使用する実施例
前記したように、図２のステップ２０６により考慮されるＭから＜Ｍ＞への変換は、限定はしないが、オリジナルメッセージＭ（または、その関連部）を表すバイトの記号列を連接して単一値とすることにより行われる。しかしながら、長いメッセージに対して、これは関数Ｆ（＜Ｍ＞）の実行に過剰な時間がかかり実用不能となるような高い値となることがある。他方、非常に短いメッセージに対して、この技術によりそれらの素数成分へ因数分解するのが簡単な比較的短い数となる。したがって、図７に示すように、たとえば、ハッシュ関数の数値結果が所望の範囲内となるのを保証するようにオリジナルメッセージＭにハッシュ関数Ｈ（・）を適用するのも本発明の範囲内である。ハッシュ関数はある「鍵」により区別されるデータアイテムをハッシュテーブル内のいくつかの可能な「ハッシュバケット」の一つへ割当てる関数である。たとえば、関数は文字列上に作用して問題とする記号列の第１の文字に応じて各記号列を２６リストの１つ内へ置くことができる。
【００６９】
次に、図８についてハッシュ関数の使用を詳細に説明し、送り手側メッセージ処理機能１０４により実行されるプロセスの特定の非限定的実施例が示されている。特に、オリジナルメッセージＭが入力された後で、送り手側メッセージ処理機能７０４はステップ８０４において最小閾値計算量Ｅの知識を得る。最小閾値計算量Ｅは定量的値とすることができ、あるいは、より緩く定義することができる（たとえば、＜Ｍ＞の素因数のサイズおよび数の制限、またはその組合せ）ことが思い出される。また、最小閾値計算量Ｅはメッセージ・バイ・メッセージベースで送り手により指定することができ、あるいは、特定値、たとえば、デフォルト値に設定できることも思い出される。
【００７０】
ステップ８０６において、送り手側メッセージ処理機能７０４は最初にオリジナルメッセージＭを以後“＜Ｍ＞”として示す記号列へ変換することによりオリジナルメッセージＭを伴う計算問題を解こうとする。本発明の目的に対して、全体オリジナルメッセージＭが数値形式に変換されるものと仮定されるが、他の実施例では、オリジナルメッセージＭの一部だけ（たとえば、補助データを識別する部分およびメッセージ本体のサブセット）を使用することができる。ある実施例では、ステップ８０６により考慮される変換はオリジナルメッセージＭ（または、その関連部）を表すバイトの記号列を連接して単一１０進数とすることにより行うことができる。
【００７１】
次に、送り手側メッセージ処理機能７０４は＜Ｍ＞に演算を実行する。特に、この実施例では、演算は「作業関数」Ｆ（・）が続く「ハッシュ関数」Ｈ（・）により定義される。したがって、ステップ８０７において、送り手側メッセージ処理機能７０４は＜Ｍ＞にハッシュ関数Ｈ（・）を実行して、以後一文字「Ｙ」で示す結果を得る。
【００７２】
任意の簡便かつ十分に複雑なハッシュ関数Ｈ（・）を使用することができる。一例では、ハッシュ関数Ｈ（・）はオリジナルメッセージＭの異なる部分（たとえば、受け手を識別する部分、補助データを識別する部分、メッセージ本体、等）が結果Ｙに含まれることを保証する。ハッシュ関数は非局所的としてメッセージへの小さな変化（たとえば、受け手を識別する部分）により予測困難な変化が結果に生じ、スパマは受け手をだまして実施される必要のある単純な計算となる（あるいは、スパマが行うのは困難であるが、既に行われている計算となる）ような方法でオリジナルメッセージを修正することにより真の計算量が費やされたと思わせるのを困難にすることも有利である。多くの既存のハッシュ関数はこれらの要求条件を満たし本発明の目的に対して僅かな変更でまたは変更なしで採用することができる。
【００７３】
ハッシュ関数Ｈ（・）の範囲は固定する必要はなく、完全に予め定める必要もなく、可能な全てのメッセージに対して一意的である必要もなく、それ自体がオリジナルメッセージＭのさまざまな部分のある関数とすることができる。単純な例は全メッセージ本体プラス受け手を識別する部分を大きな数へ変換し（たとえば、ローマアルファベット、数、制御信号、活版印刷文字その他の記号に数値を割当てるＡＳＣＩコードを使用して）、ｎデジットを得ることを保証するためのあるアルゴリズムと共に（特定のインプリメンテーションにおいて全出力記号列が指定長ｎを有することを選択する場合）、残りのモジュロにある大きな素数を考慮することである。この例は単純化され純粋に説明用である。当業者ならば多くの選択が自明であるため、ここで詳述する必要はない。任意のイベントにおいて、ハッシュ関数の結果はＹとなり、それはオリジナルメッセージＭとある関係を有する数である。
【００７４】
あるアプリケーションに対しては、速度の関心から、オリジナルメッセージＭの一部にしか実行されないハッシュ関数を使用するのが望ましく、時間やリソースが非常に制限されるアプリケーション  ―たとえば、送り手側の―  に対してはより多くの（または全ての）メッセージに実行されるハッシュ関数Ｈ（・）を使用するのが望ましい。限定はしないが、これが有用となる可能な例として電話を介した音声通信、セルホーン、ｖｏｉｃｅ  ｏｖｅｒ  ＩＰ（ＶｏＩＰ）、パーソナルデジタルアシスタント、ネットワーク電子通信装置（たとえば、Ｂｌａｃｋｂｅｒｒｙ（登録商標）等のポータブル装置）、等が含まれる。
【００７５】
さらに、公に知られており、ＤＯＬ保証メッセージの自分たち自身のサークル形成を望むユーザの任意のサブセットにより選択され、あるいは任意に計算上困難とすることができるＤＯＬを発生またはチェックする実際のソフトウェアから逆処理しなければならない（取引）秘密として維持される任意の考えられるハッシュ関数Ｈ（・）を使用することも本発明の範囲内である。
【００７６】
事実、異なるハッシュおよび／または作業関数を介して発生されるＤＯＬを使用してメッセージを特定グループから発信されたものとして、または特定の目的または目的セットのためにマークするのに使用することができ、正当性だけでなくグループからの発信を確立する技術として使用することができる。異なるハッシュおよび／または作業関数を使用して、たとえば、メッセージを直ちに準備完了させるのが重要であるかあるいは受け手の暇な時に読むことができるか等の異なる情報を運ぶのにも使用することができる。例として、会社内で、異なるプロジェクトまたはタスクに関する電子メールメッセージに異なるＤＯＬ発生アルゴリズムを使用してタグ付けおよび識別を行い、それらに実施された同じまたは異なる程度の作業を有する同じユーザ（すなわち、送り手）から発信されるメッセージの自動分類を行うことができる。さまざまなアプリケーションに対してさまざまなグループ内でまたはさまざまなタスクに対して異なるＤＯＬ発生方式を使用すること、または異なる重要度等を運ぶことは予めなされた協定に基づいて、またはグループ、タスク等に属すると見なされるためにその送り手からのメッセージに対する必要なＤＯＬ発生アルゴリズムを受け手が送り手に対して指定する（あるいは、定められたグループ、タスク等に関連する送り手からの今後のメッセージを指定した送り手が指定された方法で発生された自分等のＤＯＬを有する）初期通信に応答して行うことができる。
【００７７】
ステップ８０８において、送り手側メッセージ処理機能７０４はＹに作業関数Ｆ（・）を実行し、以後一文字“Ｚ”で示す結果を得る。したがって、Ｚ＝Ｆ（Ｙ）＝Ｆ（Ｈ（＜Ｍ＞））となる。適切な作業関数Ｆ（Ｙ）の例は因子Ｙを素数ｐ１，ｐ２，ｐ３，．．．へ因数分解するものである。この場合、ハッシュ関数Ｈ（・）の結果Ｙが十分大きくてモダンな因数分解技術が実行するための「有意」かつ非「過剰」時間を必要とするのが有利である。同じことが他の作業関数Ｆ（・）にも適用する。限定はしない例として、前記した用語「有意」および「過剰」は下記の意味をとることができる。
「有意」：受け手は受信メッセージが大きな無差別スパム攻撃の一部ではなさそうな計算量とされていることを知っている。たとえば、１年はおよそ３×１０７秒であり、送り手が１７分よりも少し少ない１０００秒を費やすと、受け手は送り手がおよそ３０，０００メール／年（１００／日よりも少ない）よりも多くは送っておらずスパマではなさそうであることを知る。ここで、電子メールはまさしくその性質により、恐らくは互いに知っている人々間のある状況（たとえば、詰まった締切のプロジェクトで一緒に働いている仕事仲間）を除いて特に速く意図または予期されるものではなく、予め未知の受け手とコンタクトしたいような正当な通信に対してＣＰＵのこの種の消費は小さな重荷となる。事実、本発明は、たとえば、切迫した締切に間に合わせるために協働している既知のパーティが有用と思えばその間のＤＯＬに対する要求条件を協定期間だけまたは任意他の協定方法に従って放棄できることも考えている。
「過剰」：送り手が計算を強要されるのが何であっても、それは妥当な長さの時間（あるいは、妥当な数のメッセージ／日）内にメッセージを取り出す方法が基本的に無いほど長くてはならない。
【００７８】
明らかに、用語「有意」および「過剰」はコンテキストによって決まり、電子メールメッセージに要求されるものは、たとえば、移動電話機間で送信されるテキストメッセージ、ショートメッセージサービス（ＳＭＳ）メッセージおよびインスタントメッセージ（ＩＭ）等の他のコンテキストにおいて要求されるものよりも重大である（または重大でない）。
【００７９】
ハッシュ関数Ｈ（・）が非局所的であることが有利であるように、作業関数Ｆ（・）も非局所的であることが有利であり、ハッシュ関数Ｈ（・）の異なる結果は作業関数Ｆ（・）の広範に異なる結果となる。したがって、素因子分解は非局所的作業関数Ｆ（・）の適切な例である。また、素因子分解の特定ケースでは、たとえハッシュ関数Ｈ（・）がたとえば１，０００，０００の電子メールの中の１つが素数成分へ分解するのが容易な結果を与える性質を有していても、スパマにとって１つの電子メールを送るのが容易である事実は残りの９９９，９９９を送るのが困難であれば（すなわち、時間を消費する）助けにはならないため、これは重要ではない。
【００８０】
ステップ８０６，８０７および８０８の特定例として、ＡＳＣＩＩ記号列として見られる下記のイタリックメッセージについて考える。
2008507013.tif 000003
【００８１】
２進記法ではこれは単一数であり、
2008507013.tif 000004
あるいは、よりコンパクトに、１６進記法では次のようになる。
2008507013.tif 000005
【００８２】
１０進法では、これは次のように表される。
2008507013.tif 000006
【００８３】
前記した数は送り手（またはサードパーティ）が因数分解を試みるよう頼むには長すぎると思われる。ハッシュ関数Ｈ（・）を使用して、これはハッシュ関数を使用するより小さな指定数のデジットへ約分できる。このケースでは、説明の目的でこの数は二乗されてその剰余モジュロ１２３４５６７が得られ、２８３０７０となる。素因子分解すると、これは２８３０７０＝２＊５＊２８３０７となる。
【００８４】
前記したハッシュ関数Ｈ（・）は、理解し易いために、単なる説明用に選択されたものである。前記したように、任意のハッシュ関数Ｈ（・）を使用することができ、特に、非局所的なものを使用することができ、そのため入力の全体コンテンツにより影響されそれに対して所望の出力を発生するために入力を容易に修正することはできない。ＤＯＬシステムを覆そうとする者はその因子が既に決定されている、または容易に決定できる、または事実既に素数である（本例で説明するアルゴリズムの場合）少数の（恐らくは１でもある）数へ全て切り刻まれるメッセージの発生を試みられるため、これは有利である。
【００８５】
ステップ８１０において、送り手側メッセージ処理機能７０４は計算問題を解くために費やされた計算量（この場合、計算量）を評価する。これは経過時間の追跡、ＣＰＵサイクルのカウンティング、等の多様な方法により行うことができる。費やされた計算量はＥ＊で示される。本発明のある実施例では、送り手側メッセージ処理機能７０４は解Ｚの特性に基づいた経験的技術を使用して計算問題を解くために費やされた計算量の程度を推定する。
【００８６】
次に、送り手側メッセージ処理機能７０４はステップ８１２へ進み、そこで費やされた計算量はＥ＊は最小閾値計算量Ｅと比較される。費やされた計算量Ｅ＊が指定された最小閾値計算量Ｅよりも少なければ、送り手側メッセージ処理機能７０４はステップ８１４へ進み、そこで解くべき計算問題はより計算集約的となるように修正される。
【００８７】
たとえば、作業関数Ｆ（・）はより計算集約的関数とするために修正することができ、その場合送り手側メッセージ処理機能７０４はステップ８０８へ戻る。あるいは、Ｆ（＜Ｍ＞）の計算をより困難にするように記号列＜Ｍ＞を修正することができ、その場合送り手側メッセージ処理機能７０４はステップ８０８へ戻る。
【００８８】
さらに、または替わりに、ハッシュ関数Ｈ（・）は作業関数Ｆ（・）の後続計算をより計算集約的とするように修正することができ、その場合送り手側メッセージ処理機能７０４はステップ８０７へ戻る。また、あるよく規定された方法で解くのが「困難」である問題を見つけるまで一連のハッシュ関数Ｈ１（・）、ハッシュ関数Ｈ２（・）中を巡回する方法とることもできる（素因数分解の場合、「困難な」問題はその因子がほぼ同じサイズの２つの素数であることが判る大きな数の因数分解である）。
【００８９】
作業関数Ｆ（・）および／またはハッシュ関数Ｈ（・）への前記した修正と共に適用することができるもう１つの実施例では、オリジナルメッセージＭはＦ（＜Ｍ＞）の計算をより困難にするように修正され、その場合送り手側メッセージ処理機能７０４はより初期のステップ８０６へ戻る。
【００９０】
大概のケースにおいて、ステップ８１２は終局的に費やされた計算量Ｅ＊が送最小閾値計算量Ｅ以上である結果を得る。これが生じると、送り手側メッセージ処理機能７０４はステップ８１６において付加されたメッセージ７０６を作り上げ、それはオリジナルメッセージＭおよびＺ（すなわち、計算問題に対する解）を含むＤＯＬ７１４を含んでいる。極端な（ある尺度で）回数すなわち試行の後であってもステップ８１２の状態が満たされなければ、デフォルト処置として、それでもループをエグジットしてオリジナルメッセージＭおよび、たとえば、最も最近作り出されたＤＯＬ７１４メッセージまたは発生されたＤＯＬ７１４の最も困難なものまたは発生された全てのＤＯＬ７１４、等から付加されたメッセージ７０６を作り上げることによりステップ８１６を実施することは本発明の範囲内である。
【００９１】
ＤＯＬ７１４は、さらに、作業関数Ｆ（・）（または、その逆Ｆ−１（・））の定義を含むことができ、ＤＯＬ７１４により運ばれる計算量の適切な表現を生じさせるためにＭまたは＜Ｍ＞がどのように修正されたかを記述するのにハッシュ関数Ｈ（・）プラスその他の情報が必要である。あるいは、この情報はデータ網により独立したメッセージ内または独立したチャネルを介して（たとえば、セキュリティ強化のため）受け手へ伝えることができる。
【００９２】
あるいは、これらの関数（すなわち、作業関数またはハッシュ関数）の一方だけの定義がＤＯＬ７１４内に提供され、他方の関数の定義は独立したメッセージ内または独立したチャネルを介して受け手へ運ばれる。たとえば、作業関数Ｆ（・）が全メッセージに対する共通の単向関数（たとえば、素数への因数分解）であり、ハッシュ関数Ｈ（・）はメッセージ・メッセージ・ベースで変化する実施例を考える。この場合、図７で考えられるように、作業関数Ｆ（・）（または、その逆Ｆ−１（・））の定義を一度だけ送り手および受け手へ伝達することができ（たとえば、ソフトウェアのインストールにより）、ハッシュ関数Ｈ（・）の定義はＤＯＬ７１４内で伝達される。さらに１ステップ進むと、ハッシュ関数Ｈ（・）の定義もセキュリティ強化のために独立して（たとえば、独立したメッセージ内または独立したチャネルを介して）伝達することができる。
【００９３】
ステップ８１８において、付加されたメッセージ７０６（オリジナルメッセージＭおよびＤＯＬ７１４からなる）は受け手へ伝達される（たとえば、データ網１１０を介して）。
【００９４】
次に、前記した特定の例について考え、費やされた計算量Ｅ＊は少なくとも最小閾値計算量Ｅと同じ大きさであると仮定すると、付加されたメッセージ７０６は下記に似ている（ここで、ＤＯＬは最後の行でありＺしか含んでいない）。
2008507013.tif 000007
【００９５】
前記した特定の例では、計算問題の解は素因子２，５および２８３０７からなっている。いくつかの小さい素因子の存在により、この数を因数分解するのに比較的少ない作業しか必要とせず、受け手がこの特定の付加されたメッセージ７０６を受信すると、この事実は受け手にも明らかとなる。しかしながら、送り手は作られる正当性の乏しい提供しか実感できず、より高度の正当性を有することが判るＤＯＬとなるようにするために、メッセージを変えることができ（たとえば、メッセージ本体に追加文字やタイムスタンプを加えることにより）かつ／もしくは変換の結果（すなわち、＜Ｍ＞）を変えることができ、かつ／もしくは数を発生したハッシュ関数Ｈ（・）を変えることができ、かつ／もしくは素因子分解以外の作業関数Ｆ（・）を実施することができる。したがって、送り手側メッセージ処理機能７０４は、ある実施例において、メッセージの正当性得点を先制的に計算して、正当性得点が低すぎる場合には変更することができる。
【００９６】
図９について、受け手において、付加されたメッセージ７０６が受け手側メッセージ処理機能９０２により受信され、それは受け手がＩ／Ｏを介してアクセスを有するコンピューティング装置により実行されるソフトウェアアプリケーションとして実現することができる。コンピューティング装置の例としてパーソナルコンピュータに限定せずに、コンピュータサーバ、セルラー電話機、パーソナルデジタルアシスタント、ネットワーク電子通信装置（たとえば、Ｂｌａｃｋｂｅｒｒｙ（登録商標）等のポータブル装置）等が含まれる。
【００９７】
前記したように、付加されたメッセージ７０６はオリジナルメッセージＭを構成する第１の部分および解Ｚを含むＤＯＬ７１４を構成する第２の部分を含んでいる。さらに、ＤＯＬ７１４はＭまたは＜Ｍ＞に対する任意の修正だけでなく解Ｚを発生するのに使用された作業関数Ｆ（・）（または、その逆Ｆ−１（・））およびハッシュ関数Ｈ（・）の定義を含むことができる。あるいは、この情報を独立メッセージ内でまたは独立チャネルを介して受け手に提供することができる。
【００９８】
一般的に、受け手は付加されたメッセージ７０６以外のメッセージを含むメッセージ９０６を受信することを理解しなければならない。各受信メッセージ９０６はＤＬを含んでいたりいなかったりし、想定ＤＯＬを含む場合、このような想定ＤＯＬは「正当な」ＤＯＬ（すなわち、関連するメッセージ９０６の全てまたは一部を伴う問題に対する正しい解を表現する）であったりなかったりする。したがって、受け手側メッセージ処理機能９０２は特定の受信メッセージ９０６が想定ＤＯＬを含むかどうか、含む場合には想定ＤＯＬが正当かどうか、正当であれば送り手により十分な計算量が費やされたかどうかを検証して開始するプロセスを実行する。
【００９９】
図１０Ａについて、受け手側メッセージ処理機能９０２により実行されるプロセスの特定の非限定的実施例を示す。特に、ステップ１００２において、受け手側メッセージ処理機能９０２は受信メッセージ９０６が想定ＤＯＬを含むかどうかを決定する。含まなければ、受信メッセージ９０６はゼロ正当性得点を運ぶということができる。ステップ１００４において、受信メッセージ９０６および正当性得点はさらに処理するために受け手側メッセージングクライアント３０８へ提供される。あるいは、受信メッセージ９０６は廃棄される。
【０１００】
しかしながら、受信メッセージ９０６が想定ＤＯＬを含む場合、それは受信メッセージ９０６がオリジナルメッセージＭ＊およびＤＯＬ１００６を含む付加されたメッセージであることを意味し、それは計算問題に対する解Ｚ＊を含み、その定義は受け手側メッセージ処理機能９０２に提供されている。したがって、受け手側メッセージ処理機能９０２は想定ＤＯＬ１００６の正当性の確立へ進む。
【０１０１】
特に、ステップ１００８において、受け手側メッセージ処理機能９０２は解Ｚ＊の計算において送り手により使用されていたと思われるハッシュ関数Ｈ＊（・）および作業関数Ｆ＊（・）の逆Ｆ＊−１（・）の両方の知識を得る。受信メッセージ９０６が付加されたメッセージ７０６であれば、作業関数Ｆ＊（・）は作業関数Ｆ（・）に対応し、ハッシュ関数Ｈ＊（・）はハッシュ関数Ｈ（・）に対応しアステリスクは以下の検討において無視できることが理解される。
【０１０２】
ある実施例では、ハッシュ関数Ｈ＊（・）の定義および作業関数Ｆ＊（・）またはその逆Ｆ＊−１（・）の定義は受信した想定ＤＯＬ１００６内に含まれている。他の実施例では、これらの機能の一方または他方の定義はオフラインでまたは送り手からデータ網１１０を介した代替チャネルで提供される。
【０１０３】
次に、ステップ１０１０において、受け手側メッセージ処理機能９０２は受信メッセージＭ＊を記号列＜Ｍ＊＞へ変換し、ステップ１０１２において＜Ｍ＊＞にハッシュ関数Ｈ＊（・）を適用して第１の中間値Ｙ＋を得る。
【０１０４】
ステップ１０１４において、受け手側メッセージ処理機能９０２はＦ＊−１（Ｚ＊）を計算する、すなわちそれは受信した解Ｚ＊に作業関数の逆を実行して第２の中間値Ｙ＊を得、それは第１の中間値Ｙ＋と一致しなければならない。ステップ１０１６において、第１および第２の中間値が比較される。一致しなければ、受け手側メッセージ処理機能９０２は受信したＤＯＬ１００６は不当すなわち偽であると即座に結論づける。したがって、受信メッセージ９０６は低いまたはゼロの「正当性得点」を運ぶということができる。ステップ１０１８において、オリジナルメッセージＭ＊と正当性得点の両方がさらに処理するために受け手側メッセージングクライアント３０８へ提供される。あるいは、受信メッセージ９０６は廃棄される。
【０１０５】
しかしながら、ステップ１０１６においてＹ＋およびＹ＊間に整合があると仮定すると、受け手側メッセージ処理機能９０２は図１０Ｂについてこれから説明するサブプロセスの実行に進む。
【０１０６】
特に、ステップ１０２０において、受信メッセージ９０６の発生に関連して費やされた計算量の程度が評価され、ある実施例ではＴ＊として定量化することができる。これは暴力的方法、たとえば、送り手と同じ計算問題、すなわち、Ｆ＊（Ｈ＊（＜Ｍ＊＞））を解き、解を作り出すのに必要な時間またはＣＰＵサイクルを決定して行うことができる。あるいは、受け手側メッセージ処理機能９０２は作業関数Ｆ＊（・）の知識、ハッシュ関数Ｈ＊（・）の知識、および恐らくは解Ｚ＊の知識に基づいて、暴力的計算を実施する必要なしにそれ自体の独立評価を行うことができる。
【０１０７】
たとえば、Ｆ＊（・）が素因子Ｚ＊＝ｐ１，ｐ２，ｐ３，．．．に対応するケースについて考える。このケースでは、評価された計算量（ある実施例では特定値Ｔ＊で示される）は次のように因子に関連づけることができる。
【０１０８】
（Ｉ）Ｆ＊（Ｈ＊（＜Ｍ＊＞））は、たとえば、かなり小さい素因子を含む比較的小さい数であるかあるいは素数自体であるために、ある意味で計算（因数分解）が簡単であったか。
Ｚ＊の与えられた値を参照せずにＦ＊（Ｈ＊（＜Ｍ＊＞））自体を計算することを受け手に実際に試させる直接的方法だけでなく非常に多くのヒューリスティックな方法により簡単さをテストすることができる。たとえば、評価された計算量は（Ｈ＊（＜Ｍ＊＞）が１つ以上の小さな素因子を有するか（それは試行分割（ｔｒｉａｌ  ｄｉｖｉｓｉｏｎ）等の技術により迅速に確立できる）それ自体が素数であれば簡単と見なすことができる。後者のケースはえせスパマが大きな素数に切り刻まれるメッセージを発生する試みを思いとどまらせる。
【０１０９】
（ＩＩ）補助座標を識別する受信メッセージＭ＊の部分
特に、受信メッセージＭ＊内のデータ情報はずっと前に発生されている受信メッセージＭ＊およびある比較的低廉なリソースにより計算されたＤＯＬ１００６を指すことができる。
【０１１０】
（ＩＩＩ）因子ｐ１，ｐ２，．．．は実際に素数であるか。
当業者ならば、そうするための方法の例を下記のプリプリントに記載された多項式時間アルゴリズムから引き出すことができる。エム．アグラワル．エヌ．カヤルおよびエヌ．サクセナ，ＰＲＩＭＥＳ  ｉｓ  ｉｎ  Ｐ，Ａｎｎａｌｓ  ｏｆ  Ｍａｔｈｅｍａｔｉｃｓ  １６０（２００４），７８１−７９３。読者は本開示の一部としてここに組み入れられているアンドリュ  グランビルの２．５節，Ｂｕｌｌｅｔｉｎ  ｏｆ  ｔｈｅ  Ａｍｅｒｉｃａｎ  Ｍａｔｈｅｍａｔｉｃａｌ  Ｓｏｃｉｅｔｙ，Ｖｏｌ  ４２（２００５），ｐｐ３−３８も参照されたい。あるいは、疑わしい因子は標準数論技術を介して素数であることが「極めてありそう」であることを検証できる。ここで、「極めてありそう」は全く確実ではないが本質的に任意の高い信頼度でありそうなことを意味する。たとえば、間違われることは１時間の間に受け手が雷に打たれることよりもありそうにないほど高い確率で因子を素数と断言することができる。
【０１１１】
これら後者の技術を使用して、数が素数であることを非常に短い量のＣＰＵ時間内に非常に高い確率でチェックするのは容易である。これに関する例として、「複合性の証拠（ｗｉｔｎｅｓｓ  ｔｏ  ｃｏｍｐｏｓｉｔｅｎｅｓｓ）」の概念に基づいてあるアルゴリズムが存在する。そのアイデアは素数をテストしたい数Ｑを有する場合、Ｑの複合性の「証拠」ＷはＱが複合であればｇ（Ｑ，Ｗ）はある評価し易い関数ｇに対するある指定値に等しく、そうでなければＱがテストから複合であるか否かに関して無知のままであるということであり、本開示の一部としてここに組み入れられている、（たとえば、Ｈａｎｄｂｏｏｋ  ｏｆ  Ａｐｐｌｉｅｄ  Ｃｒｙｐｔｏｇｒａｐｈｙ，ｂｙ  Ａ．Ｍｅｎｅｚｅｓ，Ｐ．ｖａｎ  Ｏｏｓｃｈｏｔ，ａｎｄ  Ｓ．Ｖａｎｓｔｏｎｅ，ＣＲＣ  Ｐｒｅｓｓ，１９９６内のＳｏｌｏｖａｙ−Ｓｔｒａｓｓｅｎ  ｔｅｓｔ  ａｎｄ  ｔｈｅ  Ｍｉｌｌｅｒ−Ｒａｂｉｎ  ｔｅｓｔ参照）。任意のＱの複合性の証拠はＱの下に多かれ少なかれ均一に分布されＱよりも小さいランダムに選択された数は指定された僅かな時間、たとえばＳｏｌｏｖａｙ−Ｓｔｒａｓｓｅｎテストの場合はおよそ半分の時間、証拠であるような数論者には既知のｇの選択がある。正味の結果は少しの計算量で数が素数である任意所望の確率Ｐ（Ｐは１００％よりも小さい）を有することを確立することができる。これは良い信頼度で素数性をチェックする有用な手段であり、ある実施例では、必要な計算量が（確実ではなく）恐らく費やされていることをメッセージ受け手が受け入れるのに十分である。
【０１１２】
また、送り手がＺ＊（すなわち、計算問題に対する解）の一部として、数は素数性の証明書（たとえば、プラット証明書）を介して事実素数である証明を送るのを許すことができる。素数性証明書に関するより多くの情報に対して、読者はアンドリューグランビルの前記した著作を参照されたい。フエルマの小逆定理（ｌｉｔｔｌｅ  ｔｈｅｏｒｅｍ  ｃｏｎｖｅｒｓｅ）に基づく特定の素数性証明書がプラット証明書である。プラット証明書に関するより多くの情報に対して、読者は本開示の一部としてここに組み入れられているｈｔｔｐ：／／ｍａｔｈｗｏｒｌｄ．ｗｏｌｆｒａｍ．ｃｏｍ／ＰｒａｔｔＣｅｒｔｉｆｉｃａｔｅ．ｈｔｍｌを参照することができ、その抜粋を下記に示す。
一般的なアイデアはある時間うまく確立されていたが、プラットは証明書ツリーが多項式サイズであり多項式時間内に検証できたことを証明する最初の人となった。プラット証明書を発生するために、ｎは正の整数であり｛ｐｉ｝はｎ−１の素因子のセットであると仮定する。ｘｎ−１≡ｌ（ｍｏｄ  ｎ）但しｅが（ｎ−１）／ｐｉの一つである時は常に
2008507013.tif 000008
であるような整数ｘ（「証拠」と呼ばれる）が存在するものとする。フエルマの小逆定理はｎが素数であると述べている（Ｗａｇｏｎ  １９９１，ｐｐ．２７８−２７９）。フエルマの小逆定理をｎ−１の各因子とされているものへ機能的に適用することにより、与えられた素数に対する証明書を発生することができる。言い換えると、プラット証明書は数ａが乗法グループ（ｍｏｄ  ｐ）の原始根であり、それはａが次数ｎ−１を有する事実と共に、ｐが素数である証明を与える。
【０１１３】
次に、ステップ１０２２において、評価された計算量Ｔ＊が最小閾値計算量Ｔと比較される。最小閾値計算量Ｔは特定のメッセージが正当である（すなわち、高い正当性得点を有する）と見なされるために、そのメッセージの発生に関連して費やされるのに必要な最小計算量に対応する。最小閾値計算量Ｔは受け手により構成することができ、前記したある実施例において送り手により使用された最小閾値計算量Ｅと同じであったり違ったりする。
【０１１４】
評価された計算量Ｔ＊が少なくとも最小閾値計算量Ｔと同じであれば、受け手側メッセージ処理機能９０２はステップ１０２４へ進み、そこでオリジナルメッセージＭ＊は受け手側メッセージングクライアント３０８へ転送される。さらに、正当性得点を受信メッセージ９０６に割当てることができ、ステップ１０２６において、受け手側メッセージングクライアント３０８へ転送される。正当性得点は評価された計算量Ｔ＊が最小閾値計算量Ｔを超える程度と相関させることができる。
【０１１５】
しかしながら、評価された計算量Ｔ＊が最小閾値計算量Ｔを下回る場合には、実施例に応じて多様なシナリオが可能である。たとえば、ステップ１０２８において、受け手側メッセージ処理機能９０２は受信メッセージ９０６を廃棄し、随意ステップ１０３０において、受信メッセージ９０６が送り手により再送信されることを要求する。あるいは、ステップ１０３２において、受信メッセージ９０６は低いまたはゼロ正当性得点の表示と共に受け手側メッセージングクライアント３０８へ送られる。
【０１１６】
前記したように、受け手側メッセージングクライアント３０８は受け手がＩ／Ｏを介してアクセスを有するコンピューティング装置により実行できるソフトウェアアプリケーションとして実現できる。コンピューティング装置の例としてパーソナルコンピュータに限定せずに、セルラー電話機、パーソナルデジタルアシスタント、ネットワーク電子通信装置（たとえば、Ｂｌａｃｋｂｅｒｒｙ（登録商標）等のポータブル装置）等が含まれる。前記したように、受け手側メッセージングクライアント３０８は受け手にさまざまな受信メッセージおよび関連する正当性得点を運ぶグラフィカル・ユーザインターフェイス（ＧＵＩ）を実現することができる。
【０１１７】
前記したアルゴリズムが実際上どのように実現されるかのより包括的な例として、Ｃで書かれＬｉｎｕｘまたはＣｙｇｗｉｎ（Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）のさまざまなバージョンが幾分ＵＮＩＸ（登録商標）システムのように作用できるようにするために元々Ｃｙｇｎｕｓ  Ｓｏｌｕｔｉｏｎｓにより開発されたフリーソフトウェアツールの集り）付Ｗｉｎｄｏｗｓ（登録商標）の元でＧＣＣ（ＧＮＵ  Ｃｏｍｐｌｉｅｒ  Ｃｏｌｌｅｃｔｉｏｎ）によりコンパイルされ実行されてＧＣＣをＷｉｎｄｏｗｓ（登録商標）の元で実行できるようにする下記のプログラムについて考える。
2008507013.tif 000009
2008507013.tif 000010
2008507013.tif 000011
2008507013.tif 000012
2008507013.tif 000013
2008507013.tif 000014
2008507013.tif 000015
2008507013.tif 000016
【０１１８】
Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）に対して適切な“ｕｎｓｉｇｎｅｄｌｏｎｇ  ｌｏｎｇ  ｉｎｔ”データタイプと等価なもののインプリメンテーションへの少しの変更を伴う同様なワーキングインプリメンテーションもＭｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）オペレーティングシステムに対して書かれており、本発明に記述されているいくつかのメールソーティングアルゴリズムのいくつかを表すＯｕｔｌｏｏｋ（登録商標）  ｗｉｔｈ  ａ  ＧＵＩに組み込まれている。
【０１１９】
前記した各プログラムは標準入力および出力ストリーム“ｓｔｄｉｎ”および“ｓｔｏｕｔ”を介してＩ／Ｏを処理する。最初のｍａｋｅｄｏｌ．ｃと呼ばれるものは問題とするメールメッセージに適用されるハッシュ関数の出力であるプレーンＡＳＣＩＩテキストとして表される１６の１６進数字を入力として期待する。後者の数は因数分解のための良好な候補としては大きすぎるため、より短い新しい数が構成される。多くの技術が考えられるが、ここで具体的なインプリメンテーションとして行われるのは１６進数字「５」を取り上げ、それに入力として与えられた（１４桁１６進数に近づくため）切り刻まれたメッセージの最初の１３（１６進）桁を付け、これを機能するためのハッシュとして取り上げることである。「５」の数字の使用はおおかた任意であったが、（たとえば、前記したハッシュ関数の出力の最初の１４桁を単純に取り上げる場合のように）１４桁１６進数の最初の桁はゼロではなかったことを確実にすることが動機であり、それは第１桁がゼロがあるとその時因数分解したいものよりも小さい数となるため、一般的に「５」は因数分解するのに長くかかる大きい数との良好な妥協とおもわれるためである。
【０１２０】
ハッシュ関数を適用した結果は“ｎ”として示される。次に、全ての数論的タスクは商業的インプリメンテーションにおける最も適切で、恐らくは最も複雑な、アルゴリズムを使用して実現できることを理解して、試行分割により最も単純な方法でこの数を因数分解する試みがなされる。数ｎが素数であるか、またはそれが少なくとも２つの大きい素数（大きいはＢＩＧＡＣＤＥＦにより定義される）の積であって易しすぎる問題を表すか、またはＭＡＸＦＡＸＴＯＲほど大きい試行因子（ｔｒｉａｌ  ｄｉｖｉｓｏｒ）に達して困難すぎると思われるため因数分解するのに長くかかっている場合、ｎは１だけ増分され、それは因数分解するのに「困難」すぎず「易し」すぎない数を得るのに必要なだけ繰り返される。少なくとも２つの大きい素数の積である数は十分に一般的であるため、ある量の時間または試行後に適切に困難な問題（すなわち、大きい素因子を有する大きい数の形）に出会うものと思われる。そうでなければ、前記したデフォルト処置を適用することができる。
【０１２１】
次に、最後のＤＯＬが＜ｈａｓｈｅｄ，ｍｅｓｓａｇｅ  ｏｆ  １６  ｈｅｘｄｉｇｉｔ＞：＜ｎｕｍｂｅｒ  ｏｆ  ｉｎｃｒｅｍｅｎｔｓ  ｏｆ  ｎ  ｎｅｅｄｅｄ＞：＜ｆａｃｔｏｒｓ  ｏｆ  ｎ  ｓｅｐａｒａｔｅｄ  ｂｙ  ｃｏｌｏｎｓ  ａｎｄ  ｔｅｒｍｉｎａｔｅｄ  ｗｉｔｈ  ａ  ｃｏｌｏｎ＞として構成される。
【０１２２】
ＤＯＬをチェックするプロセスは単純である。前記した１６進数字ハッシュ（ＤＯＬ発生器へ与えられたオリジナルハッシュの最初の１３桁が続く「５」）プラス増分数から引き出される数は素因子と断言される数の積に等しくなければならず、素因子と断言される各数は実際に素数でなければならない。このインプリメンテーションにおいて、素数性は可能な全ての因子による試行分割により絶対的信頼性で決定される（しかしながら、非常に高速の確率的アルゴリズムを使用して決定することができる）。これは遥かに、遥かに大きい数の因数分解を必要とするＤＯＬを作るための計算量に較べて、実際上、チェックする側で非常に時間を消費するものではない。他で触れるように、これは単純なインプリメンテーションであり、もちろん、より良い数論アルゴリズムを使用することができる。
【０１２３】
再び、前記した例は特に電子メールメッセージを参照したが、メッセージ自体は電子メールメッセージに限定されず、一般的に任意の通信または転送またはデータを表すことができる。特に、前記したメッセージは手紙、フライヤ、小包その他を含む従来の郵便、電話で送られる制限の無いテキストおよび／または映像その他のメッセージ、インスタントメッセージ（すなわち、リアルタイム通信システムたとえばインターネットを介して送られるメッセージ）、ファックス、テレマーケッティング呼その他の電話呼、ウェブサーバ等の目標コンピュータへの命令、より一般的には静止または動画、音、テキストその他のデータを送信する任意の電子システムにより送られる任意の情報または通信、その他のデータまたは情報通信手段等の物理的通信の全てまたは一部のデジタル表現を含むことができる。
【０１２４】
トラップドア情報を使用する実施例
ある環境では単向関数ではない関数を使用するのが道理にかなうことがある。たとえば、「トラップドア情報」と呼ばれＷで示す、付加情報片がなければその値を両方向で計算するのは困難である関数を使用するのが道理にかなうことがある。このような関数はトラップドア情報Ｗが判れば単向関数になる。トラップドア情報Ｗは秘密に維持したり（たとえば、ＲＳＡ（登録商標）トークン）公にアクセスしたりすることができる（たとえば、ＩＰ電話のＩＰアドレス）。
【０１２５】
図１１は送り手側メッセージ処理機能１０２により実行されるプロセスの例を示し、トラップドア情報Ｗは送り手が作業関数を実行するのに使用される。作業関数はここではＦＷ（・）として示されその逆はＦＷ−１（・）として示される。送り手はトラップドア情報Ｗを受け手に送って受け手が非常に容易に逆関数ＦＷ−１（・）を計算できるようにする。図１２は受け手側メッセージ処理機能３０２により実行されるプロセスの例を示し、トラップドア情報Ｗは送り手から受信され受け手が逆関数ＦＷ−１（・）の実行を容易にするのに使用される。
【０１２６】
関数ＦＷ（・）を使用する利点は、限定はしないが、どのメッセージが信頼できるＤＯＬを有しているかを検証しかつ／またはメール通信を「ランク付けする」ことが受け手しかできないことを含んでいる。それにより、メッセージを盗み見る人を混乱させるために多数の不正確な（すなわち、「偽の」）メール通信の中の１つの正確な（すなわち、「真の」）メッセージをある人が送ることができる。しかしながら、たとえば、どのメッセージが信頼できるＤＯＬを有しているか、またはある方法で、たとえば、受信メッセージの正当性得点に従ってメッセージを信頼できるＤＯＬでランク付けするために、受け手は関数ＦＷ（・）プラストラップドアＷを使用することができる。このようなランク付けは、たとえば、ホワイトリスティングその他の規準と組み合わせて自分等のメッセージが、たとえば、ホワイトリスト上の外観に基づいて読み出されることを期待する送り手がメッセージの重大さまたは重要さを添付ＤＯＬを介して示せるようにすることができる。
【０１２７】
代替実施例では、送り手はトラップドア情報を受け手に運ばないように選択することができ、あるいは誰にもそれを運ばないように選択することができる。後者の場合、たとえば、どのメッセージまたは通信が正当であるかを送り手しかランク付けできない。この方法はいくつかのエリアに応用することができ、たとえば、ブラウザ（送り手）はウェブをサーフィンしている時に自分のウェブサーフィン歴が外部パーティに知らせないようにすることができる。この場合、自分のブラウザ訪問サイトを自動的に思い描くことができ、そうしている時はこれらの通信（ここでは、これらのウェブサーバ要求に対するもの）に対してスプリアスな（かつ、ある実施例では、潜在的に計算が容易である）ＤＯＬを発生する。前記ブラウザ（送り手）自身がウェブサーバを訪問している時は、自分のコンピュータは正当なＤＯＬを発生することができる。これらのＤＯＬをどのように検証するかはブラウザ（送り手）しか知らないため、自分の真のウェブサーフィン歴が何であるかをブラウザ（送り手）しか検証できず−外部パーティは正当なＤＯＬを添付せずにウェブブラウザが行った自動ブラウジングにより発生する全「ノイズ」により混乱させられる。
【０１２８】
緊急性を考慮する実施例
ＤＯＬの発生は時空間座標に敏感とすることができるため、前記した正当性だけでなく、「緊急性」と呼ぶことができる付加品質も表すことができる。すなわち、短い送付時間間隔内に受け手により受信された緊急アクション−日付および時間情報を含むＤＯＬが有する−を要求するメッセージは単に適用されているだけでなく語のオペレーティングシステム感覚の高い優先順位で適用されているＤＯＬを発生するのに必要な関連計算リソースを示す。短い通告のオンデマンド大量計算等のリソースは一般的に低優先順位の場合よりも多くのコストがかかり（極端なケースはいわゆる「スペアサイクル」）、日付／時間情報を含むハッシュ関数に基づく良好なＤＯＬを使用して緊急の概念を運ぶことができる。
【０１２９】
図１３は送り手側メッセージ処理機能１０２により実行されるプロセスの例を示し（図１８のフロー図と同様）、「緊急性」の知識はステップ１３００において考慮されステップ８０７および８０８を実行するのに使用されるＣＰＵサイクルの割当てに影響を及ぼすのに使用される。図１４は受け手側メッセージ処理機能３０２により実行されるプロセスの例を示し、緊急性はステップ１４００−１４０４において評価され、それに続くメッセージ処理の残りは図１０Ａおよび１０Ｂについて前記したものである。
【０１３０】
採用されたインプリメンテーション方式に応じて、メッセージの緊急性は想像上のスパマにより潜在的に捏造されることがある。たとえば、想像上のスパマが将来のある時の日付を捏造し後で送信するＤＯＬを計算することが考えられる。しかしながら、この方法はある形式のタイムスタンピングを導入したり、定められた時間における定められた株の価格その他の前記した補助データ等の、ある予測不能情報片への依存性を導入して打ち破ることができる。
【０１３１】
カスケードＤＩＬ発生を使用する実施例
ある状況では、大きな計算ファームを−並列その他で−使用してＤＯＬを発生する試みに関わることがあり、その場合ＤＯＬは作業が多くのマシン間で分割されるのを許さない方法で発生されることが保証されるようにしたい。たとえば、前記した方式のいずれかに従ってＤＯＬが発生された後で、付加されたメッセージ（すなわち、ＤＯＬにより付加されたオリジナルメッセージ）を自己の権利で新しいメッセージとして考慮することができる。次に、付加されたメッセージに対してＤＯＬを発生することを要求することができ、さらに付加されたメッセージが得られる。これは何度でも繰り返すことができ、付加された各メッセージは、どれだけ多くのマシンを持っていても、前のメッセージが発生されるまで−すなわち、前のＤＯＬが計算されているまで作業を開始できない新しい問題を表す。ＤＯＬ付加メッセージはそれ自体がメッセージであるという事実の必然的結果としてＤＯＬ発生は反復できるだけでなく、暗号化、圧縮において任意の順序で自由に混合することができ、あるいは必要なまたは所望の任意他のメッセージ処理において任意の順序で任意の回数混合することができる。
【０１３２】
事実、単一送り手のマシン上でのＤＯＬ方法の標準実施例としてこの方法を採用することができる。このように進めることにより−例として、限定はしないが、−各反復におけるハッシュ関数が解くのが「適度に」簡単な問題（すなわち、比較的迅速にできる）を生じることを保証できるが、このプロセスはある回数繰り返す必要がある。しかしながら、この場合、反復ＤＯＬ計算の全シーケンスが正しく行われていることを所期の受け手が検証するのは容易であることを保証し続ける必要がある（そのために、限定はしないが、各段階において素数性または類似アイテムの証明書を含むこともでき、それにより受け手の計算チェック作業はより容易になる）。
【０１３３】
総累積消費計算量Ｅ＊＿ｔｏｔａｌが少なくとも閾値計算量Ｅに達する前に、連続的に付加されたメッセージ（Ｈ（＜Ｍ＞），Ｈ（＜Ｍ＞，Ｚ１），Ｈ（＜Ｍ＞，Ｚ１，Ｚ２）等）にハッシュ関数ができるだけ多くの回数繰り返されるケースに対する発生プロセスが図１５に示されている。図１６は連続的に付加されたメッセージにハッシュ関数が固定回数Ｊだけ繰り返されるケースを示す。
【０１３４】
サードパーティＤＯＬ発生を使用する実施例
本コンテキスト内でＤＯＬの発生に伴う計算量は機構、会社その他の所要計算リソースを提供したい所へ下請けにだすことができる。事実、有料でＤＯＬを発生するのに必要な計算を実施することに基づいて新しい形の事業を作り出すことができる（本質的には、私設「郵便局」）。これは非限定的例として図１７に示されており、送り手側メッセージ処理機能１０４は第１のネットワーク１７００により送り手側メッセージクライアント１０２に接続され、かつ第２のネットワーク１１０（第１のネットワーク１７００と同じでもあってもなくてもよい）を介して受け手にも接続されるサードパーティである。この実施例では、送り手側メッセージクライアント１０２は（サードパーティ）送り手側メッセージ処理機能１０４にネットワーク１７００を介して適切な程度の計算量（たとえば、閾値計算量Ｅを超える）を提供する。
【０１３５】
同様に、受け手側において、受信電子メッセージの正当性得点を決定するのに伴う計算量は機構、会社その他の所要計算リソースを提供したい所へ下請けにだすことができる。事実、有料で受信電子メッセージの正当性を確立するのに必要な計算を実施することに基づいて新しい形の事業を作り出すことができる（ここでも、本質的には、私設「郵便局」）。
【０１３６】
さらなる観察および応用
したがって、当業者ならば関数Ｆ（・）は、予め完全に定められているのではなく、送り手により指定することができ、それにより受け手は着信メッセージを、単純に「スパム」または「正当なメール」とラベルを付すのではなく、ＤＯＬによりランク付けすることができる。また、受け手は、所望により、ＤＯＬ測度を現在使用中または将来導入される任意他のスパムフィルタリング技術と組み合わせることができる。
【０１３７】
さらに、ある実施例では、受け手はメッセージが実際に重要であることを明示するために送り手がある作業を実施するよう要求することができ、さらに、受け手は送り手がメッセージをどれだけ重要と感じるかを定量化するよう送り手に要求することができる。
【０１３８】
Ｆ（・）の選択における柔軟性により送り手はなされる作業量を測ることができ、これを調節して送られるメッセージを受け手に読ませる関心の変動する程度を表すことができる。また、それにより送り手はなされる実際の作業が予想していたよりも遥かに少ないことが判るまぐれ当たり状況を検出して、異なる明示困難なタスクを選択することができる。ここでも、ＤＯＬの発生に費やされる計算量の程度がある範囲内に入る（単純に閾値よりも大きいのではなく）ことを送り手が保証する、または送り手が計算量を全く評価しない（たとえば、大半の時間計算量は十分であることを予期するまたは知る、等）ことも本発明の範囲内に入ることを繰り返さなければならない。これはＥ＊がＥに匹敵する前記した例に影響を及ぼし、事実Ｅ＊がある範囲内であるかをチェックする（事実、それは閾値計算量Ｅにより下に固定されるかＥ＊を全くチェックしない）ことは本発明の範囲内に入る。
【０１３９】
さらに、ここに記述された技術はメッセージの性質についてなにも仮定はせず（そのため、たとえば、通信が医者と患者間の正当なものであっても−Ｖｉａｇｒａ（登録商標），Ｃｉａｌｉｓ（登録商標），または大概のスパムフィルタが非常に除去すると思われる他のプロダクト等の調合薬に言及することができる）、コンテンツ、発信者、ベイズ技術、ホワイトリスト／ブラックリスト、等に基づく任意の利用可能なフィルタをここに記述された方法と同時に使用することができるが、受け手が送り手を認識する必要はない。
【０１４０】
ここに記述された技術は、前記したように、限定はしないが、暗号化（ステガノグラフィックその他）、圧縮およびウォータマーキングを含むオリジナルメッセージの任意の処理形式と自由に組み合わせることができ、これらの処理形式は、さらに、または替りに付加されたメッセージに適用することができる。
【０１４１】
さらに、本発明の多くの実施例は単に少量の付加データをＤＯＬとして送るだけでよいため、ここに記述された方法は多くの応用において任意の形式の通信に使用される基本的なインフラストラクチュアを著しく変更せずに実現することができる。ここに記述された方法により、送り手は任意に困難な計算を介して任意程度の正当性を表すことができる。言い換えれば、ここに記述された方法により誰かが変動する量のリソースを費やして他の誰かの注目を得ることができる。正当性（その中に含まれる計算量はある例では定量化できる）の表明を通信することにより、これはメッセージにどのように対処するかをその後判断するために受け手により容易にチェックすることができる。
【０１４２】
当業者ならば、本発明の非限定的応用例は、通常「スパム」と呼ばれる、不要メッセージのコントロールを含むことがお判りであろう。特に、応用は電子的スパムの対処方法（限定はしないが、電子メール、ファックス、テキストメッセージサービス、インスタントメッセージングサービス、テレマーケッティング呼、その他を含む通信媒体における）を含んでいる。
【０１４３】
本発明の応用の他の非限定的例は、限定はしないが、意図の正当性を受け手に明示する通信を個人が開始できるようにするサービスの提供を含む、本技術の採用により生じる新しい事業機会を含んでいる。
【０１４４】
前記したＤＯＬ方法は、限定はしないが、テレフォニー（限定はしないが、“Ｖｏｉｃｅ  ｏｖｅｒ  ＩＰ”すなわち“ＶｏＩＰ”テレフォニーを含む）、ボイスメール（限定はしないが、ＶｏＩＰボイスメールを含む）、ファックス（限定はしないが、ＶｏＩＰファックスまたは他の電子的ファクシミリサービスを含む）および電子的または究極の通信がメッセージを電子的形式へ変換するための追加作業を要する形式である（たとえば、光文字認識等の手段によりテキストへ変える必要があるファックスされた資料、または、たとえば、音声認識ソフトウェアによりテキストへ変換することができる通常の電話音声メール）および／または接続がなされていたら情報は１回通信されるだけのような（たとえば、通常の電話通話）任意他の媒体へ拡張することもできる。
【０１４５】
ＤＯＬ方法を付加媒体を包含するように拡張する１つの容易に実現できる手段は、限定はしないが、受け手に対して立証するＤＯＬ問題を生成することである。たとえば、入力として受け手（または被呼者）のアドレス（すなわち、電子メールアドレスと等価のもの）、送り手（発呼者）のアドレスおよび、恐らくは、ある形式のタイムスタンプを介した日付等の付加情報を有するハッシュ関数を介してＤＯＬ問題を発生するだけで十分である。しかしながら、たとえば、データエレメント（たとえば、擬似ランダム数）を得るための通信を開始してこの数をＤＯＬタスクにも含める前に受け手と自動的にコンタクトまたはピンギングすることによりＤＯＬインプリメンテーションをよりロバストにしたいことがある。
【０１４６】
送り手および受け手のコーディネートだけで決まる前節のＤＯＬ発生は十分に困難なＤＯＬ計算に対して十分なデータを構成しないことがある。したがって、前節の応用をカバーするＤＯＬ概念を拡張するもう１つの方法はＤＯＬ問題に「ペッパー」を加えることである。これは、非限定的な実施例において、明確に定義されたある方法（たとえば、メッセージのテキストに追加文字を付加する）で付加情報（「ペッパー」）を含み、より挑戦的な問題へ切り刻んで「ペッパー」をハッシュ関数の記述の一部として送るものと記述することができる。この例では、たとえば、テレマーケッターはこの計算を一度だけ行ってそれを再利用できるため、時間と共に変わるある情報−すなわち、タイムスタンプ−も必要とする。「ペッパー」を加えるこの概念は随意、前節で述べた、擬似ランダム数等のデータエレメントを得るために受け手をピンギングする概念と組み合わせることができる。
【０１４７】
ＤＯＬ発生方法のもう１つの応用はテレビジョンメッセージその他の放送メディアのエリアであり、限定はしないが、広告またはコマーシャルを含み、たとえば、インターネットプロトコルテレビジョン（ＩＰＴＶ）やｖｉｄｅｏ−ｏｖｅｒ−ＩＰ受け手は、受け手に送り手のメッセージを見させる送り手の真剣さを表すために送り手により費やされた計算量の程度に関して警告を受けることができる。これにより、たとえば、十分に高い正当性得点を有するＤＯＬを有するものしか受け手に示されないストリーミングビデオ内に多数の広告が現われることがある新しい展望を広告に開始する。これは広告者、より一般的には受け手との見せ掛けの通信者が計算量の異なるＤＯＬを提供することによりビューア注目を「競り合う」ものと考えられる。また、これによりビューアがある設定値よりも高いコストの広告しか見ないことを選択してさまざまな広告者が注目を得るために行った計算量を発生、またはランク付けするのを許すだけでなく、メッセージは実際上特定のビューアまたはそのクラスへ向けたことを広告者が示すのを許すことにより目標を定めた広告を可能とする。ここに記述された方法は、限定はしないが、ウェブ、掲示板上のポップアップ広告、あらゆるバラエティの特定場所広告、セルホーンその他のモバイル通信装置を介した広告、等を含む他の全てのメディア−電子的その他の−における広告に応用することもできる。
【０１４８】
任意形式のメッセージについて、デジタル化できる、すなわち、数へ変換できるメッセージの正当性を確立することも本発明の範囲内である。これは、たとえば、物理的メールや小包であっても、たとえば、文書の一部または全部をスキャニングすることにより数へ変えられることを意味する。文書の一部のスキャニングはハッシュコード発生のインプリシット形式を構成する。たとえば、カタログを送っている人はカタログのカバーだけについて正当性を明示することを選択し、次に、カタログの任意特定のページをわざわざ見るか否か選択することを受け手に許す。物理的通信の全てまたは一部が数になっていると、ＤＯＬを作り出して−限定はしないが、後で電子的その他の手段で読み出せるようにパッケージ上に直接プリントするか、またはある他のチャネルを介して数を電子的に送ることを含む−任意の簡便な手段により送ることができる。文書の一部または全部のスキャニングは詐称ＤＯＬが信頼できることを確証するために受け手またはある信頼された媒介−たとえば、コマーシャルサービス−により実施することができる。インプリシットハッシュコードの一部としてメッセージの一部だけを使用して正当性を明示する可能性を含む同じ原理が電話回線を介して送られるファックスまたは、テレマーケッティングその他の電話通信（限定はしないが、Ｖｏｉｃｅ  Ｏｖｅｒ  ＩＰすなわちＶｏＩＰを含む）、インスタントメッセージングサービス、移動電話サービス（呼、テキストメッセージ、等）に応用される。
【０１４９】
電子メールを介した電子的メッセージの状況における特定の付加応用はウェブページとのインタラクションから生じるメッセージに対するものである。たとえば、ウェブサーバはポップアップウインドウ（たとえば、ポップアップ広告その他の情報を含む）にＤＯＬを付けて、ポップアップウインドウ内で提供される情報は実際に正当な性質のものである（たとえば、送り手−広告者等−はポップアップ広告がブラウザまたは受け手により見られることに十分関心があり、送り手はこれを明示するのに適切な計算リソースを費やしている）ことをブラウザ（受け手）に表示することができる。
【０１５０】
また、他のポータブルおよび非ポータブル電子装置だけでなく、セルホーンの状況における前記したＤＯＬ方法の新しい応用の広い範囲を思い描くことができる。非限定的な実施例では、セルホーンのユーザはＤＯＬソフトウェアを使用してそれらと電子的に通信したいものはそれらの通信（潜在的には、たとえば、音声通話の場合は、通信を開始する要求）に適切なＤＯＬを付随させる必要がある。この場合、送り手はＤＯＬを−ポータブルであれ非ポータブルであれ−それら自身の装置上で発生することができ、あるいはそれらのサービスプロバイダまたは他の外部パーティにこれをさせることができる。同様に、受け手はＤＯＬ計算をそれらの装置上で確証したりそれらのキャリヤまたは他の外部パーティにこれをさせることができる。
【０１５１】
ここに記述された方法を使用して、通常はインターネットを介してまたは他の電子的手段により接続された他のマシンとの無差別通信により伝播するウィルスの拡散をコントロールするのに使用することもできる。
【０１５２】
ここに記述された方法は非常に多くのスプリアスアクセスが定められたコンピュータサーバ（たとえば、ウェブサイト）またはデータベースに対して開始される、ウェブサイトに対する広範な電子的攻撃、たとえば、「サービスの否定」攻撃に取り組むのにも使用することができる。たとえば、ＤＯＬは各アクセス要求に対して必要とされることがあり、あるいは、メールの状況において提示されたように、受信アクセス要求を優先順位（正当性得点による）でランク付けするのに使用することができる。このようなサービスが有用であることを見つけるエンティティの例は、各アクセス要求に対して課金するサイトだけでなく無償サービス（Ｇｏｏｇｌｅ（登録商標）検索等）を提供するウェブサイトを含む。
【０１５３】
関連する状態において、プロダクトを電子的に購入したい−たとえば、特定のウェブサイトでオンラインで−個人にはＤＯＬの提供を要求することができる。
【０１５４】
ここに記述された発明は従業員、コンサルタントその他間でメッセージをカーボンコピーする（“ｃｃ”）、ブラインドカーボンコピーする（“ｂｃｃ”）、または多数の人々へ転送する傾向がある組織、特に、大きい組織内で特に有用である。人々は自分等自身が多数の電子メールにさらされる−その多くは彼等にあまりまたは全く関係ない−ことを知るため、この傾向によりこれらの組織における生産性に損失が生じる。ここに記述された方法を採用することにより、組織は人々に電子メールを送ることにコストが伴う（リソースに関して）ことを確実にすることによりこの問題をコントロールすることができる。
【０１５５】
ここに記述された方法により新しい事業を発生するもう１つの機会は前記した補助情報の販売を含む。これは、決定論的（擬似ランダムを含む）計算に基づく計算を介するだけでなく、恐らくは他の現象に基づきまたは現在の理解に従って真にランダムである（たとえば、量子力学プロセス）ものを含む、このような補助データを作り出すために生成または利用される装置またはプロセスを介して、株価等の外部現象の観察を介して行うことができる。
【０１５６】
ここに記述された方法により新しい事業を発生するもう１つの機会は、電子メール、テレマーケッティングその他の電話通信、インスタントメッセージングサービス、移動電話サービス（テキスト、呼、等を含む）、物理的通信、等の状況内で、ＤＯＬ発生および／または検証を実現するアルゴリズムを含むメールソフトウェアの販売を含んでいる。これらの販売は送り手および受け手、または通信サービスの既存のプロバイダまたは付加パーティに同様に行うことができ、このようなソフトウェアは多様な方法で販売することができ、限定はしないが、スタンドアロンメールアプリケーションの一部として、または既存の電子メールと作業するプラグインおよび／またはサードパーティにより販売される他のアプリケーションとして販売することを含む。
【０１５７】
ここに記述された方法はそれを彼等のプロダクトに直接内蔵し、個別のオプション等として提供できるベンダ（ソフトウェアその他）へ認可される。
【０１５８】
この技術を商業化する代替方法はソフトウェアをある最大数のメッセージ（たぶん１日または他の特定期間当たり）まで無料とし、その後ある免許料を課金することを含む（この方法は、たとえば、商業的ユーザの識別に向けられる）。
【０１５９】
前記したソフトウェアはＤＯＬを発生するのに必要なソフトウェアは支払を必要とし、受け手がこのＤＯＬを処理するのに必要なソフトウェアは無料とする、あるいはその反対とする、あるいは両方のパーティがこのソフトウェアを購入する必要がある方法で販売することができる。
【０１６０】
さらに、計算の単位が品物、サービス等を購入するのに使用できる代替通貨として役立つ節約の発生も考えられる。ここに記述された方法はこのような状況内で容易に実現することができ、事実ここに記述された方法はこのような通貨体系をどのように働くようにしたかの例を提供する。
【０１６１】
また、ＤＯＬは異なるさまざまなプロセス（たとえば、異なるハッシュまたは作業関数）により発生できるという事実は、プロセスの選択を使用してＤＯＬを単なる正当性のために通信させるのではなく、メッセージを目的、グループメンバシップ、等について分類することもできることが理解される。たとえば、一人のユーザは潜在的に異なるグループで使用する２つの異なる作業関数（たとえば、「個人作業関数」および「事業作業関数」）を有し、メッセージを異なるインボックスへ向けて分類し導くことができる。同様に、送り手が「緊急作業関数」または「非緊急作業関数」から選択できる−定められた受け手に対して−ことも考えられ、それはメッセージが到着すると「緊急」または「非緊急」インボックス内へ導かれることを意味する。このようなインプリメンテーションでは、必要なＤＯＬ発生技術に関する情報（すなわち、どのプロセスを使用するか）は予め同意することができ、あるいは受け手が潜在的送り手へ提供することができる。
【０１６２】
ここでも、メッセージの任意他の考えられる処理形式（ＤＯＬ発生自体を含む）とＤＯＬ発生を任意の順序および回数だけ混合することができる。
【０１６３】
ここに記述された方法は、さらに、加入者（または送り手またはユーザ）が通信を送ってサービスプロバイダ（例として、限定はしないが、Ｅａｒｔｈｌｉｎｋ（登録商標）等のインターネットサービスプロバイダまたはユーザがアカウントを開いて電子メールを送れるようにするＨｏｔｍａｉｌ（登録商標），Ｇｍａｉｌ（登録商標），Ｙａｈｏｏ（登録商標）等のウェブメールプロバイダ）から発信される通信（たとえば、Ｈｏｔｍａｉｌ（登録商標）の場合は、ｈｏｔｍａｉｌ．ｃｏｍドメインから発信される電子メール）がバルク不要電子通信すなわちスパムではないことを明示できるようにするサービスプロバイダが使用することもできる。これは、メッセージの受け手がＤＯＬタグを検証（または処理）できるか否かにかかわらず、全てのユーザ（すなわち、送り手）が全ての発信メッセージに有効なＤＯＬを付けることにより行うことができる。問題とするサービスプロバイダは、そのユーザに関して、全ての発信メッセージにＤＯＬタグが付いているという要求条件に合致することを各メッセージ上の各ＤＯＬタグを検証するか（ＤＯＬを検証できる音声が与えられれば、実行可能）またはユーザにより送られたメッセージをサンプリングして監視することができる。発信通信に有効なＤＯＬを付けるユーザ（すなわち、送り手）に関する失敗に対してはサービスプロバイダがフラグを立てて適切なアクションをとることができる。このようなポリシーの実現により問題とするサービスプロバイダはスパムフリードメインであり、それから発信されるトラフィックは阻止してはならないと主張することができる。
【０１６４】
当業者ならば、ある実施例において、本発明のさまざまな送り手側メッセージングクライアント、送り手側メッセージ処理機能、受け手側メッセージ処理機能および受け手側メッセージングクライアントの各々の機能性は予めプログラムされたハードウェアまたはファームウェアエレメント（たとえば、特定応用集積回路（ＡＳＩＣｓ）、ｅｌｅｃｔｒｉｃａｌｌｙ  ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｉｅｓ（ＥＥＰＲＯＭｓ）、等）、その他の関連コンポーネントにより実現できることがお判りであろう。他の実施例では、本発明のさまざまな送り手側メッセージングクライアント、送り手側メッセージ処理機能、受け手側メッセージ処理機能および受け手側メッセージングクライアントの各々は算術論理演算装置（ＡＬＵ）の演算に対するプログラム命令を格納するコードメモリへのアクセスを有するＡＬＵとして実現することができる。プログラム命令は固定、触知可能かつ本発明のさまざまな送り手側メッセージングクライアント、送り手側メッセージ処理機能、受け手側メッセージ処理機能および受け手側メッセージングクライアントにより直接読取可能な媒体上に格納することができ、（たとえば、着脱自在ディスケット、ＣＤ−ＲＯＭ、ＲＯＭ、または固定ディスク）、あるいはプログラム命令は遠隔格納し伝送媒体を介してネットワークに接続されたモデムその他のインターフェイス装置（たとえば、通信アダプタ）を介して本発明のさまざまな送り手側メッセージングクライアント、送り手側メッセージ処理機能、受け手側メッセージ処理機能および受け手側メッセージングクライアントに送信することができる。伝送媒体は触知媒体（たとえば、光または類似の通信線路）またはワイヤレス技術を使用して実現される媒体（たとえば、マイクロ波、赤外その他の伝送方式）とすることができる。
【０１６５】
本発明の特定の実施例について記述し例示してきたが、当業者ならば添付特許請求の範囲に明記された本発明の範囲を逸脱することなく非常に多くの修正および変更を行うことができる。
【図面の簡単な説明】
【０１６６】
【図１】本発明の第１の特定実施例に従った、受け手に電子メッセージを伝えるシステムの概念的ブロック図である。
【図２】本発明の第１の特定実施例に従った、送り手による電子メッセージの送信プロセスにおけるステップを示す図である。
【図３】本発明の第１の特定実施例に従った、送り手からの受信電子メッセージを処理するシステムの概念的ブロック図である。
【図４Ａ】本発明の第１の特定実施例に従った、受け手において電子メッセージを受信した時に実行されるプロセスにおけるステップを示す図である。
【図４Ｂ】本発明の第１の特定実施例に従った、受け手において電子メッセージを受信した時に実行されるプロセスにおけるステップを示す図である。
【図５】本発明の実施例に従った、受け手により受信された電子メッセージに関する情報を運ぶのに使用されるＧＵＩの要素を示す図である。
【図６】本発明の実施例に従った、受け手により受信された電子メッセージに関する情報を運ぶのに使用されるＧＵＩの要素を示す図である。
【図７】本発明の第２の特定実施例に従った、受け手へ電子メッセージを伝えるシステムの概念的ブロック図である。
【図８】本発明の第２の特定実施例に従った、送り手による電子メッセージの送信プロセスにおけるステップを示す図である。
【図９】本発明の第２の特定実施例に従った、送り手からの受信電子メッセージを処理するシステムの概念的ブロック図である。
【図１０Ａ】本発明の第２の特定実施例に従った、受け手において電子メッセージを受信した時に実行されるプロセスにおけるステップを示す図である。
【図１０Ｂ】本発明の第２の特定実施例に従って、受け手において電子メッセージを受信した時に実行されるプロセスにおけるステップを示す図である。
【図１１】本発明の第３の特定実施例に従った、送り手による電子メッセージの送信プロセスにおけるステップを示す図である。
【図１２】本発明の第３の特定実施例に従った、受け手において電子メッセージを受信した時に実行されるプロセスにおけるステップを示す図である。
【図１３】緊急が要因である本発明の第４の特定実施例に従った、送り手による電子メッセージの送信プロセスにおけるステップを示す図である。
【図１４】緊急が要因である本発明の第４の特定実施例に従った、受け手における電子メッセージの受信時に実行されるプロセスにおけるステップを示す図である。
【図１５】本発明のもう１つの実施例に従った、送り手による電子メッセージの送信プロセスにおけるステップを示す図である。
【図１６】本発明のさらにもう１つの実施例に従った、送り手による電子メッセージの送信プロセスにおけるステップを示す図である。
【図１７】本発明のもう１つの実施例に従った、送り手および受け手間で電子メッセージを通信するシステムの概念的ブロック図である。
【図１】
2008507013.tif 000017
【図２】
2008507013.tif 000018
【図３】
2008507013.tif 000019
【図４Ａ】
2008507013.tif 000020
【図４Ｂ】
2008507013.tif 000021
【図５】
2008507013.tif 000022
【図６】
2008507013.tif 000023
【図７】
2008507013.tif 000024
【図８】
2008507013.tif 000025
【図９】
2008507013.tif 000026
【図１０Ａ】
2008507013.tif 000027
【図１０Ｂ】
2008507013.tif 000028
【図１１】
2008507013.tif 000029
【図１２】
2008507013.tif 000030
【図１３】
2008507013.tif 000031
【図１４】
2008507013.tif 000032
【図１５】
2008507013.tif 000033
【図１６】
2008507013.tif 000034
【図１７】
2008507013.tif 000035
【国際調査報告】
2008507013.tif 000036
2008507013.tif 000037
2008507013.tif 000038
2008507013.tif 000039