All Projects → byteball → obyte-hub

byteball / obyte-hub

Licence: MIT license
Hub for Obyte network

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to obyte-hub

xdagj
XDAGJ is an implementation of XDAG in Java. https://xdag.io
Stars: ✭ 81 (+376.47%)
Mutual labels:  dag, distributed-ledger-technology, p2p-network
microsocial
Microsocial is an experimental social platform that takes a peer-to-peer approach to social media.
Stars: ✭ 21 (+23.53%)
Mutual labels:  p2p-chat, p2p-network
django-postgresql-dag
Directed Acyclic Graphs with a variety of methods for both Nodes and Edges, and multiple exports (NetworkX, Pandas, etc). This project is the foundation for a commercial product, so expect regular improvements. PR's and other contributions are welcomed.
Stars: ✭ 23 (+35.29%)
Mutual labels:  dag, directed-acyclic-graph
activeledger
Activeledger is a powerful distributed ledger technology.
Stars: ✭ 17 (+0%)
Mutual labels:  dlt, distributed-ledger-technology
breaking cycles in noisy hierarchies
breaking cycles in noisy hierarchies
Stars: ✭ 59 (+247.06%)
Mutual labels:  dag, directed-acyclic-graph
batching-toposort
Efficiently sort interdependent tasks into a sequence of concurrently-executable batches
Stars: ✭ 21 (+23.53%)
Mutual labels:  dag, directed-acyclic-graph
ex-bond-issuance
Reference DAML application demonstrating a bond issuance use case.
Stars: ✭ 16 (-5.88%)
Mutual labels:  dlt, distributed-ledger-technology
laravel-dag-manager
A SQL-based Directed Acyclic Graph (DAG) solution for Laravel.
Stars: ✭ 24 (+41.18%)
Mutual labels:  dag, directed-acyclic-graph
vue-dag
🏗 Data-driven directed acyclic graph (DAG) builder for Vue.js
Stars: ✭ 37 (+117.65%)
Mutual labels:  dag, directed-acyclic-graph
ex-healthcare-claims-processing
Reference DAML application demonstrating a healthcare use case.
Stars: ✭ 27 (+58.82%)
Mutual labels:  dlt, distributed-ledger-technology
blockchain-multichain
Application for proposals using blockchain with MultiChain.
Stars: ✭ 18 (+5.88%)
Mutual labels:  dlt, distributed-ledger-technology
minitox
Minimal client for Tox
Stars: ✭ 65 (+282.35%)
Mutual labels:  p2p-chat
KinectUtil
This project solves the problem of mismatching between rgb camera and depth camera of Kinect camera. And we can get higher quality point cloud model than Kinect itself. We solve the problem by first using both DLT and Zhangzhengyou‘s checkerboard to calibrate the camera, and then applying the calibrated parameters to project and re-project from…
Stars: ✭ 28 (+64.71%)
Mutual labels:  dlt
react-monitor-dag
A React-based operation/monitoring DAG diagram.(基于React的运维/监控DAG图)
Stars: ✭ 57 (+235.29%)
Mutual labels:  dag
jami-overlay
Jami (formerly Ring (formerly SFLphone)) is a SIP compatible softphone for GNU/Linux.
Stars: ✭ 22 (+29.41%)
Mutual labels:  p2p-chat
ipfs-dag-builder-vis
See how the DAGs get built
Stars: ✭ 19 (+11.76%)
Mutual labels:  dag
metahelm
Install dependency graphs of Kubernetes Helm Charts
Stars: ✭ 70 (+311.76%)
Mutual labels:  dag
Slack-Stock-DAG
This repository holds a list of cool resources for Silica.
Stars: ✭ 94 (+452.94%)
Mutual labels:  dag
ent
No description or website provided.
Stars: ✭ 33 (+94.12%)
Mutual labels:  dag
P2PChatRoom
基于Qt的P2P聊天软件实现,主要由多个聊天客户端和一个中心注册服务器组成。
Stars: ✭ 57 (+235.29%)
Mutual labels:  p2p-chat

Hub for Obyte network

This is a node for Obyte network that serves as relay, plus facilitates exchange of end-to-end encrypted messages among devices connected to Obyte network. The hub does not hold any private keys and cannot send payments itself.

The messages are used for the following purposes:

  • Convey private payment information from payer to payee.
  • Exchange partially signed transactions when sending from a multisig address. One of the devices initiates a transaction and signs it with its private key, then it sends the partially signed transaction to the other devices that participate on the multisig address, the user(s) confirm the transaction on the other devices, they sign and return the signatures to the initiator.
  • Multilateral signing, when several addresses sign the same unit, e.g. when exchanging one asset for another, or when signing a contract. The exchange of messages is similar to the multisig scenario above.
  • Plain text chat between users, in particular, users can send each other the newly generated addresses to receive payments to.
  • Plain text chat with bots that offer a service and can receive or send payments. Faucet is an example of such bot.

The hub helps deliver such messages when the recipient is temporarily offline or is behind NAT. If the recipient is connected, the message is delivered immediately, otherwise it is stored and delivered as soon as the recipient connects to the hub. As soon as delivered, the message is deleted from the hub.

Since all messages are encrypted with the recipient's key, the hub cannot read them.

Users set their hub address in their wallet settings. The default hub is wss://obyte.org/bb but users can change it to your hub address.

Install

Install node.js, clone the repository, then say

npm install

Set up a proxy, such as nginx, to forward all websocket connections on a specific path to your daemon running the hub code. See example configuration for nginx in ocore documentation.

Run

node start.js > log &

Customize

If you want to change any defaults, refer to the documentation of ocore, the core Obyte library require()'d from here.

Push notifications

Android

To enable push notifications for Android users of your hub you need to create a new project in Google Console https://console.developers.google.com and add Google Cloud Messaging API. In your hub's conf (conf.js or conf.json) add these two settings copied from the Google Console:

  • pushApiProjectNumber: get it from settings (under dots menu in the upper right)
  • pushApiKey: your API key

iOS

You need a private key generated by Obyte Team for you, key_id and team_id to communicate with APNS servers on behalf of Obyte app bundle, email us for ones: byteball at obyte.org, then configure your hub (conf.js or conf.json) to enable notifications.

  • APNsAuthKey : full path to .p8 private key file or set it directly to content of this private key file
  • keyId : key id, it is encoded in .p8 file name (AuthKey_6M3W3J9D8Y.p8 => key id will be 6M3W3J9D8Y)
  • teamId : team id, we will provide it in email along with private key file
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].