Encrypt/Decrypt Mnemonic Seed
"Encrypt" requires a mnemonic seed in "1." and encrypts it with the key in "8.", placing the result in "9."
"Decrypt" requires an encrypted seed in "9." and key in "8.", and places the result in "1."
Technical details: in the "Old" method, the key was hashed with 10,000 rounds of keccak, then xor'ed with the hex seed to encode as an encrypted mnemonic.
I have left the old capability in place in case anyone has already used it and needs to decrypt their seed; it should not be used going forward.
The resulting encrypted mnemonic has no added characteristics and may be indistinguishable from an unencrypted mnemonic.
Ice Cold Storage, One-Time-Use 2FA Account
Combines two public spend keys into one, creating a combined public address. Originally imagined here; this version is somewhat simplified.
To generate: on computer A, generate a regular account. Copy *only* the public address over to computer B. On computer B, enter a 2FA key and click "Compute 2FA Address".
The two-factor-authentication key can be any text, including another 25-word mnemonic. It is hashed with CryptoNight similar to encrypting the mnemonic in the above section,
but is used to create new spend key pair instead. The public keys are combined to create the 2FA account.
Users A & B should securely store their half of the information (mnemonic/key) until redemption is desired.
To redeem: user A places their mnemonic in box 13, user B places their 2FA key in 11. After pressing "Derive Keys", the real Spend Key and View Key will be displayed and can be used
along with the address from 12 to restore a non-deterministic wallet in simplewallet. This is a key difference compared to encrypting the seed.
A watch-only wallet can also be created with the view key and the 2FA address in simplewallet to watch for incoming payments.
A zipped archive of this page with dependencies is here. SHA256 Hash: b78794db3f87daa98e0a4c3ba58d3be1b363e8b03b6ffd278b782f3de364bac7