public and private key creation and storing