Bee

Bee is our node software written in Rust, allowing you to connect to the IOTA Tangle.

Last Update
06 July 2021
Next release

Local Snapshots

In development
An implementation of local snapshots that allows the user to control the size of the node database.
Upcoming goals

MQTT Support

In development
Adding support for the MQTT pubsub messaging protocol.

Documentation

In development
Development of the Bee documentation portal.

Coordicide Message Layout

In development
Development of the message layouts according to the Coordicide specifications.

New Plugin System

In development
Development of a more flexible plugin system to allow third parties to easily and safely extend bee capabilities.

New Event System

In development
Improvements to the current event system.

New Node Architecture

In development
Based on the actor system Backstage in collaboration with the Chronicle team.

New Serialization-Deserialization Layer

In development
A no_std version of our previous serialization framework.

Initial Coordicide Network Layer

Defined
Implementation of the current version of GoShimmer, without libp2p, to join the IOTA 2.0 Devnet.
Completed goals

Beta Release

Complete
Completed Q2 2021
released
A beta release of Bee

Alpha Release

Complete
Completed Q1 2021
Alpha release of Bee

Dashboard Integration

Complete
Completed Q1 2021
Adding support for the new node dashboard GUI.

API

Complete
Completed Q4 2020
This is the interface between clients and the databases - an API to remotely ask for information and data. Modularly designed, it allows easy implementation of new architectures (REST, gRPC, …).

Messages

Complete
Completed Q4 2020
Implements the new atomic message layout of Chrysalis Part 2.

UTXO Ledger

Complete
Completed Q4 2020
Allows for faster and more exact conflict handling, deals with possible scenarios of reattaching invalid transactions. Will allow the protocol to support colored coins in the future.

Proof of Work

Complete
Completed Q4 2020
Allows the node to do proof of work.

Tangle

Complete
Completed Q4 2020
Implements the API for interacting with and manipulating the Tangle in a type-safe manner. This mirrors the flexible semantics of a garbage-collecting language while retaining the performance and ownership models of Rust.

Storage Layer

Complete
Completed Q4 2020
The storage layer of the Bee node. This is the interface between the Tangle and the databases. Modularly designed, it allows easy implementation of new backends (SQL, KV, …).

Network layer

Complete
Completed Q3 2020
Provides a simple and convenient way to exchange messages among neighboring nodes.

Gossip protocol

Complete
Completed Q3 2020
Allows the node to propagate transactions through the network.

White-flag

Complete
Completed Q3 2020
A simpler, conflict-ignoring approach that allows for faster and more efficient tip selection, eliminates certain attacks and significantly reduces the need for reattachments.

Binary-coded ternary (unification)

Complete
Completed Q2 2020
Interface to unify binary-to-ternary encodings.

Signature scheme

Complete
Completed Q2 2020
Implements the same signature schemes that guarantee authenticity in the current IOTA network as IRI v1.8.1.

Cryptographic primitives - Sponge, Curl, and Kerl

Complete
Completed Q2 2020
Implements the cryptographic hash functions called CurlP and Kerl. CurlP81 (a new type for CurlP with 81 rounds) and Kerl are the two cryptographic hash functions used by IRI v1.8.1.
Cancelled goals

Autopeering

Cancelled
Automatically finds and updates peers in the network.