The Fenrir Project

Transport, encryption, authentication protocol

This project is maintained by Luca Fulchir

RSS feed

New Beginning

No, I’m not dead. It’s been 2 years since the last update, sorry.

The reason no updates have happened in 2 years, was my last job. Too much burnout, too little time for my life, so I quit.

Out with the job, in with the Open source.
Here is what is going to happen now

My last job

I started my last job as a developer, but I was too good at fixing things.
As you all know, “no good deed goes unpunished”, and I became the lead devops.

Turns out that a startup can really burn you out, and I did not have time for myself, let alone for my projects.
Long story short, I quit, I am leaving lots of friends, I can still go back if I decide so, but at the moment my goal is to unwind.

Relax, Study, tidying up

In the next few months I will not take any jobs, and I’ll concentrate on:

I just barely started the basics with rust and nix, and in the next few weeks I will alternate these two.

When I’m confident enough, a new server will be put into place, and the old one will be retired. We won’t use gitlab anymore, it’s too resource intensive, for a lot of useless features.

We will move to gitea and hopefully everything will be much, much more automated than it was in the past.

What about Fenrir, Tyr and libRaptorQ?

Unfortunately libRaptorQ will remain on hold.
I am available for bugfixing and small work, but it works for now, and nobody told me anything in 2 years, so it’s probably good enough for now.

Fenrir will be scrapped. I have taken too long without touching that unfinished code, and a Rust implementation makes much more sense anyway, this being a purely security-oriented project.
I have learnt much in the meanwhile and a few new things happened in the last couple of years, so the implementation would have had to change too much anyway.

Tyr remains on hold. The basic version was almost working, but I left it in the middle of a big feature update. I don’t feel like taking it up again and the comments received on this project were underwhelming.

So what about the future?

I have realized that having a nice protocol without any application would have left Fenrir unused, its feature underutilized and not understood.

For this reason, I am designing D4, a distributed object storage.

So first I will work on a bare bone version of D4, then I will start working on Fenrir again, so that the features of the protocol will make this object storage really shine.

D4? Why another object storage?

In my last job I worked at implementing an s3 object storage written in Go.
Due to many reason I was not really happy with the design of what we were building. Sometimes we were limited by technologies we chose. Other times we were limited by the S3 APIs.

All in all I think we built a really good product, but it wasn’t the one I would use for most of my needs.
Simply because I would not use any S3 implementation for my needs and I find those API and architecture limiting.

So I will be building a really bare-bones, distributed object storage. Something like IPFS, or Borg.
It will mostly be oriented towards data backup, it does not aim at replacing s3

I don’t want to give too many details for now, but I am looking at the common denominator between all these protocols, and I think I can design something better, at least for my use cases

Initially this solution will be completely without any kind of authentication or security, it will be based on SCTP just to have an easy, binary, multistream interface.
Then we will move to Fenrir and we will have serious benchmarks and feature comparisons.

So, lots of work ahead, but lots of free time, too
I’ll try to write a lot more often. :)