SlideShare a Scribd company logo
1 of 24
Download to read offline
Smart Contracts are more than Objects:
Pro-activeness on the Blockchain
Giovanni Ciatto1 Alfredo Ma๏ฌƒ1 Stefano Mariani2
Andrea Omicini1
giovanni.ciatto@unibo.it alfredo.maffi@studio.unibo.it
stefano.mariani@unimore.it andrea.omicini@unibo.it
1Dipartimento di Informatica โ€“ Scienza e Ingegneriaโ€”Universit`a di Bologna
2Dipartimento di Scienze e Metodi dellโ€™Ingegneria, Universit`a di Modena e Reggio Emilia
1st International Congress on Blockchain and Applications
ยดAvila, Spain โ€“ June 27, 2019
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 1 / 20
Outline
1 The Problem with Blockchain Smart Contracts
2 Towards Pro-activity & Asynchrony
3 The Tenderfone Language & Interpreter
4 Tenderfone Internals: Overview
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 2 / 20
The Problem with Blockchain Smart Contracts
Next in Line. . .
1 The Problem with Blockchain Smart Contracts
2 Towards Pro-activity & Asynchrony
3 The Tenderfone Language & Interpreter
4 Tenderfone Internals: Overview
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 3 / 20
The Problem with Blockchain Smart Contracts
Context
Most recent and interesting BCT come with Smart Contracts (SC)
i.e., trusted, autonomous intermediaries for users transacting on BCT
inspired to Szaboโ€™s idea of self-enforcing contracts [Szabo, 1997]
an idea which is interesting even beyond ๏ฌnancial applications
e.g. for enforcing interaction protocols in multi agent systems
computationally interpreted through object orientated programming
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 4 / 20
The Problem with Blockchain Smart Contracts
Motivation
Our claim
The mainstream interpretation of SC as objects is inherently ๏ฌ‚awed
the method call semantics for SC comm. is subtle and bug-prone
e.g. Ethereumโ€™s unexpected recursion [Luu et al., 2016, Atzei et al., 2017]
as objects, SC are constrained in the sorts of things they can do
e.g. they are purely user-reative =โ‡’ no user invocation means no action
e.g. lack of time-reactiveness =โ‡’ no time-dependent behaviour
e.g. lack of pro-activeness =โ‡’ no initiative in rule enforcement
Main research questions
is OOP the best programming paradigm for SC?
is it possible to implement di๏ฌ€erent paradigms? How?
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 5 / 20
The Problem with Blockchain Smart Contracts
Motivation
Our claim
The mainstream interpretation of SC as objects is inherently ๏ฌ‚awed
the method call semantics for SC comm. is subtle and bug-prone
e.g. Ethereumโ€™s unexpected recursion [Luu et al., 2016, Atzei et al., 2017]
as objects, SC are constrained in the sorts of things they can do
e.g. they are purely user-reative =โ‡’ no user invocation means no action
e.g. lack of time-reactiveness =โ‡’ no time-dependent behaviour
e.g. lack of pro-activeness =โ‡’ no initiative in rule enforcement
Main research questions
is OOP the best programming paradigm for SC?
is it possible to implement di๏ฌ€erent paradigms? How?
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 5 / 20
Towards Pro-activity & Asynchrony
Next in Line. . .
1 The Problem with Blockchain Smart Contracts
2 Towards Pro-activity & Asynchrony
3 The Tenderfone Language & Interpreter
4 Tenderfone Internals: Overview
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 6 / 20
Towards Pro-activity & Asynchrony
Our Proposal
Endowing SC with pro-activity and asynchronous communication support
In this work we
model a minimal language for SC, supporting such features
develop a proof-of-concept SC interpreter (or VM) for it
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 7 / 20
Towards Pro-activity & Asynchrony
Our Proposal
Endowing SC with pro-activity and asynchronous communication support
In this work we
model a minimal language for SC, supporting such features
develop a proof-of-concept SC interpreter (or VM) for it
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 7 / 20
The Tenderfone Language & Interpreter
Next in Line. . .
1 The Problem with Blockchain Smart Contracts
2 Towards Pro-activity & Asynchrony
3 The Tenderfone Language & Interpreter
4 Tenderfone Internals: Overview
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 8 / 20
The Tenderfone Language & Interpreter
Tenderfone in a Nutshell
Layered perspective
Pro-active, logic SC
Tenderfone
Tendermint + tuProlog
Network
Our prototype for a SC interpreter
consists of a language for pro-active,
asynchronous, and logic-based smart
contracts
plus its operational semantics & an
interpreter implementing it
based on the Tendermint [Kwon, 2014]
consensus engine and the tuProlog
framework [Denti et al., 2001]
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 9 / 20
The Tenderfone Language & Interpreter
Execution Model โ€“ Toy Program Example
ยง
init([Delay | OtherArgs]) :-
now(Time),
Next is Time + Delay,
when(Next, foo).
receive(foo, Me) :-
self(Me),
periodically(10 min, bar).
receive(bar, Me) :-
/* does something
once every 10 min */.
receive(Message, Sender) :-
Answer = /* compute answer */,
send(Answer, Sender).
ยฆ ยฅ
U A B
deploy(Delay)
init([Delay])
when(Now + Delay, foo)
after Delay seconds
receive(foo, A)
periodically(10 min, bar)
once every 10 minutes
receive(bar, A)
do something periodic
in any moment
Message
receive(Message, B)
compute Answer
send(Answer, B)
Answer
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 10 / 20
The Tenderfone Language  Interpreter
How to Support the Desired Features
asynchronous communication
achieved by changing the semantics of the send/2 primitive
asynchronous computation
achieved by sending messages to self
time-awareness
provided by the now/1 predicate
time-reactiveness
provided by the delay/2 and periodically/2 primitives
pro-activeness
achieved through (delay/2 | periodically/2 | send/2) + init/1
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 11 / 20
Tenderfone Internals: Overview
Next in Line. . .
1 The Problem with Blockchain Smart Contracts
2 Towards Pro-activity  Asynchrony
3 The Tenderfone Language  Interpreter
4 Tenderfone Internals: Overview
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 12 / 20
Tenderfone Internals: Overview
Tenderfone System Architecture (coarse-grained) I
a number of clients, issuing transactions, served by a number of cores
which engage consensus, update the blockchain, and execute SC
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 13 / 20
Tenderfone Internals: Overview
Tenderfone System Architecture (coarse-grained) II
each core is actually composed by a validator and an interpreter
validators handle transactions, blocks, cryptography, etc
interpreters execute smart contracts
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 14 / 20
Tenderfone Internals: Overview
Asynchronous  Pro-Active SC through Spontaneous TX
beginBlock(Index, Time)
Scheduled := get_scheduled(Time)
to_tx(Scheduled) spontaneous!
for each Tx in current block
deliverTx(Tx)
State := execute(Tx, State)
Outbox += get_outgoing(State)
commitBlock()
to_tx(Outbox) spontaneous!
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 15 / 20
Tenderfone Internals: Overview
About Spontaneous TX
conceptually, they carry the messages / scheduled tasks of SC
in practice, they are produced by interpreters
technically, interpreters act as clients
for each message / scheduled task, n TX are actually produced
where n is the total amount of interpreters
Problem
Corrupt interpreters may forge spurious TX, thus faking SC triggers
โ†’ spontaneous TX are valid only if n copies exist
signed by as many interpreters
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 16 / 20
Tenderfone Internals: Overview
About Spontaneous TX
conceptually, they carry the messages / scheduled tasks of SC
in practice, they are produced by interpreters
technically, interpreters act as clients
for each message / scheduled task, n TX are actually produced
where n is the total amount of interpreters
Problem
Corrupt interpreters may forge spurious TX, thus faking SC triggers
โ†’ spontaneous TX are valid only if n copies exist
signed by as many interpreters
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 16 / 20
Conclusions and Future Work
Conclusion
Summarising, we
discuss how SC need pro-activity, time-reactiveness and asynchrony
de๏ฌne a language for SC with such features
describe how an interpreter for such SC should work
provide a prototype implementation
In the future, we plan to
provide a formal operational semantics for Tenderfone
endow SC with higher-level coordination/synchronisation mechanisms
extend Tenderfone to support HyperLedger Fabricโ€™s architecture
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 17 / 20
Conclusions and Future Work
Conclusion
Summarising, we
discuss how SC need pro-activity, time-reactiveness and asynchrony
de๏ฌne a language for SC with such features
describe how an interpreter for such SC should work
provide a prototype implementation
In the future, we plan to
provide a formal operational semantics for Tenderfone
endow SC with higher-level coordination/synchronisation mechanisms
extend Tenderfone to support HyperLedger Fabricโ€™s architecture
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 17 / 20
Smart Contracts are more than Objects:
Pro-activeness on the Blockchain
Giovanni Ciatto1 Alfredo Ma๏ฌƒ1 Stefano Mariani2
Andrea Omicini1
giovanni.ciatto@unibo.it alfredo.maffi@studio.unibo.it
stefano.mariani@unimore.it andrea.omicini@unibo.it
1Dipartimento di Informatica โ€“ Scienza e Ingegneriaโ€”Universit`a di Bologna
2Dipartimento di Scienze e Metodi dellโ€™Ingegneria, Universit`a di Modena e Reggio Emilia
1st International Congress on Blockchain and Applications
ยดAvila, Spain โ€“ June 27, 2019
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 18 / 20
References
References I
Atzei, N., Bartoletti, M., and Cimoli, T. (2017).
A survey of attacks on Ethereum smart contracts (SoK).
In Principles of Security and Trust, volume 10204 of LNCS, pages 164โ€“186.
Springer.
Denti, E., Omicini, A., and Ricci, A. (2001).
tuProlog: A light-weight Prolog for Internet applications and infrastructures.
In Practical Aspects of Declarative Languages, volume 1990 of LNCS, pages
184โ€“198. Springer.
Kwon, J. (2014).
Tendermint: Consensus without mining.
Luu, L., Chu, D.-H., Olickel, H., Saxena, P., and Hobor, A. (2016).
Making smart contracts smarter.
In 2016 ACM SIGSAC Conference on Computer and Communications Security
(CCSโ€™16), pages 254โ€“269, New York, NY, USA. ACM Press.
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 19 / 20
References
References II
Szabo, N. (1997).
Formalizing and securing relationships on public networks.
First Monday, 2(9).
Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 20 / 20

