Dione is an anonymize and encrypted messaging system build on top on a peer to peer layer.

Overview

Dione Logo without Text GitHub issues GitHub Workflow Status GitHub Workflow Status GitHub release date GitHub last commit Docker Pulls GitHub top language

Secure and Anonymous Messaging

WARNING: Currently Dione is not ready to be used nor does it fulfill its goal of being an anonymous messenger. In order to achieve that every client's traffic and maybe every node's traffic hast to be routed through an Onion Router.

At the present moment the following anonymization networks are considered for integration. However, first other issues have to be resolved and none of these services have currently a stable, native and usable Rust client.

Service Favoured Client
Tor Arti
I2P I2p-rs (could be deprecated)
Lokinet (none)

What is Dione?

Dione is the attempt to build a messaging application that is as censorship resistant as possible. This is achieved by not relying on a single entity for storing and distributing messages. Instead, every message is split up into several parts and stored on several servers (nodes). These servers are only known to sender and receiver. This is achieved by a simplified Double Ratchet (Address Ratchet). In the background the Dione servers are connected via libp2p. Kademlia is utilized to find servers for the Address Ratchets Output and to find providers for message parts.

A more detailed description will follow. In the process of standardizing and improving of Dione breaking changes are very likely

Try out Dione yourself

There is a docker image, but this is still under heavy development and not suggested at the present moment.

Currently, there is no Dione main-net that one can just join. For now, you have to set up a test-net yourself.

Install

To install the server as well as the test client you need to have an up-to-date installation of Rust. To update Rust, run:

rustup update

Next you have to clone this repository and enter it. Then run the following command, to install the server as well as the test-client:

cargo install --path .

Alternatively you can run the executables shipped with the release.

Run Nodes

For reasons not fixed yet the application is not stable enough to run on a permanent net. For a net test net you need at least two peers that have to be able to connect to each other.

The server application has many optional arguments one can pass. For now we run the nodes in two terminals on the same computer. For starters just run the following:

dione-server --db-path node1 --ex 0.0.0.0:8010 --clear-address http://localhost:8010 --listen-address /ip4/0.0.0.0/tcp/0

Next open your browser and navigate to: localhost:8080 Copy the peer address starting with /ip4/127.0.0.1/tcp/. This is the libp2p address of the first node which the second node connects to. This address has to be set as the environment variable for remote peer with (run in new terminal window):

export PEER=address copied previous

Next start the second nodes with different parameters:

dione-server --db-path node2 --ex 0.0.0.0:8011 --clear-address http://localhost:8011 --listen-address /ip4/0.0.0.0/tcp/0 --web-http-port 8100

Up next: Sending messages!

Run Client

Open a new terminal (we call this terminal client-1). Run the test client in it with:

dione-test-client client1 --server http://localhost:8010

Open another terminal (we call this terminal client-2). Run the second client in it:

dione-test-client client2 --server http://localhost:8011

In terminal window client-2 one can see an Uuid, probably looking like this: d75258f6-b3b9-4639-87a5-055c5fcf9155 Copy this to your clipboard.

Change to client-1, select Add User. In the next step paste the previously copied Uuid. Select Initiate contact next. Accept the next step.

Copy the Uuid from client-1.

Change to client-2, select Add User. In the next step paste the previously copied Uuid. Select React on invitation next. Accept the next question. Change to client-1 and accept. Change to client-2 and accept again.

You can send and receive messages now.

Use the both terminal windows to send and recieve messages. The menu should be self-explanatory. Obviously a message has to be send, in order to receive one.

Contribute

There's a lot to do:

  • Fix a lot of bugs!
  • Custom libp2p transport
  • Slim dione-lib
  • Audit dione-lib
  • Better error handling and better recovery
  • Check of libp2p part by an expert. Many issues probably start here.
  • Document everything better
  • Make messages universally usable from more language (essentially remove bincode)
  • Implement dione-net-lib and dione-lib in App languages (Swift / Kotlin / Dart)
  • Program end-user-friendly app

If you want to contribute feel free to fork the repository, document your changes and create a pull request.

