Галерея 2921936

Галерея 2921936




🔞 ПОДРОБНЕЕ ЖМИТЕ ТУТ 👈🏻👈🏻👈🏻

































Галерея 2921936
Except where otherwise noted, pictures are licensed under a Creative Commons By-NC-ND License .
© 2008-2023 MyFigureCollection.net | TB v4.1 YF | Banner designed by Oyasumi

Hierzu gibt es keine Street View-Bilder.
Hierzu gibt es keine Street View-Bilder.

All Books Conferences Courses Journals & Magazines Standards Authors Citations
Analysis of the Smart Contracts Dataset
Detailed Analysis of the Top 20 Used Smart Contracts
This work presents the results of a comprehensive empirical study of over ten thousand Smart Contracts deployed in the Ethereum blockchain we extracted from Etherscan.io.... View more
Abstract: In this work, we perform a comprehensive empirical study of smart contracts deployed on the ethereum blockchain. The objective of the analysis is to provide empirical res... View more
In this work, we perform a comprehensive empirical study of smart contracts deployed on the ethereum blockchain. The objective of the analysis is to provide empirical results on smart contracts features, smart contract transactions within the blockchain, the role of the development community, and the source code characteristics. We collected a set of more than 10000 smart contracts source codes and a dataset of meta-data regarding their interaction with the blockchain from etherscan.io. We examined the collected data computing different statistics on naming policies, smart contract ether balance, number of smart contract transactions, functions, and other quantities characterizing the use and purpose of smart contracts. We found that the number of transactions and the balances follow power-law distributions and the software code metrics display, on average, values lower than corresponding metrics in standard software but have high variances. Focusing the attention on the 20 smart contracts with the topmost number of transactions, we found that most of them represent financial smart contracts and some of them have peculiar software development stories behind them. The results show that blockchain software is rapidly changing and evolving and it is no longer devoted only to cryptovalues applications but to general purpose computation.
Published in: IEEE Access ( Volume: 7 )
This work presents the results of a comprehensive empirical study of over ten thousand Smart Contracts deployed in the Ethereum blockchain we extracted from Etherscan.io.... View more
TABLE 1
The 10 Most Used Contract Names
TABLE 3
Statistics on Code Metrics Computed among 10174 Contract Source Codes
TABLE 4
Matrix of the Cross-Correlation Coefficients Between Metrics and Indicators Computed Among 10174 Contracts
TABLE 5
List of the Twenty Smart Contracts Under Examination
TABLE 7
Code Metrics Results in the Twenty Selected Source Codes
TABLE 8
Cross Correlation Matrix of Source Code Metrics
TABLE 9
Correlation Coefficients Between Usage Indicators and Code Metrics
M. Bartoletti, T. Cimoli and R. Zunino, "Fun with bitcoin smart contracts", Proc. Int. Symp. Leveraging Appl. Formal Methods , pp. 432-449, Oct. 2018.
M. Bartoletti and L. Pompianu, "An empirical analysis of smart contracts: Platforms applications and design patterns", Proc. Int. Conf. Financial Cryptogr. Data Secur. , pp. 494-509, Nov. 2017.
S. Bragagnolo, H. Rocha, M. Denker and S. Ducasse, "Smartinspect: Smart contract inspection technical report", Dec. 2017, [online] Available: https :// hal . inria . fr / hal - 01671196 .
V. Buterin, "Ethereum white paper", 2014, [online] Available: https :// github . com / ethereum / wiki / wiki / White - Paper .
C. Cachin, "Architecture of the hyperledger blockchain fabric", Proc. Workshop Distrib. Cryptocurrencies Consensus Ledgers , pp. 1-4, Jul. 2016.
T. Cui et al., "Achain blockchain whitepaper", 2017, [online] Available: https :// www . achain . com / documents / Whitepaper . pdf .
P. Dai, N. Mahi, J. Earls and A. Norta, Smart-Contract Value-Transfer Protocols on a Distributed Mobile Application Platform, 2017, [online] Available: https :// qtum . org / uploads / files / cf6d69348ca50dd985b60425ccf282f3 . pdf .
H. Rocha, S. Ducasse, M. Denker and J. Lecerf, "Solidity parsing using SmaCC: Challenges and irregularities", Proc. 12th Int. Workshop Smalltalk Technol. (IWST) , Sep. 2017.
G. Destefanis, A. Bracciali, M. Marchesi, M. Ortu, R. Tonelli and R. Hierons, "Smart contracts vulnerabilities: A call for blockchain software engineering?", Proc. Int. Workshop Blockchain Oriented Softw. Eng. (IWBOSE) , pp. 19-25, Mar. 2018.
G. Fenu, L. Marchesi, M. Marchesi and R. Tonelli, "The ICO phenomenon and its relationships with ethereum smart contract environment" in arXiv:1803.01394, 2018, [online] Available: https :// arxiv . org / abs / 1803 . 01394 .
S. Ibba, A. Pinna, G. Baralla and M. Marchesi, "ICOs overview: Should investors choose an ICO developed with the lean startup methodology?", Proc. Int. Conf. Agile Softw. Develop. , pp. 293-308, May 2018.
S. Ibba, A. Pinna, M. Seu and F. E. Pani, "CitySense: Blockchain-oriented smart cities" in Proc. Sci. Workshops, New York, NY, USA, May 2017.
L. Luu, D.-H. Chu, H. Olickel, P. Saxena and A. Hobor, "Making smart contracts smarter", Proc. ACM SIGSAC Conf. Comput. Commun. Secur. , pp. 254-269, Oct. 2016.
K. Mannaro, A. Pinna and M. Marchesi, "Crypto-trading: Blockchain-oriented energy market", Proc. AEIT Int. Annu. Conf. , pp. 1-5, Sep. 2017.
K. Mannaro, G. Baralla, A. Pinna and S. Ibba, "A blockchain approach applied to a teledermatology platform in the sardinian region (italy)", Information , vol. 9, pp. 44, Feb. 2018.
T. J. McCabe, "A complexity measure", IEEE Trans. Softw. Eng. , vol. SE-2, no. 4, pp. 308-320, Dec. 1976.
R. Norvill, B. B. F. Pontiveros, R. State, I. Awan and A. Cullen, "Automated labeling of unknown contracts in ethereum", Proc. 26th Int. Conf. Comput. Commun. Netw. (ICCCN) , pp. 1-6, Jul./Aug. 2017.
S. Porru, A. Pinna, M. Marchesi and R. Tonelli, "Blockchain-oriented software engineering: Challenges and new directions", Proc. IEEE/ACM 39th Int. Conf. Softw. Eng. Companion (ICSE-C) , pp. 169-171, May 2017.
M. Suiche, "Porosity: A decompiler for blockchain-based smart contracts bytecode", DEF CON , vol. 25, pp. 11, Jul. 2017.
M. Swan, Blockchain: Blueprint for a New Economy, Newton, MA, USA:O’Reilly Media, 2015.
R. Tonelli, G. Destefanis, M. Marchesi and M. Ortu, "Smart Contracts Software Metrics: A First Study" in arXiv:1802.01517, Feb. 2018, [online] Available: https :// arxiv . org / abs / 1802 . 01517 .
Z. Wan, D. Lo, X. Xia and L. Cai, "Bug characteristics in blockchain systems: A large-scale empirical study", Proc. IEEE/ACM 14th Int. Conf. Mining Softw. Repositories (MSR) , pp. 413-424, May 2017.
G. Wood, "Ethereum: A secure decentralised generalised transaction ledger", Ethereum project yellow paper , vol. 151, pp. 1-32, Apr. 2014.

