- PR -

J2ME? Personal Profileで暗号/複合処理

1
投稿者投稿内容
taka
常連さん
会議室デビュー日: 2003/09/22
投稿数: 46
投稿日時: 2006-07-14 16:46
J2ME? Personal Profileを使用してPDA上で暗号/複合処理を行う為に色々と試しておりました。
J2ME? Personal ProfileはVer1.2準拠の為にJCEを取り込んで暗号/複合処理を行っておりました。
下記がテストプログラムの暗号/複合処理部分のソースです。
[http://www.itmedia.co.jp/enterprise/articles/0407/01/news017.html]を参考に作成しました。

コード:
  /**
   * 暗号化
   */
  private static byte[] encrypt(String key, String text) throws Exception {
    SecretKeySpec sksSpec = new SecretKeySpec(key.getBytes(), "DES");
    Cipher cipher = Cipher.getInstance("DES");    
    cipher.init(javax.crypto.Cipher.ENCRYPT_MODE, sksSpec);
    byte[] encrypted = cipher.doFinal(text.getBytes());
    return encrypted;
  }

  /**
   * 復元化
   */
  private static String decrypt(String key, byte[] encrypted) throws Exception {
    SecretKeySpec sksSpec = new SecretKeySpec(key.getBytes(), "DES");
    Cipher cipher = javax.crypto.Cipher.getInstance("DES");
    cipher.init(javax.crypto.Cipher.DECRYPT_MODE, sksSpec);
    byte[] decrypted = cipher.doFinal(encrypted);
    return new String(decrypted);
  }




しかし、いざPDAで起動すると"Cipher cipher = Cipher.getInstance("DES");"
の部分で"java.lang.NoClassDefFoundError: Java/net/JarURLConnection"エラーが発生しました。
J2ME? Personal ProfileではURLConnectionが使用不可能な為、URLConnectionを継承しているJarURLConnectionで問題があるんだと考えました。

回避作などはあるのでしょうか?



1

スキルアップ/キャリアアップ(JOB@IT)