# Note for ICBC 2019
###### tags: `Conference`
Note keeper: [Elvis Yu-Jing Lin](https://elvisyjlin.github.io/)
__ICBC 2019__ | International Conference on Blockchain and Cryptocurrency
Date: 2019.05.14 - 2019.05.17
Venue: SKT Tower (4F), Seoul, Korea
會議的進行方式是在Main Hall的講廳報告,每段報告20分鐘加Q&A 5分鐘,報告間穿插30分鐘的coffee break休息,並且同時是demo與poster session。
## Program
Official Site: http://icbc2019.ieee-icbc.org/program/
Accepted Paper: https://drive.google.com/open?id=1-hIVEagtM4hl-EODzdFu7L__NeLTjLI6
# 5/14
## Tutorial 1
### Blockchain and Smart Contracts - From Theory to Practice
Speaker: Bruno Rodrigues (Switzerland)
* Blockchain 1.0 - Bitcoin
* Blockchain 2.0 - Ethereum (smart contract)
* Blockchain 3.0 - Decentralized Apps (dApps)
* Blockchain 4.0 - BC ecosystems and industrial integration (FinTech, supply-chain, governmental, identity, etc.)


#### Consensus algorithms
* BFT (dBFT)
* PoC
* PoS (dPoS)
* PoA
* Shards


#### Blockchain Adoption
Over 2100 cryptocurrencies available around the world
* Public v.s. Private
* Permissioned v.s Permissionless


#### Smart contract programing
* Changes are not available after deployed
* Failure (DAO)
#### Smart contract best practices
1. Prepare for failure (e.g. DAO)
2. Rollout carefully
3. Keep contracts simple
4. Stay up to date
5. Be aware of blockchain properties
6. Fundemental trade-offs



#### 心得
對古今中外的blockchain做overview的介紹,一步一步演進介紹整個區塊鏈與加密貨幣的發展,很適合作為這次大會的開場秀。對於各式各樣的consensus algorithm也有闡述,分析不同應用場景適合的blockchain類型,甚至整理了寫smart contract所需要注意的事,要尤其小心,避免再發生像DAO的事件。此外,講者認為,blockchain 4.0時代,主流發展應該會像是區塊鏈的生態系(OS)或產業應用整合。
## Coffee Break / Demo

### SimBlock
Blockchain full node simulation
They showed a worldwide proof-of-work blockchain dynamics in the real-time simulation.

#### 心得
很有趣的實時動態模擬,可以看到在模擬的網路中,不同顏色的點表示不同state的full nodes,顏色趨於一致時表示全網趨近同步,而連線表示資料的傳輸,其中有特大的點表示miner。用這個方式可以模擬不同consensus在不同網路狀態的blockchain同步情況,以了解throughput與latency等數值。
## Tutorial 2
### Enterprise Blockchain Solutions for Finantial Services: Techniques and Challenges
Speaker: Ziyuan Wang (Swinburne University of Technology, Australia)



> Blockchain has the ability to __shift the cost of trust__.
* Asymmetry encryption
* Digital signature (authentication)
* Hash functions
#### Challenges
* Rising problems with traditional file system
* Shared-KYC, KYC <- CDD
* Privacy and consent (See: double blind consent)




#### Bank Guarantee
#### Issues in current system
* Physical doc mgn
* Fraud risk
* Insufficient reports
* Non-standard T&Cs and formats

#### AI Driven Micro Insurance Marketplace on Blockchain
Projects
* Provide dynamic Pay-As-You-Go (PAYG) insurance for automobile drivers.
* Provide a shared ecosystem for insurance companies to share customer history.
#### Document and Workflow Management
Digitalize the global supply chain
#### Blockchain
1. Hyperledger, Fabric



2. R3 and Corda
* No blockchains; only P2P
* No broadcast
* UTXO
* JVM-based (Kotlin)
* Supports industry-standard protocols: AMQP, JDBC, PKIX, etc.

#### Key Lessions We Learnt

##### Barriers
* Unwilling to share organizational data
* Privacy and regulatory compliance
* Security challenges
* Limited transaction speed
#### Our Solutions

#### Take Away
* Rethink on the notion of trust
* More value-added when combined with other technologies
#### Project Progress
* Bank Guarantee: Proof-of-Work; about to move the PoC to the production
* Micro Insurance: Paper published
#### 心得
印象中,好像,去年的Blockchain 2018會議有見過這位講者,也是講Hyperledger Fabric的應用。看得出來他們研究單位在blockchain的應用上做了相當多的調查,並且開始採用blockchain作為solution去實作,多個project都在剛起步的階段(剛發出paper)。上面的[Project Progress](https://hackmd.io/s/rkXw4VWpE#Project-Progress)段落描述了目前的進度,講者提到進度是因為有人發問:「澳洲對區塊鏈抱持開放的態度,也聽說有許多應用萌生,請問你的看法是?」之類的問題。
## Tutorial 3
### Lightning network: off-chain transactions and the future of decentralised value transfer
Missed.
## Tutorial 4
### Interledger: theory and practice
Missed.
## Tutorial 5
### Blockchain for Cyberphysical Systems: Applications, Opportunities and Challenges
Missed.
# 5/15
## Technical Session 1
### RouteChain: Towards Blockchain-based Secure and Efficient BGP Routing
Speaker: Muhammed Saad
### BlockONS: Blockchain based Object Named Service
Speaker: Wondeuk Yoon (KAIST, LG)
* Machine-to-Machine (M2M)
* Internet of Things (IoT)
* Internet of Everything (IoE)

#### 心得
設計了一個Object Named Service的系統,這份work比起performance,比較像是做出這個完整系統的設計。也算是未來Internet of Everything的一個展望。
### Trinity: A Byzantine Fault-Tolerance Distributed Publish-Subsribe System with Immutable Blockchain-based Persistance
Speaker: Gowri Sankar Ramachandran
##### Some Keys
* Significant network and CPU usage on Raspberry PI.
* Immutable data storage comes from the underlying blockchain.


## Post Session 1
### Energy-recycling Blockchain with Proof-of-Deep-Learning

#### 說明
Proof-of-Deep-Learning是我很感興趣的一篇poster,據作者說他們正在整理成paper要發表。為了解決Proof-of-Work的能源浪費,不要只是在空算block hash,他們提出用training model的方式來證明miner的工作量。
* Step 1 - 由model requester發布training dataset與initial mode,miner要去訓練這個model。
* Step 2 - 時間(e.g. block generation time)一到,所有人先將收集到的transaction與自身的model update打包成塊,廣播到全網,待同步後,model requester公布這輪的testing data到全網,選擇在testing data上accuracy或loss最好的作為贏家。
直到accuracy或loss過了幾輪都不再進步後,這個task即完成,換下一個model requester提出dataset與model。
#### 心得
我覺得這是個很有創意的想法,研究團隊認為PoW浪費太多能源,而提出PoDL,但是我認為會出現幾個問題:
* 計算能力強的電腦會一直贏。超級電腦(特別是擅長training的機器)很有可能因為能跑較多的epoch而一直贏每一輪的出塊機會。
* 需要很大的testing set。為了避免miner使用testing data訓練(overfit testing set),model requester需要準備很大的testing set,每次只公布部分的data來驗證training成效。
### CaIV: Cast-as-Intended Verifiability in Blockchain-based Voting
### Increasing Trust in Tor Node List Using Blockchain
### A Fault Resilient Consensus Protocol for Large Permissioned Blockchain Networks

### Towards Human-readable Smart Contracts
Moved to [Poster Session 7](https://hackmd.io/s/rkXw4VWpE#Poster-Session-7).
## ICBC 2019 Opening
Full paper acceptance rate: 19.6%






## Keynote Speech 1
### Blockchain-based Postal Services at Korea Post
Speaker: Seong Ju Kang (Korea Post)
Postal service
## Technical Session 2
### Incentives in Ethereum's Hybrid Casper Protocol
Speaker: Daniel Reijsbergen


#### 心得
藉由混用的方式讓Ethereum上的Capter可以達到完全的PoS,看起來很厲害,但我沒聽很懂。
### Quantum Bitcoin: An Anonymous, Distributed, and Secure Currency Secured by the No-Cloning Theorem of Quantum Mechanics
We can reconstruct a quantum state with a very hight probability.
> private-key money is not useful -> public-key quantum money can be verified by anyone
mini-scheme


Transactions are stored as the physical quantum states, no need to record transactions in the blockchain.
#### Two-stage mining
* quantum shard miner: mint quantum shards
* sell these shards on the marketplace
* quantum bitcoin miner
* shards have expired time
#### 心得
量子區塊鏈,超級潮,講者說現階段還無法實現,但是可以預想未來有量子電腦後,根據量子電腦的特性,區塊鏈該如何改變設計。舉例來說,量子區塊鏈不必紀錄所有的transactions,因為量子態極高機率可以被正確的還原,我們只要保留量子即可還原過去的歷史(因為沒學過量子力學,這段也許我有些誤會)。另外講者也描述該如何簽章,必須使用二階段的挖礦法,由quantum shard miner先挖quantum shard,賣到市場上再給quantum bitcoin miner使用,這部份我不太確定為什麼要這樣做。
### A Solution for the Rist of Non-Deterministic transactions in Hyperledger Fabric
Speaker: Shenbin Zhang (Fujitsu R&D Center)
#### 心得
記得去年的Blockchain 2018也有Fujitsu的人來講。Fujitsu R&D像IBM一樣,一直在探尋區塊鏈的可能性。他們這次提出用non-determinstic的方式提升Hyperledger Fabric的效率,也就是不care transaction order,來提升一次可以驗證的資料量。
只是最後Q&A時有人質疑,區塊鏈很重要的一個性質就是deterministic,現在反而不care這個是不是會有unfairness的情況發生。
## Technical Session 3
### Solving the Buyer and Seller’s Dilemma: A Dual-Deposit Escrow Smart Contract for Provably Cheat-Proof Delivery and Payment for a Digital Good without a Trusted Mediator
Speaker: Aditya Asgaonkar
Trust of buyer v.s. Trust of deliver
Attempt to solve the buy-deliver dilemma
* Legal systems
* Escrow services
* Reputation systems
Limitation
* h(data) has to be public
* Griefing factor

#### 心得
由賽局理論模型來分析「Buy-Deliver Dilemma」。
### Banklaves: Concept for a Trustworthy Decentralized Payment Service for Bitcoin
Speaker: Matthias Grundmann
Context: second layer architecture (internal transactions)
* Sidechains (requires trust in majority of miners)
* Smart contracts (do not hide transcation history)
* Payment services / wallet providers (require trust in central instance)
* Payment channel networks (valid routes have to exist) e.g. Teechain
All approaches present trade-off
Satoshi bookkeeping


### A Scalable Blockchain Approach for Trusted Computation and Verification Simulation in Multi-Party Collaborations
Speaker: Nelson Bore



## Panel 1
Panel是讓與會者跟專家討論的一個段落,首先每位被邀請的專家會先花約10分鐘分享各自的看法或研究領域,然後全部人再一起上台聊天,並回答與會者的問題。
### Blockchain Beyond Cryptocurrencies: Opportunities and Challenges
這位是Iota的現任首席研究員,located in the UK,約一兩個月前才上任的。



## Poster Session 2
### MTFS: Merkle-Tree-Based File System

### A Payment Channel Based Hybrid Decentralized Ethereum Token Exchange

#### 心得
我當初乍看之下,覺得它很像lightening network,其實不然,這個work是做自動交易搓合平台。可以說是個decentralized exchange platform。但缺點應該還是公鏈上昂貴的手續費吧 (?)
### Improving Vendor-managed Inventory Strategy Based on Internet of Things (IoT) Applications and Blockchain Technology
### Permissionless Blockchains and Secure Logging
### Peer-to-Peer EngergyTrade: A Distributed Private Energy Trading Platform

#### 心得
用區塊鏈做能源交易平台。能源,如:電力等等。
### Transparent Logging with Hyperledger Fabric

#### 心得
使用Hyperledger Fabric做使用者資料操作的log紀錄,很像我們ABH Project: Medical Data Exchange中,Ethereum的功用,對在這個平台上的操作進行紀錄。
### Demo
在旁邊demo區看到的,似曾相似的名字...

## Technical Session 4
### Mempool Attack
Speaker:
* Fee-based Design
* Age-based Design (not for fast transaction blockchain, e.g. Bitcoin ATM)



### Proof of Prestige
User pays prestige instead of coins.




### Transaction History Summarization
My work.
## Poster Session 3
### Detection of Tampered Images Using Blockchain Technology
### Digitizing Invoice and Managing VAT Payment Using Blockchain Smart Contract

#### 心得
對買賣交易進行紀錄。
### Lottery DApp from Multi-Randomness Extraction
### Towards Blockchain Interoperability: Improving Video Games Data Exchange

#### 心得
使用區塊鏈作為遊戲資料的儲存媒介。
### FPGALedger: FPGA based Decentralized Ledger for Enterprise Applications
### The Design of a Mobile Number Portability System on a Permissioned Private Blockchain Platform
# 5/16
## Short Paper Session
### Standardizing Smart Contracts: Automatically Inferring ERC Standards
Speaker: ?(only one)
Missed.

### Proof of Delivery in a Trustless Network
Motivation: after sender gives receiver data, the receiver can _lie_.
Micropayment: cons is that performance is poor for really small payment. (need to wait for a RTT)
#### Proof of Delivery

##### Trust Analysis
A receiver's trustworthiness is analyzed bu a sender based on the receiver's payment history on the blockchain.
##### Trust Window
TCP congestion window. Raise performance.
##### Fraud Detection and Isolation
A fraud is detected based on probabilistic sequential retrieval and its payment history. It will be removed from the network.

### Formal Verification of Token Economy Models
Speaker:
Action semantics

### Elasticoin: Low-Volatility Cryptocurrency with Proofs of Sequential Work
Speaker:





## Poster Session 4
### Sora: A Decentralized Autonomous Economy

### Blockchain based Proxy Re-Encryption Scheme for Secure IoT Data Sharing

### The Risks and Challenges of Implementing Ethereum Smart Contracts

#### 心得
對於開發Ethereum smart contract的要點進行摘要。
### Security Management and Visualization in a Blockchain-based Collaborative Defense

### On Using Blockchain Based Workflows
### Blockchain Explorer based on RPC-based Monitoring System

#### 心得
簡單來說,他們在做一個Blockchain Explorer,像是[blockchain.com](https://www.blockchain.com/)。
作者表示,他們希望做區塊鏈分析的研究,但首先需要一個高效率的資料庫來取得blockchain上的資料,每次重新讀取raw data是非常耗時的方法。他們把Bitcoin與Ethereum上的交易紀錄都建立成databse(基於MySQL),然後再寫一個前端介面供使用者簡單的檢視他們想查的資料。
我覺得就是一個很資料工程的work,很累,很基本,卻也很重要,沒有資料不用談分析。
## Keynote Speech 2
### Blockchain as a Businees Platform
Speaker: Sachiko Yoshihama (Watson Research -> IBM Research)
Permissionless blockchain v.s. Permissioned blockchain
Hyperledger Fabric
Supply chain: food chain, product chain


Integrity v.s. Privacy (E.g. Bitcoin, Altcoin)
Privacy protection on permissioned blockchain (Hyperledger Fabric)


#### Distributed consensus algorithm
* PBFT (tolerant to up to 1/3 of faulty nodes)
* Raft, PAXOS (crash tolerance only)

#### Smart Contract Development Tool (SCDL)
* Formal temporal logic based approach to define the correst behavior of contracts as a specification
* Monitor detects any deviation from the specification
#### Accumulator (derivative product)

Contract document -> Contract template ->DSL4SC (specification and implementation) (protocol+property+rule)
Web browser interface to control contracts
#### Conclusions
* Serious production systems
* Still many challenges
* DSL4SC https://ldltools.github.io

#### 心得
又見到這位來自IBM Japan的大姐。其實這次她一樣是介紹Hyperledger Fabric的應用場景,如food chain、product chain等等,許多供應鏈應用。比上次我聽到的多,但是大體來說是差不多的演講。此外,她還說明production-level的permissioned blockchain應該具備的性質,並介紹了幾種不同企業級的consensus algorithm,PBFT、Raft與PAXOS。最後介紹開源的smart contract開發驗證工具:DSL4SC,有興趣的話可以去看看。
## Technical Session 5
### Promoting Distributed Trust in Machine Learning and Computational Simulation
Speaker: Nelson Bore
Computing client -> Endorsers -> Orderer -> Blockchain
Machine Learning for Malaria Policy Interventions


#### 心得
算力共享的概念。透過blockchain來整合並充分利用世界上現有且閒置的算力,來做machine learning等需要大量運算資源的任務。
### A Response to the United Nations CITES Blockchain Challenge: Incremental and Integrative PoA-based Permit Exchange
Speaker: Anselm Busse
Missed.

### A Blockchain-based Scientific Publishing Platform
Speaker: Thomas Bocek

Eureka platform


Good UI is key!!!
Composed of token contract and platform contract.
Why do we need a blockchain for this?

#### Q&A
* It doesn't work for double-blind review.
* Reviewers are chosen by the editor or the area the author chooses.
* How to make sure the users do not collude? The review process is not fully automatical.
#### 心得
看到這個平台時,我第一個想到的就是Arxiv。Eureka想做一個全新的學術論文發表平台,從審稿、發表到訂閱都在這個平台上,透過smart contract完成。這個願景很大,然而,我認為最難的部分還是在如何匹配適當的paper與reviewers,如何防止authors背地裡去串reviewers,以及如何公平的收paper。
## Technical Session 6
Missed.
## Banquet
Missed.
# 5/17
## Technical Session 8
### Design of Trusted B2B Market Platforms using Permissioned Blockchain and Game Theory
Speaker: Shivika Narang
Blockchain + Homomorphism encryption
### Unleasing the Full Potential of Blockchain Technology for Security-Sensitive Business Applications
Speaker: ?



### Address Name system: Wallet Ownership Resolution Based On Reliable Self-Declaration
Didn't come.
## Poster Session 6
### Achieving Fairness in the Tangle through an Adaptive Rate Control Algorithm
### Usability and Security Analysis of the KeepKey Wallet

### Identification of Darknet Markets’ Bitcoin Addresses by Voting Per-address Classification Results

### Mint Centrality: A Centrality Measure for the Bitcoin Transaction Graph

### Various Perspectives in New Blockchain Design by Using Theory of Inventive Problem Solving
### A Landscape of Cryptocurrencies

BCH has only 171 followers on Twitter...

#### 心得
對主流的加密貨幣進行不同層面的比較,像是流通量、特性、受歡迎的程度等等。
## Keynote Speech 3
### Formal Design, Implementation and Verification of Blockchain Languages
Speaker: Grigore Rosu (UIUC)
Semantic rules given contextually.
As tests showed, performance is not an issue.
OCAML backend.

K semantic.
One formalism to write all languages and define all properties.



KEVM: semantics of the Ethereum Virtual Machine _under the UIUC License_
* https://github.com/kframework/evm-semantics
* Passes 60000+ tests
What can we do with KEVM?
1. Generate formal documentation: http://jellopaper.org
2. Generate and deploy correct-by-construction EVM client (IOHK has just done that, in collaboration with RV, in Cardano testnet)
3. Formally verify Ethereum smart contracts (RV is doing that)
Formalizing ERC20, ERC777, ... in K
* K is very expressive (can define languages, specifications, and protocols)
* All specs are language-independent
* Consynsys, DappHub, ETHWorks, Gnosis, ... use K




* Hard to fully illustrate a specification
* EVM not human readable
_A new virtual machine (and language) for the blockchain_
On going projects:
* Fast LLVM and IELE backend for K
* Semantics-based compilation
#### 心得
K框架。這個研究涵蓋的層面不只區塊鏈,儼然是一個全新的compiler。
講者是來自UIUC的大佬,過去幾年在開發「K Framework」,希望能一統programming language、specification與protocol,用一個框架來代表所有的事物。也剛好因為區塊鏈的興起,smart contract的流行,他也將K框架套用到smart contract上,並構築KEVM,希望能以人類更好理解的語言描述smart contract的行為。是讓我眼睛為之一亮的研究之一。
這項研究在過幾週的CTHPC上也被JServ提出來討論。
## Technical Session 9
### Probabilistic Smart Contracts: Secure Randomness on the Blockchain
Speaker: Amir Goharshady


#### Randomness
How to encourage randomness on the blockchain (e.g. Ethereum)?
> The lottery story
* No-redraw rule (by design)
* No-centralization rule (by design)
* Concurrency rule (commitment scheme: everyone should draw at the same time)
* Penalty rule (by design)
* Rule of 1 (due to XOR)
* Openness (anyone can register)
* Incentivization (due to the game: not only for participation but also for real uniformly random)
* Safety against malicious miners (block withholding, DoS)
There is a proved incentive that player wants to play uniformly randomly numbers.


#### Q&A
* A smart contract calls the service, it generates a random number, and the constract calls again to get the value.
#### 心得
作者從賽局的觀點來看如何維繫一個大家願意contribute to the read randomness的生態。很有趣且很新穎的想法。雖然我看得不是很懂,但這個或許是要在區塊鏈上實踐「隨機」這個概念的關鍵。
### Verifiable Smart Contract Portability
Speaker: Martin Westerkamp


Logic contract + Proxy contract + Initialization contract -> Verifiable
Smart contract migration
* Smart contract dependencies
* Resolving dependencies

### Dispute Resolution for Smart Contract-based Two-Party Protocols
Speaker: Eric Wagner



Use case 1: Trading digital goods

Use case 2: Atomic swap





## Technical Session 10
### FastFabric
Speaker: Christian Gorenflo
Verify multiple blocks at the same time.
https://github.com/cgorenflo/Fabric
* Branch fastfabric-1.4
#### 心得
一次驗證多個區塊以提升Hyperledger Fabric的效率。
## Poster Session 7
### Hermes: An Open and Transparent Marketplace for IoT Sensor Data over Distributed Ledgers
### Blockchain-Based Solution to Prevent Postage Stamps Fraud
Has been cooperating with Russian post offices.

#### 心得
這個俄國的團隊與俄國郵局合作,推出了郵票防偽的區塊鏈系統。且,他們對performance做了些分析,雖然結果顯示越多參與者將會使performance降低,但是跟郵票發行量相比,系統的performace依然遠大於現實的發行量。雖然,這個系統看起來沒用到很特別的技術。不過據他所說這套系統已經真的開始在推行中。
### On the specification and verification of atomic swap smart contracts
### On the Effectiveness of Multi-Token Economies
### Punishment not Reward: Disincentivising Blockchain Application Misbehaviour

#### 心得
列舉了區塊鏈應用的開發上該注意的要點、可能的問題、以及對應的解決方法。
### Towards Human-readable Smart Contracts
Moved from [Poster Session 1](https://hackmd.io/s/rkXw4VWpE#Poster-Session-1).
Spec -> Generator -> Smart Contract

#### 心得
其實就是讓使用者去填template-based的form,目前他完成ICO所需要的ERC-20 contract,可以填好表格後即發行貨幣。然而,smart contract可以有千百種,這種方式沒辦法涵蓋所有種類的smart contract,沒辦法真的任意由使用者下自然語言產生任意的smart contract,這是缺點。
## Distinguished Expert Panel.


## Best Paper Rewards & Closing
### Student Travel Grant
* Sina Rafati Niya
* Laurens Van Hoye
* Amir Kafshdar Goharshady
* Aditya Asgaonkar
* Eric Wagner
* Shivika Narang
* Matthias Grundmann
### Best Paper Award
Weighted Voting on the Blockchain: Improving Consensus in Proof of Stake Protocols


### Closing Ceremony
Next year: Toronto!
