Title
Java SCORE (ICON blockchain’s smart contract) from scratch
Author
Huu Thuan Nguyen (SnowyField1906)
References
Devera Academy & ICON Network
Docker-ce
Docker-compose
g++
libsnappy-dev
libbz2-dev
libz-dev
A blockchain node written with Go
Helper scripts to run gochain docker container as a local network
OpenJDK11
Goloop
cd gochain-local
sudo ./run_gochain.sh start
export PATH=$PATH:/$HOME/goloop/bin
sudo ./gradlew build
sudo ./gradlew optimizedJar
goloop rpc sendtx deploy ./hello-world/build/libs/hello-world-0.1.0-optimized.jar \
--uri http://127.0.0.1:9082/api/v3 \
--key_store /$HOME/gochain-local/data/godWallet.json --key_password gochain \
--nid 0x3 --step_limit 10000000000 \
--content_type application/java \
--param name=Sample
"0x377553162e6589be1bfa246c3fdb70fd9273aa2b5a9ff6973cb7038307b8602d"
goloop rpc \
--uri http://localhost:9082/api/v3 txresult 0x377553162e6589be1bfa246c3fdb70fd9273aa2b5a9ff6973cb7038307b8602d
{
"to": "cx0000000000000000000000000000000000000000",
"cumulativeStepUsed": "0x3c877349",
"stepUsed": "0x3c877349",
"stepPrice": "0x2e90edd00",
"eventLogs": [],
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"status": "0x1",
"scoreAddress": "cxe951e82ff33a8883dd0061190a6f3a70ba87e263",
"blockHash": "0xd3dfaef43e35a0640b2202d941556322c4c4c1ddd83ceb64def021e5f2481720",
"blockHeight": "0x15f",
"txIndex": "0x0",
"txHash": "0x377553162e6589be1bfa246c3fdb70fd9273aa2b5a9ff6973cb7038307b8602d"
}
goloop rpc \
--uri http://localhost:9082/api/v3 call \
--to cxe951e82ff33a8883dd0061190a6f3a70ba87e263 \
--method getGreeting
"Hello Sample!"
goloop rpc sendtx call \
--to cxe951e82ff33a8883dd0061190a6f3a70ba87e263 \
--uri http://127.0.0.1:9082/api/v3 \
--key_store /$HOME/gochain-local/data/godWallet.json \
--key_password gochain \
--nid 0x3 --step_limit 10000000 \
--method setName \
--param name=YourName
"0x57404eea011050fca1c97f21e67754985cec645463d5b81fa46e44442b06e448"