This project is built from two parts:
- Electrum plugin.
- secp256k1 signer server.
We assume you have already installed DAL.
To run the TXE signer server, you have to complete the following steps:
- Open the applet project in Eclipse. (Project directory
./txe/secp256k1_signer.) - Build the applet. (Press on the shield button with the play icon.)
- Open the host project in Visual Studio. (Project directory
./txe/secp256k1_signer_server.) - Change the build configuration from
DebugtoAmulet. - Build and run the host. (Press the play button.)
You have the following options to run the electrum TXE plugin:
- Build and run the repository's electrum.
- Use already installed electrum. (Note: it's not working on portable electrum.)
To bulid and run electrum, you have to complete the following steps:
- Create python virtual environment at
./electrum. (Optional) - Follow the steps in Electrum's Readme (Note: for windows users, we already compiled the file
./libsecp256k1-0.dll). - Install the requirements file at
./requirements.txt. - Install the requirements file at
./electrum/contrib/requirements/requirements.txt. - Run
$ python ./electrum/run_electrum [--testnet]
Just copy the files at ./electrum/electrum/plugins/txe into the instalation folder. (Note: This wasn't tested.)
This project implements the following features:
- Create a wallet in the TXE.
- Sign a transaction from the TXE.
Note: The plugin is a proof of concept, hence we haven't developed the user experience.
Complete the following steps to create a new wallet:
- Create a new dummy standard wallet.
- Press
yesbutton on the new window to create a new wallet inside the TXE. - Enter a new password for the new wallet.
- Copy the public key and the bitcoin address from the new window.
- Create a new imported address wallet (
File > New/Restore). - Paste the copied bitcoin address.
- Enter a second password for the wallet.
- Enter the copied public key in the new opened window.
Complete the following steps to sign and broadcast a transaction:
- Go to
Sendtab. - Insert the reciever bitcoin address and the amount to pay.
- Press
Paybutton. - Enter the password.
- Press
Sendto sign and broadcast the transaction. - Press
Closeon the new opened window.