More Related Content

What's hot

Blockchain Use Cases In Business
Blockchain Use Cases In BusinessBlockchain Use Cases In Business
Blockchain Use Cases In BusinessJohan Zammit
ย 
Blockchain Use Cases: Think of a "Public" Pub/Sub Queue
Blockchain Use Cases: Think of a "Public" Pub/Sub QueueBlockchain Use Cases: Think of a "Public" Pub/Sub Queue
Blockchain Use Cases: Think of a "Public" Pub/Sub QueueAltoros
ย 
Blockchain and io t in carbon credit management
Blockchain and io t in carbon credit managementBlockchain and io t in carbon credit management
Blockchain and io t in carbon credit managementYuri Anisimov
ย 
BONIK : A Blockchain Empowered Chatbot for Financial Transactions
BONIK : A Blockchain Empowered Chatbot for Financial TransactionsBONIK : A Blockchain Empowered Chatbot for Financial Transactions
BONIK : A Blockchain Empowered Chatbot for Financial TransactionsMdSaifulIslamBhuiyan4
ย 
Blockchain in Commercial Insurance
Blockchain in Commercial InsuranceBlockchain in Commercial Insurance
Blockchain in Commercial InsuranceGary Nuttall MBCS CITP
ย 
Making Lemonade out of Lemons: Squeezing utility from a proof-of-work experiment
Making Lemonade out of Lemons: Squeezing utility from a proof-of-work experimentMaking Lemonade out of Lemons: Squeezing utility from a proof-of-work experiment
Making Lemonade out of Lemons: Squeezing utility from a proof-of-work experimentTim Swanson
ย 
Future of money
Future of moneyFuture of money
Future of moneyMike Hearn
ย 
The Nuances of Tokenization: A brief explanation on attempts from this past d...
The Nuances of Tokenization: A brief explanation on attempts from this past d...The Nuances of Tokenization: A brief explanation on attempts from this past d...
The Nuances of Tokenization: A brief explanation on attempts from this past d...Tim Swanson
ย 
Blockchain Organiseren
Blockchain OrganiserenBlockchain Organiseren
Blockchain OrganiserenKoen Vingerhoets
ย 
13 chromaway or perelman future of house sales
13 chromaway or perelman future of house sales13 chromaway or perelman future of house sales
13 chromaway or perelman future of house salesWalter Strametz
ย 
The Continued Existence of Altcoins, Appcoins and Commodity coins
The Continued Existence of Altcoins, Appcoins and Commodity coinsThe Continued Existence of Altcoins, Appcoins and Commodity coins
The Continued Existence of Altcoins, Appcoins and Commodity coinsTim Swanson
ย 
What Is A Smart Contract, And How Does It Work
What Is A Smart Contract, And How Does It Work What Is A Smart Contract, And How Does It Work
What Is A Smart Contract, And How Does It Work Blockchain Council
ย 
The best smart contract platforms in 2021
The best smart contract platforms in 2021The best smart contract platforms in 2021
The best smart contract platforms in 2021OliviaJune1
ย 
Moving Beyond BINO Beta
Moving Beyond BINO BetaMoving Beyond BINO Beta
Moving Beyond BINO BetaTim Swanson
ย 
9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IO
9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IO9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IO
9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IOBlockStars.io
ย 
Code is not law
Code is not lawCode is not law
Code is not lawTim Swanson
ย 
Blockchain @ ArenA Live (Knight Moves - 26 October)
Blockchain @ ArenA Live (Knight Moves - 26 October)Blockchain @ ArenA Live (Knight Moves - 26 October)
Blockchain @ ArenA Live (Knight Moves - 26 October)Koen Vingerhoets
ย 
Blockchain @ Capitant FinTech Day Antwerp
Blockchain @ Capitant FinTech Day AntwerpBlockchain @ Capitant FinTech Day Antwerp
Blockchain @ Capitant FinTech Day AntwerpKoen Vingerhoets
ย 
State of Digital Assets May 2019 - Blockshine Singapore
State of Digital Assets May 2019 - Blockshine SingaporeState of Digital Assets May 2019 - Blockshine Singapore
State of Digital Assets May 2019 - Blockshine SingaporeRandeep Melhi
ย 
Columbia Law School - Decentralized Ledgers Presentation on 4/7/2014
Columbia Law School - Decentralized Ledgers Presentation on 4/7/2014Columbia Law School - Decentralized Ledgers Presentation on 4/7/2014
Columbia Law School - Decentralized Ledgers Presentation on 4/7/2014Ldger, Inc
ย 

