This is going to be a basic introduction to elliptic curve cryptography. I will assume most of my audience is here to gain an understanding of why ECC is an effective cryptographic tool and the basics of why it works. My goal is to explain it in a general sense, I will be omitting proofs … Read more (Very) Basic Intro To Elliptic Curve Cryptography
A key derivation function, or KDF, derives one or many secret keys from a secret value. Therefore, If you’ve ever needed to store a password in a database or create a private key from a password, you may have used a KDF. For instance, some examples of popular KDFs: Argon2 Scrypt PBKDF2 Are KDFs just … Read more (Very) Basic Intro to Key Derivation Functions (Argon2, Scrypt, etc)
By @wagslane (twitter) We use an algorithm called Adi Shamir’s secret sharing in order to share ownership of a secret among a group of participants. Then, in order to calculate the original secret, a minimum number of shares must be used. Example Problem To illustrate, let us imagine that a family of four shares a … Read more (Very) Basic Shamir’s Secret Sharing
Many new developers are jumping right into coding (usually for those fat paychecks) without learning much about the history of Computer Science. People regarded Alan Turing as the father of Computer Science. He was first a cryptologist and mathematician. Then, he pioneered the field of CS in order to solve cryptological problems. In this article, … Read more Cryptology, Cryptography, and Cryptanalysis – Get your Vocabulary Straight!
HMACs and MACs are authentication codes and are often the backbone of JWT authentication systems. Let’s take a look at how they work! MAC – Message Authentication Code MACs are exactly what they sound like; small codes that allow receivers of messages to know who the sender was (authentication). A MAC code is calculated by … Read more HMAC and MAC Explained Simply – Building Secure Auth With JWTs
Check out the following podcast: https://runninginproduction.com/podcast/6-qvault-is-an-open-source-tool-to-manage-passwords-and-crypto-keys Before I begin, I must give thanks to Nick for having me on the show! In this episode of Running in Production, I talk with Nick about how we built Qvault, an open-source password manager that specializes in cryptocurrency. Qvault uses Electron and has a Serverless component that uses Golang. … Read more Qvault’s Lead Engineer Interviewed on “Running in Production”
I am an atheist and developer, I’ve found it surprising how often these two identities collide. I’m fascinated when something that deals with engineering directly influences my views on theism, or at least makes me consider new ideas. When building a game engine, even the most basic one, it becomes apparent that certain constants must … Read more How Game Dev and Physics Constants Made Me Think About Religion
Many creationists and theists invoke the argument of irreducible complexity in an attempt to discount the theory of evolution. Therefore, what is irreducible complexity? Irreducible complexity (IC) involves the idea that certain biological systems cannot evolve by successive small modifications to pre-existing functional systems through natural selection. https://en.wikipedia.org/wiki/Irreducible_complexity According to the theistic argument dealing with … Read more The Theistic Irreducible Complexity Argument Debunked Using… Computer Science?
In this tutorial, I’m going to walk you through building a streaming API using Golang. Don’t worry, its surprisingly easy to build a robust streaming server, especially if we utilize one of the more modern protocols: HLS. What is HLS? HTTP Live Streaming is an HTTP-Based adaptive bitrate streaming communications protocol developed by Apple. https://en.wikipedia.org/wiki/HTTP_Live_Streaming … Read more Building a Music/Video Streaming Server in Go – Using HLS