# Ultimate Go: Advanced Engineering Episode 15

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

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

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

Content type: tutorial

Language: en

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

Topics: [Blockchain](<https://devfeed.tech/topics/blockchain.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>), [Ethereum](<https://devfeed.tech/topics/ethereum.md>)

Tags: [bitcoin](<https://devfeed.tech/tags/bitcoin.md>), [blockchain](<https://devfeed.tech/tags/blockchain.md>), [digital-signature](<https://devfeed.tech/tags/digital-signature.md>), [ecdsa](<https://devfeed.tech/tags/ecdsa.md>), [ethereum](<https://devfeed.tech/tags/ethereum.md>), [generate](<https://devfeed.tech/tags/generate.md>), [go-blockchain](<https://devfeed.tech/tags/go-blockchain.md>), [library](<https://devfeed.tech/tags/library.md>), [private-key](<https://devfeed.tech/tags/private-key.md>), [public-address](<https://devfeed.tech/tags/public-address.md>), [public-key](<https://devfeed.tech/tags/public-key.md>), [transactions](<https://devfeed.tech/tags/transactions.md>)

## AI overview

This video tutorial explains how to derive a blockchain user's unique address from a public key recovered from a transaction signature. It covers reading the public key, validating the transaction's origin, and generating the user's address using Go Ethereum library functions.

## Source excerpt

Introduction In episode 14, Bill architected a solution to digitally sign the transactions on his blockchain. His solution retrieved the private key by : loading private key data from disk, parsing the key data and returning the ECDSA private key. The private key is then used to generate the signature of a transaction. While writing the code to perform this functionality, Bill highlighted how a blockchain node can use a transaction's signature to extrapolate the public key.