100. CryptoPad

This program could use the techniques used by the preceding solution to save data in an encrypted format. When you wanted to load a file, the program would decrypt it into a temporary file, load that file, and then delete the temporary file. When you wanted to save data, the program would write the data into an unencrypted temporary file, encrypt it, and then delete the temporary file.

That method would work, but using unencrypted temporary files is risky. An attacker might be able to grab the temporary file before the program can delete it. Even worse, if the program happens to crash at the wrong moment, the temporary file might not be deleted.

Another, safer approach is to encrypt data directly between the program and the ...

Get The Modern C# Challenge now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.