What's hot (20)

Blockchain Use Cases In Business
Blockchain Use Cases In BusinessBlockchain Use Cases In Business
Blockchain Use Cases In Business
ย 
Blockchain Use Cases: Think of a "Public" Pub/Sub Queue
Blockchain Use Cases: Think of a "Public" Pub/Sub QueueBlockchain Use Cases: Think of a "Public" Pub/Sub Queue
Blockchain Use Cases: Think of a "Public" Pub/Sub Queue
ย 
Blockchain and io t in carbon credit management
Blockchain and io t in carbon credit managementBlockchain and io t in carbon credit management
Blockchain and io t in carbon credit management
ย 
BONIK : A Blockchain Empowered Chatbot for Financial Transactions
BONIK : A Blockchain Empowered Chatbot for Financial TransactionsBONIK : A Blockchain Empowered Chatbot for Financial Transactions
BONIK : A Blockchain Empowered Chatbot for Financial Transactions
ย 
Blockchain in Commercial Insurance
Blockchain in Commercial InsuranceBlockchain in Commercial Insurance
Blockchain in Commercial Insurance
ย 
Making Lemonade out of Lemons: Squeezing utility from a proof-of-work experiment
Making Lemonade out of Lemons: Squeezing utility from a proof-of-work experimentMaking Lemonade out of Lemons: Squeezing utility from a proof-of-work experiment
Making Lemonade out of Lemons: Squeezing utility from a proof-of-work experiment
ย 
Future of money
Future of moneyFuture of money
Future of money
ย 
The Nuances of Tokenization: A brief explanation on attempts from this past d...
The Nuances of Tokenization: A brief explanation on attempts from this past d...The Nuances of Tokenization: A brief explanation on attempts from this past d...
The Nuances of Tokenization: A brief explanation on attempts from this past d...
ย 
Blockchain Organiseren
Blockchain OrganiserenBlockchain Organiseren
Blockchain Organiseren
ย 
13 chromaway or perelman future of house sales
13 chromaway or perelman future of house sales13 chromaway or perelman future of house sales
13 chromaway or perelman future of house sales
ย 
The Continued Existence of Altcoins, Appcoins and Commodity coins
The Continued Existence of Altcoins, Appcoins and Commodity coinsThe Continued Existence of Altcoins, Appcoins and Commodity coins
The Continued Existence of Altcoins, Appcoins and Commodity coins
ย 
What Is A Smart Contract, And How Does It Work
What Is A Smart Contract, And How Does It Work What Is A Smart Contract, And How Does It Work
What Is A Smart Contract, And How Does It Work
ย 
The best smart contract platforms in 2021
The best smart contract platforms in 2021The best smart contract platforms in 2021
The best smart contract platforms in 2021
ย 
Moving Beyond BINO Beta
Moving Beyond BINO BetaMoving Beyond BINO Beta
Moving Beyond BINO Beta
ย 
9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IO
9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IO9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IO
9 BUILDING BLOCKS FOR A SUCCESSFUL BLOCKCHAIN INDUSTRY | BLOCKSTARS.IO
ย 
Code is not law
Code is not lawCode is not law
Code is not law
ย 
Blockchain @ ArenA Live (Knight Moves - 26 October)
Blockchain @ ArenA Live (Knight Moves - 26 October)Blockchain @ ArenA Live (Knight Moves - 26 October)
Blockchain @ ArenA Live (Knight Moves - 26 October)
ย 
Blockchain @ Capitant FinTech Day Antwerp
Blockchain @ Capitant FinTech Day AntwerpBlockchain @ Capitant FinTech Day Antwerp
Blockchain @ Capitant FinTech Day Antwerp
ย 
State of Digital Assets May 2019 - Blockshine Singapore
State of Digital Assets May 2019 - Blockshine SingaporeState of Digital Assets May 2019 - Blockshine Singapore
State of Digital Assets May 2019 - Blockshine Singapore
ย 
Columbia Law School - Decentralized Ledgers Presentation on 4/7/2014
Columbia Law School - Decentralized Ledgers Presentation on 4/7/2014Columbia Law School - Decentralized Ledgers Presentation on 4/7/2014
Columbia Law School - Decentralized Ledgers Presentation on 4/7/2014
ย 

