“…When it encounters "EXTER-NALINFOEND," the external transaction ends. e information that can be obtained at this time is whether the transaction is successful and all the gas spent by the exchange, and then all the data is written [35]. en the signs of the start of internal transactions are mainly "CALLSTART," "CREATESTART," "CREATE2START," "CALLCODESST ART," "DELEGATECALLSTART," "STATICCALLSTA RT," and then collect the transaction amount of both parties during this period.…”
Since the Ethereum virtual machine is Turing complete, Ethereum can implement various complex logics such as mutual calls and nested calls between functions. Therefore, Ethereum has suffered a lot of attacks since its birth, and there are still many attackers active in Ethereum transactions. To this end, we propose a traceability method on Ethereum, using graph analysis to track attackers. We collected complete user transaction data to construct the graph and analyzed data on several harmful attacks, including reentry attacks, short address attacks, DDoS attacks, and Ponzi contracts. Through graph analysis, we found accounts that are strongly associated with these attacks and are still active. We have done a systematic analysis of these accounts to analyze their threats. Finally, we also analyzed the correlation between the information collected through RPC and these accounts and finally found that some accounts can find their IP addresses.
“…When it encounters "EXTER-NALINFOEND," the external transaction ends. e information that can be obtained at this time is whether the transaction is successful and all the gas spent by the exchange, and then all the data is written [35]. en the signs of the start of internal transactions are mainly "CALLSTART," "CREATESTART," "CREATE2START," "CALLCODESST ART," "DELEGATECALLSTART," "STATICCALLSTA RT," and then collect the transaction amount of both parties during this period.…”
Since the Ethereum virtual machine is Turing complete, Ethereum can implement various complex logics such as mutual calls and nested calls between functions. Therefore, Ethereum has suffered a lot of attacks since its birth, and there are still many attackers active in Ethereum transactions. To this end, we propose a traceability method on Ethereum, using graph analysis to track attackers. We collected complete user transaction data to construct the graph and analyzed data on several harmful attacks, including reentry attacks, short address attacks, DDoS attacks, and Ponzi contracts. Through graph analysis, we found accounts that are strongly associated with these attacks and are still active. We have done a systematic analysis of these accounts to analyze their threats. Finally, we also analyzed the correlation between the information collected through RPC and these accounts and finally found that some accounts can find their IP addresses.
“…Aldweesh et al 14 presented a framework OpBench to analyze whether the miner award for executing the smart contract is justified or not. Their study revealed that this reward is not always proportional to their resources consumption in case of different opcodes.Bistarelli et al 24 presented a detailed analysis of opcodes. The focus of their study was on statistical measures of different opcodes.…”
In Ethereum blockchain, whenever a transaction of smart contract is executed, transaction fee is charged in terms of Ethers. To calculate the transaction fee, a computational unit, gas is introduced in smart contracts. Gas consumption is calculated against the smart contract source code execution. The transaction initiator sets the gas price against per unit of gas and the total gas limit. If the gas limit is sufficient, the transaction will be mined otherwise it will be reverted. Smart contracts of Ethereum can be written in any high-level language such as Solidity, Vyper, Python, Java and so forth, but Solidity is massively used for smart contracts creation. In this article, we have examined the 5000 transactions of Solidity based smart contracts from Etherscan and performed statistical analysis on opcodes and source code parameters used in these transactions to identify gas costly patterns. Our statistical results (correlation and regression) analyze the relationship of Solidity parameters and opcodes with the gas consumption.Factors causing an increase or decrease in the gas consumption of smart contracts are highlighted in this article. The regression analysis showed that 87.8% of the variability in the response variable (gas consumption) is due to the parameters used in this analysis. Our results will help the smart contract developers to write the gas optimized smart contracts. The results can be beneficial for end users as they will have to pay gas price for less number of gas units.
“…Ethereum block explorers are platforms that allow the users to explore and search the Ethereum blockchain for transactions, addresses, tokens and other activities taking place on the Ethereum blockchain (25). Unlike GitHub, the Ethereum block explorers allow accessing only Ethereum data used in the Ethereum blockchain and thus smart contracts' real use-cases.…”
Many empirical software engineering studies show that there is a need for repositories where source codes are acquired, filtered and classified. During the last few years, Ethereum block explorer services have emerged as a popular project to explore and search for Ethereum blockchain data such as transactions, addresses, tokens, smart contracts’ source codes, prices and other activities taking place on the Ethereum blockchain. Despite the availability of this kind of service, retrieving specific information useful to empirical software engineering studies, such as the study of smart contracts’ software metrics, might require many subtasks, such as searching for specific transactions in a block, parsing files in HTML format, and filtering the smart contracts to remove duplicated code or unused smart contracts. In this paper, we afford this problem by creating Smart Corpus, a corpus of smart contracts in an organized, reasoned and up-to-date repository where Solidity source code and other metadata about Ethereum smart contracts can easily and systematically be retrieved. We present Smart Corpus’s design and its initial implementation, and we show how the data set of smart contracts’ source codes in a variety of programming languages can be queried and processed to get useful information on smart contracts and their software metrics. Smart Corpus aims to create a smart-contract repository where smart-contract data (source code, application binary interface (ABI) and byte code) are freely and immediately available and are classified based on the main software metrics identified in the scientific literature. Smart contracts’ source codes have been validated by EtherScan, and each contract comes with its own associated software metrics as computed by the freely available software PASO. Moreover, Smart Corpus can be easily extended as the number of new smart contracts increases day by day.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.