### Rectangles in Cross-hatched Grids

In this post we’ll look at a dynamic programming solution to the problem “Rectangles in Cross-hatched Grids” on Project Euler. This problem requires us to determine how many rectangles fit into a grid of a particular shape -

### Bandera Mountain

Bandera Mountain is a one of the many peaks in the Alpine Lakes Wilderness off of I-90. It’s a pretty quick drive from Seattle to the trailhead so I decided to drive over after work and try to catch a sunset near the summit. The trail is a little under 8 miles and gains about 3000ft of elevation, which is fairly standard for the peaks in the area. The start is at the Ira Springs Trailhead, which is also the starting point for several other hikes in the area including Mason Lake, Mount Defiance, and Putrid Pete’s Peak.

### More OCB2 Forgeries

This post builds on the content and code from the prior post about OCB2 mode forgeries. If you haven’t read that post I would recommend starting there. In this post we’ll explore how to do some further forgeries of OCB2 and also dive a little into code refactoring so that our implementation from the original post becomes a little more general.

### Cryptopals Set 2: Block Crypto

Moving on to the second set we move into the territory of breaking modern cryptography. We mainly concern ourselves with ECB and CBC mode and various ways to break systems that use these modes in an unsafe manner.

### Cryptopals Set 1: Basics

In this first set we cover some of the fundamental building blocks we will use for many of the coming challenges. We also warm up our cryptanalysis skills by breaking a couple classical cipher systems.

### Forging Tags for Data Encrypted in OCB2 Mode

OCB is a block cipher mode of operation, though a bit more esoteric when compared to ones like CBC and GCM. OCB2 (see section 10 of this paper) is a modification of OCB which enables it to operate as an authenticed encryption mode. This means we get confidentiality (via a ciphertext) and integrity (via a tag over the ciphertext). OCB2 was believed to be secure for over a decade thanks in part to security proofs and no known practical attacks.