Quantum Computing And The End Of Encryption

Quantum computers stand a good chance of changing the face computing, and that goes double for encryption. For encryption methods that rely on the fact that brute-forcing the key takes too long with classical computers, quantum computing seems like its logical nemesis.

For instance, the mathematical problem that lies at the heart of RSA and other public-key encryption schemes is factoring a product of two prime numbers. Searching for the right pair using classical methods takes approximately forever, but Shor’s algorithm can be used on a suitable quantum computer to do the required factorization of integers in almost no time.

When quantum computers become capable enough, the threat to a lot of our encrypted communication is a real one. If one can no longer rely on simply making the brute-forcing of a decryption computationally heavy, all of today’s public-key encryption algorithms are essentially useless. This is the doomsday scenario, but how close are we to this actually happening, and what can be done?

Continue reading “Quantum Computing And The End Of Encryption”

The Seedy World Of Message Serialization

Look, I’ve been there too. First the project just prints debug information for a human in nice descriptive strings that are easy to understand. Then some tool needs to log a sensor value so the simple debug messages gain structure. Now your debug messages {{look like : this}}. This is great until a second sensor is added that uses floats instead of ints. Now there are sprinklings of even more magic characters between the curly braces. A couple days later and things are starting to look Turing complete. At some point you look up and realize, “I need a messaging serialization strategy”. Well you’ve come to the right place! Continue reading “The Seedy World Of Message Serialization”

Bertha Benz Pushed The Automobile Toward Production

Who invented the automobile? The answer depends a little bit on your definition of the word. The first practical gas-powered carriage was built by Karl Benz, who later merged his company with Daimler Motor Group to form Mercedez-Benz.

Karl Benz was a design visionary whose first fascinations were with locomotives and bicycles. His 1886 Benz Patent Motorwagen was the first automobile to generate its own power, which was made with a two-stroke engine and transmitted to the rear axle by a pair of chains. He didn’t think it was ready for the road, and he was mostly right.

Bertha Benz, Karl’s wife and business partner, believed in her husband’s invention. She had been there since the beginning, and provided much of the funding for it along the way. If she hadn’t taken it out for a secret, illegal joyride, the Motorwagen may have never left the garage.

Continue reading “Bertha Benz Pushed The Automobile Toward Production”

3D Printing Nuclear Reactors For Fun And Profit

Over the past decades, additive manufacturing (AM, also known as 3D printing) has become increasingly common in manufacturing processes. While immensely helpful in the prototyping of new products by allowing for rapid turn-around times between design and testing, these days additive manufacturing is used more and more often in the production of everything from small production runs of custom enclosures to hard to machine components for rocket engines.

The obvious advantage of additive manufacturing is that they use generic equipment and common materials as input, without requiring expensive molds as in the case of injection molding, or extensive, wasteful machining of raw materials on a lathe, mill, and similar equipment. All of the manufacturing gets reduced to a 3D model as input, one or more input materials, and the actual device that converts the 3D model into a physical component with very limited waste.

In the nuclear power industry, these benefits haven’t gone unnoticed, which has led to 3D printed parts being developed for everything from keeping existing plants running to streamlining spent fuel reprocessing and even the printing of entire nuclear reactors.

Continue reading “3D Printing Nuclear Reactors For Fun And Profit”

Ancient History Of The Phone Jack

While watching a video about old radios from the 1920s, a phone jack popped up. The host mentioned that phone jacks are super old and he wondered what was their origin. I always assumed they had something to do with the telephone system, and that’s right, but I had no idea how old they really are and how they’ve evolved. Turns out the venerable plug goes back to at least 1878.

Keep in mind, I’m talking about the good old fashioned 1/4″ phone jack with two wires. Over time, the jack and plug have spawned different versions with more wires and — particularly — smaller dimensions. The headphone jack that many smartphone makers are dropping is a direct descendant of that old phone jack. But a mono cable like you would see connecting an electric guitar or another mono source would be right at home connected to a 1900s switchboard. Let’s take a look at the origins of a design that’s almost 150 years old and still in use.

Continue reading “Ancient History Of The Phone Jack”

How Science Adapted To The Aftermath Of Cold War Nuke Tests

Current global events have demonstrated that we do not live in the most stable of times. Still, most of us 90’s kids are probably glad that we did not have to endure the political shakiness of the Cold War era when people were living in constant fear of nuclear Armageddon. Nuclear weapons tests were common during this period as the United States and the Soviet Union invested heavily to increase the quality and quantity of their warheads in the race for nuclear supremacy.

Even though the political situation stabilized after the fall of the Soviet Union, the consequences of the vast amount of nuclear tests conducted back then are still noticeable today. Besides the devastating effects on human health and the environment, this period also leaves some implications for science which are not always negative.

Continue reading “How Science Adapted To The Aftermath Of Cold War Nuke Tests”

Peeking Inside Executables And Libraries To Make Debugging Easier

At first glance, both the executables that a compiler produces, and the libraries that are used during the building process seem like they’re not very accessible. They are these black boxes that make an application go, or make the linker happy when you hand it the ‘right’ library file. There is also a lot to be said for not digging too deeply into either, as normally things will Just Work™ without having to bother with such additional details.

The thing is that both executables and libraries contain a lot of information that normally is just used by the OS, toolchain, debuggers and similar tools. Whether these files are in Windows PE format, old-school Linux a.out or modern-day .elf, when things go south during development, sometimes one has to break out the right tools to inspect them in order to make sense of what is happening.

This article will focus primarily on the Linux platform, though most of it also applies to BSD and MacOS, and to some extent Windows.

Continue reading “Peeking Inside Executables And Libraries To Make Debugging Easier”