Module cold_iron::crypt[]

Expand description

Libraries for cryptothaumaturgy

Computer scientists and security researchers alike have long wondered about whether P=NP or not. We still don’t know the answer, but all indications point to no. It should, therefore, be physically impossible to factor a private key in any reasonable amount of time.

Unfortunately, magic does not always respect the laws of physics. A decent spellcaster can brute-force a SHA-256 sum in an afternoon. Nation-state witches can decode a best-in-class elliptical curve inside of a week. Clearly, another solution was needed.

As is so often the case with nanothaumaturgy, it provided its own answer. To borrow an old thought experiment: can a magic create an encryption suite so secure even magic cannot break it?

Fortunately for the entire infosec profession, the answer is yes.

We will not explain all the details of cryptothaumaturgy. Those wishing to learn more should watch cryptarch tw1l1ght’s excellent Defcon talk on hyperdimensional twisters and metaprimes.

Unlike traditional cryptography, which can be implemented in software or hardware, cryptothaumaturgy always requires dedicated nanothaumaturgical hardware, either SITAs or bespoke thaumachips. Many modern motherboards include a slot for a coprocessor, and business laptops often include one alongside the TPM.

At a fundamental level, cryptothaumaturgy uses the same building as traditional cryptography: verification and encryption. But rather than strings of binary for secrets, it uses the fundamental essence of the world.

For example, you could encrypt a message and send it to a friend. There’s no need to get your friend’s public key, if it is a person you know you can summon enough of their essence to send a message to them.

Verifying a larger organisation works in a similar way. If you’re familiar with the Rust organisation, it isn’t possible for a third party to impersonate them. However, this system isn’t foolproof: It’s just as vulnerable to social engineering as any other authentication mechanism.

Always be on your guard online, and guard your conciousness against imposters.

Structs

Envelope

Envelope represents an cryptothaumaticly encrypted message

Message

Message represents an unencrypted message of cryptothaumatic origin or destination

ThaumCrypto

ThaumCrypto is a wrapper struct, representing a SITA or other Thaumatic device ready to perform thaumocryptography