Need to write a c++ script to encrypt files using Salsa20/SOSEMANUK inline algorithm with 256/128 bit key. The crypto stability of Salsa20/SOSEMANUK implementation is very important in the script, so the algorithms should be bug-free and encrypt any files at all. Also the speed of encryption will be very important, namely because of speed I chose stream algorithm instead of block algorithm. I work with transmitting important files over unsecured channels on a regular basis, at the moment I used and use the usual openssl aes-128-cbc, but the encryption speed leaves much to be desired... Therefore, I need a stable utility, but for Salsa20/SOSEMANUK and that quickly encrypted files that weigh from 1kb up to 50kb +.
I would like to see it work in the following variants:
1) Sources c++ which can be compiled into usable variant ELF for linux, so it could be put to /bin folder and used as console openssl, extended fileencryptor -enc -in /[login to view URL] -out /[login to view URL] -key (256bit key)
2) C++ source code, where file encryption is implemented by one function, which takes arguments: input file/output file/encryption key.
1) Unavailability for different Linux systems
2) Crypto stability
3) Highest possible encryption speed
4) Work on memory/tools to make file reading/writing as fast as possible.
5) Conduct tests before releasing project to the maximum, because then in the case of defects will be damaged or jeopardize important work files!
6) In terms of algorithm, look by yourself which is better in speed and crypto stability Salsa20 or SOSEMANUK (in my opinion, better SOSEMANUK)
6 freelancers are bidding on average $495 for this job
I have worked in C++ for a very long time, and having worked on integrated tech(microcontrollers), I am very proficient at writing hyper-optimized, byte efficient code that can squeeze the best out of your hardware.