Similar to Smart Contracts are More than Objects: Pro-activeness on the Blockchain

Towards Agent-oriented Blockchains: Autonomous Smart Contracts
Towards Agent-oriented Blockchains: Autonomous Smart ContractsTowards Agent-oriented Blockchains: Autonomous Smart Contracts
Towards Agent-oriented Blockchains: Autonomous Smart ContractsGiovanni Ciatto
ย 
From the Blockchain to Logic Programming and back: Research perspectives
From the Blockchain to Logic Programming and back: Research perspectivesFrom the Blockchain to Logic Programming and back: Research perspectives
From the Blockchain to Logic Programming and back: Research perspectivesGiovanni Ciatto
ย 
TuSoW: Tuple Spaces for Edge Computing
TuSoW: Tuple Spaces for Edge ComputingTuSoW: Tuple Spaces for Edge Computing
TuSoW: Tuple Spaces for Edge ComputingGiovanni Ciatto
ย 
Blockchain and Smart Contracts
Blockchain and Smart ContractsBlockchain and Smart Contracts
Blockchain and Smart ContractsGiovanni Ciatto
ย 
IP TV
IP TVIP TV
IP TVBerti Seli
ย 
Towards XMAS: eXplainability through Multi-Agent Systems
Towards XMAS: eXplainability through Multi-Agent SystemsTowards XMAS: eXplainability through Multi-Agent Systems
Towards XMAS: eXplainability through Multi-Agent SystemsGiovanni Ciatto
ย 
IRJET- Consensus Mechanism on Secure Challenges in Blockchain Networks
IRJET-  	  Consensus Mechanism on Secure Challenges in Blockchain NetworksIRJET-  	  Consensus Mechanism on Secure Challenges in Blockchain Networks
IRJET- Consensus Mechanism on Secure Challenges in Blockchain NetworksIRJET Journal
ย 
Comparative Analysis of Blockchain Technologies under a Coordination Perspective
Comparative Analysis of Blockchain Technologies under a Coordination PerspectiveComparative Analysis of Blockchain Technologies under a Coordination Perspective
Comparative Analysis of Blockchain Technologies under a Coordination PerspectiveGiovanni Ciatto
ย 
A Research Paper on HUMAN MACHINE CONVERSATION USING CHATBOT
A Research Paper on HUMAN MACHINE CONVERSATION USING CHATBOTA Research Paper on HUMAN MACHINE CONVERSATION USING CHATBOT
A Research Paper on HUMAN MACHINE CONVERSATION USING CHATBOTIRJET Journal
ย 
Permissioned and Permissionless Blockchain A game Changer
 Permissioned and Permissionless Blockchain   A game Changer Permissioned and Permissionless Blockchain   A game Changer
