public void init(String cifra_de_bloco, String padding_str) {
        try {

            //Algoritmo de criptografia/modo de operacao de cifra de bloco/preenchimento
            ecipher = Cipher.getInstance(cifra_de_bloco + "/" + this.mode + "/"+padding_str); //classe para criptografia
            dcipher = Cipher.getInstance(cifra_de_bloco + "/" + this.mode + "/"+padding_str);	//classe para decriptografia            	

            //verifica se um vetor de inicializa��o foi definido
            if (this.mode == "ECB") {
                ecipher.init(Cipher.ENCRYPT_MODE, this.key);
                dcipher.init(Cipher.DECRYPT_MODE, this.key);
            } else {
                ecipher.init(Cipher.ENCRYPT_MODE, this.key, param);
                dcipher.init(Cipher.DECRYPT_MODE, this.key, param);
            }

            this.charSet = "ISO-8859-1";

        } catch (javax.crypto.NoSuchPaddingException e) {
            e.printStackTrace();
        } catch (java.security.NoSuchAlgorithmException e) {
            e.printStackTrace();
        } catch (java.security.InvalidKeyException e) {
            System.out.println("O erro e: " + e.getMessage());
            e.printStackTrace();
        } catch (InvalidAlgorithmParameterException e) {
            System.out.println("O erro e: " + e.getMessage());
            e.printStackTrace();
        }

    }