Bitcoin Forum
November 14, 2019, 06:39:45 PM *
News: 10th anniversary art contest
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Armory on Raspberry Pi (DIY PiWallet)  (Read 11644 times)
Right13
Sr. Member
****
Offline Offline

Activity: 473
Merit: 250


Cricetus cricetus


View Profile
July 09, 2016, 07:16:26 PM
 #1

Just made offline (cold) wallet with Armory and Raspberry Pi - DIY "PiWallet" (c) and wrote step-by step instruction in Russian:
https://bitcointalk.org/index.php?topic=1544726.0

Anyone interested in this one in English?
I can try to translate (but my English not perfect Smiley ).

BTC: 19SqQ58wue4v4n9zpdK9KdtXGUUEP3qvsp
The Bitcoin Forum is turning 10 years old! Join the community in sharing and exploring the notable posts made over the years.
frappster
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
July 10, 2016, 01:39:08 AM
 #2

I would be interested in this. I have a spare Raspberry Pi that isn't already assigned to another project and would love to give this a try as opposed to buying a netbook as a cold/offline wallet.

Please reply if you follow through with the translation. Thanks!
Right13
Sr. Member
****
Offline Offline

Activity: 473
Merit: 250


Cricetus cricetus


View Profile
July 10, 2016, 08:49:40 AM
Last edit: July 11, 2016, 07:23:44 PM by Right13
 #3

Anyone who have several bitcoins, must care of safety.
Easy way - buy a hardware wallet Trezor https://bitcointrezor.com/ - 99 USD or PiWallet http://www.pi-wallet.com/ - 124.95 EUR.
But what if you want to protect your Bitcoins by cheapest way?
Solution - do PiWallet by yourself. Raspberry Pi and the SD card will cost about $ 40.

Step by step instruction.

Attention! The author of this guide disclaims all responsibility for everything that happens with your Bitcoins.
To follow or not to follow these instruction - your conscious choice, and your conscious responsibility.


So, what we need for DIY PiWallet:

Hardware:

Raspberry Pi model B
SD card on 8 Gb
The power supply for the Raspberry Pi (phone charger with micro USB) or a micro USB cable
USB flash stick.
SD card reader
USB keyboard and mouse
HDMI cable and HDMI TV / monitor or DVI monitor + adapter DVI-HDMI

Optionally:

Case for Raspberry Pi

Software:

Armory wallet v0.94.1 for online computer - https://github.com/goatpig/BitcoinArmory/releases/tag/v0.94.1
Raspbian image https://www.raspberrypi.org/downloads/raspbian
Ubuntu 14.04 http://www.ubuntu.com/download - I used tis version, but i think you can use 16.04 or any other version.
If you do not want to install Ubuntu on your PC you can use VirtualBox.
Armory wallet v0.94.1 for Raspberry Pi. Latest compiled version of Armory wallet for Raspberry Pi - 0.93.3, so let's compile v0.94.1.

Additional Ubuntu packages to compile Armory wallet:
git-core
build-essential
pyqt4-dev-tools
swig
libqtcore4
libqt4-dev
python-qt4
python-dev
python-twisted
python-psutil

1. Install Raspbian image to SD card:

Start Ubuntu.
Run terminal:
Ctrl+Alt+T

Download Raspbian image:
Code:
mkdir raspbianimage
cd raspbianimage
wget https://downloads.raspberrypi.org/raspbian_latest
Insert SD card into a card reader and run the terminal (Ctrl+Alt+T)
Code:
lsblk
depending on size of your card (for example 8Gb card have size about 7,8G) find the "letter" of our card.
My own was - sdf
Code:
sudo dd bs=16k if=2016-05-27_raspbian_jessie.img of=/dev/sdx
(x - a letter of SD card from lsblk command)
Attention!!! dd command - very dangerous. Do not confuse the drive letter where you write the image!!!

For this step you also can use Windows and program Win32DiskImager.

2. Compile Armory for Raspberry Pi:

