Refactoring and introduce a simple unit-test
Fixing parameter matching problem
Introduce symmetric and hybrid encryptions.