attacksimulator

module
v0.0.0-...-d82d076 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 6, 2022 License: MIT

README

AttackSimulator

The experiment is conducted with 9 mining nodes.

drawing

8 nodes are honest.

  • Compile the poa client without any modifications.
  • These nodes will follow the rule of consensus honestly.

1 nodes are malicious.

  • running based on our attack simulator
  • modify the source code at the delay time field

Directories

Path Synopsis
account
Package accounts implements high level Hpb account management.
Package accounts implements high level Hpb account management.
account/abi
Package abi implements the HPB ABI (Application Binary Interface).
Package abi implements the HPB ABI (Application Binary Interface).
account/keystore
Package keystore implements encrypted storage of secp256k1 private keys.
Package keystore implements encrypted storage of secp256k1 private keys.
blockchain/bloombits
Package bloombits implements bloom filtering on batches of data.
Package bloombits implements bloom filtering on batches of data.
blockchain/state
Package state provides a caching layer atop the Hpb state trie.
Package state provides a caching layer atop the Hpb state trie.
blockchain/types
Package types contains data types related to Hpb consensus.
Package types contains data types related to Hpb consensus.
boe
cmd/ghpb
ghpb is the official command-line client for Hpb.
ghpb is the official command-line client for Hpb.
cmd/utils
Package utils contains internal helper functions for go-hpb commands.
Package utils contains internal helper functions for go-hpb commands.
common
Package common contains various helper functions.
Package common contains various helper functions.
common/bitutil
Package bitutil implements fast bitwise operations.
Package bitutil implements fast bitwise operations.
common/compiler
Package compiler wraps the Solidity compiler executable (solc).
Package compiler wraps the Solidity compiler executable (solc).
common/crypto/blake2b
Package blake2b implements the BLAKE2b hash algorithm defined by RFC 7693 and the extendable output function (XOF) BLAKE2Xb.
Package blake2b implements the BLAKE2b hash algorithm defined by RFC 7693 and the extendable output function (XOF) BLAKE2Xb.
common/crypto/bn256
Package bn256 implements a particular bilinear group at the 128-bit security level.
Package bn256 implements a particular bilinear group at the 128-bit security level.
common/crypto/secp256k1
Package secp256k1 wraps the bitcoin secp256k1 C library.
Package secp256k1 wraps the bitcoin secp256k1 C library.
common/crypto/sha3
Package sha3 implements the SHA-3 fixed-output-length hash functions and the SHAKE variable-output-length hash functions defined by FIPS-202.
Package sha3 implements the SHA-3 fixed-output-length hash functions and the SHAKE variable-output-length hash functions defined by FIPS-202.
common/hexutil
Package hexutil implements hex encoding with 0x prefix.
Package hexutil implements hex encoding with 0x prefix.
common/log
Package log15 provides an opinionated, simple toolkit for best-practice logging that is both human and machine readable.
Package log15 provides an opinionated, simple toolkit for best-practice logging that is both human and machine readable.
common/math
Package math provides integer math utilities.
Package math provides integer math utilities.
common/mclock
package mclock is a wrapper for a monotonic clock source
package mclock is a wrapper for a monotonic clock source
common/metrics
Package metrics provides general system and process level metrics collection.
Package metrics provides general system and process level metrics collection.
common/rlp
Package rlp implements the RLP serialization format.
Package rlp implements the RLP serialization format.
common/trie
Package trie implements Merkle Patricia Tries.
Package trie implements Merkle Patricia Tries.
consensus
Package consensus implements different Hpb consensus engines.
Package consensus implements different Hpb consensus engines.
consensus/promcadfile
puppeth is a command to assemble networks configure.
puppeth is a command to assemble networks configure.
consensus/promfile
puppeth is a command to assemble networks configure.
puppeth is a command to assemble networks configure.
event/sub/filter
Package filter implements event filters.
Package filter implements event filters.
hvm
hvm/evm
package evm implements the Hpb Virtual Machine.
package evm implements the Hpb Virtual Machine.
interface
Package hpb defines interfaces for interacting with Hpb.
Package hpb defines interfaces for interacting with Hpb.
internal/debug
Package debug interfaces Go runtime debugging facilities.
Package debug interfaces Go runtime debugging facilities.
internal/guide
Package guide is a small test suite to ensure snippets in the dev guide work.
Package guide is a small test suite to ensure snippets in the dev guide work.
internal/hpbapi
Package hpbapi implements the general Hpb API functions.
Package hpbapi implements the general Hpb API functions.
internal/jsre
Package jsre provides execution environment for JavaScript.
Package jsre provides execution environment for JavaScript.
internal/jsre/deps
Package deps contains the console JavaScript dependencies Go embedded.
Package deps contains the console JavaScript dependencies Go embedded.
internal/web3ext
package web3ext contains ghpb specific web3.js extensions.
package web3ext contains ghpb specific web3.js extensions.
network/p2p
Package p2p implements the Hpb p2p network protocols.
Package p2p implements the Hpb p2p network protocols.
network/p2p/nat
Package nat provides access to common network port mapping protocols.
Package nat provides access to common network port mapping protocols.
network/p2p/netutil
Package netutil contains extensions to the net package.
Package netutil contains extensions to the net package.
network/rpc
Package rpc provides access to the exported methods of an object across a network or other I/O connection.
Package rpc provides access to the exported methods of an object across a network or other I/O connection.
network/rpc/hpbclient
Package ethclient provides a client for the Hpb RPC API.
Package ethclient provides a client for the Hpb RPC API.
node
Package eth implements the Hpb protocol.
Package eth implements the Hpb protocol.
node/filters
Package filters implements an hpb filtering system for block, transactions and log events.
Package filters implements an hpb filtering system for block, transactions and log events.
node/tracers
Package tracers is a collection of JavaScript transaction tracers.
Package tracers is a collection of JavaScript transaction tracers.
node/tracers/internal/tracers
Package tracers contains the actual JavaScript tracer assets.
Package tracers contains the actual JavaScript tracer assets.
worker
Package worker implements HPB block creation and mining.
Package worker implements HPB block creation and mining.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL