# Ultimate Go: Advanced Engineering Episode 12

DevFeed: [Ultimate Go: Advanced Engineering Episode 12](<https://devfeed.tech/articles/ultimate-go-advanced-engineering-episode-12-22201.md>)

Original publisher: [Read original article](<https://www.ardanlabs.com/blog/2023/01/ultimate-go-advanced-engineering-episode-12.html>)

Published: 2023-01-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [William Kennedy](<https://devfeed.tech/sources/william-kennedy.md>)

Topics: [Go Language](<https://devfeed.tech/topics/go-language.md>), [data](<https://devfeed.tech/topics/data.md>), [Blockchain](<https://devfeed.tech/topics/blockchain.md>), [Algorithm](<https://devfeed.tech/topics/algorithm.md>), [Ethereum](<https://devfeed.tech/topics/ethereum.md>), [Library](<https://devfeed.tech/topics/library.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [bitcoin](<https://devfeed.tech/tags/bitcoin.md>), [blockchain](<https://devfeed.tech/tags/blockchain.md>), [code](<https://devfeed.tech/tags/code.md>), [ethereum](<https://devfeed.tech/tags/ethereum.md>), [go](<https://devfeed.tech/tags/go.md>), [go-blockchain](<https://devfeed.tech/tags/go-blockchain.md>), [hash](<https://devfeed.tech/tags/hash.md>), [hashing](<https://devfeed.tech/tags/hashing.md>), [hex-value](<https://devfeed.tech/tags/hex-value.md>), [hexademical](<https://devfeed.tech/tags/hexademical.md>), [standard-library](<https://devfeed.tech/tags/standard-library.md>), [video](<https://devfeed.tech/tags/video.md>)

## AI overview

This video tutorial explains how to hash a transaction in Go using packages from the standard library and the Ethereum Go library. It also discusses the desired properties of a hashing function and the role of cryptographic signatures and public-key recovery in a decentralized blockchain.

## Source excerpt

Introduction In episode 11, Bill highlighted the issue of identity verification and provided a solution to this problem. The solution proposed was to cryptographically sign a transaction to verify its authenticity. Bill chose to implement a solution making use of the Elliptic Curve Digital Signature Algorithm (ECDSA) as the public key can be extracted from a signature. Although a small distinction, the ability to re-compute a public key is essential in a decentralized and distributed environment.