2009-06-17 11 views
0

Silverlightでsoapメッセージを暗号化する方法..現在、SilverlightはWCFメッセージセキュリティをサポートしていないため、アイデアを探しています。 投稿をPeter Brombergで行っていますが、公開鍵/秘密鍵の交換方法やソートの方法についての議論はありません。SilverlightのSOAPメッセージの暗号化

+0

SSLがオプションではない理由を明確にしてください。 –

答えて

0

この記事で取り上げたアプローチでは、非対称キー交換(TLSのように)は行われていないようです。代わりに、いくつかのアセンブリメタデータに基づいて生成される対称キーに依存します。記事の最後の段落を参照してください:

最後に、私はいくつかの懸念事項に言及しておきましょう。まずは、これはSSLよりも「良い」と言います。私はそれを代替手段として提供します。第2に、生成された暗号鍵のパスワードまたは他の構成要素がコード中に平文で示されるという事実は、パスワードとハッシュ(どちらも実行時にのみ生成できる)が必要であるため、ハッカーには有用ではない有効なキー。ダウンロードには、以前に説明したように、アセンブリのFullNameプロパティを使用してソルト値を生成する変更と、パスワードのManifestModule.Name.GetHashCode()を変更したことが反映されます。

攻撃者が同じSilverlightアプリケーションをダウンロードして、デバッガを起動してキーを取得できるため、非常に強力なキー生成メカニズムではありません。ただし、攻撃者がHTTPトラフィックにしかア​​クセスできない中間者攻撃を保護します。

個人的には、無料のソリューションを用意することが目的の場合は、自己署名入りの証明書を使用してSSLを使用します。

+0

私は同意しますが、SSLのためのSSLはオプションではありません。だから私は別のオプションを考え出す必要があります。 –

+0

これを行うための唯一の「適切な」方法は、非対称アルゴリズムを使用して、Silverlightアプリが実行されるたびに新しい公開鍵/秘密鍵のペアを生成することです。あなたのサーバーの公開鍵はSLの終わりが新しい対称鍵を生成することを可能にするSilverlightアプリケーションにハードコードすることができます。難しい部分は非対称アルゴリズムです。私はSLフレームワークがあるかどうか分からないが、そうは思わない。しかし、おそらくオープンソースのものがあります。 – sipwiz

+0

あなたは正しいです! SLは非対称的なものではなく、バージョン3ではそれを計画していません。 –

0

トランスポート層セキュリティの使用はどうですか? ssl?

+0

クライアントエンドが安全でないため、SSLはオプションではありません。 –

+0

「安全でない」とはどういう意味ですか? SSLを実装していないのですか?そのマシンは今日SSL接続を行うことはありませんか? –

+0

単にビジネス上の制約があるためです。 –

関連する問題