support more encryption methods