重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【終了しました】教えて!goo新規会員登録

J2SE5から、JCEでRC4がサポートされました。
テストしようと考えたのですが、うまくいきません。
Blowfishなどを使ったサンプルソースは、検索で見つかるのですが、RC4で、動作するサンプルソースありませんか?

下記のようなソースで動作させると、cipher.initで、
java.security.InvalidKeyException: Illegal key size or default parameters
がでます。
JCEとjavaDocだけでは、RC4の使い方がよくわからないんですよね。

Cipher cipher = Cipher.getInstance( "RC4" );
KeyGenerator kg = KeyGenerator.getInstance( "RC4" );
kg.init(128);
SecretKey key = kg.generateKey();
cipher.init( Cipher.ENCRYPT_MODE, key );

A 回答 (1件)

 デフォルトのポリシーファイルを置き換える必要があるようです。


 参考URLで紹介されているように、Sunのダウンロードサイトから『Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0』というのを持ってきて、<JAVA_HOME>/jre/lib/securityにある二つのpolicy.jarと置き換えると、こちらの環境では上のような例外は出力されなくなりました。
 蛇足ですが、置き換える前にバックアップをお忘れなく。それからREADME.txtに書いてあるsecurityディレクトリのパスが間違っているようなのでご注意。

参考URL:http://forum.java.sun.com/thread.jspa?threadID=6 …
    • good
    • 0
この回答へのお礼

ありがとうございました。
policy.jarを置き換えてうまくいきました。

お礼日時:2005/12/26 10:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!