Permissioned and Permissionless Blockchain A game ChangerJaskaranSingh471091
ย 
Logic Programming in Space-Time: The Case of Situatedness in LPaaS
Logic Programming in Space-Time: The Case of Situatedness in LPaaSLogic Programming in Space-Time: The Case of Situatedness in LPaaS
Logic Programming in Space-Time: The Case of Situatedness in LPaaSGiovanni Ciatto
ย 
Internet of Things 10 (2020) 10 0 081 Contents lists avail.docx
Internet of Things 10 (2020) 10 0 081 Contents lists avail.docxInternet of Things 10 (2020) 10 0 081 Contents lists avail.docx
Internet of Things 10 (2020) 10 0 081 Contents lists avail.docxLaticiaGrissomzz
ย 
Blockchain technology and applications from a financial perspective
Blockchain technology and applications from a financial perspectiveBlockchain technology and applications from a financial perspective
Blockchain technology and applications from a financial perspectiveTommaso Pellizzari
ย 
Blockchain technology and applications from a financial perspective
Blockchain technology and applications from a financial perspectiveBlockchain technology and applications from a financial perspective
Blockchain technology and applications from a financial perspectiveVittorio Zinetti
ย 
์Šค๋งˆํŠธ ๋””๋ฐ”์ด์Šค ํ˜„ํ™ฉ_๋ฐ__์ „์ž์ •๋ถ€์—_๋Œ€ํ•œ_์ œ์–ธ
์Šค๋งˆํŠธ ๋””๋ฐ”์ด์Šค ํ˜„ํ™ฉ_๋ฐ__์ „์ž์ •๋ถ€์—_๋Œ€ํ•œ_์ œ์–ธ์Šค๋งˆํŠธ ๋””๋ฐ”์ด์Šค ํ˜„ํ™ฉ_๋ฐ__์ „์ž์ •๋ถ€์—_๋Œ€ํ•œ_์ œ์–ธ
์Šค๋งˆํŠธ ๋””๋ฐ”์ด์Šค ํ˜„ํ™ฉ_๋ฐ__์ „์ž์ •๋ถ€์—_๋Œ€ํ•œ_์ œ์–ธGori Communication
ย 
Epics qt application peer reviews
Epics qt application peer reviewsEpics qt application peer reviews
Epics qt application peer reviewsRobert-Emmanuel Mayssat
ย 
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...Andrea Omicini
ย 
TESTING
TESTINGTESTING
TESTINGshafierosli
ย 
LBSNov2.pptx
LBSNov2.pptxLBSNov2.pptx
LBSNov2.pptxswateerawat06
ย 
EU actions on Bockchain- Moving beyond the Hype
EU actions on Bockchain- Moving beyond the Hype EU actions on Bockchain- Moving beyond the Hype
EU actions on Bockchain- Moving beyond the Hype Soren Gigler
ย 

Similar to Smart Contracts are More than Objects: Pro-activeness on the Blockchain (20)

Towards Agent-oriented Blockchains: Autonomous Smart Contracts
Towards Agent-oriented Blockchains: Autonomous Smart ContractsTowards Agent-oriented Blockchains: Autonomous Smart Contracts
Towards Agent-oriented Blockchains: Autonomous Smart Contracts
ย 
From the Blockchain to Logic Programming and back: Research perspectives
From the Blockchain to Logic Programming and back: Research perspectivesFrom the Blockchain to Logic Programming and back: Research perspectives
From the Blockchain to Logic Programming and back: Research perspectives
ย 
TuSoW: Tuple Spaces for Edge Computing
TuSoW: Tuple Spaces for Edge ComputingTuSoW: Tuple Spaces for Edge Computing
TuSoW: Tuple Spaces for Edge Computing
ย 
Blockchain and Smart Contracts
Blockchain and Smart ContractsBlockchain and Smart Contracts
Blockchain and Smart Contracts
ย 
IP TV
IP TVIP TV
IP TV
ย 
Towards XMAS: eXplainability through Multi-Agent Systems
Towards XMAS: eXplainability through Multi-Agent SystemsTowards XMAS: eXplainability through Multi-Agent Systems
Towards XMAS: eXplainability through Multi-Agent Systems
ย 
IRJET- Consensus Mechanism on Secure Challenges in Blockchain Networks
IRJET-  	  Consensus Mechanism on Secure Challenges in Blockchain NetworksIRJET-  	  Consensus Mechanism on Secure Challenges in Blockchain Networks
IRJET- Consensus Mechanism on Secure Challenges in Blockchain Networks
ย 
Comparative Analysis of Blockchain Technologies under a Coordination Perspective
Comparative Analysis of Blockchain Technologies under a Coordination PerspectiveComparative Analysis of Blockchain Technologies under a Coordination Perspective
Comparative Analysis of Blockchain Technologies under a Coordination Perspective
ย 
A Research Paper on HUMAN MACHINE CONVERSATION USING CHATBOT
A Research Paper on HUMAN MACHINE CONVERSATION USING CHATBOTA Research Paper on HUMAN MACHINE CONVERSATION USING CHATBOT
A Research Paper on HUMAN MACHINE CONVERSATION USING CHATBOT
ย 
Permissioned and Permissionless Blockchain A game Changer
 Permissioned and Permissionless Blockchain   A game Changer Permissioned and Permissionless Blockchain   A game Changer
