Implement encryption of file

Yes I think we can have ability to set key directly in addition to use passphrase.