Skip to content
Toni edited this page May 24, 2020 · 8 revisions

Base 64 es un sistema de numeración posicional que usa 64 como base. Es la mayor potencia que puede ser representada usando únicamente los caracteres imprimibles de ASCII. Los esquemas de codificación Base64 son comúnmente usados cuando se necesita codificar datos binarios para que sean almacenados y transferidos sobre un medio diseñado para tratar con datos textuales. Esto es para asegurar que los datos se mantienen intactos y sin modificaciones durante la transmisión. Base64 es comúnmente usado en muchas aplicaciones, incluyendo la escritura de emails vía MIME y el almacenamiento de datos complejos en XML.

Ejemplo de codificación: Una cita de Thomas Hobbes perteneciente a la obra Leviathan:

Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.

se codifica en base64 como sigue:

TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlz IHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2Yg dGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcmFuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGlu dWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYXRpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRo ZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4=

Base64 en java

Con Java 8 finalmente se han agregado capacidades de Base64 a la API estándar, a través de la clase de utilidad java.util.Base64. El provider Bouncy Castle también incluye la utilidad a través de org.bouncycastle.util.encoders.Base64. En criptoKit se puede codificar/decodificar con ambas librerías.

Ejemplo de codificación con la API estándar:

Base64.getEncoder().encodeToString(string.getBytes());

Ejemplo de decodificación con la API estándar:

Base64.getDecoder().decode(stringCodificado);

Fuentes

https://es.wikipedia.org/wiki/Base64 https://developer.mozilla.org/es/docs/Web/API/WindowBase64/Base64_codificando_y_decodificando http://decodigo.com/java-codificacion-y-decodificacion-de-base64

Clone this wiki locally