https://github.com/bptlab/blockchain-deferred-choice
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.2%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: bptlab
- Language: JavaScript
- Default Branch: master
- Size: 2.06 MB
Statistics
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Which Event Happened First? Deferred Choice on Blockchain Using Oracles
This repository is part of a research paper and should be viewed in that context.
Blockchain Deferred Choice
An implementation and evaluation of the deferred choice workflow pattern on Ethereum, using various oracle architectures and designs to implement events contingent on external data variables.
Repository Structure
The repository is structured as follows:
results: Results of the simulations as used in the paperscripts: Helper scripts to startgethsolidity: Solidity smart contractssrc: Off-chain components and Node.js framework/keys: Private keys of all pre-funded accounts in the genesis block/providers: Off-chain oracle provider code/simulation: Simulation logic
Running the Simulations
Installation
To run the simulations, you will need to have the following packages installed:
- Node.js, tested with version
v12.18.3and npm6.14.6 - Go Ethereum (
geth), tested with version1.9.21-stable
Everything else is then installed via npm:
bash
npm install
Starting geth
The simulations require certain accounts to be pre-funded.
A custom genesis block and a helpful cleanup/startup script are located in the scripts folder:
bash
cd scripts
./geth.sh
Simulations
There are two simulations:
npm run correctness: Starts the correctness simulationnpm run cost: Starts the cost simulation
Both simulations will output information to the console and a CSV file.
Additionally, the CSV output of the cost simulation can be translated to custom LaTeX code for inclusion in a paper using the heatmap script.
Owner
- Name: Business Process Technology
- Login: bptlab
- Kind: organization
- Location: Potsdam, Germany
- Website: https://bpt.hpi.uni-potsdam.de
- Repositories: 37
- Profile: https://github.com/bptlab
Business Process Technology @ Hasso Plattner Institute, University of Potsdam
GitHub Events
Total
Last Year
Issues and Pull Requests
Last synced: about 1 year ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- 344 dependencies
- fs-extra ^9.0.1
- glob ^7.1.6
- json-2-csv ^3.7.5
- log-timestamp ^0.3.0
- seedrandom ^3.0.5
- solc ^0.7.1
- web3 ^1.2.9