GitHub - ethereum-oasis/baseline: The Baseline Protocol is an open source initia...
source link: https://github.com/ethereum-oasis/baseline
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
Welcome to Baseline
Combining advances in cryptography, messaging, and blockchain to execute
secure and private business processes via the public Ethereum Mainnet.
Join our Slack workspace for Baseline news and updates!
Baseline is an open source initiative with a large and growing team of supporting companies. The first code was donated by Ernst & Young and ConsenSys, with support from Microsoft, and is now receiving contributions from many other companies. The purpose of the project is to bring enterprises and complex business processes to the Ethereum Mainnet, while guarding the privacy constraints and needs of a typical group of enterprises.
The Baseline Protocol defines a series of steps to follow to privately and securely synchronize data inside two independent databases, using the Ethereum Mainnet as an auditable common frame of reference. This protocol implements best practices around data consistency and compartmentalization, and leverages public Ethereum for verifying execution of private transactions, contracts and tokens on the mainnet using ZKP (zkSnarks). The Baseline Protocol is designed such that it can be extended and applied to any database/workflow.
Radish34 Demo
In order to demonstrate the Baseline Protocol, we needed a use-case. The use-case chosen was product procurement within a supply-chain, and the custom application built for this workflow is called Radish34. This application was built as a proof of concept for the Baseline Protocol.
The Baseline Protocol code is currently embedded inside the /radish-api
directory, but we are in the process of moving that code into the /baseline
directory to clearly distinguish the protocol from the use-case. Once this move is complete, radish-api
will import baseline
as a module, which will be the same process that other projects will need to follow to implement Baseline.
Quickstart
A Makefile
has been included for convenience; most of its targets wrap npm
, docker
and solc
invocations.
Just want to get the Baseline Protocol running locally?
make && make start && make test
will build the monorepo, start the Baseline Protocol stack locally, deploy contracts and run the full test suite. Note: this typically takes between [] and [] minutes to complete.
Here are the targets currently exposed by the Makefile
:
make
Alias for make build
.
make build
Build and dockerize all modules within the monorepo; perform initial zk circuit setups.
make clean
Reclaim disk used by all modules (i.e. node_modules/
) and the local docker environment. This effectively uninstalls your local Baseline environment and will require building from scratch.
make contracts
Compile the Solidity contracts.
make deploy-contracts
Deploy the Solidity contracts. Requires the stack to be running.
make npm-install
npm ci
wrapper for all modules in the monorepo.
make start
Start the full Baseline stack. Requires docker
service to be running with at least 12 GB RAM allocation.
make stop
Stop the running Baseline stack.
make test
Run the full test suite. Requires the stack to be running.
make zk-circuits
Perform zk-SNARK trusted setups for circuits contained within zkp/circuits
Running Radish34
To run the Radish34 application, follow the instructions in radish34/README.md.
cd radish34
and go from there 🚀
What is here?
The root directory of this repo (where this Readme currently lives) contains the following folders:
.
├── baseline <-- Future home to the Baseline Protocol libraries
├── bin <-- Scripts to run across the entire project
├── docs <-- auto-generated and artisanal hand crafted documentation
└── radish34 <-- The demonstration POC (you probably are looking for this)
Running scripts across the project
To use the top level scripts (currently just documentation auto-generation and collection) do the following:
Required: NodeJS 11.15 (nvm is recommended)
- run
npm install
to install the top level packages - run
npm run bootstrap
to install all the packages in all the project components (using lerna)
optionally npm run clean
to clean out any node_modules
folders installed by the bootstrap
command.
How to contribute?
See our contributing guidelines
License
All code in this repo is released under the CC0 1.0 Universal public domain dedication. For the full license text, refer to license.md.
Recommend
-
52
-
4
The Baseline Protocol is an exciting new enterprise blockchain initiative from Consensys, Ernst & Young, and a dozen other large companies looking to sell juicy, juicy consulting hours. The official ConsenSy...
-
5
从借呗双十一游戏看蚂蚁金服 Oasis 3D 工作流蚂蚁金服 前端工程师作者:RichLab 前端 楺楺写在最前:欢迎来到「花呗借呗前端团队」技术专栏,我们将与大家分享...
-
5
相信大家已经体验了今年支付宝五福的活动,无论是今年的五福首页还是打年兽游戏都是由蚂蚁互动图形引擎(代号:Oasis Engine)驱动的。 Oasis Engine 是蚂蚁集团 Web 3D 互动图形引擎,同时也是阿里经济体互动技术方向的首选...
-
8
招募 | 加入 Oasis 大使计划,领取 20000 枚 ROSE 奖励隐私计算在过去两三年来,被嗅觉灵敏的资本机构纷纷布局,很可能在这轮牛市的下半场迎来爆发。关注隐私计算赛道的朋友,一定不会忽视正处在头部位置的明星公链 Oasis。Oasis 网络是全球首个...
-
4
Seeking an Oasis in a Data Desert Gaps in data quality, particularly due to supply chain issues during the pandemic, is becoming a serious influence on planning effective machine learning models.When it comes to weather, we treat bar...
-
4
Industry Ready Player One? We might be closer to the OASIS than you think; Friday’s daily brief Plus, mis...
-
3
oasis oasis is a small linux system. It is probably quite a bit different from other Linux-based operating systems you might be familiar with, and is probably better compared to a BSD. There are many features that distinguis...
-
0
Armaan Singla May 4, 2023 1 minute read
-
3
...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK