VB6でMSNP8に対応したMSNメッセンジャーのクローンを作りたいのですが、
SSLで認証を行う部分で行き詰まっています。
Winsockは基本的にSSLに対応していないのでXMLHTTPを用いる方法も
試したのですが、
"GET /rdr/pprdr.asp HTTP/1.0" & vbCrLf & vbCrLf
というデータを送っても望んでいる結果が返ってきません。
http://www.msnfanatic.com/re.php?a=30&9a93ee1440020d948ddc4e0913ba47e4=a12e1edab09678c175af68bc6b3d0ac4
上記アドレスでWinsockをSSLに対応させた英語版のソースは見つかったのですが、
日本語環境で動かすとString文字列のバイト数の違い?からかそのままでは
動きませんでした。
Stringの代りにByte型の配列を用いてみたり、
Call sckSSL.GetData(TheData, vbArray + vbByte, seeklen)
TheData = ""
For i = 0 To UBound(bytBuf)
TheData = TheData & Chr(bytBuf(i))
Next
のように1バイトずつStringに変換したりしてみましたが、
上手くキーが作成できてないのか
'client-master-key C -> S: {master_key}server_public_key
の部分(サーバにmaster-keyを送った後)でコネクションが閉じてしまいます。
自分で考えられることはすべてやってみましたが八方塞になってしまいました。
日本語環境で動かすには、あとどうすれば良いか教えてください。
ちなみにMSNP8のプロトコルは
http://www.hypothetic.org/docs/msn/research/msnp8.php
で解析されています。
よろしくお願いします。
ツイート | ![]() |