# Everest Munro-Zeisberger - Advanced Go Fuzzing Techniques (Highlights) ![rw-book-cover|256](https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png) ## Metadata **Cover**:: https://readwise-assets.s3.amazonaws.com/static/images/article1.be68295a7e40.png **Source**:: #from/readwise **Zettel**:: #zettel/fleeting **Status**:: #x **Authors**:: [[Everest Munro-Zeisberger]] **Full Title**:: Advanced Go Fuzzing Techniques **Category**:: #articles #readwise/articles **Category Icon**:: 📰 **URL**:: [blog.fuzzbuzz.io](https://blog.fuzzbuzz.io/writing-effective-go-fuzz-tests/) **Host**:: [[blog.fuzzbuzz.io]] **Highlighted**:: [[2022-05-15]] **Created**:: [[2022-09-26]] ## Highlights ### Round-Trip Fuzzing - If you have code that takes input of type A and returns a type B (ie, A -> B), and code that does the opposite operation (B -> A), you can combine the two functions to discover data integrity and logic bugs. ### Differential Fuzzing - Differential fuzzing uses previously written reference code as the “invariant”. Simply put, differential fuzzing runs inputs provided by the fuzzer through two different pieces of code that are meant to do the same thing, and then checks to make sure their outputs are equal.