Ecosyste.ms: Repos

An open API service providing repository metadata for many open source software ecosystems.

Package Usage: go: github.com/tendermint/go-amino

Amino is an encoding library that can handle interfaces (like protobuf "oneof") well. This is achieved by prefixing bytes before each "concrete type". A concrete type is some non-interface value (generally a struct) which implements the interface to be (de)serialized. Not all structures need to be registered as concrete types -- only when they will be stored in interface type fields (or interface type slices) do they need to be registered. All interfaces and the concrete types that implement them must be registered. Notice that an interface is represented by a nil pointer. Structures that must be deserialized as pointer values must be registered with a pointer value as well. It's OK to (de)serialize such structures in non-pointer (value) form, but when deserializing such structures into an interface field, they will always be deserialized as pointers. All registered concrete types are encoded with leading 4 bytes (called "prefix bytes"), even when it's not held in an interface field/element. In this way, Amino ensures that concrete types (almost) always have the same canonical representation. The first byte of the prefix bytes must not be a zero byte, so there are 2**(8*4)-2**(8*3) possible values. When there are 4096 types registered at once, the probability of there being a conflict is ~ 0.2%. See https://instacalc.com/51189 for estimation. This is assuming that all registered concrete types have unique natural names (e.g. prefixed by a unique entity name such as "com.tendermint/", and not "mined/grinded" to produce a particular sequence of "prefix bytes"). TODO Update instacalc.com link with 255/256 since 0x00 is an escape. Do not mine/grind to produce a particular sequence of prefix bytes, and avoid using dependencies that do so. Since 4 bytes are not sufficient to ensure no conflicts, sometimes it is necessary to prepend more than the 4 prefix bytes for disambiguation. Like the prefix bytes, the disambiguation bytes are also computed from the registered name of the concrete type. There are 3 disambiguation bytes, and in binary form they always precede the prefix bytes. The first byte of the disambiguation bytes must not be a zero byte, so there are 2**(8*3)-2**(8*2) possible values. The prefix bytes never start with a zero byte, so the disambiguation bytes are escaped with 0x00. Notice that the 4 prefix bytes always immediately precede the binary encoding of the concrete type. To compute the disambiguation bytes, we take `hash := sha256(concreteTypeName)`, and drop the leading 0x00 bytes. In the example above, hash has two leading 0x00 bytes, so we drop them. The first 3 bytes are called the "disambiguation bytes" (in angle brackets). The next 4 bytes are called the "prefix bytes" (in square brackets).
17 versions
Latest release: over 3 years ago
4,647 dependent packages

View more package details: https://packages.ecosyste.ms/registries/proxy.golang.org/packages/github.com/tendermint/go-amino

View more repository details: https://repos.ecosyste.ms/hosts/GitHub/repositories/tendermint%2Fgo-amino

Dependent Repos 2,891

Team-Kujira/ibc-go Fork of cosmos/ibc-go
Interblockchain Communication Protocol (IBC) implementation in Golang.
  • v0.16.0 e2e/go.mod
  • v0.16.0 e2e/go.sum
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 30.2 MB - Last synced: 21 days ago - Pushed: 8 months ago

stratosnet/stratos-chain
Stratos Blockchain
  • v0.15.1 go.mod
  • v0.15.1 go.sum
  • v0.14.1 go.sum

Size: 5.26 MB - Last synced: 2 days ago - Pushed: 2 days ago

bnb-chain/bnc-cosmos-sdk
  • v0.15.0 go.mod

Size: 30.4 MB - Last synced: about 1 month ago - Pushed: about 1 month ago

dreamer-zq/cosmos-sdk Fork of cosmos/cosmos-sdk
:chains: A Framework for Building High Value Public Blockchains :sparkles:
  • v0.16.0 cosmovisor/go.mod
  • v0.16.0 cosmovisor/go.sum
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 217 MB - Last synced: 26 days ago - Pushed: 7 months ago

millicent-money/cosmos-sdk
  • v0.16.0 cosmovisor/go.mod
  • v0.16.0 cosmovisor/go.sum
  • v0.16.0 go.mod
  • v0.16.0 go.sum
  • v0.16.0 store/tools/ics23/go.sum

Size: 361 MB - Last synced: 9 months ago - Pushed: about 1 year ago

KiraCore/sekai
backend - blockchain application
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 17.3 MB - Last synced: 21 days ago - Pushed: 27 days ago

