(57)【要約】      （修正有）【課題】エネルギ使用データ開示のための信頼できるプライバシィ保護方法を提供する。【解決手段】保管所からエネルギ使用データおよびサインをダウンロードし(402)、サインが事業者のものであるか決定し(404)、サインが事業者のものでない時、エネルギ使用データを拒絶し(418)、そしてサインが事業者のものある時、エネルギ使用データにランダムノイズを付加することにより、ノイジィデータを生成し(408)、エネルギ使用データおよび確認されたサインを含むメッセージ−サイン組を暗号化し(410)、暗号化されたメッセージ−サイン組およびノイジィデータが対応する証明言語のメンバーであることを確立するように構成された証明を作成し(412)、そしてノイジィデータ、暗号化されたメッセージ−サイン組、および証明を、サードパーティに通信する(414)。【選択図】図４
2015216628.tif 000002
【特許請求の範囲】
【請求項１】
保管所からエネルギ使用データおよびサインをダウンロードし、
前記サインが事業者のものであるか決定し、
前記サインが事業者のものでない時、前記エネルギ使用データを拒絶し、そして
前記サインが事業者のものある時、
前記エネルギ使用データにランダムノイズを付加することにより、ノイジィデータを生成し、
前記エネルギ使用データおよび確認されたサインを含むメッセージ−サイン組を暗号化し、
前記暗号化されたメッセージ−サイン組および前記ノイジィデータが対応する証明言語のメンバーであることを確立するように構成された証明を作成し、そして
前記ノイジィデータ、前記暗号化されたメッセージ−サイン組、および前記証明を、サードパーティに通信するエネルギ使用データのプライバシィ保護の方法。
【請求項２】
ノイズバンドを選択するのに効果的な入力を受信することをさらに有し、
前記ノイズバンドは、前記エネルギ使用データの一部として量が定められ、そして
前記エネルギ使用データに付加された前記ランダムノイズは、前記エネルギ使用データを前記ノイズバンドより少ない量だけ変化するように構成されている請求項１に記載の方法。
【請求項３】
前記ノイズバンドは、ノイズバンド式
【数１】
2015216628.tif 000024
ここで、mはエネルギ使用データを、
m'はノイジィデータを、
｜...｜は絶対値演算子を、そして
εはノイズバンドを表す、
にしたがって定義される請求項２に記載の方法。
【請求項４】
サードパーティから、ノイズバンドを低減するインセンティブを含む申し出を受信し、
インセンティブと交換の第２のノイズバンドに基づいてノイジィデータを再生成する、請求項２に記載の方法。
【請求項５】
前記証明は、非相互作用ゼロ認識（ＮＩＺＫ）証明を含み、
前記対応する証明言語は、非決定性多項式時間(NP)言語（設計されたＮＰ言語）のクラスに属する特別に構成された言語を有する請求項１に記載の方法。
【請求項６】
前記設計されたＮＰ言語は、設計されたＮＰ言語表式
【数２】
2015216628.tif 000025
にしたがって定義され、
前記ＮＩＺＫ証明は、ＮＩＺＫ証明表式
【数３】
2015216628.tif 000026
にしたがって定義され、
暗号化メッセージ−サイン組は、暗号化メッセージ−サイン組表式
【数４】
2015216628.tif 000027
にしたがって定義され、
ここで、
Lε,pk,vkUは、設計したＮＰ言語を表し、
mは、エネルギ使用データを表し、
m'は、ノイジィデータを表し、
εは、ノイズバンドを表し、
σは。サインアルゴリズムから出力されるサインを表し、
vkUは、確認キーを表し、
Ver()は、確認アルゴリズムを表し、
pkは、公開キーを表し、
Enc()は、暗号化アルゴリズムを表し、
∧は、論理結合子を表し、
｜は、条件イベント演算子を表し、
|...|は、絶対値演算子を表し、
：は「そのように」演算子を表し、
∃は、現存する量化演算子を表し、
πは、ＮＩＺＫ証明を表し、
：＝は、定義演算子を表し、
Ｐは、ＮＩＺＫ証明者を表し、
Ψは、ＮＩＺＫ共通参照ストリング（ＣＲＳ）を表し、
eは、暗号化メッセージ−サイン組を表し、そして、
rはランダム数を表す、
請求項５に記載の方法。
【請求項７】
前記サインは、現実的に偽造不能なサインスキームを使用して生成され、そして
前記暗号化は、１つ以上の証明可能なセキュア特性を満たすセキュア暗号化スキームを使用して実行される請求項１に記載の方法。
【請求項８】
需要応答（ＤＲ）イベント実現の方法であって、
顧客に、ＤＲイベントの削減リクエストを通信し、
ＤＲイベントに続くＤＲイベント中の前記顧客のエネルギ使用データをリクエストし、
ランダムノイズが付加されたエネルギ使用データを有するノイジィデータ、暗号化メッセージ−サイン組、および証明を受信し、
前記証明が、前記ノイジィデータおよび前記暗号化メッセージ−サイン組が対応する証明言語のメンバーであることを記述する表式の正当な証明であるか決定し、そして、
前記証明が前記表式の正当な証明である時、
前記ノイジィデータを、前記リクエストされたエネルギ使用データをして受け付け、そして
前記少なくとも部分的に前記ノイジィデータに基づいて、前記ＤＲイベントについての前記顧客の順守を評価する、方法。
【請求項９】
さらに、前記証明が前記表式の正当な証明でない時、前記顧客とのトランザクションを保留する請求項８に記載の方法。
【請求項１０】
さらに、特別なインセンティブとの交換で、前記ノイジィデータを生成するのに使用されるノイズバンドを減少させる申し出を顧客に通信する請求項８に記載の方法。
【請求項１１】
さらに、前記顧客から入力を受信するように構成され、前記ノイジィデータを生成するのに使用されるノイズバンドに対応するプライバシィの優先具合を選択するのに効果的なプライバシィ設定ツールを、顧客に提供する請求項８に記載の方法。
【請求項１２】
前記証明は、非相互作用ゼロ認識（ＮＩＺＫ）証明を含み、
前記対応する証明言語は、非決定性多項式時間(NP)言語（設計されたＮＰ言語）のクラスに属する特別に構成された言語を有する請求項８に記載の方法。
【請求項１３】
前記設計されたＮＰ言語は、設計されたＮＰ言語表式
【数５】
2015216628.tif 000028
にしたがって定義され、
前記ＮＩＺＫ証明は、ＮＩＺＫ証明表式
【数６】
2015216628.tif 000029
にしたがって定義され、
暗号化メッセージ−サイン組は、暗号化メッセージ−サイン組表式
【数７】
2015216628.tif 000030
にしたがって定義され、
ここで、
Lε,pk,vkUは、設計したＮＰ言語を表し、
mは、エネルギ使用データを表し、
m'は、ノイジィデータを表し、
εは、ノイズバンドを表し、
σは。サインアルゴリズムから出力されるサインを表し、
vkUは、確認キーを表し、
Ver()は、確認アルゴリズムを表し、
pkは、公開キーを表し、
Enc()は、暗号化アルゴリズムを表し、
∧は、論理結合子を表し、
｜は、条件イベント演算子を表し、
|...|は、絶対値演算子を表し、
：は「そのように」演算子を表し、
∃は、現存する量化演算子を表し、
πは、ＮＩＺＫ証明を表し、
：＝は、定義演算子を表し、
Ｐは、ＮＩＺＫ証明者を表し、
Ψは、ＮＩＺＫ共通参照ストリング（ＣＲＳ）を表し、
eは、暗号化メッセージ−サイン組を表し、そして、
rはランダム数を表す、
請求項１２に記載の方法。
【請求項１４】
前記ＤＲイベントは、容量入札プログラム（ＣＢＰ）または需要入札プログラム（ＤＢＰ）にしたがって実現される請求項８に記載の方法。
【請求項１５】
プロセッサに、
保管所からエネルギ使用データおよびサインをダウンロードし、
前記サインが事業者のものであるか決定し、
前記サインが事業者のものでない時、前記エネルギ使用データを拒絶し、そして
前記サインが事業者のものある時、
前記エネルギ使用データにランダムノイズを付加することにより、ノイジィデータを生成し、
前記エネルギ使用データおよび確認されたサインを含むメッセージ−サイン組を暗号化し、
前記暗号化されたメッセージ−サイン組および前記ノイジィデータが対応する証明言語のメンバーであることを確立するように構成された証明を作成し、そして
前記ノイジィデータ、前記暗号化されたメッセージ−サイン組、および前記証明を、サードパーティに通信する、動作を実行させるプログラム。
【請求項１６】
プロセッサに、
顧客に、ＤＲイベントの削減リクエストを通信し、
ＤＲイベントに続くＤＲイベント中の前記顧客のエネルギ使用データをリクエストし、
ランダムノイズが付加されたエネルギ使用データを有するノイジィデータ、暗号化メッセージ−サイン組、および証明を受信し、
前記証明が、前記ノイジィデータおよび前記暗号化メッセージ−サイン組が対応する証明言語のメンバーであることを記述する表式の正当な証明であるか決定し、そして、
前記証明が前記表式の正当な証明である時、
前記ノイジィデータを、前記リクエストされたエネルギ使用データをして受け付け、そして
前記少なくとも部分的に前記ノイジィデータに基づいて、前記ＤＲイベントについての前記顧客の順守を評価する、動作を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
ここで議論する実施形態は、エネルギ使用データのプライバシィ保護通信に関する。
【背景技術】
【０００２】
事業会社は、事業者が需要に対応可能であることを保証するため、ある高負荷期間中のエネルギ使用の削減に対してしばしば報償する。例えば、夏季月間においては、ピークエネルギ使用は、暑い日の正午の後に発生する。事業者は、事業者がピークエネルギ使用中に需要に対応可能であることを保証するため、正午の後の期間中エネルギ使用を削減するように、工場に報償（インセンティブ(incentive)）を提供することがある。これに応じて、工場は、高負荷の生産を夕方遅くまで遅らせる。ピークまたは高負荷期間中のエネルギ使用の削減は、需要応答(DR: demand response)イベントと称される。ＤＲイベントは、事業者が高い需要を予測し、顧客にエネルギ使用を低減または削減することを要請する時間期間を有する。顧客がその使用エネルギを、合意した量だけ低減した時、事業者は顧客にインセンティブを提供する。
【発明の概要】
【０００３】
ここで請求する主題は、上記のような環境においてのみ欠点を解決するかまたは動作する実施形態に限定されない。むしろ、この背景は、ここで説明するいくつかの実施形態を実行する場合の例示の技術分野の１つを説明するために提供されるだけである。
【０００４】
実施形態の１つの態様によれば、エネルギ使用データのプライバシィ保護の方法が記載される。この方法は、保管所からエネルギ使用データ(energy usage data)およびサインをダウンロードすることを有する。この方法は、サインが事業者のものであるか決定することを有する。サインが事業者のものでない時、この方法は、エネルギ使用データを拒絶することを有する。サインが事業者のものある時、この方法は、ノイジィデータ(noisy data)を生成すること、メッセージ−サイン組(message-signature pair)を暗号化すること、証明(proof)を作成すること、およびノイジィデータ、暗号化されたメッセージ−サイン組、および証明をサードパーティに通信すること、を有する。ノイジィデータは、エネルギ使用データにランダムノイズ(random noise)を付加することにより生成される。メッセージ−サイン組は、エネルギ使用データおよび確認されたサインを含む。証明は、暗号化されたメッセージ−サイン組およびノイジィデータが対応する証明言語(proof language)のメンバーであることを確立するように構成される。
【０００５】
実施形態の目的および利点は、少なくとも特に請求項で指摘した要素、特徴、および組合せにより、実現および達成される。
【０００６】
これまでの一般的な説明および以下の詳細な説明は、例示および説明のためのものであり、本発明を限定するものでないことが理解されるべきである。
【０００７】
本発明の実施形態の詳細な説明は、付属の図面を参照して、単なる例として以下に行われる。
【図面の簡単な説明】
【０００８】
【図１】図１は、例示の需要応答(DR: demand response)合意システム（ＤＲシステム）のブロック図を示す。
【図２】図２は、図１のＤＲシステムにおいて実現される例示の顧客装置、例示のサードパーティ、および例示の事業者サーバを示す。
【図３】図３は、図１のＤＲシステムにおいて実現される例示のプロトコルを示すフロー図である。
【図４】図４は、エネルギ使用データのプライバシィ保護の例示の方法のフロー図である。
【図５】図５は、ここで説明する少なくとも１つの実施形態に従ったＤＲイベント実現の例示の方法のフロー図である。
【発明を実施するための形態】
【０００９】
スマートメータの広範囲の浸透および先進の計測インフラ(infrastructure)(AMI)は、事業者と顧客間の双方向通信およびきめこまかい(fine-grained)エネルギ使用データの収集を可能にしている。さらに、電気システムにおけるデータ管理および共有は、より複雑になってきている。例えば、エネルギ使用データのいくつかのデータ解析は、事業者によりサードパーティに外部供給(outsource)される場合がある。さらに、大規模な需要応答（ＤＲ）サービスを容易にするため、ＤＲ集合体(DR aggregators)と呼ばれるサードパーティサービス提供者の形式が出現している。
【００１０】
ＤＲ集合体は、ＤＲ集合体モデルの下、エネルギ使用データの収集および／または評価を行う。一般に、顧客のプライバシィは、ＤＲ集合体モデル下では優先されるものではない。例えば、ＤＲ集合体または他のサービス提供者は、各サイトに計測装置を設置し、所望のエネルギ使用データを収集する。ＤＲ集合体は料金計算のための信頼できるデータに利害関係があるため、このようなデータ収集は正当化される。しかしながら、収集されたエネルギ使用データは、ハッキング(hacking)またはマルウェア攻撃(malware attacks)の結果として、危険に晒されリークする可能性がある。さらに、エネルギ使用データが一旦サードパーティ（例えば、ＤＲ集合体）に開示されると、エネルギ使用データは、顧客がエネルギ使用データの二次的な使用または共有に関して制御および／または承知している状態に維持するのが難しい。さらに、不許可の使用、サービス提供者により許可または不許可のデータ共有、およびプライバシィの危険を増加させる意図しない情報の侵害の可能性がある。
【００１１】
したがって、ここで説明するいくつかの実施形態は、エネルギ使用データのプライバシィ保護通信に関係する。例示の実施形態では、エネルギ使用データは、事業者により保管所に通信される。事業者は、エネルギ使用データにサインし、それは、エネルギ使用データの発信源が事業者であり、サードパーティによるデータ完全性の確認を可能にする。顧客は、エネルギ使用データおよびサインをダウンロードする。エネルギ使用データがダウンロードされた後、顧客は、サインが事業者のものであるか確認する。顧客は、次にエネルギ使用データへのランダムノイズの付加に基づいてノイズィデータ(noisy data)を生成する。顧客は、さらにエネルギ使用データおよび確認されたサインを有するメッセージ−サイン組を暗号化する。顧客は、次に暗号化されたメッセージ−サイン組およびノイズィデータが、ここでは「設計ＮＰ言語(desined NP language)」と称される特別に構成された言語のメンバーであることを確立するように構成された非相互作用ゼロ情報(non-interactive zero knowledge: NIZK)証明(proof)を作成する。設計ＮＰ言語は、非決定性多項式時間(Non-deterministic Polynominal time : NP)言語のクラスに属する。設計ＮＰ言語は、加えたノイズが元のエネルギ使用データについての更なる情報を開示すること無しにある範囲内に存在し、元のエネルギ使用データが事業者により発行されたことを請求するように構成される。顧客は、ノイズィデータ、暗号化したメッセージ−サイン組、およびＮＩＺＫ証明を、ＤＲ集合体のようなサードパーティに通信する。サードパーティは、ノイズィデータ、暗号化したメッセージ−サイン組、およびＮＩＺＫ証明を受信し、ＮＩＺＫ証明が特定の表式(expression)の正当な証明(valid proof)であることを確認する。この表式は、付加されたノイズが、元のエネルギ使用データについての更なる情報を開示すること無しにある範囲内に存在し、元のエネルギ使用データが事業者により発行されたことを記述する。したがって、サードパーティは、エネルギ使用データの発信源が事業者であり、ノイズィデータがエネルギ使用データのいつつかのノイズバンド(noise bound)内にあることを確認する。このような確認を行った後、サードパーティは、元のエネルギ使用データよりむしろノイズィデータを使用する。顧客のプライバシィは、サードパーティに信頼できるデータを提供しているが、エネルギ使用データの部分がランダムノイズにより不明瞭にされているという限りにおいて保護される。このおよび他の実施形態が、付属の図面を参照して説明される。
【００１２】
図１は、例示のＤＲシステム１００のブロック図を示す。ＤＲシステム１００は、顧客中心のＤＲシステムとして構成され、そこでは、顧客１０２は、顧客１０２に関係するサイト１２８で生成されるエネルギ使用データについて制御する。例えば、ＤＲシステム１００は、顧客ドメイン１２６を有する。顧客ドメイン１２６は、顧客装置１０４および保管所１２４を有する。エネルギ使用データは顧客ドメイン１２６内にあるが、顧客１０２はエネルギ使用データを制御し、エネルギ使用データへのアクセスを制御する。
【００１３】
一般に、ＤＲシステム１００は、顧客１０２のプライバシィを保護しながら、エネルギ使用データが顧客ドメイン１２６からサードパーティ１２０に通信される。特に、ＤＲシステム１００におけるエネルギ使用データは、顧客１０２の行動がエネルギ使用データから導出されるため、顧客１０２に関するプライバシィを提供する。例えば、顧客１０２が特定の時間に使用する特定の設備は、エネルギ使用データから導出される。それにもかかわらず、顧客１０２は、エネルギ使用データをサードパーティ１２０に通信するインセンティブを有する。したがって、ＤＲシステム１００において、顧客１０２は、エネルギ使用データにより提供されるプライバシィ事項を低減するため、エネルギ使用データを変形する。
【００１４】
顧客１０２がエネルギ使用データを変形するには、量に対する制限がある。特に、エネルギ使用データの許可された変形は、サードパーティ１２０が変形されたデータを評価不能にするまで広くはない。例えば、エネルギ使用データを受信すると、サードパーティ１２０は、エネルギ使用データの特別な特徴を評価できるならば、変形されたエネルギ使用データを受け付けるだけである。さらに言えば、サードパーティ１２０は、変形されたデータの確実性および／または発信源について保証を望む。これにより、ここで議論するいくつかの実施形態は、顧客中心のＤＲシステムを提供し、そこではエネルギ使用データは、顧客１０２のプライバシィ事項を低減するように変形されるが、使用可能で確認可能な変形されたデータがサードパーティ１２０に提供される。
【００１５】
図１のＤＲシステム１００では、事業者１０８は、サイト１２８に電気を分配する。したがって、ＤＲシステム１００において変形され通信されたデータは、エネルギ使用データを有する。いくつかの実施形態では、事業者１０８は、天然ガスまたは水のような他の資源をサイト１２８に提供してもよい。これにより、これらの実施形態では、変形され通信されたデータは、資源消費のような資源に関係する他の形式のデータを有する。さらに、いくつかの実施形態は、他のシステムまたは環境に適用可能である。例えば、同様のプロセスは、個人的な装着装置、健康診断、自動車または車両データ、保険会社通信、等の時間連続データを検出する環境におけるプライバシィ保護に使用される。
【００１６】
図１に示したＤＲシステム１００は、事業者１０８、サードパーティ１２０、サイト１２８、保管所１２４、および顧客１０２を有する。事業者１０８は事業者サーバ１１０に関係し、顧客１０２はサイト１２８および顧客装置１０４に関係し、サードパーティ１２０はサードパーティサーバ１１４に関係する。企業（例えばサードパーティ１２０および事業者１０８）とサーバ（例えばサードパーティサーバ１１４または事業者サーバ１１０）の間または顧客１０２とサイト１２８と顧客装置１０４との間の関係に言及するのにここで使用される用語「関係する」は、企業および／または顧客１０２が、サーバ（１１０または１１４）またはサイト１２８を直接または非直接に所有または他の制御することを示す。例えば、サードパーティサーバ１１４は、サードパーティ１２０により制御され、サイト１２８および顧客装置１０４は、顧客１０２により制御される。
【００１７】
ＤＲシステム１００では、エネルギ使用データ、変形されたエネルギ使用データ、暗号化された情報、サイン確認のための公開鍵（キー）、および証明（例えば暗号証明(cryptographic proofs)）は、事業者サーバ１１０、サードパーティサーバ１１４、保管所１２４、および顧客装置１０４の間で、ネットワーク１２２を介して通信される。
【００１８】
ネットワーク１２２は、有線または無線であり、スター構成、トークンリング構成、または他の構成を含む多数の構成を有する。さらに、ネットワーク１２２は、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）（例えばインターネット）、および／または多重装置が通信する他の相互作用接続データ経路を有してもいくつかの実施形態では、ネットワーク１２２は、ピア・ツー・ピア(peer-to-peer)ネットワークである。ネットワーク１２２は、各種の異なる通信プロトコルでのデータ通信を可能にする電話通信ネットワークの部分に接続されるかまたはそれを有する。
【００１９】
いくつかの実施形態では、ネットワーク１２２は、データを送信および受信するための、ショートメッセージサービス(SMS)を介して、マルチメディアメッセージサービスMMS)、ハイパーテキスト送信プロトコル(HTTP)、ダイレクトデータ接続、無線アプリケーションプロトコル(WAP)、emailなどを有するBLUETOOTH（登録商標）通信ネットワークおよび／またはセルラー通信ネットワークを有する。
【００２０】
ＤＲシステム１００では、事業者１０８は、ここではエネルギとしても言及される電気をサイト１２８に分配する。事業者１０８によるサイト１２８へのエネルギの分配は、図１では参照符号１３２で示される。さらに、事業者１０８は、サイト１２８からエネルギ使用データを収集する。エネルギ使用データの収集は、図１では、参照符号１３０で示される。事業者１０８は、電気の生産、輸送、および／または分配に含まれるいかなる企業も含む。事業者は、公的に所有されるか、または私的に所有される。事業者１０８のいくつかの例は、発電所、エネルギ共同組合、および独立したシステムオペレータ（ＩＳＯ）を有する。事業者１０８は、ＤＲイベントの期間を設定する。例えば、事業者１０８は、ＤＲイベントへの参加で交換するインセンティブ、ＤＲイベントの時間期間、ＤＲイベントの継続、およびＤＲイベントに対するエネルギ使用削減を設定する。
【００２１】
サイト１２８は、ビル、住居、構造物、設備、または事業者１０８により分配された電気を使用する他の対象物を有する。サイト１２８には、サイト１２８に分配されるエネルギを測定するスマートメータのようなメータが適用される。メータは、事業者１０８にエネルギ使用データを通信する。いくつかの実施形態では、エネルギ使用データは、ネットワーク１２２を介して、事業者１０８に通信される。エネルギ使用データに基づいて、事業者１０８は、サイト１２８のエネルギ使用データを確認し、例えば顧客１０２の請求に使用される。
【００２２】
保管所１２４は、記憶装置、またはネットワーク１２２を介して通信可能な記憶サーバを有する。保管所１２４は、メモリおよびプロセッサを有する。保管所１２４は、少なくとも一時的にエネルギ使用データが記憶されるのを可能にする。エネルギ使用データは、次にアクセスされる。例えば、事業者１０８は、サイト１２８から収集したエネルギ使用データを、保管所１２４に通信する。顧客装置１０４は、次にエネルギ使用データまたはその一部を保管所１２４からダウンロードする。顧客１０２は、保管所１２４において、ダウンロードしたエネルギ使用データを拾い読み／操作(browase/operate)する。
【００２３】
図１において、保管所１２４は、顧客装置１０４、事業者サーバ１１０、およびサードパーティ１１４から離れて示されている。いくつかの実施形態では、保管所１２４は、顧客装置１０４に含まれる。さらにまたは別に、保管所１２４は、信頼される企業内に含まれるか、またはそれにより主導される。いくつかの実施形態では、エネルギ使用データへのアクセスは、ウェブサイト、コンピュータアプリケーション（例えば移動体アプリケーション）、またはブラウザベースインターフェースを介して行われる。
【００２４】
事業者１０８に関係する事業者サーバ１１０は、プロセッサ、メモリ、およびネットワーク通信機能を含むハードウェアサーバを有する。例示の実施形態では、事業者サーバ１１０は、ネットワーク１２２に結合され、ネットワーク１２２を介して、顧客装置１０４、保管所１２４、およびサードパーティサーバ１１４にデータを送信し且つそれらからデータを受信する。
【００２５】
事業者サーバ１１０は、事業者プライバシィモジュール１１２を有する。事業者プライバシィモジュール１１２は、エネルギ使用データを受信し、エネルギ使用データにサインするように構成される。事業者プライバシィモジュール１１２は、サインアルゴリズムを使用して、エネルギ使用データにサインする。いくつかの実施形態では、サインは、現実的に偽造不能なサインスキームを使用して生成される。エネルギ使用データにサインすることにより、事業者プライバシィモジュール１１２は、事業者１０８としてエネルギ使用データ源を認証し、エネルギ使用データの真性を保証する。事業者プライバシィモジュール１１２は、次にエネルギ使用データおよびサインを保管所１２４に通信する。
【００２６】
顧客１０２は、例えば、個人、個人のグループ、または他の企業（まとまり）を有する。サイト１２８および顧客装置１０４は、顧客１０２に関係する。いくつかの実施形態では、顧客１０２は、事業者１０８またはサードパーティ１２０により発行されたＤＲイベントに参加するか決定する。したがって、顧客１０２は、ＤＲイベントにしたがってサイト１２８のエネルギ使用を削減する。さらに、顧客１０２は、サイト１２８のエネルギ使用データの通信に応答し、サイト１２８のエネルギ削減がＤＲイベントに従っていることを実証(substantiate)する。
【００２７】
顧客装置１０４は、プロセッサ、メモリ、およびネットワーク通信機能を含むコンピューティング装置を有する。例えば、顧客装置１０４は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、携帯電話、パーソナルデジタルアシスタント（ＰＤＡ）、スマートフォン、携帯e-mail装置、携帯ゲームプレーヤー、携帯ミュージックプレーヤー、１つ以上のプロセッサが設けられるか接続されるテレビジョン、またはネットワーク１２２にアクセス可能な他の電子装置を有する。
【００２８】
顧客装置１０４は、顧客プライバシィモジュール１０６を有する。顧客プライバシィモジュール１０６は、エネルギ使用データおよびサインをダウンロードするように構成されている。保管所１２４が顧客装置１０４から分離している実施形態では、顧客プライバシィモジュール１０６は、保管所１２４からエネルギ使用データおよびサインをダウンロードする。さらにまたは別に、保管所１２４が顧客装置１０４に含まれる実施形態では、顧客プライバシィモジュール１０６は、顧客装置１０４に含まれる保管所１２４からエネルギ使用データおよびサインにアクセスする。
【００２９】
さらにまたは別に、顧客プライバシィモジュール１０６は、保管所１２４に含まれるか、またはそれにより主導される。これらおよび他の実施形態では、顧客装置１０４は、フロントエンド装置として動作し、顧客プライバシィモジュール１０６にアクセスするのにおよび／または顧客プライバシィモジュール１０６に通信するのに使用される。例えば、顧客プライバシィモジュール１０６は、ブラウザ内で実行され、顧客１０２が顧客プライバシィモジュール１０６とインターフェースするインターフェースを提供する。
【００３０】
顧客プライバシィモジュール１０６は、サインが事業者１０８のものであるか決定するように構成される。例えば、サインは、確認キーを使用して確認される。確認キーは、事業者１０８の公開キーを有する。確認キーは、サインキー生成アルゴリズムを使用して生成される。確認キーは、事業者１０８のサインキーでサインされたエネルギ使用データに沿って、顧客プライバシィモジュール１０６により確認アルゴリズムに入力される。
【００３１】
確認アルゴリズムは、顧客プライバシィモジュール１０６が、サインが事業者１０８のものであるか決定するのを可能にする。例えば、サインが事業者１０８のものである時、確認アルゴリズムは成功信号を出力し、顧客プライバシィモジュール１０６は、エネルギ使用データにアクセスするように構成される。サインが事業者１０８のものでない時、確認アルゴリズムは失敗信号を出力し、顧客プライバシィモジュール１０６は、エネルギ使用データを拒絶するように構成される。
【００３２】
サインが事業者１０８のものである時、顧客プライバシィモジュール１０６は、エネルギ使用データにランダムノイズを付加（例えば、ポイントツゥポイント付加）するように構成される。ランダムノイズを有するエネルギ使用データは、ここではノイジィデータと称される。ランダムノイズは、顧客１０２にプライバシィ内容を紹介するエネルギ使用データの部分を不明瞭にする。ランダムノイズは、一般に意味の無いまたは関係の無い信号を有する。ランダムノイズは、ランダムに振幅および／または周波数を変化させる。
【００３３】
ランダムノイズは、ノイズバンド（境界）により制限される。ノイズバンドは、エネルギ使用データの一部または百分率を有する。エネルギ使用データに付加されたランダムノイズは、選択されたノイズバンドまでまたはそれより小さい量だけエネルギ使用データを変化する。例えば、エネルギ使用データは、１月１日の午前８：００から１月２日の午前８：００の間の一連のエネルギ使用データを有し、ノイズバンドは１０％として選択される。顧客プライバシィモジュール１０６は、次にいくらかのランダムノイズをエネルギ使用データに加え、ノイジィデータがエネルギ使用データの０．９と１．１の間であるようにする。
【００３４】
顧客プライバシィモジュール１０６は、ノイズバンドを選択するように構成されるか、またはサードパーティ１２０、顧客装置１０４（例えばユーザ入力を介して）、および事業者１０８の１つ以上から、ノイズバンドを選択を受信する。いくつかの実施形態では、プライバシィ設定ツールが顧客装置１０４に提供される。プライバシィ設定ツールは、プライバシィ優先具合の選択を可能にする。プライバシィ優先具合は、エネルギ使用データに適用されるノイズバンドを順番に選択する。例えば、プライバシィ設定ツールは、「低」、「中」および「高」の設定を有する。低設定は４％のノイズバンドを有し、中設定は８％のノイズバンドを有し、高設定は１２％のノイズバンドを有する。
【００３５】
さらに、いくつかの実施形態では、ノイズバンドは、選択可能および／または変更可能である。いくつかの実施形態では、ノイズバンドは、顧客１０２とサードパーティ１２０の間であらかじめ決められる。ノイズバンドは、次に、顧客１０２とサードパーティ１２０の間の１つ以上の連続した処理の間固定される。さらにまたは別に、ノイズバンドは、顧客１０２とサードパーティ１２０の間の各処理の前に合意される。ノイズバンドは、顧客および／またはサードパーティ１２０により、現在の処理について、顧客１０２とサードパーティ１２０の間の１つ以上の連続した処理またはいくつかのさらなる交渉に基づいて、変更される。
【００３６】
例えば、サードパーティ１２０によるリクエストに応答して、顧客１０２は、顧客装置１０４に１０％のノイズバンドを選択し、ネットワーク１２２を介してサードパーティサーバ１１４にノイジィデータを通信する。サードパーティ１２０は、ノイジィデータを評価できないか、より精密な（例えば、付加されたランダムノイズが小さい）データを望んでいる。サードパーティ１２０またはサードパーティサーバ１１４は、顧客１０２がノイジィデータのノイズバンド、再生、および再通信を低減するリクエストおよび／またはインセンティブを含むメッセージを顧客装置１０４に通信する。
【００３７】
いくつかの実施形態では、顧客プライバシィモジュール１０６は、エネルギ使用データおよび／または確認されたサインをメッセージ−サイン組として暗号化するように構成される。暗号化は、例えば、ランダム数または擬似ランダム数にしたがって行われる。メッセージ−サイン組を暗号化することにより、サードパーティ１２０は、ここで議論したプライバシィの内容を提供するエネルギ使用データにアクセスできないが、サードパーティ１２０は、エネルギ使用データの表示およびサインの表示（例えば、エネルギ使用データおよびサインの暗号化された表示）にアクセスする。
【００３８】
顧客プライバシィモジュール１０６は、暗号化証明のような証明を作成する。証明は、顧客プライバシィモジュール１０６により生成されたノイジィデータおよび暗号化されたメッセージ−サイン組が関係することを証明する。証明は、ノイジィデータがノイズバンドにより区切られる値の範囲からのもので、顧客プライバシィモジュール１０６により実行された暗号化によりノイジィデータを元のエネルギ使用データにつなぎ合わせたことを示す。顧客プライバシィモジュール１０６は、証明、暗号化されたメッセージ−サイン組、ノイジィデータ、またはそれらのいくつかの組み合わせを、ネットワーク１２２を介してサードパーティ１１４に通信する。
【００３９】
サードパーティ１２０は、エネルギ使用データを受信する利害関係を有するかまたはそれを提供されるＤＲシステム１００に含まれるサービスプロバイダまたは他の企業を有する。ここではサードパーティ１２０がＤＲ集合体を含む例示の実施形態について議論するが、ここで議論する実施形態は、サードパーティ１２０がサービスプロバイダを有するものでもよい。例えば、ＤＲシステム１００のいくつかの実施形態では、サードパーティ１２０は、顧客１０２および／または事業者１０８によりエネルギ使用データを評価するように委任されるかまたは他の形で依頼されている。例えば、顧客１０２および／または事業者１０８は、エネルギコンサルティング企業を雇い、それがサイト１２８のエネルギ使用を評価する。
【００４０】
さらにまたは別に、サードパーティ１２０は、顧客１０１、事業者１０８、サードパーティ１２０、またはそれらの組み合わせにより導入された契約にしたがって評価を実行する。例えば、他で議論したように、サードパーティ１２０は、ＤＲ集合体を有する。ＤＲ集合体は、一般に、ＤＲイベントを参照し、ＤＲイベントの文脈の中でエネルギ使用データを評価する。エネルギ使用データを評価する企業の他のいくつかの例は、政府の監督者、私的な監督者、等を有する。さらに、サードパーティ１２０は、エネルギ使用データに関心のある他の商業的な企業を有する。例えば、商業的な企業は、エネルギ市場、エネルギシステム設備の心遣い(prevalence)／使用、宣伝、等に関心がある。
【００４１】
サードパーティ１２０は、サードパーティサーバ１１４に関係する。サードパーティサーバ１１４は、プロセッサ、メモリ、および通信機能を含むハードウェアサーバを有する。図示の実施形態では、サードパーティサーバ１１４は、ネットワーク１２２を介して、顧客装置１０４および／または事業者サーバ１１０に情報を送るかまたはそれから情報を受信するように、ネットワーク１２２に接続されている。
【００４２】
図示の実施形態では、サードパーティサーバ１１４は、サードパーティプライバシィモジュール１１６を有する。いくつかの実施形態では、サードパーティプライバシィモジュール１１６は、顧客装置１０４からあるエネルギ使用データをリクエストするように構成される。保管所１２４が顧客プライバシィモジュール１０６を有する実施形態では、サードパーティプライバシィモジュール１１６は、保管所１２４からあるエネルギ使用データをリクエストするように構成される。これらに実施形態では、顧客１０２は、次に、顧客装置１０４を介して、保管所１２４にインターフェースすることにより、リクエストを受信する。
【００４３】
サードパーティ１２０によりリクエストされたあるエネルギ使用データは、ＤＲイベントからのデータ、ＤＲイベント前および／または後からのエネルギ使用データ、特定の時間期間にわたるエネルギ使用データ、出現（例えば、ヒータまたは空調機の設置）からのエネルギ使用データ、特定の出現（例えば、特に暖かい期間中の数日についてのエネルギ使用データ）中のエネルギ使用データ、特定の期間中のある特定の時間（２０１２年６月から７月の午後１時から３時）におけるエネルギ使用データ、または他のあるエネルギ使用データを有する。
【００４４】
ＤＲイベントからのあるエネルギ使用データは、評価の基礎として使用される。例えば、サードパーティ１２０がＤＲ集合体を有する実施形態では、あるエネルギ使用データは、顧客１０２がＤＲイベントを順守しているかを決定するのに使用される。さらに、ＤＲイベント前および／または後からのエネルギ使用データは、他の方法で使用される。例えば、ＤＲイベント前および／または後からのエネルギ使用データは、顧客１０２および／またはサイト１２８に後のＤＲイベントに含まれる候補を良いとさせるエネルギ使用行動（例えば、高いエネルギ融通性）を顧客１０２および／またはサイト１２８が有しているかを決定するのに使用される。サードパーティ１２０は、ＤＲイベント前および／または後からのエネルギ使用データについて分離したインセンティブを申し出る。
【００４５】
顧客装置１０４と通信するリクエストに応答して、顧客１０２は、保管所１２４から対応するエネルギ使用データをダウンロードまたはそれにアクセスする。さらにまたは別に、リクエストに応答して、顧客１０２は、サードパーティ１１４に、対応するエネルギ使用データから導出した証明、暗号化したメッセージ−サイン組、ノイズィデータ、またはそれらの組み合わせを通信する。
【００４６】
サードパーティプライバシィモジュール１１６は、ノイズィデータ、暗号化したメッセージ−サイン組、および証明を、顧客装置１０４から受信するように構成されている。データが受信された後、サードパーティプライバシィモジュール１１６は、証明が、ノイズィデータおよび暗号化したメッセージ−サイン組が証明に対応する証明言語のメンバーであることを記述する表式の確かな証明であるか決定する。このような決定を行うことにより、サードパーティプライバシィモジュール１１６は、ノイズィデータがエネルギ使用データのノイズバンド内にあり、事業者１０８がエネルギ使用データの発信源であることを確認する。
【００４７】
したがって、証明が表式の確かな証明である時、サードパーティプライバシィモジュール１１６は、ＤＲ性能評価または他の使用の基礎として、ノイズィデータを受け付ける。証明が方程式の確かな証明でない時、サードパーティプライバシィモジュール１１６は、ノイズィデータを拒絶する。
【００４８】
さらにまたは別に、サードパーティプライバシィモジュール１１６は、ノイズバンドを評価する。いくつかの実施形態では、サードパーティ１２０はノイズバンドが高すぎると決定するか、またはサードパーティ１２０はノイズバンドを低減することを望む。これに応じて、サードパーティプライバシィモジュール１１６は、顧客１０２および／または顧客装置１０４に、特定のインセンティブとの交換する選択されるノイズバンドを減少させる申し出を通信する。これらおよび他の実施形態では、サードパーティ１２０は、宣伝、（以下で議論する）ＤＲ集合体、調査グループ、他のサービスプロバイダ、等を有する。したがって、ノイズバンドの低減は、サードパーティ１２０または他の企業への価値を増加させる。
【００４９】
いくつかの実施形態で、サードパーティ１２０は、ＤＲ集合体を有する。一般に、ＤＲ集合体は、事業者１０８とサイト１２８間の介在者として働き、ＤＲイベントを統合および実現する。いくつかの実施形態では、事業者１０８により申し出られたインセンティブは、ＤＲ集合体により受信される。ＤＲ集合体は、ＤＲイベントでのサイト１２８よる参加との交換でインセンティブの幾分かを顧客１０２に順番に申し出る。ＤＲ集合体および／またはサードパーティプライバシィモジュール１１６は、ＤＲイベントの削減リクエストを、顧客１０２および／または顧客装置１０４に通信する。さらにまたは別に、事業者サーバ１１０は、削減リクエストを、顧客装置１０４および／またはサードパーティ１１４に通信する。
【００５０】
例えば、サードパーティ１２０のＤＲ集合体は、容量入札プログラム（capacity bidding program: CBP)または需要入札プログラム（demand bidding program: DBP)のようなＤＲプログラムに含まれる。ＣＢＰおよびＤＢＰにおいて、ＤＲ集合体は、削減の約束を事業者１０８に、削減リクエストをＤＲ参加者（例えば顧客１０２）に提出する。実際に削減を達成および約束した量に基づいて、ＤＲ集合体は、事業者１０８からインセンティブを受信し、インセンティブまたはその一部を顧客１０２に分配する。
【００５１】
ＤＲイベントに続き、サードパーティプライバシィモジュール１１６は、ＤＲイベント中の顧客１０２および／またはサイト１２８のエネルギ使用データをリクエストする。これに応じて、サードパーティプライバシィモジュール１１６は、顧客装置１０４を介して、顧客１０２から、ノイジィデータ、暗号化したメッセージ−サイン組、および暗号化証明または他の証明を受信する。サードパーティプライバシィモジュール１１６は、次に、暗号化証明が、ノイジィデータおよび暗号化したメッセージ−サイン組が暗号化証明に対応する暗号化証明言語のメンバーであることを記述する表式の正当な証明であるかを決定する。
【００５２】
暗号化証明が表式の正当な証明でない時、サードパーティプライバシィモジュール１１６は、ＤＲ取引（トランザクション）(transaction)を保留する。例えば、ＤＲ集合体は、ノイジィデータが受け付けられず、顧客１０２にインセンティブを提供しないことを、顧客１０２に示す。暗号化証明が表式の正当な証明である時、サードパーティプライバシィモジュール１１６は、リクエストされたエネルギ使用データとして、ノイジィデータを受け付ける。サードパーティプライバシィモジュール１１６は、少なくとも部分的にはノイジィデータに基づいて、ＤＲイベントについての顧客１０２および／またはサイト１２８の順守を評価する。もしＤＲ集合体が、ノイズバンドが高すぎる（例えば、エネルギ使用データが削減の評価ができないほど不明瞭である）と決定するか、ノイズバンドを低減する価値があると決定するならば、次にサードパーティプライバシィモジュール１１６は、特別なインセンティブと交換する選択されたノイズバンドを低減する申し出を、顧客１０２に通信する。
【００５３】
ＦＲシステム１００について、変形例、付加、または除去が、本開示の範囲を逸脱すること無しに行える。特に、図１に示した実施形態は、ひとりの顧客１０２、１つの顧客装置１０４、１つの保管所１２４、１つのサイト１２８、１つの事業者１０８、１つの事業者サーバ１１０、１つのサードパーティ１２０、および１つのサードパーティサーバ１１４を有する。しかし、本開示は、ひとり以上の顧客１０２、１つ以上の顧客装置１０４、１つ以上の保管所１２４、１つ以上のサイト１２８、１つ以上の事業者１０８、１つ以上の事業者サーバ１１０、１つ以上のサードパーティ１２０、１つ以上のサードパーティサーバ１１４、またはそれらの組み合わせを有するＤＲシステムに適用される。本開示は、電気または他の資源が削減されるＤＲシステムにも適用される。
【００５４】
さらに、ここで説明した実施形態における各種の要素の分離は、すべての実施形態で起きる分離を示すことを意味しない。ここで説明した要素は、単一の要素にまとめられても、多重の要素に分離されても、この開示の有利な効果が得られると理解されるべきである。
【００５５】
事業者サーバ１１０、サードパーティプライバシィモジュール１１６および顧客プライバシィモジュール１０６、またはそれらの組み合わせは、プライバシィ保護通信のためのコードおよびルーチンを有する。いくつかの実施形態では、事業者サーバ１１０、サードパーティプライバシィモジュール１１６および顧客プライバシィモジュール１０６、またはそれらの組み合わせは、例えば、コンピューティング装置に記憶される薄いクライアントアプリケーション(thin-client application)として部分的に、および顧客装置１０４および／またはサードパーティサーバ１１４に記憶される要素として部分的に、動作する。いくつかの実施形態では、事業者サーバ１１０、サードパーティプライバシィモジュール１１６、顧客プライバシィモジュール１０６、またはそれらの組み合わせは、フィールドプログラマブルゲートアレイ(FPGA)またはアプリケーション特定集積回路(ASIC)を含むハードウェアを使用して実現される。いくつかの他の例では、事業者サーバ１１０、サードパーティプライバシィモジュール１１６、顧客プライバシィモジュール１０６、またはそれらの組み合わせは、ハードウェアおよびソフトウェアの組み合わせを使用して実現される。
【００５６】
ＤＲシステム１００では、顧客装置１０４内のメモリのようなメモリ、事業者サーバ１１０、保管所１２４、およびサードパーティサーバ１１４は、ここで説明した機能性を提供するためのデータを記憶する非一時的メモリを有する。メモリは、ダイナミックランダムアクセスメモリ(DRAM)装置、スタテックランダムアクセスメモリ(SRAM)装置、フラッシュメモリ、または他のメモリ装置である記憶装置を有する。いくつかの実施形態では、記憶装置は、不揮発性メモリまたは類似の永久記憶装置、およびハードディスクドライブ、フロッピィディスクドライブ、ＣＤ−ＲＯＭ装置、ＤＶＤ−ＲＯＭ装置、ＤＶＤ−ＲＷ装置、フラッシュメモリ装置、またはより永久的な基礎技術で情報を記憶する他の大容量装置を含む媒体も有する。
【００５７】
図２は、例示の顧客装置１０４、例示のサードパーティサーバ１１４、および例示の事業者サーバ１１０のブロック図である。図２の顧客装置１０４、サードパーティサーバ１１４、および事業者サーバ１１０は、図１および図２を合わせて参照して一般的に説明される。
【００５８】
顧客装置１０４は、顧客プライバシィモジュール１０６、プロセッサ２２４Ａ、メモリ２２２Ａ、および通信ユニット２２６Ａを有する。顧客プライバシィモジュール１０６、プロセッサ２２４Ａ、メモリ２２２Ａ、および通信ユニット２２６Ａは、バス２２０Ａを介して接続されている。サードパーティサーバ１１４は、サードパーティプライバシィモジュール１１６、プロセッサ２２４Ｂ、メモリ２２２Ｂ、および通信ユニット２２６Ｂを有する。サードパーティプライバシィモジュール１１６、プロセッサ２２４Ｂ、メモリ２２２Ｂ、および通信ユニット２２６Ｂは、バス２２０Ｂを介して接続されている。事業者サーバ１１０は、事業者プライバシィモジュール１１２、プロセッサ２２４Ｃ、メモリ２２２Ｃ、および通信ユニット２２６Ｃを有する。事業者プライバシィモジュール１１２、プロセッサ２２４Ｃ、メモリ２２２Ｃ、および通信ユニット２２６Ｃは、バス２２０Ｃを介して接続されている。プロセッサ２２４Ａ−２２４Ｃは、ここでは一般的に１個のプロセッサ２２４または複数個のプロセッサ２２４として参照され、メモリ２２２Ａ−２２２Ｃは、ここでは一般的に１個のメモリ２２２として参照され、通信ユニット２２６Ａ−２２６Ｃは、ここでは一般的に１個の通信ユニット２２６または複数個の通信ユニット２２６として参照され、そしてバス２２０Ａ−２２０Ｃは、ここでは一般的に１つのバス２２０または複数のバス２２０として参照される。
【００５９】
プロセッサ２２４は、演算およびプライバシィ保護の実行のために、算術論理演算ユニット（ＡＬＵ）、マイクロプロセッサ、汎用コントローラ、またはいくつかの他のプロセッサアレイを有する。プロセッサ２２４のそれぞれは、他の要素（例えば、参照符号１０６、１１２、１１６、２２２および２２６の要素）と通信するためのバス２２０の対応する１つに接続される。一般に、プロセッサ２２４は、コンプレックス命令セットコンピュータ(complex instruction set computer: CISC)アーキテクチャ、リデュースド命令セットコンピュータ(reduced instruction set computer: RISC)アーキテクチャ、または命令セットの組み合わせを組み込んだアーキテクチャを含む各種のコンピューティングアーキテクチャを有する。図２において、顧客装置１０４、サードパーティサーバ１１４、および事業者サーバ１１０は、単一プロセッサ２２４を有する。別にまたはさらに、１つ以上の顧客装置１０４、サードパーティサーバ１１４、および事業者サーバ１１０は、多重プロセッサを有してもよい。他のプロセッサ、オペレーティングシステム、および物理的な構成も可能である。
【００６０】
メモリ２２２は、ここで説明する動作を実行するように１つ以上のプロセッサ２２４により実行される命令および／またはデータを記憶する。メモリ２２２のそれぞれは、他の要素との通信のため、バス２２０の１つに接続される。命令および／またはデータは、ここで説明する技術または方法を実行するためのコードを有する。メモリ２２２は、ＤＲＡＭメモリ装置、ＳＲＡＭメモリ装置、フラッシュメモリ、またはいくつかのの他のメモリ装置を有する。いくつかの実施形態では、メモリ２２２は、別にまたはさらに、不揮発性メモリまたは類似の永久記憶装置、およびハードディスクドライブ、フロッピー（登録商標）ディスクドライブ、ＣＤ−ＲＯＭ装置、ＤＶＤ−ＲＯＭ装置、ＤＶＤ−ＲＡＭ装置、ＤＶＤ−ＲＷ装置、フラッシュメモリ装置、またはより永久的な基礎技術で情報を記憶する他の大容量装置を含む媒体を有する。
【００６１】
通信ユニット２２６は、顧客装置１０４、保管所１２４、サードパーティサーバ１１４、および事業者サーバ１１０の１つ以上にデータを送信するかまたはそれからデータを受信するように構成される。通信ユニット２２６のそれぞれは、バス２２０の対応する１つに接続される。いくつかの実施形態では、通信ユニット２２６は、ネットワーク１２２への直接の物理的な接続用ポートまたは他の通信チャネルを有する。例えば、通信ユニット２２６は、ＤＲシステム１００の要素との有線通信のためのＵＳＢ、ＳＤ、ＣＡＴ−５、または類似のポートを有する。いくつかの実施形態では、通信ユニット２２６は、IEEE 802.11,IEEE 802.16, BLUETOOTH（登録商標）、または他の適当な無線通信方法を含む１つ以上の無線通信方法を使用する通信チャネルを介してデータを交換するための無線トランシーバを有する。
【００６２】
いくつかの実施形態では、通信ユニット２２６は、ＳＭＳ、ＭＭＳ、ＨＴＴＰ、直接データ接続、ＷＡＰ、e-mail、または他の適切な型式の電子通信を介することを含むセルラー通信ネットワーク上で、データの送信および受信のためのセルラー通信トランシーバを有する。いくつかの実施形態では、通信ユニット２２６は、有線ポートおよび無線トランシーバを有する。通信ユニット２２６は、送信制御プロトコル／インターネットプロトコル(TCP/IP)、ＨＴＴＰ、ＨＴＴＰセキュア（ＨＴＴＰＳ）、および単純なメール送信プロトコル（ＳＭＴＰ）等を含む標準ネットワークプロトコルを使用して、ファイルおよび／または媒体対象物を分配するためのネットワーク１２２に他の接続を提供もする。
【００６３】
図２の実施形態では、顧客プライバシィモジュール１０６は、ダウンロードモジュール２０２、決定モジュール２０４、作成モジュール２０８、生成モジュール２１０、通信モジュール２１２、暗号化モジュール２１４、選択モジュール２１６、拒絶モジュール２１８、およびサインモジュール２２８を有する。サードパーティプライバシィモジュール１１６は、サードパーティ決定モジュール２３６、サードパーティ通信モジュール２３８、受付モジュール２４０、および評価モジュール２４２を有する。事業者プライバシィモジュール１１２は、事業者通信モジュール２３０、サインモジュール２３２、およびセットアップモジュール２３４を有する。
【００６４】
ダウンロードモジュール２０２、決定モジュール２０４、作成モジュール２０８、生成モジュール２１０、通信モジュール２１２、暗号化モジュール２１４、選択モジュール２１６、拒絶モジュール２１８、サインモジュール２２８、サードパーティ決定モジュール２３６、サードパーティ通信モジュール２３８、受付モジュール２４０、および評価モジュール２４２、事業者通信モジュール２３０、サインモジュール２３２、およびセットアップモジュール２３４（プライバシィモジュールを集めた）の１つ以上は、ここで説明した１つ以上の動作を実行するように構成された１つ以上のルーチンを含むソフトウェアとして実現される。プライバシィモジュールは、プロセッサ２２４により実行可能な命令セットを有し、以下に説明する機能性を提供する。いくつかの例では、プライバシィモジュールは、メモリ２２２に記憶されるかまたは一時的にその中にロードされ、プロセッサ２２４の１つ以上によりアクセス可能で実行可能である。プライバシィモジュールの１つ以上は、１つ以上のバス２２０を介して、プロセッサ２２４の１つ以上との協働および通信のために適応されている。
【００６５】
図１を参照して議論したように、事業者サーバ１１０は、サイト１２８のエネルギ使用データを収集するように構成されている。エネルギ使用データの収集は、例えば、請求目的である。図１のＤＲシステム１００では、顧客１０２が、サードパーティ１２０との通信で、エネルギ使用データにアクセスすることを望む状況がある。したがって、事業者サーバ１１０は、顧客１０２が少なくとも部分的にエネルギ使用データおよびサインを受信することを可能にするために、事業者プライバシィモジュール１１２、事業者通信モジュール２３０、サインモジュール２３２、およびセットアップモジュール２３４を有する。
【００６６】
例えば、セットアップモジュール２３４は、サインスキームおよび／または公開キー暗号（ＰＫＥ）スキームに含まれるアルゴリズムを実行または通信するように構成される。サインスキームは、事業者１０８にキー組を出力するサインキー生成アルゴリズムを定義する。組の第１の部分は、事業者１０８に保持されるサインキーを有する。組の第２の部分は、公衆に公開される確認キーを有する。
【００６７】
サインスキームは、サインアルゴリズムも定義する。サインアルゴリズムは、サインキーおよびメッセージ（例えば、エネルギ使用データ）を入力し、サインを出力する。サインスキームは、確認アルゴリズムも定義する。確認アルゴリズムは、確認キー、サイン、およびメッセージを入力し、成功または失敗を出力する。成功は、事業者１０８がメッセージにサインしたことを示し、失敗は、事業者１０８がメッセージにサインしなかったことを示す。
【００６８】
ＰＫＥスキームは、暗号化キー（適宜プライベートキーとして参照される）および公開キーを含むキー組を顧客１０２に出力するＰＫＥキー生成アルゴリズムを定義する。公開キーは、公衆に公開される。ＰＫＥスキームは、暗号化アルゴリズムを定義する。暗号化アルゴリズムは、公開キー、メッセージ（例えばエネルギ使用データ）、および生成したランダム数を入力し、暗号テキストを出力する。ＰＫＥスキームは、暗号化アルゴリズムを定義する。復号アルゴリズムは復号キーおよび暗号テキストを入力し、平文を出力する。
【００６９】
サインスキームの例は、現実的に偽造不能なサインスキームを有する。ＰＫＥスキームの例は、セキュア暗号化スキームである。例えば、ＰＫＥスキームは、選択された平文攻撃下での非識別性(indistinguishability under chosen plaintext attack: IND-CPA)、選択された暗号文攻撃下での非識別性(indistinguishability under chosen ciphertext attack: IND-CCA)（例えば、IND-CCAおよび／またはIND-CCA2)または他の適切なセキュア暗号化スキームのような、１つ以上の立証できるセキュリティ性能を満たすセキュア暗号化スキームを有する。
【００７０】
図示の実施形態では、セットアップモジュール２３４は、事業者サーバ１１０に含まれる。さらにまたは別に、セットアップモジュール２３４は、サードパーティサーバ１１４、顧客装置１０４、保管所１２４、または他のサーバまたはコンピューティング装置に含まれる。さらに、いくつかの実施形態では、セットアップモジュール２３４に付随する動作の一部は、サードパーティサーバ１１４、顧客装置１０４、および他のサーバまたはコンピューティング装置の１つ以上により実行される。これらのおよび他の実施形態では、サインアルゴリズム、サインキー、または１つ以上の他のパラメータまたはアルゴリズムは、事業者サーバ１１０に通信される。
【００７１】
サインモジュール２３２は、事業者１０８により収集されたエネルギ使用データを受信し、エネルギ使用データにサインするように構成されている。例えば、サインアルゴリズムは、エネルギ使用データにサインするのに使用される。いくつかの実施形態では、サインアルゴリズムは、例示のサインアルゴリズムによって計量される。
【００７２】
【数１】
2015216628.tif 000003
【００７３】
上記のサインアルゴリズムにおいて、σはサインアルゴリズムにより出力されるサインを示す。Signはサインアルゴリズムを示す。パラメータskUはサインキーを表す。変数mは、エネルギ使用データ（または他のメッセージ）を表す。
【００７４】
事業者通信モジュール２３０は、事業者プライバシィモジュール１１２と事業者サーバ１１０の他の要素（例えば、参照符号２２２，２２４および２２６で示される要素）との間の通信を取り扱うように構成される。通信モジュール２３０は、保管所１２４との通信ユニット２２６を介して、顧客装置１０４、およびサードパーティサーバ１１４、またはそれらの組み合わせにデータを送り、データを受信するように構成されている。いくつかの例では、事業者通信モジュール２３０は、他のモジュール（例えば、参照符号２３２，２３０および２３４で示される要素）と協働して、通信ユニット２２６を介して、保管所１２４、顧客装置１０４、およびサードパーティサーバ１１４の１つ以上からデータを受信するおよび／またはデータを送る。
【００７５】
例えば、事業者モジュール２３０は、サードパーティサーバ１１４および／または顧客装置１０４に確認アルゴリズムを通信するように構成されている。サードパーティサーバ１１４は、サードパーティサーバ１１４に通信されたサインおよび／またはノイジィデータを確認するかを決定するため、公開された確認キーを使用する。事業者通信モジュール２３０は、ＰＫＥキー生成アルゴリズムおよび／またはサインキー生成アルゴリズムを、１つ以上のキーがそれぞれの場所で生成されるように、顧客装置１０４に通信する。
【００７６】
事業者モジュール２３０は、エネルギ使用データを保管所１２４に通信するように構成されてもいる。いくつかの実施形態では、事業者通信モジュール２３０は、サインアルゴリズムから出力されたエネルギ使用データおよびサインを通信する。事業者プライバシィモジュール１１２は、サインおよび／またはエネルギ使用データを、定期的に、連続的に、または顧客装置１０４および／またはサードパーティ１２０からのリクエストに応じて、保管所１２４に通信する。
【００７７】
図２を参照すると、サードパーティプライバシィモジュール１１６および顧客プライバシィモジュール１０６は、ＤＲトランザクションの文脈で記述される。ＤＲトランザクションは、ＤＲイベントに続くエネルギ使用データの通信を有する。この記述は、ＤＲシステム１００におけるエネルギ使用データを通信する理由の例である。他の実施形態では、サードパーティは、エネルギ使用データに基づいて他のサービスを提供する他の型式のサービスプロバイダを有する。これらの他の実施形態では、顧客１０２のプライバシィは、サードパーティ１２０がＤＲ集合体を有する実施形態と同様に保護される。
【００７８】
ＤＲトランザクションの文脈で、サードパーティ通信モジュール２３８は、ＤＲイベントの削減リクエストを通信するように構成されている。サードパーティ通信モジュール２３８は、例えば、ネットワーク１２２および通信ユニット２２６Ａおよび２２６Ｂを介して、顧客プライバシィモジュール１０６の通信モジュール２１２に、削減リクエストを通信するように構成されている。削減リクエストは、ＤＲイベント中に削減するエネルギ量、ＤＲイベントの期間、またはＤＲイベント評価基準を有するかまたは特定する。
【００７９】
ＤＲイベント中、顧客１０２は、サイト１２８におけるエネルギ使用を削減する。事業者１０８は、ＤＲイベント中のエネルギ使用データを収集する。ＤＲイベントに続いて、サードパーティ通信モジュール２３８は、ＤＲイベント中の顧客１０２のエネルギ使用データをリクエストする。リクエストは、顧客プライバシィモジュール１０６の通信モジュール２１２に通信される。
【００８０】
リクエストに応じて、顧客プライバシィモジュール１０６のダウンロードモジュール２０２は、（例えば、サインアルゴリズムにしたがって）事業者１０８のサインしたエネルギ使用データをダウンロードする。特に、ダウンロードモジュール２０２は、ＤＲイベント中の事業者１０８により収集された保管所からのエネルギ使用データをダウンロードする。ダウンロードモジュール２０２は、事業者１０８によりサインされたエネルギ使用データを決定モジュール２０４に通信する。
【００８１】
決定モジュール２０４は、エネルギ使用データを受信し、エネルギ使用データのサインが事業者１０８のものであるか決定するように構成されている。いくつかの実施形態では、確認アルゴリズムは、エネルギ使用データのサインが事業者１０８のものであるか決定するのに使用される。例えば、決定モジュール２０４は、次の確認表式にしたがってこの決定を行う。
【００８２】
【数２】
2015216628.tif 000004
【００８３】
この確認表式において、Verは確認アルゴリズムを表す。パラメータvkUは、公開されている確認キーを表す。パラメータmは、エネルギ使用データを表す。もし確認表式が偽であれば、決定モジュール２０４は、拒絶モジュール２１８に信号を通信する。これに応じて、拒絶モジュール２１８はエネルギ使用データを拒絶する。もし確認表式が真であれば、決定モジュール２０４は、確認表式が真であることを示す信号を、暗号化モジュール２１４および生成モジュール２１０に通信する。
【００８４】
暗号化モジュール２１４は、決定モジュール２０４から信号を受信するように構成されている。暗号化モジュール２１４は、エネルギ使用データおよび確認サインを含むメッセージ−サイン組を暗号化するように構成されている。例えば、いくつかの実施形態では、暗号化されたメッセージ−サイン組は、次の例示の暗号表式にしたがって定義される。
【００８５】
【数３】
2015216628.tif 000005
【００８６】
この暗号化表式において、eは暗号化されたメッセージ−サイン組を表す。演算子:=は定義演算子を表す。変数mはエネルギ使用データを表す。パラメータσはサインアルゴリズムから出力された事業者１０８のサインを表す。パラメータpkはＰＫＥスキームからの公開キーを表す。演算子Enc()は暗号化アルゴリズムを表す。変数rは生成されたランダム数を表す。暗号化モジュール２１４は、顧客プライバシィモジュール１０６の通信モジュール２１２に、暗号化されたメッセージ−サイン組を通信する。
【００８７】
生成モジュール２１０は、エネルギ使用データへ付加するランダムノイズに基づいて、ノイジィデータを生成するように構成されている。いくつかの実施形態では、ランダムノイズは、ノイズバンドにしたがって付加される。これらおよび他の実施形態では、選択モジュール２１６は、ノイズバンドの選択を受信するように構成されている。
【００８８】
いくつかの実施形態では、ノイズバンドは次のノイズバンド式にしたがって定義される。
【００８９】
【数４】
2015216628.tif 000006
【００９０】
このノイズバンド式において、変数mはエネルギ使用データを表す。変数m'はノイジィデータを表す。変数εは選択されたノイズバンドを表す。例えば、ノイズバンドが１０％に選択されると、εは０．１０である。演算子｜｜は絶対値を表す。したがって、ノイジィデータは、エネルギ使用データからの制限されたずれを有するランダムノイズで変形したエネルギ使用データを表す。
【００９１】
例えば、選択モジュール２１６は、ユーザ入力に接続されるかまたは顧客がプライバシィの優先具合を選択するプライバシィ設定ツールに接続される。プライバシィの優先具合ノイズバンドに対応する。選択モジュールは生成モジュール２１０に選択されたノイズバンドを通信し、ノイズバンドはノイジィデータ生成のための基礎として使用される。生成モジュール２１０は、顧客プライバシィモジュール１０６の通信モジュール２１２にノイジィデータを通信する。
【００９２】
作成モジュール２０８は、暗号証明のような証明を作成するように構成されている。いくつかの実施形態では、暗号証明は、非相互作用ゼロ認識(non-interactive zero knowledge: NIZK)証明を有する。一般に、ゼロ認識証明（例えば、非相互作用よりむしろ相互作用）は、プロトコルを有し、証明者と称される１つのサードパーティは、確認者と称される他のサードパーティに、そのプロトコルにより、メッセージが真であることを、ステートメントが実際に真であるメッセージから離れたいかなる付加情報を一緒に送ること無しに、証明する。ゼロ認識証明は、一般に完全性、堅牢性、ゼロ認識の性質を有する。完全性は、ステートメントの真性を「証明」する証言を指摘するプロトコル要素の包含に抵抗する。堅牢性は、ステートメントが偽であるならば、悪意の証明者が確認者を説得しようとするのを禁止するプロトコル要素に抵抗する。ゼロ認識は、確認者がステートメントが真であることだけを学習するのを可能にするプロトコル要素に抵抗する。NIZKは、証明者と確認者の間で何の相互作用も発生しないゼロ認識証明の変形である。例えば、いくつかの状況では、証明者と確認者の間で共有される共通の参照ストリングは、演算でＮＩＺＫを達成するのに十分である。
【００９３】
非決定性多項式時間(non-deterministic polynominal time: NP)のためのＮＩＺＫ言語は、ＮＩＺＫキー生成アルゴリズム、証明者、および確認者を定義する。ＮＩＺＫキー生成アルゴリズムは、共通参照ストリング(common reference string: CRS)を生成し、公衆にＣＲＳを公開する。ＮＩＺＫ証明者は、ＣＲＳ、候補、証言を、ＢＰ言語内のメンバーシップに入力し、「証明」を出力する。ＮＩＺＫ確認者は、ＣＲＳ、証明、および候補を入力し、「成功」または「失敗」を出力する。高い確率で、成功は、候補がＮＰ言語のメンバーであることを示す。
【００９４】
ＮＰ言語についてのＮＩＺＫの実現は、２つのステップを含む。第１ステップは、ＮＰ言語をブール回路満足度問題(Boolean circuit-satisfiability problem)に変換することを有する。変換は、標準の方法で行われる。第２ステップは、暗号内に存在する結果を使用してブール回路満足度問題についてのＮＩＺＫシステムを作成することを有する。繰り返しグループに対する線形動作を使用して定義されるような特別な言語について、いくつかの他の技術も使用される。これらの技術のいくつかは、組合せ動作をサポートするある楕円曲線グループのような双一次のグループを使用する。
【００９５】
ＮＩＺＫのいくつかの付加される詳細およびＮＩＺＫの実現は、M. Blum, P.Feldman, and S. MicaliのNon-Interactive Zero-Knowledge およびその応用に関する以下の文献に記載される。Proceedings of the Twentieth Annual ACM Symposium on Theory of Computing, pages 103-112, ACM, 1988; J. Groth, "Short Pairing-Based Non-Interactive Zero-Knowledge Arguments". Advances in Cryptology-ASIACRYPT 2010, pages 321-340, Springer, 2010; J. Groth, R. Ostrovsky, and A. Sahai, "Perfect Non-Interactive Zero Knowledge for np". Advances in Cryptology-EUROCRYPT 2006, pages 339-358, Springer, 2006; J. Groth and A. Sahai, "Efficient Non-Interactive Proof Systems for Bilinear Groups". Advances in Cryptology-EUROCRYPT 2008, pages 415-432, Springer, 2008; C. S. Jutla and A. Roy, "Shorter Quasi-Adaptive NIZK Proofs for Linear Subspaces". ASIACRYPT 2013; M. Sipser, "Introduction to the Theory of Computation".これらの文献はここに組み入れられ、その全体が参照される。
【００９６】
暗号証明がＮＩＺＫを有する実施形態では、セットアップモジュール２３４は、ＮＩＺＫ証明システムを生成する。ＮＩＺＫシステムは、ＮＩＺＫ証明を有し、それは暗号化されたメッセージ−サイン組およびノイジィデータが設計したＮＰ言語のメンバーであることを確立するように構成される。
【００９７】
設計したＮＰ言語の例は、次のような例示の設計したＮＰ言語表式にしたがって定義される。
【００９８】
【数５】
2015216628.tif 000007
【００９９】
設計したＮＰ言語表式において、e, Ver(), Enc(), pk, m, σ, r, m', ε, vkUおよび||は、上記の通りである。パラメータLε,pk,vkUは、設計したＮＰ言語を表す。演算子∧は、論理結合子を表す。演算子｜は、条件イベント演算子を表す。演算子：は「そのように」の演算子を表す。演算子∃は、現存する量化演算子を表す。
【０１００】
設計したＮＰ言語表式において、証明者がメッセージ（例えばエネルギ使用データ）およびサイン（例えば、事業者１０８のサイン）を有するならば、メッセージ（例えば、ノイジィデータ）および暗号化メッセージ−サイン組は言語に属し、メッセージは、メッセージのノイズバンド内にあり、事業者１０８がメッセージにサインし、暗号化メッセージ−サイン組はそのようなメッセージ−サイン組の暗号である。
【０１０１】
作成モジュール２０８は、したがって暗号化メッセージ−サイン組およびノイジィデータが設計されたＮＰ言語のメンバーであることを確立するように構成されたＮＩＺＫ証明を細工性するように構成される。いくつかの実施形態では、ＮＩＺＫ証明は、次のＮＩＺＫ表式にしたがって作成される。
【０１０２】
【数６】
2015216628.tif 000008
【０１０３】
ＮＩＺＫ表式において、e, :=, m,σ, m'は上記の通りである。パラメータπは、ＮＩＺＫ証明を表す。パラメータΨはNIZK CRSを表す。Pは証明者を表す。ＮＩＺＫ表式において、証明者はCRSを受信し、ノイジィデータおよび暗号化メッセージ−サイン組を有する候補、およびエネルギ使用データを有する証拠、サイン、およびランダム数はＮＩＺＫ証明を生成する。
【０１０４】
作成モジュール２０８は、ＮＩＺＫ証明および／または他の作成した暗号化証明を、顧客プライバシィモジュール１０６の通信モジュール２１２に通信するように構成されている。通信モジュール２１２は、ノイジィデータ、暗号化メッセージ−サイン組および暗号証明を、サードパーティ通信モジュール２３８に通信する。
【０１０５】
サードパーティ通信モジュール２３８は、ノイジィデータ、暗号化メッセージ−サイン組および暗号証明を受信する。サードパーティ通信モジュール２３８は、ノイジィデータ、暗号化メッセージ−サイン組および暗号証明を、サードパーティ決定モジュール２３６に通信する。
【０１０６】
サードパーティ決定モジュール２３６は、暗号化証明が正規であるか決定するように構成されている。例えば、作成モジュール２０８がＮＩＺＫ証明を作成する実施形態では、サードパーティ決定モジュール２３６は、ＮＩＺＫ証明が設計されたＮＰ言語の正当な証明であるか決定するように構成されている。
【０１０７】
決定は、次の証明表式にしたがって行われる。
【０１０８】
【数７】
2015216628.tif 000009
【０１０９】
ＮＩＺＫ証明表式で、Ψ、π、m', eは上記の通りである。演算子Ｖは、ＮＩＺＫシステムを表す。ＮＩＺＫ証明表式が失敗すれば、サードパーティ決定モジュール２３６は、ＮＩＺＫ証明表式が失敗であることを示す信号を受付モジュール２４０に通信する。これに応じて、受付モジュール２４０は、顧客１０２についてのＤＲトランザクションを保留する。
【０１１０】
もしＮＩＺＫ証明表式が成功すれば、サードパーティ決定モジュール２３６は、ＮＩＺＫ証明表式が成功であることを示す信号を受付モジュール２４０に通信する。受付モジュール２４０は、ノイジィデータをリクエストされたエネルギ使用データとして受け付ける。受付モジュール２４０は、評価モジュール２４２にノイジィデータを通信する。評価モジュール２４２は、少なくとも部分的にノイジィデータに基づいてＤＲイベントについての顧客１０２の順守を評価する。評価モジュール２４２は、さらにノイズバンドが高すぎるか決定する。これに対して、受付モジュール２４０は、ＤＲトランザクションを保留する。
【０１１１】
図３は、図１のＤＲシステムで実現される例示のプロトコルフロー３００のフロー図である。このフロー図は、事業者サーバ１１０、顧客サーバ１０４、およびサードパーティサーバ１１４を有する。事業者サーバ１１０、顧客サーバ１０４、およびサードパーティサーバ１１４のそれぞれで実行される１つ以上の動作は、ここに含まれる。図３で使用したように、シンボル、パラメータ、および動作は上記の通りである。
【０１１２】
特に、事業者サーバ１１０において、エネルギ使用データが収集され、エネルギ使用データはサインされる。事業者サーバ１１０は、エネルギ使用データおよびサインを顧客装置１０４に通信する。顧客装置１０４で、エネルギ使用データのサインが確認される。さらに、顧客装置１０４で、ＮＩＺＫ証明が作成され、メッセージ−サイン組が暗号化され、ランダム数が生成され、そしてノイジィデータが生成される。ノイジィデータ、暗号化メッセージ−サイン組、およびＮＩＺＫ証明は、サードパーティサーバ１１４に通信される。サードパーティサーバ１１４で、ＮＩＺＫ証明は、ノイジィデータの正当な証明としてチェックされ、暗号化メッセージ−サイン組はＮＩＺＫシステムのメンバーとしてチェックされる。ノイジィデータは、サードパーティサーバ１１４で受け付けられる。
【０１１３】
図４は、ここで説明する少なくとも１つの実施形態にしたがって配置された、エネルギ使用データプライバシィ保護の例示の方法４００のフロー図である。方法４００は、図１のＤＲシステム１００のようなＤＲシステムで実行される。方法４００は、図１および図２を参照して説明した顧客装置１０４により、いくつかの実施形態でプログラムで実行される。顧客装置１０４は、方法４００を実行するかまたは実行させるようにプロセッサにより実行可能なプログラムコードまたは命令を記憶またはコード化して記憶した、非一時的なコンピュータ読取可能な媒体（例えば、図２のメモリ２２２Ａ）を有するか、またはそれに通信可能に接続される。さらにまたは別に、顧客装置１０４は、方法４００の実行を行わせるまたはそれを制御するコンピュータ命令を実行するように構成されたプロセッサ（例えば、図２のプロセッサ２２４Ａ）を有する。ここでは個別のブロックとして示しているが、各種のブロックは、設計された実現方法に応じて、付加的なブロックに分割されるか、より少ないブロックに結合されるか、または除去される。
【０１１４】
方法４００は、ブロック４０２で開始する。ブロック４０２で、エネルギ使用データおよびサインは、保管所からダウンロードされる。ブロック４０４で、サインが事業者のものであるか決定される。サインが事業者のものでない時（ブロック４０４で"No"）の時、方法４００はブロック４１８に進む。ブロック４１８で、エネルギ使用データは、拒絶される。サインが事業者のものである時（ブロック４０４で"Yes"）の時、方法４００はブロック４０６に進む。
【０１１５】
ブロック４０６で、ノイズバンドを選択するのに有効な入力が受信される。いくつかの実施形態では、ノイズバンドは、エネルギ使用データの一部として計量される。例えば、選択されたノイズバンドは８％である。ブロック４０８で、ノイジィデータがエネルギ使用データにランダムノイズを付加することにより生成される。いくつかの実施形態では、エネルギ使用データに付加されるランダムノイズは、選択されたノイズバンドまでまたはそれより少ない量まで、エネルギ使用データを変化する。例えば、選択されたノイズバンドが１０％であれば、ノイジィデータは、エネルギ使用データの９０％から１１０％の範囲であるデータを有する。
【０１１６】
ブロック４１０で、メッセージ−サイン組が暗号化される。メッセージ−サイン組は、エネルギ使用データおよび確認されたサインを有する。４１２で、証明が作成される。証明は、暗号化メッセージ−サイン組およびノイジィデータが言語の対応する証明のメンバーであることを確立するように構成されている。証明および証明言語の例は、ＮＩＺＫ証明および図２を参照して説明した設計されたＮＰ言語を有する。ブロック４１４で、ノイジィデータ、暗号化メッセージ−サイン組、および証明がサードパーティに通信される。
【０１１７】
ブロック４１６で、申し出がサードパーティから受信される。申し出は、ノイズバンドを低減するためのインセンティブを有する。この申し出が受信された後、方法４００はブロック４０６に進み、ブロック４０８、４１０、４１２、および４１４の１つ以上に続く。
【０１１８】
この技術分野の熟練者であれば、ここで開示したこのおよび他の手順および方法について、プロセスおよび方法で実行される機能が異なる順番で実現されることが理解される。さらに、概略のステップおよび動作は、例示として提供されたのみで、開示の実施形態から逸脱すること無しに、ステップおよび動作のいくつかは任意であり、少ないステップおよび動作に結合でき、または付加的なステップおよび動作に広げられる。例えば、いくつかの実施形態でまたは状況で、ブロック４１６は除去される。
【０１１９】
図５は、ここで説明した少なくとも１つの実施形態にしたがって配置したＤＲ実現の例示の方法５００のフロー図である。方法５００は、図１のＤＲシステム１００のようなＤＲシステムで実行される。方法５００は、図１および図２を参照して説明したサードパーティサーバ１１４により、いくつかの実施形態においてプログラムで実行される。サードパーティサーバ１１４は、方法５００を実行するかまたは実行させるようにプロセッサにより実行可能なプログラムコードまたは命令を記憶またはコード化して記憶した、非一時的なコンピュータ読取可能な媒体（例えば、図２のメモリ２２２Ａ）を有するか、またはそれに通信可能に接続される。さらにまたは別に、サードパーティサーバ１１４は、方法５００の実行を行わせるまたはそれを制御するコンピュータ命令を実行するように構成されたプロセッサ（例えば、図２のプロセッサ２２４Ｂ）を有する。ここでは個別のブロックとして示しているが、各種のブロックは、所望の実現方法に応じて、付加的なブロックに分割されるか、より少ないブロックに結合されるか、または除去される。
【０１２０】
方法５００は、ブロック５０２で開始する。ブロック５０２で、ＤＲイベントの削減陸エストは、顧客および／または顧客装置に通信される。いくつかの実施形態では、削減陸エストは、ＤＲ集合体および／またはサードパーティサーバから、ＤＲイベントへの参加を勧誘するように通信される。ブロック５０４で、ＳＲイベント中の顧客のエネルギ使用データがリクエストされる。エネルギ使用データのリクエストは、ＤＲイベントの完了後顧客に行われる。ブロック５０６で、プライバシィ設定ツールが顧客に提供される。プライバシィ設定ツールは、特定のノイズバンドを特定するかまたはそれに対応するプライバシィ設定の顧客による選択を受信する。特定のノイズバンドは、そのようにして選択され、これまで説明したノイジィデータを生成するのに使用される。
【０１２１】
ブロック５０８で、ノイジィデータ、暗号化メッセージ−サイン組、および証明が、顧客から受信される。証明は、例えば、ＮＩＺＫ証明である。ブロック５１０で、証明が表式の正当な証明であるか決定される。表式は、ノイジィデータおよび暗号化メッセージ−サイン組が、証明に対応する証明言語のメンバーであるかを記述する。例えば、言語の証明は、設計されたＮＰ言語を有する。証明が表式の正当な証明でない時（ブロック５１０で、"No"の時）、方法５００は、ブロック５１８に進む。ブロック５１８で、ＤＲトランザクションは保留される。
【０１２２】
証明が表式の正当な証明である時（ブロック５１０で、"Yes"の時）、方法５００は、ブロック５１２に進む。ブロック５１２で、ノイジィデータは、リクエストされたエネルギ使用データとして受け付けられる。ブロック５１４で、顧客のＤＲイベントの順守が、少なくとも部分的にノイジィデータに基づいて評価される。
【０１２３】
ブロック５１６で、申し出が顧客に通信され、特定のインセンティブとの交換で選択されたノイズバンドを減少させる。例えば、選択されたノイズバンドを減少させるならば、ノイジィデータは、はより価値がある。したがって、申し出は、より価値のあるノイジィデータを受信する試みが通信される。
【０１２４】
この技術分野の熟練者であれば、ここで開示したこのおよび他の手順および方法について、プロセスおよび方法で実行される機能が異なる順番で実現されることが理解される。さらに、概略のステップおよび動作は、例示として提供されたのみで、開示の実施形態から逸脱すること無しに、ステップおよび動作のいくつかは任意であり、少ないステップおよび動作に結合でき、または付加的なステップおよび動作に広げられる。例えば、いくつかの実施形態で、サードパーティ（例えば、サードパーティ１２０）は、これまでの他の部分で説明したように、サービスプロバイダの他の形式を有する。これらの実施形態では、ブロック５０２、５１６、５１８またはそれらの組み合わせは、除去される。さらに、これらおよび他の実施形態では、ブロック５０４は、ＤＲイベントに関係のないエネルギ使用データのリクエストを有し、ブロック５１４は、ＤＲイベントに関係のない評価を有する。
【０１２５】
ここで説明した実施形態は、以下により詳細に説明するように、各種のコンピュータハードウェアまたはソフトウェアモジュールを含む専用のまたは半用のコンピュータの使用を有する。
【０１２６】
上記のように、ここで記載した実施形態は、その上にコンピュータが読取可能な命令またはデータ構造を担持または有するコンピュータが読取可能な媒体を使用して実現される。このようなコンピュータが読取可能な媒体は、一般用途または特別な用途のコンピュータによりアクセスされる利用可能などのような媒体であってもよい。例としては、これに限定されないが、このようなコンピュータが読取可能な媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、または他の光学ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶装置、またはコンピュータが読取可能な命令またはデータ構造の形式で所望のプログラムコードを担持または記憶するのに使用され一般用途のまたは特別な用途のコンピュータによりアクセスされるいかなる他の非一時的記憶媒体、を含む有形のまたは非一時的なコンピュータが読取可能な記憶媒体を有する。上記の組み合わせは、コンピュータが読取可能な媒体の範囲内に含まれる。
【０１２７】
コンピュータが実行可能な命令は、例えば、一般用途のコンピュータ、特別な用途のコンピュータ、または特別な用途の処理装置にある機能または機能のグループを実行させる命令およびデータを有する。主題について構造的な特徴および／または方法的な動作を特定する用語で説明してきたが、特許請求の範囲に記載された手段は上記の特別な特徴または動作にかならずしも限定されないことが理解される。むしろ、上記の特別な特徴または動作は、特許請求の範囲を実現する例示の形式として開示される。
【０１２８】
ここで使用したように、用語「モジュール」または「要素(component)」は、コンピューティングシステムの一般用途のハードウェア（例えば、コンピュータ読取可能な媒体、処理装置、等）により記憶および／または実行されるモジュールまたは要素および／またはソフトウェア対象物またはソフトウェアルーチンの動作を実行するように構成された特別なハードウェアの実現を参照する。いくつかの実施形態では、ここで説明した異なる要素、モジュール、エンジン、およびサービスは、コンピューティングシステム上で実行する対象またはプロセス（例えば、分離したスレッド）として実現される。ここで説明したシステムおよび方法は、（半用のハードウェアにより記憶および／または実行される）ソフトウェアで実現されることが望ましいが、ハードウェアまたはソフトウェアおよびハードウェアの組み合わせでの実現も可能で期待されている。この記載において、「コンピューティング単位」は、前に記載されたように、いかなるコンピューティングシステムでも、コンピューティングシステム上で動作するモジュールまたはモジュールの組み合わせでもよい。
【０１２９】
ここで引用したすべての例および条件付き表式は、発明者により従来の技術を更に推し進めるために提供された発明と概念を読者が理解するのを支援する教育的目的のためであり、そのように特定的に引用した例と条件に制限されるものではないと解釈されるべきである。本発明の実施形態を詳細に記述したが、種々の変更、置換、および改造が、本開示の精神と範囲を逸脱することなく実施形態に対して行えるということは理解されたい。
【０１３０】
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）
保管所からエネルギ使用データおよびサインをダウンロードし、
前記サインが事業者のものであるか決定し、
前記サインが事業者のものでない時、前記エネルギ使用データを拒絶し、そして
前記サインが事業者のものある時、
前記エネルギ使用データにランダムノイズを付加することにより、ノイジィデータを生成し、
前記エネルギ使用データおよび確認されたサインを含むメッセージ−サイン組を暗号化し、
前記暗号化されたメッセージ−サイン組および前記ノイジィデータが対応する証明言語のメンバーであることを確立するように構成された証明を作成し、そして
前記ノイジィデータ、前記暗号化されたメッセージ−サイン組、および前記証明を、サードパーティに通信するエネルギ使用データのプライバシィ保護の方法。
（付記２）
ノイズバンドを選択するのに効果的な入力を受信することをさらに有し、
前記ノイズバンドは、前記エネルギ使用データの一部として量が定められ、そして
前記エネルギ使用データに付加された前記ランダムノイズは、前記エネルギ使用データを前記ノイズバンドより少ない量だけ変化するように構成されている付記１に記載の方法。
（付記３）
前記ノイズバンドは、ノイズバンド式
【数８】
2015216628.tif 000010
ここで、mはエネルギ使用データを、
m'はノイジィデータを、
｜...｜は絶対値演算子を、そして
εはノイズバンドを表す、
にしたがって定義される付記２に記載の方法。
（付記４）
サードパーティから、ノイズバンドを低減するインセンティブを含む申し出を受信し、
インセンティブと交換の第２のノイズバンドに基づいてノイジィデータを再生成する、付記２に記載の方法。
（付記５）
前記証明は、非相互作用ゼロ認識（ＮＩＺＫ）証明を含み、
前記対応する証明言語は、非決定性多項式時間(NP)言語（設計されたＮＰ言語）のクラスに属する特別に構成された言語を有する付記１に記載の方法。
（付記６）
前記設計されたＮＰ言語は、設計されたＮＰ言語表式
【数９】
2015216628.tif 000011
にしたがって定義され、
前記ＮＩＺＫ証明は、ＮＩＺＫ証明表式
【数１０】
2015216628.tif 000012
にしたがって定義され、
暗号化メッセージ−サイン組は、暗号化メッセージ−サイン組表式
【数１１】
2015216628.tif 000013
にしたがって定義され、
ここで、
Lε,pk,vkUは、設計したＮＰ言語を表し、
mは、エネルギ使用データを表し、
m'は、ノイジィデータを表し、
εは、ノイズバンドを表し、
σは。サインアルゴリズムから出力されるサインを表し、
vkUは、確認キーを表し、
Ver()は、確認アルゴリズムを表し、
pkは、公開キーを表し、
Enc()は、暗号化アルゴリズムを表し、
∧は、論理結合子を表し、
｜は、条件イベント演算子を表し、
|...|は、絶対値演算子を表し、
：は「そのように」演算子を表し、
∃は、現存する量化演算子を表し、
πは、ＮＩＺＫ証明を表し、
：＝は、定義演算子を表し、
Ｐは、ＮＩＺＫ証明者を表し、
Ψは、ＮＩＺＫ共通参照ストリング（ＣＲＳ）を表し、
eは、暗号化メッセージ−サイン組を表し、そして、
rはランダム数を表す、
付記５に記載の方法。
（付記７）
前記サインは、現実的に偽造不能なサインスキームを使用して生成され、そして
前記暗号化は、１つ以上の証明可能なセキュア特性を満たすセキュア暗号化スキームを使用して実行される付記１に記載の方法。
（付記８）
需要応答（ＤＲ）イベント実現の方法であって、
顧客に、ＤＲイベントの削減リクエストを通信し、
ＤＲイベントに続くＤＲイベント中の前記顧客のエネルギ使用データをリクエストし、
ランダムノイズが付加されたエネルギ使用データを有するノイジィデータ、暗号化メッセージ−サイン組、および証明を受信し、
前記証明が、前記ノイジィデータおよび前記暗号化メッセージ−サイン組が対応する証明言語のメンバーであることを記述する表式の正当な証明であるか決定し、そして、
前記証明が前記表式の正当な証明である時、
前記ノイジィデータを、前記リクエストされたエネルギ使用データをして受け付け、そして
前記少なくとも部分的に前記ノイジィデータに基づいて、前記ＤＲイベントについての前記顧客の順守を評価する、方法。
（付記９）
さらに、前記証明が前記表式の正当な証明でない時、前記顧客とのトランザクションを保留する付記８に記載の方法。
（付記１０）
さらに、特別なインセンティブとの交換で、前記ノイジィデータを生成するのに使用されるノイズバンドを減少させる申し出を顧客に通信する付記８に記載の方法。
（付記１１）
さらに、前記顧客から入力を受信するように構成され、前記ノイジィデータを生成するのに使用されるノイズバンドに対応するプライバシィの優先具合を選択するのに効果的なプライバシィ設定ツールを、顧客に提供する付記８に記載の方法。
（付記１２）
前記証明は、非相互作用ゼロ認識（ＮＩＺＫ）証明を含み、
前記対応する証明言語は、非決定性多項式時間(NP)言語（設計されたＮＰ言語）のクラスに属する特別に構成された言語を有する付記８に記載の方法。
（付記１３）
前記設計されたＮＰ言語は、設計されたＮＰ言語表式
【数１２】
2015216628.tif 000014
にしたがって定義され、
前記ＮＩＺＫ証明は、ＮＩＺＫ証明表式
【数１３】
2015216628.tif 000015
にしたがって定義され、
暗号化メッセージ−サイン組は、暗号化メッセージ−サイン組表式
【数１４】
2015216628.tif 000016
にしたがって定義され、
ここで、
Lε,pk,vkUは、設計したＮＰ言語を表し、
mは、エネルギ使用データを表し、
m'は、ノイジィデータを表し、
εは、ノイズバンドを表し、
σは。サインアルゴリズムから出力されるサインを表し、
vkUは、確認キーを表し、
Ver()は、確認アルゴリズムを表し、
pkは、公開キーを表し、
Enc()は、暗号化アルゴリズムを表し、
∧は、論理結合子を表し、
｜は、条件イベント演算子を表し、
|...|は、絶対値演算子を表し、
：は「そのように」演算子を表し、
∃は、現存する量化演算子を表し、
πは、ＮＩＺＫ証明を表し、
：＝は、定義演算子を表し、
Ｐは、ＮＩＺＫ証明者を表し、
Ψは、ＮＩＺＫ共通参照ストリング（ＣＲＳ）を表し、
eは、暗号化メッセージ−サイン組を表し、そして、
rはランダム数を表す、
付記１２に記載の方法。
（付記１４）
前記ＤＲイベントは、容量入札プログラム（ＣＢＰ）または需要入札プログラム（ＤＢＰ）にしたがって実現される付記８に記載の方法。
（付記１５）
プロセッサに、
保管所からエネルギ使用データおよびサインをダウンロードし、
前記サインが事業者のものであるか決定し、
前記サインが事業者のものでない時、前記エネルギ使用データを拒絶し、そして
前記サインが事業者のものある時、
前記エネルギ使用データにランダムノイズを付加することにより、ノイジィデータを生成し、
前記エネルギ使用データおよび確認されたサインを含むメッセージ−サイン組を暗号化し、
前記暗号化されたメッセージ−サイン組および前記ノイジィデータが対応する証明言語のメンバーであることを確立するように構成された証明を作成し、そして
前記ノイジィデータ、前記暗号化されたメッセージ−サイン組、および前記証明を、サードパーティに通信する、動作を実行させるプログラム。
（付記１６）
プロセッサに、
ノイズバンドを選択するのに効果的な入力を受信することをさらに実行させ、
前記ノイズバンドは、前記エネルギ使用データの一部として量が定められ、そして
前記エネルギ使用データに付加された前記ランダムノイズは、前記エネルギ使用データを前記ノイズバンドより少ない量だけ変化するように構成されている付記１５に記載のプログラム。
（付記１７）
前記ノイズバンドは、ノイズバンド式
【数１５】
2015216628.tif 000017
ここで、mはエネルギ使用データを、
m'はノイジィデータを、
｜...｜は絶対値演算子を、そして
εはノイズバンドを表す、
にしたがって定義される付記１６に記載のプログラム。
（付記１８）
プロセッサに、
サードパーティから、ノイズバンドを低減するインセンティブを含む申し出を受信し、
インセンティブと交換の第２のノイズバンドに基づいてノイジィデータを再生成させる付記１６に記載のプログラム。
（付記１９）
前記証明は、非相互作用ゼロ認識（ＮＩＺＫ）証明を含み、
前記対応する証明言語は、非決定性多項式時間(NP)言語（設計されたＮＰ言語）のクラスに属する特別に構成された言語を有する付記１５に記載のプログラム。
（付記２０）
前記設計されたＮＰ言語は、設計されたＮＰ言語表式
【数１６】
2015216628.tif 000018
にしたがって定義され、
前記ＮＩＺＫ証明は、ＮＩＺＫ証明表式
【数１７】
2015216628.tif 000019
にしたがって定義され、
暗号化メッセージ−サイン組は、暗号化メッセージ−サイン組表式
【数１８】
2015216628.tif 000020
にしたがって定義され、
ここで、
Lε,pk,vkUは、設計したＮＰ言語を表し、
mは、エネルギ使用データを表し、
m'は、ノイジィデータを表し、
εは、ノイズバンドを表し、
σは。サインアルゴリズムから出力されるサインを表し、
vkUは、確認キーを表し、
Ver()は、確認アルゴリズムを表し、
pkは、公開キーを表し、
Enc()は、暗号化アルゴリズムを表し、
∧は、論理結合子を表し、
｜は、条件イベント演算子を表し、
|...|は、絶対値演算子を表し、
：は「そのように」演算子を表し、
∃は、現存する量化演算子を表し、
πは、ＮＩＺＫ証明を表し、
：＝は、定義演算子を表し、
Ｐは、ＮＩＺＫ証明者を表し、
Ψは、ＮＩＺＫ共通参照ストリング（ＣＲＳ）を表し、
eは、暗号化メッセージ−サイン組を表し、そして、
rはランダム数を表す、
付記１９に記載のプログラム。
（付記２１）
前記サインは、現実的に偽造不能なサインスキームを使用して生成され、そして
前記暗号化は、１つ以上の証明可能なセキュア特性を満たすセキュア暗号化スキームを使用して実行される付記１５に記載のプログラム。
（付記２２）
プロセッサに、
顧客に、ＤＲイベントの削減リクエストを通信し、
ＤＲイベントに続くＤＲイベント中の前記顧客のエネルギ使用データをリクエストし、
ランダムノイズが付加されたエネルギ使用データを有するノイジィデータ、暗号化メッセージ−サイン組、および証明を受信し、
前記証明が、前記ノイジィデータおよび前記暗号化メッセージ−サイン組が対応する証明言語のメンバーであることを記述する表式の正当な証明であるか決定し、そして、
前記証明が前記表式の正当な証明である時、
前記ノイジィデータを、前記リクエストされたエネルギ使用データをして受け付け、そして
前記少なくとも部分的に前記ノイジィデータに基づいて、前記ＤＲイベントについての前記顧客の順守を評価する、動作を実行させるプログラム。
（付記２３）
プロセッサに、
さらに、前記証明が前記表式の正当な証明でない時、前記顧客とのトランザクションを保留する動作を行わせる付記２２に記載のプログラム。
（付記２４）
プロセッサに、
さらに、特別なインセンティブとの交換で、前記ノイジィデータを生成するのに使用されるノイズバンドを減少させる申し出を顧客に通信する動作を行わせる付記２２に記載のプログラム。
（付記２５）
プロセッサに、
さらに、前記顧客から入力を受信するように構成され、前記ノイジィデータを生成するのに使用されるノイズバンドに対応するプライバシィの優先具合を選択するのに効果的なプライバシィ設定ツールを、顧客に提供する動作を行わせる付記２２に記載のプログラム。
（付記２６）
前記証明は、非相互作用ゼロ認識（ＮＩＺＫ）証明を含み、
前記対応する証明言語は、非決定性多項式時間(NP)言語（設計されたＮＰ言語）のクラスに属する特別に構成された言語を有する付記２２に記載のプログラム。
（付記２７）
前記設計されたＮＰ言語は、設計されたＮＰ言語表式
【数１９】
2015216628.tif 000021
にしたがって定義され、
前記ＮＩＺＫ証明は、ＮＩＺＫ証明表式
【数２０】
2015216628.tif 000022
にしたがって定義され、
暗号化メッセージ−サイン組は、暗号化メッセージ−サイン組表式
【数２１】
2015216628.tif 000023
にしたがって定義され、
ここで、
Lε,pk,vkUは、設計したＮＰ言語を表し、
mは、エネルギ使用データを表し、
m'は、ノイジィデータを表し、
εは、ノイズバンドを表し、
σは。サインアルゴリズムから出力されるサインを表し、
vkUは、確認キーを表し、
Ver()は、確認アルゴリズムを表し、
pkは、公開キーを表し、
Enc()は、暗号化アルゴリズムを表し、
∧は、論理結合子を表し、
｜は、条件イベント演算子を表し、
|...|は、絶対値演算子を表し、
：は「そのように」演算子を表し、
∃は、現存する量化演算子を表し、
πは、ＮＩＺＫ証明を表し、
：＝は、定義演算子を表し、
Ｐは、ＮＩＺＫ証明者を表し、
Ψは、ＮＩＺＫ共通参照ストリング（ＣＲＳ）を表し、
eは、暗号化メッセージ−サイン組を表し、そして、
rはランダム数を表す、
付記２６に記載のプログラム。
（付記２８）
前記ＤＲイベントは、容量入札プログラム（ＣＢＰ）または需要入札プログラム（ＤＢＰ）にしたがって実現される付記２２に記載のプログラム。
【図１】
2015216628.tif 000031
【図２】
2015216628.tif 000032
【図３】
2015216628.tif 000033
【図４】
2015216628.tif 000034
【図５】
2015216628.tif 000035