title: Base64 encoding and equal sign at the end, instead of A (base64 value of number 0)
body: <p>According to wikipedia:</p>
  
  <blockquote>
    <p>When the number of bytes to encode is not divisible by three (that is,
    if there are only one or two bytes of input for the last 24-bit
    block), then the following action is performed:</p>
    
    <p>Add extra bytes with value zero so there are three bytes, and perform
    the conversion to base64.</p>
  </blockquote>
  
  <p>However, if we got an extra <code>\0</code> character at the end, the last 6 bits of the input have a value of 0. And the number 0 must be base64-codified as <code>A</code>. The character <code>=</code> doesn't even belong to the base64 encoding table.</p>
  
  <p>I know that those extra null characters doesn't belong to the original binary string, so, we use a different character (<code>=</code>) to avoid confussions, but anyway, the Wikipedia article and other thousand sites doesn't say that. They say that the newly constructed string must be base64-encoded (sentence which strictly implies the use of the transformation table).</p>
  
  <p>Are all of these sites wrong?</p>