2011-03-14 30 views
5

Hay suficiente información sobre cómo implementar la codificación base32 o la especificación de la codificación base32, pero no entiendo de qué se trata, por qué lo necesitamos y dónde están las aplicaciones principales. ¿Puede alguien explicar y dar buenos escenarios de uso en la vida real? Gracias.¿Qué es la codificación base32?

crockford base32 wikipedia base32

Respuesta

12

Al igual que cualquier otra "ASCII de sólo" la codificación, el propósito principal de base32 es asegurarse de que los datos que codifica sobrevivirá el transporte a través de sistemas o protocolos que tienen restricciones especiales en el rango de caracteres que aceptará y emergerá sin modificaciones.

Por ejemplo, los datos codificados en b32 se pueden pasar a un sistema que acepta entrada de caracteres de un byte, o entrada de cadena codificada UTF-8, o anexados a una URL, o agregados a contenido HTML, sin ser destruidos o resultantes en una forma inválida Base64 (que es mucho más común) se usa por las mismas razones exactas.

La principal ventaja de b32 sobre b64 es que es mucho más legible para los humanos. Eso no es una gran ventaja porque los datos generalmente serán procesados ​​por computadoras, de ahí la rareza relativa de b32 versus b64 (que es más eficiente desde el punto de vista espacial).

Actualización: hay la misma pregunta se le preguntó sobre Base64 aquí: What is base 64 encoding used for?

+0

me gustaría añadir que, en teoría, base32 puede ser sensible a mayúsculas. – snapfractalpop

4

Base32 codificación (y base 64) de codificación está motivada por situaciones en las que necesita para codificar binario sin restricciones dentro de un sistema de almacenamiento o de transporte que permite que sólo los datos de una cierta forma, como texto sin formato. Los ejemplos incluyen pasar datos a través de URL, XML o datos JSON, todos los cuales son tipos de texto sin formato que de otra manera no permiten ni admiten datos binarios arbitrarios.

0

Además de las respuestas anteriores para base32 vs base64 en números. Para mismo resultado codificado .pdf archivo es:

base64.base32encode(content) = 190400 símbolos

base64.base64encode(content) = 158668 símbolos

Cuestiones relacionadas