Scope
The scope is to define concepts regarding smart contracts and to produce material to describe the various aspects and meanings, trying to come up to standards or good practices. The audience for smart contracts is large and spans from researchers, developers, businessmen, decision makers, policy makers, law makers, software users, citizens to governments, banks, financial institutions, insurance providers, etc
Some Two main research topics and separation of interest interests are:
- Technology oriented
Models of and mechanism for computation
, such as: - Stack machines vs automata vs manipulating algebraic types embedded in a another language-
- Scope for less expressive languages (that may have more tractability for formal methods)-
- Execution determinism, and sources of non-determinism in existing languages-
- Cost models for metering computation (e.g. gas)-
- Paradigms for smart contracts - e.g. 'identity-oriented', functional, process-oriented - extent to which smart contracts benefit from special purpose languages - Parallelism of execution, state independence (i.e. parallel processing in a single block)
- Formal guarantees on outputs of smart contracts
- Smart contract packaging, code reuse, and dependency auditing
- Smart contracts as representatives of obligations and fulfillment (i.e. 'law')
- What properties should smart contracts with 'legal charge' have?
- What relations can smart contracts have with actual contracts and agreements?
- At what scale to smart contracts best contribute to certainty and execution of agreement?
- What relationship do legal smart contracts have to models of computation?
Generation of smart contracts from existing artifacts (natural language, business process, state machines, non smart-contract code)
Data structures
and state - Verifiable and
authenticated data structures - e.g. merkle dags, log-backed maps, - How best to expose through smart contract languages/libraries
- Sharing state
back-ends across execution engines
- Conflict-free and additive data structures
Privacy
- Multi-party secure computation
- Differential privacy
- Zero knowledge and practical building blocks - types of commitments and witnesses
Tooling and compilers for existing virtual machines
- WASM/eWASM
- EVM
- WebIDL
Design Patterns for Smart Contracts
Upgradeability of smart contracts
- Law oriented
-