私は、顧客のハードウェアに会社がソフトウェアをインストールする分散アプリケーションを構築しています。したがって、顧客はソフトウェアを改ざんすることができます。お客様のハードウェア上で実行されているソフトウェアが中央サーバーに Web リクエストを送信した場合 (つまり、完全に当社の管理下にある場合)、そのリクエストが改ざんされていないバージョンのソフトウェアからのものであることを検証できる技術が存在するかどうかを知りたいです。 .
これは「リモート認証」と呼ばれるものだと思います。リモート認証についてWebで検索すると、「できない」から「TPMを利用する」まで、さまざまな結果が返ってきます。しかし、これを Windows でコーディングする方法の簡単な例を見つけることができませんでした。
それで、私の質問は次のとおりです: Windows でリモート認証は可能ですか? もしそうなら、実装の基礎として使用できる実用的な例はありますか?
注: リモート認証は、「共有シークレット」をアプリケーションに埋め込み、攻撃者が逆コンパイルなどによってその共有シークレットを簡単に抽出できないようにするために、さまざまな方法でそれを隠すなどの「隠蔽」手法によって達成されることがあります。私はそのような技術には興味がなく、あいまいさによるセキュリティではなく、本当のセキュリティを提供するものを探しています。