Skip to content

Commit 6778e51

Browse files
authored
refactor: use our types for pool/bech32 (#645)
Signed-off-by: Chris Gianelloni <[email protected]>
1 parent 3baed02 commit 6778e51

File tree

3 files changed

+8
-31
lines changed

3 files changed

+8
-31
lines changed

go.mod

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ toolchain go1.21.5
77
require (
88
filippo.io/edwards25519 v1.1.0
99
github.com/blinklabs-io/ouroboros-mock v0.3.1
10-
github.com/cosmos/cosmos-sdk v0.50.6
1110
github.com/fxamacker/cbor/v2 v2.6.0
1211
github.com/jinzhu/copier v0.4.0
1312
github.com/utxorpc/go-codegen v0.5.1
@@ -16,7 +15,10 @@ require (
1615
)
1716

1817
require (
19-
github.com/cosmos/btcutil v1.0.5 // indirect
18+
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
19+
github.com/google/go-cmp v0.6.0 // indirect
20+
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
21+
github.com/stretchr/testify v1.9.0 // indirect
2022
github.com/x448/float16 v0.8.4 // indirect
2123
golang.org/x/sys v0.20.0 // indirect
2224
google.golang.org/protobuf v1.33.0 // indirect

go.sum

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,6 @@ filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA=
22
filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4=
33
github.com/blinklabs-io/ouroboros-mock v0.3.1 h1:oQiMgH0VgsJIGy4lJGaySegObq5FsVgFTYXUO2PS2T8=
44
github.com/blinklabs-io/ouroboros-mock v0.3.1/go.mod h1:6DosKZuBZ4mmvky3hXUzGZqqb/KhbwOiKOldwAtNoxc=
5-
github.com/cosmos/btcutil v1.0.5 h1:t+ZFcX77LpKtDBhjucvnOH8C2l2ioGsBNEQ3jef8xFk=
6-
github.com/cosmos/btcutil v1.0.5/go.mod h1:IyB7iuqZMJlthe2tkIFL33xPyzbFYP0XVdS8P5lUPis=
7-
github.com/cosmos/cosmos-sdk v0.50.6 h1:efR3MsvMHX5sxS3be+hOobGk87IzlZbSpsI2x/Vw3hk=
8-
github.com/cosmos/cosmos-sdk v0.50.6/go.mod h1:lVkRY6cdMJ0fG3gp8y4hFrsKZqF4z7y0M2UXFb9Yt40=
95
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
106
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
117
github.com/fxamacker/cbor/v2 v2.6.0 h1:sU6J2usfADwWlYDAFhZBQ6TnLFBHxgesMrQfQgk1tWA=

ledger/verify_block_body.go

Lines changed: 4 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ import (
2626
"strconv"
2727

2828
"github.com/blinklabs-io/gouroboros/cbor"
29-
"github.com/cosmos/cosmos-sdk/types/bech32"
3029
"golang.org/x/crypto/blake2b"
3130
)
3231

@@ -244,16 +243,11 @@ func GetBlockOutput(
244243
// We will only focus on:
245244
// pool_registration = (3, pool_params)
246245
// pool_retirement = (4, pool_keyhash, epoch)
247-
for certIndex, cert := range tx.Certificates() {
246+
for _, cert := range tx.Certificates() {
248247
switch v := cert.(type) {
249248
case *PoolRegistrationCertificate:
250-
poolIdBytes := v.Operator[:]
251-
vrfKeyHashBytes := v.VrfKeyHash[:]
252-
vrfKeyHashHex := hex.EncodeToString(vrfKeyHashBytes)
253-
poolId, poolIdError := PoolIdToBech32(poolIdBytes)
254-
if poolIdError != nil {
255-
return nil, nil, nil, fmt.Errorf("GetBlockOutput: RegisSPO => PoolIdToBech32 , tx index %v, cert index %v, error, %v", txIndex, certIndex, poolIdError.Error())
256-
}
249+
poolId := NewBlake2b224(v.Operator[:]).String()
250+
vrfKeyHashHex := hex.EncodeToString(v.VrfKeyHash[:])
257251
regisCerts = append(regisCerts, RegisCert{
258252
RegisPoolId: poolId,
259253
RegisPoolVrf: vrfKeyHashHex,
@@ -262,11 +256,7 @@ func GetBlockOutput(
262256

263257
case *PoolRetirementCertificate:
264258
// pool_retirement
265-
poolIdBytes := v.PoolKeyHash[:]
266-
poolId, poolIdError := PoolIdToBech32(poolIdBytes)
267-
if poolIdError != nil {
268-
return nil, nil, nil, fmt.Errorf("GetBlockOutput: RetireSPO => PoolIdToBech32, tx index %v, cert index %v, error, %v", txIndex, certIndex, poolIdError.Error())
269-
}
259+
poolId := NewBlake2b224(v.PoolKeyHash[:]).String()
270260
retireEpoch := v.Epoch
271261
deRegisCerts = append(deRegisCerts, DeRegisCert{
272262
DeRegisPoolId: poolId,
@@ -281,17 +271,6 @@ func GetBlockOutput(
281271
return outputs, regisCerts, deRegisCerts, nil
282272
}
283273

284-
func PoolIdToBech32(data []byte) (string, error) {
285-
pool, err := bech32.ConvertAndEncode("pool", data)
286-
if err != nil {
287-
return "", fmt.Errorf(
288-
"PoolIdToBech32: ConvertAndEncode error, %v",
289-
err.Error(),
290-
)
291-
}
292-
return pool, nil
293-
}
294-
295274
func ExtractTokens(output TransactionOutput) ([]UTXOOutputToken, error) {
296275
var outputTokens []UTXOOutputToken
297276
// append lovelace first

0 commit comments

Comments
 (0)