Skip to content
This repository was archived by the owner on Jun 7, 2023. It is now read-only.

RFC: trits-t9b2 encoding - #8

Draft
Alex6323 wants to merge 1 commit into
iotaledger-archive:masterfrom
Alex6323:9enc2
Draft

RFC: trits-t9b2 encoding#8
Alex6323 wants to merge 1 commit into
iotaledger-archive:masterfrom
Alex6323:9enc2

Conversation

@Alex6323

@Alex6323 Alex6323 commented Sep 20, 2019

Copy link
Copy Markdown
Contributor


# Summary

This feature introduces a special trits encoding to Bee that might be referred to as `9trits/2bytes`, `9t/2b`, or simply `9/2`, or maybe even `4.5trits/byte` encoding. In comparison there is the `10trits/2bytes`, `10t/2b`, or `5trits/byte`, or just `10/2` alternative encoding which is currently used in IOTAs reference implementation IRI. In contrast to that the `9/2` encoding is less memory/bandwidth efficient, but on the other hand is more optimized for byte-wise data processing. This encoding was successfully used already in the Ict node software which was intended to be able to run on weaker devices like Raspberry Pis which is also a primary objective for the Bee node framework. It can be expected that this encoding will positively affect a node's performance by:

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, we really need to come up with better naming method for this. Vlad has a rule for this which is TE. So TE1 means 1 trit per byte, TE5 mean 5 trits per byte. What do you think.


TODO: FINISH THIS SECTION

**Example transaction implementation based on 9/2 encoding**: This example assumes that a trivial trimming algorithm is used that only trims the 0 bytes from the signature message fragment.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Really appreciate the example. We may also need to know what basic data structure looks like (maybe like #5 )


# Unresolved questions

TODO No newline at end of file

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you provide how to interact with hashing? Like could it do operations directly or need some conversions.

@thibault-martinez

Copy link
Copy Markdown
Contributor

Can you add a paragraph on how conversion from/to raw trits would work ?

@Alex6323 Alex6323 changed the title RFC: '9trits per 2bytes' encoding for Bee RFC: 9trits per 2bytes encoding Sep 27, 2019
@Alex6323 Alex6323 changed the title RFC: 9trits per 2bytes encoding RFC: trits-t9b2 encoding Sep 27, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants