Thaler Experimental Network; For Crypto.org Chain: github.com/crypto-org-chain/chain-main
This repository contains the Thaler Experimental Network code (pre-pivoted Crypto.com Chain). The current repository consists of the following Rust sub-crates:
$ docker build -t crypto-chain:latest .
Docker build arguments:
HW: SGX hardware mode, default.
SW: SGX software simulation mode.
NETWORK_ID: Network HEX Id of Tendermint, default:
debug: debug mode.
release: release mode, default.
mock: A simulation mode only for development on non-sgx platform, don't use in production.
$ make build
It builds in docker container, the result binaries reside in local directory, it runs something like:
$ docker run --rm -v `pwd`:/chain cryptocom/chain:latest run_build_scripts
The result binary is built for the docker container environment, may not runnable locally.
The makefile supports other commands too:
$ make help ... SUBCOMMAND: prepare prepare the environment image build the docker image build just build the chain and enclave binaery in docker run-sgx docker run sgx-validation and a sgx-query container run-chain docker run chain-abci, tendermint and client-rpc container stop-all docker stop all the container start-all docker start all the container restart-all docker restart all the container rm-all remove all the docker container clean clean all the temporary files while compiling clean-data remove all the data in data_path
SGX_SDKto the sdk directory)
$ apt-get install -y \ cmake \ libgflags-dev \ libzmq3-dev \ pkg-config \ clang $ ./docker/build.sh
All the executables and signed enclave libraries will reside in
Environment variables mentioned in the docker image building section also apply here.
Please follow the instruction to deploy a local full node.
Kindly refer to this instruction to perform transactions between addresses.
You can run the unit tests and integration tests with drone-cli on sgx platform:
$ cat > .drone.secret << EOF SPID= IAS_API_KEY= EOF $ drone exec --trusted \ --include build \ --include unit-tests \ --include integration-tests \ --include multinode-tests
Kindly refer to Prepare SPID & KEY to obtain the values of