diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..07507f43 --- /dev/null +++ b/LICENSE @@ -0,0 +1,169 @@ +Business Source License 1.1 + +License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved. +"Business Source License" is a trademark of MariaDB Corporation Ab. + + +----------------------------------------------------------------------------- + +Parameters + +Licensor: Babylon Labs Ltd. + +Licensed Work: Babylon Networks Specification and Parameters Code + The Licensed Work is (c) 2024 Babylon Labs Ltd. + +Additional Use Grant: + +In addition to the uses permitted under the non-production license below, +we grant you a limited, non-exclusive, non-transferable, non-sublicensable, +revocable license, limited as set forth below, to use the Licensed Work +in this repository for production commercial uses built on or using and integrated +with the Babylon Protocol, not including Competing Uses. + +Any use beyond the scope of this license, including uses that are not built on or +using and integrated with the Babylon Protocol, or are Competing Uses, +will terminate this license to you, automatically and without notice. + +This License applies separately and solely to the specific versions of the Licensed Work +in the specified repository on or before the date of this License, and we may require a +different license and different provisions for each subsequent version of the +Licensed Work released by us. + +"Babylon Labs", "we", "our", or "us" means Babylon Labs Ltd. + +"Babylon Protocol" means the Bitcoin staking protocol as further described in the documentation +here (https://docs.babylonlabs.io/docs/introduction/babylon-overview), as updated from time to time. + +"Competing Use" means any use of the Licensed Work in any product, software, protocol, network, +application, or service that is made available to any party and that +(i) substitutes for the use of the Babylon Protocol, +(ii) offers the same or substantially similar functionality as the Babylon Protocol or +(iii) is built on or uses a protocol with substantially similar functionality as the Babylon Protocol +or otherwise facilitates the staking of bitcoin other than by utilizing the Babylon Protocol. + +The provisions in this License apply to each individual, entity, group, or association +(each and collectively, "you" or "your") who uses the Licensed Work for production, +and you agree to such provisions. Your production use of the Licensed Work is conditional on your +agreement to this License. If you do not agree and consent to be bound to this License, +do not so use the Software. + +If you do not fall within the limited scope of this license as described above or below, +or are otherwise not in strict compliance with this License, then this production license does not +extend to you and does not grant you any production use, including any copying, distributing, or +making any derivative use of the Licensed Work for production purposes. + +Limited Scope of License. Your commercial production license to the Licensed Work +under this License does not extend to any use: + +1. unless you have legal capacity to consent and agree to be bound by this License; +2. unless you have the technical knowledge necessary or advisable to understand and evaluate the + risks of using the Licensed Work and the Babylon Protocol; +3. if you are a resident or agent of, or an entity organized, incorporated or doing business in, + Afghanistan, Belarus, Bosnia and Herzegovina, Burundi, Central African Republic, Crimea, Cuba, + Democratic People's Republic of Korea, Democratic Republic of the Congo, + Donetsk or Luhansk Regions of Ukraine, Eritrea, Guinea, Guinea-Bissau, Haiti, Iran, Iraq, Lebanon, + Libya, Mali, Myanmar, Nicaragua, Russia, Somalia, South Sudan, Sudan, Syria, Venezuela, Yemen, + or Zimbabwe or any other country to which the United States, the United Kingdom, + the European Union or any of its member states or the United Nations or any of its member states + (collectively, the "Major Jurisdictions") embargoes goods or imposes sanctions + (such embargoed or sanctioned territories, collectively, the "Restricted Territories"); +4. if you are, or if you directly or indirectly own or control, from any person or entity that is + listed on any sanctions list or equivalent maintained by any of the Major Jurisdictions + (collectively, "Sanctions Lists Persons"); +5. to transact in or with any Restricted Territories or Sanctions List Persons; +6. if you are a U.S. Person as defined in 17 CFR § 230.902, or currently or ordinarily located or + resident in (or incorporated or organized in) the United States of America, Canada, or + Australia (collectively, "Excluded Jurisdictions"), or to transact in or with Excluded Jurisdictions; +7. to defraud, or otherwise materially mislead, any person; +8. in violation of applicable laws, rules or regulations in your relevant jurisdiction; +9. that circumvents any sanctions or export controls targeting you or the country or territory where + you are located; or +10. in any activity that transmits, exchanges, or is otherwise supported by the direct or indirect + proceeds of criminal or fraudulent activity. + +Any production use of the Licensed Work by you confirms your agreement to the foregoing limitations, +and your understanding and agreement that they are limitations and not restrictions. + +Change Date: 2027-08-01 (August 1st, 2027) + +Change License: Apache 2.0 + +----------------------------------------------------------------------------- + +Terms + +The Licensor hereby grants you the right to copy, modify, create derivative +works, redistribute, and make non-production use of the Licensed Work. The +Licensor may make an Additional Use Grant, above, permitting limited +production use. + +Effective on the Change Date, or the fourth anniversary of the first publicly +available distribution of a specific version of the Licensed Work under this +License, whichever comes first, the Licensor hereby grants you rights under +the terms of the Change License, and the rights granted in the paragraph +above terminate. + +If your use of the Licensed Work does not comply with the requirements +currently in effect as described in this License, you must purchase a +commercial license from the Licensor, its affiliated entities, or authorized +resellers, or you must refrain from using the Licensed Work. + +All copies of the original and modified Licensed Work, and derivative works +of the Licensed Work, are subject to this License. This License applies +separately for each version of the Licensed Work and the Change Date may vary +for each version of the Licensed Work released by Licensor. + +You must conspicuously display this License on each original or modified copy +of the Licensed Work. If you receive the Licensed Work in original or +modified form from a third party, the terms and conditions set forth in this +License apply to your use of that work. + +Any use of the Licensed Work in violation of this License will automatically +terminate your rights under this License for the current and all other +versions of the Licensed Work. + +This License does not grant you any right in any trademark or logo of +Licensor or its affiliates (provided that you may use a trademark or logo of +Licensor as expressly required by this License). + +TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON +AN "AS IS" BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, +EXPRESS OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND +TITLE. + +MariaDB hereby grants you permission to use this License’s text to license +your works, and to refer to it using the trademark "Business Source License", +as long as you comply with the Covenants of Licensor below. + +----------------------------------------------------------------------------- + +Covenants of Licensor + +In consideration of the right to use this License’s text and the "Business +Source License" name and trademark, Licensor covenants to MariaDB, and to all +other recipients of the licensed work to be provided by Licensor: + +1. To specify as the Change License the GPL Version 2.0 or any later version, + or a license that is compatible with GPL Version 2.0 or a later version, + where "compatible" means that software provided under the Change License can + be included in a program with software provided under GPL Version 2.0 or a + later version. Licensor may specify additional Change Licenses without + limitation. + +2. To either: (a) specify an additional grant of rights to use that does not + impose any additional restriction on the right granted in this License, as + the Additional Use Grant; or (b) insert the text "None". + +3. To specify a Change Date. + +4. Not to modify this License in any other way. + +----------------------------------------------------------------------------- + +Notice + +The Business Source License (this document, or the "License") is not an Open +Source license. However, the Licensed Work will eventually be made available +under an Open Source License, as stated in this License. diff --git a/README.md b/README.md index 31340e79..d2023850 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,14 @@ -# Networks +## Babylon Networks -This repository contains information about networks launched by Babylon Labs. +Welcome to the Babylon Networks repository. This is your central hub +for network participation information, whether you're +a Bitcoin Staker, +running node, +operating as a validator, +providing finality services, or +participating in the covenant committee. + +At the moment, the following networks are live. +Head over to their pages for more details: +* [Phase-1 mainnet](./bbn-1) +* [Phase-2 testnet](./bbn-test-5) diff --git a/bbn-1/covenant-committee/README.md b/bbn-1/covenant-committee/README.md new file mode 100644 index 00000000..60848268 --- /dev/null +++ b/bbn-1/covenant-committee/README.md @@ -0,0 +1,54 @@ +# Covenant Committee + +The Covenant Emulation Committee comprises entities operating +[Covenant Signer](https://github.com/babylonlabs-io/covenant-signer) daemons. + +For this Mainnet, the Covenant Emulation Committee has 9 members, 3 of which +are operated by Babylon Labs. The Covenant quorum configuration as +well as the current members can be found in the +[staking parameters](../parameters/global-params.json). + +A full list of the endpoints and the corresponding Covenant BTC Public Keys +follows below, grouped by the operating entity. + +## Babylon Labs + +- Signer 0 + - key: `03d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa` + - URL: https://covenant-signer0.babylonlabs.io +- Signer 1 + - key: `034b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa` + - URL: https://covenant-signer1.babylonlabs.io +- Signer 2 + - key: `0223b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1` + - URL: https://covenant-signer2.babylonlabs.io + +## CoinSummer Labs + +- key: `02d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae` +- URL: https://babylon-covenant-signer.coinsummer.com + +## RockX + +- key: `03f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0` +- URL: https://babylon-mainnet-covenant-signer.rockx.com + +## AltLayer + +- key: `038242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7` +- URL: https://babylon-mainnet-covenant-signer.alt.technology + +## Zellic + +- key: `03cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204` +- URL: https://babylon-mainnet-covenant-signer.zellic.net + +## Informal Systems + +- key: `03e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c` +- URL: https://covenant-signer-babylon.informalsystems.io + +## Cubist + +- key: `03de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c` +- URL: https://bbn-mainnet-covsign.cubestake.xyz diff --git a/bbn-1/finality-providers/README.md b/bbn-1/finality-providers/README.md index 9cda06ef..f61d4f93 100644 --- a/bbn-1/finality-providers/README.md +++ b/bbn-1/finality-providers/README.md @@ -39,8 +39,8 @@ requirements: - having participated in the [Babylon testnet-4](https://github.com/babylonchain/networks/tree/ac531139d5a75e575b34a80c9f8fc841cc33adab/bbn-test-4), - to go through a know your business (KYB) process conducted by Babylon Labs, and -- to submit a pull request (PR) before the deadline of **August 16th, end of -the day (EoD) anywhere on earth (AoE)**. +- to submit a pull request (PR) before the deadline of **August 20th, 12pm +coordinated universal time (UTC)**. The pull request created should contain the finality provider's information combined with its EOTS public key, and a signature signed over the information @@ -358,9 +358,8 @@ During the operation of the first stage of the Babylon mainnet, a finality provider can/can't perform the following updates. - ❌ Commission can not be changed -- ❌ Moniker can not be changed - ❌ Finality Provider EOTS key can not be changed -- ✅ Identity, website, security contact, and details can be changed. +- ✅ Moniker, identity, website, security contact, and details can be changed. To update the changeable fields, the finality provider should modify the JSON object containing their information, diff --git a/bbn-1/finality-providers/registry/0xbojack.json b/bbn-1/finality-providers/registry/0xbojack.json new file mode 100644 index 00000000..226b7ca3 --- /dev/null +++ b/bbn-1/finality-providers/registry/0xbojack.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "0xbojack", + "identity": "933397D7278E6F1C", + "website": "https://x.com/coder_chao", + "security_contact": "coderbojack@gmail.com", + "details": "Node Runner" + }, + "eots_pk": "be269d18c63f87af05b6311ed4ecc31bc3ca974b18d7f008cf717a710653c7c4", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Allnodes.json b/bbn-1/finality-providers/registry/Allnodes.json new file mode 100644 index 00000000..266a484e --- /dev/null +++ b/bbn-1/finality-providers/registry/Allnodes.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Allnodes", + "identity": "3999DA33020A4DBC", + "website": "https://www.allnodes.com", + "security_contact": "support@allnodes.com", + "details": "Reliable non-custodial Validator run by the industry leader - Allnodes" + }, + "eots_pk": "b08eaaba839a1c36d51a10c74ecf8b23599273469a65a83243348a9fc0bc7605", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/Allo.json b/bbn-1/finality-providers/registry/Allo.json new file mode 100644 index 00000000..30726957 --- /dev/null +++ b/bbn-1/finality-providers/registry/Allo.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Allo", + "identity": "", + "website": "https://www.allo.xyz", + "security_contact": "kingsley@allo.xyz", + "details": "Allo is a protocol that facilitates Bitcoin staking and lending" + }, + "eots_pk": "4444a8922b22aaa156fd7d6f3423c581d74156cdccea12fabe98f31d230e463f", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/AnchorNode.json b/bbn-1/finality-providers/registry/AnchorNode.json new file mode 100644 index 00000000..7bef2e43 --- /dev/null +++ b/bbn-1/finality-providers/registry/AnchorNode.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "AnchorNode", + "identity": "74AF1386843D8345", + "website": "https://anchornode.io", + "security_contact": "vickyzhu622@gmail.com", + "details": "Anchor Node serves as a symbol of blockchain's decentralized architecture." + }, + "eots_pk": "879270978744dece271e953d78959f7aa93459390a8ac58a32eae43a962f89e3", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Anchorage-Digital.json b/bbn-1/finality-providers/registry/Anchorage-Digital.json new file mode 100644 index 00000000..283197fa --- /dev/null +++ b/bbn-1/finality-providers/registry/Anchorage-Digital.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Anchorage Digital", + "identity": "17D0A114A90FD55F", + "website": "https://www.anchorage.com/", + "security_contact": "babylon-operator@anchorage.com", + "details": "Anchorage Digital, a regulated crypto platform, offers institutions an unparalleled combination of secure custody, regulatory compliance, product breadth, and client service." + }, + "eots_pk": "c405fd997340c532a3b788b3186e779ed7cf9b5f2d6b8c8ad2351d82cfd0fb87", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Ankr.json b/bbn-1/finality-providers/registry/Ankr.json new file mode 100644 index 00000000..ffd5f92f --- /dev/null +++ b/bbn-1/finality-providers/registry/Ankr.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Ankr", + "identity": "", + "website": "www.ankr.com", + "security_contact": "mikhail.levin@ankr.com", + "details": "Build web3 apps with a full suite of developer tools. Power them with fast, global, decentralized connections to dozens of chains" + }, + "eots_pk": "cc25813bdd6fb8a9c2e343536a917598eebc955e88418e57875dd593eaa05f3c", + "commission": "0.10" +} diff --git a/bbn-1/finality-providers/registry/Anomaly.json b/bbn-1/finality-providers/registry/Anomaly.json new file mode 100644 index 00000000..8a7f915c --- /dev/null +++ b/bbn-1/finality-providers/registry/Anomaly.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Anomaly", + "identity": "", + "website": "", + "security_contact": "validatorfm88@proton.me", + "details": "" + }, + "eots_pk": "abbeb65aa132350ec53a0fa77ba655d71cec70426c921565eb050454a9fbcb3d", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/B-Harvest.json b/bbn-1/finality-providers/registry/B-Harvest.json index b3cf1910..ff06df01 100644 --- a/bbn-1/finality-providers/registry/B-Harvest.json +++ b/bbn-1/finality-providers/registry/B-Harvest.json @@ -1,6 +1,6 @@ { "description": { - "moniker": "B-Harvest", + "moniker": "B-Harvest/Merkle Alliance", "identity": "8957C5091FBF4192", "website": "https://bharvest.io", "security_contact": "contact@bharvest.io", diff --git a/bbn-1/finality-providers/registry/BSquaredNetwork.json b/bbn-1/finality-providers/registry/BSquaredNetwork.json new file mode 100644 index 00000000..99d5f2f1 --- /dev/null +++ b/bbn-1/finality-providers/registry/BSquaredNetwork.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "BSquaredNetwork", + "identity": "", + "website": "https://www.bsquared.network/", + "security_contact": "contact@bsqaured.network", + "details": "The Most Practical Bitcoin Layer-2 Network | The First Bitcoin DA Layer" + }, + "eots_pk": "2f8ec74d558fe7a97d10be230bf1485db9be675228abfbf957ba050c714b679a", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/BSquared_x_Bedrock.json b/bbn-1/finality-providers/registry/BSquared_x_Bedrock.json new file mode 100644 index 00000000..7d2cca98 --- /dev/null +++ b/bbn-1/finality-providers/registry/BSquared_x_Bedrock.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "BSquared_x_Bedrock", + "identity": "", + "website": "https://www.bsquared.network/", + "security_contact": "contact@bsqaured.network", + "details": "The Most Practical Bitcoin Layer-2 Network | The First Bitcoin DA Layer" + }, + "eots_pk": "f0427621d40010e09d26b34358a8a4e688f8f8a98303af9815c1341b008fda6a", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/BSquared_x_P2P.json b/bbn-1/finality-providers/registry/BSquared_x_P2P.json new file mode 100644 index 00000000..89982e9a --- /dev/null +++ b/bbn-1/finality-providers/registry/BSquared_x_P2P.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "BSquared_x_P2P.org", + "identity": "", + "website": "https://www.bsquared.network", + "security_contact": "cosmos-security@p2p.org", + "details": "BSquared Network is the Most Practical Bitcoin Layer-2 Network | the First Bitcoin DA Layer." + }, + "eots_pk": "522c8443813f19a2d9d8d1149f9ba6a8028f778ba5e681ea98b872e17ccb37ef", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Bevm.json b/bbn-1/finality-providers/registry/Bevm.json new file mode 100644 index 00000000..927966ef --- /dev/null +++ b/bbn-1/finality-providers/registry/Bevm.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Bevm", + "identity": "", + "website": "https://bevm.io", + "security_contact": "0xmassis@gmail.com", + "details": "BEVM is the first fully decentralized EVM-compatible Bitcoin L2 that uses BTC as Gas." + }, + "eots_pk": "3e1d931ca6fdd448873da7c5f995b044d3e5641e6981280d8743547c90aaf812", + "commission": "0.1" +} diff --git a/bbn-1/finality-providers/registry/BitcoinSuisse2.json b/bbn-1/finality-providers/registry/BitcoinSuisse2.json new file mode 100644 index 00000000..3027f013 --- /dev/null +++ b/bbn-1/finality-providers/registry/BitcoinSuisse2.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "BitcoinSuissePrivate", + "identity": "", + "website": "https://bitcoinsuisse.com/", + "security_contact": "staking@bitcoinsuisse.com", + "details": "Bitcoin Suisse offers the staking of all major proof-of-stake crypto assets." + }, + "eots_pk": "be2f7942c5dfaa826aec61355ef427fad1095491aa04850c450f812f9b9ca9ed", + "commission": "0.99" +} diff --git a/bbn-1/finality-providers/registry/BlockHunters.json b/bbn-1/finality-providers/registry/BlockHunters.json new file mode 100644 index 00000000..ad57b18f --- /dev/null +++ b/bbn-1/finality-providers/registry/BlockHunters.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "BlockHunters 🎯", + "identity": "BEAC09B6FE7F908B", + "website": "https://blockhunters.org", + "security_contact": "ops@blockhunters.org", + "details": "Hunt for the best stake. 🏹" + }, + "eots_pk": "1f8ea557fb2684e79a1f971be1e21d99015328c60769d8e27c4c5945a0e2ed6b", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/Blockdaemon.json b/bbn-1/finality-providers/registry/Blockdaemon.json new file mode 100644 index 00000000..36ce2e3c --- /dev/null +++ b/bbn-1/finality-providers/registry/Blockdaemon.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Blockdaemon", + "identity": "35892AC552B8A0A8", + "website": "https://www.blockdaemon.com", + "security_contact": "support@blockdaemon.com", + "details": "Blockdaemon provides maximum uptime for the Babylon network so that you can be confident your node will be there, ready and secure, for optimal reward generation. Contact us to stake on Bitcoin today." + }, + "eots_pk": "8380e07bbb271c9811369d20de6f452b9303268bc19cddcc30b1ea20e34ec55c", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/Caliber.json b/bbn-1/finality-providers/registry/Caliber.json index 049ab5cd..5e9741e8 100644 --- a/bbn-1/finality-providers/registry/Caliber.json +++ b/bbn-1/finality-providers/registry/Caliber.json @@ -2,7 +2,7 @@ "description": { "moniker": "Caliber", "identity": "BE9E5DF391D7093E", - "website": "caliber.build", + "website": "https://caliber.build", "security_contact": "devop@caliber.build", "details": "Caliber is a Web3 Venture Builder started by veteran web3 builders and aims to build the next generation of web3 startups with new founders. We consider ourselves a co-founder of each startup & work side-by-side with founders" }, diff --git a/bbn-1/finality-providers/registry/CertiK.json b/bbn-1/finality-providers/registry/CertiK.json new file mode 100644 index 00000000..11a84ed3 --- /dev/null +++ b/bbn-1/finality-providers/registry/CertiK.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "CertiK", + "identity": "AB3900C319A37B3D", + "website": "https://www.certik.com", + "security_contact": "node@certik.com", + "details": "CertiK is the world's leading smart contract auditor. We provide full-cycle security solutions for enterprises, including auditing, security rating,Compliance&AML,investment and other security-related services, elevating the entire Web3 journey of our clients." + }, + "eots_pk": "8c8a20dc13c124ac1f7aa7af69a13a4e121abf5934e6b384c6d13c5663fdc633", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/ChainUp.json b/bbn-1/finality-providers/registry/ChainUp.json new file mode 100644 index 00000000..92d767b8 --- /dev/null +++ b/bbn-1/finality-providers/registry/ChainUp.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "ChainUp", + "identity": "986C0C86F27510DE", + "website": "https://www.chainup.com/", + "security_contact": "randd@chainup.com", + "details": "ChainUp is an enterprise-grade blockchain and web3 development firm." + }, + "eots_pk": "31287a9728f7b11863b9c56fc4cca103f0473dcdc6746ed7f79050d3adff644b", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Cobo.json b/bbn-1/finality-providers/registry/Cobo.json new file mode 100644 index 00000000..04e8f278 --- /dev/null +++ b/bbn-1/finality-providers/registry/Cobo.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Cobo", + "identity": "3B7C85200D5B57A9", + "website": "https://www.cobo.com/", + "security_contact": "security@cobo.com", + "details": "Cobo is a trusted custody and wallet infrastructure provider that simplifies digital asset security. We empower organizations and developers to innovate and scale their blockchain businesses with ease." + }, + "eots_pk": "ef21fbe4f755892724c2fd7b00abe94bfcc6a965b7a84bcf087bb7d9529bc627", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Coinage_x_Daic.json b/bbn-1/finality-providers/registry/Coinage_x_Daic.json new file mode 100644 index 00000000..22861ba3 --- /dev/null +++ b/bbn-1/finality-providers/registry/Coinage_x_Daic.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Coinage x DAIC", + "identity": "C92C6965D89F07A3", + "website": "https://daic.capital", + "security_contact": "office@daic.capital", + "details": "The official validator node from Coinage (Coinage.Media) and DAIC (https://daic.capital/telegram)" + }, + "eots_pk": "61d437bcff4512e45075b5c12fc9b0ececd3e7c87512e0d7fb599c3a28e2671c", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Colossus.json b/bbn-1/finality-providers/registry/Colossus.json new file mode 100644 index 00000000..4be0b5cb --- /dev/null +++ b/bbn-1/finality-providers/registry/Colossus.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Colossus", + "identity": "32A5F1629806ED70", + "website": "https://colossus.digital", + "security_contact": "babylon@colossus.digital", + "details": "Institutional BTC staking from regulated custody" + }, + "eots_pk": "b5b2e5acbfebb565074cbaabc5fe414ce2a7aeddb05c811b2785b8397cffd591", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/CosmosSpaces.json b/bbn-1/finality-providers/registry/CosmosSpaces.json new file mode 100644 index 00000000..d9cd5cb5 --- /dev/null +++ b/bbn-1/finality-providers/registry/CosmosSpaces.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "CosmosSpaces", + "identity": "06B033BAC39DA21C", + "website": "https://cosmosspaces.zone", + "security_contact": "security@cosmosspaces.zone", + "details": "Bare Metal Validators, Relayers, and RPC providers. Top tier infrastructure providers rooted in the Cosmos community." + }, + "eots_pk": "9a5e201fe1c1d381457d9d57689673e871641183ab69ce92f6723e883de4be53", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/CroutonDigital.json b/bbn-1/finality-providers/registry/CroutonDigital.json new file mode 100644 index 00000000..48142a2b --- /dev/null +++ b/bbn-1/finality-providers/registry/CroutonDigital.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "CroutonDigital", + "identity": "47B453B80ECFA342", + "website": "https:/crouton.digital", + "security_contact": "official@crouton.digital", + "details": "Your everyday crypto partner" + }, + "eots_pk": "ada2702bfad3d65c4b16893134a95f0aa7f9b19ae13cf0178ac249c8e1f7c576", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/CryptoCrew.json b/bbn-1/finality-providers/registry/CryptoCrew.json new file mode 100644 index 00000000..438584e8 --- /dev/null +++ b/bbn-1/finality-providers/registry/CryptoCrew.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "✅ CryptoCrew", + "identity": "9AE70F9E3EDA8956", + "website": "https://ccvalidators.com", + "security_contact": "support@ccvalidators.com", + "details": "Secure BTC staking with CryptoCrew. We power the interchain. t.me/cryptocrew_validators" + }, + "eots_pk": "84b63c04789c992aec4979599d94245721ec74ffa4474380121f1446be12d2c6", + "commission": "0.03" +} \ No newline at end of file diff --git a/bbn-1/finality-providers/registry/DSRV.json b/bbn-1/finality-providers/registry/DSRV.json index 189be1e9..948d63f6 100644 --- a/bbn-1/finality-providers/registry/DSRV.json +++ b/bbn-1/finality-providers/registry/DSRV.json @@ -2,7 +2,7 @@ "description": { "moniker": "DSRV", "identity": "CC434B6FE536F51B", - "website": "dsrvlabs.com", + "website": "https://dsrvlabs.com", "security_contact": "validator@dsrvlabs.com", "details": "DSRV is an integrated blockchain solutions company with the mission of enriching the crypto ecosystem via stronger connectivity. We strive to be your gateway to a suite of all-comprehensive blockchain services. Everything distributed, served complete." }, diff --git a/bbn-1/finality-providers/registry/Decentr.json b/bbn-1/finality-providers/registry/Decentr.json new file mode 100644 index 00000000..60faf394 --- /dev/null +++ b/bbn-1/finality-providers/registry/Decentr.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Decentr", + "identity": "FD3C0BCE9D7F7CF5", + "website": "https://decentr.net", + "security_contact": "yann.w3217@gmail.com", + "details": "Decentr maintain a distributed ledger, a shared copy of the blockchain's transaction history." + }, + "eots_pk": "59f19690c77004d0f4222c628cb5270e5a7a5c171987e89e33ba18d3e1a28abc", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/EquinoxDAO.json b/bbn-1/finality-providers/registry/EquinoxDAO.json new file mode 100644 index 00000000..41c3d85c --- /dev/null +++ b/bbn-1/finality-providers/registry/EquinoxDAO.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "EquinoxDAO", + "identity": "048733E2C6061B87", + "website": "https://www.equinoxdao.xyz", + "security_contact": "wangzhaozhu1@gmail.com", + "details": "professional Node Service Provider by EquinoxDAO" + }, + "eots_pk": "04439d165b72bac13c16a22744a55cb249615b23b769fc393188cd4eed33f189", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/FTPFProvider.json b/bbn-1/finality-providers/registry/FTPFProvider.json new file mode 100644 index 00000000..8e93791b --- /dev/null +++ b/bbn-1/finality-providers/registry/FTPFProvider.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "FTPFProvider", + "identity": "7F770DBD8E989AEE", + "website": "https://solodan.xyz", + "security_contact": "agency.switchtarget@gmail.com", + "details": "FTP finality provider is managed by the founders of our web3 community, in case you have any question please visit @ftp_crypto, or contact @daniel_solo directly." + }, + "eots_pk": "756a26562404ba1ffb87fd826006dc258520a74ccd691c27f6890bae748be322", + "commission": "0.10" +} diff --git a/bbn-1/finality-providers/registry/Figment.json b/bbn-1/finality-providers/registry/Figment.json new file mode 100644 index 00000000..a7db0b4e --- /dev/null +++ b/bbn-1/finality-providers/registry/Figment.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Figment", + "identity": "E5F274B870BDA01D", + "website": "https://figment.io", + "security_contact": "security@figment.io", + "details": "Figment is the complete staking solution for over 500 institutional clients, providing enterprise validators, seamless staking integrations, audited infrastructure, robust rewards data, and more." + }, + "eots_pk": "710104ee21393df7b209e7f1202b60425075160aea52b60a9bcb0e996771f069", + "commission": "0.1" +} diff --git a/bbn-1/finality-providers/registry/Finoa-Consensus-Services.json b/bbn-1/finality-providers/registry/Finoa-Consensus-Services.json new file mode 100644 index 00000000..40a34318 --- /dev/null +++ b/bbn-1/finality-providers/registry/Finoa-Consensus-Services.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Finoa-Consensus-Services", + "identity": "0FA38A5EDF5FA362", + "website": "https://www.finoa.io/staking-delegation", + "security_contact": "operations@consensus.finoa.io", + "details": "Stake and grow your assets using Finoa's institutional-grade infrastructure." + }, + "eots_pk": "217ac8c60f4a0c75e28922a8478ed2605a31fec8ede23ed922425d58ac47e4ac", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/GalaxyDigital.json b/bbn-1/finality-providers/registry/GalaxyDigital.json new file mode 100644 index 00000000..2d963c6b --- /dev/null +++ b/bbn-1/finality-providers/registry/GalaxyDigital.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "GalaxyDigital", + "identity": "1718CFB46A0EC7FA", + "website": "https://galaxy.com", + "security_contact": "bci@galaxy.com", + "details": "Galaxy is a digital asset and blockchain leader helping institutions, startups, and qualified individuals shape a changing economy." + }, + "eots_pk": "acc2ddfdaaa3ca7acc13340c22a25dd910b98c08ba789ba5d8dac98e2f721cf9", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/GateEarn.json b/bbn-1/finality-providers/registry/GateEarn.json new file mode 100644 index 00000000..c8dd7a60 --- /dev/null +++ b/bbn-1/finality-providers/registry/GateEarn.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Gate Earn", + "identity": "51EE937969F9BB4D", + "website": "https://www.gate.io/web3", + "security_contact": "web3-earn@gate.io", + "details": "Gate.io Earn serves as a one-stop shop for all the decentralised earning options available on the Gate.io Web3 platform and we are the leading staking service provider for blockchain projects." + }, + "eots_pk": "2877658a1e7608fe84543a75ca879334bb8f2e7aecae71adb7767192bda50739", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/HTX.json b/bbn-1/finality-providers/registry/HTX.json new file mode 100644 index 00000000..0f232e2e --- /dev/null +++ b/bbn-1/finality-providers/registry/HTX.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "HTX", + "identity": "", + "website": "https://www.htx.com/", + "security_contact": "huobi-pos@outlook.com", + "details": "As a world-leading company in the blockchain industry, HTX Group was founded in 2013 with a mission to make breakthroughs in core blockchain technology and the integration of blockchain technology to other industries." + }, + "eots_pk": "bb90cbe7d0afb84fda8b4d440ddce1a394878a32aad29929c86e0e9188b003ba", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/HexTechnologies.json b/bbn-1/finality-providers/registry/HexTechnologies.json new file mode 100644 index 00000000..3d654515 --- /dev/null +++ b/bbn-1/finality-providers/registry/HexTechnologies.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Hex Trust", + "identity": "DEA21069031BB3F4", + "website": "https://hextrust.com", + "security_contact": "security@hextrust.com", + "details": "Hex Trust is a fully licensed digital asset custodian dedicated to providing solutions for protocols, foundations, financial institutions, and the Web3 ecosystem." + }, + "eots_pk": "289719ef19e455816e474588007f1824df7f6b1bace7decf8bb1c435e4cb849e", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Huginn.json b/bbn-1/finality-providers/registry/Huginn.json new file mode 100644 index 00000000..f2d9dd61 --- /dev/null +++ b/bbn-1/finality-providers/registry/Huginn.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Huginn", + "identity": "D27EE330254D4F6A", + "website": "https://huginn.tech", + "security_contact": "stake@huginn.tech", + "details": "Professional staking service. 7/24 monitoring and best uptime. Huginn is an organization that aims to teach its community about Cosmos SDK and Blockchain." + }, + "eots_pk": "3c6f137ef7fe2df8fd1e348c9de06eded5cb75393175c3d159090341f203f964", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/InfStones.json b/bbn-1/finality-providers/registry/InfStones.json new file mode 100644 index 00000000..29711d9d --- /dev/null +++ b/bbn-1/finality-providers/registry/InfStones.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "InfStones", + "identity": "E9B7CDC7623E0327", + "website": "https://infstones.com/", + "security_contact": "support@infstones.com", + "details": "InfStones is committed to supporting a wide range restaking initives." + }, + "eots_pk": "911421ea9cd3107d81aef2a62bf04d7a3c57b7bc0462af668d0a332e5dd72fa8", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/InformalSystems.json b/bbn-1/finality-providers/registry/InformalSystems.json new file mode 100644 index 00000000..8de0159b --- /dev/null +++ b/bbn-1/finality-providers/registry/InformalSystems.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Informal Systems", + "identity": "6408AA029ADBE364", + "website": "https://informal.systems", + "security_contact": "validator@informal.systems", + "details": "Informal Systems - Enterprise-grade staking infrastructure with a focus on security and support for both networks and delegators since 2018." + }, + "eots_pk": "68db13ba45241bcc1db1e63d998d78d9fce4b3f42772ef355e007a1105100476", + "commission": "0.03" +} \ No newline at end of file diff --git a/bbn-1/finality-providers/registry/Jetking.json b/bbn-1/finality-providers/registry/Jetking.json new file mode 100644 index 00000000..c5b4890e --- /dev/null +++ b/bbn-1/finality-providers/registry/Jetking.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Jetking", + "identity": "", + "website": "https://www.jetking.com", + "security_contact": "devops@jetking.com", + "details": "India’s largest IT Training Institute" + }, + "eots_pk": "3742769a01da6c7c4537ad7a4e181392ab3fd1fe04c78c137937974e74b39044", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/Keplr.json b/bbn-1/finality-providers/registry/Keplr.json new file mode 100644 index 00000000..576c606a --- /dev/null +++ b/bbn-1/finality-providers/registry/Keplr.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Keplr", + "identity": "55AE6F8C61BF4749", + "website": "https://keplr.app", + "security_contact": "node-operator@chainapsis.com", + "details": "Keplr Infra handles hundreds of millions of requests from all Keplr wallet users with robust, high SLA promised infrastructure and holds 7th largest TVL in the Cosmos ecosystem, including Celestia and dYdX as a validator." + }, + "eots_pk": "4c353255924d6da7c953ebdb262d21970515ead8ffb817efaf89ec444c0631fa", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/Lombard.json b/bbn-1/finality-providers/registry/Lombard.json new file mode 100644 index 00000000..536829f0 --- /dev/null +++ b/bbn-1/finality-providers/registry/Lombard.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Lombard", + "identity": "", + "website": "https://lombard.finance", + "security_contact": "stanley@lombard.finance", + "details": "Lombard is dedicated to expanding the digital economy by transforming Bitcoin’s utility from a mere store of value into a productive financial tool." + }, + "eots_pk": "609b4b8e27e214fd830e69a83a8270a03f7af356f64dde433a7e4b81b2399806", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/Lorenzo.json b/bbn-1/finality-providers/registry/Lorenzo.json new file mode 100644 index 00000000..333d9af3 --- /dev/null +++ b/bbn-1/finality-providers/registry/Lorenzo.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Lorenzo x Chainup", + "identity": "", + "website": "https://www.lorenzo-protocol.xyz/", + "security_contact": "vincent@lorenzo-protocol.xyz", + "details": "Bitcoin Liquidity Finance Layer" + }, + "eots_pk": "db9160428e401753dc1a9952ffd4fa3386c7609cf8411d2b6d79c42323ca9923", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Luganodes.json b/bbn-1/finality-providers/registry/Luganodes.json new file mode 100644 index 00000000..0450fee4 --- /dev/null +++ b/bbn-1/finality-providers/registry/Luganodes.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Luganodes", + "identity": "4F2E11CB85CB269B", + "website": "https://luganodes.com/", + "security_contact": "devops@luganodes.com", + "details": "Swiss-Operated Institutional Grade Staking Provider" + }, + "eots_pk":"104628a84d0926b866e94c35b54e6dc548cbdb4d8db39e48e85e3f1ff53c60ed", + "commission": "0.10" +} diff --git a/bbn-1/finality-providers/registry/Meria.json b/bbn-1/finality-providers/registry/Meria.json new file mode 100644 index 00000000..994dc820 --- /dev/null +++ b/bbn-1/finality-providers/registry/Meria.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Meria", + "identity": "9A516A1CD4116BBF", + "website": "https://meria.com", + "security_contact": "it@meria.com", + "details": "Meria is an institutional-grade staking service provider running blockchain infrastructure on more than +35 networks." + }, + "eots_pk": "a1f39ed29581fb6ad54be8cdf1a8838b3429e87bdfdd2652c47946221c360f10", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/Moonmoonbird.json b/bbn-1/finality-providers/registry/Moonmoonbird.json new file mode 100644 index 00000000..35719ac9 --- /dev/null +++ b/bbn-1/finality-providers/registry/Moonmoonbird.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Moonmoonbird", + "identity": "", + "website": "", + "security_contact": "biansongyuan@gmail.com", + "details": "" + }, + "eots_pk": "fdf1dd190adcd4fbf96235db721714e81bbfc2384b55de6cee256bcde11bedbb", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/NextFinanceTech.json b/bbn-1/finality-providers/registry/NextFinanceTech.json new file mode 100644 index 00000000..092041ed --- /dev/null +++ b/bbn-1/finality-providers/registry/NextFinanceTech.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Next Finance Tech", + "identity": "E058E204B0A2B70D", + "website": "https://nxt-fintech.com/", + "security_contact": "support@nxt-fintech.com", + "details": "Next Finance Tech: Japan's No. 1 Staking Service Provider, Founded by Goldman Sachs Alumni and Trusted by Institutions. We offer secure, audited staking solutions tailored to meet the needs of professional investors." + }, + "eots_pk": "e8197e71fdcc9987f95440415fcd852455da871d7c38a436465a3a9a78c682fc", + "commission": "0.05" + } \ No newline at end of file diff --git a/bbn-1/finality-providers/registry/OneKey.json b/bbn-1/finality-providers/registry/OneKey.json new file mode 100644 index 00000000..ff8ea150 --- /dev/null +++ b/bbn-1/finality-providers/registry/OneKey.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "OneKey", + "identity": "", + "website": "https://onekey.so", + "security_contact": "dev@onekey.so", + "details": "OneKey - Fully open source crypto app and hardware wallet, backed by Coinbase Venture, Ribbit, Dragonfly and other prominent crypto funds." + }, + "eots_pk": "adf4dcff7e38feef6689f42a4d6ac65446740b3bec13909200cf88a25f4cbc94", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/Orange-Code-0.json b/bbn-1/finality-providers/registry/Orange-Code-0.json new file mode 100644 index 00000000..846c5e47 --- /dev/null +++ b/bbn-1/finality-providers/registry/Orange-Code-0.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "OrangeCode0", + "identity": "6E2B94FD0B83947E", + "website": "", + "security_contact": "RuarccAlgautr@proton.me", + "details": "Hammu's Cryo Dreams" + }, + "eots_pk": "13e8eaec4f96eba1ae6c5bb05621e091c48b3bee21bf2e18183fd0663cc4ac5d", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/P2P_org.json b/bbn-1/finality-providers/registry/P2P_org.json new file mode 100644 index 00000000..175a425e --- /dev/null +++ b/bbn-1/finality-providers/registry/P2P_org.json @@ -0,0 +1,12 @@ +{ + "description": { + "moniker": "P2P.org", + "identity": "E12F46954695036D", + "website": "https://p2p.org/", + "security_contact": "cosmos-security@p2p.org", + "details": "P2P.org is a leading platform for whitelable staking infrastructure and staking solutions for enterprise and intermediaries. Stake your BTC with the most trusted and secure validator in the market." + }, + "eots_pk": "d7442b3c1b2c85313f9440a0a0e783f5d56390bd2e9044bb4e10c48e6b6d5536", + "commission": "0.05" +} + diff --git a/bbn-1/finality-providers/registry/PumpBTC.json b/bbn-1/finality-providers/registry/PumpBTC.json new file mode 100644 index 00000000..01fd2732 --- /dev/null +++ b/bbn-1/finality-providers/registry/PumpBTC.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "PumpBTC", + "identity": "CAAE6F147CA9D28E", + "website": "https://pumpbtc.xyz", + "security_contact": "josechef@pumpbtc.xyz", + "details": "PumpBTC is a liquid staking protocol on Babylon to allow BTC HODLER to maximize yield." + }, + "eots_pk": "0f5c19935a08f661a1c4dfeb5e51ce7f0cfcf4d2eeb405fe4c7d7bd668fc85e4", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/ROCKMINER.json b/bbn-1/finality-providers/registry/ROCKMINER.json new file mode 100644 index 00000000..4528d26d --- /dev/null +++ b/bbn-1/finality-providers/registry/ROCKMINER.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "ROCKMINER", + "identity": "", + "website": "", + "security_contact": "tangyinghualove@gmail.com", + "details": "We with experienced technical staff, blockchain researchers and community operators." + }, + "eots_pk": "155537b908560545398a4801960446ab289fde41503ef6362ce367c261f6d567", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/Robsberry.json b/bbn-1/finality-providers/registry/Robsberry.json new file mode 100644 index 00000000..4cb45272 --- /dev/null +++ b/bbn-1/finality-providers/registry/Robsberry.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Robsberry", + "identity": "27054F5CE3F4B80A", + "website": "https://docs.robsberry.pics", + "security_contact": "meldevariata@hotmail.com", + "details": "👉Independent Validator👈" + }, + "eots_pk": "d5018f048b88f1492404a06fedefe3a88f83337dc6c2b1e418cfab330a6fbc89", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/RockX.json b/bbn-1/finality-providers/registry/RockX.json new file mode 100644 index 00000000..a59016e5 --- /dev/null +++ b/bbn-1/finality-providers/registry/RockX.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "RockX-Bedrock", + "identity": "A15B586AB203F14E", + "website": "https://bitcoin-staking.rockx.com/", + "security_contact": "staking@rockx.com", + "details": "The largest Asian-based institutional grade staking and RPC provider." + }, + "eots_pk": "bb0bceda25d82f10a69feca9c076d85f61d750c9a481b8105d8389325538fdd1", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/SandMan.json b/bbn-1/finality-providers/registry/SandMan.json new file mode 100644 index 00000000..368357fd --- /dev/null +++ b/bbn-1/finality-providers/registry/SandMan.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "SandMan", + "identity": "0D01E33D7DBEF9B2", + "website": "https://sand.chessman.buzz", + "security_contact": "banscorporation@hotmail.com", + "details": "Ready to provide!" + }, + "eots_pk": "8cc1ac9171375b76a01b28d329e593df93c3266decd80cdf6f04e03968dfa173", + "commission": "0.06" +} diff --git a/bbn-1/finality-providers/registry/Senseinode.json b/bbn-1/finality-providers/registry/Senseinode.json new file mode 100644 index 00000000..d4946c47 --- /dev/null +++ b/bbn-1/finality-providers/registry/Senseinode.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "senseinode", + "identity": "", + "website": "https://senseinode.com", + "security_contact": "infra@senseinode.com", + "details": "Institutional Grade Staking as a Service" + }, + "eots_pk": "ae41630bcd400338c0fcabf7f2c174a2d2539c7f9333ed0b79159ad1e2ab01c6", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/SimplyStaking.json b/bbn-1/finality-providers/registry/SimplyStaking.json new file mode 100644 index 00000000..4b200e22 --- /dev/null +++ b/bbn-1/finality-providers/registry/SimplyStaking.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Simply Staking", + "identity": "4095165BF57B60BE", + "website": "https://simplystaking.com/", + "security_contact": "staking@simplystaking.com", + "details": "At Simply Staking, we are a globally recognised leader in blockchain infrastructure provision and development, dedicated to the advancement and security of decentralised technologies." + }, + "eots_pk": "03f0aa09112a19685e1514c9fc768a27df953db6abddcb453b96cc3265469af6", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/SnowFall.json b/bbn-1/finality-providers/registry/SnowFall.json new file mode 100644 index 00000000..8ef6355e --- /dev/null +++ b/bbn-1/finality-providers/registry/SnowFall.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "SnowFall", + "identity": "AE7E53FAC7B1CD90", + "website": "https://www.snow-fall.io", + "security_contact": "contact@snow-fall.io", + "details": "Backed by 5+ years of experience, we offer security and stability. Stake now for easy." + }, + "eots_pk": "eff010c66fc56784e708202e49bd875f8b08b8a1a40f0e7638e93ef1366a13d7", + "commission": "0.05" + } diff --git a/bbn-1/finality-providers/registry/Solv-Protocol.json b/bbn-1/finality-providers/registry/Solv-Protocol.json new file mode 100644 index 00000000..970b250d --- /dev/null +++ b/bbn-1/finality-providers/registry/Solv-Protocol.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Solv Protocol", + "identity": "8E9C1C1E9ADB6512", + "website": "https://app.solv.finance", + "security_contact": "contact@solv.finance", + "details": "Pioneering A Decentralized Bitcoin Reserve with SolvBTC." + }, + "eots_pk": "fa7496f63a857d894aa393767325bf6f84560e9141f4ec54496c50f546f48bfb", + "commission": "0.05" +} \ No newline at end of file diff --git a/bbn-1/finality-providers/registry/StakeWithUs.json b/bbn-1/finality-providers/registry/StakeWithUs.json index b1090fd2..e4e42562 100644 --- a/bbn-1/finality-providers/registry/StakeWithUs.json +++ b/bbn-1/finality-providers/registry/StakeWithUs.json @@ -1,10 +1,10 @@ { "description": { - "moniker": "StakeWithUs", - "identity": "609F83752053AD57", - "website": "https://stakewith.us", - "security_contact": "node@stakewith.us", - "details": "Secured Staking Made Easy. Put Your Crypto to Work - Hassle Free." + "moniker": "Nansen", + "identity": "B833F689F4C9727A61CB4628B9A66E826BCF9A28", + "website": "https://nansen.ai", + "security_contact": "stakingtools@nansen.ai", + "details": "Nansen is a leading on-chain analytics platform founded in 2020, and is now one of the most trusted names in crypto, serving traders and institutions. Disclaimer: delegating comes with slashing risks." }, "eots_pk": "513d10a6b689191cdc4ea740a1e8f5a1a508c83198867157008b9c172e911fa0", "commission": "0.03" diff --git a/bbn-1/finality-providers/registry/Staked.json b/bbn-1/finality-providers/registry/Staked.json new file mode 100644 index 00000000..6ec349e8 --- /dev/null +++ b/bbn-1/finality-providers/registry/Staked.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Staked", + "identity": "E7BFA6515FB02B3B", + "website": "https://staked.us", + "security_contact": "devops@staked.us", + "details": "Staked is the leading provider of validation technology and services." + }, + "eots_pk": "99cab14570d12633326afede842d3a9db729f671d2fa1b8a46585d3f62395c1c", + "commission": "0.10" +} diff --git a/bbn-1/finality-providers/registry/UndefinedLabs.json b/bbn-1/finality-providers/registry/UndefinedLabs.json new file mode 100644 index 00000000..759b7dc0 --- /dev/null +++ b/bbn-1/finality-providers/registry/UndefinedLabs.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Undefined Labs", + "identity": "", + "website": "https://undefinedlabs.xyz", + "security_contact": "michael@undefinedlabs.xyz", + "details": "We define the undefined and build the Crypto Narrative." + }, + "eots_pk": "e7b20e731f84fb98b7525e7696da077eb7f6155d5534a789b5c7bab9d3257afd", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/ValidationCloud.json b/bbn-1/finality-providers/registry/ValidationCloud.json new file mode 100644 index 00000000..5b167a36 --- /dev/null +++ b/bbn-1/finality-providers/registry/ValidationCloud.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Validation Cloud", + "identity": "45CB4A44DDA954E351EF52DBAF9B41F5A7572821", + "website": "https://validationcloud.io", + "security_contact": "security@validationcloud.io", + "details": "Validation Cloud is a Web3 platform that delivers elite, high-performance node and staking infrastructure." + }, + "eots_pk": "0b07aef0b971caeb8d677b5fa56547d07ec45be121575f1b94e4a65930bad272", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/ViaBTC.json b/bbn-1/finality-providers/registry/ViaBTC.json new file mode 100644 index 00000000..f9d0f430 --- /dev/null +++ b/bbn-1/finality-providers/registry/ViaBTC.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "ViaBTC", + "identity": "", + "website": "https://www.viabtc.com/", + "security_contact": "support@viabtc.com", + "details": "ViaBTC is an innovation-driven blockchain service provider that boasts abundant experience, extensive investments, secure and reliable products, and a global user base" + }, + "eots_pk": "3cb203cd8cffe8bafab08446bd20a28ca56d3efed650d276675f260e1fe80b3e", + "commission": "0.05" +} \ No newline at end of file diff --git a/bbn-1/finality-providers/registry/WhisperNode.json b/bbn-1/finality-providers/registry/WhisperNode.json new file mode 100644 index 00000000..69d75c28 --- /dev/null +++ b/bbn-1/finality-providers/registry/WhisperNode.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "WhisperNode", + "identity": "C99B3A6836BF0CB8", + "website": "https://whispernode.com", + "security_contact": "security@whispernode.com", + "details": "WhisperNode is a premier web3 infrastructure provider renowned for powering the backbone of blockchain ecosystems with our state-of-the-art validation services, RPC endpoints, and IBC relayers. Our commitment to reliability is showcased through our deployment of robust, geographically dispersed validators ensuring maximal uptime and unparalleled security." + }, + "eots_pk": "abb95ba033f05427672aa4b3b6d591e0dfe7d23b41b47d8215aa503f4ddb2063", + "commission": "0.04" +} diff --git a/bbn-1/finality-providers/registry/Xangle.json b/bbn-1/finality-providers/registry/Xangle.json new file mode 100644 index 00000000..471656a1 --- /dev/null +++ b/bbn-1/finality-providers/registry/Xangle.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Xangle", + "identity": "B4036015EC09F392", + "website": "https://xangle.io", + "security_contact": "validator@crossangle.io", + "details": "The largest Web3 market intelligence platform operator in Korea, Xangle provides a comprehensive suite of tools and services designed to support Web3 foundations’ go-to-market strategies in Korea safely under compliance with Korea’s regulatory environment. Since its inception, Xangle has expanded its business by offering information disclosure and evaluation services, gaining extensive experience in distributing information based on transparency and credibility. The company also possesses a deep understanding of, and high level of expertise in, regulatory compliance. By leveraging a vast user base and consolidated data, Xangle supports Web3 foundations with their Go-to-Market strategies in Korea, fostering active, data-driven community building." + }, + "eots_pk": "55649d9864f992b315a16531a23d92951143bf2d390d22689946dcd7556c008f", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/Zellic.json b/bbn-1/finality-providers/registry/Zellic.json new file mode 100644 index 00000000..8a7c4b3b --- /dev/null +++ b/bbn-1/finality-providers/registry/Zellic.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Zellic", + "identity": "609C091636D1330B", + "website": "https://zellic.io/", + "security_contact": "security@zellic.io", + "details": "The go-to blockchain security firm for top teams, specializing in Cosmos, EVM, ZK, Move (Aptos and Sui). We solve your hardest security problems. \nTwitter: https://twitter.com/zellic_io\nTelegram: t.me/zellic_io" + }, + "eots_pk": "b0f0fbb9e3b818c2d924632ef80e4718145f394f9cdcc0bd9c8820f309db436b", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/a41.json b/bbn-1/finality-providers/registry/a41.json new file mode 100644 index 00000000..66ab2b6d --- /dev/null +++ b/bbn-1/finality-providers/registry/a41.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "A41", + "identity": "87D9921253A2A9EB", + "website": "https://a41.io", + "security_contact": "dev@a41.io", + "details": "A41 is a blockchain infrastructure company. We provide staking service on multichain. Stake your token with us now and earn rewards!" + }, + "eots_pk": "c03a5b6703ce87285f13d1202ba8b6317080754c5ab23bae95e5ee9261083b79", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/ambergroup.json b/bbn-1/finality-providers/registry/ambergroup.json new file mode 100644 index 00000000..fea33dcc --- /dev/null +++ b/bbn-1/finality-providers/registry/ambergroup.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "AmberGroup", + "identity": "E332787C75C48DC1", + "website": "https://www.ambergroup.io/", + "security_contact": "blockchain_infra@ambergroup.io", + "details": "Amber Group is a leading crypto financial services platform specialized in digital wealth management and crypto-native liquidity solutions" + }, + "eots_pk": "b3a838cbf2e61f2ecadf9f5924710e66dcf8212545884853073fe62c5ff5b949", + "commission": "0.05" + } \ No newline at end of file diff --git a/bbn-1/finality-providers/registry/antpool.json b/bbn-1/finality-providers/registry/antpool.json new file mode 100644 index 00000000..87e66648 --- /dev/null +++ b/bbn-1/finality-providers/registry/antpool.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "ANTPOOL", + "identity": "", + "website": "https://www.antpool.com", + "security_contact": "support@antpool.com", + "details": "Antpool always maintains blockchain security as a world-leading mining pool" + }, + "eots_pk": "706789fc5e936ad200a4c22b3bda97e50376ff269a8947eb872e9b054419348c", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/axol.json b/bbn-1/finality-providers/registry/axol.json new file mode 100644 index 00000000..759821a1 --- /dev/null +++ b/bbn-1/finality-providers/registry/axol.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "axol.io", + "identity": "FA1EA630E6129D0C", + "website": "https://axol.io/", + "security_contact": "drew@axol.io", + "details": "Axol is empowering institutional staking infrastructure with unrivaled uptime, harnessing self-healing nodes and renewable energy across Latin America. Contact us to stake your bitcoin today." + }, + "eots_pk": "311c550309edab2025b9ee907cfeb0cf7223fefdda5d7752f2abe765d34d11cd", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/bitManna.json b/bbn-1/finality-providers/registry/bitManna.json new file mode 100644 index 00000000..a255b5eb --- /dev/null +++ b/bbn-1/finality-providers/registry/bitManna.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "bitManna", + "identity": "1D8F197850300072", + "website": "https://www.bitmanna.com/", + "security_contact": "blockchain@bitManna.com", + "details": "bitManna contributes redundant nodes, spec'd for performance at cloud scale. Delegators earn rewards with confidence." + }, + "eots_pk": "a09b7d5463f289b6b2db575abcbf9f482c0fa403581ee56651d8d686bf1d493e", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/bitrue.json b/bbn-1/finality-providers/registry/bitrue.json new file mode 100644 index 00000000..b88a6098 --- /dev/null +++ b/bbn-1/finality-providers/registry/bitrue.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Bitrue", + "identity": "", + "website": "https://www.bitrue.com", + "security_contact": "evan@bitrue.com", + "details": "Bitrue is a long-standing cryptocurrency platform that offers industry-leading staking returns on a wide range of assets, as well as providing a complete suite of digital asset services including purchasing, trading, launchpools, and more." + }, + "eots_pk": "3eaab89389d4c8e820c356eea1a20104f6ac6b4e1a5b3605047336c6dcedaa99", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/blockscape.json b/bbn-1/finality-providers/registry/blockscape.json new file mode 100644 index 00000000..f7d52a6b --- /dev/null +++ b/bbn-1/finality-providers/registry/blockscape.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "blockscape", + "identity": "C46C8329BB5F48D8", + "website": "https://blockscape.network", + "security_contact": "info@blockscape.network", + "details": "By delegating, you confirm that you are aware of the risk of slashing and that Blockscape Finance AG is not liable for any potential damages to your investment." + }, + "eots_pk": "82332ddabc9e4bfc9017e14bf0b8188d2219ffd26143a1383a42d90b1ab55caa", + "commission": "0.05" +} \ No newline at end of file diff --git a/bbn-1/finality-providers/registry/chainflow.json b/bbn-1/finality-providers/registry/chainflow.json new file mode 100644 index 00000000..21a31a69 --- /dev/null +++ b/bbn-1/finality-providers/registry/chainflow.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Chainflow", + "identity": "103DCE407C9F1D13", + "website": "https://chainflow.io", + "security_contact": "babylon_security_public@chainflow.io", + "details": "Crypto infrastructure for a brighter future." + }, + "eots_pk": "db6787653d996feae94bf9b1dcf7a300fe8e0ddbf043ae44e97638e0d685acae", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/chorusone.json b/bbn-1/finality-providers/registry/chorusone.json new file mode 100644 index 00000000..48e5a23a --- /dev/null +++ b/bbn-1/finality-providers/registry/chorusone.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Chorus One", + "identity": "00B79D689B7DC1CE", + "website": "https://chorus.one", + "security_contact": "security@chorus.one", + "details": "Secure BBN and shape its future by delegating to Chorus One, a highly secure and stable validator. By delegating, you agree to the terms of service at: https://chorus.one/tos" + }, + "eots_pk": "cef496d86c284f01e9cb293b5993e5e00df2116e4d7d7350d68276859561ae67", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/cubist.json b/bbn-1/finality-providers/registry/cubist.json new file mode 100644 index 00000000..15c5577b --- /dev/null +++ b/bbn-1/finality-providers/registry/cubist.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Cubist", + "identity": "A56651055B76A453", + "website": "https://cubist.dev", + "security_contact": "security+babylon-fp@cubist.dev", + "details": "Cubist is the creator of CubeSigner, the premier hardware-backed key management infrastructure. CubeSigner gives high-security, low-latency signing for a wide range of Web3 applications including staking, wallets, trading, and more." + }, + "eots_pk": "8e14c575b2cadd5cc0f8584b2dcb98b4c301a53c3cee402a5caf4b4512a1f40a", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/fiammachain.json b/bbn-1/finality-providers/registry/fiammachain.json new file mode 100644 index 00000000..ab117ef8 --- /dev/null +++ b/bbn-1/finality-providers/registry/fiammachain.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Fiamma", + "identity": "75F444F526970D6F", + "website": "https://fiammachain.io", + "security_contact": "contact@fiammachain.io", + "details": "The First ZKP Verification Network Secured by Bitcoin Blockchain" + }, + "eots_pk": "8ab7651c38b03aeaf04545dee23b5964d88852adf77e3941615d34f726229305", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/gumi.json b/bbn-1/finality-providers/registry/gumi.json new file mode 100644 index 00000000..a3e23099 --- /dev/null +++ b/bbn-1/finality-providers/registry/gumi.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "gumi", + "identity": "33BAF13D389CB79F", + "website": "https://gu3.co.jp/en/blockchain/", + "security_contact": "gumi_node@gu3.co.jp", + "details": "One of Japan's largest game publishers and node providers. As a pioneer of the Japanese crypto ecosystem, it also provides infrastructure for crypto area." + }, + "eots_pk": "d290ede12d35dbff321a4c9f2ea1652c2514b3b0e4c76e19000b9c1467f81858", + "commission": "0.05" +} \ No newline at end of file diff --git a/bbn-1/finality-providers/registry/hashkeycloud.json b/bbn-1/finality-providers/registry/hashkeycloud.json new file mode 100644 index 00000000..873b05e0 --- /dev/null +++ b/bbn-1/finality-providers/registry/hashkeycloud.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "HashKeyCloud", + "identity": "CB79CF86DBD56A19", + "website": "https://www.hashkey.cloud/", + "security_contact": "ops@haskyey.cloud", + "details": "Cloud for WEB3 More Than Staking" + }, + "eots_pk": "3a390fa62f5c8975348b0163d4bc59eb879e66cc7d908171202d57776e069ad4", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/ikunkun.json b/bbn-1/finality-providers/registry/ikunkun.json new file mode 100644 index 00000000..a70f156a --- /dev/null +++ b/bbn-1/finality-providers/registry/ikunkun.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "ikunkun", + "identity": "", + "website": "", + "security_contact": "zy316161583@gmail.com", + "details": "ikun a trainee who has been practicing for two and a half years" + }, + "eots_pk": "3227cda2e47410814688bf66c5178703a97f888f2ea9e6c5bc5ff0bb457ab23a", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/imperator.json b/bbn-1/finality-providers/registry/imperator.json new file mode 100644 index 00000000..900845ac --- /dev/null +++ b/bbn-1/finality-providers/registry/imperator.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Imperator.co", + "identity": "0878BA6BE556C132", + "website": "https://www.imperator.co", + "security_contact": "contact@imperator.co", + "details": "Imperator empowers investors and token holders to effortlessly secure blockchain networks through non-custodial staking" + }, + "eots_pk": "e672df73c301e9f040f79460b0f990001af18f1d421d2e6ed0b9e9c566b1414b", + "commission": "0.03" +} \ No newline at end of file diff --git a/bbn-1/finality-providers/registry/interchainFM.json b/bbn-1/finality-providers/registry/interchainFM.json new file mode 100644 index 00000000..ef219de2 --- /dev/null +++ b/bbn-1/finality-providers/registry/interchainFM.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "interchain.FM", + "identity": "8E92184569CD8E2D", + "website": "https://interchain.fm/", + "security_contact": "chjangounchained@gmail.com", + "details": "Non-custodial high 99.99% uptime validator w/ 100% return for downtime slashing. Run by your favorite Cosmos Radio Station. " + }, + "eots_pk": "4b045c89c29e0536b9270c877f89da368391aaa2adbc91659dbb48593253ca32", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/liquify.json b/bbn-1/finality-providers/registry/liquify.json new file mode 100644 index 00000000..d7687927 --- /dev/null +++ b/bbn-1/finality-providers/registry/liquify.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Liquify", + "identity": "005F74E8F7365C38", + "website": "https://www.liquify.com/", + "security_contact": "contact@liquify.io", + "details": "Liquify is a fully bare-metal infrastructure company. Optimized for latency, throughput and uptime. Tailored for institutions" + }, + "eots_pk": "615e9392eda947e85d827f19290c4dc2a5986dca278be4f480820741aa0fb1da", + "commission": "0.04" +} diff --git a/bbn-1/finality-providers/registry/miles.json b/bbn-1/finality-providers/registry/miles.json new file mode 100644 index 00000000..1c802015 --- /dev/null +++ b/bbn-1/finality-providers/registry/miles.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "miles", + "identity": "", + "website": "https://x.com/Miles082510", + "security_contact": "sixmiles127@gmail.com", + "details": "build babylon" + }, + "eots_pk": "ed58af4d147f5b5834e70a950e439312459b49e8f0dc705c1671467611f1a805", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/mycactus.json b/bbn-1/finality-providers/registry/mycactus.json new file mode 100755 index 00000000..f4c56f49 --- /dev/null +++ b/bbn-1/finality-providers/registry/mycactus.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Cactus", + "identity": "", + "website": "https://www.mycactus.com", + "security_contact": "msrc@mycactus.com", + "details": "Leading Qualified Custodian for Digital Assets" + }, + "eots_pk":"f039a30b58a92fe4aee582b47216a04bd487acb0307f32fe69c3fe0760cd01ca", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/nodesguru.json b/bbn-1/finality-providers/registry/nodesguru.json new file mode 100644 index 00000000..560d7dee --- /dev/null +++ b/bbn-1/finality-providers/registry/nodesguru.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Nodes.Guru", + "identity": "28B672FCE6BBD562", + "website": "https://nodes.guru", + "security_contact": "security@nodes.guru", + "details": "Guru of non-custodial staking. Professional node running, low fees, best uptime and 24/7 customer support." + }, + "eots_pk": "625cf6468c65028806b518fe78ad8e80c697a266394736b6bb9dd481e238816d", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/okxearn.json b/bbn-1/finality-providers/registry/okxearn.json new file mode 100644 index 00000000..40291041 --- /dev/null +++ b/bbn-1/finality-providers/registry/okxearn.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "OKX Earn", + "identity": "5E40FD2A1FCF6FE1", + "website": "https://www.okx.com", + "security_contact": "earn@okx.com", + "details": "OKX Earn serves as a one-stop shop for all the decentralised earning options available on the OKX platform and we are the leading staking service provider for blockchain projects" + }, + "eots_pk": "374601b4c400b31f3aa78dc16b4e4d589c1284118e2476d83f0c39743881032c", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/pSTAKE.json b/bbn-1/finality-providers/registry/pSTAKE.json new file mode 100644 index 00000000..5ba8fb62 --- /dev/null +++ b/bbn-1/finality-providers/registry/pSTAKE.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "pSTAKE", + "identity": "CCD58C1559B694A8", + "website": "https://pstake.finance/", + "security_contact": "Hello@pstake.finance", + "details": "pSTAKE Finance is a multichain liquid staking protocol, backed by Binance Labs." + }, + "eots_pk": "fc8a5b9930c3383e94bd940890e93cfcf95b2571ad50df8063b7011f120b918a", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/proofgroup.json b/bbn-1/finality-providers/registry/proofgroup.json new file mode 100644 index 00000000..4c4f8f30 --- /dev/null +++ b/bbn-1/finality-providers/registry/proofgroup.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "proofgroup", + "identity": "", + "website": "https://proofgroup.xyz/", + "security_contact": "m3diumrare@proton.me", + "details": "" + }, + "eots_pk": "12fe87f124cc169e3fcec9885e2ab3c986e0f46bd60ec290995a1ca03d69d006", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/sg-1.json b/bbn-1/finality-providers/registry/sg-1.json new file mode 100644 index 00000000..a855c70d --- /dev/null +++ b/bbn-1/finality-providers/registry/sg-1.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "SG-1", + "identity": "48608633F99D1B60", + "website": "https://sg-1.online", + "security_contact": "info@sg-1.online", + "details": "Explore the Cosmos with SG-1. Your favorite Finality Provider and Validator." + }, + "eots_pk": "9a90cf6fbd249ee0a127843569352a8ade9a985ef0a652b2b58506828a7c85d0", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/silent.json b/bbn-1/finality-providers/registry/silent.json new file mode 100644 index 00000000..bf051d79 --- /dev/null +++ b/bbn-1/finality-providers/registry/silent.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "silent", + "identity": "A47522A5527DB39F", + "website": "https://silentvalidator.com", + "security_contact": "operation@silentvalidator.com", + "details": "Silent Validator leverages robust infrastructure and deep expertise to provide highly reliable validation services, enriches the community and furthers the growth of the ecosystem." + }, + "eots_pk": "c790b603199b5c06e9a2230c798130cdc5ea24f0ef8250383e483ac9ae57b397", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/stakeandrelax.json b/bbn-1/finality-providers/registry/stakeandrelax.json new file mode 100644 index 00000000..dcaa1a71 --- /dev/null +++ b/bbn-1/finality-providers/registry/stakeandrelax.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Stake&Relax 🦥", + "identity": "BD90F7F27099E9E3", + "website": "https://linktr.ee/stakeandrelax", + "security_contact": "stakeandrelax_validator@proton.me", + "details": "StakeandRelax to get Stake🥩&Rolex⌚Twitter:@StakeandRelax" + }, + "eots_pk": "34bd07bb7370a0a26adc5520e62b4f0aa3fd155e750f2f39ecbae87d1ded89ee", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/stakecapital.json b/bbn-1/finality-providers/registry/stakecapital.json new file mode 100644 index 00000000..a45bf297 --- /dev/null +++ b/bbn-1/finality-providers/registry/stakecapital.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "StakeCapital", + "identity": "1417DBC57CB3EB69", + "website": "https://stake.capital", + "security_contact": "validators@stake.capital", + "details": "Stake Capital is a group run by Blockchain and DeFi pioneers standing at the intersection of traditional industries and blockchain technology." + }, + "eots_pk": "e3b057e67c335bafc50e63a03d18a74e9e06ee70bf1eefd2d614ad278cac1871", + "commission": "0.08" +} diff --git a/bbn-1/finality-providers/registry/stakeway.json b/bbn-1/finality-providers/registry/stakeway.json new file mode 100644 index 00000000..24f9e512 --- /dev/null +++ b/bbn-1/finality-providers/registry/stakeway.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Stakeway", + "identity": "8950F17AEC66D51C", + "website": "https://stakeway.com/", + "security_contact": "staking@gateway.fm", + "details": "Stakeway by Gateway.fm is a premier staking provider offering Enterprise Grade Infrastructure tailored for customers seeking reliable and secure staking solutions. With a focus on performance and trust, we deliver a robust platform. Our services are designed to optimize staking experience, ensuring seamless operation and maximum returns" + }, + "eots_pk": "e245e8c85759d5410c723b69809c405fedbb2393665a43e44b40752452806555", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/registry/twinstake.json b/bbn-1/finality-providers/registry/twinstake.json new file mode 100644 index 00000000..b2703035 --- /dev/null +++ b/bbn-1/finality-providers/registry/twinstake.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Twinstake", + "identity": "A7823F4D765E18AB", + "website": "https://www.twinstake.io", + "security_contact": "security@twinstake.io", + "details": "Twinstake is an institutional-grade non-custodial staking provider" + }, + "eots_pk": "99fcdc40b7f4bf65043230a188f87f4c11ec72617c797ac00775e40a4d90aaaf", + "commission": "0.10" +} diff --git a/bbn-1/finality-providers/registry/unifra.json b/bbn-1/finality-providers/registry/unifra.json new file mode 100644 index 00000000..535546ce --- /dev/null +++ b/bbn-1/finality-providers/registry/unifra.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "L2Scan", + "identity": "", + "website": "https://unifra.io", + "security_contact": "al@unifra.io", + "details": "L2Scan is the team behind BabylonScan, Dedicated to Babylon and its ecosystem." + }, + "eots_pk": "ed555025e04ae3825e3618b959fedeaa281bc91c0d5e5bda5ae7a7e7c002ae58", + "commission": "0.03" +} diff --git a/bbn-1/finality-providers/registry/web3btc.json b/bbn-1/finality-providers/registry/web3btc.json new file mode 100644 index 00000000..b802e6cc --- /dev/null +++ b/bbn-1/finality-providers/registry/web3btc.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "web3btc", + "identity": "", + "website": "https://static-hk.istillgo.com", + "security_contact": "deblinux@qq.com", + "details": "A Decentralized Password Manager" + }, + "eots_pk": "2f2ad150b5a0c3616ff438d275750db107b961f9dd783658ac4f79dcbccff98c", + "commission": "0.10" +} diff --git a/bbn-1/finality-providers/registry/wizz.json b/bbn-1/finality-providers/registry/wizz.json new file mode 100644 index 00000000..3c5ca335 --- /dev/null +++ b/bbn-1/finality-providers/registry/wizz.json @@ -0,0 +1,11 @@ +{ + "description": { + "moniker": "Wizz", + "identity": "46BB2F9C0187EE29", + "website": "https://babylon.wizz.cash", + "security_contact": "dev@astrox.network", + "details": "Make BTC Magical Again!" + }, + "eots_pk": "c3d0ed36a03175727164df74e5a4ef5c05a369951fc9707e8a0eb17fd2dcb9d6", + "commission": "0.05" +} diff --git a/bbn-1/finality-providers/sigs/0xbojack.sig b/bbn-1/finality-providers/sigs/0xbojack.sig new file mode 100644 index 00000000..ffd778e6 --- /dev/null +++ b/bbn-1/finality-providers/sigs/0xbojack.sig @@ -0,0 +1 @@ +d5275fe1236a67e4a0664d114ad8055432b8967b0b1b1730f6ba69d7dc85354deaaebdd7130e757db6fb94a2d92293e21f948e790112f67a407fbef7871c36e4 diff --git a/bbn-1/finality-providers/sigs/Allnodes.sig b/bbn-1/finality-providers/sigs/Allnodes.sig new file mode 100644 index 00000000..3ead4bfd --- /dev/null +++ b/bbn-1/finality-providers/sigs/Allnodes.sig @@ -0,0 +1 @@ +0a8ed93cc2be15e4d9bc7e5dba399f9f5fa950fd92f5d04b7dd1f7154db32f97979a1df68be85525e9f7e56128f5a689b88d6c76d00e6703488c5daa00fc2a94 diff --git a/bbn-1/finality-providers/sigs/Allo.sig b/bbn-1/finality-providers/sigs/Allo.sig new file mode 100644 index 00000000..077c497b --- /dev/null +++ b/bbn-1/finality-providers/sigs/Allo.sig @@ -0,0 +1 @@ +5145662426aad2e5ed5229fb1d107e77db9f82d90ce5c4e666dfb130fb11dd7717425944777704e89e5fc3dd5d24d7c4e2064c2ad5c10b900d614afcec27ba81 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/AnchorNode.sig b/bbn-1/finality-providers/sigs/AnchorNode.sig new file mode 100644 index 00000000..7cb86b4d --- /dev/null +++ b/bbn-1/finality-providers/sigs/AnchorNode.sig @@ -0,0 +1 @@ +5eeaba0d14b3f8a756f3a41afb9266150633038a4e8a6f9acc913261c4269b3869410394e941f5a01fccea0ed26ae04ffbee3ddb614e8d7621386eac74987bf8 diff --git a/bbn-1/finality-providers/sigs/Anchorage-Digital.sig b/bbn-1/finality-providers/sigs/Anchorage-Digital.sig new file mode 100644 index 00000000..de87377f --- /dev/null +++ b/bbn-1/finality-providers/sigs/Anchorage-Digital.sig @@ -0,0 +1 @@ +b8ede16269995a4f69ac24c8e8904ac41663937ec059128b86c7e5b3925c5d8f6481d353b4627656e642548d111a897efbfe5d26b28c128b431b3557f5bcb1c6 diff --git a/bbn-1/finality-providers/sigs/Ankr.sig b/bbn-1/finality-providers/sigs/Ankr.sig new file mode 100644 index 00000000..563d4bcd --- /dev/null +++ b/bbn-1/finality-providers/sigs/Ankr.sig @@ -0,0 +1 @@ +a7c0dd848f2290ec645ca28120cc3fb66421812db0d9bf892dd65e7a393be1a71dbef6ecedcb6a552f88b7c293e37fd2557e7bc08de52bd11292b1b4ea9560dd diff --git a/bbn-1/finality-providers/sigs/Anomaly.sig b/bbn-1/finality-providers/sigs/Anomaly.sig new file mode 100644 index 00000000..01a0e9ef --- /dev/null +++ b/bbn-1/finality-providers/sigs/Anomaly.sig @@ -0,0 +1 @@ +e54e8b6986fdfd25ce1a2d76bb26b13373b2e1751ef3f44c6e750b97d9f3f60422c9f87736437b154370f02f370db3618471f69763c62c1cc3bcdd2c239ef79a diff --git a/bbn-1/finality-providers/sigs/B-Harvest.sig b/bbn-1/finality-providers/sigs/B-Harvest.sig index 63f549ea..1bc00d36 100644 --- a/bbn-1/finality-providers/sigs/B-Harvest.sig +++ b/bbn-1/finality-providers/sigs/B-Harvest.sig @@ -1 +1 @@ -fac9656f03ad37b836766ac3a06bd057ce6c4e5fcd5bc70d5d9d5e905a35a51252bf3f736ff8c27fd023e0543330b8f2dc4bfbc38cad0b932f6cd55aa899704b +ea6807df9b3e948929bf465b38043942d8143edde1b5abc5f297d2e90821b76a3f3dc84c6b080c98a25af0d6ffa4d63ad6f6d01ee6d6efc1dc396a874e3dde05 diff --git a/bbn-1/finality-providers/sigs/BSquaredNetwork.sig b/bbn-1/finality-providers/sigs/BSquaredNetwork.sig new file mode 100644 index 00000000..33eba8c9 --- /dev/null +++ b/bbn-1/finality-providers/sigs/BSquaredNetwork.sig @@ -0,0 +1 @@ +b984591d5f1db1c1be584e5404dc50e80642c936e31b1b21ff02eec9537ee9e1e434fc3c67e4f18c46f57ab45bf1cb361230b86a90458943fe1d2229f3c814da diff --git a/bbn-1/finality-providers/sigs/BSquared_x_Bedrock.sig b/bbn-1/finality-providers/sigs/BSquared_x_Bedrock.sig new file mode 100644 index 00000000..b6a68375 --- /dev/null +++ b/bbn-1/finality-providers/sigs/BSquared_x_Bedrock.sig @@ -0,0 +1 @@ +d11eeca5268de565882bb24e0b5d71bb4e90912ce383ba606a145dade42665b22dc6666201977a8f040e9cab83b404130fab70b75a9b5717c3b6ad0e979e9a70 diff --git a/bbn-1/finality-providers/sigs/BSquared_x_P2P.sig b/bbn-1/finality-providers/sigs/BSquared_x_P2P.sig new file mode 100644 index 00000000..409e27a8 --- /dev/null +++ b/bbn-1/finality-providers/sigs/BSquared_x_P2P.sig @@ -0,0 +1 @@ +0ffa36e44903705a34e252df54b58ef704b53d5aa6c66c6635d2708f79624ba5cc29b2e13cd96054eb23ad9da3b8d30fe393681b610a6418e3880be255e7a1c9 diff --git a/bbn-1/finality-providers/sigs/Bevm.sig b/bbn-1/finality-providers/sigs/Bevm.sig new file mode 100644 index 00000000..b0c9a07c --- /dev/null +++ b/bbn-1/finality-providers/sigs/Bevm.sig @@ -0,0 +1 @@ +b445120f4e83aaa1eac096ce9c73543dcec91cee43e4c27cea7ea2521098cc780cd2c9f3775a94cd2be1d031a884ee4cf56dbfec12fde7edce3dc81aa6496215 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/BitcoinSuisse2.sig b/bbn-1/finality-providers/sigs/BitcoinSuisse2.sig new file mode 100644 index 00000000..3df84cf9 --- /dev/null +++ b/bbn-1/finality-providers/sigs/BitcoinSuisse2.sig @@ -0,0 +1 @@ +c3de0531b6021bbecb1e917a8f166e8e64d078248ac16890e9bd5047ba6b4f360ed11535f01d9223630dbd5cbe6bed3e6db9345f41bcc579a6ca436db5cd1ddd diff --git a/bbn-1/finality-providers/sigs/BlockHunters.sig b/bbn-1/finality-providers/sigs/BlockHunters.sig new file mode 100644 index 00000000..4590d253 --- /dev/null +++ b/bbn-1/finality-providers/sigs/BlockHunters.sig @@ -0,0 +1 @@ +6988cc046d1256f13435d605d11f002fd530580e1efe2753eb46109ff68072ca50687f0a20aba6c8834d4663f5f3e36374773c73b85987f360789e3ae5392471 diff --git a/bbn-1/finality-providers/sigs/Blockdaemon.sig b/bbn-1/finality-providers/sigs/Blockdaemon.sig new file mode 100644 index 00000000..0fe9acd8 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Blockdaemon.sig @@ -0,0 +1 @@ +84ece1e3343604980dfc966eef697f531f6536c0e0dec7708d2941a407ec6eff3e1197836df6f8bc428983dd775733a123d1cdd34bc59821c67aedba39f4e94c diff --git a/bbn-1/finality-providers/sigs/Caliber.sig b/bbn-1/finality-providers/sigs/Caliber.sig index 3e7f920b..e6781aae 100644 --- a/bbn-1/finality-providers/sigs/Caliber.sig +++ b/bbn-1/finality-providers/sigs/Caliber.sig @@ -1 +1 @@ -5cbda886efdeca4f8a50b77e60d7730a63f7b34a25980e5c25cc7916b061487bf96c5b54be2f2bf1dd539c0601587533dffeefab5f1f216b420a97bb9ea55752 +c71454b35fa331bef96a590d35133e8a76b7f67a9e81029e87c246fd49cab12684c5e4aa8efc508ff149bf903321c26f3715bbb97287ed9a1550c8e24d66462d diff --git a/bbn-1/finality-providers/sigs/CertiK.sig b/bbn-1/finality-providers/sigs/CertiK.sig new file mode 100644 index 00000000..9a917875 --- /dev/null +++ b/bbn-1/finality-providers/sigs/CertiK.sig @@ -0,0 +1 @@ +f7ed0784b4c07b4827d309449498df70a909a3da64fcd956d7235643b20f7e6740b7c5a510ee1deae0f3492361f185330ddbc99ca11404a1769625c300db9f86 diff --git a/bbn-1/finality-providers/sigs/ChainUp.sig b/bbn-1/finality-providers/sigs/ChainUp.sig new file mode 100644 index 00000000..edad7098 --- /dev/null +++ b/bbn-1/finality-providers/sigs/ChainUp.sig @@ -0,0 +1 @@ +da20ba2d78035d82794cc1c5b89f9cbacdcb10858ac836a7392a8775edc7ab325b4be644b9569a5a99dd5de35144d3b604935a2882fb19095d9d4a94eff708d9 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/Cobo.sig b/bbn-1/finality-providers/sigs/Cobo.sig new file mode 100644 index 00000000..51cf7dc0 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Cobo.sig @@ -0,0 +1 @@ +701edda2c1d54d92c9e2efaa481c80c0c867486d764f13d16a6b2b1a927344546849ca942915dfbecb63846fa1b881da94f8eadb114a88d6ddc169d9b3f448bd diff --git a/bbn-1/finality-providers/sigs/Coinage_x_Daic.sig b/bbn-1/finality-providers/sigs/Coinage_x_Daic.sig new file mode 100644 index 00000000..81d14c42 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Coinage_x_Daic.sig @@ -0,0 +1 @@ +3b76eaa91002cf83b241b6eef49de8fc63c15cb85ee2803750dd625b87c4fcc6ceeeedfb7b0461b7579ee10ebedb9f3be8aba62531d8f374dc2718845c7f6cd2 diff --git a/bbn-1/finality-providers/sigs/Colossus.sig b/bbn-1/finality-providers/sigs/Colossus.sig new file mode 100644 index 00000000..4679bdba --- /dev/null +++ b/bbn-1/finality-providers/sigs/Colossus.sig @@ -0,0 +1 @@ +45b43067d355fc7366bda94a1d2b205a911c924676af42d5af078579dd4aad327131cba48f79b24a867b38320d7132f7a1f01f095a3f404262b41862f2cf4218 diff --git a/bbn-1/finality-providers/sigs/CosmosSpaces.sig b/bbn-1/finality-providers/sigs/CosmosSpaces.sig new file mode 100644 index 00000000..0c255925 --- /dev/null +++ b/bbn-1/finality-providers/sigs/CosmosSpaces.sig @@ -0,0 +1 @@ +834367feb7ec756b17c2d452f1ff58f5a00288efab3ce8b427c03e89f2609f45f62492464d469c4749216180ddc0af90d77c76d564cb83cd2a1a233106797880 diff --git a/bbn-1/finality-providers/sigs/CroutonDigital.sig b/bbn-1/finality-providers/sigs/CroutonDigital.sig new file mode 100644 index 00000000..f333c9ae --- /dev/null +++ b/bbn-1/finality-providers/sigs/CroutonDigital.sig @@ -0,0 +1 @@ +c6d36a694b27bb4886631906945fa84a3877288af0eac6f0674c720ea2645cfce8ffe141134a0f353176d3a7a2aea29fcb363788872384c976563df33f3afe64 diff --git a/bbn-1/finality-providers/sigs/CryptoCrew.sig b/bbn-1/finality-providers/sigs/CryptoCrew.sig new file mode 100644 index 00000000..b1247739 --- /dev/null +++ b/bbn-1/finality-providers/sigs/CryptoCrew.sig @@ -0,0 +1 @@ +8d6240baf76a2218202047640a8d01a46d1bb179e6e23a23c42d75ea86448a0903c411051fa2382f7e0970701090d4113716aa89c801f2c70fe144e28fdac295 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/DSRV.sig b/bbn-1/finality-providers/sigs/DSRV.sig index ed4db109..5262c724 100644 --- a/bbn-1/finality-providers/sigs/DSRV.sig +++ b/bbn-1/finality-providers/sigs/DSRV.sig @@ -1 +1 @@ -c00801049f8c0e0256c27660d2f55a08311d91de5b1d9f1e69dae4a2a38f103c7c4a4a889a25b515ad9ae115ee955e78cdb40eb730d4bb3b7a072ae47797413d +69b5592f3617dfcd4cc11eb0a3d178fff70abbe450360738d95b4940589cd2a3932fbcdadc9b0657c2d92c4f8aa8a315de64ca2e1cc75b3891e4c473a5ba511b diff --git a/bbn-1/finality-providers/sigs/Decentr.sig b/bbn-1/finality-providers/sigs/Decentr.sig new file mode 100644 index 00000000..79b09067 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Decentr.sig @@ -0,0 +1 @@ +3986f1837854545cc23ddd0ddde8b3ac717461e609083ed73826718960c806b37d93029eaa3ddcabe918c637eb37e0de264dc3f789465092061aecbae9b0c9f4 diff --git a/bbn-1/finality-providers/sigs/EquinoxDAO.sig b/bbn-1/finality-providers/sigs/EquinoxDAO.sig new file mode 100644 index 00000000..a0185814 --- /dev/null +++ b/bbn-1/finality-providers/sigs/EquinoxDAO.sig @@ -0,0 +1 @@ +7ddd117605505291e182eaaa7db601881fcd12cb75e1c1a0065abdfbacfb88a6d164810b4b32d7640ed6a6ba1042961472644b36c67a14ae53554b15564cacda diff --git a/bbn-1/finality-providers/sigs/FTPFProvider.sig b/bbn-1/finality-providers/sigs/FTPFProvider.sig new file mode 100644 index 00000000..601bc2c5 --- /dev/null +++ b/bbn-1/finality-providers/sigs/FTPFProvider.sig @@ -0,0 +1 @@ +3871a174f85411c0f44a182d4b596b576b3d38331ccfb63a58a2d4fe758b83fb0cb64a11e99b1ad69dcc24ab53243a71376d5eac3ad306cc563179e1540faeae diff --git a/bbn-1/finality-providers/sigs/Figment.sig b/bbn-1/finality-providers/sigs/Figment.sig new file mode 100644 index 00000000..54c5ed8a --- /dev/null +++ b/bbn-1/finality-providers/sigs/Figment.sig @@ -0,0 +1 @@ +49f41290febedd20e2ce7c00efc43cfc8191fd64dae59fd5eaf5b4d97c4c31d7b7bb114bf6c1b9034334442f3ae10b8598bb67193eb04326a642b496b8c048e2 diff --git a/bbn-1/finality-providers/sigs/Finoa-Consensus-Services.sig b/bbn-1/finality-providers/sigs/Finoa-Consensus-Services.sig new file mode 100644 index 00000000..1705a934 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Finoa-Consensus-Services.sig @@ -0,0 +1 @@ +465062b4c2011acecbb37b5c32e947684edca2300ee2566ae9998686b0d40368e7d3ca3435f200a8d7f6c389d5d3fd11c047fcce770d2d66ebfc828ed17ad1ff diff --git a/bbn-1/finality-providers/sigs/GalaxyDigital.sig b/bbn-1/finality-providers/sigs/GalaxyDigital.sig new file mode 100644 index 00000000..b42bdc6a --- /dev/null +++ b/bbn-1/finality-providers/sigs/GalaxyDigital.sig @@ -0,0 +1 @@ +bee6034137289777680e5bde2439fe9a31b88e6c595720106af6ff557b5c7d7ab5b8c76dc478c25677cb6ebe5daf4d1320ee64ea5960f219abc5163f755093ad diff --git a/bbn-1/finality-providers/sigs/GateEarn.sig b/bbn-1/finality-providers/sigs/GateEarn.sig new file mode 100644 index 00000000..b264420f --- /dev/null +++ b/bbn-1/finality-providers/sigs/GateEarn.sig @@ -0,0 +1 @@ +a50ff1e21a806aacf9632fd0efa2845a7b0eea86b6922726c301b55b796c2f5b2df231739e71401dc4a0344eb6b7a653a38f4f075646e0a3bfdf391269ba4f61 diff --git a/bbn-1/finality-providers/sigs/HTX.sig b/bbn-1/finality-providers/sigs/HTX.sig new file mode 100644 index 00000000..e351bbd1 --- /dev/null +++ b/bbn-1/finality-providers/sigs/HTX.sig @@ -0,0 +1 @@ +248b3bf4c9d315853b46cead35eb4ba32bf490f40112030f54db18146c7b9433ea17752c7dc7dd13b750981758de5bf291c4f1caa8011b7f212d3482efd94bc5 diff --git a/bbn-1/finality-providers/sigs/HexTechnologies.sig b/bbn-1/finality-providers/sigs/HexTechnologies.sig new file mode 100644 index 00000000..8f8ea2c4 --- /dev/null +++ b/bbn-1/finality-providers/sigs/HexTechnologies.sig @@ -0,0 +1 @@ +b9a6b2f01049cc0ad2bba37eb74a0159dd293636245601575c3a8ae3158b118868b64a51f9afb243a4d24866dce67735ee92248b2b8fe7acdf370169ac6a2763 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/Huginn.sig b/bbn-1/finality-providers/sigs/Huginn.sig new file mode 100644 index 00000000..353fc6ef --- /dev/null +++ b/bbn-1/finality-providers/sigs/Huginn.sig @@ -0,0 +1 @@ +ba0ee061b4ddd7221da73f5b3da1a0e5099e0689fdb2af966a58bd6a9b3132296c6e1efa8233676e7442fd1c7678114a4edb13488e9412f4608f5d8eda867382 diff --git a/bbn-1/finality-providers/sigs/InfStones.sig b/bbn-1/finality-providers/sigs/InfStones.sig new file mode 100644 index 00000000..bb55736d --- /dev/null +++ b/bbn-1/finality-providers/sigs/InfStones.sig @@ -0,0 +1 @@ +274b52336a9109b8240fe466fa203b03381b11388a6f200087c8015716d7fe0bc8c038b257c5e78c648f221145cf5136e86f99366129a9267352432d63aae0bb diff --git a/bbn-1/finality-providers/sigs/InformalSystems.sig b/bbn-1/finality-providers/sigs/InformalSystems.sig new file mode 100644 index 00000000..beadd360 --- /dev/null +++ b/bbn-1/finality-providers/sigs/InformalSystems.sig @@ -0,0 +1 @@ +46d6c3da2df68d5ef9e64b1fde7dd5114bd5885974463dfbdc1c5536a199dfa74a73034ef6181b8f7708d690eb99ca6b71dc9d037699b00133fc49dc36f1c340 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/Jetking.sig b/bbn-1/finality-providers/sigs/Jetking.sig new file mode 100644 index 00000000..19d2bf27 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Jetking.sig @@ -0,0 +1 @@ +6e4c2a0c3bb3c4693a97945e2a1ef78baa7c2e081605177e51868a10777f9dbbe116cddbe2972be132a9f11ff89174217a12052ce469c06e8dd3d7108b93c4d5 diff --git a/bbn-1/finality-providers/sigs/Keplr.sig b/bbn-1/finality-providers/sigs/Keplr.sig new file mode 100644 index 00000000..805ab691 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Keplr.sig @@ -0,0 +1 @@ +64553ebdaf5b2a2b19d3f9bd067e937f47e18f4e6b376ab876cd003a2ef5c339b1e1c11549a5cb9521da3c7619568c8c5fc1e7eb0b1129df06483ff3670e09f6 diff --git a/bbn-1/finality-providers/sigs/Lombard.sig b/bbn-1/finality-providers/sigs/Lombard.sig new file mode 100644 index 00000000..e64b6247 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Lombard.sig @@ -0,0 +1 @@ +880b166760edeefa3538a75e68a29c466d8ab9140c073cf0bcbd15da898420a716710be34b5d62efc5d5781af83264c46b66d17fb523198e1d129b47cc92c086 diff --git a/bbn-1/finality-providers/sigs/Lorenzo.sig b/bbn-1/finality-providers/sigs/Lorenzo.sig new file mode 100644 index 00000000..d7a4e726 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Lorenzo.sig @@ -0,0 +1 @@ +2d43ee4f42e064075d3165b6dddd6b8601e1007aef38acb035697cf1bb2bf7c56baa0e7b124f9924ae71bc0ca42e47a5a92936f4175723f3a9d673a338ba3f99 diff --git a/bbn-1/finality-providers/sigs/Luganodes.sig b/bbn-1/finality-providers/sigs/Luganodes.sig new file mode 100644 index 00000000..41db281c --- /dev/null +++ b/bbn-1/finality-providers/sigs/Luganodes.sig @@ -0,0 +1 @@ +07a21f59969be68742facefa2b1a186c4bd533a07f4f4339d43b9743179999f97e7995a0cb82c82e95e15091a5770ca34c211e5e7f0be32e9e4c481bee0c06be \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/Meria.sig b/bbn-1/finality-providers/sigs/Meria.sig new file mode 100644 index 00000000..9f12fc1b --- /dev/null +++ b/bbn-1/finality-providers/sigs/Meria.sig @@ -0,0 +1 @@ +77541d7cb4a98912a1d7f68b93f3e8566211fd3d709c9e952b938739a4d67fa7acc2075aa40653e1eadffebcf153f9cd8d717f20294f3e3fdb5e8f1e19f04801 diff --git a/bbn-1/finality-providers/sigs/Moonmoonbird.sig b/bbn-1/finality-providers/sigs/Moonmoonbird.sig new file mode 100644 index 00000000..044a5de9 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Moonmoonbird.sig @@ -0,0 +1 @@ +fe0bd6b39ee7ebc9452ff98c47fbde6b894ad10e0df11a34d98036387bcafc6ca8688aee9bc5d9914101beb531224de7f3bea6ca217bd6c3f8f3e237161ba859 diff --git a/bbn-1/finality-providers/sigs/NextFinanceTech.sig b/bbn-1/finality-providers/sigs/NextFinanceTech.sig new file mode 100644 index 00000000..f9bdb250 --- /dev/null +++ b/bbn-1/finality-providers/sigs/NextFinanceTech.sig @@ -0,0 +1 @@ +9e68d2798ef209a563f29c1cb1269f172a454f50c03d5443fb84aad6cb74cc125146a8123963fedd272a58423bf824440d9d60e8d2d016f77fb4fd4bdec36d66 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/OneKey.sig b/bbn-1/finality-providers/sigs/OneKey.sig new file mode 100644 index 00000000..1d4ccc56 --- /dev/null +++ b/bbn-1/finality-providers/sigs/OneKey.sig @@ -0,0 +1 @@ +b98ee1ac94a701dde24de36bd61ae9f3bb29a89cd2a2336ec07c45e4032dd7ebdec49467851b4a79f37f0456f273e3c674907fb38803176895596f21af54db13 diff --git a/bbn-1/finality-providers/sigs/Orange-Code-0.sig b/bbn-1/finality-providers/sigs/Orange-Code-0.sig new file mode 100644 index 00000000..ce7040aa --- /dev/null +++ b/bbn-1/finality-providers/sigs/Orange-Code-0.sig @@ -0,0 +1 @@ +51072593cf711b3a57d27192da2af8c936389f49431939c6123837c7437ca457740dddbce95c1e3a9f55adb9f4e3210a5fdc82e6803f637fe2192a16b6cd079e diff --git a/bbn-1/finality-providers/sigs/P2P_org.sig b/bbn-1/finality-providers/sigs/P2P_org.sig new file mode 100644 index 00000000..89ced7d1 --- /dev/null +++ b/bbn-1/finality-providers/sigs/P2P_org.sig @@ -0,0 +1 @@ +0eac3cd6185e25758984288ea08464cb73dc44e6b70235418452ad9d6048fae05ff5e61b4d6996bcc773b8688b9e8d469b3d0b1873fa50b11b51cff26838e888 diff --git a/bbn-1/finality-providers/sigs/PumpBTC.sig b/bbn-1/finality-providers/sigs/PumpBTC.sig new file mode 100644 index 00000000..f1af3184 --- /dev/null +++ b/bbn-1/finality-providers/sigs/PumpBTC.sig @@ -0,0 +1 @@ +1528c7bac85c25bd91b0387b6c659ac515089b27778437b0d5101a2e78b2b0568e6c8fa6ef2b2af028c8619fd73fb2ab463e407936815e7a7b9817cc64de76a2 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/ROCKMINER.sig b/bbn-1/finality-providers/sigs/ROCKMINER.sig new file mode 100644 index 00000000..99729716 --- /dev/null +++ b/bbn-1/finality-providers/sigs/ROCKMINER.sig @@ -0,0 +1 @@ +65a50431bbdd5eb7a40b94cca2b95ceceee60b952be7aab0246aa531f8638c2dc16d893e9c4b4957039ec9af6899aa22cbd9db19ea2b3c08dc2f00cd2b0d4b30 diff --git a/bbn-1/finality-providers/sigs/Robsberry.sig b/bbn-1/finality-providers/sigs/Robsberry.sig new file mode 100644 index 00000000..2240b02c --- /dev/null +++ b/bbn-1/finality-providers/sigs/Robsberry.sig @@ -0,0 +1 @@ +3fc96a6594057ecb60eba118a50633cddd9e5416f3bd71636a8fbae811546c4d7e380bed1f7fa4d5b49dca30b0a0940ebf3b122b554d2f4d0bd6c058cccde341 diff --git a/bbn-1/finality-providers/sigs/RockX.sig b/bbn-1/finality-providers/sigs/RockX.sig new file mode 100644 index 00000000..489f307a --- /dev/null +++ b/bbn-1/finality-providers/sigs/RockX.sig @@ -0,0 +1 @@ +5779ea1be6e2271039c4a4deb6d8a002c46840cbafdd18d96aa93e676e65cc061efe2b68d166bb91a0bd2505d4647d7bbed04a7fd2b815c966e312b8e9bedf2d diff --git a/bbn-1/finality-providers/sigs/SandMan.sig b/bbn-1/finality-providers/sigs/SandMan.sig new file mode 100644 index 00000000..7c34e48a --- /dev/null +++ b/bbn-1/finality-providers/sigs/SandMan.sig @@ -0,0 +1 @@ +04fb15f7234aeac46fc0cb995845914e02b9b6e04a5b3851a8f3972bdaf13f3a8dbb3a5a4aac1153b2da8acb14b1a6c81710651a8180450dc779c67c06a839e2 diff --git a/bbn-1/finality-providers/sigs/Senseinode.sig b/bbn-1/finality-providers/sigs/Senseinode.sig new file mode 100644 index 00000000..a43d10d7 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Senseinode.sig @@ -0,0 +1 @@ +e9488cff9141a48b566355a0a9a1ab992faa58d4523bf958dd71cc2a6ad38c8026e9fb4a63dacada026b5c2012dc9a61eca79ec834adbf522220eb46697ea187 diff --git a/bbn-1/finality-providers/sigs/SimplyStaking.sig b/bbn-1/finality-providers/sigs/SimplyStaking.sig new file mode 100644 index 00000000..5a78e85f --- /dev/null +++ b/bbn-1/finality-providers/sigs/SimplyStaking.sig @@ -0,0 +1 @@ +e9f322bb5ffe771ee88a9e427f19c132a4d4671a2f4afd9af73ace4074ce622ea5cfcb192937846aaec453ba2e4459ceffbc3759a8057faa03d32fb0590aafa3 diff --git a/bbn-1/finality-providers/sigs/SnowFall.sig b/bbn-1/finality-providers/sigs/SnowFall.sig new file mode 100644 index 00000000..bb2d4941 --- /dev/null +++ b/bbn-1/finality-providers/sigs/SnowFall.sig @@ -0,0 +1 @@ +d3378a35876853abbc8722c66a5ba4cf836400f127bffc143c209817783b98aaf29e8a0d7de16a63cd6d54266e8ab1b598177edf44556dd05a581d64d3e31a37 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/Solv-Protocol.sig b/bbn-1/finality-providers/sigs/Solv-Protocol.sig new file mode 100644 index 00000000..03745aec --- /dev/null +++ b/bbn-1/finality-providers/sigs/Solv-Protocol.sig @@ -0,0 +1 @@ +5c86bc554b489e36cd171ff89362ed141e2a87cc5f40b9f8fc0c454fbe634d0856f0175f400ae0679c7cc31e46001299a7cd6c1405a202d2bbaae7c7d9d5f668 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/StakeWithUs.sig b/bbn-1/finality-providers/sigs/StakeWithUs.sig index aa0059f8..3e8b7d3e 100644 --- a/bbn-1/finality-providers/sigs/StakeWithUs.sig +++ b/bbn-1/finality-providers/sigs/StakeWithUs.sig @@ -1 +1 @@ -0e477b9a686b136432664404cbeec4864dd13287c9ce802f51fde8d8093ec60d70fb5c6abfe3ec09ab1c79a24b7ee47b6d719a9ae73001b1e2ad14fde8dbd46b +846a61b114cd54b3c84c44c2d4e09f1cf408fddf6c317ec916f9f5641ab9b0b3555774ae4ba614f5211a7faca118bba830d0069f081fa16996c1d80a613a31ec diff --git a/bbn-1/finality-providers/sigs/Staked.sig b/bbn-1/finality-providers/sigs/Staked.sig new file mode 100644 index 00000000..8d4d428d --- /dev/null +++ b/bbn-1/finality-providers/sigs/Staked.sig @@ -0,0 +1 @@ +0ccbf99720dedc2d5de2d00806ad6c96d79c28fe1db1bf2d42c1ff70f256607da711843e67daebb30a7c2b9ec7493bcebec8783e6a82acbebe71e46bedfde03d diff --git a/bbn-1/finality-providers/sigs/UndefinedLabs.sig b/bbn-1/finality-providers/sigs/UndefinedLabs.sig new file mode 100644 index 00000000..ea73f5f4 --- /dev/null +++ b/bbn-1/finality-providers/sigs/UndefinedLabs.sig @@ -0,0 +1 @@ +f66e3e27a572c755f8707ebd43503a5ceadcd50ef910e63a8a0a2ed6c2a18f3bdd5b283b1ab41992bb9f2dbed6808b33ed355c1fc87cd4cf4f3d919c6aac858d diff --git a/bbn-1/finality-providers/sigs/ValidationCloud.sig b/bbn-1/finality-providers/sigs/ValidationCloud.sig new file mode 100644 index 00000000..1c16f8ad --- /dev/null +++ b/bbn-1/finality-providers/sigs/ValidationCloud.sig @@ -0,0 +1 @@ +61369bdc679c7720f26c7cddcd90427540ac73ff37fda319063b727ec8ac35a29f7f55388d0137d59f6b40fc42097780fa61ac63589b1c8f94ffb0fdf9b773a0 diff --git a/bbn-1/finality-providers/sigs/ViaBTC.sig b/bbn-1/finality-providers/sigs/ViaBTC.sig new file mode 100644 index 00000000..6794f954 --- /dev/null +++ b/bbn-1/finality-providers/sigs/ViaBTC.sig @@ -0,0 +1 @@ +a903595efb49424cfe7e50258ebe7251fad437ab01e34a587aba124d90550a10ee7202ceddef5ed4979ce85f73ff8ad99c69749f1080dfeefdf3d8f984a44ac6 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/WhisperNode.sig b/bbn-1/finality-providers/sigs/WhisperNode.sig new file mode 100644 index 00000000..ea6eaf2a --- /dev/null +++ b/bbn-1/finality-providers/sigs/WhisperNode.sig @@ -0,0 +1 @@ +5559902a63e83940f062222a52e3fa125ed36d75ce0af576571c9d09c8a4d42637409e8716b69240a57d56aec7d9b7a96457100acd6336c5a90ff66441e36233 diff --git a/bbn-1/finality-providers/sigs/Xangle.sig b/bbn-1/finality-providers/sigs/Xangle.sig new file mode 100644 index 00000000..1122e4d8 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Xangle.sig @@ -0,0 +1 @@ +de4b2054a7f394bd86423300ca443934426c552a53ccb315f460e135417c25a7daf98d8baddea4e31e106035796b26d1651edfef14db3d5837b99f2950c0f257 diff --git a/bbn-1/finality-providers/sigs/Zellic.sig b/bbn-1/finality-providers/sigs/Zellic.sig new file mode 100644 index 00000000..4732fb74 --- /dev/null +++ b/bbn-1/finality-providers/sigs/Zellic.sig @@ -0,0 +1 @@ +6706ac120ba67a409550df8686964d999b59790a0a91909baba798572ee1ca65aeb91a1c7b66cbececf616f662b7bef0af5c5ef6232873012e1d2dae9a74e471 diff --git a/bbn-1/finality-providers/sigs/a41.sig b/bbn-1/finality-providers/sigs/a41.sig new file mode 100644 index 00000000..e83a3f22 --- /dev/null +++ b/bbn-1/finality-providers/sigs/a41.sig @@ -0,0 +1 @@ +6821e3669cf2e8ac6590d0ba3bdfa1719b9e42f746b076aa5d3ef76a7c9923694320029555251e646d5187b766f0cadfe3d10a1fd0911a6e85869efcf2e75f6d diff --git a/bbn-1/finality-providers/sigs/ambergroup.sig b/bbn-1/finality-providers/sigs/ambergroup.sig new file mode 100644 index 00000000..757a621a --- /dev/null +++ b/bbn-1/finality-providers/sigs/ambergroup.sig @@ -0,0 +1 @@ +e00e5cf1968be0eb03e00a5b9ef04c643f39684173c5c2d0e7903e8ba41c444b5ff1b7211d5516710fe7e9b72889db79aaa8f065a623fdc1a08ad28a69d86943 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/antpool.sig b/bbn-1/finality-providers/sigs/antpool.sig new file mode 100644 index 00000000..90270da5 --- /dev/null +++ b/bbn-1/finality-providers/sigs/antpool.sig @@ -0,0 +1 @@ +49e2daf6e8a790c37a66af7b92d2002f3b4ea2b40ed3164994ff494b9712bc13b5a114ed1ce506163e5ae32151f2f597cbc2af2c05b9edec75b1a5939a743af3 diff --git a/bbn-1/finality-providers/sigs/axol.sig b/bbn-1/finality-providers/sigs/axol.sig new file mode 100644 index 00000000..18ffe29f --- /dev/null +++ b/bbn-1/finality-providers/sigs/axol.sig @@ -0,0 +1 @@ +8c1ca9e334c3e023b994215f123bff1ec250ef37884b8d52df0df40c8a2163418e46a452eed09777356b736ca73b5c0403c537d4ad043e0ab220dc2969d40ebb diff --git a/bbn-1/finality-providers/sigs/bitManna.sig b/bbn-1/finality-providers/sigs/bitManna.sig new file mode 100644 index 00000000..10b263cb --- /dev/null +++ b/bbn-1/finality-providers/sigs/bitManna.sig @@ -0,0 +1 @@ +60da559bacd715e08d927fde7cb6fd4ab5f180f264603b3bfd552a0e5da3e1d986b7934ba19769a94bd59e6cd7fee6ee4c239d9fcde9a7e04d82ef2e9d9be1a4 diff --git a/bbn-1/finality-providers/sigs/bitrue.sig b/bbn-1/finality-providers/sigs/bitrue.sig new file mode 100644 index 00000000..f966cab5 --- /dev/null +++ b/bbn-1/finality-providers/sigs/bitrue.sig @@ -0,0 +1 @@ +51ef659261cf077dee5e653e5b698e393e283893c8f3280208721d7a3f4d4fb2534853919bd55f94ed883701e03a77c4810da0521e7cab0d8f92f4cc560a4146 diff --git a/bbn-1/finality-providers/sigs/blockscape.sig b/bbn-1/finality-providers/sigs/blockscape.sig new file mode 100644 index 00000000..6c728f93 --- /dev/null +++ b/bbn-1/finality-providers/sigs/blockscape.sig @@ -0,0 +1 @@ +bf6a1d1b3fa7363731e382b85f2cce119da88c52e8c062ed5ad44e9196d5870078c0f2432c0504658eda4490a8f5f63b423d8fe147b865ae6a0eb7a6dad6b0e0 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/chainflow.sig b/bbn-1/finality-providers/sigs/chainflow.sig new file mode 100644 index 00000000..f142a50c --- /dev/null +++ b/bbn-1/finality-providers/sigs/chainflow.sig @@ -0,0 +1 @@ +8693e249af85213f40f5b2f9a9ae1efd1eb2f88c22cb2d11d72f5a4436b9514497f329255b868a6336dfa0f5cb896f9cf5391249237e6cfbc5637f9d511491bd diff --git a/bbn-1/finality-providers/sigs/chorusone.sig b/bbn-1/finality-providers/sigs/chorusone.sig new file mode 100644 index 00000000..f7373f36 --- /dev/null +++ b/bbn-1/finality-providers/sigs/chorusone.sig @@ -0,0 +1 @@ +56857c868291d140400ceb28428bdda9fa0a75a3b1dd7676509f744b647078f7c618cf6cce074823b2e26aa62cd0f07321b35a829c54e91d25340bd3519b2fda diff --git a/bbn-1/finality-providers/sigs/cubist.sig b/bbn-1/finality-providers/sigs/cubist.sig new file mode 100644 index 00000000..82b1998c --- /dev/null +++ b/bbn-1/finality-providers/sigs/cubist.sig @@ -0,0 +1 @@ +baf6cf94144bc63d3b2674c8924ec817044eb2cce2ef160a4ee60adc8d2b7fefccfc9801a9cee94971f2d2e1c373316ccd1557b0bbc34bbb93b7a15bcc850416 diff --git a/bbn-1/finality-providers/sigs/fiammachain.sig b/bbn-1/finality-providers/sigs/fiammachain.sig new file mode 100644 index 00000000..01af5cfc --- /dev/null +++ b/bbn-1/finality-providers/sigs/fiammachain.sig @@ -0,0 +1 @@ +9dddfb807dc0e29bd0c3f3ae924d3a22b5f608297b626384494eb9c9850951a7e211406b23bf80b4cab0c67efea83a75c29f000e1de108e85d1407f418b7223d diff --git a/bbn-1/finality-providers/sigs/gumi.sig b/bbn-1/finality-providers/sigs/gumi.sig new file mode 100644 index 00000000..cd7b6894 --- /dev/null +++ b/bbn-1/finality-providers/sigs/gumi.sig @@ -0,0 +1 @@ +a700d8dfc6d365c527ec706f4ad5476d418542762d81dd74f0ae82d4ffe155aa4f1e405c19c270ffd23602dfbf2465d7396774653bb5a60576745da6396282a5 diff --git a/bbn-1/finality-providers/sigs/hashkeycloud.sig b/bbn-1/finality-providers/sigs/hashkeycloud.sig new file mode 100644 index 00000000..0b3136e5 --- /dev/null +++ b/bbn-1/finality-providers/sigs/hashkeycloud.sig @@ -0,0 +1 @@ +c2be15e538fd851a93059d87d28bad24dbef7e058c4e8d0b2bd29f2e047570e545f23800e2066687f0525ef0b9af667e51fa81f166c82cf7fc33deaa69c85cfb diff --git a/bbn-1/finality-providers/sigs/ikunkun.sig b/bbn-1/finality-providers/sigs/ikunkun.sig new file mode 100644 index 00000000..44bff2b1 --- /dev/null +++ b/bbn-1/finality-providers/sigs/ikunkun.sig @@ -0,0 +1 @@ +523d97280936168b00edfd1f968681b8751318d5867f6364368dd4bcbbd14fcc57653ddfae592319c2dfadc9a1fff98139557caadc304a787697d30dfde2b6fb diff --git a/bbn-1/finality-providers/sigs/imperator.sig b/bbn-1/finality-providers/sigs/imperator.sig new file mode 100644 index 00000000..e24d7375 --- /dev/null +++ b/bbn-1/finality-providers/sigs/imperator.sig @@ -0,0 +1 @@ +fa614d7fc65487ab1feb5d599db33a297b6ed271056f5732ce22e7e5c189a586199ffaab4dedad94cbe28bdd78e8bb0f53eafaf0c87f7e7da217feb8fc93f97d \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/interchainFM.sig b/bbn-1/finality-providers/sigs/interchainFM.sig new file mode 100644 index 00000000..c0bb7510 --- /dev/null +++ b/bbn-1/finality-providers/sigs/interchainFM.sig @@ -0,0 +1 @@ +8d686d360f4d8b9a8d35363024e80161bcc8260753bfab53a0ec787a4eb5702a8926a8169fafa8b57a1a1ccf1da5265130eef22f3982e4ec59ec54ba4a28aee2 diff --git a/bbn-1/finality-providers/sigs/liquify.sig b/bbn-1/finality-providers/sigs/liquify.sig new file mode 100644 index 00000000..79f31245 --- /dev/null +++ b/bbn-1/finality-providers/sigs/liquify.sig @@ -0,0 +1 @@ +26b47aa5db2a9d1626b1632c245ce09bed7caa4b5c540142293deaf2af78c6c0a66efc602adfc2046ee7bd2f64f6cf6722b08f228e2094eaeda0e05c1f1ffbfd diff --git a/bbn-1/finality-providers/sigs/miles.sig b/bbn-1/finality-providers/sigs/miles.sig new file mode 100644 index 00000000..c89ce662 --- /dev/null +++ b/bbn-1/finality-providers/sigs/miles.sig @@ -0,0 +1 @@ +6cf23db312765aa8a01fff53a4416bf1d4ec29360279077c2ce0215f58a8498b7b88177851fe8f95dbe5ee1d1a6f9129e14691dcbdfad403dbdaedf6375b9d9a diff --git a/bbn-1/finality-providers/sigs/mycactus.sig b/bbn-1/finality-providers/sigs/mycactus.sig new file mode 100644 index 00000000..252592e9 --- /dev/null +++ b/bbn-1/finality-providers/sigs/mycactus.sig @@ -0,0 +1 @@ +58a1cc2a85408f99db9ed3d6b6ad716df4cfe5ca365d9aaf4108e94a868b67e6457a1f5e790cddc44729e896c720cd6a0bdf55fafed1d45ed19e07adb6732bbf diff --git a/bbn-1/finality-providers/sigs/nodesguru.sig b/bbn-1/finality-providers/sigs/nodesguru.sig new file mode 100644 index 00000000..c14c1b68 --- /dev/null +++ b/bbn-1/finality-providers/sigs/nodesguru.sig @@ -0,0 +1 @@ +aea32c8a02b1971839ad3dea46d6576ce9f491dd787e7062bbc6340bd3625ac9ae379af71e0ad726926e7806e3813673210d3ad1aa0715e193ac7e5dfea9b05e diff --git a/bbn-1/finality-providers/sigs/okxearn.sig b/bbn-1/finality-providers/sigs/okxearn.sig new file mode 100644 index 00000000..bd5fb9f5 --- /dev/null +++ b/bbn-1/finality-providers/sigs/okxearn.sig @@ -0,0 +1 @@ +7df0a4d2c710fcc9733698cbce610ad749eb657a51c9989815e41454a22be826b0c9289c8ecad5ab2291408d95c17f216e9e4eea357d2036a184078b75d150be diff --git a/bbn-1/finality-providers/sigs/pSTAKE.sig b/bbn-1/finality-providers/sigs/pSTAKE.sig new file mode 100644 index 00000000..396db1c3 --- /dev/null +++ b/bbn-1/finality-providers/sigs/pSTAKE.sig @@ -0,0 +1 @@ +15185d0e57ded0006eeb4d3b0fcc5ac38acd266e7c01cec0f684ae4e9899089e5a8e6ebff0c66a2512d961486bbb09b843d8be5f73d591477e5af0ca5b23aefd \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/proofgroup.sig b/bbn-1/finality-providers/sigs/proofgroup.sig new file mode 100644 index 00000000..c704d5d1 --- /dev/null +++ b/bbn-1/finality-providers/sigs/proofgroup.sig @@ -0,0 +1 @@ +89a4bf5069caad864b91a27ee0d05350ba760525d94d4de701918de77782a0955cd95d00393d7b28be73d21bb3678a67a31b4114a69d9501f2fac569ad98a7ed diff --git a/bbn-1/finality-providers/sigs/sg-1.sig b/bbn-1/finality-providers/sigs/sg-1.sig new file mode 100644 index 00000000..7e033e53 --- /dev/null +++ b/bbn-1/finality-providers/sigs/sg-1.sig @@ -0,0 +1 @@ +2415a03eb65a9afe2d1c36fa408eb57a90e1054fdbac26f3becde6c41c9cf03c0b5c34b25c15f413e521ec82a9f690657a4a64dab88a6e7f4237977fb83feb89 diff --git a/bbn-1/finality-providers/sigs/silent.sig b/bbn-1/finality-providers/sigs/silent.sig new file mode 100644 index 00000000..2a0cd581 --- /dev/null +++ b/bbn-1/finality-providers/sigs/silent.sig @@ -0,0 +1 @@ +59f99082be33560e8256850f6501e72b872ffe591b98773218936476a67c1a4059fd105b891d7ef3b6fd32bb374e1432143f03908c7d713e7d50daaf831b7c71 diff --git a/bbn-1/finality-providers/sigs/stakeandrelax.sig b/bbn-1/finality-providers/sigs/stakeandrelax.sig new file mode 100644 index 00000000..edafacd2 --- /dev/null +++ b/bbn-1/finality-providers/sigs/stakeandrelax.sig @@ -0,0 +1 @@ +0b835045a20abcc2a233239d3d8eb8a69e0368031b97872abddb6509c0429f5fd573f0cadeca3c3f22ae1822b469e0c4d124e8cc21ab9e1aef29c1c72a8ec001 diff --git a/bbn-1/finality-providers/sigs/stakecapital.sig b/bbn-1/finality-providers/sigs/stakecapital.sig new file mode 100644 index 00000000..ef3412fa --- /dev/null +++ b/bbn-1/finality-providers/sigs/stakecapital.sig @@ -0,0 +1 @@ +dd35e41872f09842d6a3bfb2bee711877355ebcd103ebedae4b552d19f08480f892c7675d791fc86c1ff10c62530c6dca2bb50110068fd6c81ac9c0ec77c8957 diff --git a/bbn-1/finality-providers/sigs/stakeway.sig b/bbn-1/finality-providers/sigs/stakeway.sig new file mode 100644 index 00000000..d7140b25 --- /dev/null +++ b/bbn-1/finality-providers/sigs/stakeway.sig @@ -0,0 +1 @@ +8790c655bed9a7925b70023928943529e4e0446e29af411c1689192546eb366fbd0dda391fea74b1324dcc2e030e6849867c947f405a2469dbb0d6620c4146e0 \ No newline at end of file diff --git a/bbn-1/finality-providers/sigs/twinstake.sig b/bbn-1/finality-providers/sigs/twinstake.sig new file mode 100644 index 00000000..5fe58133 --- /dev/null +++ b/bbn-1/finality-providers/sigs/twinstake.sig @@ -0,0 +1 @@ +00e524fa11b8ec036eb4660c4475a0a4a84fb5f9e9523df70fe50a07e2b5bad29bfc165bea50369459e4c93e02c0496365bc6b89873c5972b68f9ea6decd1298 diff --git a/bbn-1/finality-providers/sigs/unifra.sig b/bbn-1/finality-providers/sigs/unifra.sig new file mode 100644 index 00000000..5398c974 --- /dev/null +++ b/bbn-1/finality-providers/sigs/unifra.sig @@ -0,0 +1 @@ +18473edee7ab21a14e699dc085e71ffb57193bfe49424c558c4ac78c9cccf2d922fc0071b51f4d4bd919a0e8612384aa1fabe8429f0f23f3e3894e0b78ccac83 diff --git a/bbn-1/finality-providers/sigs/web3btc.sig b/bbn-1/finality-providers/sigs/web3btc.sig new file mode 100644 index 00000000..40bfa25b --- /dev/null +++ b/bbn-1/finality-providers/sigs/web3btc.sig @@ -0,0 +1 @@ +b256ac3de838a8d27ab84d70d7cf4190b0e6ad553508c90b75bbe1a18588a7cfdddc36a902dfd3270e36a2d8272eb6e3d62bad022230e5f77308ce9e7face17b diff --git a/bbn-1/finality-providers/sigs/wizz.sig b/bbn-1/finality-providers/sigs/wizz.sig new file mode 100644 index 00000000..8faf793a --- /dev/null +++ b/bbn-1/finality-providers/sigs/wizz.sig @@ -0,0 +1 @@ +87e8a4017bf5b925a1cd4296d7d07bee5d44d2873ae10cf4e7959af4ef07523c328b888321ecc30c7e2d6006d71725c4b67ceb5a7ea3915468bee726bf51e2b8 diff --git a/bbn-1/integration/assets/system-detailed.png b/bbn-1/integration/assets/system-detailed.png new file mode 100644 index 00000000..ca8679d8 Binary files /dev/null and b/bbn-1/integration/assets/system-detailed.png differ diff --git a/bbn-1/integration/assets/system-high-level.png b/bbn-1/integration/assets/system-high-level.png new file mode 100644 index 00000000..c7c34f85 Binary files /dev/null and b/bbn-1/integration/assets/system-high-level.png differ diff --git a/bbn-1/integration/staking-backend.md b/bbn-1/integration/staking-backend.md new file mode 100644 index 00000000..4cd14200 --- /dev/null +++ b/bbn-1/integration/staking-backend.md @@ -0,0 +1,125 @@ +# Operating a Bitcoin Staking Backend + +In this document we describe a reference tech stack employed by Babylon for a +back-end service that collects information about the Babylon staking system from +Bitcoin and processes unbonding requests performed by users. +The entirety or part of this tech stack can be employed by staking providers +to build Bitcoin Staking applications. + +This graphic demonstrates the architecture of the reference staking +back-end tech stack. In the following sections, we will go through the +components involved in more detail. +![Architecture](./assets/system-detailed.png) + +## External Components + +### Bitcoin + +Bitcoin serves as the decentralized ledger that stores and orders the staking +transactions for the lock-only network. + +The system defines a set of +[global parameters](../parameters) that specify what constitutes a valid +staking transaction that the system recognizes. Transactions that are on +Bitcoin and adhere to the staking parameters are considered as valid staking +transactions. + +### Staking Transactions + +The system defines three types of transactions: +- *Staking* which creates new stake by locking BTC in the self-custodial + Bitcoin Staking script, +- *Unbonding* which unbonds stake from the Bitcoin staking script before the locking expires, and +- *Withdraw* which extracts unlocked/unbonded stake to the staker's address. + +The full spec of the transactions involved in the Bitcoin staking protocol can be found +[here](https://github.com/babylonlabs-io/babylon/blob/v0.9.x/docs/staking-script.md). + +Participants of the system can create staking transactions either through the +staking dApp or the staker CLI: +- The [Staking dApp](https://github.com/babylonlabs-io/simple-staking/tree/main) + is a user-friendly application allowing users to create, sign, and submit + staking transactions to the Bitcoin ledger. + It can either be built directly inside the Bitcoin wallet or can connect + to a wallet. It communicates with a back-end service (described later) that + has access to an unbonding pipeline in order to submit unbonding requests. +- The [Staker CLI](https://github.com/babylonlabs-io/btc-staker/tree/v0.5.x) + is a command line tool for power users that want full control + on how their staking transaction is constructed. Stakers utilize the CLI to + construct Bitcoin staking transactions and are responsible for signing them + through a wallet of their choice and submitting them to the Bitcoin ledger or + the Staking API service in the case of unbonding. + +One could also build their own staking application and interact with the staking backend. + +### Covenant Emulation Committee + +The covenant emulation committee is a set of entities responsible for approving +on-demand unbonding requests. The members of the committee operate a +[covenant signer](https://github.com/babylonlabs-io/covenant-signer/tree/v0.2.x) +program which involves a server that accepts requests that contain unbonding +requests that require the covenant emulator’s signature. +If the requests are valid, then the signature is returned in the response. +The covenant signer servers are contacted by a back-end unbonding pipeline +(described later) which collects their signatures before forwarding the fully +signed transaction to Bitcoin. +Note that the unbonding transaction requires the staker's signature, so the +covenant committee cannot consume the staking transaction +without the staker's approval. + +The list of covenant emulation committee members is a global parameter, and the +signer servers can be accessed from all instances of the staking back-ends. + +## BackEnd Staking System Components + +### [Staking Indexer](https://github.com/babylonlabs-io/staking-indexer/tree/v0.2.x) + +The staking indexer is a daemon that monitors the Bitcoin ledger for Bitcoin +Staking and Unbonding transactions. It consumes the +[system parameters](../parameters) to identify whether a staking transaction +is valid and its activity status. Valid staking transactions are stored in a +database and sent to RabbitMQ queues for further consumption by clients. + +### [Staking API](https://github.com/babylonlabs-io/staking-api-service/tree/v0.2.x) + +The staking API is a service that provides information about the state +of the staking system and collects unbonding requests for further processing. + +The API consumes staking events from the RabbitMQ queues the staking indexer +writes to. Based on those events, it calculates the status of delegations +(e.g. delegation has been successfully unbonded) and calculates information +about the state of the system (e.g. staker delegations, TVL, etc.) to provide +to consumers. It monitors for delegation expiration by consuming from the +RabbitMQ queue the expiry checker writes to. + +In the case of an unbonding request, the API verifies it and stores it in +a database for further consumption by the unbonding pipeline. + +### [Expiry Checker](https://github.com/babylonlabs-io/staking-expiry-checker/tree/v0.1.x) + +The staking expiry checker is a micro-service that reads staking transactions +from a database and checks whether their timelock has expired by comparing it +to the current Bitcoin height. +Once a delegation expires, +the expiry checker submits an event to a RabbitMQ queue for further consumption +by clients. + +### [Unbonding Pipeline](https://github.com/babylonlabs-io/cli-tools/tree/v0.2.x) + +The unbonding pipeline is a process that is run periodically to execute +pending unbonding requests. +It reads from the database the API writes unbonding requests to, +verifies the validity of the requests, and +connects to the covenant emulator committee members to collect their signatures. +Once a sufficient number of signatures is collected, +the fully signed unbonding transaction is sent to Bitcoin. + +## Interoperability + +Interoperability between staking providers requires that +there’s consensus on the following: +- *Staking Parameters*: All staking providers have utilize the same + staking parameters. +- *Staking Transactions*: All staking providers validate the + staking transactions in the same way and reach the same conclusions on their + status (e.g. actie, expired, unbonding, etc.) diff --git a/bbn-1/integration/wallet.md b/bbn-1/integration/wallet.md new file mode 100644 index 00000000..4c881929 --- /dev/null +++ b/bbn-1/integration/wallet.md @@ -0,0 +1,120 @@ +# Wallet Integration + +The `bbn-1` network will focus on the security of the staked Bitcoins by +allowing the user's to interaction with the BTC mainnet network directly for staking. +It will be a lock-only network in which Bitcoin stake is going to be +created without a Babylon chain operating. Stakers can lock their funds for a +specific timelock and on-demand unbond if they want to unlock earlier than +that. + +The system is thus quite simple. It involves: +- A UI/UX that can generate Bitcoin Staking and Unbonding transactions + and sign them through an interaction with a Bitcoin signer (e.g. a wallet). +- A Bitcoin node that propagates transactions to the Bitcoin network and + is accessible by the UI/UX, either directly or through a wallet. +- A back-end system that indexes Bitcoin to collect information about the + system and identify which stake is valid, as well as process unbonding + requests. + +The following figure shows a high-level overview of the system: + +![System High Level](./assets/system-high-level.png) + +In the following sections we explore the different ways a wallet can integrate +Bitcoin Staking and the materials required for each kind of integration. + +## Ways to Integrate Bitcoin Staking + +### 1. Extension Wallet + +**Option-1**, be added to a third-party’s Bitcoin staking website. +This requires collaboration with the host of the website and +exposing compatible APIs. +To integrate with the Babylon hosted staking website, please check the +interface your wallet (or a wrapper of it) should adhere to +[here](https://github.com/babylonlabs-io/simple-staking/blob/main/docs/WalletIntegration.md). + +**Option-2**, host your own Bitcoin staking website that +connects to your extension wallet that retrieves staking +information from a back-end you operate. +- To integrate with a staking website that uses the Babylon reference staking + dApp [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main), please + check the interface your wallet (or a wrapper of it) should adhere to + [here](https://github.com/babylonlabs-io/simple-staking/blob/main/docs/WalletIntegration.md). +- For information about developing your own Bitcoin staking website, please check + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/tree/v0.3.0) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/v0.9.x/btcstaking/identifiable_staking.go) + Bitcoin Staking libraries. + - our reference web application [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main). +- For information about operating your own back-end, please read this + [document](./staking-backend.md) + +**Option-3**, develop Bitcoin staking as a feature of your extension wallet, +which connects to either third party APIs +(such as the Babylon [API](https://staking-api.babylonlabs.io/swagger/index.html)) or a back-end you operate. +- For information about developing your own Bitcoin staking as a feature, please check + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/tree/v0.3.0) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/v0.9.x/btcstaking/identifiable_staking.go) + Bitcoin Staking libraries. + - our reference web application [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main). +- For information about operating your own back-end, please read this + [document](./staking-backend.md) + +### 2. Mobile App Wallet + +**Option-1**, embed a third-party Bitcoin staking website to your mobile app +wallet, which interacts with the BTC signer inside your wallet via +app window interface. +To embed on the Babylon hosted staking website, please check the +interface your mobile wallet (or a wrapper of it) should adhere to +[here](https://github.com/babylonlabs-io/simple-staking/blob/main/docs/WalletIntegration.md). + +**Option-2**, host your own Bitcoin staking website that connects to your +extension wallet that retrieves staking information from a back-end you +operate. Then embed your own Bitcoin staking website to your mobile app wallet. +- To integrate with a staking website that uses the Babylon reference staking + dApp [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main), please + check the interface your mobile wallet (or a wrapper of it) should adhere to + [here](https://github.com/babylonlabs-io/simple-staking/blob/main/docs/WalletIntegration.md). +- For information about developing your own Bitcoin staking website, please check + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/tree/v0.3.0) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/v0.9.x/btcstaking/identifiable_staking.go) + Bitcoin Staking libraries. + - our reference web application [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main). +- For information about operating your own back-end, please read this + [document](./staking-backend.md) + +**Option-3**, develop Bitcoin staking as a feature of your mobile wallet, +which connects to either third party APIs +(such as the Babylon [API](https://staking-api.babylonlabs.io/swagger/index.html)) or a back-end you operate. +- For information about developing Bitcoin staking as a feature, please check + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/tree/v0.3.0) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/v0.9.x/btcstaking/identifiable_staking.go) + Bitcoin Staking libraries. + - our reference web application [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main). +- For information about operating your own back-end, please read this + [document](./staking-backend.md) + +### 3. Hardware Wallet + +**Option-1**, develop Bitcoin staking as a feature of your extension wallet, +which connects to either third party APIs +(such as the Babylon [API](https://staking-api.babylonlabs.io/swagger/index.html)) or a back-end you operate. +- For information about developing your own Bitcoin staking website, please check + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/tree/v0.3.0) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/v0.9.x/btcstaking/identifiable_staking.go) + Bitcoin Staking libraries. + - our reference web application [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main). +- For information about operating your own back-end, please read this + [document](./staking-backend.md) + +**Option-2**, integrate via a compatible software wallet (extension or mobile) +that is Bitcoin staking enabled. +To embed on the Babylon hosted staking website, please check the +interface your hardware wallet (or a wrapper of it) should adhere to +[here](https://github.com/babylonlabs-io/simple-staking/blob/main/docs/WalletIntegration.md). diff --git a/bbn-1/parameters/README.md b/bbn-1/parameters/README.md new file mode 100644 index 00000000..ff0f754c --- /dev/null +++ b/bbn-1/parameters/README.md @@ -0,0 +1,132 @@ +# Staking Parameters + +The staking parameters are governance parameters that specify what constitutes +a valid staking transaction that should be considered as an active one for +the lock-only phase-1 system. +They are maintained by Babylon and are timestamped on Bitcoin by a Bitcoin +governance wallet owned by it. They are additionally included in a GitHub +registry for easy retrieval and timestamp verification. + +## Specification + +The `global-params.json` file contains a JSON array (`versions`), with each +array element representing one version of the parameters. The array +elements are ordered by increasing version. + +```json +{ + "versions": [ + { + "version": "", + "activation_height": "", + "staking_cap": "", + "cap_height": "", + "tag": "", + "covenant_pks": [ + "", + "", + ], + "covenant_quorum": "", + "unbonding_time": "", + "unbonding_fee": "", + "max_staking_amount": "", + "min_staking_amount": "", + "max_staking_time": "", + "min_staking_time": "", + "confirmation_depth": "" + }, + ... + ] +} +``` + +The hash of each version of the parameters is further timestamped on Bitcoin by +a Babylon owned governance wallet to enable easy verification. + +A parameters version has the following rules: +- *Version*: The version should be an integer and versions should be + monotonically increasing by `1` with an initial value of `0`. +- *ActivationHeight*: The activation height describes the Bitcoin height from + which the parameters of this version are taken into account. Each new + version, should have a strictly larger activation height than the previous + version. This ensures that for any transaction, we can identify which staking + parameters should apply to it. +- *StakingCap*: The staking cap describes the limit of Bitcoins that are + accepted in total for this parameters version. It includes Bitcoins that have + been accepted in prior versions. A later version should have a larger or + equal staking cap than a prior version in which the `StakingCap` is set. + If `StakingCap` is set, it should be strictly larger than the maximum staking amount. +- *CapHeight*: The cap height is a different cap mechanism than `StakingCap`. + It allows staking transactions to be accepted as long as their inclusion height + is in the range of `ActivationHeight` and `CapHeight` (inclusive) for this + parameters version. **Note**: Only one of `CapHeight` and `StakingCap` can be set in a + single parameters version. A later version should have a larger or equal cap height + than a prior version where `CapHeight` is set. +- *CovenantPKs*: Specifies the public keys of the covenant committee. +- *CovenantQuorum*: Specifies the quorum required by the covenant committee for + unbonding transactions to be confirmed. +- *UnbondingFee*: Specifies the required fee that an unbonding transaction + should have in satoshis. Can change arbitrarily between versions. +- *MinStakingAmount/MaxStakingAmount*: Specify the range of acceptable staking + amounts in satoshis. Can change arbitrarily between versions. The maximum + should be larger or equal to the minimum. +- *MinStakingTime/MaxStakingTime*: Specify the range of acceptable staking + periods in BTC blocks. Can change arbitrarily between versions. The maximum + should be larger or equal to the minimum. The maximum cannot be larger than + 65535. +- *ConfirmationDepth*: The number of confirmations required for transactions + to be deep enough on the Bitcoin ledger so that their reversal is highly + improbable. Inclusion of a transaction in a block means the confirmation depth + for the transaction is `1`. More appended blocks further increment its + confirmation depth. + +Rules specification: +``` +Let v_n and v_m be versions `n` and `m` respectively, with `m > n`. + +In between versions: +- v_m.Version == v_n.Version + (m - n) +- v_m.ActivationHeight > v_n.ActivationHeight +- v_m.StakingCap >= v_n.StakingCap if v_n.StakingCap != 0 + +For a particular version: +- len(v_m.Tag) == 4 +- ValidBTCPks(v_m.CovenantPks) +- len(v_m.CovenantPks) > 0 +- len(v_m.ActivationHeight) > 0 + +- v_m.StakingCap == 0 => v_m.CapHeight > 0 +- v_m.StakingCap > 0 => v_m.CapHeight == 0 +- v_m.StakingCap > 0 => v_m.StakingCap > v_m.MaxStakingAmount + +- v_m.CovenantQuorum <= len(v_m.CovenantPks) +- v_m.CovenantQuorum < 2^32 +- v_m.CovenantKeys.each(Key: validHexSchnorrKey(Key)) + +- v_m.MinStakingAmount >= v_m.UnbondingFee + 1000 +- v_m.MaxStakingAmount >= v_m.MinStakingAmount +- v_m.MaxStakingAmount < 2^63 && v_m.MinStakingAmount < 2^63 && v_m.StakingCap < 2^63 + +- v_m.MaxStakingTime >= v_m.MinStakingTime +- v_m.MaxStakingTime > 0 && v_m.MinStakingTime > 0 && v_m.UnbondingTime > 0 +- v_m.MaxStakingTime <= 65535 && v_m.MinStakingTime <= 65535 && v_m.UnbondingTime <= 65535 + +- v_m.ConfirmationDepth > 1 && v_m.ConfirmationDepth <= 65535 +``` + +## Updating staking parameters + +Given that the staking parameters are used by multiple entities running in a distributed +environment to validate staking and unbonding transactions, +all updates to the `global-params.json` must be made in well-defined and +transparent manner. + +To update parameters the following steps will be taken: +1. The Babylon team creates a PR in this repository with an updated `global-params.json` file. +The only allowed modification to this file is appending a new object to the `versions` +collection. The newly appended object must obey all rules defined in the previous paragraph. +2. All interested entities, for example, covenant signers, approve this PR. Each +approval is interpreted as being ready to validate transactions using the new `global-params.json` +introduced by the PR. +3. After enough approvals are gathered, the PR is merged. +Now the tip of the `main` branch contains the last version of staking parameters. diff --git a/bbn-1/parameters/global-params.json b/bbn-1/parameters/global-params.json new file mode 100644 index 00000000..35b0c4cb --- /dev/null +++ b/bbn-1/parameters/global-params.json @@ -0,0 +1,79 @@ +{ + "versions": [ + { + "version": 0, + "activation_height": 857910, + "staking_cap": 100000000000, + "tag": "62626e31", + "covenant_pks": [ + "03d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa", + "034b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa", + "0223b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1", + "02d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae", + "038242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7", + "03e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c", + "03cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204", + "03f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0", + "03de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c" + ], + "covenant_quorum": 6, + "unbonding_time": 1008, + "unbonding_fee": 64000, + "max_staking_amount": 5000000, + "min_staking_amount": 500000, + "max_staking_time": 64000, + "min_staking_time": 64000, + "confirmation_depth": 10 + }, + { + "version": 1, + "activation_height": 864790, + "cap_height": 864799, + "tag": "62626e31", + "covenant_pks": [ + "03d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa", + "034b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa", + "0223b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1", + "02d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae", + "038242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7", + "03e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c", + "03cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204", + "03f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0", + "03de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c" + ], + "covenant_quorum": 6, + "unbonding_time": 1008, + "unbonding_fee": 32000, + "max_staking_amount": 50000000000, + "min_staking_amount": 500000, + "max_staking_time": 64000, + "min_staking_time": 64000, + "confirmation_depth": 10 + }, + { + "version": 2, + "activation_height": 874088, + "cap_height": 875087, + "tag": "62626e31", + "covenant_pks": [ + "03d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa", + "034b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa", + "0223b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1", + "02d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae", + "038242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7", + "03e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c", + "03cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204", + "03f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0", + "03de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c" + ], + "covenant_quorum": 6, + "unbonding_time": 1008, + "unbonding_fee": 32000, + "max_staking_amount": 500000000000, + "min_staking_amount": 500000, + "max_staking_time": 64000, + "min_staking_time": 64000, + "confirmation_depth": 10 + } + ] +} diff --git a/bbn-test-5/README.md b/bbn-test-5/README.md new file mode 100644 index 00000000..4efcef72 --- /dev/null +++ b/bbn-test-5/README.md @@ -0,0 +1,71 @@ +# Babylon testnet-5 Network + +Welcome to the network page for the Babylon Phase-2 testnet (`bbn-test-5`). +This is your central hub +for network participation information, whether you're running a node, +operating as a validator, providing finality services, or participating +in the covenant committee. + +## Network Parameters + +### Chain ID + +`bbn-test-5` + +### Genesis + +The genesis file can be retrieved from [here](./network-artifacts/genesis.json). + +### State snapshot + +A snapshot including state up to height `200` can be retrieved from +[here](./network-artifacts/bbn-test-5.tar.gz). + +To boot a node with this snapshot, Babylon version `v1.0.0-rc.3` should be used +([reference](https://github.com/babylonlabs-io/babylon/releases/tag/v1.0.0-rc.3)). + +Some additional network snapshot sources are also listed: + +- https://polkachu.com/testnets/babylon/snapshots +- https://www.imperator.co/services/chain-services/testnets/babylon +- https://services.contributiondao.com/testnet/babylon/snapshots + +### Seed nodes + +Seed nodes can be retrieved from [here](./seeds.txt). + +### Peers + +Peers can be retrieved from [here](./peers.txt). + +### Endpoints + +1. RPC + +- https://babylon-testnet-rpc.nodes.guru +- https://babylon-testnet-rpc.polkachu.com +- https://rpc-babylon-testnet.imperator.co +- https://babylon-testnet-rpc.contributiondao.com + +2. LCD (node API) + +- https://babylon-testnet-api.nodes.guru +- https://babylon-testnet-api.polkachu.com +- https://lcd-babylon-testnet.imperator.co +- https://babylon-testnet-api.contributiondao.com + +3. gRPC + +- https://babylon-testnet-grpc.nodes.guru +- http://babylon-testnet-grpc.polkachu.com:20690 +- grpc-babylon-testnet.imperator.co:443 + +## Network Participants + +There are four types of participants in the Babylon network. +Please see the setup and configuration guides below: + +- [Babylon Node Operators](babylon-node/README.md) +- [Validators](babylon-validators/README.md) +- [Finality Providers](https://github.com/babylonlabs-io/finality-provider/blob/main/README.md) +- [Covenant Committee](https://github.com/babylonlabs-io/covenant-emulator/blob/main/README.md) diff --git a/bbn-test-5/babylon-node/README.md b/bbn-test-5/babylon-node/README.md new file mode 100644 index 00000000..97a3ccc0 --- /dev/null +++ b/bbn-test-5/babylon-node/README.md @@ -0,0 +1,228 @@ +# Babylon Node Setup + +## Table of Contents + +1. [Install Babylon Binary](#1-install-babylon-binary) +2. [Set Up Node Home Directory and Configuration](#2-set-up-your-node-home-directory-and-configuration) +3. [Prepare for sync](#3-prepare-for-sync) + 1. [Sync through a network snapshot](#31-sync-through-a-network-snapshot) + 2. [Sync from scratch](#32-sync-from-scratch) +4. [Start the node](#4-start-the-node) + +## 1. Install Babylon Binary + +Installing the Babylon binary requires a Golang installation. + +Install Golang 1.23 by following the instructions +[here](https://go.dev/dl) + +Once installed, to verify your installation, run: +```shell +go version +``` + +Next, clone the Babylon codebase +and install the Babylon binary: + +```shell +git clone git@github.com:babylonlabs-io/babylon.git +cd babylon +# tag corresponds to the version of the software +# you want to install -- depends on which +# height you sync from +git checkout +# we use this to ensure that the testnet-specific upgrade data +# are included in the binary +BABYLON_BUILD_OPTIONS="testnet" make install +``` + +This command does the following: +- Builds the daemon +- Installs the binary +- Makes the `babylond` command globally accessible from your terminal + +You can verify your installation by executing the `version` command: + +```shell +babylond version +``` + +If your shell cannot find the installed binary, make sure `$GOPATH/bin` is in +your shell's `$PATH`. Use the following command to add it to your profile, +depending on your shell: + ```shell + echo 'export PATH=$HOME/go/bin:$PATH' >> ~/.profile + ``` + +Make sure to restart your terminal session after running the above command. + +## 2. Set up your node, home directory, and configuration + +In this section we will initialize your node and create the necessary +configuration directory through the `init` command. +This command will generate several important configuration files +including `app.toml`, `client.toml`, and `genesis.json`: + +```shell +babylond init --chain-id bbn-test-5 --home +``` + +Parameters: +- ``: A unique identifier for your node for example `node0` +- `--chain-id`: The chain ID of the Babylon chain you connect to +- `--home`: *optional* flag that specifies the directory where your + node files will be stored, for example `--home ./nodeDir` + The default home directory for your Babylon node is: + - Linux/Mac: `~/.babylond/` + - Windows: `%USERPROFILE%\.babylond\` + +After initialization, you'll need to modify the following configuration files: + +1. On `app.toml`, update the the following settings: + +```shell +# Base configuration +# Minimum gas prices that this node will accept +minimum-gas-prices = "0.002ubbn" + +iavl-cache-size = 0 +iavl-disable-fastnode = true + +[btc-config] + +# Configures which bitcoin network should be used for checkpointing +# valid values are: [mainnet, testnet, simnet, signet, regtest] +network = "signet" # The Babylon testnet connects to the signet Bitcoin network +``` + +Parameters: +- `minimum-gas-prices`: The minimum gas price your node will accept for + transactions. The Babylon protocol enforces a minimum of `0.002ubbn` and + any transactions with gas prices below your node's minimum will be rejected. +- `iavl-cache-size`: Default is `781250`. Setting to `0` disables the IAVL tree + caching, which reduces memory usage but significantly impacts RPC query + performance. +- `iavl-disable-fastnode`: Default is `false`. Setting to true disables the + fast node feature, which reduces memory usage but significantly + impacts RPC query performance. +- `btc-config.network`: Specifies which Bitcoin network to connect to for + checkpointing. For testnet-5, we use "signet" which is Bitcoin's test network. + +Note: If you're running a validator or RPC node that needs to handle queries, +it's recommended to keep these default values for optimal performance. Only +adjust these if you're running a node with limited memory resources. + +2. On `config.toml`, update the the following settings: + +```shell +[p2p] + +# These are placeholder values and should be replaced +seeds = "NODE_ID1@NODE_ENDPOINT1:PORT1,NODE_ID2@NODE_ENDPOINT2:PORT2" + +# These are placeholder values and should be replaced +persistent_peers = "NODE_ID1@NODE_ENDPOINT1:PORT1,NODE_ID2@NODE_ENDPOINT2:PORT2" + +[consensus] + +timeout_commit = "10s" +``` + +Parameters: +- `seeds`: Comma separated list of seed nodes that your node will connect to for + discovering other peers in the network; you can obtain seed endpoints from + [here](../README.md#seed-nodes) +- `persistent_peers`: Comma separated list of nodes that your node will use as + persistent peers; you can obtain peers from [here](../README.md#peers) +- `timeout_commit`: The Babylon network block time has to be set to + **10 seconds** + +Note: You can use either seeds, persistent peers or both. + +Next, you'll need to obtain the network's genesis file. This file contains +the initial state of the blockchain and is crucial for successfully syncing +your node. You can inspect the file [here](../README.md#genesis) or use the +following commands to download it directly: + +```shell +wget https://raw.githubusercontent.com/babylonlabs-io/networks/refs/heads/main/bbn-test-5/network-artifacts/genesis.json +mv genesis.json /config/genesis.json # You must insert the home directory of your node +``` + +## 3. Prepare for sync +Before starting your node sync, it's important to note that the initial release +at genesis was `v0.9.0`, while subsequently there have been software upgrades. + +There are two options you can choose from when syncing: +1. Sync through a network snapshot (fastest method) +2. Sync from scratch (complete sync from block 1) + +### 3.1. Sync through a network snapshot + +Snapshot syncing is the fastest way to get your node up to date with the network. +A snapshot is a compressed backup of the blockchain data taken at a specific +height. Instead of processing all blocks from the beginning, you can download +and import this snapshot to quickly reach a recent block height. + +You can obtain the network snapshot [here](../README.md#state-snapshot). + +To extract the snapshot, utilize the following command: + +```shell +tar -xvf bbn-test-5.tar.gz -C +``` + +Parameters: +- `bbn-test-5.tar.gz`: Name of the compressed blockchain snapshot file +- `` : Your node's home directory + +After importing the state, you can now start your node as specified in section +[Start the node](#4-start-the-node). + +### 3.2. Sync from scratch + +Lastly, you can also sync from scratch, i.e., sync from block `1`. Syncing from +scratch means downloading and verifying every block from the beginning +of the blockchain (genesis block) to the current block. + +This will require you to use different `babylond` binaries for each version and +perform the babylon software upgrade when needed. + +1. First, follow the installation steps in [Section 1](#1-install-babylon-binary) +using the genesis software version `v0.9.0` in place of ``. + +2. Start your node as specified in section [Start the node](#4-start-the-node). + +Your node will sync blocks until it reaches an upgrade height. + +At that point, you will have to get the new software version defined by that +height, and go back to step (1) in order to install it and restart. + +Note: When building the upgrade binary, include the following build flag so that +testnet-specific upgrade data are included in the binary: + +```shell +BABYLON_BUILD_OPTIONS="testnet" make install +``` + +You will have to repeat the above two steps until you sync with the +full blockchain. + +## 4. Start the node + +You can start your node using the following command: + +```shell +babylond start --chain-id bbn-test-5 --home --x-crisis-skip-assert-invariants +``` + +Parameters: +- `start`: This is the command to start the Babylon node. +- `--chain-id`: Specifies the ID of the blockchain network you're connecting to. +- `--home`: Sets the directory for the node's data and configuration files and + dependent on where the files were generated for you from the initialization + (e.g. `--home ./nodeDir`) +- `--x-crisis-skip-assert-invariants`: Skips state validation checks to improve + performance. Not recommended for validator nodes. + +Congratulations! Your Babylon node is now set up and syncing blocks. diff --git a/bbn-test-5/babylon-validators/README.md b/bbn-test-5/babylon-validators/README.md new file mode 100644 index 00000000..e984d7bc --- /dev/null +++ b/bbn-test-5/babylon-validators/README.md @@ -0,0 +1,396 @@ +# Babylon Validator Setup + +## Table of Contents + +1. [Prerequisites](#1-prerequisites) +2. [System Requirements](#2-system-requirements) +3. [Key Management](#3-key-management) + 1. [Key for CometBFT consensus](#31-key-for-cometbft-consensus) + 2. [Babylon validator account keyring](#32-babylon-validator-account-keyring) + 3. [Keyfor BLS Voting](#33-key-for-bls-voting) + 1. [What is BLS Voting](#331-what-is-bls-voting) + 2. [Create BLS Key](#332-create-bls-key) +4. [CometBFT Validator Configuration](#4-cometbft-validator-configuration) +5. [Creating a Validator](#5-creating-a-validator) + 1. [Verifying Validator Setup](#51-verifying-validator-setup) + 2. [Understanding Validator Status](#52-understanding-validator-status) + 3. [Staking with your Validator](#53-staking-with-your-validator) +6. [Advanced Security Architecture](#6-advanced-security-architecture) +7. [Conclusion](#7-conclusion) + +## 1. Prerequisites + +Before setting up a validator, you'll need a fully synced Babylon node. For +node setup instructions, see our [Node Setup Guide](../babylon-node/README.md). + +## 2. System Requirements + +Recommended specifications for running a Babylon validator node: +- CPU: Quad Core AMD/Intel (amd64) +- RAM: 32GB +- Storage: 2TB NVMe +- Network: 100MBps bidirectional +- Encrypted storage for keys and sensitive data +- Regular system backups (hourly, daily, weekly) + +These are reference specifications for a production validator. +Requirements may vary based on network activity and your operational needs. + +## 3. Key Management +### 3.1 Key for CometBFT consensus + +When you initialize your node using `babylond init` (part of the node setup) a +consensus key pair is automatically generated and stored in +`priv_validator_key.json`. This key is used by your validator to participate in +block creation and signing during the consensus process at the CometBFT layer. +The key file location is specified in your node's `config.toml` file. + +> **🔒 Security Tip**: Make sure to securely store the `priv_validator_key.json` + file, as it contains your validator's private key. Losing access to this file + would mean losing control of your validator. + +### 3.2 Babylon validator account keyring + +The validator key is a fundamental component of your validator's identity +within the Babylon network. This cryptographic key-pair serves multiple critical +functions: it signs blocks during the consensus process, validates transactions, +and manages your validator's operations on the network. Creating and securing +this key is one of the most important steps in setting up your validator. + +> **⚡ Note:** This key represents your validator's application layer account +> and is different from the CometBFT Key for consensus. While the CometBFT key +> is used for consensus-level operations, this key will be for the application-level +> operations such as managing your validator and withdrawing rewards. + +We will be using [Cosmos SDK](https://docs.cosmos.network/v0.50/user/run-node/keyring) +backends for key storage, which offer support for the following +keyrings: + +- `test` is a password-less keyring and is unencrypted on disk. +- `os` uses the system's secure keyring and will prompt for a passphrase at + startup. +- `file` encrypts the keyring with a passphrase and stores it on disk. + +To generate your validator key, use the following command: + +```shell +babylond keys add --home --keyring-backend +``` + +Parameters: +The `` specifies a unique identifier for the key. +- `--home` specifies the directory where your node files will be stored + (e.g. `--home ./nodeDir`) +- `--keyring-backend` specifies the keyring backend to use, can be `test`, `file`, +or `os`. + +The execution result displays the address of the newly generated key and its +public key. Following is a sample output for the command: + +```shell +- address: bbn1kvajzzn6gtfn2x6ujfvd6q54etzxnqg7pkylk9 + name: + pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey", + key: "Ayau+8f945c1iQp9tfTVaCT5lzhD8n4MRkZNqpoL6Tpo"}' + type: local +``` + +> **🔒 Security Tip**: Make sure to securely store this information, particularly +> your private key details. Losing access to the private key would +> mean losing control of your validator. + +#### 3.2.1 Get Funds + +Before creating a validator, you will need sufficient BBN tokensin order +to interact with the Babylon network and run a validator. + +To source funds you will need to request them from the Babylon Testnet Faucet, +for information on the faucet visit our +[networks page](https://github.com/babylonlabs-io/networks/blob/main/bbn-test-5/README.md) + +### 3.3 Key for BLS Voting +#### 3.3.1 What is BLS Voting + +Babylon validators are required to participate in +[BLS](https://en.wikipedia.org/wiki/BLS_digital_signature) voting +at the end of each epoch. +The Babylon blockchain defines epochs as a fixed period +within the blockchain, defined by a number of blocks, +during which the validator set remains consistent. +At the end of the epoch, +the validator BLS signatures are aggregated to create a compact checkpoint +that is timestamped on the Bitcoin ledger. +The BLS voting mechanism achieves a significant reduction in the cost of +checkpoints, while the epoching mechanism specifies a defined frequency +for checkpointing in the Bitcoin blockchain. + +#### 3.3.2 Create BLS Key + +To generate your BLS key, you'll need to use your validator address from the +previous step. + +Run this command: + +```shell +babylond create-bls-key --home +``` + +Replace `
` with your address from the earlier keyring +generation (it should look similar to `bbn1kvajzzn6gtfn2x6ujfvd6q54etzxnqg7pkylk9`). + +The above command will: +1. Generate a new BLS key pair +2. Associate it with your validator address +3. Store it in your node's configuration file at +`/config/priv_validator_key.json` alongside your validator key + +> ❗**Critical**: After executing the above command, **restart your validator node** +> so that the BLS key is loaded into memory and can be utilized. Failure to do +> this will result in a broken validator setup, as the validator will not be able to generate +> and submit BLS signatures. + +This key will be used automatically by your validator software when it needs +to participate in epoch-end signature collection. The BLS signatures help +create compact, efficient proofs of consensus that can be later timestamped to +Bitcoin. + +> ⚠️ **Important**: The `priv_validator_key.json` file contains sensitive key +> material. Make sure to backup this file and store it securely, as it's +> essential for your validator's operation and cannot be recovered if lost. +> Note that BLS keys are currently not supported by Horcrux or other remote signing +> solutions, so alternative security measures should be considered for key +> management such as hardware wallets or offline storage. + +## 4. CometBFT Validator Configuration + +In this section, we are going to create a configuration file +that specifies the properties of your validator. + +First, retrieve your validator's consensus public key using the following: + +```shell +babylond tendermint show-validator --home +``` + +This command reads your validator's key information from +`priv_validator_key.json` and outputs only the public key in a specific format +required for validator registration. The output will look like: + +```shell +{"@type":"/cosmos.crypto.ed25519.PubKey","key":"0Wlt7ZPl0uvv7onsw4gP8FSQJUk986zMcOdWselDPM4="} +``` + +You'll need this formatted public key output to create your validator's +configuration file in the next step. + +Now we can use the output of the command above and replace the `pubkey` and +`` value in the example below. Subsequently run the following command to +create the validator configuration file: + +```shell +cat > /config/validator.json << EOF +{ + "pubkey": {"@type":"/cosmos.crypto.ed25519.PubKey","key":"0Wlt7ZPl0uvv7onsw4gP8FSQJUk986zMcOdWselDPM4="}, + "amount": "1000000ubbn", + "moniker": "my-validator", + "commission-rate": "0.10", + "commission-max-rate": "0.20", + "commission-max-change-rate": "0.01", + "min-self-delegation": "1" +} +EOF +``` + +Parameters: +- `pubkey`: Your validator's public key (the output you received before) +- `amount`: Initial self-delegation amount +- `moniker`: Your validator's name/identifier +- `commission-rate`: Validator commission rate +- `commission-max-rate`: Specifies the maximum you can raise your commission in the future. +- `commission-max-change-rate`: Maximum daily commission change rate +- `min-self-delegation`: Minimum amount you must keep self-delegated + +If you prefer to add this manually or are having issues, another option is to +create a `validator.json` file manually and then paste the above json into it +but remember to replace all values with the actual values you want to use. + +## 5. Creating a Validator + +> ⚠️ **Important**: Please make sure to read through this section +> as it might not work with your automations for creating validators. + +Unlike traditional Cosmos SDK chains that use the `staking` module, +Babylon uses the Babylon +[`checkpointing`](https://docs.babylonlabs.io/docs/developer-guides/modules/checkpointing) +module for validator creation and management. + +Before proceeding, ensure that your +`/config/priv_validator_key.json` file contains both your CometBFT +consensus and BLS key pair as they are both required for the +validator creation process. Recall that `` is the `--home` directory +you specified when setting up your node. + +> ⚠️ **Warning**: When troubleshooting your validator, do not use `unsafe-reset-all` +> unless you have backed up `priv_validator_key.json` and have a secure backup +> plan in place. Running `unsafe-reset-all` will result in the removal of the BLS +> keys within the `priv_validator_key.json` file. + +> ⚠️ **Important**: You will need a funded account for this step. + +To create your validator, run the following command: + +```shell +babylond tx checkpointing create-validator \ + .//config/validator.json \ + --chain-id bbn-test-5 \ + --gas "auto" \ + --gas-adjustment 1.5 \ + --gas-prices "0.005ubbn" \ + --from \ + --keyring-backend \ + --home +``` + +Parameters: +- `--chain-id`: The network identifier +- `--gas`: Set to "auto" to automatically calculate the gas needed +- `--gas-adjustment`: A multiplier for the estimated gas +- `--gas-prices`: Transaction fee in ubbn per unit of gas +- `--from`: The name of your validator key in the keyring +- `--keyring-backend`: The keyring backend type in which the above validator + key is stored +- `--home`: Specifies the directory where your node files will be stored. + +> **⚡ Note:**: Make sure the account specified by `--from` has enough tokens to +> cover both the stake amount and transaction fees. This is the same account +> you created and funded earlier in +> [Section 3](#32-babylon-validator-account-keyring). + +Upon successful creation, you'll be asked to approve the transaction. +Within the transaction result output, you will find your validator's +operator address (e.g., `bbnvaloper1qh8444k43spt6m8ernm8phxr332k85teavxmuq`). + +After your validator creation transaction has been successfully submitted, +the Babylon blockchain will register your validator, but it will not activate +it until the end of the epoch. This is due to Babylon's epoched validator +set rotation mechanism, in which validator set and stake updates can +only happen at the end of each epoch. Each epoch lasts for about +60 minutes in the current testnet. + +> **⚡ Note:** You will not be able to query your validator details until +> the start of the next epoch. You can verify that your creation +> transaction has been registered by verifying the inclusion +> of its transaction hash in the blockchain. + +### 5.1 Verifying Validator Setup + +To verify your validator setup, you can use the following steps: + +First, get your validator's operator address using your Babylon address: + +```shell +babylond keys show --address --bech val --home --keyring-backend +``` + +For example, for the address we used above is `bbn1qh8444k43spt6m8ernm8phxr332k85teavxmuq`, +the operator address is `bbnvaloper1qh8444k43spt6m8ernm8phxr332k85teavxmuq`. + +For the next step, we will query your validator's details; however, results +will not appear until the current epoch concludes (epochs last for 60 minutes). +This delay is due to the network's epoching mechanism, as mentioned earlier. + +```shell +babylond query staking validator +``` + +The output should return the selected validator's configuration. + +```yaml +validator: + commission: + rates: + current: "100000000000000000" + max: "1000000000000000000" + max_change: "10000000000000000" + description: + moniker: "my-validator" + website: "https://myweb.site" + security_contact: "my-validator0@gmail.com" + status: 1 + tokens: "100" +``` + +Usually when first creating a validator, the immediate status will be +`BOND_STATUS_UNBONDED`. To see your validator's status change you will need to +wait for the epoch to end. + +### 5.2 Understanding Validator Status + +Your validator enters the active set based on two conditions: +1. Having sufficient stake to qualify for the active set. +2. The completion of the epoch (a network-wide time period for +coordinating activities) in which your validator qualified for the active set. + +When active, your status will show as `BOND_STATUS_BONDED`. + +The other status codes are: + +```shell +BOND_STATUS_UNSPECIFIED = 0 +BOND_STATUS_UNBONDED = 1 +BOND_STATUS_UNBONDING = 2 +BOND_STATUS_BONDED = 3 +``` + +### 5.3 Staking with your Validator + +> ⚠️ **Important**: Babylon uses the +> [`checkpointing`](https://docs.babylonlabs.io/docs/developer-guides/modules/checkpointing) +> module for validator creation and management. +> All staking-related transactions (delegate, redelegate, unbond) must be +> processed through the `x/epoching` module, which encapsulates the `x/staking` +> commands. These transactions will only take effect at the end of the epoch. + +For staking operations, please use the commands below: + +```shell +# Delegate tokens to a validator +babylond tx epoching delegate [validator-addr] [amount] \ + --from \ + --chain-id + +# Redelegate tokens from one validator to another +babylond tx epoching redelegate [src-validator-addr] [dst-validator-addr] [amount] \ + --from \ + --chain-id + +# Unbond tokens from a validator +babylond tx epoching unbond [validator-addr] [amount] \ + --from \ + --chain-id +``` + +For more information on the epoching module and wrapped messages, see the +[Epoching Module](https://github.com/babylonlabs-io/babylon/blob/main/x/epoching/README.md?plain=1#L150-L155) +documentation. + +## 6. Advanced Security Architecture + +Each validator's needs are significantly varied based on their operational needs +and the environment they are running in. Before setting up your validator +infrastructure, take time to research different security architectures, including +the [Sentry Node Architecture](https://hub.cosmos.network/main/validators/security#sentry-nodes-ddos-protection). +This setup involves using intermediary nodes to protect your validator from +direct exposure to the public network. + +Additionally, the handling of the `priv_validator_key.json` file is critical. +This file contains sensitive private key material vital for your validator's +operation. If lost or compromised, it could lead to severe consequences +including slashing penalties. Store this file securely using encrypted storage +and maintain robust backup procedures. + +## 7. Conclusion + +Congratulations! Your validator is now part of the Babylon network. Remember to +monitor your validator's performance and maintain good uptime to avoid +penalties. diff --git a/bbn-test-5/integration/README.md b/bbn-test-5/integration/README.md new file mode 100644 index 00000000..dd5ade74 --- /dev/null +++ b/bbn-test-5/integration/README.md @@ -0,0 +1,6 @@ +## Phase-2 Testnet Integration + +This directory contains documentation for integrating +with the phase-2 testnet: +* [Wallet Integration](./wallet) +* [Operating a Staking Back-End](./staking-backend.md) diff --git a/bbn-test-5/integration/staking-backend.md b/bbn-test-5/integration/staking-backend.md new file mode 100644 index 00000000..a3da5168 --- /dev/null +++ b/bbn-test-5/integration/staking-backend.md @@ -0,0 +1,3 @@ +# Staking Back-End + +TODO \ No newline at end of file diff --git a/bbn-test-5/integration/wallet/README.md b/bbn-test-5/integration/wallet/README.md new file mode 100644 index 00000000..ccc17813 --- /dev/null +++ b/bbn-test-5/integration/wallet/README.md @@ -0,0 +1,34 @@ +# Wallet Integration + +This document is designed for wallet providers +aiming to integrate with the Babylon Phase-2 Testnet (testnet-5). + +Phase-2 marks a significant evolution from Phase-1, +in which the Babylon testnet transitions from a lock-only network +to the launch of a test Babylon PoS blockchain, +built using the Cosmos SDK and secured by signet Bitcoin. +This testnet will allow Phase-1 testnet stakers to utilise +their signet Bitcoin stakes to secure the test Babylon chain. +Additionally, new stakers will be able to join and contribute. + +During Phase-1, +wallet providers only needed to interact with the Bitcoin network +(signet or mainnet) to enable staking, unbonding, and withdrawal +transactions. Phase-2, however, introduces new requirements +for wallets to support both Bitcoin staking and Babylon blockchain +operations. + +Wallets can participate in the phase-2 testnet in +the following ways: +1. **Native wallet support of the Babylon testnet blockchain**: + Enable native support for the Babylon testnet blockchain, including + functionality for managing test token balances, executing transfers, + and facilitating staking operations. + * For detailed integration instructions, + refer to the [Babylon Wallet Integration guide](./babylon-wallet.md) +2. **Support of Bitcoin staking**: Participate in Bitcoin staking + by integrating with a web application or by natively integrating + Bitcoin staking functionality directly to your wallet, + whether it's a browser extension, mobile app, or hardware wallet. + * For detailed instructions, + refer to the [Bitcoin Staking Integration guide](./bitcoin-staking.md) diff --git a/bbn-test-5/integration/wallet/babylon-wallet.md b/bbn-test-5/integration/wallet/babylon-wallet.md new file mode 100644 index 00000000..c3b65d6c --- /dev/null +++ b/bbn-test-5/integration/wallet/babylon-wallet.md @@ -0,0 +1,133 @@ +# Wallet Integration of the Babylon Chain + +The Babylon PoS blockchain is built using the Cosmos SDK +and utilises most of the vanilla Cosmos SDK functionality +shared among chains developed using it. Therefore, +a wallet already supporting chains built using +Cosmos SDK should find it straightforward to add +Babylon as a supported blockchain. + +In this document will walk through the considerations of integrating +the Babylon blockchain into your wallet: +* [Phase-2 Testnet network information](#phase-2-testnet-network-information) +* [Accounts, message signing, token balance, and token transfer](#accounts-message-signing-token-balance-and-token-transfer) +* [Staking](#staking) +* [Unbonding](#unbonding) + +### Phase-2 Testnet Network Information + +Following is a list of the key network details of +the Babylon Phase-2 Testnet (`testnet-5`): +* RPC nodes can be found [here](../../README.md) +* Chain ID: `bbn-test-5` +* Bech32 Configuration can be found [here](https://github.com/babylonlabs-io/babylon/blob/main/app/params/config.go#L35) +* Token minimum denomination: `ubbn` (6 decimals) +* Human-readable denomination: `tbaby` (test baby) + +### Accounts, message signing, token balance, and token transfer + +The Babylon PoS chain utilises the default Cosmos SDK +functionality for accounts, message signing, +token balance, and token transfer. +Please refer to the relevant Cosmos SDK documentation +for more details. + +### Staking + +The Babylon blockchain uses an epochised staking +mechanism where staking transactions are executed +at the end of an epoch rather than immediately. +* An epoch is defined as a specific block range, + determined by an epoch interval defined + in the `x/epoching` module's + [parameters](https://github.com/babylonlabs-io/babylon/blob/main/proto/babylon/epoching/v1/params.proto). +* During each epoch, staking messages are queued + in a delayed execution queue. +* At the epoch's end, all queued staking messages + are processed in a batch, resulting in + epoch based voting power transitions. + +To enable this mechanism, +Babylon modifies the standard Cosmos SDK staking process: +* Babylon replaces the default Cosmos SDK `x/staking` module + with a custom module, `x/epoching`. +* This custom module wraps the standard staking functionality + to enforce epoch-based voting power transitions. +* The wrapped staking messages are largely similar + to those in the default `x/staking` module. + The specifications of these wrapped messages are available + [here](https://github.com/babylonlabs-io/babylon/tree/main/x/epoching). + +Wallets wishing to support Babylon PoS delegations +natively must use the custom `x/epoching` mechanism. + +The epochised staking approach introduces the following +UX considerations for wallet integration: +* **Delayed Staking Activation**: Although wrapped staking messages are + executed immediately, the actual staking operation takes effect only + at the epoch's end. Wallets should clearly communicate this + delay to users to set proper expectations. +* **Delayed Funds Locking**: Users' funds remain liquid until staking + activation occurs at the epoch's conclusion. This creates a for staking failure: + if users transfer or spend their funds before staking takes effect, + the staking transaction will fail. + Wallets should warn users about this possibility. + +The above mechanism presents the following UX considerations +that wallets should take into account: +* Delayed staking activation: While the wrapped staking message is executed + immediately, the staking operation happens at the end of the epoch. + Wallets should indicate to the user that their staking will not take + into effect immediately. +* Delayed funds locking: Due to the delayed staking activation, the user's + funds remain liquid until the staking takes into effect. This might + lead users to transfer them or spend them in some way, leading + to the staking transaction failing at the end of the epoch. + +Wallets can provide users with visibility into pending staking +messages using the +[LastEpochMsgs query in x/epoching](https://github.com/babylonlabs-io/babylon/blob/main/proto/babylon/epoching/v1/query.proto#L46). +This query allows wallets to display the messages queued +for execution at the end of the current epoch. + +### Unbonding + +Babylon speeds up the unbonding process by leveraging +Bitcoin timestamping, significantly reducing +the unbonding period from the default 21 days in the +Cosmos SDK to approximately 16-17 hours. + +This process works as follows: +* **Epoch Timestamping**: At the end of each epoch, + Babylon records its blockchain state onto the + Bitcoin blockchain through a Bitcoin timestamp. +* **Bitcoin Confirmations**: Once the timestamp receives + a sufficient number of confirmations on the Bitcoin blockchain + (a parameter configurable in Babylon), the state of the epoch + if considered finalized. + * The number of required Bitcoin confirmations is set by the + `x/btccheckpoint` module, detailed + [here](https://github.com/babylonlabs-io/babylon/blob/main/proto/babylon/btccheckpoint/v1/params.proto#L24) + * On the Phase-2 testnet, this value will be set to 100 confirmations, + corresponding to roughly 16-17 hours for unbonding to be completed, + assuming an average Bitcoin block time of 10 minutes. +* **Unbonding Finalization**: All unbonding requests submitted + up to the end of that epoch are processed and finalized + after the required Bitcoin confirmations are reached. + +An example scenario demonstrating how fast unbonding +works in practice: +* **Setup** + * Epoch interval: 100 blocks + * Bitcoin confirmations for finalization: 100 blocks +* **Unbonding Request**: + * A user submits an unbonding transaction at block `157` +* **Epoch Processing**: + * The unbonding transaction is queued and processed at + the end of the epoch (block 200). + * The user’s status is updated to unbonding, and the epoch’s + state is timestamped on Bitcoin. +* **Finalization**: + * After ~16-17 hours, the Bitcoin timestamp reaches 100 confirmations. + * Babylon detects this and completes the unbonding process, + fully unbonds the user’s stake. diff --git a/bbn-test-5/integration/wallet/bitcoin-staking.md b/bbn-test-5/integration/wallet/bitcoin-staking.md new file mode 100644 index 00000000..4d6b3853 --- /dev/null +++ b/bbn-test-5/integration/wallet/bitcoin-staking.md @@ -0,0 +1,114 @@ +## Integrating Bitcoin Staking + +> ⚡ Note: Different libraries and software are referenced across this document. +> To avoid linking versions that might be outdated at the time of reading +> we have opted to just link the repositories. Please ensure that +> you utilise the appropriate version for the deployment you are performing. + +### 1. Extension Wallet + +**Option-1**, be added to a third party’s Bitcoin Staking website as +a wallet for either Bitcoin or Babylon or both. +This requires collaboration with the host of the +website and exposing compatible wallet APIs. +- To be supported in the Babylon hosted staking website as a Bitcoin or Babylon + wallet, please integrate with the Tomo Wallet Connect + by following the [docs](https://docs.tomo.inc/tomo-sdk/tomo-connect-sdk-lite). + - This is the preferred method for wallet integration that will achieve + the most timely results. The Babylon hosted website will also support + native wallet integrations for select wallets with long-established + support. + +**Option-2**, host your own Bitcoin staking website +that connects to your extension wallet and retrieves +staking information from a back-end you operate. +- For information about developing/hosting your own Bitcoin staking website, please check + - our reference web application + [implementation](https://github.com/babylonlabs-io/simple-staking/). + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/main/btcstaking/) + Bitcoin Staking libraries for creating Bitcoin Staking transactions. + + - our [documentation](https://github.com/babylonlabs-io/babylon/tree/main/x/btcstaking) + on the flow of Bitcoin Staking transaction creation and submission in + conjunction with Bitcoin and Babylon blockchains. +- For information about the reference Babylon staking back-end, please read this + [document](../staking-backend.md) + +**Option-3**, develop Bitcoin staking as a feature of your extension wallet, +which connects to either third party APIs +(such as the Babylon [API](https://staking-api.testnet.babylonlabs.io/swagger/index.html)) or a back-end you operate. +- For information about developing your own Bitcoin staking as a feature, please check + - our reference web application [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main). + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/main/btcstaking/) + Bitcoin Staking libraries. + - our [documentation](https://github.com/babylonlabs-io/babylon/tree/main/x/btcstaking) + on the flow of Bitcoin Staking transaction creation and submission in + conjunction with Bitcoin and Babylon blockchains. +- For information about the reference Babylon staking back-end, please read this + [document](../staking-backend.md) + +### 2. Mobile App Wallet + +**Option-1**, embed a third-party Bitcoin staking website to your mobile app +wallet, which interacts with the Bitcoin and Babylon signers inside your wallet via +the application window interface. +To embed on the Babylon hosted staking website, please ensure +that the interface of your mobile wallet (or a wrapper of it) +adheres to the [Injectable Wallet interface]() + + +**Option-2**, host your own Bitcoin staking website that connects to your +extension wallet that retrieves staking information from a back-end you +operate. Then embed your own Bitcoin staking website to your mobile app wallet. +- For information about developing/hosting your own Bitcoin staking website, please check + - our reference web application + [implementation](https://github.com/babylonlabs-io/simple-staking/). + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/main/btcstaking/) + Bitcoin Staking libraries for creating Bitcoin Staking transactions. + + - our [documentation](https://github.com/babylonlabs-io/babylon/tree/main/x/btcstaking) + on the flow of Bitcoin Staking transaction creation and submission in + conjunction with Bitcoin and Babylon blockchains. +- For information about the reference Babylon staking back-end, please read this + [document](../staking-backend.md) + +**Option-3**, develop Bitcoin staking as a feature of your mobile wallet, + which connects to either third party APIs + (such as the Babylon [API](https://staking-api.testnet.babylonlabs.io/swagger/index.html)) or a back-end you operate. +- For information about developing your own Bitcoin staking as a feature, please check + - our reference web application [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main). + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/main/btcstaking/) + Bitcoin Staking libraries. + - our [documentation](https://github.com/babylonlabs-io/babylon/tree/main/x/btcstaking) + on the flow of Bitcoin Staking transaction creation and submission in + conjunction with Bitcoin and Babylon blockchains. +- For information about the reference Babylon staking back-end, please read this + [document](../staking-backend.md) + +### 3. Hardware Wallet + +**Option-1**, develop Bitcoin staking as a feature of your hardware wallet, +which connects to either third party APIs +(such as the Babylon [API](https://staking-api.testnet.babylonlabs.io/swagger/index.html)) or a back-end you operate. +- For information about developing your own Bitcoin staking as a feature, please check + - our reference web application [implementation](https://github.com/babylonlabs-io/simple-staking/tree/main). + - our + [TypeScript](https://github.com/babylonlabs-io/btc-staking-ts/) + and [Golang](https://github.com/babylonlabs-io/babylon/tree/main/btcstaking/) + Bitcoin Staking libraries. + - our [documentation](https://github.com/babylonlabs-io/babylon/tree/main/x/btcstaking) + on the flow of Bitcoin Staking transaction creation and submission in + conjunction with Bitcoin and Babylon blockchains. +- For information about the reference Babylon staking back-end, please read this + [document](../staking-backend.md) + +**Option-2**, integrate via a compatible software wallet (extension or mobile) +that is Bitcoin staking enabled. diff --git a/bbn-test-5/network-artifacts/bbn-test-5.tar.gz b/bbn-test-5/network-artifacts/bbn-test-5.tar.gz new file mode 100644 index 00000000..4a191c5d Binary files /dev/null and b/bbn-test-5/network-artifacts/bbn-test-5.tar.gz differ diff --git a/bbn-test-5/network-artifacts/genesis.json b/bbn-test-5/network-artifacts/genesis.json new file mode 100644 index 00000000..ef86d2c0 --- /dev/null +++ b/bbn-test-5/network-artifacts/genesis.json @@ -0,0 +1,476 @@ +{ + "app_name": "babylond", + "app_version": "v0.9.0", + "genesis_time": "2024-12-06T05:26:51Z", + "chain_id": "bbn-test-5", + "initial_height": 1, + "app_hash": null, + "app_state": { + "07-tendermint": null, + "08-wasm": { + "contracts": [] + }, + "auth": { + "params": { + "max_memo_characters": "256", + "tx_sig_limit": "7", + "tx_size_cost_per_byte": "10", + "sig_verify_cost_ed25519": "590", + "sig_verify_cost_secp256k1": "1000" + }, + "accounts": [ + { + "@type": "/cosmos.auth.v1beta1.BaseAccount", + "address": "bbn1py58qvyyz6lcp9fhulwh5av8a4sllx6hm0f60v", + "pub_key": null, + "account_number": "0", + "sequence": "0" + }, + { + "@type": "/cosmos.auth.v1beta1.BaseAccount", + "address": "bbn1w9cfa0qzlx8ktdecnctpxe0en0ct2985v0c42g", + "pub_key": null, + "account_number": "1", + "sequence": "0" + } + ] + }, + "authz": { + "authorization": [] + }, + "bank": { + "params": { + "send_enabled": [], + "default_send_enabled": true + }, + "balances": [ + { + "address": "bbn1py58qvyyz6lcp9fhulwh5av8a4sllx6hm0f60v", + "coins": [ + { + "denom": "ubbn", + "amount": "1000000000" + } + ] + }, + { + "address": "bbn1w9cfa0qzlx8ktdecnctpxe0en0ct2985v0c42g", + "coins": [ + { + "denom": "ubbn", + "amount": "9999999000000000" + } + ] + } + ], + "supply": [ + { + "denom": "ubbn", + "amount": "10000000000000000" + } + ], + "denom_metadata": [], + "send_enabled": [] + }, + "btccheckpoint": { + "params": { + "btc_confirmation_depth": "10", + "checkpoint_finalization_timeout": "100", + "checkpoint_tag": "62627434" + } + }, + "btclightclient": { + "params": { + "insert_headers_allow_list": [ + "bbn1mzghl5csl75wz86e70j6ggdll4huazgfmeucyx" + ] + }, + "btc_headers": [ + { + "header": "00000020c8710c5662ab0a4680963697765a390cba4814f95f0556fc5fb3b446b2000000fa9b80e52653455e5d4a4648fbe1f62854a07dbec0633a42ef595431de9be36dccb64366934f011ef3d98200", + "hash": "0000006ef8eb3d3d964cc401790776d11150c4a81116340a9b0e9ec8636b7431", + "height": "195552", + "work": "12798859" + } + ] + }, + "btcstaking": { + "params": [ + { + "covenant_pks": [ + "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737", + "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25", + "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4", + "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0", + "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0", + "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c", + "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36", + "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df", + "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e" + ], + "covenant_quorum": "6", + "slashing_address": "1111111111111111111114oLvT2", + "min_slashing_tx_fee_sat": "100000", + "min_commission_rate": "0.03", + "slashing_rate": "0.5", + "max_active_finality_providers": "100", + "min_unbonding_time": "1008", + "min_unbonding_rate": "0.8" + } + ], + "finality_providers": [], + "btc_delegations": [], + "voting_powers": [], + "block_height_chains": [], + "btc_delegators": [], + "events": [], + "vp_dst_cache": [] + }, + "capability": { + "index": "1", + "owners": [] + }, + "checkpointing": { + "genesis_keys": [ + { + "validator_address": "bbnvaloper1py58qvyyz6lcp9fhulwh5av8a4sllx6hxdr8rd", + "bls_key": { + "pubkey": "tgX+/QbXVEY/AsWb3x0ptag8KfBc4yvcYR9JHNKELabvKOv1mj7+BoLSym2cTSnZFfzrvdIOO7T9W64Akdz1ri8aJjpLtdfUtZsMnRPv7tdkJ1VLfw5bE+51ngNOThxj", + "pop": { + "ed25519_sig": "Zr9yP3eGRNKckUjx8aALBkjIX2/MtUm4XfiwneFpfWOEHhrlnni2eZsWAy69JHeNojI+EBeWOk3FJzCcV6AkCA==", + "bls_sig": "pDI6p6BYjL4mY3ByP8jHIDB3ESFXnWtujWVLhim3BxjUk4M+AzT0duv194etMtZk" + } + }, + "val_pubkey": { + "key": "Lw8uplrZsYNz0KcJZSiBXAOZG0M5YHt8j2VHiAVTE9o=" + } + } + ] + }, + "circuit": { + "account_permissions": [], + "disabled_type_urls": [] + }, + "consensus": null, + "crisis": { + "constant_fee": { + "denom": "ubbn", + "amount": "500000000000" + } + }, + "distribution": { + "params": { + "community_tax": "0", + "base_proposer_reward": "0", + "bonus_proposer_reward": "0", + "withdraw_addr_enabled": false + }, + "fee_pool": { + "community_pool": [] + }, + "delegator_withdraw_infos": [], + "previous_proposer": "", + "outstanding_rewards": [], + "validator_accumulated_commissions": [], + "validator_historical_rewards": [], + "validator_current_rewards": [], + "delegator_starting_infos": [], + "validator_slash_events": [] + }, + "epoching": { + "params": { + "epoch_interval": "360" + } + }, + "evidence": { + "evidence": [] + }, + "feegrant": { + "allowances": [] + }, + "feeibc": { + "identified_fees": [], + "fee_enabled_channels": [], + "registered_payees": [], + "registered_counterparty_payees": [], + "forward_relayers": [] + }, + "finality": { + "params": { + "signed_blocks_window": "10000", + "finality_sig_timeout": "3", + "min_signed_per_window": "0.05", + "min_pub_rand": "100" + }, + "indexed_blocks": [], + "evidences": [], + "vote_sigs": [], + "public_randomness": [], + "pub_rand_commit": [], + "signing_infos": [], + "missed_blocks": [] + }, + "genutil": { + "gen_txs": [ + { + "body": { + "messages": [ + { + "@type": "/cosmos.staking.v1beta1.MsgCreateValidator", + "description": { + "moniker": "Babylon Worker Co-Op 0", + "identity": "", + "website": "", + "security_contact": "", + "details": "" + }, + "commission": { + "rate": "0.100000000000000000", + "max_rate": "0.200000000000000000", + "max_change_rate": "0.010000000000000000" + }, + "min_self_delegation": "1", + "delegator_address": "", + "validator_address": "bbnvaloper1py58qvyyz6lcp9fhulwh5av8a4sllx6hxdr8rd", + "pubkey": { + "@type": "/cosmos.crypto.ed25519.PubKey", + "key": "Lw8uplrZsYNz0KcJZSiBXAOZG0M5YHt8j2VHiAVTE9o=" + }, + "value": { + "denom": "ubbn", + "amount": "1000000" + } + } + ], + "memo": "ce5568e20c6688bed0ab3ba0b2272f5bc6539af7@10.151.73.30:26656", + "timeout_height": "0", + "extension_options": [], + "non_critical_extension_options": [] + }, + "auth_info": { + "signer_infos": [ + { + "public_key": { + "@type": "/cosmos.crypto.secp256k1.PubKey", + "key": "AiuYYcL30ZPg50241U/PyzTcK+MZzRKj4V4GQMh8M0Qt" + }, + "mode_info": { + "single": { + "mode": "SIGN_MODE_DIRECT" + } + }, + "sequence": "0" + } + ], + "fee": { + "amount": [ + { + "denom": "ubbn", + "amount": "500" + } + ], + "gas_limit": "200000", + "payer": "", + "granter": "" + }, + "tip": null + }, + "signatures": [ + "ZNifZ9NSFATNTI4sX7yZp4CEWButxBBdLRRvUaYZaGk1ficKHIdl4zMc+oX3tOPwIHHdWHoMHZEznM8oFThpoQ==" + ] + } + ] + }, + "gov": { + "starting_proposal_id": "1", + "deposits": [], + "votes": [], + "proposals": [], + "deposit_params": null, + "voting_params": null, + "tally_params": null, + "params": { + "min_deposit": [ + { + "denom": "ubbn", + "amount": "1000000" + } + ], + "max_deposit_period": "172800s", + "voting_period": "300s", + "quorum": "0.334000000000000000", + "threshold": "0.500000000000000000", + "veto_threshold": "0.334000000000000000", + "min_initial_deposit_ratio": "0.000000000000000000", + "proposal_cancel_ratio": "0.500000000000000000", + "proposal_cancel_dest": "", + "expedited_voting_period": "120s", + "expedited_threshold": "0.667000000000000000", + "expedited_min_deposit": [ + { + "denom": "ubbn", + "amount": "2000000" + } + ], + "burn_vote_quorum": false, + "burn_proposal_deposit_prevote": false, + "burn_vote_veto": true, + "min_deposit_ratio": "0.010000000000000000" + }, + "constitution": "" + }, + "ibc": { + "client_genesis": { + "clients": [], + "clients_consensus": [], + "clients_metadata": [], + "params": { + "allowed_clients": [ + "*" + ] + }, + "create_localhost": false, + "next_client_sequence": "0" + }, + "connection_genesis": { + "connections": [], + "client_connection_paths": [], + "next_connection_sequence": "0", + "params": { + "max_expected_time_per_block": "30000000000" + } + }, + "channel_genesis": { + "channels": [], + "acknowledgements": [], + "commitments": [], + "receipts": [], + "send_sequences": [], + "recv_sequences": [], + "ack_sequences": [], + "next_channel_sequence": "0", + "params": { + "upgrade_timeout": { + "height": { + "revision_number": "0", + "revision_height": "0" + }, + "timestamp": "600000000000" + } + } + } + }, + "incentive": { + "params": { + "submitter_portion": "0.050000000000000000", + "reporter_portion": "0.050000000000000000", + "btc_staking_portion": "0.200000000000000000" + } + }, + "mint": { + "minter": { + "inflation": "0", + "annual_provisions": "0.000000000000000000" + }, + "params": { + "mint_denom": "ubbn", + "inflation_rate_change": "0.000000000000000000", + "inflation_max": "0.000000000000000000", + "inflation_min": "0.000000000000000000", + "goal_bonded": "0.5", + "blocks_per_year": "3153600" + } + }, + "monitor": {}, + "params": null, + "slashing": { + "params": { + "signed_blocks_window": "10000", + "min_signed_per_window": "0.05", + "downtime_jail_duration": "600s", + "slash_fraction_double_sign": "0.050000000000000000", + "slash_fraction_downtime": "0.0001" + }, + "signing_infos": [], + "missed_blocks": [] + }, + "staking": { + "params": { + "unbonding_time": "1814400s", + "max_validators": "100", + "max_entries": 7, + "historical_entries": 10000, + "bond_denom": "ubbn", + "min_commission_rate": "0.05" + }, + "last_total_power": "0", + "last_validator_powers": [], + "validators": [], + "delegations": [], + "unbonding_delegations": [], + "redelegations": [], + "exported": false + }, + "transfer": { + "port_id": "transfer", + "denom_traces": [], + "params": { + "send_enabled": true, + "receive_enabled": true + }, + "total_escrowed": [] + }, + "upgrade": {}, + "vesting": {}, + "wasm": { + "params": { + "code_upload_access": { + "permission": "Nobody", + "addresses": [] + }, + "instantiate_default_permission": "Everybody" + }, + "codes": [], + "contracts": [], + "sequences": [] + }, + "zoneconcierge": { + "port_id": "zoneconcierge", + "params": { + "ibc_packet_timeout_seconds": 86400 + } + } + }, + "consensus": { + "params": { + "block": { + "max_bytes": "22020096", + "max_gas": "50000000" + }, + "evidence": { + "max_age_num_blocks": "100000", + "max_age_duration": "172800000000000", + "max_bytes": "1048576" + }, + "validator": { + "pub_key_types": [ + "ed25519" + ] + }, + "version": { + "app": "0" + }, + "abci": { + "vote_extensions_enable_height": "1" + } + } + }, + "consensus_params": { + "abci": { + "vote_extensions_enable_height": "1" + }, + "block": { + "max_gas": "50000000" + } + } +} diff --git a/bbn-test-5/peers.txt b/bbn-test-5/peers.txt new file mode 100644 index 00000000..e60c9f1f --- /dev/null +++ b/bbn-test-5/peers.txt @@ -0,0 +1,2 @@ +fe62e0a38eb7694080c83a84225a6bb33be01fed@babylon-testnet-rpc-pruned-1.nodes.guru:55706 +4a3dd7deb4770c06e05849a4128fea1a7439a9d9@65.109.106.210:20656 diff --git a/bbn-test-5/seeds.txt b/bbn-test-5/seeds.txt new file mode 100644 index 00000000..00b6bb91 --- /dev/null +++ b/bbn-test-5/seeds.txt @@ -0,0 +1,3 @@ +be232be53f7ac3c4a6628f98becb48fd25df1adf@babylon-testnet-seed.nodes.guru:55706 +ade4d8bc8cbe014af6ebdf3cb7b1e9ad36f412c0@testnet-seeds.polkachu.com:20656 +59df4b3832446cd0f9c369da01f2aa5fe9647248@65.109.49.115:16256