encriptar en java

Codificar Y Decodificar En Base64 En Java 8

Encuentra en el sitio

Últimos Artículos

La protección de los datos es una parte fundamental en cualquier desarrollo que se realice. En la actualidad existen diversos métodos de encriptación que puedes usar, uno de los mas conocidos es el método de codificación y decodificacion Base64. La importancia de esto radica en la importancia de proteger los datos mas sensibles de los usuarios, aunque puede ser fácil de cifrar y descifrar, puedes usar este método criptográfico como la primer medida de protección para los datos.

como cifrar y descifrar en base64 java

Anteriormente, para usar Base64 en Java, era necesario crear la clase o el método para poder usar este método de encriptación, algo que resultaría tedioso si lo tuyo no es la criptografía 😉 Por suerte para ti y para mi, en Java 8 ya puedes hacer uso de Base64 de forma nativa.

¿Qué es cifrar en Base 64?

Cuando tienes algunos datos binarios que deseas enviar a través de una red, por lo general se cifran los datos con algún método que no genere problemas en el proceso del envío y la recepción de los datos.

El método de cifrado y descifrado de Base 64 convierte los 64 caracteres ASCII imprimibles en datos no legibles para el usuario. Generalmente este método de cifrado se usa para los datos “básicos”, ya que el cifrado ya es conocido y fácilmente de descifrar.

Soporte De Base64 En Java 8

En versiones anteriores de Java 8, era necesario el uso de una librería no oficial para usar este método de cifrado, eso ya es cosa del pasado, ya que en Java 8 se  ha añadido una clase para el cifrado y descifrado en base 64, la cual se encuentra en java.util.Base64. Los vamos a ejemplos de código siguientes para usarlo.

Librerías Para Usar Base64 En Java

Para usar correctamente este método de cifrado y descifrado, es necesario hacer el uso de dos librerías, una es la que se ha mencionado anteriormente, y la otra… bueno, a continuación podrás ver las librerías necesarias.

import java.nio.charset.StandardCharsets;
import java.util.Base64;

La librería de la linea 1, es necesaria al momento de cifrar el mensaje con base64, la siguiente librería, es necesaria para usar tanto el método de codificado y decodificado.

Métodos Para Cifrar Y Descifrar Con Base64 En Java

A continuación veras los métodos para cifrar y descifrar texto en Java, lo podrás usar de la siguiente manera:

Cifrar: metodosBase64.cifrarBase64(Variable o texto a cifrar);
Descifrar: metodosBase64.descifrarBase64(Variable o texto a descifrar);

Los metodos son los siguientes:

public static String cifrarBase64(String a){
        Base64.Encoder encoder = Base64.getEncoder();
        String b = encoder.encodeToString(a.getBytes(StandardCharsets.UTF_8) );        
        return b;
    }
    
    public static String descifrarBase64(String a){
        Base64.Decoder decoder = Base64.getDecoder();
        byte[] decodedByteArray = decoder.decode(a);
        
        String b = new String(decodedByteArray);        
        return b;
    }

Como puedes ver, el ambito o alcance de los métodos no están limitados, si deseas cambiar el ambito de los métodos, ya es tu decisión 😉

Ejemplo Práctico Para Usar Base64 En Java

Para aprender o ver el funcionamiento de algo, muchas veces es necesario ver un ejemplo, y este tema no es la excepción 😉 A continuación podrás ver un ejemplo de como funciona este método de cifrado en Java usando una interfaz gráfica, el ejercicio tendrá 2 clases, una donde se tenga la interfaz y en ella los eventos necesarios para el cifrado y descifrado, la otra, los anteriores método para cifras y descifrar los datos.

A continuación, podrás ver el código de la clase que contiene los métodos para cifrar y descifrar en Base64:

La estructura del proyecto que he manejado es la siguiente:

estructura proyecto

Como lo puedes ver es algo sencillo de usar, si deseas tener el código en el paquete para trabajarlo en Netbeans, te invito a descargarlo, solo tendrás que regalarme una acción social, ya sea una Like, Tweet o +1 😉 Vamos, no te cuesta nada 🙂

  1. Avatar for belial9826 Lucy dice:

    Excelente!!!!!

    Muchas gracias!

  2. Avatar for belial9826 Juan Ignacio dice:

    Muy buen tuto! Me sirvio mucho!
    Mi consulta es si yo cifro en Base64 en java un cliente mío puede descifrarlo en .net?

    Muchas gracias!!!

  3. Avatar for belial9826 juan rod dice:

    Muy buen tema

  4. Avatar for belial9826 Jorge Alexander Valencia Valencia dice:

    Muy buen tutorial,me gustaría saber si ha trabajado con drag and drop Java escritorio

Deja un comentario