Hey Yadu, really nice blog. Easy to read and to understand. All the important things to the point.
NitPick: There is a memory leak in your base64_decode function. You malloc memory for combined, but you don't free it in the end. This is why garbage collectors a so useful right ;-)