overview of computer security and cryptography 9159410