Skip to content

Improve Routing Hops #178

@trevelyan

Description

@trevelyan

Routing Hops are currently 130 bytes on average. They each contain two publickeys (from, to) and a signature. The signature is generated using the to address and a piece of data associated with the transaction.

Optimizing the size of routing paths is important over the long-term given the number of transactions that will be included in blocks. One possible modification is removing the "from" publickey because it can be sourced from the "to" field of the previous routing hop. The first routing "from" address can be found as the sender of the first INPUT slip who would have needed to sign the transaction.

We can explore using a commutive encryption algorithm as well -- one where only a single signature is needed and that signature is generated and swapped-out as additional paths.

Possible savings are 33 bytes per routing hop, possibly the final "to" publickey as well (as the block creator will contain the publickey). And all but one signature, saving 64 bytes per block. Average data sizes per hop can be reduced considerably. This is well worth looking into once the software is up and operating reliably.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions