Giter VIP home page Giter VIP logo

royale's Introduction

royale

p2p seed/starter project using koa2, rebel-router

  • test driven javascript development
  • isomorphic functions
  • gundb serverless immutable transactions
  • use of pgp cryptographic functions
  • webpack deployment
  • es7 async/await flow control (or at least promise based)
  • heavy use of promise aware partial application (anticipating aggressive memoize caching)

installation

git clone https://github.com/colealbon/royale.git
cd royale;
npm install;
(modify config/options.js if needed)
npm test;
npm start;   

usage

navigate to localhost:3000 (or settings from config/options.js)

todo

  • Install node/koa/webpack
  • Install gundb
  • make a deck of cards
  • install rebel router
  • Alice and Bob exchange keys
  • Mental Poker
    • Alice and Bob agree on a certain "deck" of cards. In practice, this means they agree on a set of numbers or other data such that each element of the set represents a card.
    • Alice picks an encryption key A and uses this to encrypt each card of the deck.
    • Alice shuffles the cards.
    • Alice passes the encrypted and shuffled deck to Bob. With the encryption in place, Bob cannot know which card is which.
    • Bob shuffles the deck.
    • Bob passes the double encrypted and shuffled deck back to Alice.
    • Alice decrypts each card using her key A. This still leaves Bob's encryption in place though so she cannot know which card is which.
    • Alice picks one encryption key for each card (A1, A2, etc.) and encrypts them individually.
    • Alice passes the deck to Bob.
    • Bob decrypts each card using his key B. This still leaves Alice's individual encryption in place though so he cannot know which card is which.
    • Bob picks one encryption key for each card (B1, B2, etc.) and encrypts them individually.
    • Bob passes the deck back to Alice.
    • Alice publishes the deck for everyone playing (in this case only Alice and Bob, see below on expansion though).

royale's People

Contributors

colealbon avatar

Watchers

James Cloos avatar  avatar

royale's Issues

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.