add some comment in cipher() function