swimricky/wormhole Fork of wormhole-foundation/wormhole
Certus One's reference implementation for the Wormhole blockchain interoperability protocol.
  • v0.14.1 event_database/cloud_functions/go.sum
  • v0.15.1 event_database/cloud_functions/go.sum
  • v0.16.0 event_database/cloud_functions/go.sum
  • v0.14.1 event_database/functions_server/go.sum
  • v0.15.1 event_database/functions_server/go.sum
  • v0.16.0 event_database/functions_server/go.sum
  • v0.16.0 node/go.mod
  • v0.16.0 node/go.sum

Size: 76.7 MB - Last synced: about 1 year ago - Pushed: almost 2 years ago

bianjieai/ethermint Fork of evmos/ethermint
Ethermint is a scalable and interoperable Ethereum library, built on Proof-of-Stake with fast-finality using the Cosmos SDK.
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 39.2 MB - Last synced: 23 days ago - Pushed: 23 days ago

strangelove-ventures/lens 📦
⚛️❤️👁 Brought to you by the LensCrafters
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 18.4 MB - Last synced: 29 days ago - Pushed: 10 months ago

ChainSafe/chainlink-cosmos
Chainlink on Cosmos: Cosmos SDK module for Chainlink data feeds
  • v0.16.0 go.sum

Size: 1.26 MB - Last synced: about 1 month ago - Pushed: 4 months ago

bnb-chain/node
  • v0.15.0 go.mod

Size: 3.89 MB - Last synced: 4 days ago - Pushed: 5 days ago

championshuttler/cosmos-sdk Fork of cosmos/cosmos-sdk
:chains: A Framework for Building High Value Public Blockchains :sparkles:
  • v0.16.0 cosmovisor/go.mod
  • v0.16.0 cosmovisor/go.sum
  • v0.16.0 go.mod
  • v0.16.0 go.sum
  • v0.16.0 orm/go.sum
  • v0.16.0 x/group/go.mod
  • v0.16.0 x/group/go.sum

Size: 367 MB - Last synced: about 1 year ago - Pushed: over 1 year ago

hyperledger-labs/yui-docs
  • v0.16.0 samples/minitoken-besu-ethereum/relayer/go.sum

Size: 1.46 MB - Last synced: 8 months ago - Pushed: 8 months ago

lovincyrus/ethermint Fork of cosmos/ethermint
Ethereum on Tendermint using Cosmos-SDK!
  • v0.14.1 go.sum
  • v0.15.1 go.sum

Size: 20.8 MB - Last synced: about 1 year ago - Pushed: over 1 year ago

allinbits/ethermint Fork of cosmos/ethermint
Ethermint is a scalable and interoperable Ethereum, built on Proof-of-Stake with fast-finality using the Cosmos SDK.
  • v0.14.1 go.sum
  • v0.15.1 go.sum

Size: 28.5 MB - Last synced: about 1 year ago - Pushed: over 1 year ago

JameWade/zkethermint
  • v0.14.1 go.sum
  • v0.15.1 go.sum

Size: 35.2 MB - Last synced: about 1 year ago - Pushed: over 1 year ago

faddat/ethermint Fork of cosmos/ethermint-archive
Ethereum on Tendermint!
  • v0.16.0 go.sum

Size: 73.5 MB - Last synced: 27 days ago - Pushed: over 1 year ago

yihuang/ethermint Fork of evmos/ethermint
Ethermint is a scalable and interoperable Ethereum, built on Proof-of-Stake with fast-finality using the Cosmos SDK.
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 39.5 MB - Last synced: 6 days ago - Pushed: 6 days ago

dgfug/ethermint Fork of evmos/ethermint
Ethermint is a scalable and interoperable Ethereum, built on Proof-of-Stake with fast-finality using the Cosmos SDK.
  • v0.16.0 go.sum

Size: 30.5 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

khoslaventures/ethermint Fork of evmos/ethermint
Ethermint is a scalable and interoperable Ethereum, built on Proof-of-Stake with fast-finality using the Cosmos SDK.
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 28.1 MB - Last synced: about 2 months ago - Pushed: over 1 year ago

dgfug/ethermint-1 Fork of cosmos/ethermint
Ethermint is a scalable and interoperable Ethereum, built on Proof-of-Stake with fast-finality using the Cosmos SDK.
  • v0.14.1 go.sum
  • v0.15.1 go.sum

Size: 30 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

