A fun decryption story! In 1914, The Netherlands sent a peace mission to Albania (I did not know this either). The mission commander, Major Lodewijk Thomson, was killed in battle under circumstances that are still unclear. And we'd love to know! en.wikipedia.org/wiki/Lodewijk_…
Recently (2009), an encrypted Albanian telegram from that time was found in Dutch military archives. Could this perhaps shed some light on the situation? Intriguingly, no one had ever been able to decrypt the message.
Dutch researcher Florentijn van Kampen, affiliated with Radboud University's iHub, decided to give it a try using modern cryptographic techniques. I mean, 1914 encryption, how hard could it be?! ecp.ep.liu.se/index.php/hist…
First of all, some basic facts: The telegram consists of 736 numbers between 19 and 119. There are 49 different numbers. The frequency per number ranges from 1 to 74. Since there appear to be a maximum of 100 different numbers, we can put this on a 10*10 matrix:
Here, the article makes an assumption: the very rare numbers are likely mistakes in transcription. It is a wartime hand-written telegram, it is entirely possible that errors have crept in. So, do these numbers look like they contain information? Enter the Index of Coincidence:
When the IC is calculated for randomly distributed characters, the result is 1. This is what you'd get looking at modern encryption. If the number is >1, there is an uneven distribution of letters, and you might have something to work on. The Albanian telegram has an IC of 2.18!
In a monoalphabetic substitution cipher, every letter is replaced by another letter. In theory these are among the easiest ciphers to decrypt. But, this being real life, things turn out to be way more interesting. What language is the telegram even written in? And what alphabet?
"How hard could this be?!" Well, it turns out the Albanian alphabet is ready to confuse you. It consists of 36 letters! "a b c ç d dh e ë f g gj h i j k l ll m n nj o p q r rr s sh t th u v x xh y z zh".
To attack substitution cipher, we need corpus of Albanian text. It turns out that one was not readily available so Florentijn found a bunch of Albanian books on archive.org and used Google Drive's OCR abilities to convert these into text:
In 2009 an attempt had been made to decrypt the telegram, and this had failed. Because of this, Florentijn decided to handcraft a tool chain that would offer full control over the decryption process. This involved tetragram frequencies, hill climbing and simulated annealing:
Despite this impressive algorithmic assault, nothing came out! One thing the software did discover however was that two of the codes definitely mapped to spaces, which is quite rare for this kind of encryption. And this proved to be helpful! Remember the low-frequency characters?
Since the code for spaces are now known, it is possible to chop up the telegram into words. Any word containing a super rare character is assumed to have been an error in transcription or encryption. Once these words are removed, the software came up with this:
Many of the characters in the key are placed in the order of the Albanian alphabet. Because the software used by Florentijn did not know about this order, the fact that it uncovered a key that has this structure is a strong indication something real was found!
With some manual work, the most probable key was recovered. However, when this was used, the resulting decrypted text still did not look like normal Albanian. At this point, a native Albanian speaker was found. Turns out, the telegram is written in an extinct Albanian dialect!
In addition, it turns out that the writer of the text was very sloppy, often substituting e for ë and n for nj. In addition, the morse code operator also frequently messed up numbers in a predictable manner (off by one errors):
Once these things had been taken into account, and making good use of native Albanian expertise, the plaintext could be reconstructed and translated:
This fun article illustrated a few interesting points. Decryption is not just about algorithms and computers. Like any other kind of reverse engineering, it only works if sufficient context is known & the right expertise is consulted.
For the complete story & many historical details, do head to the actual paper "Thomson’s Telegram, Decrypting a Secret Message from Albania, 1914" -> ecp.ep.liu.se/index.php/hist…
• • •
Missing some Tweet in this thread? You can try to
force a refresh
The SARS-COV-2 genome has several genes (or ORFs).
Note in green the famous S spike protein. This is what all the vaccines contain or make in your cells. The green proteins are all "structural", so they end up as part of a new virus particle.
Source: chemistryworld.com/the-coronaviru… 2/
A long time ago, we thought one gene would always deliver one protein. Viruses are acknowledged MASTERS at efficiency, so they don't quite work like that. Note the orange '1a' and '1b' genes above, which are ORF1a and ORF1b below. Source: journals.plos.org/plospathogens/… 3/
Brief thread on how Molnupiravir works. This is the promising COVID-19 antiviral that appears to prevent 50% of hospitalizations/deaths, and maybe 100% of deaths, when given very early to high risk COVID-19 patients. merck.com/news/merck-and…
In general, many many things will stop a virus or a disease, as explained in this @xkcd comic. But that is not what we are looking for. We want something that stops a virus dead, but keeps us alive.
Some very good medicines do succeed in stopping a disease, but can't help but also impact us. This is the case for many antibiotics that are lethal to bacteria, but do gum up some of our own works, for example.
If you are into reverse engineering, the EU Galileo navigation satellites are currently transmitting a new signal that enables centimeter level accurate positioning. But! They haven't yet released a description of this format, but the data is there & unencrypted. 1/2
Let me know if you want a dump of many hours of data. The data likely includes a distance vector that describes a correction to a satellite's position, plus a velocity vector, plus a time offset correcting the atomic clock, plus administrative details ('issue of data number') 2/2
I love the EU (honestly!), but I also love the Internet. Through the NIS 2 Directive, the EU is attempting to regulate each and every root server operator (RSO), even those outside of the EU. Doing so will have bad consequences. 1/6 berthub.eu/articles/posts…
There are 12 RSOs. There are over 1300 active root servers. None of these RSOs are 'providers of essential services' individually. Up to 11 of them could fail, and nobody would notice. In 40 years, "the root" has never gone down. 2/6
By attempting to regulate the core of the Internet, the EU risks opening up a Pandora's box: many other governments would like to follow suit. The EU itself has advocated for the current multi-stakeholder "governance" model, in lieu of government action. 3/6
BREAKING! Stanford scientists have analysed the Moderna and BioNTech vaccines to determine the mRNA code in there. This is the first time we are seeing the Moderna sequence. Get it here while it is still online: github.com/NAalytics/Asse…
So how different is the mRNA in the Moderna, BioNTech/Pfizer & CureVac vaccines? There are 1274 codon positions. 808 are identical across all 3 vaccines. 103 are unique to Moderna, 249 unique to BioNTech, 230 to CureVac:
Recently I learned something about DNA that blew my mind, and in this thread, I'll attempt to blow your mind as well. Behold: Chargaff's 2nd Parity Rule for DNA N-Grams.
If you are into cryptography or reverse engineering, you should love this.
Thread:
DNA consists of four different 'bases', A, C, G and T. These bases have specific meaning within our biology. Specifically, within the 'coding part' of a gene, a triplet of bases encodes for an amino acid
Most DNA is stored redundantly, in two connected strands. Wherever there is an A on one strand, you'll find a T on the other one. And similarly for C and G:
T G T C A G T
A C A G T C A
(note how the other strand is upside down - this matters!)