[RESOLVIDO] Serv. de criptografia e politica norte-americana

Salve galera… to com um problema com bibliotecas…

tenho os seguintes métodos:

 public void senha(char[] chars) throws Exception {
      //System.out.println (System.getProperties());
         skf = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA1", "SunJCE");
         salt = new byte[4]; // deixamos 4 bytes zerados :(
         ks = new PBEKeySpec(chars, salt, 100, 128);
      //ks = new PBEKeySpec(chars);
         skey = new SecretKeySpec(skf.generateSecret(ks).getEncoded(), "AES");
      }
   
       public String cifrar(String original) throws Exception {
         Cipher cf = Cipher.getInstance("AES/OFB/NoPadding", "SunJCE");
         cf.init(Cipher.ENCRYPT_MODE, skey, new IvParameterSpec(new byte[16]));
         return enc.encode(cf.doFinal(original.getBytes()));
      }

Acontece que minha máquina nao acha a classe SunJCE… Li no site da sun que é preciso configurar pelo menos um servidor no java.security como o com.sun.crypto.provider.SunJCE

Dae q faço isso dinamicamente através do comando

Provider sunjce = new com.sun.crypto.provider.SunJCE();
Security.addProvider(sunjce);

SÓ QUE, quando vou rodar, ele só acha se for o pacote com.sun.crypto.provider.SunJCEs estiver na ext, e este pacote q coloco é um antigo, que baixei da archieved… dae como esse pacote é antigo, ele nao consegue achar o algoritimo AES/OFB/NoPadding…

Pelo que entendi, nos EUA é proibido a exportação de códigos para criptografia ou algo assim… acho que minha dificuldade é esta… como resolver? usar um algoritimo mais antigo? acho q fiz bagunça?
valeu ae

é a segunda vez que tenho este problema e nao consigo achar onde arrumo, embora eu consiga arrumar… voltou a funcionar depois q reinstalei a maquina bvirtual…