背景:私は、サーバー側で復号化される必要がある、クライアント側のJavaScriptを使用して暗号化していたデータを持っている相互運用性を保証するためにJavascript AESライブラリを.NETに移植するにはどうすればよいですか?
。
私の知る限り、私が使用しているJavaScriptのAESライブラリは、C#、ラインダールライブラリと相互運用しません。
このように、私は基本的にC#でjavascript AESを実装して使用するようになりました。
私は、DLLの中にjavascriptの使用jsc.exeをコンパイルし、リフレクタは私にいくつかの時間を節約することができるかどうかを確認しようとするつもりです。
私はJScriptのは、JavaScriptのと同じではないことを認識してんだけど、私は私がawefully近い作品何かを離れて得ることができます願っていて、ちょうど手動touchupsを行います。
問題:
私はJSCを使用してJavaScriptをコンパイルすると、私は次のエラーを取得する:
error JS1234: Only type and package definitions are allowed inside a library
問題のある行は、次のコード行で、この最初の行です:
var GibberishAES = (function(){
var Nr = 14,
/* Default to 256 Bit Encryption */
Nk = 8,
Decrypt = false,
enc_utf8 = function(s)
{
try {
return unescape(encodeURIComponent(s));
}
catch(e) {
throw 'Error on UTF-8 encode';
}
},
dec_utf8 = function(s)
{
try {
return decodeURIComponent(escape(s));
}
catch(e) {
throw ('Bad Key');
}
},
そして、完全なソースは、found hereことができます。
問題の内容がわかりません。また、JavascriptとC#の間でデータを暗号化/復号化する方法についての提案もあります。
私は答えはありませんが、なぜクライアントとサーバーの間の暗号化に対処するためにHTTPSを使用できないのか不思議です。 – Alconja
あなたが指定した行はあまり意味がなく、完全な記述ではないので、問題が何であるかは分かりません。コードの行数を増やすことは可能でしょうか? – kanngard
@Alconja:残念ながら、私はクライアントとサーバーの間でSSLを使用することについて何も制御していません。一部のクライアントはSSLを設定しますが、他のクライアントは設定しません。したがって、すべての機密データは、送信のためにクライアント側で暗号化されなければならない。 @kanngard:さて、私は更新し、さらに完全なjsファイルへのリンクを追加しました。 ありがとう! – Alan