2011-02-10 17 views
0

これは完全に失われます。 私は彼のウェブサイトでiphoneアプリで使用するXML APIを作成するよう依頼したクライアントがいます。 iphoneアプリの開発者は、SHA1で暗号化されたパスワードを使用して認証値を送信しています。SHA1ハッシュをwordpressアカウントのログインに比較すると

ユーザー名(プレーンテキスト)とパスワード(Sha1)が正しいことを確認するにはどうすればよいですか?

私はclass.phpass.phpとplugable.phpを読んでいますが、私は理解できません。

答えて

1

これは少しの作業が必要です。 WPパスワードは塩漬けのMD5ハッシュとして保存されます。このハッシュは送信しているSHA1と一致しない可能性があります。さらに、パスワードの「クリアテキスト」は保存されないため、追加のSHA1値を自動的に生成することはできません。

ここでは、この問題を攻撃する方法についての私の頭の上からの提案のカップルがあります:

  1. はアプリがHTTPSを使用して接続し、パスワードの平文を送ってもらいます。これは最も安全で、WPコードの再編集を必要としませんが、利用可能なオプションではない可能性があります。
  2. アプリに対称キプロスで暗号化されたパスワードを送信させ、アプリとWPの両方が秘密キーを知っているようにします。複数の場所での秘密鍵の管理は大変です。あなたは結局それが最終的にリークするだろうと仮定しなければならず、そしてセキュリティは窓から外に出る。
  3. ユーザがWPに正常にログインしたとき(またはパスワードが作成されたとき、またはパスワードが変更されたとき)は、パスワードのSHA1であるユーザメタ値を作成します。その後、このアプリケーションで将来の認証に使用できます。

サイトの詳細によっては、#2と#3のアイテムは実際には安全ではありません。 #2はちょうどハックを待っています。#3が暗号化された接続で行われない限り、ネット上で平文パスワード(SHA1の形式)を効果的に送信しています。

アプリ開発者に#1を実行させることができない場合は、#3と一緒に行くことをお勧めします。誰も本当にサイトが管理している情報に興味がないことを願っています。

+0

提案をいただきありがとうございます。ピーター、私はiPhoneの開発者と話をしてお知らせします – chifliiiii

関連する問題