INNER CODE UNIT · Go
VerifyBlock
volodymyrprokopyuk/go-blockchain · chain/block.go:148
func VerifyBlock(blk SigBlock, authority Address) (bool, error) {
hash := blk.Block.Hash().Bytes()
pub, err := ecc.RecoverPubkey("P-256k1", hash, blk.Sig)
if err != nil {
return false, err
}
acc := NewAddress(pub)
return acc == authority, nil
}