Is Open-Source Cryptography Really Secure?

By Lane Wagner – @wagslane on Twitter The purpose of cryptography is to keep information private, and the purpose of open-source is to make code public… So we shouldn’t open source our cryptography algorithms right? I’ve been asked this several times by multiple people so I figured it is a subject worth addressing. Many developers seem to … Read more Is Open-Source Cryptography Really Secure?

Hashing Passwords – Python Cryptography Examples

By Lane Wagner – @wagslane on Twitter Building a from-scratch server or using a lightweight framework is empowering. With that power comes responsibility, specifically the responsibility to securely store user’s passwords. Can I Store Passwords In Plain Text? To demonstrate the potential dangers, let us assume we DON’T hash passwords on a fake example website, LoveMatchingToday. Inevitably … Read more Hashing Passwords – Python Cryptography Examples

(Very) Basic Intro to Lattices in Cryptography

By Lane Wagner – @wagslane on Twitter Lattice-based cryptography has been coming into the spotlight recently. In January 2019, Many of the semifinalists in the NIST post-quantum-cryptography competition were based on lattices. Let’s explore the basics of lattices and how they apply to cryptosystems. What is a Lattice? According to Wikipedia, a lattice is the set of … Read more (Very) Basic Intro to Lattices in Cryptography

Why is Exclusive Or (XOR) Important in Cryptography?

If you are getting into cryptography, or just trying to understand the fundamentals, you may have noticed that the exclusive-or operation is used quite often, especially in ciphers. What is XOR (⊕)? XOR, or “exclusive or” operates on binary data. It returns true if both of its inputs are opposites (one false and one true), … Read more Why is Exclusive Or (XOR) Important in Cryptography?

JavaScript With Statement Explained – A Deep Dive

By @wagslane (twitter) Let’s look at the JavaScript with statement. We will go over the simple uses, as well as a deep dive into some more advanced concepts. Note: Use of the with statement is discouraged. It can lead to strange bugs. That said, it is important to understand how it works because it may exist in … Read more JavaScript With Statement Explained – A Deep Dive

JavaScript vs Java – Differences, Similarities, and History

By @wagslane (twitter) Java and JavaScript confuse many new programmers. They sound so similar, so one might think they have the same use-cases, or maybe the same company created both languages. Neither of those assumptions is true! Let’s go over the differences and history in this quick read. Java – Brief History In 1991, James Gosling of … Read more JavaScript vs Java – Differences, Similarities, and History

JavaScript Map Function Explained – A Deep Dive

We are going to walk through the JavaScript map function. I’ll explain how it works in a simple way. Later in the article, we will do a deep dive into some more advanced concepts regarding the map function and its uses. Map Function Syntax From Mozilla’s definition: The Array object’s map method takes a function … Read more JavaScript Map Function Explained – A Deep Dive

BitBanged SPI in Go, An Explanation

I’m going to focus mostly on some design decisions and also how I went about writing an SPI interface using Go on a Raspberry Pi. I assume my readers have a basic understanding of what a Raspberry Pi is, and how basic electronics work. If not, read on anyway and I will be sure to … Read more BitBanged SPI in Go, An Explanation

Top 10 Online Crypto Communities 2020

Crypto is still rapidly growing in 2020, and while the hype train has somewhat left the station, we are sure it will be back. In the meantime, it’s a good opportunity to learn more about the fundamentals and technology that support decentralized money. These communities can certainly help tremendously. #1 BITCOINTALK https://bitcointalk.org/ Bitcointalk is undoubtedly … Read more Top 10 Online Crypto Communities 2020

Logging for Gophers – Idiomatic Log Strategies in Go (Golang)

guest writing on table

In this article, I’m going to cover some rules of thumb for logging in go, as well as some functions you may not have heard of that can make your debugging life easier. Rule #1 – Use Errors Where Appropriate, Not Strings Go has a built-in error type, which allows developers to easily differentiate errors … Read more Logging for Gophers – Idiomatic Log Strategies in Go (Golang)