From 3e20db5c06473e1675e81a79d05fad1809b83e79 Mon Sep 17 00:00:00 2001 From: wakiyamap Date: Wed, 3 Oct 2018 19:13:18 -0400 Subject: [PATCH 1/2] Remove monautil and monad --- bchain/coins/monacoin/monacoinparser.go | 107 +----------------------- 1 file changed, 3 insertions(+), 104 deletions(-) diff --git a/bchain/coins/monacoin/monacoinparser.go b/bchain/coins/monacoin/monacoinparser.go index 1acc394e..f5f6c54c 100644 --- a/bchain/coins/monacoin/monacoinparser.go +++ b/bchain/coins/monacoin/monacoinparser.go @@ -1,29 +1,20 @@ package monacoin import ( - "blockbook/bchain" "blockbook/bchain/coins/btc" "github.com/btcsuite/btcd/wire" "github.com/jakm/btcutil/chaincfg" - monacoinCfg "github.com/wakiyamap/monad/chaincfg" - "github.com/wakiyamap/monad/txscript" - monacoinWire "github.com/wakiyamap/monad/wire" - "github.com/wakiyamap/monautil" ) const ( - MainnetMagic wire.BitcoinNet = 0x39393939 //dummy. Correct value is 0xdbb6c0fb - TestnetMagic wire.BitcoinNet = 0x69696969 //dummy. Correct value is 0xf1c8d2fd - MonaMainMagic monacoinWire.BitcoinNet = 0xdbb6c0fb - MonaTestMagic monacoinWire.BitcoinNet = 0xf1c8d2fd + MainnetMagic wire.BitcoinNet = 0xdbb6c0fb + TestnetMagic wire.BitcoinNet = 0xf1c8d2fd ) var ( MainNetParams chaincfg.Params TestNetParams chaincfg.Params - MonaMainParams monacoinCfg.Params - MonaTestParams monacoinCfg.Params ) func init() { @@ -32,22 +23,12 @@ func init() { MainNetParams.PubKeyHashAddrID = []byte{50} MainNetParams.ScriptHashAddrID = []byte{55} MainNetParams.Bech32HRPSegwit = "mona" - MonaMainParams = monacoinCfg.MainNetParams - MonaMainParams.Net = MonaMainMagic - MonaMainParams.PubKeyHashAddrID = 50 - MonaMainParams.ScriptHashAddrID = 55 - MonaMainParams.Bech32HRPSegwit = "mona" TestNetParams = chaincfg.TestNet3Params TestNetParams.Net = TestnetMagic TestNetParams.PubKeyHashAddrID = []byte{111} TestNetParams.ScriptHashAddrID = []byte{117} TestNetParams.Bech32HRPSegwit = "tmona" - MonaTestParams = monacoinCfg.TestNet4Params - MonaTestParams.Net = MonaTestMagic - MonaTestParams.PubKeyHashAddrID = 111 - MonaTestParams.ScriptHashAddrID = 117 - MonaTestParams.Bech32HRPSegwit = "tmona" } // MonacoinParser handle @@ -57,9 +38,7 @@ type MonacoinParser struct { // NewMonacoinParser returns new MonacoinParser instance func NewMonacoinParser(params *chaincfg.Params, c *btc.Configuration) *MonacoinParser { - p := &MonacoinParser{BitcoinParser: btc.NewBitcoinParser(params, c)} - p.OutputScriptToAddressesFunc = p.outputScriptToAddresses - return p + return &MonacoinParser{BitcoinParser: btc.NewBitcoinParser(params, c)} } // GetChainParams contains network parameters for the main Monacoin network, @@ -81,83 +60,3 @@ func GetChainParams(chain string) *chaincfg.Params { return &MainNetParams } } - -// GetAddrDescFromAddress returns internal address representation (descriptor) of given address -func (p *MonacoinParser) GetAddrDescFromAddress(address string) (bchain.AddressDescriptor, error) { - return p.addressToOutputScript(address) -} - -// addressToOutputScript converts monacoin address to ScriptPubKey -func (p *MonacoinParser) addressToOutputScript(address string) ([]byte, error) { - switch p.Params.Net { - case MainnetMagic: - da, err := monautil.DecodeAddress(address, &MonaMainParams) - if err != nil { - return nil, err - } - script, err := txscript.PayToAddrScript(da) - if err != nil { - return nil, err - } - return script, nil - default: - da, err := monautil.DecodeAddress(address, &MonaTestParams) - if err != nil { - return nil, err - } - script, err := txscript.PayToAddrScript(da) - if err != nil { - return nil, err - } - return script, nil - } -} - -// GetAddressesFromAddrDesc returns addresses for given address descriptor with flag if the addresses are searchable -func (p *MonacoinParser) GetAddressesFromAddrDesc(addrDesc bchain.AddressDescriptor) ([]string, bool, error) { - return p.OutputScriptToAddressesFunc(addrDesc) -} - -// outputScriptToAddresses converts ScriptPubKey to bitcoin addresses -func (p *MonacoinParser) outputScriptToAddresses(script []byte) ([]string, bool, error) { - switch p.Params.Net { - case MainnetMagic: - sc, addresses, _, err := txscript.ExtractPkScriptAddrs(script, &MonaMainParams) - if err != nil { - return nil, false, err - } - rv := make([]string, len(addresses)) - for i, a := range addresses { - rv[i] = a.EncodeAddress() - } - var s bool - if sc == txscript.PubKeyHashTy || sc == txscript.WitnessV0PubKeyHashTy || sc == txscript.ScriptHashTy || sc == txscript.WitnessV0ScriptHashTy { - s = true - } else if len(rv) == 0 { - or := btc.TryParseOPReturn(script) - if or != "" { - rv = []string{or} - } - } - return rv, s, nil - default: - sc, addresses, _, err := txscript.ExtractPkScriptAddrs(script, &MonaTestParams) - if err != nil { - return nil, false, err - } - rv := make([]string, len(addresses)) - for i, a := range addresses { - rv[i] = a.EncodeAddress() - } - var s bool - if sc == txscript.PubKeyHashTy || sc == txscript.WitnessV0PubKeyHashTy || sc == txscript.ScriptHashTy || sc == txscript.WitnessV0ScriptHashTy { - s = true - } else if len(rv) == 0 { - or := btc.TryParseOPReturn(script) - if or != "" { - rv = []string{or} - } - } - return rv, s, nil - } -} From 2906b63c99827c8ff5d245ee6b6977f855ea1b5b Mon Sep 17 00:00:00 2001 From: wakiyamap Date: Thu, 4 Oct 2018 08:30:33 +0900 Subject: [PATCH 2/2] Upgraded Gopkg.lock --- Gopkg.lock | 38 +------------------------ bchain/coins/monacoin/monacoinparser.go | 8 +++--- 2 files changed, 5 insertions(+), 41 deletions(-) diff --git a/Gopkg.lock b/Gopkg.lock index c994ab04..eeff3942 100644 --- a/Gopkg.lock +++ b/Gopkg.lock @@ -1,24 +1,12 @@ # This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. -[[projects]] - branch = "master" - name = "github.com/aead/skein" - packages = [".","threefish"] - revision = "9365ae6e95d294dc113a0b308852f97c916db233" - [[projects]] branch = "master" name = "github.com/beorn7/perks" packages = ["quantile"] revision = "3a771d992973f24aa725d07868b467d1ddfceafb" -[[projects]] - branch = "master" - name = "github.com/bitgoin/lyra2rev2" - packages = [".","sha3"] - revision = "bae9ad2043bb55facb14c4918e909f88a7d3ed84" - [[projects]] branch = "master" name = "github.com/bsm/go-vlq" @@ -43,18 +31,6 @@ packages = [".","base58","bech32"] revision = "501929d3d046174c3d39f0ea54ece471aa17238c" -[[projects]] - branch = "master" - name = "github.com/btcsuite/golangcrypto" - packages = ["ripemd160"] - revision = "53f62d9b43e87a6c56975cf862af7edf33a8d0df" - -[[projects]] - name = "github.com/dchest/blake256" - packages = ["."] - revision = "dee3fe6eb0e98dc774a94fc231f85baf7c29d360" - version = "v1.0.0" - [[projects]] name = "github.com/deckarep/golang-set" packages = ["."] @@ -193,18 +169,6 @@ packages = ["."] revision = "3e476152774442234f9a9f747386a48a1d82a515" -[[projects]] - branch = "master" - name = "github.com/wakiyamap/monad" - packages = ["btcec","chaincfg","chaincfg/chainhash","txscript","wire"] - revision = "2b35d553bb7e65947d87100f50758ee11261da33" - -[[projects]] - branch = "master" - name = "github.com/wakiyamap/monautil" - packages = [".","base58","bech32"] - revision = "c1fba54cb210ffa57c4cb5e40fa09c789daa56b8" - [[projects]] branch = "master" name = "golang.org/x/crypto" @@ -232,6 +196,6 @@ [solve-meta] analyzer-name = "dep" analyzer-version = 1 - inputs-digest = "7cb7ad84fe0b30276bb7775d85c4f3281acddb12cb2e10ea4d80198981c9f80b" + inputs-digest = "37517a6a6dbd6e924bf6761b562697a069e952f72f4d3ef984faf72738e91670" solver-name = "gps-cdcl" solver-version = 1 diff --git a/bchain/coins/monacoin/monacoinparser.go b/bchain/coins/monacoin/monacoinparser.go index f5f6c54c..aa03b8f3 100644 --- a/bchain/coins/monacoin/monacoinparser.go +++ b/bchain/coins/monacoin/monacoinparser.go @@ -8,13 +8,13 @@ import ( ) const ( - MainnetMagic wire.BitcoinNet = 0xdbb6c0fb - TestnetMagic wire.BitcoinNet = 0xf1c8d2fd + MainnetMagic wire.BitcoinNet = 0xdbb6c0fb + TestnetMagic wire.BitcoinNet = 0xf1c8d2fd ) var ( - MainNetParams chaincfg.Params - TestNetParams chaincfg.Params + MainNetParams chaincfg.Params + TestNetParams chaincfg.Params ) func init() {