dont reuse the crypto object