Subject: ERIS over NNCP

From: Endo Renberg <[email-masked]>
Date: Fri, 29 Dec 2023 06:12:28 +0000

Hello,

This is an announcement of a feature recently stabilized and documented in
the ERIS Go implementation.

ERIS is a standard for content-addressed data that offers some 
confidentiality
for data at rest and deniability for intermediary storage providers. The
standard is described in detail here: https://eris.codeberg.page/

The eris-go implementation now supports serializing blocks to a file during
the encoding of data as well as copying blocks out of serialization into 
fast, random-access storage. These two features are intended for sneakernet
transfers but have been implemented and tested specifically for 
compatibility
with NNCP.

The eris-go man page includes an example script of how a the content of a 
file
can be ERIS encoded and transmitted via NNCP.

https://codeberg.org/eris/eris-go/src/branch/trunk/eris-go.1.md#offline-transfers

In eris-go utility is optimized for use in scripts, which makes it awkward 
to
use at first but hopefully easy to integrate in custom storage workflows.

An example usecase is encoding large files to local ephemeral ERIS storage
while simultaneously queuing a backup to a remote system.

Another usecase would be a dead drop where data is delivered first and 
later
revealed by transferring the ERIS read-capability via NNCP or out-of-band.

Retrieving blocks asynchronously via NNCP has not been implemented, but 
there
are a few ideas on how this can be done. Details will be announced here as
they are realized.

If anyone has questions or would like help, write to me and we can sort it
out. Patches accepted as well.

Best wishes for 2024,
E.