kyber-logo.png

NuCypher

Do any one of the following ideas:

Idea 1: Build a GUI interface for the NuCypher network

Bonus points for included wallet or the ability to stake a proxy node from it.

Idea 2: Build a GUI interface for the network that’s portable and easy to distribute

This means avoiding software that requires system configuration (ie: NodeJS). Can also be a web interface, but it must be packaged with an easy to transport/run executable. This interface doesn’t need to make calls to the network API yet. It just needs to be built so that we can add the code when it’s ready. Must be clean and readable. Either node management console (!), or UI for Alice to grant permissions. Some ideas for inspiration: * https://sunder.readthedocs.io/en/latest/generate_secret_shares.html 

Idea 3: Applications that utilize NuCypher in interesting and novel ways

Such as:

A. Sharing encrypted files (“Decentralized Dropbox”) 

B. End-to-end encrypted group chat (“Encrypted Slack”) 

C. Decentralised Database 

D. Patient-controlled electronic health records (EHR) 

E. Decentralized digital rights management (DDRM) 

F. Blind identity management 

G. Secret credentials management for scripts and backend applications 

H. Shared credentials and enterprise password management 

I. Mandatory access logging 

J. Mobile device management (MDM) and revocation

Idea 4: Store seed node metadata for network bootstrapping in a decentralized way

When a NuCypher node startups up it needs to contact a seed node in order to connect to the NuCypher network. Currently, we store the seed node metadata information on S3, however, it would be preferable to bootstrap the network in a decentralized way. An ideal way would be to have software which is co-hosted with NuCypher nodes (or, ideally, something written in Python which can be embedded in NuCypher nodes) seeding the list of seed nodes on IPFS. The correct address for IPFS list of seed nodes (which is a folder with files) should be also defined. It will be ideal if ENS is pointing to it, and NuCypher node resolves it by ENS name (from Python). Geth instance will be available at the node. Alternatively, cloudflare IPFS gateway can be used [https://blog.cloudflare.com/distributed-web-gateway/] (not ideal though, because not decentralized)

Idea 5: Metamask-like browser extension for encrypting, decrypting, granting and revoking permissions through NuCypher

While the javascript version of NuCypher isn’t yet there, it is still possible to interact with NuCypher network using the Python code from browsers. For that one needs to use protocol called “Native messaging”.

Both Chromium and Firefox provide example extensions using this API and Python code: https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/docs/examples/api/nativeMessaging https://github.com/mdn/webextensions-examples/tree/master/native-messaging

Since NuCypher reference implementation is written in Python, these examples are a good start for building an extension.