0

Stingray Traffic Manager の下で実行される TrafficScript を使用して、文字列を暗号化し、その暗号化された値を Cookie に保存します。そのようです:

$encrypt = "string to encrypt";
$passphrase = "passphrase";
$encrypted= string.base64encode(string.encrypt($encrypt, $passphrase));

http.setResponseCookie("encrypted", $encrypted, "path=/");

次にやりたいことは、C# でその Cookie 値を解読することですが、これまでのところ達成できていません。これは、TrafficScript で使用されるアルゴリズムの正確な詳細が完全に文書化されていないためだと思われます。リファレンス ガイドには次のように記載されています。

string.encrypt( string, passphrase ) - 指定されたパスフレーズを使用して文字列を暗号化します。返された文字列は、パスフレーズの拡張形式を暗号キーとして使用して、AES ブロック暗号を使用して暗号化されます。文字列の整合性を確保するために MAC も追加されます。

AesManaged を試しましたが、「解読するデータの長さが無効です」という例外が発生します。

誰でもポインタを提供できますか?

4

1 に答える 1

0

これを完全に TrafficScript で行う方法を見つけることができませんでした。

そのため、Java 拡張機能を作成し、TrafiicScript ルール内から実行することになりました。これは、 Joseph Ssenygeが Java および C# 向けのクロスプラットフォーム暗号化の記述方法を詳述したブログに投稿したコードを再利用することで可能になりました。

于 2012-09-14T10:07:37.637 に答える