Skip to content
/ hako Public

📦 Hako (or "box" in Japanese) is a super secure decentralized file sharing application powered by Web 3.0 Unlike other file sharing services such as Dropbox and Google Drive. A project for the NuCypher + Coinlist Hackathon March 2019 https://coinlist.co/build/nucypher.

Notifications You must be signed in to change notification settings

drbh/hako

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hako

Python 3.6 License

Welcome to Hako

login

Hako (or "box" in Japanese) is a super secure decentralized file sharing application powered by Web 3.0

Unlike other file sharing services such as Dropbox and Google Drive, Hako does not place your keys in the hands of a large companies. The user is always in control of your keys and your data.

img

Hako leverages Web 3.0 peer to peer protocols so users can directly share data, as well as access to a distributed network layer or a trusted federated re encryption network. Hako has no single point of failure and allow non-trusted 3rd parties to delegate access to data - while never being able to decipher the original message.

Resources

https://medium.com/@david.richard.holtz/hako-3825c3a033d7

https://www.youtube.com/watch?v=_0Jl836ETLo

https://github.com/drbh/ncipfs

Concepts

NUCID

We introduce a new concept of a NUCID all a NUCID is, is a combination of a NuCypher policy and a IPFS CID. A NUCID specifices alot of information in not tooooo many characters. It have the access policy, the signing key, the humanreadble label and the CID (location and sig of encrypted data)

This all lets you create NUCID's or download data via NUCID's. You can alwayws request a NUCID you don't have access too - you just won't be able to decrypt it. If the policy allows you access, your Bob keys will allow yout to decrypt.

Futari

We introduce a new concept of a Futari (or "two people" in Japanese)

Viewing files

Once your all setup and either you've uploaded a file, or someone has shared a NUCID with you, simply click on the 📖 to view the decrypted file contents.

try to view this image (without permission) from IPFS here

Install

git clone https://github.com/drbh/hako.git
cd hako

now we grab all the deps

pipenv install --skip-lock --pre

Run App

pipenv shell
python app.py 

Note

you may have to edit the local IP address in app/src/App.vue and in app.py to your computers local IP (if running in offline mode) otherwise change the IPs accordingly to the networks you want to connect to.

you should see

(hako) bash-3.2$ python app.py 
Automatic Mode A Public Gateway will be used as a fallback
 * Serving Flask app "app" (lazy loading)
 * Environment: production
   WARNING: Do not use the development server in a production environment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)

Endpoints

/data POST 
/create_user POST
/allow_access POST
/decrypt_message POST
/my_public_keys POST

About

📦 Hako (or "box" in Japanese) is a super secure decentralized file sharing application powered by Web 3.0 Unlike other file sharing services such as Dropbox and Google Drive. A project for the NuCypher + Coinlist Hackathon March 2019 https://coinlist.co/build/nucypher.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published