Slide 1

Slide 1 text

LINK Chain で動く スマートコントラクト (極秘)

Slide 2

Slide 2 text

Agenda • LINE Token Economy • LINK Chain • Smart Contract in Practice

Slide 3

Slide 3 text

Fintech Platform Life Platform Contents Platform LINE Token Economy LINE Token Economy NEWS GAME γϣοϐϯά ほけん スマート投資 3rd Party Service … … όΠτ … …

Slide 4

Slide 4 text

Fintech Business LINE Tech Plus LINE Blockchain & Cryptocurrency LINE LVC BITBOX Cryptocurrency exchange Digital asset and blockchain business Blockchain Lab LINK Chain unchain ICON Foundation Blockchain platform development 3rd Party dApp Cryptocurrency exchange business

Slide 5

Slide 5 text

⾃⼰紹介 鷹⾒ ⻁男( TAKAMI Torao @kuromoyo ⾦融系 SIer (フリー) と Web 系サービス開発を経て、フルスタックな Web システムや分散 システム、機械学習周辺を専⾨にエンジニアリングしています。昨年10⽉に LINE へ⼊社 し Blockchain Lab で Token Economy プラットフォームを開発中。

Slide 6

Slide 6 text

Whatʼs LINK Chain? Blockchain and Open Platform implementation for the LINE Token Economy Features Ethereum 2.0 LINK Chain 1.0 Participation public private Consensus Mechanism PoW + PoS (Casper FFG) 3-phase pBFT Finality available available Contract Runtime eWASM + EVM Python 3 dApp Administration - Service Operator Role Higher-Level API - LINK Framework Cryptocurrency / Token ETH / ERC20 Tokens LINK / LINK Point

Slide 7

Slide 7 text

Components of LINK Chain LINK Network C Node C Node C Node C Node C Node Leader S Node S Node S Node S Node S Node S Node dApp dApp dApp LINK Network • C Node … generate blocks • S Node … read only proxy Other LINK Network Root Chain dApp LINK Framework • API … higher-level API • SCAN … transaction tracker • Relayer … inter-linkchain relayer

Slide 8

Slide 8 text

Inside C-Node C Node Message Queue LINK Core Block DB State DB Interface S Node C Node LINK Framework dApp • Block generation and verification • P2P network state management • pBFT consensus mechanism LINK Service • Install, update and execute contracts • Control contract operation, consensus mechanism, etc. Contr act DB Contracts

Slide 9

Slide 9 text

Join the LINK Chain 5) Issue transaction to update whitelist 6) And install smart contract as well 1) Request to join my dApp “Candy Point” to LINK Chain Admin Wallet space of Candy Point 3) New Admin Service Operator Wallet LINK Framework 4) Transfer mint tokens LINK Network 2) Confirm the smart contract Administrator Smart Contract

Slide 10

Slide 10 text

Smart Contract in Practice 環境セットアップは省略。 1. RabbitMQ, C-Node を起動 2. 鍵 (User Address) の作成 3. Smart Contract プロジェクトの作成 4. Smart Contract のデプロイ → Contract Address 確認 5. Smart Contract の呼び出し

Slide 11

Slide 11 text

Smart Contract in Practice $ tbear init candypoint CandyPoint $ cat candypoint/ from linkservice import * TAG = 'CandyPoint' class CandyPoint(LinkContractBase): def __init__(self, db: LinkServiceDatabase) -> None: super().__init__(db) def on_install(self) -> None: super().on_install() def on_update(self) -> None: super().on_update() @external(readonly=True) def hello(self, name:str) -> str: return "Hello, %s" % name $ tbear deploy –k [keystore] candypoint transaction hash: [txhash] $ tbear txresult [txhash] ”scoreAddress": ”[contract_address]", $ cat call-hello.json { "jsonrpc": "2.0", "method": "icx_call", "params": { "from": ”[address_in_keystore]", "to": ”[contract_address]", "dataType": "call", "data": { "method": "hello", "params": { "name": "Takami Torao" } } }, "id": 1 } $ tbear call call-hello.json response : { "jsonrpc": "2.0", "result": "Hello, Takami Torao", "id": 1 } Smart Contract JSON to call method hello of CandyPoint

Slide 12

Slide 12 text

FIN ご清聴ありがとうございました。 たのしんでってね!