types of encryption methods and techniques how does it work