https://www.password-depot.com/know-how/blowfish_and_rijndael.htm
https://golang.org/pkg/crypto/cipher/#BlockMode
https://asecuritysite.com/encryption/padding
https://crypto.stackexchange.com/questions/5333/difference-between-stream-cipher-and-block-cipher
https://www.socketloop.com/tutorials/golang-example-for-dsa-functions