Start Ubuntu.
Update the list of packages:
Code:
sudo apt-get update
Install necessary packages to compile Armory:
Code:
sudo apt-get install git-core build-essential pyqt4-dev-tools swig libqtcore4 libqt4-dev python-qt4 python-dev python-twisted python-psutil
Download Armory source code:
Code:
cd ~
git clone https://github.com/goatpig/BitcoinArmory.git
Compile the Armory for the Raspberry Pi:
Let's edit script due to chnaged package versions in Raspbian:
Code:
cd BitcoinArmory/r-pi
nano crosscompile.py
change the lines
PY_ARMHF1 = 'https://archive.raspbian.org/raspbian/pool/main/p/python2.7/libpython2.7-dev_2.7.11-4_armhf.deb'
PY_ARMHF2 = 'https://archive.raspbian.org/raspbian/pool/main/p/python2.7/libpython2.7-minimal_2.7.11-4_armhf.deb'
to
PY_ARMHF1 = 'https://archive.raspbian.org/raspbian/pool/main/p/python2.7/libpython2.7-dev_2.7.9-2_armhf.deb'
PY_ARMHF2 = 'https://archive.raspbian.org/raspbian/pool/main/p/python2.7/libpython2.7-minimal_2.7.9-2_armhf.deb'
Ctrl + X, Y, Enter
Code:
cd ..
The current version of these packages can be found at: https://archive.raspbian.org/raspbian/pool/main/p/python2.7/

Compile:
Setup cross-compiler:
Code:
python r-pi/crosscompile.py setupcrosscompiler
Size of downloaded packages ~ 590Mb.
and compile:
Code:
python r-pi/crosscompile.py

3. Install Armory at Raspberry Pi:

Ubuntu part.

Start Ubuntu.
To install wallet we will use the Raspberry Pi Offline Bundle from official Armory site that include all necessary packages.
Download Armory Offline Bundle from official Armory site:
Code:
cd ~
wget https://www.bitcoinarmory.com/downloads/bitcoinarmory-releases/armory_0.93.3_rpi_bundle.tar.gz
And unpack:
Code:
tar -xvzf armory_0.93.3_rpi_bundle.tar.gz
Remove the old compiled version of the Armory (0.93.3)
Code:
rm -r ./OfflineBundle/armory_0.93.3_raspbian-armhf.tar.gz
and replace with new version:
Code:
cp ~/BitcoinArmory/armory_0.94.1_raspbian-armhf.tar.gz ~/OfflineBundle/
Correct the installation script:
Code:
nano OfflineBundle/Install_DblClick_RunInTerminal.py
and replace command gksudo with sudo

# Installs all the dependencies
execAndWait('gksudo dpkg -i *.deb')

# Puts everything in to /usr/share/armory and /usr/lib/armory
execAndWait('gksudo "tar -zxf %s -C /"' % installer)

and in the second line delete double quotes. Here is what you should have:

# Installs all the dependencies
execAndWait('sudo dpkg -i *.deb')

# Puts everything in to /usr/share/armory and /usr/lib/armory
execAndWait('sudo tar -zxf %s -C /' % installer)

Ctrl+X, Y, Enter

