base64 RFC1113 Vanilla ANSI-C Code for a portable stand-alone file encode/decode utility. In 2001, I asked people to 'Help me break it!' Since then, 10+years later, the code remains unbroken and is in wide production use world-wide. It has been ported to all major architectures and been used as a template for ports to different computer and human languages. This is very mature and stable code.

Although this comes from a project that was constrained by export controls and is used in secure systems, it is not security code per-se. I have therefore altered the 'Export Controls' category.

Project Samples

Project Activity

See All Activity >

Categories

Email, Libraries

License

MIT License

Follow b64 -- Base64 Encode/Decode Utility

b64 -- Base64 Encode/Decode Utility Web Site

Other Useful Business Software

SolarWinds is #1 in network monitoring. SolarWinds is #1 in network monitoring. Icon
SolarWinds is #1 in network monitoring. Icon

Reduce network outages and improve performance with advanced network monitoring software.

SolarWinds® Network Performance Monitor (NPM) is the ONLY monitoring solution with NetPath™ for hop-by-hop visibility into your critical paths, on-premises and into the cloud. NPM also features PerfStack™, helping you accelerate identification of root cause by dragging-and-dropping network performance metrics on a common timeline for immediate visual correlation across all of your network data. See why we're the leader. Try it free for 30 days!

Rate This Project

Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
8
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 4 / 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

User Reviews

  • Thank you! I finally was able to recover images from the 1990's which were saved as attachments in a Windows 98 version of Eudora -- the only version left after a series of disasters.

  • 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.

  • 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 )"

    1 user found this review helpful.
  • it's good source

    1 user found this review helpful.
  • 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;

    1 user found this review helpful.
Read more reviews >

Additional Project Details

Languages

English

Intended Audience

Advanced End Users, Developers, Security Professionals

Programming Language

C

Registered

2001-08-05