Arhivele categoriei: Coding

EuCrypt Chapter 5: C = M ^ e mod n

~ This is part of the EuCrypt series. Start with Introducing EuCrypt. ~ Having a true random number generator (trng) and on top of it a true random prime number generator (trpng) from previous chapters, I can now finally touch on RSA1 itself: this chapter adds a way to generate RSA keys and to actually […]

EuCrypt Chapter 4: Random Prime Number Generator

~ This is part of the EuCrypt series. Start with Introducing EuCrypt. ~ 2018 starts well for EuCrypt as I finally get to put to some use all the building blocks of years past and then simply expand the library further. The aim of this chapter is to provide a random prime number generator (rpng) […]

EuCrypt Chapter 3: Miller-Rabin Implementation

~ This is part 4 of the EuCrypt series. Start with Introducing Eucrypt. ~ Primality testing1 is a key part of any implementation of RSA2 and therefore a key part of EuCrypt as well. At first glance, there is a wide choice of primality tests that one can use, from naive direct divisions in search […]

EuCrypt: Correcting MPI Implementation

~ An unexpected part of the EuCrypt library series. Start with Introducing EuCrypt. ~ This is a sad but necessary interruption in the EuCrypt series itself: although coming immediately after chapter 2, this is not chapter 3 at all, I’m sorry to say. Instead of adding another useful part of smg-rsa as the actual chapter […]

My Reference Code Shelf

Reading code is a pain or a gain, depending on whose1 code you read, of course. And while I had a rather significant share of pain since my recent return to programming a few years ago, I recently enjoyed as well some gains. Reading code is quite like reading literature in this respect really, except […]

EuCrypt Chapter 2: A Source of Randomness

EuCrypt uses as source of randomness the Fuckgoats auditable TRNG (True Random Number Generator) from S.NSA (No Such lAbs). The choice here was made very easy by a basic combination of facts: on one hand, EuCrypt needs an actual, auditable source of randomness1 as opposed to anything else, pseudo-random generators included; on the other hand, […]

Introducing EuCrypt

EuCrypt is a self-contained library that Eulora server will use for its communication needs. EuCrypt has the following 5 main components: smg-comm – the implementation of the basic client-server communication protocol. This makes use of all the other components, namely: smg-serpent – the symmetric cipher that is used by smg-comm for everyday message exchanges between […]

Taming of the Serpent in Ada

As part of my current necessity-driven foray into modern-day cryptography, I got to play around with… serpents. Or more precisely a very specific Serpent1, designed in 1998 as a candidate for the competition2 to select an “Advanced Encryption Standard”. It’s totally unclear really where does that “advanced” come from given the total absence of any […]

First Timings of a Basic RSA-tron

Forced by the blunt but all mighty forces of necessity, I’ve spent most of the past month reading a bit more on the Maths underpinning all cryptography and otherwise digging deep into the guts of the miserable-but-we-don’t-have-any-better Gnu Privacy Guard 10. The goal of this yet another stable cleaning was to extract from the shit […]

Primorials Calculation

There was recently a request for calculating and posting “largest primorial”1 fitting a certain number of bits2. Calculating one primorial is not a big deal in itself of course, but it still offers plenty of space to either polish or cobble together some code. The obvious potential trouble is that primorials get very big very […]

RSS Subscribe to Ossasepia


Recent comments: