If you don’t have a crypto “hardware wallet” this might be the second best option for maximum security. This tutorial will show you how to turn a random USB stick, recommend 8GB, into a Maximum Security Garlicoin Vault. If you need any help with something in this guide contact me on Discord with @ar0n#1462.

Requirements

2 USB sticks.

Possibility to boot from a USB stick.

A working internet connection.

2 GB of RAM to work smoothly.

Tails requires a 64-bit x86–64 compatible processor.

Tails

To install Tails onto a USB, simply follow their guide here. Make sure to do the 2 USB setup in order to get the full functionality of Tails. If you come across issues when booting into the USB, make sure the USB is plugged into your motherboard and not the front ports. Also make sure to select UEFI on newer motherboards, maybe not on the final USB but certainly on the first one. When you make the persistence, select Personal Data, APT Packages and APT Lists and choose a secure password that you won’t forget.

Installing Garlium

Before entering your persistence login on Tails, set an administrator password that will be used only for this session to install the required packages.

Now that you are logged into Tails, open a console and run:

sudo apt update sudo apt install python3 python3-pip python3-virtualenv git proxychains virtualenv python3-dev libssl-dev gcc

This should install all of the required packages to run Garlium. Next, we are going to git clone Garlium into the Persistent folder so that it stays, even after reboot.

cd ~/Persistent git clone https://github.com/xSke/Garlium cd Garlium

Now we are going to create a virtual environment for Python3 to setup Garlium:

proxychains virtualenv ./ --python=python3

Now we’re going to install Garlium and it’s dependencies, keep in mind the first command sometimes returns “timeout” at the end. This is normal and can be ignored by simply Ctrl+C.

proxychains bin/pip3 install PyQt5 proxychains bin/python3 setup.py install

Now we can run Garlium, skip setting up nodes to connect to as in the future this wallet shouldn't even be able to talk to the internet because of the security risks it proposes. Don’t setup your secure wallet yet just check if Garlium starts.

bin/python3 ./garlium

Restart your live USB, before logging in follow the instructions below!

How to Use The Wallet

Now that we have gone through the time and effort to make this wallet, it’d be a waste destroying our progress and exposing it to the outside world. Before you login to your Tails USB system, in the same place we set an administrator password, there is also an option to disable all internet. Every time you use this USB, make sure you set this option otherwise you risk exposing your wallet to the outside world.

Final Setup

WARNING: Before and after generating the wallet on the USB, make sure that you are running Tails in a no internet mode. To do so, on the Tails Greeter (where you set admin password) change the Network Configuration to “Disable all networking”. This will prevent your wallet from being exposed. Do this every time you boot Tails.

To make transactions with this setup, you will need to generate a wallet in Garlium on the USB. Get the public key to it with Wallet -> Information, and transfer import this public key into the Garlium on your main PC. Standard wallet -> Use public or private keys. Don’t worry about exposing this public key as it doesn’t give anyone access to your wallet.

Create an unsigned transaction

Now that you have a Garlium USB Stick and a watch-only wallet on your main PC you can make a transaction. Go to the “send” tab on your online watching-only wallet, input the transaction data and press “Send…”. A window opens up, informing you that a transaction fee will be added. Continue. In the window that opens up, press “save” and save the transaction file somewhere on your computer. Close the window and transfer the transaction file to your offline machine (e.g. with a usb stick).

Signing the transaction

On your USB offline wallet, select Tools -> Load transaction -> From file in the menu and select the transaction file created in the previous step. Press “sign”. Once the transaction is signed, the Transaction ID appears in its designated field. Press save, store the file somewhere on your computer, and transfer it back to your online machine.

Broadcast your transaction

On your online machine, select Tools -> Load transaction -> From File from the menu. Select the signed transaction file. In the window that opens up, press “broadcast”. The transaction will be broadcasted over the Garlicoin network.

Done!

You know have a functioning “cold storage” wallet that is more secure than Fort Knox. -ar0n#1462

GRLC: GSQg1cViEjoXAGZmYhY7eKsCoX1jsGQ78Y

BTC: 1MGfyTvRJhuBWiEgP9Ziwn3cBdD41dcdL3