Comments
  • Test client doesn't work!!!

    Test client doesn't work!!!

    Hi I'm looking into contributing to this project but before that i just wanted to run servers and test them. but the dione-client-test doesn't work, here is what i did:

    dione-server --db-path node1 --ex 0.0.0.0:8010 --clear-address http://localhost:8010 --listen-address /ip4/0.0.0.0/tcp/0

    then it printed: Clear Address => http://localhost:8010 Waiting for clear addr Starting server Web Service is listening on [0.0.0.0:8080] thread 'actix-rt|system:0|arbiter:0' panicked at 'System is not running', /home/forouhar/.cargo/registry/src/github.com-1ecc6299db9ec823/actix-rt-1.1.1/src/system.rs:78:21 note: run with RUST_BACKTRACE=1 environment variable to display a backtrace Local node is listening on "/ip4/127.0.0.1/tcp/44927/p2p/12D3KooWGavF18Z2Y1aDj1vDykgqqJFoWW715pJJR4iu6dajxnWn" Local node is listening on "/ip4/192.168.1.8/tcp/44927/p2p/12D3KooWGavF18Z2Y1aDj1vDykgqqJFoWW715pJJR4iu6dajxnWn" Storer listening on 0.0.0.0:8010

    then I added the env variable: export PEER="/ip4/127.0.0.1/tcp/44927/p2p/12D3KooWGavF18Z2Y1aDj1vDykgqqJFoWW715pJJR4iu6dajxnWn"

    after that i ran the second node: dione-server --db-path node2 --ex 0.0.0.0:8011 --clear-address http://localhost:8011 --listen-address /ip4/0.0.0.0/tcp/0 --web-http-port 8100

    it printed:

    Dialing Local node is listening on "/ip4/127.0.0.1/tcp/40731/p2p/12D3KooWPyfKHszs6eDRGh5Q8V4MnfoUdXcVrvjWNYF6pKUb4SJx" Local node is listening on "/ip4/192.168.1.8/tcp/40731/p2p/12D3KooWPyfKHszs6eDRGh5Q8V4MnfoUdXcVrvjWNYF6pKUb4SJx" Adding peer 12D3KooWGavF18Z2Y1aDj1vDykgqqJFoWW715pJJR4iu6dajxnWn with address /ip4/127.0.0.1/tcp/44927/p2p/12D3KooWGavF18Z2Y1aDj1vDykgqqJFoWW715pJJR4iu6dajxnWn/p2p/12D3KooWGavF18Z2Y1aDj1vDykgqqJFoWW715pJJR4iu6dajxnWn Clear Address => http://localhost:8011 Waiting for clear addr Starting server Web Service is listening on [0.0.0.0:8100] thread 'actix-rt|system:0|arbiter:0' panicked at 'System is not running', /home/forouhar/.cargo/registry/src/github.com-1ecc6299db9ec823/actix-rt-1.1.1/src/system.rs:78:21 note: run with RUST_BACKTRACE=1 environment variable to display a backtrace Storer listening on 0.0.0.0:8011

    after this i tried to run client: dione-test-client client1 --server http://localhost:8010

    but it does't work it printed this:

    Error: Server threw error with responding status => Status { code: Unknown, message: "transport error", source: None }

    and on the server it printed this:

    Adding peer 12D3KooWPyfKHszs6eDRGh5Q8V4MnfoUdXcVrvjWNYF6pKUb4SJx with address /ip4/127.0.0.1/tcp/33098 Closest Peers => [] thread 'tokio-runtime-worker' panicked at 'called Option::unwrap() on a None value', dione-server/src/network/mod.rs:329:48 thread 'tokio-runtime-worker' panicked at 'Sender not to be dropped: RecvError(())', thread 'dione-server/src/network/mod.rstokio-runtime-worker:' panicked at '134Sender not to be dropped: RecvError(()):', 24dione-server/src/network/mod.rs :124:24 thread 'tokio-runtime-worker' panicked at 'Command receiver not to be dropped.: SendError(GetClosestPeer { addr: [], sender: Sender { inner: Some(Inner { state: State { is_complete: false, is_closed: false, is_rx_task_set: false, is_tx_task_set: false } }) } })', dione-server/src/network/mod.rs:133:14

    I tried many times but it didn't work, maybe i did something wrong.

    opened by forouhar-panah 3
  • Update libp2p requirement from 0.40.0 to 0.47.0 in /dione-server

    Update libp2p requirement from 0.40.0 to 0.47.0 in /dione-server

    Updates the requirements on libp2p to permit the latest version.

    Release notes

    Sourced from libp2p's releases.

    v0.47.0

    Most notable change is the deprecation of NetworkBehaviourEventProcess. See corresponding changelog entry on how to migrate.

    As always, see individual changelogs for details.

    Changelog

    Sourced from libp2p's changelog.

    0.47.0

    0.46.1

    0.46.0

    ... (truncated)

    Commits
    • 4253080 *: Prepare v0.47.0 (#2830)
    • 217dd2c clippy.toml: Create config and disallow unbounded channels (#2823)
    • 3d3666e *: Enforce no clippy warnings for examples (#2826)
    • 8931860 core/identity: Allow clippy::large-enum-variant on Keypair (#2827)
    • 475289c docs/coding-guidelines: Add document (#2780)
    • a2738fd swarm-derive/: Derive Debug for generated OutEvent (#2821)
    • d2c5053 build(deps): Update prometheus-client requirement from 0.17.0 to 0.18.0 (#2822)
    • 67266c6 swarm-derive/: Add where clause of behaviour to generated out event (#2819)
    • 8dc0188 swarm/src/connection: Test max_negotiating_inbound_streams (#2785)
    • 6a9fa3d build(deps): Update prost requirement from 0.10 to 0.11 (#2788)
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update libp2p requirement from 0.40.0 to 0.46.1 in /dione-server

    Update libp2p requirement from 0.40.0 to 0.46.1 in /dione-server

    Updates the requirements on libp2p to permit the latest version.

    Changelog

    Sourced from libp2p's changelog.

    0.46.1

    0.46.0

    0.45.1

    0.45.0

    ... (truncated)

    Commits
    • 2f2b7cb *: Bump swarm-derive version and prepare v0.46.1 (#2747)
    • 7df6bae *: Prepare v0.46.0 (#2730)
    • 62622a1 core/src/transport: Poll Transport directly, remove Transport::Listener (#2652)
    • b28cdb3 protocols/identify: Fix race condition in discover_peer_after_disconnect (#2744)
    • 6db5712 protocols/gossipsub/: Allow custom protocol id (#2718)
    • 31f1d66 Cargo.toml: Undo version bump to v0.47.0 as v0.46.0 is unreleased (#2733)
    • 862ae14 protocols/rendezvous/src/client: Fix clippy warning let-unit-value (#2742)
    • 748588e protocols/gossipsub: Fix a typo in error message (#2739)
    • 423adca protocols/identify: Fix dev deps for example (#2737)
    • 9f7d0fe build(deps): Bump styfle/cancel-workflow-action from 0.9.1 to 0.10.0 (#2731)
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update libp2p requirement from 0.40.0 to 0.45.1 in /dione-server

    Update libp2p requirement from 0.40.0 to 0.45.1 in /dione-server

    Updates the requirements on libp2p to permit the latest version.

    Release notes

    Sourced from libp2p's releases.

    v0.45.1

    See individual changelogs for details.

    Changelog

    Sourced from libp2p's changelog.

    0.45.1

    0.45.0

    0.44.0

    Version 0.43.0 [2022-02-22]

    • Update individual crates.
      • Update to libp2p-autonat v0.2.0.

    ... (truncated)

    Commits
    • 802d00e *: Prepare v0.45.1 (#2700)
    • 5cb4886 protocols/kad: Limit # of inbound substreams to 32 (#2699)
    • 0d3787e protocols/relay: Limit inbound streams (#2698)
    • 0bce7f7 *: Remove warnings when compiling without default features (#2692)
    • 2acbb45 swarm/: Limit negotiating inbound substreams per connection (#2697)
    • 59a74b4 protocols/dcutr: Upgrade at most one inbound connect request (#2695)
    • 676a630 protocols/identify: Allow at most one inbound identify push stream (#2694)
    • fcc987e muxers/mplex/benches: Use combinators to reduce nesting (#2688)
    • bd9834a core/either: Use io::Result type alias instead of renaming io::Error (#2687)
    • c36a749 muxers/yamux: Use existing Poll import (#2685)
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update libp2p requirement from 0.40.0 to 0.45.0 in /dione-server

    Update libp2p requirement from 0.40.0 to 0.45.0 in /dione-server

    Updates the requirements on libp2p to permit the latest version.

    Release notes

    Sourced from libp2p's releases.

    v0.45.0

    Medium size release. See individual changelogs for details.

    Changelog

    Sourced from libp2p's changelog.

    0.45.0

    0.44.0

    Version 0.43.0 [2022-02-22]

    • Update individual crates.

    ... (truncated)

    Commits
    • 6e1e314 *: Prepare v0.45.0 (#2662)
    • 6078fc6 transports/{tcp,dns,websocket}: Remove Clone imp for *Config (#2682)
    • 2804756 transports/tcp: Fix port reuse using Arc<RwLock> for listen_addrs (#2670)
    • 4aa84bf core/transport: Remove Sync bounds (#2667)
    • eba7634 protocols/rendezvous: Remove unnecessary mapping to StreamMuxerBox (#2668)
    • 2b79f11 core/muxing: Remove the StreamMuxer::flush_all function (#2669)
    • 25c8bc2 core/muxing: Rename close to poll_close (#2666)
    • 8361fab core/src/muxing: Remove deprecated function (#2665)
    • ef2afcd protocols/autonat: optionally use only global IPs (#2618)
    • 48598fc protocols/autonat: Fix flaky test (#2660)
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update dialoguer requirement from 0.9.0 to 0.10.1 in /dione-test-client

    Update dialoguer requirement from 0.9.0 to 0.10.1 in /dione-test-client

    Updates the requirements on dialoguer to permit the latest version.

    Changelog

    Sourced from dialoguer's changelog.

    0.10.1

    Enhancements

    • Allow matches highlighting for FuzzySelect

    0.10.0

    Enhancements

    • Loosen some trait bounds
    • Improve keyboard interactions (#141, #162)
    • Added max_length to MultiSelect, Select and Sort
    • Allow completion support for Input::interact_text* behind completion feature

    Breaking

    • All prompts *::new will now don't report selected values unless report(true) is called on them.

    0.9.0

    Enhancements

    • Apply input validation to the default value too in Input
    • Added FuzzySelect behind fuzzy-select feature
    • Allow history processing for Input::interact_text* behind history feature
    • Added interact_*_opt methods for MultiSelect and Sort.

    Breaking

    • Updated MSRV to 1.51.0
    • Editor is gated behind editor feature
    • Password, Theme::format_password_prompt and Theme::format_password_prompt_selection are gated behind password feature
    • Remove Select::paged(), Sort::paged() and MultiSelect::paged() in favor of automatic paging based on terminal size

    0.8.0

    Enhancements

    • Input::validate_with can take a FnMut (allowing multiple references)

    Breaking

    • Input::interact* methods take &mut self instead of &self

    0.7.0

    Enhancements

    • Added wait_for_newline to Confirm

    ... (truncated)

    Commits
    • 3f16bde Release 0.10.1
    • f7d0232 Merge pull request #182 from abreis/docs-all-features
    • 7ff96f5 Tell docs.rs to document all features
    • 4f8ffda Merge pull request #179 from deg0nz/highlight-fuzzy-indices
    • f4c434a Add Fuzzy Select match highlighting
    • 2d47e30 Some cleanup
    • e93d993 Release 0.10.0
    • c93224a Merge pull request #162 from craciuncezar/limit-visible-options-in-fuzzy-select
    • dee84e9 Merge pull request #169 from bryanhitc/bryanhitc/fix-completion-buffer-overflow
    • e4ffea8 fix formatting and improve naming
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update tonic-build requirement from 0.5.1 to 0.7.2 in /dione-server

    Update tonic-build requirement from 0.5.1 to 0.7.2 in /dione-server

    Updates the requirements on tonic-build to permit the latest version.

    Changelog

    Sourced from tonic-build's changelog.

    v0.7.2 (2022-05-04)

    Bug Fixes

    • build: Reduce Default bound requirement (#974) (4533a6e)
    • don't enable default features in tower (#972) (b4f9634)
    • transport: Emit HttpsUriWithoutTlsSupport only with tls feature enabled (#996) (1dd5ad2)

    Features

    • Add TryFrom implementations for MetadataValue (#990) (edc5a0d)

    0.7.1 (2022-04-04)

    Features

    0.7.0 (2022-03-31)

    Breaking Changes

    Bug Fixes

    • codec: Return None after poll_data error (#921) (d7cae70)
    • health: Correctly implement spec for overall health (#897) (2b0ffee)
    • tonic: Preserve HTTP method in interceptor (#912) (e623562)
    • transport: Make Server::layer() support more than one layer (#932) (e30bb7e)
    • transport: Make server builder more consistent (#901) (6763d19)
    • Return error on non https uri instead of panic (#838) (ef6e245)

    Features

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update tonic-build requirement from 0.5.1 to 0.7.1 in /dione-server

    Update tonic-build requirement from 0.5.1 to 0.7.1 in /dione-server

    Updates the requirements on tonic-build to permit the latest version.

    Changelog

    Sourced from tonic-build's changelog.

    0.7.1 (2022-04-04)

    Features

    0.7.0 (2022-03-31)

    Breaking Changes

    Bug Fixes

    • codec: Return None after poll_data error (#921) (d7cae70)
    • health: Correctly implement spec for overall health (#897) (2b0ffee)
    • tonic: Preserve HTTP method in interceptor (#912) (e623562)
    • transport: Make Server::layer() support more than one layer (#932) (e30bb7e)
    • transport: Make server builder more consistent (#901) (6763d19)
    • Return error on non https uri instead of panic (#838) (ef6e245)

    Features

    • build: Expose Prost generation plugin (#947) (d4bd475)
    • build: add constructor from_arc for gRPC servers (#875) (7179f7a)
    • health: Expose HealthService publically (#930) (097e7e8)
    • transport: add unix socket support in server (#861) (dee2ab5)
    • transport: support customizing Channel's async executor (#935) (0859d82)
    • Implement hash for Code (#917) (6bc7dab)

    0.6.2 (2021-12-07)

    Bug Fixes

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update uuid requirement from 0.8 to 1.0 in /dione-test-client

    Update uuid requirement from 0.8 to 1.0 in /dione-test-client

    Updates the requirements on uuid to permit the latest version.

    Release notes

    Sourced from uuid's releases.

    1.0.0

    This release includes a huge amount of work from a lot of contributors. These notes are duplicated from 1.0.0-alpha.1 since they're relevant for anybody moving from 0.8.2 to 1.0.0.

    Changes since the last release

    https://github.com/uuid-rs/uuid/compare/0.8.2...main

    Contributions since the last release

    ... (truncated)

    Commits
    • 9e0dc29 Merge pull request #596 from KodrAus/cargo/1.0.0
    • 286134f prepare for 1.0.0 release
    • 43905eb Merge pull request #595 from spruceid/remove-and
    • 444ef96 Remove unnecessary AND
    • 5f649d7 Merge pull request #592 from uuid-rs/KodrAus-patch-1
    • 92ad25f update contact details in the CoC
    • 767f519 Merge pull request #591 from uuid-rs/fix/macro-diagnostics
    • 8b043af use the parsed literal as the span source for errors
    • f0d5956 Merge pull request #587 from uuid-rs/feat/fast-sha1
    • 165b7eb move to sha1_smol as the new name for the current library
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update libp2p requirement from 0.40.0 to 0.44.0 in /dione-server

    Update libp2p requirement from 0.40.0 to 0.44.0 in /dione-server

    Updates the requirements on libp2p to permit the latest version.

    Release notes

    Sourced from libp2p's releases.

    v0.44.0

    Small release. See individual changelogs for details.

    Changelog

    Sourced from libp2p's changelog.

    0.44.0

    Version 0.43.0 [2022-02-22]

    • Update individual crates.

    • Update to parking_lot v0.12.0. See PR 2463.

    • Drop support for gossipsub in the wasm32-unknown-unknown target (see PR 2506).

    ... (truncated)

    Commits
    • f26adbc *: Prepare libp2p v0.44.0 (#2604)
    • 4d796fd protocols/{dcutr,relay}: Expose error types (#2605)
    • 6cc3b4e *: Import libp2p with default-features = false (#2574)
    • 3abef2e examples/file-sharing: Exclude two swarm events from panic (#2580)
    • 0c24821 build(deps): Bump actions/checkout from 2.4.0 to 3 (#2581)
    • d81ad52 swarm/src/handler: Add impl IntoIterator for MultiHandler (#2572)
    • 6b5744c .github/workflows: Add cargo audit (#2430)
    • 7839e7b protocols/gossipsub/Cargo.toml: Update to regex v1.5.5 (#2576)
    • e771ab8 protocols/dcutr/Cargo.toml: Update prost to v0.9 (#2575)
    • b0dc4bc swarm-derive/: Allow mixing of ignored fields (#2570)
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update tonic requirement from 0.5 to 0.7 in /dione-server

    Update tonic requirement from 0.5 to 0.7 in /dione-server

    Updates the requirements on tonic to permit the latest version.

    Changelog

    Sourced from tonic's changelog.

    0.7.0 (2022-03-31)

    Breaking Changes

    Bug Fixes

    • codec: Return None after poll_data error (#921) (d7cae70)
    • health: Correctly implement spec for overall health (#897) (2b0ffee)
    • tonic: Preserve HTTP method in interceptor (#912) (e623562)
    • transport: Make Server::layer() support more than one layer (#932) (e30bb7e)
    • transport: Make server builder more consistent (#901) (6763d19)
    • Return error on non https uri instead of panic (#838) (ef6e245)

    Features

    • build: Expose Prost generation plugin (#947) (d4bd475)
    • build: add constructor from_arc for gRPC servers (#875) (7179f7a)
    • health: Expose HealthService publically (#930) (097e7e8)
    • transport: add unix socket support in server (#861) (dee2ab5)
    • transport: support customizing Channel's async executor (#935) (0859d82)
    • Implement hash for Code (#917) (6bc7dab)

    0.6.2 (2021-12-07)

    Bug Fixes

    0.6.1 (2021-10-27)

    Bug Fixes

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Update libp2p requirement from 0.40.0 to 0.48.0 in /dione-server

    Update libp2p requirement from 0.40.0 to 0.48.0 in /dione-server

    Updates the requirements on libp2p to permit the latest version.

    Release notes

    Sourced from libp2p's releases.

    v0.48.0

    Most notable changes:

    • libp2p-swarm
    • libp2p-core
      • Make RSA keypair support optional. To enable RSA support, rsa feature should be enabled. See PR 2860.

    • libp2p-mdns
      • Allow users to choose between async-io and tokio runtime in the mdns protocol implementation. async-io is a default feature, with an additional tokio feature (see PR 2748)

    For all other changes, see individual changelogs for details.

    Thanks to the many folks involved!

    Changelog

    Sourced from libp2p's changelog.

    0.48.0

    0.47.0

    ... (truncated)

    Commits
    • 83c6795 *: Prepare v0.48.0 (#2869)
    • d2eddf4 muxers/yamux: Remove OpenSubstreamToken (#2873)
    • 2eca38c core/upgrade/: Add ReadyUpgrade (#2855)
    • 8644c65 core/: Introduce rsa feature flag to avoid ring dependency (#2860)
    • a40180c .github/: Introduce interop tests (#2835)
    • b8c3b28 protocols/gossipsub: Allow publishing to anything that implements `Into<Topic...
    • f04df29 .git-blame-ignore-revs/: Initialize and add rustfmt commit (#2864)
    • cee199a protocols/kad: Support multiple protocol names (#2846)
    • 89f898c protocols/mdns: Allow users to choose between async-io and tokio runtime (#2748)
    • 36a2773 *: Update changelogs for prost dep update (#2851)
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Update tonic requirement from 0.5 to 0.8 in /dione-server

    Update tonic requirement from 0.5 to 0.8 in /dione-server

    Updates the requirements on tonic to permit the latest version.

    Changelog

    Sourced from tonic's changelog.

    v0.8.0 (2022-07-29)

    Features

    • Add Grpc::with_origin for clients (#1017) (10f6d2f)
    • build: Add option to emit rerun-if-changed instructions (#1021) (1d2083a)
    • build: Better support for custom codecs (#999) (de2e4ac)
    • Decouple NamedService from the transport feature (#969) (feae96c)
    • reflection: Export server types.
    • reflection: Add with_service_name.

    BREAKING CHANGES

    • build: CODEC_PATH moved from const to fn
    • tonic Remove codegen depedency on compression feature.

    v0.7.2 (2022-05-04)

    Bug Fixes

    • build: Reduce Default bound requirement (#974) (4533a6e)
    • don't enable default features in tower (#972) (b4f9634)
    • transport: Emit HttpsUriWithoutTlsSupport only with tls feature enabled (#996) (1dd5ad2)

    Features

    • Add TryFrom implementations for MetadataValue (#990) (edc5a0d)

    0.7.1 (2022-04-04)

    Features

    0.7.0 (2022-03-31)

    Breaking Changes

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Update tonic-build requirement from 0.5.1 to 0.8.0 in /dione-server

    Update tonic-build requirement from 0.5.1 to 0.8.0 in /dione-server

    Updates the requirements on tonic-build to permit the latest version.

    Changelog

    Sourced from tonic-build's changelog.

    v0.8.0 (2022-07-29)

    Features

    • Add Grpc::with_origin for clients (#1017) (10f6d2f)
    • build: Add option to emit rerun-if-changed instructions (#1021) (1d2083a)
    • build: Better support for custom codecs (#999) (de2e4ac)
    • Decouple NamedService from the transport feature (#969) (feae96c)
    • reflection: Export server types.
    • reflection: Add with_service_name.

    BREAKING CHANGES

    • build: CODEC_PATH moved from const to fn
    • tonic Remove codegen depedency on compression feature.

    v0.7.2 (2022-05-04)

    Bug Fixes

    • build: Reduce Default bound requirement (#974) (4533a6e)
    • don't enable default features in tower (#972) (b4f9634)
    • transport: Emit HttpsUriWithoutTlsSupport only with tls feature enabled (#996) (1dd5ad2)

    Features

    • Add TryFrom implementations for MetadataValue (#990) (edc5a0d)

    0.7.1 (2022-04-04)

    Features

    0.7.0 (2022-03-31)

    Breaking Changes

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Update prost requirement from 0.8 to 0.11 in /dione-server

    Update prost requirement from 0.8 to 0.11 in /dione-server

    Updates the requirements on prost to permit the latest version.

    Release notes

    Sourced from prost's releases.

    v0.11.0

    PROST! is a Protocol Buffers implementation for the Rust Language. prost generates simple, idiomatic Rust code from proto2 and proto3 files.

    Relase 0.11 brings a few breaking changes and changes to how prost sources protoc.

    • prost-build now requires protoc to be available in the path or set via the PROTOC env var.
    • prost-types now contains new Timestamp/Duration FromStr implementations.
    • MSRV bump to 1.56 and all crates have been moved to edition 2021

    Notible changes that are not breaking:

    • prost-build now has a cleanup-markdown feature for cleaining up code blocks from protobuf files so that they work under rustdoc tests.
    • prost-build now generates as_str_name for message types.
    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Update dialoguer requirement from 0.9.0 to 0.10.2 in /dione-test-client

    Update dialoguer requirement from 0.9.0 to 0.10.2 in /dione-test-client

    Updates the requirements on dialoguer to permit the latest version.

    Changelog

    Sourced from dialoguer's changelog.

    Changelog

    0.10.1

    Enhancements

    • Allow matches highlighting for FuzzySelect

    0.10.0

    Enhancements

    • Loosen some trait bounds
    • Improve keyboard interactions (#141, #162)
    • Added max_length to MultiSelect, Select and Sort
    • Allow completion support for Input::interact_text* behind completion feature

    Breaking

    • All prompts *::new will now don't report selected values unless report(true) is called on them.

    0.9.0

    Enhancements

    • Apply input validation to the default value too in Input
    • Added FuzzySelect behind fuzzy-select feature
    • Allow history processing for Input::interact_text* behind history feature
    • Added interact_*_opt methods for MultiSelect and Sort.

    Breaking

    • Updated MSRV to 1.51.0
    • Editor is gated behind editor feature
    • Password, Theme::format_password_prompt and Theme::format_password_prompt_selection are gated behind password feature
    • Remove Select::paged(), Sort::paged() and MultiSelect::paged() in favor of automatic paging based on terminal size

    0.8.0

    Enhancements

    • Input::validate_with can take a FnMut (allowing multiple references)

    Breaking

    • Input::interact* methods take &mut self instead of &self

    0.7.0

    Enhancements

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Update uuid requirement from 0.8 to 1.1 in /dione-test-client

    Update uuid requirement from 0.8 to 1.1 in /dione-test-client

    Updates the requirements on uuid to permit the latest version.

    Release notes

    Sourced from uuid's releases.

    1.1.0

    What's Changed

    New Contributors

    Full Changelog: https://github.com/uuid-rs/uuid/compare/1.0.0...1.1.0

    Commits
    • 99977bb Merge pull request #602 from uuid-rs/cargo/1.1.0
    • e7b58f4 prepare for 1.1.0 release
    • 7d037f5 Merge pull request #599 from dfaust/to_bytes_le
    • 7a2d4e4 Merge pull request #600 from Razican/doc_fix
    • d988df2 Fixed documentation link
    • b0ca5a0 add bytes_le roundtrip test
    • 9810dc8 add to_bytes_le method
    • e0f0837 Merge pull request #597 from uuid-rs/KodrAus-patch-1
    • 1a54a9f note that the Error display impl is public API
    • 9e0dc29 Merge pull request #596 from KodrAus/cargo/1.0.0
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
Owner
Dione
Organization belonging to the Dione network.
Dione
An open source desktop wallet for nano and banano with end-to-end encrypted, on chain messaging using the dagchat protocol.

An open source wallet with end-to-end encrypted, on chain messaging for nano and banano using the dagchat protocol.

derfarctor 15 Jul 19, 2022
A Rust implementation of the Message Layer Security group messaging protocol

Molasses An extremely early implementation of the Message Layer Security group messaging protocol. This repo is based on draft 4 of the MLS protocol s

Trail of Bits 107 Jul 8, 2022
As part of the IOP Stack™ Morpheus is a toolset to have gatekeeper-free identity management and verifiable claims as a 2nd layer on top of a blockchain

Internet of People Internet of People (IoP) is a software project creating a decentralized software stack that provides the building blocks and tools

We are building a complete decentralized ecosystem with the IOP Stack™ 6 Apr 27, 2022
Terabethia - A Bridge and Messaging Protocol between Ethereum and the Internet Computer.

Terabethia - A Bridge Between Ethereum & the Internet Computer Terabethia is a bridge between Ethereum & the Internet Computer that contracts in both

Psychedelic 34 Sep 13, 2022
Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.

Themis provides strong, usable cryptography for busy people General purpose cryptographic library for storage and messaging for iOS (Swift, Obj-C), An

Cossack Labs 1.6k Sep 21, 2022
a handy utility to work with encrypted DMGs

edmgutil edmgutil is a simple wrapper utility to hdiutil to help you work with disposable, encrypted DMGs. It can decompress an encrypted ZIP into a n

Sentry 9 Jan 11, 2022
Encrypted memories

Diary - Encrypted memories Diary is a TUI program written in Rust for GNU/Linux / *BSD / Android (It probably works on other platforms too, but who ca

Arun Sojan Parolikkal 41 Aug 9, 2022
An application for creating encrypted vaults for the GNOME desktop.

Vaults An application for creating encrypted vaults for the GNOME desktop. It currently uses gocryptfs and CryFS for encryption. Please always keep a

Martin Pobaschnig 45 Sep 18, 2022
age-encrypted secrets for NixOS; drop-in replacement for agenix

ragenix ragenix provides age-encrypted secrets for NixOS systems which live in the Nix store and are decrypted on system activation. Using ragenix to

YAXI 79 Sep 4, 2022
Trustworthy encrypted command line authenticator app compatible with multiple backups.

cotp - command line totp authenticator I believe that security is of paramount importance, especially in this digital world. I created cotp because I

Reply 56 Sep 20, 2022
NymDrive is a complete, end-to-end encrypted file syncing daemon that runs over the Nym network.

NymDrive NymDrive is a complete, end-to-end encrypted file syncing daemon that runs over the Nym network. Features Active file monitoring of changes i

Hans Bricks 16 Jul 12, 2022
Smarter brute-force password searching for PKZIP encrypted files

Zip Blitz Motivation This program was created for a very specfic problem I had. I had a large encrypted zip file that I lost/forgot the password for.

Michael 4 Jul 29, 2022
An HTTP proxy for assets (mainly images) to route requests through an always-encrypted connection.

camo-rs camo-rs is a frontend-compatible Rust-re-implementation of the now archived NodeJS-based atmos/camo - an HTTP proxy for assets (mainly images)

Dennis Schubert 6 Sep 18, 2022
Metaplex is a protocol built on top of Solana that allows: Creating/Minting non-fungible tokens;

Metaplex is a protocol built on top of Solana that allows: Creating/Minting non-fungible tokens; Starting a variety of auctions for primary/secondary

Metaplex Foundation 3.2k Sep 23, 2022
An example smart contract that builds on top of xyz

xyz Guestbook Tutorial Contract This repository contains an example smart contract that illustrates how to build on top of the xyz NFT contract. This

null 5 Apr 4, 2022
A top-up of fatality based errors, originally developed for polkadot

fatality A generative approach to creating fatal and non-fatal errors. The generated source utilizes thiserror::Error derived attributes heavily, and

Bernhard Schuster 9 Sep 1, 2022
Baek-Zheng threshold cryptosystem on top of BLS12-381

bzte A rust implementation of the Baek-Zhang threshold cryptosystem on top of BLS12-381 using arkworks Why threshold encrypt? The advantage of thresho

null 4 Jun 28, 2022
The Nervos CKB is a public permissionless blockchain, and the layer 1 of Nervos network.

Nervos CKB - The Common Knowledge Base master develop About CKB CKB is the layer 1 of Nervos Network, a public/permissionless blockchain. CKB uses Pro

Nervos Network 1k Sep 23, 2022
Aptos-core strives towards being the safest and most scalable layer one blockchain solution.

Aptos-core strives towards being the safest and most scalable layer one blockchain solution. Today, this powers the Aptos Devnet, tomorrow Mainnet in order to create universal and fair access to decentralized assets for billions of people.

Aptos Labs 3.8k Sep 18, 2022