2013/03/26

Recent entries from same category

  1. PythonからPownceへメッセージ、リンク、ファイル、イベントをポストしてみる

Pownceをはじめました。ファイルを共有出来る所が特徴で、Twitterのいい対抗馬になるのでは?と思ってます。
Pownce Desktopというアプリケーションも付いてますので、一般ユーザにも取っ掛かり安いかもしれません。ただ、現状マルチバイト文字が入力できないので、全て英語(ぽいもの)で書かないとコミュニケーション出来ません。
もしよかったら気軽にAddしてみて下さい。

ところで...
Pownce Desktopの通信をパケットキャプチャした所、どうやらAPIは存在するようで、専用のURIも存在します。ただまだ非公開の為、変更される事もあれば、今後公開される予定もないかもしれません。
興味本位でWSSEヘッダを作成し、GETを投げて見ましたがHTTP/403。色々試しましたがやはりHTTP/403。どうやらWSSEヘッダの作り方が通常と異なるようです。
通常ならばWSSEヘッダは base64(sha1(nonce + now + password)) となるべきなのですが、WSSEヘッダからNonceをbase64decodeした値と、Created、自分のpasswordを使ってPasswordDigestを作成してもPownce Desktopが作成したPasswordDigestと同じものにならないんです。
で、どうやらNonceを作るアルゴリズムが通常と異なるんじゃないかとPownce Supportにメールしました。
が、現状返ってきてません。WSSEでよくあるのが、仕様をはきちがえてpasswordをmd5したものを使って base64(sha1(nonce + now + md5(password))) と扱ったり(某○メーバブログ)、意図してNonceのランダム文字列に特殊なキーを使ったりします。
ただ、後者の特殊キーを使った場合でも、上記のようにsha1後の値は複合出来ますので、やはり今回の件はPownce側で特殊なアルゴリズムを使っているとしか考えられません。

せっかくPownceAPI.pyを作ろうと思ってたのに...
これで返事返ってきてAPI動いて、もしかしたら、API経由ならマルチバイト行けたりして...
Posted at by | Edit