(57)【特許請求の範囲】
【請求項１】
ノイズ注入器が、ディスプレイ上に提示されるコンテンツと関連付けられたビットマップの中にノイズを注入することと、
前記コンテンツからの認識可能なパターンを含まない暗号化されたビットマップを得るために、暗号化器が、電子コードブック（ＥＣＢ）暗号化を使用して、前記ノイズ注入器によってノイズが注入されたビットマップを暗号化することと、
を含み、
前記ノイズを注入することは、前記ノイズが注入されたビットマップが前記コンテンツと関連付けられたビットマップに視覚的に知覚的に類似することを確保しながら、前記ノイズが注入されたビットマップのランダム性を最大化するように、前記コンテンツと関連付けられたビットマップがいかに修正され得るかを決定するために、前記コンテンツと関連付けられたビットマップを分析することを含む、方法。
【請求項２】
ノイズ注入器が、ディスプレイ上に提示されるコンテンツと関連付けられたビットマップの中にノイズを注入することと、
前記コンテンツからの認識可能なパターンを含まない暗号化されたビットマップを得るために、暗号化器が、電子コードブック（ＥＣＢ）暗号化を使用して、前記ノイズ注入器によってノイズが注入されたビットマップを暗号化することと、
前記ディスプレイへの提示のための準備として、グラフィックスメモリが前記暗号化されたビットマップを記憶することと、
復号化器が、前記ノイズが注入されたビットマップを再作成するために前記暗号化されたビットマップを復号化することと、
前記ディスプレイが、前記ノイズが注入されたビットマップを表示することと、
を含む方法。
【請求項３】
ノイズ注入器が画像のビットマップの中にノイズを注入することであって、前記ノイズが注入されたビットマップが前記画像のビットマップに視覚的に類似することを確保しながら、前記ノイズが注入されたビットマップの画素におけるランダム性を提供するように、前記画像のビットマップの中にノイズを注入することと、
前記画像からの認識可能なパターンを含まない暗号化されたビットマップを得るために、暗号化器が、前記ノイズ注入器によって前記ノイズが注入されたビットマップを電子コードブック（ＥＣＢ）暗号化を使用して暗号化することと、
を含む方法。
【請求項４】
前記ノイズを注入することは、前記ビットマップ内の画素の少なくともサブセットに対して画素値を修正することを含む、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記画素値を修正することは、カウンタを使用して、前記画素値を調節することを含む、請求項４に記載の方法。
【請求項６】
前記画素値を修正することは、既知の修正パターンを前記ビットマップに適用することを含む、請求項４または５に記載の方法。
【請求項７】
前記画素値を修正することは、前記画素値を調節するために乱数生成器を使用することを含む、請求項４から６のいずれか一項に記載の方法。
【請求項８】
前記ノイズを注入することは、画素のブロックの中に、前記ブロックが暗号化される前にノイズを注入することを含む、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記暗号化することは、グラフィックスプロセッサの一部である前記暗号化器によって行われる、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
前記ノイズを注入することは、グラフィックスプロセッサの外部にある前記ノイズ注入器によって行われる、請求項１から９のいずれか一項に記載の方法。
【請求項１１】
前記ノイズを注入することは、グラフィックスプロセッサの一部である前記ノイズ注入器によって行われる、請求項１から９のいずれか一項に記載の方法。
【請求項１２】
システムであって、
ノイズが注入されたビットマップを作成するために、ディスプレイ上に提示されるコンテンツと関連付けられたビットマップの中にノイズを注入するためのノイズ注入器と、
電子コードブック（ＥＣＢ）暗号化を使用して前記ノイズが注入されたビットマップを暗号化するための暗号化器であって、得られる暗号文が、前記コンテンツからの認識可能なパターンを含まない、暗号化器と、
を備え、
前記システムは、
前記ノイズが注入されたビットマップが前記コンテンツと関連付けられたビットマップに知覚的に類似することを確保しながら、前記ノイズが注入されたビットマップのランダム性を最大化するように前記コンテンツと関連付けられたビットマップがいかに修正され得るかを決定するビットマップ分析器をさらに備え、
前記ノイズ注入器は、前記ビットマップ分析器の決定に基づいて前記ノイズを注入する、システム。
【請求項１３】
ノイズが注入されたビットマップを作成するために、ディスプレイ上に提示されるコンテンツと関連付けられたビットマップの中にノイズを注入するためのノイズ注入器と、
電子コードブック（ＥＣＢ）暗号化を使用して前記ノイズが注入されたビットマップを暗号化するための暗号化器であって、得られる暗号文が、前記コンテンツからの認識可能なパターンを含まない、暗号化器と、
前記ディスプレイへの提示のための準備として、前記暗号化されたビットマップを記憶するグラフィックスメモリと、
前記ノイズが注入されたビットマップを再作成するために前記暗号化されたビットマップを復号化する復号化器と、
を備え、
前記ディスプレイは、前記復号化器により再作成された前記ノイズが注入されたビットマップを表示する、システム。
【請求項１４】
画像のビットマップの中にノイズを注入するためのノイズ注入器であって、前記ノイズが注入されたビットマップが前記画像のビットマップに視覚的に類似することを確保しながら、前記ノイズが注入されたビットマップの画素におけるランダム性を提供するように、前記画像のビットマップの中にノイズを注入するノイズ注入器と、
前記ノイズが注入されたビットマップを電子コードブック（ＥＣＢ）暗号化を使用して暗号化して、前記画像からの認識可能なパターンを含まない暗号化されたビットマップを得る暗号化器と、
を備える、システム。
【請求項１５】
前記ノイズ注入器は、カウンタ値を現在の画素値に追加するために使用されるカウンタを含む、請求項１２から１４のいずれか一項に記載のシステム。
【請求項１６】
前記ノイズ注入器は、所定のノイズパターンを前記ビットマップの中に注入する、請求項１２から１５のいずれか一項に記載のシステム。
【請求項１７】
前記ノイズ注入器は、乱数を現在の画素値に追加するための乱数生成器を含む、請求項１２から１６のいずれか一項に記載のシステム。
【請求項１８】
前記暗号化器は、グラフィックスプロセッサの一部である、請求項１２から１７のいずれか一項に記載のシステム。
【請求項１９】
前記ノイズ注入器は、グラフィックスプロセッサの一部である、請求項１２から１８のいずれか一項に記載のシステム。
【請求項２０】
ユーザに自分の機密情報へのセキュアなアクセスを提供するサーバであって、前記サーバは、
提示のためにユーザに送信される前記機密情報を捕捉する文書に対するデジタル署名を生成するデジタル署名システム（ＤＳＳ）であって、前記デジタル署名が、前記文書を認証するために使用される、デジタル署名システム（ＤＳＳ）と、
前記文書と関連付けられたビットマップの中にノイズを注入し、前記ノイズが注入されたビットマップを電子コードブック（ＥＣＢ）暗号化を使用して暗号化するグラフィックスプロセッサと、
通信インターフェースと、を含む、サーバと、
通信ネットワークと、
機密情報を受信し、前記機密情報を前記ユーザに提示する民生用電子機器であって、前記民生用電子機器は、
通信インターフェースと、
ディスプレイと、
前記サーバから受信された、前記暗号化されたノイズが注入されたビットマップを含む前記ディスプレイ上に提示される情報を記憶する、グラフィックスメモリと、
前記ディスプレイ上に提示する前に電子コードブック（ＥＣＢ）復号化を使用して前記暗号化されたノイズが注入されたビットマップを復号化する、グラフィックスプロセッサと、を含む、民生用電子機器と、
を備え、
前記サーバは、
前記ノイズが注入されたビットマップが前記文書と関連付けられたビットマップに知覚的に類似することを確保しながら、前記ノイズが注入されたビットマップのランダム性を最大化するように前記文書と関連付けられたビットマップがいかに修正され得るかを決定するビットマップ分析器を備え、
前記サーバの前記グラフィックスプロセッサは、前記ビットマップ分析器の決定に基づいて前記ノイズを注入する、システム。
【請求項２１】
ユーザに自分の機密情報へのセキュアなアクセスを提供するサーバであって、前記サーバは、
提示のためにユーザに送信される前記機密情報を捕捉する文書に対するデジタル署名を生成するデジタル署名システム（ＤＳＳ）であって、前記デジタル署名が、前記文書を認証するために使用される、デジタル署名システム（ＤＳＳ）と、
前記文書と関連付けられたビットマップの中にノイズを注入し、前記ノイズが注入されたビットマップを電子コードブック（ＥＣＢ）暗号化を使用して暗号化するグラフィックスプロセッサと、
通信インターフェースと、を含む、サーバと、
通信ネットワークと、
機密情報を受信し、前記機密情報を前記ユーザに提示する民生用電子機器であって、前記民生用電子機器は、
通信インターフェースと、
ディスプレイと、
前記サーバから受信された、前記暗号化されたノイズが注入されたビットマップを含む前記ディスプレイ上に提示される情報を記憶する、グラフィックスメモリと、
前記ディスプレイ上に提示する前に電子コードブック（ＥＣＢ）復号化を使用して前記暗号化されたノイズが注入されたビットマップを復号化する、グラフィックスプロセッサと、を含む、民生用電子機器と、
を備え、
前記ディスプレイは、前記民生用電子機器の前記グラフィックスプロセッサによる前記復号化によって得られた、前記ノイズが注入されたビットマップを表示する
システム。
【請求項２２】
ユーザに自分の機密情報へのセキュアなアクセスを提供するサーバであって、前記サーバは、
提示のためにユーザに送信される前記機密情報を捕捉する文書に対するデジタル署名を生成するデジタル署名システム（ＤＳＳ）であって、前記デジタル署名が、前記文書を認証するために使用される、デジタル署名システム（ＤＳＳ）と、
前記文書と関連付けられたビットマップの中にノイズを注入し、前記ノイズが注入されたビットマップを電子コードブック（ＥＣＢ）暗号化を使用して暗号化するグラフィックスプロセッサと、
通信インターフェースと、を含む、サーバと、
通信ネットワークと、
機密情報を受信し、前記機密情報を前記ユーザに提示する民生用電子機器であって、前記民生用電子機器は、
通信インターフェースと、
ディスプレイと、
前記サーバから受信された、前記暗号化されたノイズが注入されたビットマップを含む前記ディスプレイ上に提示される情報を記憶する、グラフィックスメモリと、
前記ディスプレイ上に提示する前に電子コードブック（ＥＣＢ）復号化を使用して前記暗号化されたノイズが注入されたビットマップを復号化する、グラフィックスプロセッサと、を含む、民生用電子機器と、
を備え、
前記サーバの前記グラフィックスプロセッサは、前記ノイズが注入されたビットマップが前記文書に関連付けられたビットマップに視覚的に類似することを確保しながら、前記ノイズが注入されたビットマップのランダム性を提供するように、前記文書と関連付けられたビットマップの中にノイズを注入し、前記ノイズが注入されたビットマップを電子コードブック（ＥＣＢ）暗号化を使用して暗号化して、前記文書からの認識可能なパターンを含まない、前記暗号化されたノイズが注入されたビットマップを得る
システム。
【請求項２３】
前記サーバのグラフィックスプロセッサは、前記ビットマップ内の画素の少なくともサブセットに対して画素値を修正することによってノイズを注入する、請求項２０から２２のいずれか一項に記載のシステム。
【請求項２４】
前記サーバのグラフィックスプロセッサは、カウンタを利用して、前記画素値を修正する、請求項２３に記載のシステム。
【請求項２５】
前記サーバのグラフィックスプロセッサは、乱数生成器を利用して、前記画素値を修正する、請求項２３または２４に記載のシステム。
【請求項２６】
前記グラフィックスメモリは、前記ディスプレイ上に提示されている機密情報を得ようと試みるハッカーによってランダムにアクセスされることができ、前記グラフィックスメモリ内に記憶された前記暗号化されたビットマップは、前記ハッカーが前記機密情報を得ることができる解明可能なパターンを含まない、請求項２０から２５のいずれか一項に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
デジタル形式における情報の量、可用性、およびアクセシビリティは、拡大し続けている。例えば、メディアプレーヤ（例えば、ｉＰｏｄ  Ｔｏｕｃｈ）、スマートフォン（例えば、ｉＰｈｏｎｅ（登録商標）、Ｂｌａｃｋｂｅｒｒｙ、Ａｎｄｒｏｉｄ携帯、Ｗｉｎｄｏｗｓ携帯）、タブレット（例えば、ｉＰａｄ（登録商標））、コンピュータ（例えば、ラップトップ、デスクトップ）、およびインターネット対応テレビなどの民生用電子機器は、デジタル情報にアクセス、それを受信、送信、共有、生成、および／または記憶し、ディスプレイ上にデジタル情報の意味解釈（視覚的表現）を提示するか、または意味解釈を印刷することができる場合がある。民生用電子機器は、例えば、それにネットワーク化された他の民生用電子機器、インターネット、および／または他のパブリック／プライベートネットワークからデジタル情報を受信し／それにアクセスすることができる。
【０００２】
デジタル情報としては、例えば、一般情報、ユーザ固有の情報、および／または機密情報が挙げられ得る。ユーザ固有の情報へのアクセスは、ユーザ認証セキュリティ機能（例えば、ユーザＩＤおよびパスワード）の使用により制限され得る。機密情報へのアクセスは、伝送中にあらゆる様式でデジタル情報が傍受されず、修正されず、および／または危険にさらされないことを確保するセキュアな通信チャネルの使用を必要とし得る。
【０００３】
デジタル情報が提示され得るデバイスがそれと関連付けられた異なるパラメータを有するとき、デジタル情報の意味解釈は、デバイスによって異なり得る。ある特定のコンテンツ（例えば、オンライン銀行取引情報、オンラインのセキュアな文書表示）に対して、デバイス上に提示されているデジタル情報の意味解釈は、コンテンツが維持されるサーバ上に生成されたものとは異ならないことを確保することが重要である。デジタルファイルが文書（例えば、機密文書）のために作成されるとき、デジタル署名は、デジタルファイルのために生成され得る。デジタルファイルの有効性は、デジタル署名が文書のビットストリング表示と論理的に一致することを検証することによって認証される。文書を解釈し、デジタルファイルを作成し、かつデジタル署名を生成するのに利用される手段の複雑性は、意味解釈が確保される精度を決定する。機密情報に対する最終目標は、デジタル署名されたファイルの意味解釈が偶然または故意のいずれかで変更され得ないことを確保することであり、これは、見ているものが署名するものである（ＷＹＳＩＷＹＳ）と称されることが多い。
【０００４】
デバイスによって受信されたデジタルファイルは、その意味解釈、およびデジタル署名がデジタルファイルの有効性を確認するために利用される場合における意味解釈を作成するために処理され得る。意味解釈は、そのディスプレイ上に意味解釈を提示するためにグラフィックスメモリ内で処理され、その中に記憶され得る。グラフィックスメモリはランダムにアクセスされ得、それは、ハッカーがそこからディスプレイ上に提示されるデータにアクセスするのを可能にし得る（機密情報を含み得る）。例えば、ユーザが自分の銀行口座情報を見ている場合、ハッカーは、ディスプレイ上に提示されている情報にアクセスするためにグラフィックスメモリにアクセスすることができる場合がある。
【０００５】
さらなる安全性を提供するために、暗号化が利用され得る。情報は、情報を提供するエンティティ（例えば、銀行のサーバ）によって暗号化され、情報を提示するデバイスによって復号化され得る。デバイスのグラフィックスメモリ内に格納された情報は、暗号化された情報であり得、グラフィックスプロセッサは、情報がディスプレイ上に提示され得るように情報を復号化し得る。電子コードブック（ＥＣＢ）暗号化は、実装することが比較的容易であるようにグラフィックスプロセッサで利用される共通の暗号化である。しかしながら、ＥＣＢ暗号化に関する問題は、パターンを隠すのがうまくできていないことである。ＥＣＢ暗号化は、例えば、提示される画像が歪んでいるときに映画を保護し、場面のいつくかが明確に可視的であり得るとしても映画を鑑賞する総合的な経験を楽しめなくさせるために十分に利用されてきた。
【０００６】
標準的なＥＣＢ暗号化を使用して暗号化された銀行取引情報などの機密情報内のテキストは、人間の目および／または光学式文字認識（ＯＣＲ）製品にまだ可視的であり得る。したがって、ＥＣＢ暗号化された機密情報は、復号化前にグラフィックスメモリからの情報にアクセスするハッカーの影響をまだ受けやすい場合がある。
【０００７】
様々な実施形態の特徴および利点は、以下の詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【０００８】
【図１】デバイスを使用して、サーバからの機密情報にアクセスするユーザのハイレベル機能図を示す。
【図２】ＥＣＢ暗号化および復号化のハイレベル図を示す。
【図３】例示的な画像（平文）およびＥＣＢ暗号化（暗号文）後の画像を示す。
【図４】一実施形態に従う、ノイズが注入された後の図３の例示的な画像、および得られるＥＣＢ暗号化された画像を示す。
【図５Ａ】一実施形態に従う、ＥＣＢ暗号化を使用してロバストな暗号文を作成するための例示的なハイレベルフローを示す。
【図５Ｂ】一実施形態に従う、ロバストなＥＣＢ暗号文を作成するための例示的なハイレベルシステムを示す。
【図６Ａ】一実施形態に従う、ある画像に対する画素値の単純化した修正を示す。
【図６Ｂ】一実施形態に従う、ある画像に対する画素値の単純化した修正を示す。
【図７】一実施形態に従う、ブロックレベルにおけるある画像に対するビットマップの中に挿入されているノイズを示す。
【図８】一実施形態に従う、例示的なコンテンツ表示システムを示す。
【図９】一実施形態に従う、図８のシステムが具現化され得る例示的な小さなフォームファクタのデバイスを示す。
【発明を実施するための形態】
【０００９】
図１は、デバイス１００を使用して、サーバ１５０からの機密情報にアクセスするユーザのハイレベル機能図を示す。例えば、ユーザは、銀行の顧客であってもよく、サーバ１５０は、銀行によって操作されてもよい。サーバ１５０は、デジタル署名を利用して、デジタル文書の有効性およびデジタル情報の意味解釈を認証するデジタル署名システムであってもよい。サーバ１５０は、デジタル署名されたファイルの意味解釈が偶然または故意のいずれかで変更され得ないことを確保する、見ているものが署名するものである（ＷＹＳＩＷＹＳ）であってもよい。デバイス１００は、通信ネットワーク（例えば、インターネット）１９０を介してサーバ１５０に接続し、それと通信することができる。
【００１０】
サーバ１５０は、プロセッサ（ＣＰＵ）１５５と、グラフィックスプロセッサ（ＧＰＵ）１６０と、通信インターフェース１６５と、１つ以上のデータベース１７０と、デジタル署名生成器１７５とを含むことができる。ＣＰＵ１５５は、サーバ１５０の動作を制御することができる。ＧＰＵ１６０は、ユーザに提示される異なる情報と関連付けられた画像（例えば、グラフィックス）の生成を制御することができる。ＧＰＵ１６０は、画像が送信される前に画像を暗号化することができる。ユーザに提供される情報に対してＧＰＵ１６０によって利用される現在の暗号化は、電子コードブック（ＥＣＢ）であってもよい。通信インターフェース１６５は、ネットワーク１９０との通信を可能にし、デバイス１００とのセキュアな通信を提供することができる。データベース１７０は、様々なユーザに対する情報を記憶することができる。データベース１７０は、ユーザに自分の情報へのアクセスを提供するために、ユーザ認証（例えば、ユーザ名、パスワード）を必要とすることができる。デジタル署名生成器１７５は、有効性を確認される必要があるデジタルファイルに対するデジタル署名およびその意味解釈を生成することができる。
【００１１】
デバイス１００は、ＣＰＵ１０５と、ＧＰＵ１１０と、通信インターフェース１１５と、メモリ１２０と、ディスプレイ１２５とを含むことができる。ＣＰＵ１０５は、デバイス１００の動作を制御することができる。ＧＰＵ１１０は、サーバ１５０によって提供される情報を含むディスプレイ１２５上に提示される画像（例えば、グラフィックス）の生成を制御することができる。ＧＰＵ１１０は、画像がディスプレイ１２５上に提示される前に暗号化された画像を復号化することができる。ＧＰＵ１１０によって利用される現在の復号化は、ＥＣＢであってもよい。通信インターフェース１１５は、ネットワーク１９０との通信を可能にし、サーバ１５０とのセキュアな通信を提供することができる。メモリ１２０は、ディスプレイ１２５上に提示されるコンテンツ（暗号化されたコンテンツを含む）を記憶するためのフレームバッファ（別々に図示せず）を含むことができる。ディスプレイ１２５は、コンテンツを提示することができる。
【００１２】
図２は、ＥＣＢ暗号化および復号化のハイレベル図を示す。ＥＣＢは、コンテンツを設定された大きさのブロックに分割し、かつ各ブロックを別々に暗号化／復号化することを伴う単純な暗号化モードである。図示されるように、コンテンツ（平文）を暗号化するために、コンテンツは、複数の平文ブロックに分割され、平文の各ブロックは、秘密鍵を使用して暗号化のためにブロック暗号に提供される。平文の各ブロックに対するブロック暗号の暗号化の結果は、暗号文の対応するブロックである。暗号文ブロックは、暗号化されたコンテンツ（暗号文）を作成するために組み合わせられ得る。コンテンツ（暗号文）を復号化するために、コンテンツは、複数の暗号文ブロックに分割され、暗号文の各ブロックは、秘密鍵を使用して復号化のためにブロック暗号に提供される。暗号文の各ブロックに対するブロック暗号の復号化の結果は、平文の対応するブロックである。平文ブロックは、コンテンツ（平文）を再作成するために組み合わせられ得る。
【００１３】
ＥＣＢ暗号化方法の利点は、同一の平文ブロックが同一の暗号文ブロックに暗号化されて、そのため平文内のパターンが暗号文内にあまりうまく隠されないようにすることである。図３は、例示的な画像（平文）およびＥＣＢ暗号化後の画像（暗号文）を示す。暗号化された画像は明らかに歪められるが、原画像からのペンギンは、暗号化された画像で明らかに作成され得る。文書上に格納される機密情報（例えば、銀行口座番号、社会保障番号）がＥＣＢ暗号化を使用して暗号化されても、いかに人間の目および／または光学式文字認識（ＯＣＲ）製品にまだ可視的であり得るか分かり得る。
【００１４】
したがって、ハッカーは、ディスプレイへの提示のために復号化前に、グラフィックスメモリからの暗号化された情報にアクセスすることができ、機密情報にまだアクセスすることができる。したがって、情報がセキュアな通信チャネル上で提供され得、かつ情報がデジタル署名で検証され得ても、機密情報は、ユーザのデバイスに対する攻撃の影響をまだ受けやすい。ハッカーは、セキュアなサイト（例えば、銀行のサーバ）と通信していることを検出することができ、通信を傍受することができない間、グラフィックスメモリにアクセスして、表示しているコンテンツ（例えば、オンライン銀行取引明細書）の暗号化されたバージョンを見ることができる。ハッカーは、視覚的またはＯＣＲ製品を使用してそこから機密情報を抽出することができる。
【００１５】
この種の攻撃から機密情報を保護するために、暗号化されたデータ内のパターンは隠される必要がある。異なる暗号化方式（より複雑な）が利用され得るが、これは、ＥＣＢ暗号化を現在利用し、かつ例えば、民生用電子機器で利用される現在のグラフィックス製品（例えば、ＧＰＵ）へのハードウェアの変更を必要とするであろう。一実施形態によれば、パターンは、それが暗号化される前にノイズを画像の中に注入することによるＥＣＢ暗号化を使用して隠されてもよい。ノイズは、画像内の異なる画素と関連付けられた異なる値（例えば、赤色、緑色、青色）の修正であってもよい。ノイズの注入は、画像を修正することができるが、修正された画像は、原画像にあまり類似していない場合、知覚的に類似であってもよい。しかしながら、修正された画像は、画像の平文ブロックの暗号化がランダム化され、かつパターンが検出可能ではない結果として得られた暗号化された画像である暗号文ブロックをもたらすように、画素でランダム性を提供することができる。すなわち、ノイズの導入は、画像（平文）の知覚された見た目を著しく変えない場合があるが、得られるＥＣＢ暗号化された画像（暗号文）を著しく変える場合がある。
【００１６】
図４は、ノイズが注入された後の図３の例示的な画像、および得られるＥＣＢ暗号化された画像を示す。ノイズの適用後の画像に対する修正は、修正がなされたことを示すために誇張される。しかしながら、誇張された修正であっても、画像はまだ、知覚的に類似である。得られるＥＣＢ暗号化された画像（暗号文）は、パターンがもはや可視的ではなく、むしろ任意の静止画像が生成されるという点において非常にロバストである。
【００１７】
図５Ａは、ＥＣＢ暗号化を使用してロバストな暗号文を作成するための例示的なハイレベルフローを示す。最初に、ビットマップが画像（元のビットマップ）５００に対して生成される。元のビットマップは、修正された（ノイズの多い）ビットマップ５２０を作成するためにノイズ注入（画素修正）５１０にさらされる。次に、ノイズの多いビットマップは、画像内のパターンおよび／またはテキストが解明可能ではないロバストな暗号文５４０を作成するためにＥＣＢ暗号化５３０にさらされる。したがって、暗号文が復号化およびディスプレイ上の提示のためにグラフィックスメモリ内である場合、ハッカーは、そこから使用可能なデータを全く抽出することができないであろう。ロバストな暗号文が復号化されると、ノイズの多いビットマップが生成される。
【００１８】
図５Ｂは、ロバストなＥＣＢ暗号文を作成するための例示的なハイレベルシステム５５０を示す。システム５５０は、ノイズ注入器５６０と、ＥＣＢブロック暗号５７０とを含む。ノイズ注入器５６０は、提示される画像のビットマップの画素を修正するものである。ＥＣＢブロック暗号５７０は、修正されたビットマップを暗号化するものである。ＥＣＢブロック暗号５７０は、ＧＰＵの一部であってもよい。一実施形態によれば、ノイズ注入器５６０は、ＧＰＵに統合されてもよい。
【００１９】
図１に戻って参照すると、ロバストな暗号文は、ＧＰＵ１６０によってサーバ１５０内で生成され、デバイス１００に送信されてもよい。暗号文は、デバイス１００のグラフィックスメモリ１２０内に記憶され、次いで平文がディスプレイ１２５上に提示され得るようにＧＰＵ１１０によって復号化されてもよい。
【００２０】
ノイズの注入（画素の修正）は、任意の数の様式で行われてもよい。ノイズは、画像が暗号化のためにブロックに分離される前の画像に追加されてもよく、または実際の暗号化前の暗号化に予定されている各ブロックに追加されてもよい。ノイズは、例えば、各画素、画素の定義されたサブセットまたはパターン（例えば、第８画素ごと）、ランダムな画素、または画素の各ブロックに追加されてもよい。ノイズは、画素のうちの１つの値（例えば、赤色、緑色、もしくは青色）またはその複数の値に追加されてもよい。
【００２１】
一実施形態によれば、ノイズは、一定であってもよく、暗号化前の各画像（ビットマップ）に追加されてもよい。一定のノイズの適用は、定義された数をすべてに対する画素値、または画像に対する定義された画素に追加することを含むことができる。一実施形態によれば、カウンタは、数を生成するために利用されてもよく、数は、画素に対する現在の画素値に追加されてもよい。一実施形態によれば、乱数生成器は、乱数を生成するために利用されてもよく、乱数は、画素に対する現在の画素値に追加されてもよい。一実施形態によれば、画像は、いかに画像が修正された画像が知覚的に類似したままであることを確保しながら画像のランダム性を最大化するように修正され得るかに関して決定がなされ得るように分析されてもよい。
【００２２】
図６Ａ〜図６Ｂは、画像に対する画素値の単純化した修正を示す。図示されるように、画像は、１２画素のみ格納する。各画素は、それと関連付けられた赤色、緑色、および青色値を有し、簡単にするために、各赤色、緑色、および青色値は、最高３（２ビットを使用して）までのみ増加され得ると仮定される。説明を容易にするために、修正は、元の画素値に対する変更（例えば、Ｒ＋３）として列挙される。画素のうちのいくつかに対して、元のビットストリームに追加された画素値に対する修正を表すビットが示される（ビットを分離する−は、各ＲＧＢ値と関連付けられたビットを単純に区別するものである）。
【００２３】
図６Ａは、異なる画素に対して修正されている１つ以上の画素値を示す。画素値の修正は、一定のノイズの適用（例えば、画像にかかわらず、画素値がこの様式で修正される）に基づいて、乱数生成に基づいて、または画像の分析に基づいてもよい。例として、左上の画素は、Ｒ値における２の増加をもたらす現在のビットストリームに追加された１０−００−００ビットストリームを有した。
【００２４】
図６Ｂは、カウンタの使用に基づいて修正されている画素値を示す。各連続する画素は、ノイズとしてそれに追加された増加するビットストリームを有する。ビットストリームの構成は、元の画素に対する修正を決定する。図示されるように、１（００−００−０１）のカウンタは、１増加されている画素に対する青色値をもたらし、１１（００−１０−１１）のカウンタは、３増加されている画素に対する青色値および２増加されている緑色値をもたらす。
【００２５】
図７は、ブロックレベルで（画素レベルとは対照的に）画像に対するビットマップの中に挿入されているノイズを示す。説明を容易にするために、ブロックレベルは、２画素として示され、各画素値は、２ビットのみを含む。ノイズを表すビットマップは、修正された平文ブロックを生成するために原画像の平文ブロックに追加される。修正された平文は、秘密鍵を使用して暗号化のためにブロック暗号に提供される。修正された平文の各ブロックに対するブロック暗号の暗号化の結果は、ロバストな暗号文の対応するブロックである。適用されるノイズは、例えば、カウンタに基づいてもよく、またはランダムに生成されてもよい。ノイズと関連付けられたビットストリームは、１つ以上の画素に対する１つ以上の画素値を修正することができる。
【００２６】
ＥＣＢ暗号化で典型的に可視的なパターンを隠す画像のＥＣＢ暗号化前のビットマップへのノイズの注入は、デジタル署名システム（例えば、銀行）を介してユーザに送信されている機密コンテンツに関して記載されたが、それは、それに限定されない。どちらかと言えば、ＥＣＢ暗号化前のビットマップへのノイズの注入は、グラフィックスメモリ内に記憶され得る任意の機密コンテンツに行われ、したがって外部ハッキングの影響を受けやすい可能性がある。
【００２７】
図４〜図７に上述されるＥＣＢ暗号化前のビットマップへのノイズの注入は、例えば、ＧＰＵ（例えば、図１の１１０、１６０）、集積回路、電気回路もしくは個別コンポーネント、またはこれらのいくつかの組み合わせで実装されてもよい。さらに、動作は、ハードウェア、ソフトウェア、ファームウェア、またはこれらのいくつかの組み合わせで実装されてもよい。ＧＰＵは、デバイスによって実行されるとき、図４〜図７に上述される動作の少なくともサブセットをデバイスに実行させる命令を格納するデバイス可読ストレージ（デバイス上、デバイスから離れて、またはこれらのいくつかの組み合わせ）へのアクセスを有することができる。
【００２８】
上述される様々な実施形態は、コンテンツを表示する様々なシステム（コンテンツ表示システム）で実装されてもよく、コンテンツ表示システムは、様々なデバイスに組み込まれてもよい。
【００２９】
図８は、例示的なコンテンツ表示システム８００を示す。システム８００は、この文脈に限定されないがメディアシステムであってもよい。システム８００は、例えば、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、超ラップトップコンピュータ、タブレット、タッチパッド、携帯用コンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、携帯情報端末（ＰＤＡ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、テレビ、スマートデバイス（例えば、スマートフォン、スマートタブレット、またはスマートテレビ）、携帯インターネットデバイス（ＭＩＤ）、メッセージングデバイス、データ通信デバイスなどに組み込まれてもよい。
【００３０】
実施形態では、システム８００は、外部ディスプレイ８２０に連結されたプラットフォーム８０２を備える。プラットフォーム８０２は、コンテンツ・サービス・デバイス８３０、コンテンツ配信デバイス８４０、または他の類似のコンテンツソースなどのコンテンツデバイスからコンテンツを受信することができる。１つ以上のナビゲーション機能を備えるナビゲーションコントローラ８５０は、例えば、プラットフォーム８０２および／またはディスプレイ８２０と相互伝達するために使用されてもよい。
【００３１】
実施形態では、プラットフォーム８０２は、チップセット８０５、プロセッサ８１０、メモリ８１２、ストレージ８１４、グラフィックスサブシステム８１５、アプリケーション８１６、および／またはラジオ８１８の任意の組み合わせを備えることができる。チップセット８０５は、プロセッサ８１０、メモリ８１２、ストレージ８１４、グラフィックスサブシステム８１５、アプリケーション８１６、および／またはラジオ８１８の間の相互通信を提供することができる。チップセット８０５は、例えば、ストレージ８１４との相互通信を提供することができるストレージアダプタ（図示せず）を含むことができる。
【００３２】
プロセッサ８１０は、複数命令セットコンピュータ（ＣＩＳＣ）もしくは縮小命令セットコンピュータ（ＲＩＳＣ）のプロセッサ、ｘ８６命令セット互換プロセッサ、マルチコア、または任意の他のマイクロプロセッサもしくは中央処理装置（ＣＰＵ）として実装されてもよい。実施形態では、プロセッサ８１０は、デュアル・コア・プロセッサ、デュアル・コア・モバイル・プロセッサなどを備えることができる。
【００３３】
メモリ８１２は、ランダム・アクセス・メモリ（ＲＡＭ）、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、またはスタティックＲＡＭ（ＳＲＡＭ）などだがこれらに限定されない揮発性メモリデバイスとして実装されてもよい。
【００３４】
ストレージ８１４は、磁気ディスクドライブ、光ディスクドライブ、テープドライブ、内部ストレージデバイス、付属ストレージデバイス、フラッシュメモリ、バッテリでバックアップされたＳＤＲＡＭ（同期ＤＲＡＭ）、および／またはネットワークアクセス可能なストレージデバイスなどだがこれらに限定されない不揮発性ストレージデバイスとして実装されてもよい。実施形態では、ストレージ８１４は、例えば、複数のハードドライブが含まれるとき、高価なデジタルメディアに対するストレージ性能または強化された保護を増加する技術を備えることができる。
【００３５】
グラフィックスサブシステム８１５は、ディスプレイのために静止またはビデオなどの画像の処理を行うことができる。グラフィックスサブシステム８１５は、例えば、グラフィックス処理ユニット（ＧＰＵ）または視覚処理ユニット（ＶＰＵ）であってもよい。アナログまたはデジタルインターフェースは、グラフィックスサブシステム８１５およびディスプレイ８２０を通信可能に連結するために使用されてもよい。例えば、インターフェースは、高解像度マルチメディアインターフェース、ディスプレイポート、無線ＨＤＭＩ（登録商標）、および／または無線ＨＤ対応技術のうちのいずれかであってもよい。グラフィックスサブシステム８１５は、プロセッサ８１０またはチップセット８０５に統合され得る。グラフィックスサブシステム８１５は、チップセット８０５に通信可能に連結されたスタンドアロンのカードであり得る。
【００３６】
本明細書に記載されるグラフィックスおよび／またはビデオ処理技術は、様々なハードウェアアーキテクチャで実装されてもよい。例えば、グラフィックスおよび／またはビデオ機能性は、チップセット内に統合されてもよい。あるいは、個別グラフィックスおよび／またはビデオプロセッサが使用されてもよい。さらに別の実施形態のように、グラフィックスおよび／またはビデオ機能は、マルチコアプロセッサを含む汎用プロセッサによって実装されてもよい。さらなる実施形態では、機能は、民生用電子機器で実装されてもよい。
【００３７】
ラジオ８１８は、様々な好適な無線通信技術を使用して信号を送受信することができる１つ以上のラジオを含むことができる。このような技術は、１つ以上の無線ネットワークにわたる通信を含むことができる。例示的な無線ネットワークとしては、無線ローカル・エリア・ネットワーク（ＷＬＡＮ）、無線パーソナル・エリア・ネットワーク（ＷＰＡＮ）、無線メトロポリタン・エリア・ネットワーク（ＷＭＡＮ）、セルラーネットワーク、および衛星ネットワークが挙げられる（がこれらに限定されない）。このようなネットワークにわたって通信する際に、ラジオ８１８は、任意のバージョンで１つ以上の適用規格に従って動作することができる。
【００３８】
実施形態では、ディスプレイ８２０は、任意のテレビ型モニタまたはディスプレイを備えることができる。ディスプレイ８２０は、例えば、コンピュータ・ディスプレイ・スクリーン、タッチ・スクリーン・ディスプレイ、ビデオモニタ、テレビのようなデバイス、および／またはテレビを備えることができる。ディスプレイ８２０は、デジタルおよび／またはアナログであってもよい。実施形態では、ディスプレイ８２０は、ホログラフィックディスプレイであってもよい。また、ディスプレイ８２０は、視覚投影を受信し得る透明面であってもよい。このような投影は、様々な形態の情報、画像、および／または物体を伝達することができる。例えば、このような投影は、モバイル拡張現実（ＭＡＲ）アプリケーションに対する視覚オーバーレイであってもよい。１つ以上のソフトウェアアプリケーション８１６の制御下では、プラットフォーム８０２は、ディスプレイ８２０上にユーザインターフェース８２２を表示することができる。
【００３９】
実施形態では、コンテンツ・サービス・デバイス８３０は、任意の国家的、国家間的、および／または独立したサービスによってホストされ、それ故に、例えば、インターネットを介してプラットフォーム８０２にアクセス可能であってもよい。コンテンツ・サービス・デバイス８３０は、プラットフォーム８０２および／またはディスプレイ８２０に連結されてもよい。プラットフォーム８０２および／またはコンテンツ・サービス・デバイス８３０は、ネットワーク８６０とメディア情報を通信する（例えば、送信および／または受信する）ためにネットワーク８６０に連結されてもよい。コンテンツ配信デバイス８４０はまた、プラットフォーム８０２および／またはディスプレイ８２０に連結されてもよい。
【００４０】
実施形態では、コンテンツ・サービス・デバイス８３０としては、ケーブルテレビのボックス、パーソナルコンピュータ、ネットワーク、電話、デジタル情報および／もしくはコンテンツを配信することができるインターネット対応デバイスまたは電気器具、ならびにネットワーク８６０を介して、または直接、コンテンツプロバイダ間のコンテンツ、プラットフォーム８０２、および／またはディスプレイ８２０を一方向または双方向に通信することができる任意の他の類似のデバイスを含むことができる。コンテンツは、システム８００内のコンポーネントおよびネットワーク８６０を介するコンテンツプロバイダのうちのいずれか１つと一方向および／または双方向に通信され得ることを理解されたい。コンテンツの例としては、例えば、ビデオ、音楽、医療、ゲームの情報などを含むあらゆるメディア情報が挙げられ得る。
【００４１】
コンテンツ・サービス・デバイス８３０は、メディア情報、デジタル情報、および／または他のコンテンツを含むケーブルテレビの番組編成などのコンテンツを受信する。コンテンツプロバイダの例としては、あらゆるケーブルもしくは衛星テレビ、またはラジオもしくはインターネット・コンテンツ・プロバイダが挙げられ得る。提供された例は、本発明の実施形態を限定するものではない。
【００４２】
実施形態では、プラットフォーム８０２は、１つ以上のナビゲーション機能を有するナビゲーションコントローラ８５０からの制御信号を受信することができる。ナビゲーションコントローラ８５０のナビゲーション機能は、例えば、ユーザインターフェース８２２と相互伝達するために使用されてもよい。実施形態では、ナビゲーションコントローラ８５０は、ユーザが空間（例えば、連続的かつ多次元）データをコンピュータに入力するのを可能にするコンピュータ・ハードウェア・コンポーネント（特にヒューマンインターフェースのデバイス）であり得るポインティングデバイスであってもよい。グラフィカル・ユーザ・インターフェース（ＧＵＩ）、テレビ、およびモニタなどの多くのシステムは、ユーザが物理的ジェスチャを使用してコンピュータまたはテレビへのデータを制御および提供するのを可能にする。
【００４３】
ナビゲーションコントローラ８５０のナビゲーション機能の動作は、ディスプレイ上に表示されるポインタ、カーソル、フォーカスリング、または他の視覚インジケータの動作によってディスプレイ（例えば、ディスプレイ８２０）上にエコーとして返されてもよい。例えば、ソフトウェアアプリケーション８１６の制御下では、ナビゲーションコントローラ８５０に位置するナビゲーション機能は、例えば、ユーザインターフェース８２２上に表示される仮想ナビゲーション機能にマップされてもよい。実施形態では、ナビゲーションコントローラ８５０は、別個のコンポーネントではないが、プラットフォーム８０２および／またはディスプレイ８２０に統合されてもよい。しかしながら、実施形態は、本明細書に示され、または記載される要素もしくは文脈において限定されない。
【００４４】
実施形態では、ドライバ（図示せず）は、例えば、最初の起動後、有効とされるときなど、ボタンに触れてテレビのようなプラットフォーム８０２をユーザが瞬時にオンオフするのを可能にする技術を含むことができる。プログラム論理は、プラットフォームが「オフ」にされるとき、プラットフォーム８０２がコンテンツをメディアアダプタ、他のコンテンツ・サービス・デバイス８３０、またはコンテンツ配信デバイス８４０に流すのを可能にすることができる。加えて、チップセット８０５は、例えば、５．１サラウンド音響オーディオおよび／または高解像度７．１サラウンド音響オーディオに対するハードウェアおよび／またはソフトウェア支援を含むことができる。ドライバは、統合されたグラフィックスプラットフォームに対するグラフィックスドライバを含むことができる。実施形態では、グラフィックスドライバは、周辺構成要素相互接続（ＰＣＩ）高速グラフィックスカードを備えることができる。
【００４５】
様々な実施形態では、システム８００に示されるコンポーネントのうちの任意の１つ以上が統合されてもよい。例えば、例として、プラットフォーム８０２およびコンテンツ・サービス・デバイス８３０は統合されてもよく、プラットフォーム８０２およびコンテンツ配信デバイス８４０は統合されてもよく、またはプラットフォーム８０２、コンテンツ・サービス・デバイス８３０、およびコンテンツ配信デバイス８４０は統合されてもよい。様々な実施形態では、プラットフォーム８０２およびディスプレイ８２０は、統合されたユニットであってもよい。様々な実施形態では、例えば、ディスプレイ８２０およびコンテンツ・サービス・デバイス８３０は統合されてもよく、またはディスプレイ８２０およびコンテンツ配信デバイス８４０は統合されてもよい。これらの例は、本発明を限定するものではない。
【００４６】
様々な実施形態では、システム８００は、無線システム、有線システム、または両方の組み合わせとして実装されてもよい。無線システムとして実装されるとき、システム８００は、１つ以上のアンテナ、トランスミッタ、レシーバ、トランシーバ、増幅器、フィルタ、制御論理など、無線の共有された媒体上で通信するのに好適なコンポーネントおよびインターフェースを含むことができる。無線の共有された媒体の一例としては、ＲＦスペクトルなどの無線スペクトルの部分が挙げられ得る。有線システムとして実装されるとき、システム８００は、入力／出力（Ｉ／Ｏ）アダプタ、対応する有線通信媒体とＩ／Ｏアダプタを接続する物理的コネクタ、ネットワーク・インターフェース・カード（ＮＩＣ）、ディスクコントローラ、ビデオコントローラ、オーディオコントローラなど、有線の通信媒体上で通信するのに好適なコンポーネントおよびインターフェースを含むことができる。有線の通信媒体の例としては、ワイヤ、ケーブル、金属のリード、プリント回路板（ＰＣＢ）、バックプレーン、スイッチファブリック、半導体材料、ツイストペア線、同軸ケーブル、光ファイバなどが挙げられ得る。
【００４７】
プラットフォーム８０２は、情報を通信するために１つ以上の論理または物理チャネルを確立することができる。情報は、メディア情報および制御情報を含むことができる。メディア情報は、ユーザ向けであるコンテンツを表すあらゆるデータを指すことができる。コンテンツの例としては、例えば、音声会話、テレビ会議、ストリーミングビデオ、電子メール（「ｅメール」）のメッセージ、音声メールのメッセージ、英数字シンボル、グラフィックス、画像、ビデオ、テキストなどが挙げられ得る。音声会話からのデータは、例えば、音声情報、沈黙時間、背景雑音、発信音などであってもよい。制御情報は、自動システム向けであるコマンド、命令、または制御語を表すあらゆるデータを指すことができる。例えば、制御情報は、システムを介してメディア情報のルートを決めるか、または所定の様式でメディア情報を処理するようにノードに指示するために使用されてもよい。しかしながら、実施形態は、図８に示され、または記載される要素もしくは文脈において限定されない。
【００４８】
上述されるように、システム８００は、様々な物理的様式またはフォームファクタで具現化されてもよい。図９は、システム８００が具現化され得る小さなフォームファクタのデバイス９００の実施形態を示す。実施形態では、例えば、デバイス９００は、無線機能を有するモバイル・コンピューティング・デバイスとして実装されてもよい。モバイル・コンピューティング・デバイスは、処理システムおよびモバイル電源または供給、例えば、１つ以上のバッテリなどを有するあらゆるデバイスを指すことができる。
【００４９】
上述されるように、モバイル・コンピューティング・デバイスの例としては、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、超ラップトップコンピュータ、タブレット、タッチパッド、携帯用コンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、携帯情報端末（ＰＤＡ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、テレビ、スマートデバイス（例えば、スマートフォン、スマートタブレット、またはスマートテレビ）、携帯インターネットデバイス（ＭＩＤ）、メッセージングデバイス、データ通信デバイスなどが挙げられ得る。
【００５０】
モバイル・コンピューティング・デバイスの例としては、リストコンピュータ、フィンガーコンピュータ、リングコンピュータ、眼鏡コンピュータ、ベルトクリップコンピュータ、アームバンドコンピュータ、シューズコンピュータ、衣類コンピュータ、および他のウェアラブルコンピュータなど、人によって着用されるように構成されるコンピュータも挙げられ得る。実施形態では、例えば、モバイル・コンピューティング・デバイスは、車両（例えば、乗用車、トラック、バン）で利用されてもよい。車載デバイスは、車両の乗員に情報および／または娯楽を提供することができる（車載インフォテインメント（ＩＶＩ）デバイス）。ＩＶＩデバイスは、デバイスに電力を供給する内部バッテリに加えて、またはその変わりに、外部電源として車両からの電力を利用することができる。
【００５１】
実施形態では、例えば、モバイル・コンピューティング・デバイスは、コンピュータのアプリケーション、ならびに音声通信および／またはデータ通信を実行することができるスマートフォンとして実装されてもよい。いくつかの実施形態は、例としてスマートフォンとして実装されたモバイル・コンピューティング・デバイスで記載され得るが、他の実施形態は、同様に他の無線モバイル・コンピューティング・デバイスを使用して実装され得ることも理解され得る。実施形態は、この文脈において限定されない。
【００５２】
デバイス９００は、ハウジング９０２と、ディスプレイ９０４と、入力／出力（Ｉ／Ｏ）デバイス９０６と、アンテナ９０８とを備えることができる。デバイス９００はまた、ナビゲーション機能９１２を備えることができる。ディスプレイ９０４は、モバイル・コンピューティング・デバイスに適した情報を表示するための任意の好適な表示ユニットを含むことができる。入力／出力（Ｉ／Ｏ）デバイス９０６は、モバイル・コンピューティング・デバイスに情報を入力するための任意の好適なＩ／Ｏデバイスを含むことができる。Ｉ／Ｏデバイス９０６のための例としては、英数字キーボード、数字キーバッド、タッチパッド、入力キー、ボタン、スイッチ、ロッカースイッチ、マイクロホン、スピーカ、音声認識デバイスおよびソフトウェアなどが挙げられ得る。情報はまた、マイクロホンを通じてデバイス９００に入力されてもよい。このような情報は、音声認識デバイスによってデジタル化されてもよい。実施形態は、この文脈において限定されない。デバイス９００は、それに電力を供給するバッテリ（図示せず）を含むことができる。バッテリは、デバイス９００内（例えば、ハウジング９０２内）に位置してもよく、および／またはデバイス９００から遠隔（例えば、ＩＶＩデバイスに利用される車両バッテリ）であってもよい。
【００５３】
様々な実施形態は、ハードウェア要素、ソフトウェア要素、または両方の組み合わせを使用して実装されてもよい。ハードウェア要素の例としては、プロセッサ、マイクロプロセッサ、回路、回路要素（例えば、トランジスタ、レジスタ、キャパシタ、インダクタなど）、集積回路、特定用途向け集積回路（ＡＳＩＣ）、プログラマブル論理デバイス（ＰＬＤ）、デジタル信号プロセッサ（ＤＳＰ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセットなどが挙げられ得る。ソフトウェアの例としては、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、機械プログラム、オペレーティングシステムのソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェアインターフェース、アプリケーション・プログラム・インターフェース（ＡＰＩ）、命令セット、コンピューティングコード、コードセグメント、コンピュータコードセグメント、ワード、値、記号、またはこれらの任意の組み合わせが挙げられ得る。実施形態がハードウェア要素および／またはソフトウェア要素を使用して実装されるかどうかを決定することは、所望の計算速度、電力レベル、耐熱性、処理サイクル予算、入力データ速度、出力データ速度、メモリ資源、データバス速度、および他の設計または性能制約など、任意の数の因子に従って異なり得る。
【００５４】
少なくとも１つの実施形態の１つ以上の態様は、プロセッサ内の様々な論理を表す機械可読媒体に記憶された代表的な命令によって実装され、これは、機械によって読み込まれるとき、本明細書に記載される技術を行うように機械に論理を製造させることができる。「ＩＰコア」として既知である、かかる表現は、有形の機械可読媒体に記憶され、様々な顧客または製造施設に供給されて、実際に論理またはプロセッサを作製する製造機械にロードすることができる。
【００５５】
本開示は、特定の実施形態を参照することにより説明されたが、本開示は、その範囲から逸脱することなく様々な変更および修正がそれになされ得るように、それに限定されないことが明らかであろう。「１つの実施形態」または「一実施形態」に対する言及は、本明細書に記載される特定の特徴、構造、または特質が少なくとも１つの実施形態に含まれることを意味する。したがって、本明細書にわたって様々な個所に現れる語句「１つの実施形態では」または「一実施形態では」の出現は、必ずしも同じ実施形態を参照するすべてではない。
【００５６】
様々な実施形態は、添付の特許請求の範囲の趣旨および範囲内で広く保護されることを意図する。
「項目１］
ノイズの多いビットマップを作成するために、ディスプレイ上に提示されるコンテンツと関連付けられたビットマップの中にノイズを注入することと、
電子コードブック（ＥＣＢ）暗号化を使用して前記ノイズの多いビットマップを暗号化することであって、得られる暗号文が、前記コンテンツからの認識可能なパターンを含まない、前記ノイズの多いビットマップを暗号化することと、
を含む、方法。
「項目２］
前記ノイズを注入することは、前記ビットマップ内の画素の少なくともサブセットに対して画素値を修正することを含む、項目１に記載の方法。
「項目３］
前記画素値を修正することは、カウンタを使用して、前記画素値を調節することを含む、項目２に記載の方法。
「項目４］
前記画素値を修正することは、既知の修正パターンを前記ビットマップに適用することを含む、項目２または３に記載の方法。
「項目５］
前記画素値を修正することは、前記画素値を調節するために乱数生成器を使用することを含む、項目２から４のいずれか一項に記載の方法。
「項目６］
前記ノイズを注入することは、前記ノイズの多いビットマップが提示されたときに視覚的に知覚的に類似することを確保しながら、いかに前記ビットマップが前記ビットマップのランダム性を最大化するように修正され得るかを決定するために、前記ビットマップを分析することを含む、項目１から５のいずれか一項に記載の方法。
「項目７］
前記ノイズを注入することは、画素のブロックの中に、前記ブロックが暗号化される前にノイズを注入することを含む、項目１から６のいずれか一項に記載の方法。
「項目８］
前記ディスプレイへの提示のための準備としてグラフィックスメモリ内に前記暗号文を記憶することと、
前記ノイズの多いビットマップを再作成するために前記暗号文を復号化することと、
前記ディスプレイ上に前記ノイズの多いビットマップを表示することと、
をさらに含む、項目１から７のいずれか一項に記載の方法。
「項目９］
前記グラフィックスメモリにアクセスするハッカーは、その中に記憶された前記暗号文からパターンを解明することができない、項目８に記載の方法。
「項目１０］
前記暗号化することは、グラフィックスプロセッサの一部であるブロック暗号によって行われる、項目１から９のいずれか一項に記載の方法。
「項目１１］
前記ノイズを注入することは、グラフィックスプロセッサの外部にあるノイズ注入器によって行われる、項目１から１０のいずれか一項に記載の方法。
「項目１２］
前記ノイズを注入することは、グラフィックスプロセッサの一部であるノイズ注入器によって行われる、項目１から１１のいずれか一項に記載の方法。
「項目１３］
ノイズの多いビットマップを作成するために、ディスプレイ上に提示されるコンテンツと関連付けられたビットマップの中にノイズを注入するためのノイズ注入器と、
電子コードブック（ＥＣＢ）暗号化を使用して前記ノイズの多いビットマップを暗号化するためのブロック暗号であって、得られる暗号文が、前記コンテンツからの認識可能なパターンを含まない、ブロック暗号と、
を備える、システム。
「項目１４］
前記ノイズ注入器は、カウンタ値を現在の画素値に追加するために使用されるカウンタを含む、項目１３に記載のシステム。
「項目１５］
前記ノイズ注入器は、所定のノイズパターンを前記ビットマップの中に注入する、項目１３または１４に記載のシステム。
「項目１６］
前記ノイズ注入器は、乱数を現在の画素値に追加するための乱数生成器を含む、項目１３から１５のいずれか一項に記載のシステム。
「項目１７］
前記ノイズの多いビットマップが提示されたときに視覚的に知覚的に類似し、前記ノイズ注入器がそれによって制御されることを確保しながら、いかに前記ビットマップが前記ビットマップのランダム性を最大化するように修正され得るかを決定するビットマップ分析器をさらに備える、項目１３から１６のいずれか一項に記載のシステム。
「項目１８］
前記ブロック暗号は、グラフィックスプロセッサの一部である、項目１３から１７のいずれか一項に記載のシステム。
「項目１９］
前記ノイズ注入器もまた、グラフィックスプロセッサの一部である、項目１８に記載のシステム。
「項目２０］
ユーザに自分の機密情報へのセキュアなアクセスを提供するサーバであって、前記サーバは、
提示のためにユーザに送信される前記機密情報を捕捉する文書に対するデジタル署名を生成するデジタル署名システム（ＤＳＳ）であって、前記デジタル署名が、前記文書を認証するために使用される、デジタル署名システム（ＤＳＳ）と、
前記文書のノイズの多いビットマップを作成し、電子コードブック（ＥＣＢ）暗号化を使用して前記ノイズの多いビットマップを暗号化するために、前記文書と関連付けられたビットマップの中にノイズを注入する、グラフィックスプロセッサと、
通信インターフェースと、を含む、サーバと、
通信ネットワークと、
機密情報を受信し、それを前記ユーザに提示する民生用電子機器であって、前記民生用電子機器は、
通信インターフェースと、
ディスプレイと、
前記サーバから受信された前記暗号化されたノイズの多いビットマップを含む前記ディスプレイ上に提示される情報を記憶する、グラフィックスメモリと、
前記ディスプレイ上に提示する前に電子コードブック（ＥＣＢ）復号化を使用して前記暗号化されたノイズの多いビットマップを復号化する、グラフィックスプロセッサと、を含む、民生用電子機器と、
を備える、システム。
「項目２１］
前記サーバのグラフィックスプロセッサは、前記ビットマップ内の画素の少なくともサブセットに対して画素値を修正することによってノイズを注入する、項目２０に記載のシステム。
「項目２２］
前記サーバのグラフィックスプロセッサは、カウンタを利用して、前記画素値を修正する、項目２１に記載のシステム。
「項目２３］
前記サーバのグラフィックスプロセッサは、乱数生成器を利用して、前記画素値を修正する、項目２１または２２に記載のシステム。
「項目２４］
前記グラフィックスメモリは、前記ディスプレイ上に提示されている機密情報を得ようと試みるハッカーによってランダムにアクセスされることができ、前記グラフィックスメモリ内に記憶された前記暗号化されたビットマップは、前記ハッカーが前記機密情報を得ることができる解明可能なパターンを含まない、項目２０から２３のいずれか一項に記載のシステム。
【図１】
0005889436.tif 000002
【図２】
0005889436.tif 000003
【図５Ａ】
0005889436.tif 000004
【図５Ｂ】
0005889436.tif 000005
【図６Ａ】
0005889436.tif 000006
【図６Ｂ】
0005889436.tif 000007
【図７】
0005889436.tif 000008
【図８】
0005889436.tif 000009
【図９】
0005889436.tif 000010
【図３】
0005889436.tif 000011
【図４】
0005889436.tif 000012