Some-body-in-the-ether/test
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 3.75 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

Global-Bank-of-Memories/bankofmemories-ethermint
  • v0.14.1 go.sum
  • v0.15.1 go.sum

Size: 28.2 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

wxh123434/ethermint
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 36.4 MB - Last synced: about 1 year ago - Pushed: over 1 year ago

itamard7/ethermint
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 25.6 MB - Last synced: about 1 year ago - Pushed: over 1 year ago

chen7gx/esbc
  • v0.16.0 go.sum

Size: 18.7 MB - Last synced: about 1 year ago - Pushed: over 1 year ago

pro100programmer/Evmos-Vova
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 3.73 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

chen7gx/ethermintd
  • v0.16.0 go.sum

Size: 28.1 MB - Last synced: about 1 year ago - Pushed: over 1 year ago

notional-labs/evmos Fork of evmos/evmos
Evmos is the Ethereum Virtual Machine (EVM) Hub on the Cosmos Network. It is the flagship implementation of the Ethermint library that prioritizes interoperability and novel economics.
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 51.3 MB - Last synced: 6 days ago - Pushed: 6 days ago

git-sgmoore/evmos Fork of evmos/evmos
Evmos chain
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 3.03 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

mikeyhodl/ethermint Fork of cosmos/ethermint
Ethermint is a scalable and interoperable Ethereum, built on Proof-of-Stake with fast-finality using the Cosmos SDK.
  • v0.14.1 go.sum
  • v0.15.1 go.sum

Size: 30.7 MB - Last synced: about 1 year ago - Pushed: over 1 year ago

Luis4Q/evmos Fork of evmos/evmos
Evmos is the Ethereum Virtual Machine (EVM) Hub on the Cosmos Network. It is the flagship implementation of the Ethermint library that prioritizes interoperability and novel economics.
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 6.13 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

torusresearch/ethermint Fork of cosmos/ethermint
Ethermint is a scalable and interoperable Ethereum, built on Proof-of-Stake with fast-finality using the Cosmos SDK.
  • v0.14.1 go.sum
  • v0.15.1 go.sum

Size: 28.2 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

RonSherfey/ethermint Fork of ChainSafe/ethermint
Ethermint is a scalable and interoperable Ethereum, built on Proof-of-Stake with fast-finality using the Cosmos SDK. - follow the latest updates @ github.com/cosmos/ethermint
  • v0.14.1 go.sum
  • v0.15.1 go.sum

Size: 30.1 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

vocdoni/vocdoni-node
A set of libraries and tools for the Vocdoni decentralized backend infrastructure, the main ground of our universally verifiable, privacy-centric and scalable digital voting protocol
  • v0.14.1 go.sum
  • v0.15.1 go.sum

Size: 16.3 MB - Last synced: 16 days ago - Pushed: 17 days ago

sysrex/celestia-node Fork of celestiaorg/celestia-node
Celestia Data Availability Nodes
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 80.8 MB - Last synced: 9 months ago - Pushed: 9 months ago

Sifchain/peggy
  • v0.16.0 go.mod
  • v0.14.1 go.sum
  • v0.15.1 go.sum
  • v0.16.0 go.sum

Size: 8.27 MB - Last synced: 10 months ago - Pushed: about 1 year ago

knkgun/cosmos-sdk Fork of cosmos/cosmos-sdk
:chains: A Framework for Building High Value Public Blockchains :sparkles:
  • v0.16.0 cosmovisor/go.mod
  • v0.16.0 cosmovisor/go.sum
  • v0.16.0 go.mod
  • v0.16.0 go.sum
  • v0.16.0 x/group/go.mod
  • v0.16.0 x/group/go.sum

Size: 386 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

many-things/osmosis Fork of osmosis-labs/osmosis
The AMM Laboratory
  • v0.16.0 go.mod
  • v0.16.0 go.sum

Size: 212 MB - Last synced: 28 days ago - Pushed: 4 months ago

kleimanb81/cosmos-sdk Fork of pomifer/cosmos-sdk
:chains: A Framework for Building High Value Public Blockchains :sparkles:
  • v0.16.0 cosmovisor/go.mod
  • v0.16.0 cosmovisor/go.sum
  • v0.16.0 go.mod
  • v0.16.0 go.sum
  • v0.16.0 store/tools/ics23/go.sum

Size: 406 MB - Last synced: about 1 year ago - Pushed: about 1 year ago