私はこのトピックを徹底的に調査し、立ち往生しています - 役立つ人々から明確になることを望んでいました。ハッシュと塩を使用したSSLによる認証
背景:私は、Bluetoothのトランスポンダーを私のアプリで支払いで開かれたロックに接続しています。ユーザーが固定料金を支払うと、ロックが開き、アイテムをつかみ、ドアを閉じてロックします。私は、非有料のユーザーがこれらのロックを開くことができるようなスプーフィング攻撃を防止しようとしています。
私の現在の解決策は、理論的には以下のようになります:各トランスポンダにランダム32ビットの塩が与えられます。アプリケーションが接続すると、認証要求がトランスポンダに送信され、トランスポンダはランダムチャレンジストリング+その独自のソルトを作成します。次に、トランスポンダはSHA256を使用して文字列10,000(ブルートフォースから保護するため)をハッシュ反復します。一方、元のチャレンジ文字列+塩はアプリに送信され、共有の秘密ハッシュキーとトランスポンダーの塩が置かれているSSL経由で安全なサーバーに送信されます。この文字列は、Sha256を使用して10,000回ハッシュ反復され、アプリケーションに戻され、トランスポンダに返され、トランスポンダは計算されたハッシュに対してサーバーハッシュを検証します。等しい場合、ロックが開きます。
私の質問です:これは安全ですか?それはブルートフォースかどうか私はいくつかの目障りなセキュリティの欠陥を見落としていますか?私はまったく間違っていますか?あなたがサーバーに、その後アプリに塩とチャレンジ文字列を送信した場合は、生成に必要なすべての情報、
:任意のヘルプまたは勧告はあまり考慮すべき
http://security.stackexchange.com/questions/131764/authentication-over-ssl-using-hash-and-saltのクロスポストであるため、この質問をトピックとしてクローズすることにしました。 。 – SilverlightFox