[关闭]
@lambeta 2018-03-26T02:00:35.000000Z 字数 1516 阅读 299

solidity

blockchain


Language feature release plan

  1. Solidity features plan https://www.pivotaltracker.com/n/projects/1189488

Tools

command line tool

Dapp
Dapp is a simple command line tool for smart contract development. It supports these common usecases:
1. Package management
2. Source code building
3. Unit testing
4. Simple contract deployments

EVM disassembler

evmdis is an EVM disassembler. It performs static analysis on the bytecode to provide a higher level of abstraction for the bytecode than raw EVM operations.

  1. Separates bytecode into basic blocks.
  2. Jump target analysis, assigning labels to jump targets and replacing addresses with label names.
  3. Composes individual operations into compound expressions where possible.
  4. Provides insight into the state of the stack at the start of each block.

Control flow visualize

Solgraph Generates a DOT graph that visualizes function control flow of a Solidity contract and highlights potential security vulnerabilities.

solidity repl

solidity-repl

Library

OpenZeppelin is a library for writing secure Smart Contracts on Ethereum.

With OpenZeppelin, you can build distributed applications, protocols and organizations:

using common contract security patterns (See Onward with Ethereum Smart Contract Security)
in the Solidity language.

OpenZeppelin API

Awesome serials

  1. awesome smart contracts
  2. awesome solidity
  3. awesome evm
  4. Ethereum Virtual Machine Awesome List
  5. awesome web3
  6. awesome ethereum

Deep Dive

require assert & revert

require
assert
revert
https://ethereum.stackexchange.com/questions/15166/difference-between-require-and-assert-and-the-difference-between-revert-and-thro

race condition

https://docs.google.com/document/d/1YLPtQxZu1UAvO9cZ1O2RPXBbT0mooh4DYKjA_jp-RLM/edit

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注