Code Monkey home page Code Monkey logo

adamant-2fa's Introduction

ADAMANT 2FA Demo Application

What is ADAMANT 2FA

ADAMANT 2FA is a service to deliver one-time passwords (OTP) to ADAMANT Messenger account.

It's cheaper, more secure and reliable than SMS. ADAMANT 2FA advantages.

Live demo is available at 2fa-demo.adamant.im. For details read Presenting ADAMANT 2FA.

Prerequisites

Setup

Clone repository and install dependencies:

git clone https://github.com/Adamant-im/adamant-2fa.git
cd adamant-2fa && npm i
cd client && yarn install
cd ../

Create db-user and 2fa database:

sudo -u postgres psql
postgres=# CREATE USER "adamant-2fa" WITH PASSWORD 'password';
postgres=# CREATE DATABASE "adamant-2fa" WITH OWNER "adamant-2fa";

Set up md5 auth method. Get hba_file path:

postgres=# SHOW hba_file;
          hba_file
-------------------------------------
/usr/local/var/postgres/pg_hba.conf
(1 row)

Update hba_file and restart postgresql:

sudo nano /usr/local/var/postgres/pg_hba.conf
  local   adamant-2fa  adamant-2fa        md5
sudo service postgresql restart

Create tables for Loopback models:

cd server && node create-lb-tables.js
cd ../

Set up ADAMANT passPhrase to send 2fa codes from:

cp config.default.json config.json
nano config.json

The 2FA app uses config.json file. Enter your ADM passphrase into passPhrase field. Make sure this account has ADM to send messages with 2fa codes. How to create ADM account and get free tokens.

Note: 2FA demo uses adamant-console to send 2fa codes. If you have this tool installed separately, make sure it's default config doesn't exist, or set to mainnet and correct passPhrase.

Note: If the app doesn't send 2FA codes, debug console shows {"success":false,"errorMessage":"Wrong 'passPhrase' parameter"}. Make sure you've created config.json in the root directory (where package.json located), and you've set passPhrase and network parameters.

Start

Serve (Dev mode)

node .
cd client && yarn serve

Build

cd client && yarn build
yarn serve-build

Launch as process manager process

We recommend to use a process manager to start the program, f. e. pm2:

pm2 start ./server/server.js --name 2fa-demo-server
pm2 start ./client/server.js --name 2fa-demo-client

How to connect ADAMANT 2FA to your service

If you own a service (as email, exchange, financial interface, etc.) and want to add 2FA security for users, connect ADAMANT 2FA. To use ADAMANT 2FA, clone this project and modify client and server parts. Read more: How to connect ADAMANT 2FA to your business.

adamant-2fa's People

Contributors

adamant-al avatar confleux avatar graycraft avatar realgoodprogrammer avatar zyuhel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.