2

APIを使用してMediaFireに接続しようとしています。

ドキュメントによると、get_session_token要求の1つは次のとおりです。

署名:この順序で次の4つの要素を含むSHA1ハッシュ文字列:email + password + application_id+APIキー。たとえば、電子メール:testemail@domain.com、パスワード:111111、application_id:9999、APIキー:abcdefghijklmnopqrstの場合、署名は次のように計算する必要があります。SHA1('testemail@domain.com1111119999abcdefghijklmnopqrst')

私が抱えている問題はSHA1にあり、文字列を目的のSHA1にハッシュする方法がわかりません。私は.NETを使用しています(そしていくつかの方法を試しました)が、python(hashlib.sha1('token').hexdigest())を試しても機能しませんでした(インターネットブラウザ経由でアクセスしようとしました)。

誰かが以前にこの問題を経験したことがありますか?

4

1 に答える 1

3

これは、ハッシュデータの文字列表現を作成するときに私が従う種類のパターンです。

string data = "testemail@domain.com1111119999abcdefghijklmnopqrst";
byte[] bytes = Encoding.UTF8.GetBytes(data);
byte[] hash;

using (SHA1 sha1 = new SHA1Managed())
    hash = sha1.ComputeHash(bytes);

//You would use hashString for the signature parameter.
string hashString = BitConverter.ToString(hash).Replace("-", "").ToLower();
于 2013-03-11T00:35:19.957 に答える