Publications

Observer 0 Critical Infrastructures

C4DT FOCUS 2 Protecting journalists and their sources

2021 Annual Report – C4DT

hyperfine, benchmarks for CLIs

Some years ago, I was thinking that by directly look at code difference, I could estimate how faster it would run. I would reflect about complexity or how a given loop will be waay faster by precomputing some values. And of course, it is never that simple. Cache locality, threads…

OmniLedger email signup and recovery

We’re currently using OmniLedger for logging in to our Matrix-chat and to the c4dt.org website as users. This is explained in more details here: CAS-login for OmniLedger Account management in OmniLedger C4DT partner login Matrix on Mobile There were two elements missing: Automatic signup — in the current signup process,…

Reusable CLI integration tests

On my path of moving lab’s code to more human friendly program, I usually write some CLIs, to ease configuration and deployment. When developing the client, I want to test it, and see how complex it is to use it. The best language to express that is a shell as…

Crypto-assets & Asset Tokenization

Awesome Privacy — A curated list of privacy-preserving apps

Many popular cloud applications collect enormous amounts of information on their users. [...] Raising awareness of the issue, and providing ways to reduce it, is a worthy goal.

Digital Trust 2025

Functional shell scripting

I’m quite a huge fan of functional programming, since I learnt about it some years ago. I was doing imperative programming for years and was quite used to it. But learning a new way to conceptualize programs was a real pleasure. Now that I’m deep into it, I want to…

SASE or VPN?

Today I Learnt (TIL): SASE [sæsɪ]- so what is it, how does it compare to a VPN, and should I use Tor? I heard about it from Ria at C4DT, who told me SASE is the new VPN.It might be better than VPN and will solve all the world’s problems.…

C4DT FOCUS 1 Focus on China Tech regulation

This edition has been written by scientific writer Lionel Pousaz

Choosing a Web Framework

At the C4DT Factory, one of our tasks is to develop demonstrators for research projects. The goal is to provide a quick introduction to a project, and allow visitors to interact and get a feel for the technology.

cheat, examples for CLIs

CLIs are very powerful, from the tip of fingers, you can quickly make the computer do anything you want. No need to wave your mouse around, hoping to find the right sub-sub-sub-menu where the feature you want is implemented. But it comes at a cost: for each command, you need…

Vitalik’s answers to the big questions

I found this nice twitter thread from Vitalik Buterin, the inventor of the Ethereum blockchain: Doing a random twitter experiment just on this day. Only the 268 people I follow can reply to this tweet. Feel free to ask things and I'll talk about anything crypto or non-crypto related. —…

libsodium’ encrypted stream in Rust

NaCl is one of the most used cryptography library around, and it is understandable: it is easy to use (it hides the crypto-magic used), portable (via the libsodium fork), and available in many languages. It is used by one of the project we are helping, drop, written in Rust, which…

Zero-trust cloud week

Should we trust digital immunity passports?

Why Blockchain is Not Yet Working – 2021

This Monday I presented the following article. It discusses blockchains shortcomings. Even if it has been written in 2018, it is still very up-to-date… What follows here is a very opinionated piece. As such it reflects the journey I did in blockchains over the past 6 years. And I’m sure…

immutable.js, concurrent-safe data structures

Concurrent programming is one the oldest and hardest issues in the Computer Science Book. For years, we have been using locks, big threads sharing the minimum, using optimistic reasoning for “how data will be updated”. And we are still stuck with the same issues of some part of the code…

Zoom it out

We’ve been looking at the very nice https://gather.town and played around with it. Instead of having a fixed view of all participants, you can walk around and ‘meet’ different persons in gather.town. You can edit the space your liking. It looks very much like a very old-school Zelda: What I…

Ansible: powerful automation made easy

The management of IT infrastructure is a constantly evolving topic. A very interesting concept that emerged in the last decades is the idea of infrastructure as code: instead of configuring servers in an artisanal fashion, the process is formalized into definition files, which are then automatically “executed”. There are multiple…

Prettier, a uncompromising code formatter

Code formatting is the most known instance of bikeshedding: everyone has a different opinion on it and nobody is willing to compromise. Do you remember the hours-long discussions on using tabs versus spaces? Where to add empty lines? Alignment of fields? For some years now, many languages provide their own…

2020 Annual Report – C4DT