2014年1月6日

SSLでWebSocket











結構苦戦したので書いておきます。


WebSocketについて。



現在実装中のアプリに必要な機能

・WebSocket(双方向通信)したい

・ヘッダーをセットしたい

・SSL通信したい



検索するとよく出てくる

Too Tall Nateというライブラリは

「ヘッダはセットできるけど、SSL通信ができない」

というもので

SSLできる系で検索して出てきたSecureWebSockets

「SSL通信できるけど、ヘッダをセットできない」

というものだった。

なので、後者を改造して(WebSocketWriter.javaのsendClientHandshake(WebSocketMessage.ClientHandshake message)内がヘッダをセットしているところなので、その辺りに今回全ての通信でセットするべきヘッダを決め打ちでセット)

いざ通信してみると、SecurityExceptionでサーバに弾かれた模様・・・。

原因を調べた結果、サーバに中間証明書がなかったのがダメだった。

iPhone開発だとサーバに中間証明書がなくてもイケちゃうらしい。

Androidはないとダメなんだって。


みなさん、安全にセキュアにリアルタイム通信しましょう。

0 件のコメント:

コメントを投稿