Currently we are handling an important project with a high priority at the company where I work. So that means that we are spending time and effort on that project. One of the things I was working on was storing certain information in a secure way.
Well, as first the data had to be hashed with SHA256. Not really a problem. With the right libraries, classes and modules that is easy.
Same could be said about encoding the hashed information with Base64. Also that was not very hard.
But somewhere with moving the hashed data to the function to encoding it with Base64 something went very wrong. After looking through the code line by line and reading a lot of related information in books and on the Internet, I had the feeling I was very close to the solution of the problem. But somehow I could not really put my fingers on it.
Hours and hours went by and the end of the working day arrived. Some of my colleagues working on the same project had planned some overtime. As I really wanted to finish off this part of the project, I decided for some overtime as well. Together we had dinner and I had a lovely tasting pizza (with chicken of course :P).
After dinner I continue to hack my source code, but somehow it did not do what I wanted it to do. I started to get frustrated by it, as I was convinced that I was so close to the solution.
Then suddenly, almost at the end of the evening….
Suddenly I saw what was going wrong. Within 5 minutes I corrected my code and the function did what it should do.
Point is that this kind of things are poorly documented and it can take a long time to find something about it (even on the big bad Internet).
Tomorrow I will clean up the code of the function and will start to implement the function into the application I am working on. It is nice to go home after working so long on a solution to finally solve the issue. I felt good 🙂