How is the passphrase and private key generated?