AWS Builder Center
A small project on container images

A small project on container images

Using go to hash the contents of a file and then use the has as the file name (address)

I've been learning about the OCI Image Specification, particularly how image layers and content-addressable storage work.
To better understand the concept, I decided to build a small project in Go.
The program takes a string, hashes it using SHA-256, converts the digest to hexadecimal, and uses it as the file's address.
It then stores the original string as bytes inside a file following a "blobs/sha256/" directory structure.
It's a simple implementation, but it helped me get a better feel for a few concepts:
- How SHA-256 digests can be used to identify content.
- How content-addressable storage works.
- How the blob storage layout in OCI relates to storing data by its digest.
This isn't an OCI-compliant image store or a production-ready tool. It's a simple hands-on exercise to understand the fundamentals behind a system I'm currently learning about.
One thing I'm learning as I explore DevOps is that sometimes the best way to understand new technology is to implement a small piece of the idea yourself.
Any opinions in this article are those of the individual author and may not reflect the opinions of AWS.
Enjoyed reading this content? Let the author know!

Your likes, comments, shares, and saves help creators reach more builders.

Loading recommendations

Loading article