Code Monkey home page Code Monkey logo

barong's Issues

Adding Phone verification system

Phone verification has 2 purposes :
1- Verify profile level=2 (email is level=1)
2- 2FA with an SMS check

Account has_many Phones

Each users can add and verify several mobile phone numbers
each one of them will need an sms confirmation from twillio to be enabled

Any phone can be used for 2FA challange.

We need to parse phone to list Country in Phones tables.

Add .level field

Need to add field level for Account to display level of verification

Make admin panel fixes

Admin panel fixes:

  1. Fixes regarding with tables styles;
  2. Fixes regarding with redirecting in the application page;
  3. Fixes regarding with notifications styles;

image 2018-02-20 09-49-01
barong admin 2018-02-20 10-42-15
image 2018-02-19 17-52-30
image 2018-02-21 14-28-23

Adding KYC

On the client side member needs to have ability to input information and upload a photo of document

It looks like this in peatio right now so we should have something similar
screenshot from 2018-01-18 15-34-02

And on the admin panel we need to add ability to verify a member

2FA signing service specs

OTP Sign in management api

Abiltity to receive and sign a JSON object if the otp code is valid

AppLogic

{
  uid: 'ID4242',
  otp: 432567,
  payload: "BASE64_ENCODED_JSON_OBJECT"
}

Validation steps:
1- Check UID exist
2- Check if otp is valid
3- Check base64 is valid
4- Check if payload is valid json after decoding

DO:

  • Sign the payload and return an RFC 7516 full json object using multi-sig-jwt gem

Validates otp for user(uid) and sign the payload with a JWT and
returns it a structure like:

     {
      "payload":
       "eyJpc3MiOiJqb2UiLA0KICJleHAiOjEzMDA4MTkzODAsDQogImh0dHA6Ly9leGF
        tcGxlLmNvbS9pc19yb290Ijp0cnVlfQ",
      "signatures":[
       {"protected":"eyJhbGciOiJSUzI1NiJ9",
        "header":
         {"kid":"2010-12-29"},
        "signature":
         "cC4hiUPoj9Eetdgtv3hF80EGrhuB__dzERat0XF9g2VtQgr9PJbu3XOiZj5RZ
          mh7AAuHIm4Bh-0Qc_lF5YKt_O8W2Fp5jujGbds9uJdbF9CUAr7t1dnZcAcQjb
          KBYNX4BAynRFdiuB--f_nZLgrnbyTyWzO75vRK5h6xBArLIARNPvkSjtQBMHl
          b1L07Qe7K0GarZRmB_eSN9383LcOLn6_dO--xi12jzDwusC-eOkHWEsqtFZES
          c6BfI7noOPqvhJ1phCnvWh6IeYI2w9QOYEUipUTI8np6LbgGY9Fs98rqVt5AX
          LIhWkWywlVmtVrBp0igcN_IoypGlUPQGe77Rw"},
       {"protected":"eyJhbGciOiJFUzI1NiJ9",
        "header":
         {"kid":"e9bc097a-ce51-4036-9562-d2ade882db0d"},
        "signature":
         "DtEhU3ljbEg8L38VWAfUAqOyKAM6-Xx-F4GawxaepmXFCgfTjDxw5djxLa8IS
          lSApmWQxfKTUJqPP3-Kg6NU1Q"}]
     }

Create Account Migration

Fields:

  • Email
  • Password (encrypted)
  • role (small text string: admin, accountant, operator, guest, member)
  • level (unsigned int: 0,1,2,3,4)
  • state (active)

User has ability to get back to already passed step verification

Step to reproduce:

  1. Pass the verification to the step - "uploading documents";
  2. Get back to the step "verify your mobile phone" by clicking on browser button "Back"
    Actual result:
    User has been stuck on step "verify your mobile phone".
    Expected result:
    User can not get back to already passed step of verification.

Adding 2FA auth. with Google Auth.

Once a user verified his phone with a 2FA,
he can activate 2FA with Google Auth.

We need to generate a seed for TOTP with a QR code
The user needs to scan or enter the seed
We need to ask him to clearly write down the seed on a piece of paper.

Then user can enter a 2FA code and it should activate the 2FA.

Create a light layout maybe using bootstrap

Layout should be very lite,
centered fixed, but mobile compatible.

We probably don't need a navbar header and footer

we need simple text links around the main content box

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.