0

私は、顧客のハードウェアに会社がソフトウェアをインストールする分散アプリケーションを構築しています。したがって、顧客はソフトウェアを改ざんすることができます。お客様のハードウェア上で実行されているソフトウェアが中央サーバーに Web リクエストを送信した場合 (つまり、完全に当社の管理下にある場合)、そのリクエストが改ざんされていないバージョンのソフトウェアからのものであることを検証できる技術が存在するかどうかを知りたいです。 .

これは「リモート認証」と呼ばれるものだと思います。リモート認証についてWebで検索すると、「できない」から「TPMを利用する」まで、さまざまな結果が返ってきます。しかし、これを Windows でコーディングする方法の簡単な例を見つけることができませんでした。

それで、私の質問は次のとおりです: Windows でリモート認証は可能ですか? もしそうなら、実装の基礎として使用できる実用的な例はありますか?

注: リモート認証は、「共有シークレット」をアプリケーションに埋め込み、攻撃者が逆コンパイルなどによってその共有シークレットを簡単に抽出できないようにするために、さまざまな方法でそれを隠すなどの「隠蔽」手法によって達成されることがあります。私はそのような技術には興味がなく、あいまいさによるセキュリティではなく、本当のセキュリティを提供するものを探しています。

4

1 に答える 1

0

システムを認証するには、次の 2 つのものが必要です。

  1. ルート オブ トラストから実行されるすべてのコードに至るまでの一連の信頼
  2. サーバーで取得した測定値を解釈して検証する手段。

Windows を使用する場合、どちらもありません。

現在、Windows 自体でさえその状態を認識していません。ただし、Windows 8 では改善されました。これで、少なくともブート ローダーとドライバーの測定値が得られました。しかし、ユーザー コードに及ぶものは何もありません。

于 2014-10-23T20:24:19.810 に答える