[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How to verify a BASE64 encoded file
Hi Scott,
Sounds familiar. I learned to deal with UU encoded files back in the
early '90s.
So... I guess the question is. When I read in an XML file I created on
the IFS with code page 819 and I BASE64 encode what I just read in, does
it read it in translating ASCII to EBCDIC so when I encode it, I'm
encoding EBCDIC? How would I get it to NOT do the ASCII -> EBCDIC
translation? Would it still do the encoding correctly?
On Fri, 2010-10-01 at 11:47 -0500, Scott Klement wrote:
> Hi Mike,
>
> The purpose behind base64 is to guarantee the same exact binary value of
> a file when it's sent in a text-only document. So data that has already
> been base64 encoded can be translated from any given character set to
> any other given character set, and when it's decoded, it'll have the
> exact same binary value. Likewise, it can be sent in a text-only
> medium, such as E-mail, Usenet, XML, etc. Even if the data (before
> encoding) isn't text-only, it'll work through those mediums... for
> example, a program, picture, sound-file, etc... these files don't
> contain human-readable letters and numbers -- the values of the bytes
> have a particular meaning. For example, in a picture, the byte may
> represent the color of a dot to be printed on the screen. In a sound
> file, the byte may represent the pitch/tone of a given sound, etc. Even
> though they aren't human-readable text, they can be sent through a
> text-only medium like e-mail or XML after they are Base64 encoded. That
> e-mail could subsequently be translated from ASCII/EBCDIC without
> affecting the encoded content. When decoded, the picture would look the
> same, or the sound file would sound the same.
>
> Could your problem be an ASCII vs EBCDIC issue? Very probably if
> you're sending a text document. If you are taking text that's in EBCDIC
> and base64 encoding it -- the decoded value will have the exact same
> binary value. Always. That's the point of base64.
>
> So... if you're base64 encoding it from EBCDIC data... then it'll
> decode to EBCDIC data. Even if the receiver is on an ASCII system.
>
> The solution, of course, is to convert it to ASCII (or Unicode or
> whatever is appropriate) prior to encoding it.
-----------------------------------------------------------------------
This is the FTPAPI mailing list. To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------