From 2706b78a5783037ee5fbd7f4a21413ed48b1a679 Mon Sep 17 00:00:00 2001 From: Heewoong Jang Date: Tue, 23 Jul 2024 22:13:03 +0900 Subject: [PATCH] [ASSET-34] Add bitcoin network info (#39) * ASSET-34 Update bitcoin address type Signed-off-by: jormal * ASSET-34 Add bitcoin network info Signed-off-by: jormal * ASSET-34 Update bitcoin asset info Signed-off-by: jormal * ASSET-34 Update version Signed-off-by: jormal --------- Signed-off-by: jormal --- VERSION | 2 +- assets/btc-0/info.json | 29 +++++++++- assets/unknown-bitcoin/image-128.png | Bin 0 -> 7955 bytes assets/unknown-bitcoin/image-256.png | Bin 0 -> 11190 bytes assets/unknown-bitcoin/image-32.png | Bin 0 -> 1765 bytes assets/unknown-bitcoin/image-64.png | Bin 0 -> 3883 bytes assets/unknown-bitcoin/image.svg | 13 +++++ assets/unknown-bitcoin/info.json | 16 ++++++ enums/ids/asset.json | 4 ++ enums/ids/network.json | 8 +++ enums/tags/asset.json | 4 ++ enums/tags/network.json | 4 ++ libraries/models/terminals/address.py | 36 +++++++++++-- libraries/models/terminals/address_bitcoin.py | 51 ++++++++++++++++++ libraries/models/terminals/engine.py | 10 ++++ networks/bitcoin-1/image-128.png | Bin 0 -> 7250 bytes networks/bitcoin-1/image-256.png | Bin 0 -> 10390 bytes networks/bitcoin-1/image-32.png | Bin 0 -> 1620 bytes networks/bitcoin-1/image-64.png | Bin 0 -> 3457 bytes networks/bitcoin-1/image.svg | 6 +++ networks/bitcoin-1/info.json | 25 +++++++++ networks/bitcoin-2/image-128.png | Bin 0 -> 7955 bytes networks/bitcoin-2/image-256.png | Bin 0 -> 11190 bytes networks/bitcoin-2/image-32.png | Bin 0 -> 1765 bytes networks/bitcoin-2/image-64.png | Bin 0 -> 3883 bytes networks/bitcoin-2/image.svg | 13 +++++ networks/bitcoin-2/info.json | 25 +++++++++ requirements/essential.txt | 3 +- 28 files changed, 242 insertions(+), 7 deletions(-) create mode 100644 assets/unknown-bitcoin/image-128.png create mode 100644 assets/unknown-bitcoin/image-256.png create mode 100644 assets/unknown-bitcoin/image-32.png create mode 100644 assets/unknown-bitcoin/image-64.png create mode 100644 assets/unknown-bitcoin/image.svg create mode 100644 assets/unknown-bitcoin/info.json create mode 100644 libraries/models/terminals/address_bitcoin.py create mode 100644 networks/bitcoin-1/image-128.png create mode 100644 networks/bitcoin-1/image-256.png create mode 100644 networks/bitcoin-1/image-32.png create mode 100644 networks/bitcoin-1/image-64.png create mode 100644 networks/bitcoin-1/image.svg create mode 100644 networks/bitcoin-1/info.json create mode 100644 networks/bitcoin-2/image-128.png create mode 100644 networks/bitcoin-2/image-256.png create mode 100644 networks/bitcoin-2/image-32.png create mode 100644 networks/bitcoin-2/image-64.png create mode 100644 networks/bitcoin-2/image.svg create mode 100644 networks/bitcoin-2/info.json diff --git a/VERSION b/VERSION index f1547e6..815e68d 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.0.7 +2.0.8 diff --git a/assets/btc-0/info.json b/assets/btc-0/info.json index 76329b9..fc8d2a0 100644 --- a/assets/btc-0/info.json +++ b/assets/btc-0/info.json @@ -1,5 +1,28 @@ { - "contracts": [], + "contracts": [ + { + "address": "1111111111111111111114oLvT2", + "decimals": 8, + "name": "Bitcoin", + "network": "bitcoin-1", + "symbol": "BTC", + "tags": [ + "mainnet", + "native-coin" + ] + }, + { + "address": "1111111111111111111114oLvT2", + "decimals": 8, + "name": "Bitcoin", + "network": "bitcoin-2", + "symbol": "BTC", + "tags": [ + "native-coin", + "testnet" + ] + } + ], "id": "btc-0", "images": { "png128": true, @@ -19,5 +42,7 @@ "url": "https://www.coingecko.com/en/coins/bitcoin" } ], - "tags": [] + "tags": [ + "bitcoin" + ] } diff --git a/assets/unknown-bitcoin/image-128.png b/assets/unknown-bitcoin/image-128.png new file mode 100644 index 0000000000000000000000000000000000000000..337897e7d43fa61fb7e5e741973fbca233f520e5 GIT binary patch literal 7955 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 JT3x5u{{eT$36cN+ literal 0 HcmV?d00001 diff --git a/assets/unknown-bitcoin/image-256.png b/assets/unknown-bitcoin/image-256.png new file mode 100644 index 0000000000000000000000000000000000000000..882c78f8bdb59293c34e05a103113ae2ea0d0a15 GIT binary patch literal 11190 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 literal 0 HcmV?d00001 diff --git a/assets/unknown-bitcoin/image-32.png b/assets/unknown-bitcoin/image-32.png new file mode 100644 index 0000000000000000000000000000000000000000..66c269a788fc388858284637231695db1fc03e92 GIT binary patch literal 1765 zcmVGdRnm#XOk-w55E)4dvT&3c8H7P>7lPAHyBlGqd!wxg ziiT!73lW47gT~Q@aUtkp76DDB?L;$lI;j}VPbV2o%%7F=y?5*0+l#I$oOD%E?VRP~ zzI)EO=X~G!4ndw4i^a+<%W4MDthL?-APAt)7z0Xa+!!;-80$60Jdjd82#3Sp=W{Pv z?ZEKx@K#Fc$Hti7aLzXpLZFm_)*8l`A1@&Ulu|IpptXil>c51Le`>A2tgf!^d#?au zu~?C1S$`#j{80!I@H`Jnsk~l`F$N(7JkMJ)# z6Rzw2HWG<+=L}$EWaI;5%mdDO(DS^Nn}-ne^zD+Z)bar-PY-|jSF-%QOVRCX3 z;cytm#l>iEZ^wlT7qGCf07_}rS92T(e!u@i#@Jud-#7q_j*iwUr9RG8bIv&i1_p5a z_;C~!6(JIdq`MqdRaF=tAIHeZ2x@CgM2q8d7c7$uKVcWK! z5b_BCkkQf6pp^0n=e%^K$QffOC@8><8#i$J^l1noz!-zi=fmvmEGVV0EDM`9ZNi~L zhp=zozW*Vs<##EiUU{C^K&6yXAw=nFB%_o)xt=TAk3Bs-pp-&ujr#g}Y~H*XO-)T` zZEeNgy?bGd0p}bY9UYjNnE_)gCrN3oqtqDFkPpRDN-;M#hoPY%Fveh678)BHK?p%I znS|f(M_pYVwAP@M!f_nDefu_NFQj~KRb#d?BJeSOZMlupDLbALrDHpXCaaSK@bcx$ zOsxqa8LH)+gL4kYaZpuNg)3LCproWED-6?A%oy87D=I1`2_atzA+k2g+O=!Z*w~1} zhYuqV2w=^cH8_9%JQ^Dt!5BknX(@_}iy?%75CYq`Z^zlQXR&_$`kWk)^7U0^W#tr4 zJ;xW0R(PuDV2-C!9ffT4r1rdooH!k!R_0(;q&>>+S-ahAb@y0j>5u1l$Di1 z2$2*2DV9ty#=gktfts3{Z-PxsHmtwBofKM z%@_lv)QTF>wr#}Y@h?N6P=6+X6w#bXBocdU+x~F5Fp*MX>(;Hfe*HQCU}0eaEiEl5 zFE58>S*wcDcbz8^iEoTCpJx@Nu~_T_%d#F=mKAheHy3$i^kJHQ^D!X=lF8(Rl(IP- z4)^Dj<8QoNBG70Hl}G|NLLu zaoWbl#>$K_O-iXKfO=z0nK34i3Lp+(k`VHQ5OV+Ltmi)f)j?tb;`X1Z00000NkvXX Hu0mjfRmD#I literal 0 HcmV?d00001 diff --git a/assets/unknown-bitcoin/image-64.png b/assets/unknown-bitcoin/image-64.png new file mode 100644 index 0000000000000000000000000000000000000000..eb3a283a39fe3316a78c0f24c47e4a5fb934ea45 GIT binary patch literal 3883 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 + + + + + + + + + + diff --git a/assets/unknown-bitcoin/info.json b/assets/unknown-bitcoin/info.json new file mode 100644 index 0000000..75f383d --- /dev/null +++ b/assets/unknown-bitcoin/info.json @@ -0,0 +1,16 @@ +{ + "contracts": [], + "id": "unknown-bitcoin", + "images": { + "png128": true, + "png256": true, + "png32": true, + "png64": true, + "svg": true + }, + "name": "Unknown Bitcoin Asset", + "references": [], + "tags": [ + "bitcoin" + ] +} diff --git a/enums/ids/asset.json b/enums/ids/asset.json index 451754f..4504222 100644 --- a/enums/ids/asset.json +++ b/enums/ids/asset.json @@ -1235,6 +1235,10 @@ "description": "Unknown Bifrost Asset", "value": "unknown-bifrost" }, + { + "description": "Unknown Bitcoin Asset", + "value": "unknown-bitcoin" + }, { "description": "Unknown BNB Asset", "value": "unknown-bnb" diff --git a/enums/ids/network.json b/enums/ids/network.json index 31be78b..597cfa1 100644 --- a/enums/ids/network.json +++ b/enums/ids/network.json @@ -1,4 +1,12 @@ [ + { + "description": "Bitcoin Mainnet", + "value": "bitcoin-1" + }, + { + "description": "Bitcoin Testnet", + "value": "bitcoin-2" + }, { "description": "Ethereum Mainnet", "value": "evm-1" diff --git a/enums/tags/asset.json b/enums/tags/asset.json index 75d34d1..a8ffc8d 100644 --- a/enums/tags/asset.json +++ b/enums/tags/asset.json @@ -15,6 +15,10 @@ "value": "bifrost", "description": "Main network of asset is Bifrost" }, + { + "value": "bitcoin", + "description": "Main network of asset is Bitcoin" + }, { "value": "bnb", "description": "Main network of asset is BNB chain" diff --git a/enums/tags/network.json b/enums/tags/network.json index 8c7fb09..334dd2d 100644 --- a/enums/tags/network.json +++ b/enums/tags/network.json @@ -15,6 +15,10 @@ "value": "bifrost", "description": "Bifrost networks" }, + { + "value": "bitcoin", + "description": "Bitcoin networks" + }, { "value": "bnb", "description": "BNB networks" diff --git a/libraries/models/terminals/address.py b/libraries/models/terminals/address.py index 93231e1..101b4c3 100644 --- a/libraries/models/terminals/address.py +++ b/libraries/models/terminals/address.py @@ -1,16 +1,21 @@ -from typing import Union, Self +from typing import Union, Self, get_args -from pydantic import RootModel +from pydantic import RootModel, model_validator +from libraries.models.terminals.address_bitcoin import AddressBitcoin from libraries.models.terminals.address_evm import AddressEvm +ADDRESS_TYPES = Union[AddressEvm, AddressBitcoin] -class Address(RootModel[Union[AddressEvm]]): + +class Address(RootModel[ADDRESS_TYPES]): """A union of constrained `str` about each address of blockchain networks.""" def __eq__(self, other: Self) -> bool: if self.is_evm_address and other.is_evm_address: return self.root.__eq__(other.root) + elif self.is_bitcoin_address and other.is_bitcoin_address: + return self.root.__eq__(other.root) else: raise ValueError( f"Cannot compare difference addresses {type(self.root)} and {type(other.root)}." @@ -22,6 +27,8 @@ def __ne__(self, other: Self) -> bool: def __lt__(self, other: Self) -> bool: if self.is_evm_address and other.is_evm_address: return self.root.__lt__(other.root) + elif self.is_bitcoin_address and other.is_bitcoin_address: + return self.root.__lt__(other.root) else: raise ValueError( f"Cannot compare difference addresses {type(self.root)} and {type(other.root)}." @@ -50,3 +57,26 @@ def is_evm_address(self) -> bool: Whether the address is an EVM address. """ return isinstance(self.root, AddressEvm) + + @property + def is_bitcoin_address(self) -> bool: + """Check if the address is a Bitcoin address. + + Returns: + Whether the address is a Bitcoin address. + """ + return isinstance(self.root, AddressBitcoin) + + @model_validator(mode="after") + def validator(self) -> Self: + root_types = get_args(ADDRESS_TYPES) + if type(self.root) in root_types: + return self + elif isinstance(self.root, str): + for root_type in root_types: + try: + self.root = root_type(self.root) + return self + except ValueError: + continue + raise ValueError(f"Invalid address: {self.root}") diff --git a/libraries/models/terminals/address_bitcoin.py b/libraries/models/terminals/address_bitcoin.py new file mode 100644 index 0000000..ce807b6 --- /dev/null +++ b/libraries/models/terminals/address_bitcoin.py @@ -0,0 +1,51 @@ +from typing import Self + +from bitcoinlib.encoding import EncodingError +from bitcoinlib.keys import deserialize_address + +from libraries.models.templates.str_model import StrModel + + +class AddressBitcoin(StrModel): + """A constrained `str` for the Bitcoin address.""" + + @property + def __deserialized_result(self) -> dict: + """The result from the deserialization the Bitcoin address.""" + return deserialize_address(self.root) + + @property + def public_key_hash(self) -> str: + """The public key hash of the Bitcoin address.""" + return self.__deserialized_result.get("public_key_hash") + + @property + def encoding_type(self) -> str: + """The encoding type of the Bitcoin address.""" + return self.__deserialized_result.get("encoding") + + @property + def script_type(self) -> str: + """The script type of the Bitcoin address.""" + return self.__deserialized_result.get("script_type") + + def __eq__(self, other: Self | str) -> bool: + match other: + case AddressBitcoin(): + return self.root.lower() == other.root.lower() + case str(): + return self.root.lower() == other.lower() + case _: + raise ValueError(f"Cannot compare {self} with {other}") + + def __lt__(self, other: Self) -> bool: + return self.public_key_hash < other.public_key_hash + + def __hash__(self) -> int: + return hash(self.public_key_hash) + + def validate_str(self) -> Self: + try: + return deserialize_address(self.root).get("address") + except EncodingError: + raise ValueError(f"Invalid Bitcoin address: {self.root}") diff --git a/libraries/models/terminals/engine.py b/libraries/models/terminals/engine.py index 4701759..e093143 100644 --- a/libraries/models/terminals/engine.py +++ b/libraries/models/terminals/engine.py @@ -13,6 +13,7 @@ class _EngineEnum(StrEnum): """ EVM: str = "evm" + BITCOIN: str = "bitcoin" UNKNOWN: str = "unknown" @@ -28,6 +29,15 @@ def is_evm(self) -> bool: """ return self.root == _EngineEnum.EVM + @property + def is_bitcoin(self) -> bool: + """Check if the engine is a Bitcoin engine. + + Returns: + Whether the engine is a Bitcoin engine. + """ + return self.root == _EngineEnum.BITCOIN + @property def is_unknown(self) -> bool: """Check if the engine is an unknown engine. diff --git a/networks/bitcoin-1/image-128.png b/networks/bitcoin-1/image-128.png new file mode 100644 index 0000000000000000000000000000000000000000..458a5a8765a493621fb82940910df5ae24aa73bd GIT binary patch literal 7250 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 literal 0 HcmV?d00001 diff --git a/networks/bitcoin-1/image-256.png b/networks/bitcoin-1/image-256.png new file mode 100644 index 0000000000000000000000000000000000000000..21dbb9ffb0c21228beeeee5781bcaf48bbfb7b43 GIT binary patch literal 10390 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 HZNvWuPuj>` literal 0 HcmV?d00001 diff --git a/networks/bitcoin-1/image-32.png b/networks/bitcoin-1/image-32.png new file mode 100644 index 0000000000000000000000000000000000000000..c3acebe619bdc0dce570cdf2caab2ab971155b0a GIT binary patch literal 1620 zcmV-a2CMmrP)&oTs4qx}ofaXILQ~PGEMk!?w`tlmZj}U@)bScCu^o>ybMO7W!^3qvbv%2ES5YXP58k9!2*Evc)N#3IzaxS%eW0UKTi>rgFT{JAAQ`cV#7m%E7Kp z#?wdC>1U0Rb`h{naSE#Qj|g}I#t5olRmVhmMnw+i9vy!5T{$q>S8Q43MURQ$k-(GY zBvq_yEL)y|z!#EKORD;0X*R#V_?>@GH|)UGL+fq}@qQeJvLlYOXy46e1j0~=6MZpG z>_e-*G5*?$4wMe9yCV?qw}B^}zeaHP_aR>dt=+BVM2T{;yGPx~4r5>Y z*?b>JO`fop2`An*W3b(UC#@@zjCkPrNbZJeG-D^I{NiII$G(C)|3YSV!v=y+9>Cx6 zO|VJriaH2H28Zfzf{S%D=E@ju0QcA3ON#YLr_aMw;8Q%+-oV z0JPg6veh<1b!s8M23h-|g~@Oi{*o;O<3m!yjSW-*{0M?Vbzv;Yf}+Y+UzJYV2-Uh2 zQ@j;vYMsY-nD^YB{W&**6x#5&?5&zlokwR!v(nXRMvx94p`eX8pbpc%<9hBuJpAqZ zVEeu-I}1RH&W@7)b3Y_=;Dz;w6oi7`@MaMo({V>Ng|9z_yZ8^xhFzGOK2dE>n~=VE z5O?kmi>70_g;f$+q4qY0d=a^EQ`Ld9N3pN`h~(Lah<~*cd+zu1-4_zv^*zk{?gd+^ zACF{0#(<90odR`8eht#J7PD?!wf>bUbnGLFi`ZhW@G0(4gyp3O8UNZ2==6J zxN!*^iXgewNbwd-`wqNK4gWyt@P?TiB1zC;yyA#QYl%G38|&g6^O!C#^?Lm5Xb1Gq$zmGwkK zWq(akI@8y-G3Uwgz^fxlRkL5{ygu}Tx?EpVlsY$}sqT*6CQ276$Clo)!4!92YIQgY zq|OeNOlbH~!{AXMq*jMhb@#m;e2D`9g`V+##dfEu4n#SjVXaW7;i8-nr#euHZTCBG zf|?EhSnaAPNN$O67_>aMhM~t@_sZ>Hpht>YQTVahw{- z==J(>3LM3m!?}GIPyJ8V@k0MS+0|*S+wFus>e%X_Q=xg$d5)eGk>~%L^ZY*o=-8t% SepFik00008P)o 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 literal 0 HcmV?d00001 diff --git a/networks/bitcoin-1/image.svg b/networks/bitcoin-1/image.svg new file mode 100644 index 0000000..d6b71fc --- /dev/null +++ b/networks/bitcoin-1/image.svg @@ -0,0 +1,6 @@ + + + + diff --git a/networks/bitcoin-1/info.json b/networks/bitcoin-1/info.json new file mode 100644 index 0000000..cb7b72e --- /dev/null +++ b/networks/bitcoin-1/info.json @@ -0,0 +1,25 @@ +{ + "currency": { + "address": "1111111111111111111114oLvT2", + "decimals": 8, + "id": "btc-0", + "name": "Bitcoin", + "symbol": "BTC" + }, + "engine": "bitcoin", + "explorers": [], + "id": "bitcoin-1", + "images": { + "png128": true, + "png256": true, + "png32": true, + "png64": true, + "svg": true + }, + "name": "Bitcoin Mainnet", + "network": "mainnet", + "tags": [ + "bitcoin" + ], + "unknownAssetId": "unknown-bitcoin" +} diff --git a/networks/bitcoin-2/image-128.png b/networks/bitcoin-2/image-128.png new file mode 100644 index 0000000000000000000000000000000000000000..337897e7d43fa61fb7e5e741973fbca233f520e5 GIT binary patch literal 7955 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 JT3x5u{{eT$36cN+ literal 0 HcmV?d00001 diff --git a/networks/bitcoin-2/image-256.png b/networks/bitcoin-2/image-256.png new file mode 100644 index 0000000000000000000000000000000000000000..882c78f8bdb59293c34e05a103113ae2ea0d0a15 GIT binary patch literal 11190 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 literal 0 HcmV?d00001 diff --git a/networks/bitcoin-2/image-32.png b/networks/bitcoin-2/image-32.png new file mode 100644 index 0000000000000000000000000000000000000000..66c269a788fc388858284637231695db1fc03e92 GIT binary patch literal 1765 zcmVGdRnm#XOk-w55E)4dvT&3c8H7P>7lPAHyBlGqd!wxg ziiT!73lW47gT~Q@aUtkp76DDB?L;$lI;j}VPbV2o%%7F=y?5*0+l#I$oOD%E?VRP~ zzI)EO=X~G!4ndw4i^a+<%W4MDthL?-APAt)7z0Xa+!!;-80$60Jdjd82#3Sp=W{Pv z?ZEKx@K#Fc$Hti7aLzXpLZFm_)*8l`A1@&Ulu|IpptXil>c51Le`>A2tgf!^d#?au zu~?C1S$`#j{80!I@H`Jnsk~l`F$N(7JkMJ)# z6Rzw2HWG<+=L}$EWaI;5%mdDO(DS^Nn}-ne^zD+Z)bar-PY-|jSF-%QOVRCX3 z;cytm#l>iEZ^wlT7qGCf07_}rS92T(e!u@i#@Jud-#7q_j*iwUr9RG8bIv&i1_p5a z_;C~!6(JIdq`MqdRaF=tAIHeZ2x@CgM2q8d7c7$uKVcWK! z5b_BCkkQf6pp^0n=e%^K$QffOC@8><8#i$J^l1noz!-zi=fmvmEGVV0EDM`9ZNi~L zhp=zozW*Vs<##EiUU{C^K&6yXAw=nFB%_o)xt=TAk3Bs-pp-&ujr#g}Y~H*XO-)T` zZEeNgy?bGd0p}bY9UYjNnE_)gCrN3oqtqDFkPpRDN-;M#hoPY%Fveh678)BHK?p%I znS|f(M_pYVwAP@M!f_nDefu_NFQj~KRb#d?BJeSOZMlupDLbALrDHpXCaaSK@bcx$ zOsxqa8LH)+gL4kYaZpuNg)3LCproWED-6?A%oy87D=I1`2_atzA+k2g+O=!Z*w~1} zhYuqV2w=^cH8_9%JQ^Dt!5BknX(@_}iy?%75CYq`Z^zlQXR&_$`kWk)^7U0^W#tr4 zJ;xW0R(PuDV2-C!9ffT4r1rdooH!k!R_0(;q&>>+S-ahAb@y0j>5u1l$Di1 z2$2*2DV9ty#=gktfts3{Z-PxsHmtwBofKM z%@_lv)QTF>wr#}Y@h?N6P=6+X6w#bXBocdU+x~F5Fp*MX>(;Hfe*HQCU}0eaEiEl5 zFE58>S*wcDcbz8^iEoTCpJx@Nu~_T_%d#F=mKAheHy3$i^kJHQ^D!X=lF8(Rl(IP- z4)^Dj<8QoNBG70Hl}G|NLLu zaoWbl#>$K_O-iXKfO=z0nK34i3Lp+(k`VHQ5OV+Ltmi)f)j?tb;`X1Z00000NkvXX Hu0mjfRmD#I literal 0 HcmV?d00001 diff --git a/networks/bitcoin-2/image-64.png b/networks/bitcoin-2/image-64.png new file mode 100644 index 0000000000000000000000000000000000000000..eb3a283a39fe3316a78c0f24c47e4a5fb934ea45 GIT binary patch literal 3883 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 + + + + + + + + + + diff --git a/networks/bitcoin-2/info.json b/networks/bitcoin-2/info.json new file mode 100644 index 0000000..d4ccf7b --- /dev/null +++ b/networks/bitcoin-2/info.json @@ -0,0 +1,25 @@ +{ + "currency": { + "address": "1111111111111111111114oLvT2", + "decimals": 8, + "id": "btc-0", + "name": "Bitcoin", + "symbol": "BTC" + }, + "engine": "bitcoin", + "explorers": [], + "id": "bitcoin-2", + "images": { + "png128": true, + "png256": true, + "png32": true, + "png64": true, + "svg": true + }, + "name": "Bitcoin Testnet", + "network": "testnet", + "tags": [ + "bitcoin" + ], + "unknownAssetId": "unknown-bitcoin" +} diff --git a/requirements/essential.txt b/requirements/essential.txt index 335a9fe..8e48c57 100644 --- a/requirements/essential.txt +++ b/requirements/essential.txt @@ -1,5 +1,6 @@ # Specifies the essential requirements of the project. +bitcoinlib>=0.6.15 +build>=1.2.1 hexbytes>=0.3.1 pydantic>=2.5.3 web3>=6.14.0 -build>=1.2.1