Coder Social home page Coder Social logo

sms-verification's Introduction

Parity SMS verification

Join the chat at https://gitter.im/ethcore/parity GPLv3

The following process verifies a number:

           confirm(token)
         +-------------------> +--------+
         |                     |contract|   puzzle(address, sha(token))
         |       +-----------> +--------+ <-----------+
         |       |                                    |
         |       | request()                          |
         |       |                                    |
         |       |                                    |
         |   +------+  POST /?number=…&address=…  +------+
         +-- |client| +-------------------------> |server| code=rand()
             +------+                             +------+ token=sha(code)
token=sha(code)  ^             SMS with code          |
                 +------------------------------------+
  1. client requests verification (request())
  2. client calls verification server (POST /?number=…&address=…)
  3. server generates code and computes token
  4. server posts challenge (puzzle(address, sha(token)))
  5. server sends SMS to client (with code)
  6. client computes token
  7. client posts response (confirm(token))

Now, anyone can easily check if a number is verified by calling certified(address) on the contract.

latest deployed SMSVerification.sol

Installation

git clone https://github.com/ethcore/sms-verification.git
cd sms-verification
npm install --production

Usage

The account calling puzzle has to be the delegate of the contract.

  1. Set up an account and put its password in a file.
  2. Run Parity with --jsonrpc-apis net,eth,personal,parity.
  3. Create a config file config/<env>.json, which partially overrides config/default.json.
  4. env NODE_ENV=<env> node index.js

Deploy to production using process managers like forever.


To run on both testnet and mainnet, just create two config files. Make sure to use

  • separate Parity processes listening on different ports (parity.host)
  • separate db files
  • separate ports to listen on (http.port)

sms-verification's People

Contributors

5chdn avatar derhuerst avatar gavofyork avatar greenkeeper[bot] avatar tomusdrw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sms-verification's Issues

An in-range update of body-parser is breaking the build 🚨

Version 1.18.3 of body-parser was just published.

Branch Build failing 🚨
Dependency body-parser
Current Version 1.18.2
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

body-parser is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Release Notes 1.18.3
Commits

The new version differs by 32 commits.

There are 32 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of morgan is breaking the build 🚨

Version 1.9.1 of morgan was just published.

Branch Build failing 🚨
Dependency morgan
Current Version 1.9.0
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

morgan is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build could not complete due to an error (Details).

Release Notes 1.9.1
  • Fix using special characters in format
  • deps: depd@~1.1.2
    • perf: remove argument reassignment
Commits

The new version differs by 27 commits.

There are 27 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of solc is breaking the build 🚨

Version 0.4.24 of solc was just published.

Branch Build failing 🚨
Dependency solc
Current Version 0.4.23
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

solc is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Commits

The new version differs by 2 commits.

  • c3b0d91 Merge pull request #215 from ethereum/version
  • fbaa6f7 Set version to 0.4.24.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of config is breaking the build 🚨

Version 1.31.0 of config was just published.

Branch Build failing 🚨
Dependency config
Current Version 1.30.0
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

config is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Commits

The new version differs by 12 commits.

  • a6d49e5 Bump for 1.31 release
  • 76bebd8 Merge pull request #490 from SimonSchick/chore/deps
  • ce2a291 remove unused dependency and bump up json5
  • 66bd8e1 Merge pull request #486 from leonardovillela/node-env-define-multiple-load-files
  • 7e7c9cf Fix new line at end of files
  • a27b959 Add support for load multiple files by values defined in NODE_ENV
  • 54d2f71 Merge pull request #484 from bastbijl/issue-483-support-coffeescript
  • b0126a2 Fix coffeescript to 2.2.4
  • 1964867 Fix version of coffeescript to 2.3.1
  • becba67 Remove node_js 4 from travis test
  • b16d4a5 History log
  • 2112be4 Support using coffeescript without dash

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

No SMS received

I have successfully paid the 0.03 ether fee (https://etherscan.io/tx/0x0235efef4df289425df6133956a81b90e4d54d4cfa59adab27b3d8edf868e5df), but I have not received an SMS. Furthermore it seems that the delegate address has not been active for the last 6 days (https://etherscan.io/address/0x00433f38561cc8799077c7E4e3CD6d0D777bd0e0) even though plenty other addresses, but my own, have tried to get verified. Whether it's your client that is down or what I don't know, but something seems to be wrong.

I have only personally paid the fee once, but I imagine that some of the people who paid the fee more than once with no luck, would be interested in a refund.

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.