Permissioned and Permissionless Blockchain A game Changer
ย 
Logic Programming in Space-Time: The Case of Situatedness in LPaaS
Logic Programming in Space-Time: The Case of Situatedness in LPaaSLogic Programming in Space-Time: The Case of Situatedness in LPaaS
Logic Programming in Space-Time: The Case of Situatedness in LPaaS
ย 
Internet of Things 10 (2020) 10 0 081 Contents lists avail.docx
Internet of Things 10 (2020) 10 0 081 Contents lists avail.docxInternet of Things 10 (2020) 10 0 081 Contents lists avail.docx
Internet of Things 10 (2020) 10 0 081 Contents lists avail.docx
ย 
Blockchain technology and applications from a financial perspective
Blockchain technology and applications from a financial perspectiveBlockchain technology and applications from a financial perspective
Blockchain technology and applications from a financial perspective
ย 
Blockchain technology and applications from a financial perspective
Blockchain technology and applications from a financial perspectiveBlockchain technology and applications from a financial perspective
Blockchain technology and applications from a financial perspective
ย 
์Šค๋งˆํŠธ ๋””๋ฐ”์ด์Šค ํ˜„ํ™ฉ_๋ฐ__์ „์ž์ •๋ถ€์—_๋Œ€ํ•œ_์ œ์–ธ
์Šค๋งˆํŠธ ๋””๋ฐ”์ด์Šค ํ˜„ํ™ฉ_๋ฐ__์ „์ž์ •๋ถ€์—_๋Œ€ํ•œ_์ œ์–ธ์Šค๋งˆํŠธ ๋””๋ฐ”์ด์Šค ํ˜„ํ™ฉ_๋ฐ__์ „์ž์ •๋ถ€์—_๋Œ€ํ•œ_์ œ์–ธ
์Šค๋งˆํŠธ ๋””๋ฐ”์ด์Šค ํ˜„ํ™ฉ_๋ฐ__์ „์ž์ •๋ถ€์—_๋Œ€ํ•œ_์ œ์–ธ
ย 
Epics qt application peer reviews
Epics qt application peer reviewsEpics qt application peer reviews
Epics qt application peer reviews
ย 
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
Novel Opportunities for Tuple-based Coordination: XPath, the Blockchain, and ...
ย 
TESTING
TESTINGTESTING
TESTING
ย 
LBSNov2.pptx
LBSNov2.pptxLBSNov2.pptx
LBSNov2.pptx
ย 
EU actions on Bockchain- Moving beyond the Hype
EU actions on Bockchain- Moving beyond the Hype EU actions on Bockchain- Moving beyond the Hype
EU actions on Bockchain- Moving beyond the Hype
ย 

Recently uploaded

VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...SUHANI PANDEY
ย 
Enjoy NightโšกCall Girls Dlf City Phase 3 Gurgaon >เผ’8448380779 Escort Service
Enjoy NightโšกCall Girls Dlf City Phase 3 Gurgaon >เผ’8448380779 Escort ServiceEnjoy NightโšกCall Girls Dlf City Phase 3 Gurgaon >เผ’8448380779 Escort Service
Enjoy NightโšกCall Girls Dlf City Phase 3 Gurgaon >เผ’8448380779 Escort ServiceDelhi Call girls
ย 
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...SUHANI PANDEY
ย 
Top Rated Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...Call Girls in Nagpur High Profile
ย 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge GraphsEleniIlkou
ย 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024APNIC
ย 
Call Girls In Defence Colony Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
Call Girls In Defence Colony Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”Call Girls In Defence Colony Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
Call Girls In Defence Colony Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”soniya singh
ย 
Hot Call Girls |Delhi |Hauz Khas โ˜Ž 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas โ˜Ž 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas โ˜Ž 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas โ˜Ž 9711199171 Book Your One night Standkumarajju5765
ย 
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)Delhi Call girls
ย 
Call Girls In Ashram Chowk Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
Call Girls In Ashram Chowk Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”Call Girls In Ashram Chowk Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
Call Girls In Ashram Chowk Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”soniya singh
ย 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Servicesexy call girls service in goa
ย 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
ย 
Call Girls Service Chandigarh Lucky โค๏ธ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky โค๏ธ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky โค๏ธ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky โค๏ธ 7710465962 Independent Call Girls In C...Sheetaleventcompany
ย 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableSeo
ย 
Call Now โ˜Ž 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now โ˜Ž 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.Call Now โ˜Ž 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now โ˜Ž 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.soniya singh
ย 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...SUHANI PANDEY
ย 
โ‚น5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] ๐Ÿ”|97111...
โ‚น5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] ๐Ÿ”|97111...โ‚น5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] ๐Ÿ”|97111...
โ‚น5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] ๐Ÿ”|97111...Diya Sharma
ย 
Al Barsha Night Partner +0567686026 Call Girls Dubai
Al Barsha Night Partner +0567686026 Call Girls  DubaiAl Barsha Night Partner +0567686026 Call Girls  Dubai
Al Barsha Night Partner +0567686026 Call Girls DubaiEscorts Call Girls
ย 

Recently uploaded (20)

VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
ย 
Enjoy NightโšกCall Girls Dlf City Phase 3 Gurgaon >เผ’8448380779 Escort Service
Enjoy NightโšกCall Girls Dlf City Phase 3 Gurgaon >เผ’8448380779 Escort ServiceEnjoy NightโšกCall Girls Dlf City Phase 3 Gurgaon >เผ’8448380779 Escort Service
Enjoy NightโšกCall Girls Dlf City Phase 3 Gurgaon >เผ’8448380779 Escort Service
ย 
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
ย 
Top Rated Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...
ย 
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
ย 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
ย 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
ย 
Call Girls In Defence Colony Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
Call Girls In Defence Colony Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”Call Girls In Defence Colony Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
Call Girls In Defence Colony Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
ย 
Hot Call Girls |Delhi |Hauz Khas โ˜Ž 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas โ˜Ž 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas โ˜Ž 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas โ˜Ž 9711199171 Book Your One night Stand
ย 
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
ย 
Call Girls In Ashram Chowk Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
Call Girls In Ashram Chowk Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”Call Girls In Ashram Chowk Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
Call Girls In Ashram Chowk Delhi ๐Ÿ’ฏCall Us ๐Ÿ”8264348440๐Ÿ”
ย 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
ย 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
ย 
Call Girls Service Chandigarh Lucky โค๏ธ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky โค๏ธ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky โค๏ธ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky โค๏ธ 7710465962 Independent Call Girls In C...
ย 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
ย 
Call Now โ˜Ž 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now โ˜Ž 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.Call Now โ˜Ž 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now โ˜Ž 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
ย 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
ย 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
ย 
โ‚น5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] ๐Ÿ”|97111...
โ‚น5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] ๐Ÿ”|97111...โ‚น5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] ๐Ÿ”|97111...
โ‚น5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] ๐Ÿ”|97111...
ย 
Al Barsha Night Partner +0567686026 Call Girls Dubai
Al Barsha Night Partner +0567686026 Call Girls  DubaiAl Barsha Night Partner +0567686026 Call Girls  Dubai
Al Barsha Night Partner +0567686026 Call Girls Dubai
ย 