IEEE Account

Change Username/Password
Update Address



Purchase Details

Payment Options
Order History
View Purchased Documents



Need Help?

US & Canada: +1 800 678 4333
Worldwide: +1 732 981 0060

Contact & Support


The publication of the Ethereum white paper in 2014 [4] and the implementation of the Ethereum platform moved the blockchain technology [20] to the second generation. In fact, what this platform for decentralized applications proposed, was new and disruptive: a blockchain-based programmable Turing complete virtual machine to run software code written specifically for the blockchain environment [24] . Such software was originally conceived to take advantage of the blockchain features in order to automatically implement the constraints two parties can agree upon when they sign a contract in a trustless environment, so that the software code was named “Smart Contract”. Nowadays, the initial concept has been largely extended so that Smart Contracts can be considered as general purpose software programs, as we show in our empirical analysis.
Smart Contracts (SCs for short) are small computer programs stored inside the Ethereum public ledger (or inside another blockchain) and associated to a particular blockchain address which references the SC software code.
Ethereum Smart Contracts are mainly written in Solidity, a programming language derived from Javascript, Python and C++, which allows to run programs on the blockchain infrastructure as decentralized applications. The Smart Contracts code is compiled and the corresponding bytecode is recorded into the blockchain and run by the Ethereum Virtual Machine (EVM). Virtually, SCs can perform any computational task standard programs can perform, but there are specific constraints that must be respected due to the decentralized structure of the blockchain and to the consensus protocol adopted by Ethereum, so that SCs display specific features and issues which are unknown in traditional software development. A typical example is the extraction of a pseudo-random number which should be replicated in all the blockchain nodes in order to obtain the same result [13] .
Due to these specific features, this technology is having a great success and has paved the way for a new set of applications, yet to be fully exploited. Ethereum is the most important blockchain based platform in terms of number of transactions. At time of writing the number of accounts stored in the blockchain is higher than sixty millions. The number of contract created in the blockchain is over fourteen million five hundred thousand 1 Contract accounts are used both to create decentralized applications and to create new digital tokens, looking to new business opportunities and to an easier way of funding (the ICO phenomenon [10] , [11] ). The byte-codes of contracts are always available, because they are recorded in the blockchain. However, byte-codes are not intelligible; in order to increase the trust of users, developers of decentralized applications may provide the source code of their contracts. Third party websites, like Etherscan.io, offer a verification service that makes Smart Contracts source code public. The overall success of decentralized applications presents practitioners and software engineers with new and specific challenges. In the scenario of a wide diffusion of the blockchain technology, Smart Contracts could represent the backbone for several future decentralized applications [12] , [14] , [15] , [20] .
Since blockchain is a newborn technology, the development of new decentralized applications could take advantage of a thorough analysis of what has been created up to now, with the aim of analyzing errors of the past and of improving software development best practices. By the end of 2017 the amount of Smart Contract source code freely available and the number of related transactions on the Ethereum blockchain reached a size which allows a systematic empirical and statistical study.
In this study we analyze some source code features and different Smart Contracts code measures, the evolution of the Solidity language, and other features relating Smart Contract source code to the transactions performed on the Ethereum blockchain. Such an empirical analysis would have been an impossible task just a few months before the time of our study because of the scarcity of Smart Contracts source code available deployed on the blockchain and for the contemporary scarcity of statistics related to the operations and interactions among Smart Contracts and the blockchain.
The purpose of our work is to empirically analyze and characterize the interaction between Smart Contracts and blockchain, in terms of software measures, of EVM compiler version, of developers practices, of Solidity language features and other peculiarities of the blockchain environment and to examine the main software characteristics of contracts written in solidity as well as their purposes. Furthermore, thanks to the availability of Smart Contracts written and deployed at different times, we analyzed some of the evolutionary features of the Solidity programming language and of the way developers write Smart Contracts.
Our study aims at understanding software features and metrics of Smart Contracts, in order to measure progress and performance during the evolution of the Ethereum blockchain technology in these first years.
To lead our research we performed an empirical study collecting the dataset of all Smart Contracts source codes available from Etherscan.io up to the beginning of 2018. We computed several software metrics on the entire dataset and identified the twenty most used Smart Contracts, in terms of blockchain transactions, representing a reduced set on which we performed a systematic and more detailed analysis, in terms of both functionality and development history. We identified some empirical indicators useful to characterize Smart Contracts from a statistical point of view. By means of these indicators we studied the usage of Smart Contracts in the Ethereum blockchain and their evolution over time.
Results lead us to observe an active developer community that constantly follows the evolution of the language that develops more and more specialized Smart Contracts and improves contracts already developed. In general code measures show that Smart Contracts have a limited number of lines of code which are well commented and that implement specific functionalities.
The remaining of the paper is organized as follows: Section II provides a selection of related work in the field of Smart Contract analysis and metrics applied to specific software categories. Section III provides a description of the Solidity language and of the Ethereum environment. Section IV describes the dataset and the results of the analysis in terms of contract name, compiler version, balance and transactions, and of the measure of source codes, such as the number of line of code, the number of contract declarations and the related size of the bytecode. Section V analyzes twenty Smart Contracts, selected from the dataset with the highest number of transactions. First it provides a description of each contract, then it describes the interaction of the development community in terms of number of versions and of reuse of code. Finally the section reports the results of the code analysis performed by means of volume and complexity code metrics. Section VI discusses the findings of this work, summarizing results and providing some considerations derived from them. Section VII concludes the paper.
Research literature on blockchain in general and on Smart Contracts in particular, from a software development perspective is limited to the last few years. The development and the diffusion of “Solidity” as programming language for writing Smart Contracts on the Ethereum platform started very recently and the definition and implementation of the language and of its Virtual Machine on Ethereum (EVM) is still ongoing.
In this section we provide an overview of the more recent findings in the field with a glimpse to the specific domain of Smart Contracts programming and related topics already published in software literature.
Only very recently the research on software engineering and computer science paid particular attention to the blockchain technology and its specificities. In 2017, Porru et al. [18] underline the need of a new branch of software engineering, and coined the term BOSE (Blockchain-oriented software engineering) to deal with this new technology. In this context, authors highlighted the need of new professional roles, new specialized metrics and new modeling languages in order to ensure security and reliability. They designed possible solutions proposing the directions for future specific steps of the BOSE.
Bartoletti and Pompianu [2] conducted a survey of Smart Contracts by studying their usage, development platforms and design patterns. Furthermore, they categorized the contracts by their application domain in order to understand the best convenient investment.
Tonelli et al. [22] analyzed more than 12000 certified Smart Contracts provided by Etherscan, along with Bytecode and ABI. Their results report that metrics are less variable than in traditional software systems because of the domain specificity. Furthermore in Smart Contract software metrics there are no large variations from the mean. All values are generally within a range of few standard deviations from the mean.
In order to define a specific Blockchain Software Engineering, Destefanis et al. [9] argue that Smart Contracts have a non-standard software life-cycle and therefore applications can hardly be updated or it is more difficult to release a new version of the software.
Wan et al. [23] , in order to design efficient tools to detect and prevent bugs within the blockchain, performed an empirical study to understand the blockchain bug characteristics. They investigated the bugs frequency distribution manually examining 1108 bugs in eight open source blockchain.
Bragagnolo et al. [3] presented SmartInspect , a tool able to debug the code of a Smart Contract, addressing the lack of inspectability of a deployed code. In fact, once a Smart Contract is deployed, data are encoded and the source code cannot be redeployed. Authors proposed a solution by analyzing the contract state through a decompilation techniques and a mirror-based architecture without redeployed it.
Rocha et al. [8] implemented a tool to handle Smart Contract written in Solidity language, the solution is specifically designed for Pharo (a live programming environment based on Smalltalk code language).
Norvill et al. [17] used Etherscan.io in order to explore Smart Contracts and to analyze bytecode level metrics or to identify similarities between compiled pieces of code. They focused their attention on contracts compiled code, source code, and metadata such as the contract name.
The Smart Contracts are the basis for Initial Coin Offerings (ICO), the new means of crowdfunding centered around cryptocurrency in the blockchain development area. In this regard Fenu et al. [10] analyzed the quality and the software development management of 1388 ICOs in the 2017. Ibba et al. [11] they investigated on the ICO process analyzing a dataset obtained collecting data from specialized websites. They emphasized the advantages which Lean methodologies could lead both to the team organization and to stakeholders involvement.
In general the literature on Smart Contracts software features and in particular on the Solidity programming language is still limited and a comprehensive empirical analysis on a dataset of thousands Smart Contracts source codes and the metrics representing and characterizing their interaction and usage within the Ethereum blockchain has not been performed yet.
Our analysis takes into account a particular typology of software programs called Smart Contracts, written in a programming language specific for the EVM of the Ethereum blockchain environment, called solidity . In this section we provide a brief description of the Ethereum system and of Smart Contracts.
Ethereum is a blockchain with an embedded Turing complete computing machine. Thus computer programs can be uploaded into the blockchain and executed on the nodes implementing the blockchain network on a peer-to-peer computer network. The nodes interact managing transactions which are the core concept for obtaining a correct and validated sequence of blocks recording and holding all the information. Identities are associated to accounts/addresses managed by a public-private key pair. A blockchain address is associated with the pair. The blockchain has associated a criptocurrency (the Ethers) in the network, which is used as an incentive for miners and so tha
Полуголая горничная брюнетка
Предложила подруге переспать с ее парнем вместе то есть втроем
Азиатка Каийа дает в пизду и в жопу

Report Page