Logged In: YES user_id=699438 Updated patch to reflect another fix. I originally thought the bug was related to cleanup of a partial quanta. It will trigger on any quanta where the initial hex value is < 0x10. When this happens part of the hex code disappears in the initial conversion and is mistakenly swallowed. The hex function that was originally used doesn't zero-pad, but the way the bit shifting works, it doesn't need to when encoding normal alpha-numeric characters, so it seemed to work correctly. This will only cause problems if you are using a character value of < 0x10 in the 0th, 4th, 8th, 12th, etc positions in the encoded string. Otherwise it'll work properly. Using "%010x" ensures that you'll get the appropriate zero-padding if necessary. Example of more broken code not covered in the original bug: >>> base64.b32decode(base64.b32encode('\x00aaa')) 'aaa' Updated patch fixes this case as well.