Devcoin Open Web Wallet configuration

This is a brief tutorial to explain how to install and setup the Devcoin Open Wallet, this document may be modified with the upcoming versions of the code.
First, you must read the technical specifications here:
Then you must download the source code of the application here:
I uploaded all the code you need to setup your own wallet including Code Igniter, recaptcha class and the Google's 2auth class.
You can see a working version of this project here:

Initial requirements covered

  • Auth script - We need a class that authenticates the user and provides a way to check if the user is still authenticated and timeout after N number of minutes.
    • I made a helper named auth_helper.php, you can find it in application/helpers with a lot of functions to cover all we need regarding security including session management, I didn't included a custom-made session handler because it's native to Code Igniter, to setup this feature you can edit the file config.php inside application/config, you must change the sess_expiration variable, but I did a way to know if the user is logged in including privileges:
$newdata = array(
                   	'idUser'  => $this->idUser,
                   	'privileges'     => $this->privileges,
                   	'loggedIn' => TRUE

  • 2FA script - Google 2FA should really be a common feature on any site now days, this should be available on day 1 of any web wallet.
    • I used the phpgangsta script ( ) to implement the Google 2FA, I adapted the script a little to be compatible with Code Igniter, to tell the truth, it was a little difficult to fulfill the task but for future developers I encapsulated the functionality in the auth_helper.php with a really easy calls.
  • Unit Tests - Must have unit tests required as part of the requirement with coverage over 85% to ensure bug free scripts.
  • Front End UI - Generic UI, simple to use.

Database configuration

First of all, you must create a database named as you want inside your MySQL server and run the script wallet.sql found in the route DB/Wallet, with that you'll have the all you need to store the information in the database.

When you got the tables in the database, you must edit the file named database.php, you can find it in the route application/config, you'll find the following:

$db['default']['hostname'] = '';
$db['default']['username'] = 'root';
$db['default']['password'] = 'root';
$db['default']['database'] = 'yourDB';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;

You must change the information depending on your database setup

Json configuration

In order to use the Devcoin wallet, you must configure the application/config/json.php file to fit your configurations.
If you need help to configure your wallet you can use the following links:[]=php&s[]=devcoin

$config['user'] = 'YourUserName';
$config['password'] = 'InsanelyHardPassword';
$config['ip'] = '';
$config['port'] = '8332';

Recaptcha configuration

You must configure the recaptcha script, the first step you must do is register yourself in this page: it will give you two keys, you must insert them in the recaptcha.php file found in application/config

Mail configuration

You must edit the email.php file inside application/config route indicating the basic information of the mail server and the body of the emails.
(Sometimes the e-mail reaches the spam carpet, but it's normal)

Final notes

With this configurations should be enough to run properly the first version of the wallet and maybe further releases.
Devtome | Devcoin | Open Source

QR Code
QR Code devcoin_open_web_wallet_configuration (generated for current page)