Awesome
WARNING
This piece of software is provided without warranty of any kind, use it at your own risk. UBIC is currently "Beta" software, bugs might occur.
Overview
UBIC is a crypto-project that is meant to democratize currency creation minting new currency in favor of everyone, not only in favor of banks.
UBIC works like basic income on a blockchain, but can also be implemented by other projects for KYC-applications. UBIC will soon allow reliable pseudonymous voting (one person, one vote) and other applications as well that require a functionality to avoid sybil attacks.
Sybil attacks - people receiving multiple basic incomes at once - are harder on UBIC than elsewhere because you are required to prove your uniqueness with a -Non-transferable proof of Signatur-Knowledge- of your E-Passport.
Your identity is NOT revealed to other participants of the system.
The UBIC-Wallet is still in an early stage but does provide all basic functionalities a Wallet requires. You can send transactions, receive them and register a passport in order to get your UBIC cryptoUBI.
If you like the idea of the project you can support its development on github: UBIC Android wallet source code & UBIC node source code
- Block explorer
- UBIC Website
- Whitepaper
- Bitcointalk announcement
- Installation on Linux
- Command line interface
- Development environment
Installation on Linux
Install dependencies
sudo apt-get update
sudo apt-get install git cmake gcc make libleveldb-dev libpcsclite1 libpcsclite-dev libboost-all-dev gcc g++ ntp
Verify that libboost is version >= 1.60 using apt-cache policy libboost-all-dev
if it isn't run the commands bellow
/!\ only if apt-cache policy libboost-all-dev returns a value below 1.60
cd /usr/local/src
sudo wget https://dl.bintray.com/boostorg/release/1.64.0/source/boost_1_64_0.tar.gz && sudo tar xzvf boost_1_64_0.tar.gz && cd boost_1_64_0
./bootstrap.sh --prefix=/usr/local --with-libraries=all
./b2 install
Use ntp
sudo apt-get install ntp
sudo systemctl enable ntp
Install OpenSSL 1.1.1d
cd /usr/local/src
sudo wget https://www.openssl.org/source/openssl-1.1.1f.tar.gz && sudo tar xzvf openssl-1.1.1f.tar.gz && cd openssl-1.1.1f
sudo ./config -Wl,--enable-new-dtags,-rpath,'$(LIBRPATH)'
sudo make
sudo make install
openssl version # make sure it is version 1.1.1f
#additional steps might be required:
sudo cp /usr/local/lib/libcrypto.so.1.1 /usr/lib
sudo cp /usr/local/lib/libssl.so.1.1 /usr/lib
Install UBIC
cd /usr/local/src
sudo git clone https://github.com/UBIC-repo/core.git
sudo chmod 777 -R core
cd core
cmake CMakeLists.txt
make
sudo make install
Run the server
/etc/init.d/ubic start
Stop the server
/etc/init.d/ubic stop
Running a node
If you are using a firewall make sure that port 1334 is open or TCP connections. This can be ensured by running:
sudo ufw allow 1334/tcp
Open the web interface
To open the web interface you have to open 127.0.0.1:6789/#yourApiKey in your browser.
You will find your api key in the ~/ubic/config.ini
file.
/!\ Warning: For security reasons the web interface can not be opened remotely by typing your server ip:6789/#yourApiKey. If you want to open the web interface of your server do a port forwarding over SSH, and forward the ports 6789 and 12303 to the ports 6789 and 12303 on your local machine.
Register a passport
To register a passport go to the "My UBI" tab and click "Register passport", then enter your passport number, date of birth and the date of expiry. Make sure your NFC reader is plugged and ready, put the passport on top of it. To help you on some readers a green light appears when it found a tag. Click "Register passport", if it doesnt work try again by turning your passport, opening it. If it still doesn't work open an issue on Github.
Note that to work your node should be synced.
An easier way is to use the Android Wallet App either from the play store or from F-Droid.
Whatever option you choose, please make sure to backup your private keys.
Command line interface
ubic web
will display the URL for accessing the web interface.
Web interface: http://127.0.01:6789#839073d84f8ee9dbe98d02b3
ubic status
will get your current node status.
Synced: true
Blockchain height: 4114
Best block hash: 0b9751f604582ddb405e1dfa1cbf202ecbd0621b3b7f9d70ba21456675a017c8
ubic add-peer <ip address>
will add a new node to your node list.
Adding peer succeeded
ubic peers
will return the peers you are connected to.
<ip>, blockheight: <height>
Development environment
UBIC was developed using CLion. If you want to work on the source code it is recommended that you use the same IDE.