Recently, I had to use Redis for the first time. I heard of it, but never really played with it. But this time I had no choice, and I don’t regret it at all, Redis is awesome. But having a new component means that I had to discover from scratch how to test it. I tried a few libraries, but one seemed really easy to use, at least to the point where I wanted to test that I was correctly using the expiration time for my data.
As I said in an earlier post, I’m currently working on a Node/Preact app to manage my Hugo blog without having to use my computer & editor. Since I’m alone on this, with no deadline, I can take my time, try different things, etc. At first, I was going to use a database to remember the files on the disk, make searching through them faster. But I decided to test if it was viable to manage everything without a database.
Trying to use a library to encrypt your data can be a lot to handle when you have no experience or knowledge about their inner workings. There is more than just selecting a cipher algorithm like Blowfish or AES. You also have to chose a mode, manage an initialization vector, and sometimes even more. As a memento, but also to help others, I will try to explain some of those concepts, and how to use them with PyCrypto, the main encryption library in Python.