Copy to SD card:
Code:
sudo mkdir /media/<SDcard/systempartition>/home/pi/OfflineBundle
sudo cp ~/OfflineBundle/* /media/<SDcard/systempartition>/home/pi/OfflineBundle
Replace <SDcard/systempartition> with your path, which you can get from command
Code:
lsblk

Alternative way: copy this one to USB stick.
Then in next part copy OfflineBundle from stick to Raspbery Pi.

Raspberry Pi part.

Install Armory at Raspberry Pi:
Insert SD card and connect keyboard, mouse, monitor / TV and power supply to Raspberry Pi.
Wait until Raspberry Pi start.
Run terminal:
Ctrl+Alt+T
Code:
cd OfflineBundle
python Install_DblClick_RunInTerminal.py
4. Create offline wallet (cold storage):

Run the Armory by double clicking on the icon or from terminal:
Ctrl+Alt+T
Code:
armory

Create wallet. After confirming encryption password wallet will hang for several minutes - don't panic it's NORMAL.
Make a copy (copies) of the wallet.
I strongly recommend making the paper backup and store it in a safe place.
Attention! Anyone who get your paper backup - get access to all your Bitcoins!
Exception - paper backup with SecuPrint option - in this way you must store the SecuPrint code too!

In addition, for maximum security, I recommend
DO NOT CONNECT your Raspberry Pi to a network after the creation of offline wallet!

Now you can export watching only copy of your wallet to an online computer with a USB flash drive.
Watching only copy does not contain the private key. You can easy receive Bitcoins to watching only addresses,
but to spend you must sign the transaction by private key that stored in Raspberry Pi wallet.
For more information please refer to official Armory site: https://www.bitcoinarmory.com/

Any donations would be appreciated: 18k42wt1gyLxWMjctSisBKLph2EDpJfFtb

Donations for Armory developer: no published address yet.

BTC: 19SqQ58wue4v4n9zpdK9KdtXGUUEP3qvsp
eorituz
Member
**
Offline Offline

Activity: 92
Merit: 10


View Profile
July 11, 2016, 02:27:45 PM
 #4

Great Tutorial, but you might need to motivate that any connection to the internet - even the initial installing of Armory - could lead to a comprimization of the whole system.

Downloading every dependency and all the software on a different computer and installing it on the Pi using a USB-flash drive is even more secure and the way it should been done!
Right13
Sr. Member
****
Offline Offline

Activity: 473
Merit: 250


Cricetus cricetus


View Profile
July 11, 2016, 07:19:58 PM
 #5

Hmm. You are right. I need to clarify step 3. First part of this step use Ubuntu.
In this guide Raspberry don't connected to network.

P.S. Done.

BTC: 19SqQ58wue4v4n9zpdK9KdtXGUUEP3qvsp
zoufou
Member
**
Offline Offline

Activity: 112
Merit: 10


View Profile
July 11, 2016, 07:33:05 PM
 #6

What's the pros and cons of using bitcoin core instead of armory to manage my wallet ?
Right13
Sr. Member
****
Offline Offline

Activity: 473
Merit: 250


Cricetus cricetus


View Profile
July 12, 2016, 07:41:40 AM
 #7

Bitcoin Core vs Armory:

Pros:
- None

Cons:
- No paper backup
- No cold storage
- Many other "no" with standard Bitcoin Core wallet.

Anyway, to use Armory wallet you will need run standard Bitcoin Core too to manage blockchain.

Armory it's a wallet with advanced features.

BTC: 19SqQ58wue4v4n9zpdK9KdtXGUUEP3qvsp
DavidMc0
Newbie
*
Offline Offline

Activity: 50
Merit: 0


View Profile
February 09, 2017, 09:09:50 PM
 #8

Has anyone made a way of simply installing Armory on a Raspberry pi?

Unfortunately I can't run it on my 32-bit Windows tablet, as Armory have dropped support for that (64-bit required), so I bought a Raspberry Pi model 2 to use with Armory.

However, nothing I try seems to work.

I've used Raspbian, and tried installing it via the standard package installer, and for some reason it doesn't install. I tried electrum as well... and it just worked as it should).

I've downloaded the files for Raspberry Pi from Armory's web site & unzipped them, and none of them work.

I've seen tutorials like this one that make me think I'm mad because I'll need to take a course in heath-robinson computing just to install a flipping bitcoin wallet!

I've tried a script that someone helpfully made to automate this and other processes (https://github.com/aussiehash/Bitcoin-for-SBC), but this doesn't work on the latest Raspbian.

Can anyone please explain how it's so hard to install an app on a device when Armory even publish files that are supposed to work on the very device I have?

Any help would be greatly appreciated.
goatpig
Moderator
Legendary
*
Offline Offline

Activity: 2366
Merit: 1133

Armory Developer


View Profile
February 09, 2017, 09:46:53 PM
 #9

Has anyone made a way of simply installing Armory on a Raspberry pi?

Unfortunately I can't run it on my 32-bit Windows tablet, as Armory have dropped support for that (64-bit required), so I bought a Raspberry Pi model 2 to use with Armory.

However, nothing I try seems to work.

I've used Raspbian, and tried installing it via the standard package installer, and for some reason it doesn't install. I tried electrum as well... and it just worked as it should).

I've downloaded the files for Raspberry Pi from Armory's web site & unzipped them, and none of them work.

I've seen tutorials like this one that make me think I'm mad because I'll need to take a course in heath-robinson computing just to install a flipping bitcoin wallet!

I've tried a script that someone helpfully made to automate this and other processes (https://github.com/aussiehash/Bitcoin-for-SBC), but this doesn't work on the latest Raspbian.

Can anyone please explain how it's so hard to install an app on a device when Armory even publish files that are supposed to work on the very device I have?

Any help would be greatly appreciated.

My RPi setup works just fine. You need to elaborate on the errors you are seeing.

Lionidas
Hero Member
*****
Offline Offline

Activity: 1008
Merit: 1012


View Profile
February 11, 2017, 10:41:09 AM
 #10

I think I will try to use this as my first hardware wallet. Still waiting for the new trezor to come out and I think this looks like a cool concept for those one budget or until they can get enough funds to afford one when the second edition comes out.
It might cost a pretty penny. Smiley
DavidMc0
Newbie
*
Offline Offline

Activity: 50
Merit: 0


View Profile
February 12, 2017, 10:45:35 PM
 #11

My RPi setup works just fine. You need to elaborate on the errors you are seeing.

Thanks for your reply.

When trying to install from the Raspbian built in package manager there is no error code, it just seems to have finished but Armoury isn't installed.

When running the Raspberry Pi packages from the Armory website, there are so many errors I don't know where to begin - I'll try it again soon and post some of the errors.

Which distribution do you use with your setup that's working? Was it straight forward getting it set up / should it be easy enough for someone with CLIphobia?

Have you considered offering an official image that contains a basic Linux distribution with Armory already built in to make it dead easy for people to use Armory as a cold wallet on a raspberry pi by just flashing an SD card?
goatpig
Moderator
Legendary
*
Offline Offline

Activity: 2366
Merit: 1133

Armory Developer


View Profile
February 13, 2017, 05:02:08 PM
 #12

Quote
Which distribution do you use with your setup that's working?

Raspbian

Quote
should it be easy enough for someone with CLIphobia?

How has anything Linux not given you a heart attack yet? It's unrealistic to expect a Windows experience on Linux, let alone RPi.

Quote
Have you considered offering an official image that contains a basic Linux distribution with Armory already built in to make it dead easy for people to use Armory as a cold wallet on a raspberry pi by just flashing an SD card?

I don't think that's necessary. NOOBS makes setting up Raspbian really easy. Then it's just a matter of installing the .deb offline packet, which should be a single command:

Code:
sudo dpkg -i armory.deb

I made the current offline bundle when Raspbian was based off of Wheezy. I'm pretty sure they moved to Jessie now, so I can see how the old offline package would be broken. Your best bet is to wait for 0.96, where I'll making a new batch of offline signer bundles to support the new signer code.

Right13
Sr. Member
****
Offline Offline

Activity: 473
Merit: 250


Cricetus cricetus


View Profile
February 13, 2017, 05:27:48 PM
 #13

BTW, my "step-by-step instruction" is not so hard.
I'm not programmer or Linux geek, just advanced user, but it take only two evenings to make this one.
Try it.

BTC: 19SqQ58wue4v4n9zpdK9KdtXGUUEP3qvsp
DavidMc0
Newbie
*
Offline Offline

Activity: 50
Merit: 0


View Profile
February 13, 2017, 11:09:14 PM
 #14

Thanks again for your input.

How has anything Linux not given you a heart attack yet? It's unrealistic to expect a Windows experience on Linux, let alone RPi.

I think it almost has. I hate it any time I need to do anything on Linux (except android of course)!

I'll see if I can get an older version of Raspbian to try out, otherwise I'll wait for 0.96.

If it's as easy as running 'sudo dpkg -i armory.deb', I'd be very pleased... though I still think it's nuts to have to type an un-guessable phrase into a text box to install a package Cheesy

Should right clicking 'armory.deb' and saying open in the package manager equally work?

Quote
I don't think that's necessary

It may be beneficial, as if it's all packaged together ready to flash to an SD card, there won't be any changes to the linux distribution that breaks the compatibility, which it seems could be the problem with my setup. It would also save people needing to follow complex tutorials like the one on this thread to install Armory on the Raspberry Pi.

Quote
BTW, my "step-by-step instruction" is not so hard.
I'm not programmer or Linux geek, just advanced user, but it take only two evenings to make this one.
Try it.

Thanks - I may do if required, but it looks like it'll take at least good couple of hours to install an application, which seems insane. I do appreciate the guide and that you put it together to help people who have the patience to run through it (which may be me in a couple of weeks time if I can't find an easy solution!).
Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!