Now that the source is available I thought I'd bring up the subject of the seed difference between the Trezor and Simplewallet. The Trezor uses 24 words, while Simplewallet uses 24 plus an extra word as a checksum. How compatible are these two seeds? And what needs to be done to convert a simplewallet seed to a Trezor so that people don't need to "sweep" funds to a brand new seed, as well as doing the reverse?
In the experimental binaries, which can be found here, NoodleDoodle included a tool called
trezorctl. With this tool you can convert your Trezor mnemonic seed to a mnemonic seed compatible with simplewallet. Thus, using this tool allows you to, after conversion, restore your wallet using simplewallet. The tool works as follows. Note that
<word_list> is your 24 word Trezor mnemonic seed. On Linux and Mac OS:
./trezorctl recover_mnemonic <index> <passphrase> <language> <word_list>
On Windows make sure to launch it from the command line. Go to the folder monero-cli-wallet is located and make sure your cursor isn't located on any of the files. Subsequently do SHIFT + right click and it will give you an option to "Open command window here". Lastly, type the following command:
trezorctl.exe recover_mnemonic <index> <passphrase> <language> <word_list>
The default language is English for seeds. Note that simplewallet also supports Spanish, German, Italian, Japanese, Russian, and Portugese. Lastly, the trezorctrl output looks like this:
USAGE: trezorctl recover_mnemonic index passphrase language word_list
I've never owned Trezor so my answer might be irrelevant, but I've studied the code to learn how the Electrum seed phrase is treated in the simplewallet so that I can create my own specific choice of seed phrase.
From lines 216-221 of electrum-words.cpp, with
seed_length being set constant to 24, I guess the number of words in the phrase can be either 12, 24, or 25. Line 224 suggests that the 25th word if existent would be treated as a checksum.
So, if Trezor gives you 24 words, I guess you can just put those 24 words (i.e. with no checksum) into simplewallet to restore your wallet. Hope this works.