Smart Contracts are More than Objects: Pro-activeness on the Blockchain

  • 1. Smart Contracts are more than Objects: Pro-activeness on the Blockchain Giovanni Ciatto1 Alfredo Ma๏ฌƒ1 Stefano Mariani2 Andrea Omicini1 giovanni.ciatto@unibo.it alfredo.maffi@studio.unibo.it stefano.mariani@unimore.it andrea.omicini@unibo.it 1Dipartimento di Informatica โ€“ Scienza e Ingegneriaโ€”Universit`a di Bologna 2Dipartimento di Scienze e Metodi dellโ€™Ingegneria, Universit`a di Modena e Reggio Emilia 1st International Congress on Blockchain and Applications ยดAvila, Spain โ€“ June 27, 2019 Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 1 / 20
  • 2. Outline 1 The Problem with Blockchain Smart Contracts 2 Towards Pro-activity & Asynchrony 3 The Tenderfone Language & Interpreter 4 Tenderfone Internals: Overview Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 2 / 20
  • 3. The Problem with Blockchain Smart Contracts Next in Line. . . 1 The Problem with Blockchain Smart Contracts 2 Towards Pro-activity & Asynchrony 3 The Tenderfone Language & Interpreter 4 Tenderfone Internals: Overview Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 3 / 20
  • 4. The Problem with Blockchain Smart Contracts Context Most recent and interesting BCT come with Smart Contracts (SC) i.e., trusted, autonomous intermediaries for users transacting on BCT inspired to Szaboโ€™s idea of self-enforcing contracts [Szabo, 1997] an idea which is interesting even beyond ๏ฌnancial applications e.g. for enforcing interaction protocols in multi agent systems computationally interpreted through object orientated programming Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 4 / 20
  • 5. The Problem with Blockchain Smart Contracts Motivation Our claim The mainstream interpretation of SC as objects is inherently ๏ฌ‚awed the method call semantics for SC comm. is subtle and bug-prone e.g. Ethereumโ€™s unexpected recursion [Luu et al., 2016, Atzei et al., 2017] as objects, SC are constrained in the sorts of things they can do e.g. they are purely user-reative =โ‡’ no user invocation means no action e.g. lack of time-reactiveness =โ‡’ no time-dependent behaviour e.g. lack of pro-activeness =โ‡’ no initiative in rule enforcement Main research questions is OOP the best programming paradigm for SC? is it possible to implement di๏ฌ€erent paradigms? How? Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 5 / 20
  • 6. The Problem with Blockchain Smart Contracts Motivation Our claim The mainstream interpretation of SC as objects is inherently ๏ฌ‚awed the method call semantics for SC comm. is subtle and bug-prone e.g. Ethereumโ€™s unexpected recursion [Luu et al., 2016, Atzei et al., 2017] as objects, SC are constrained in the sorts of things they can do e.g. they are purely user-reative =โ‡’ no user invocation means no action e.g. lack of time-reactiveness =โ‡’ no time-dependent behaviour e.g. lack of pro-activeness =โ‡’ no initiative in rule enforcement Main research questions is OOP the best programming paradigm for SC? is it possible to implement di๏ฌ€erent paradigms? How? Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 5 / 20
  • 7. Towards Pro-activity & Asynchrony Next in Line. . . 1 The Problem with Blockchain Smart Contracts 2 Towards Pro-activity & Asynchrony 3 The Tenderfone Language & Interpreter 4 Tenderfone Internals: Overview Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 6 / 20
  • 8. Towards Pro-activity & Asynchrony Our Proposal Endowing SC with pro-activity and asynchronous communication support In this work we model a minimal language for SC, supporting such features develop a proof-of-concept SC interpreter (or VM) for it Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 7 / 20
  • 9. Towards Pro-activity & Asynchrony Our Proposal Endowing SC with pro-activity and asynchronous communication support In this work we model a minimal language for SC, supporting such features develop a proof-of-concept SC interpreter (or VM) for it Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 7 / 20
  • 10. The Tenderfone Language & Interpreter Next in Line. . . 1 The Problem with Blockchain Smart Contracts 2 Towards Pro-activity & Asynchrony 3 The Tenderfone Language & Interpreter 4 Tenderfone Internals: Overview Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 8 / 20
  • 11. The Tenderfone Language & Interpreter Tenderfone in a Nutshell Layered perspective Pro-active, logic SC Tenderfone Tendermint + tuProlog Network Our prototype for a SC interpreter consists of a language for pro-active, asynchronous, and logic-based smart contracts plus its operational semantics & an interpreter implementing it based on the Tendermint [Kwon, 2014] consensus engine and the tuProlog framework [Denti et al., 2001] Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 9 / 20
  • 12. The Tenderfone Language & Interpreter Execution Model โ€“ Toy Program Example ยง init([Delay | OtherArgs]) :- now(Time), Next is Time + Delay, when(Next, foo). receive(foo, Me) :- self(Me), periodically(10 min, bar). receive(bar, Me) :- /* does something once every 10 min */. receive(Message, Sender) :- Answer = /* compute answer */, send(Answer, Sender). ยฆ ยฅ U A B deploy(Delay) init([Delay]) when(Now + Delay, foo) after Delay seconds receive(foo, A) periodically(10 min, bar) once every 10 minutes receive(bar, A) do something periodic in any moment Message receive(Message, B) compute Answer send(Answer, B) Answer Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 10 / 20
  • 13. The Tenderfone Language Interpreter How to Support the Desired Features asynchronous communication achieved by changing the semantics of the send/2 primitive asynchronous computation achieved by sending messages to self time-awareness provided by the now/1 predicate time-reactiveness provided by the delay/2 and periodically/2 primitives pro-activeness achieved through (delay/2 | periodically/2 | send/2) + init/1 Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 11 / 20
  • 14. Tenderfone Internals: Overview Next in Line. . . 1 The Problem with Blockchain Smart Contracts 2 Towards Pro-activity Asynchrony 3 The Tenderfone Language Interpreter 4 Tenderfone Internals: Overview Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 12 / 20
  • 15. Tenderfone Internals: Overview Tenderfone System Architecture (coarse-grained) I a number of clients, issuing transactions, served by a number of cores which engage consensus, update the blockchain, and execute SC Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 13 / 20
  • 16. Tenderfone Internals: Overview Tenderfone System Architecture (coarse-grained) II each core is actually composed by a validator and an interpreter validators handle transactions, blocks, cryptography, etc interpreters execute smart contracts Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 14 / 20
  • 17. Tenderfone Internals: Overview Asynchronous Pro-Active SC through Spontaneous TX beginBlock(Index, Time) Scheduled := get_scheduled(Time) to_tx(Scheduled) spontaneous! for each Tx in current block deliverTx(Tx) State := execute(Tx, State) Outbox += get_outgoing(State) commitBlock() to_tx(Outbox) spontaneous! Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 15 / 20
  • 18. Tenderfone Internals: Overview About Spontaneous TX conceptually, they carry the messages / scheduled tasks of SC in practice, they are produced by interpreters technically, interpreters act as clients for each message / scheduled task, n TX are actually produced where n is the total amount of interpreters Problem Corrupt interpreters may forge spurious TX, thus faking SC triggers โ†’ spontaneous TX are valid only if n copies exist signed by as many interpreters Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 16 / 20
  • 19. Tenderfone Internals: Overview About Spontaneous TX conceptually, they carry the messages / scheduled tasks of SC in practice, they are produced by interpreters technically, interpreters act as clients for each message / scheduled task, n TX are actually produced where n is the total amount of interpreters Problem Corrupt interpreters may forge spurious TX, thus faking SC triggers โ†’ spontaneous TX are valid only if n copies exist signed by as many interpreters Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 16 / 20
  • 20. Conclusions and Future Work Conclusion Summarising, we discuss how SC need pro-activity, time-reactiveness and asynchrony de๏ฌne a language for SC with such features describe how an interpreter for such SC should work provide a prototype implementation In the future, we plan to provide a formal operational semantics for Tenderfone endow SC with higher-level coordination/synchronisation mechanisms extend Tenderfone to support HyperLedger Fabricโ€™s architecture Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 17 / 20
  • 21. Conclusions and Future Work Conclusion Summarising, we discuss how SC need pro-activity, time-reactiveness and asynchrony de๏ฌne a language for SC with such features describe how an interpreter for such SC should work provide a prototype implementation In the future, we plan to provide a formal operational semantics for Tenderfone endow SC with higher-level coordination/synchronisation mechanisms extend Tenderfone to support HyperLedger Fabricโ€™s architecture Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 17 / 20
  • 22. Smart Contracts are more than Objects: Pro-activeness on the Blockchain Giovanni Ciatto1 Alfredo Ma๏ฌƒ1 Stefano Mariani2 Andrea Omicini1 giovanni.ciatto@unibo.it alfredo.maffi@studio.unibo.it stefano.mariani@unimore.it andrea.omicini@unibo.it 1Dipartimento di Informatica โ€“ Scienza e Ingegneriaโ€”Universit`a di Bologna 2Dipartimento di Scienze e Metodi dellโ€™Ingegneria, Universit`a di Modena e Reggio Emilia 1st International Congress on Blockchain and Applications ยดAvila, Spain โ€“ June 27, 2019 Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 18 / 20
  • 23. References References I Atzei, N., Bartoletti, M., and Cimoli, T. (2017). A survey of attacks on Ethereum smart contracts (SoK). In Principles of Security and Trust, volume 10204 of LNCS, pages 164โ€“186. Springer. Denti, E., Omicini, A., and Ricci, A. (2001). tuProlog: A light-weight Prolog for Internet applications and infrastructures. In Practical Aspects of Declarative Languages, volume 1990 of LNCS, pages 184โ€“198. Springer. Kwon, J. (2014). Tendermint: Consensus without mining. Luu, L., Chu, D.-H., Olickel, H., Saxena, P., and Hobor, A. (2016). Making smart contracts smarter. In 2016 ACM SIGSAC Conference on Computer and Communications Security (CCSโ€™16), pages 254โ€“269, New York, NY, USA. ACM Press. Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 19 / 20
  • 24. References References II Szabo, N. (1997). Formalizing and securing relationships on public networks. First Monday, 2(9). Ciatto et al. (UniBo, UniMoRe) Pro-activeness on the Blockchain BCC 2019, Jun 27 20 / 20