publicEncrypt and privateDecrypt