b64 -- Base64 Encode/Decode Utility Icon

User Ratings

★★★★★
★★★★
★★★
★★
7
2
0
0
1
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 2 / 5
Write a Review

User Reviews

  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    simple, straightforward, no bells & whistles to break. I've built & used this on Windows (both cmd.exe & cygwin,) 2 flavors of linux, and OS X. I just compiled v0.94R on OS X El Cap with g++ 7.3.0. Only issue noted: 7 x "warning: conversion from string literal to 'char *' is deprecated". You could do much worse.

    Posted 04/04/2016
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    works great only a minor bug if out[i] contains 0x00 it will not write to outfile and fail. In order to fix this, change "if( putc( (int)(out[i]), outfile ) == 0 )" to "if( putc( (int)(out[i]), outfile ) == EOF )"

    Posted 06/27/2015
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    it's good source

    Posted 01/24/2015
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    I had to apply some changes to work on Linux and Windows: The '-' and '+' means line removed and line included. 1. change for unix files. if( blocksout > 0 ) { - fprintf( outfile, "\r\n" ); + fprintf( outfile, "\n" ); } 2. change v = getc( infile ); - if( v != EOF ) { + if( feof( infile ) == 0) { v = ((v < 43 || v > 122) ? 0 : (int) cd64[ v - 43 ]); 3. change in the break position perror( b64_message( B64_FILE_IO_ERROR ) ); retcode = B64_FILE_IO_ERROR; + break; } - break;

    Posted 08/07/2014
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    Ran into problems with decodes as others have mentioned. Appears the author tried to fix a minor bug recently (2014) and introduced a new one. In the decode() function, change: if( putc((int)out[i]) !=0){ if( ferror(outfile)!=0) { ...} break; } to if( putc((int)out[i]) !=0){ if( ferror(outfile)!=0) { ... ; break; } } then it works fine. I was able to use it to verify a bug in yet another base64 decoder that was corrupting science data.

    Posted 05/09/2014
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    Read the zeroxia review if you are having decoding problems - there is a bug in the latest version! but the old one is great

    Posted 01/20/2014
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    For me works well. Used with both text data and compressed binaries. Also I have tried two samples from negative review and I could not confirm this issue. Both: online decoder and this tool produced the same result which is correct (for first string result is one char less).

    Posted 06/03/2013
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    The following source file linked on the web site (hxxp://base64.sourceforge.net/) is buggy: hxxp://base64.sourceforge.net/b64.c In the function "decode", the following line will cause decoding to render broken result: if( putc( (int) out[i], outfile ) == 0 ){ Because "putc" will return 0 if "out[i]" is zero, which is normal for binary files (an octect of value 0). But on the project page: hxxp://sourceforge.net/projects/base64/ One can view the source as: hxxp://base64.cvs.sourceforge.net/viewvc/base64/base64/b64.c?revision=1.4&view=markup Which does not check return value of "putc" in the "decode" function. So no short write will occur if all goes well, but "putc" does return EOF on error, and one may argue checking this is required to enhance the program's robustness. :-) (Sorry for the hxxp garbage since sf forbids URLs in comments)

    Posted 05/23/2013
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    the code has something wrong; i tried to decode this 2 string, it gives the same result: Z2lhbmx1Y2E6YXNkYXNk -> expected: gianluca:asdasd -> decoded: gianluca:asdas Z2lhbmx1Y2E6YXNkYXM= -> expected: gianluca:asdas ->decoded: gianluca:asdas

    Posted 09/03/2012
  • 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    I first ran into b64 encoding while scanning through some XML from SAP. Had nothing handy to decode it. That's when I found this little jewel on the SourceForge site. Because it has source code available and it compiled cleanly even on the first try with Visual Studio 2010 only a few minor adaptations were necessary to turn it into the utility I needed. Sometimes, the simpler, the better. Thanks to Bob Trower!

    Posted 10/26/2011

Thanks for helping keep SourceForge clean.

Screenshot instructions:
Windows
Mac
Red Hat Linux   Ubuntu

Click URL instructions:
Right-click on ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies
X

Briefly describe the problem (required):

Upload screenshot of ad (required):
Select a file, or drag & drop file here.

Please provide the ad click URL, if possible:

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks