Topic
Solidity
About: Solidity is a research topic. Over the lifetime, 908 publications have been published within this topic receiving 10149 citations.
Papers published on a yearly basis
Papers
More filters
TL;DR: In this article, a combined experimental and computational study into the aerodynamics and performance of a small scale vertical axis wind turbine (VAWT) was presented, where wind tunnel tests were carried out to ascertain overall performance of the turbine and two-and three-dimensional unsteady computational fluid dynamics (CFD) models were generated to help understand the aerodynamic of this performance.
Abstract: This paper presents a combined experimental and computational study into the aerodynamics and performance of a small scale vertical axis wind turbine (VAWT). Wind tunnel tests were carried out to ascertain overall performance of the turbine and two- and three-dimensional unsteady computational fluid dynamics (CFD) models were generated to help understand the aerodynamics of this performance. Wind tunnel performance results are presented for cases of different wind velocity, tip-speed ratio and solidity as well as rotor blade surface finish. It is shown experimentally that the surface roughness on the turbine rotor blades has a significant effect on performance. Below a critical wind speed (Reynolds number of 30,000) the performance of the turbine is degraded by a smooth rotor surface finish but above it, the turbine performance is enhanced by a smooth surface finish. Both two bladed and three bladed rotors were tested and a significant increase in performance coefficient is observed for the higher solidity rotors (three bladed rotors) over most of the operating range. Dynamic stalling behaviour and the resulting large and rapid changes in force coefficients and the rotor torque are shown to be the likely cause of changes to rotor pitch angle that occurred during early testing. This small change in pitch angle caused significant decreases in performance. The performance coefficient predicted by the two dimensional computational model is significantly higher than that of the experimental and the three-dimensional CFD model. The predictions show that the presence of the over tip vortices in the 3D simulations is responsible for producing the large difference in efficiency compared to the 2D predictions. The dynamic behaviour of the over tip vortex as a rotor blade rotates through each revolution is also explored in the paper.
631 citations
27 May 2018
TL;DR: The paper provides a comprehensive classification of code issues in Solidity and implements SmartCheck -- an extensible static analysis tool that detects them and reflects the current state of knowledge on Solidity vulnerabilities and shows significant improvements over alternatives.
Abstract: Ethereum is a major blockchain-based platform for smart contracts - Turing complete programs that are executed in a decentralized network and usually manipulate digital units of value. Solidity is the most mature high-level smart contract language. Ethereum is a hostile execution environment, where anonymous attackers exploit bugs for immediate financial gain. Developers have a very limited ability to patch deployed contracts. Hackers steal up to tens of millions of dollars from flawed contracts, a well-known example being "The DAO", broken in June 2016. Advice on secure Ethereum programming practices is spread out across blogs, papers, and tutorials. Many sources are outdated due to a rapid pace of development in this field. Automated vulnerability detection tools, which help detect potentially problematic language constructs, are still underdeveloped in this area. We provide a comprehensive classification of code issues in Solidity and implement SmartCheck -- an extensible static analysis tool that detects them. The source code is available at https://github.com/smartdec/smartcheck. SmartCheck translates Solidity source code into an XML-based intermediate representation and checks it against XPath patterns. We evaluated our tool on a big dataset of real-world contracts and compared the results with manual audit on three contracts. Our tool reflects the current state of knowledge on Solidity vulnerabilities and shows significant improvements over alternatives. SmartCheck has its limitations, as detection of some bugs requires more sophisticated techniques such as taint analysis or even manual audit. We believe though that a static analyzer should be an essential part of contract developers' toolbox, letting them fix simple bugs fast and allocate more effort to complex issues.
479 citations
01 Jan 2017
TL;DR: The first € price and the £ and $ price are net prices, subject to local VAT, while the €(D) includes 7% for Germany, the €A includes 10% for Austria.
Abstract: The first € price and the £ and $ price are net prices, subject to local VAT. Prices indicated with * include VAT for books; the €(D) includes 7% for Germany, the €(A) includes 10% for Austria. Prices indicated with ** include VAT for electronic products; 19% for Germany, 20% for Austria. All prices exclusive of carriage charges. Prices and other details are subject to change without notice. All errors and omissions excepted. C. Dannen Introducing Ethereum and Solidity
419 citations
20 Mar 2018
TL;DR: Several common security patterns are elaborated, which can be applied by Solidity developers to mitigate typical attack scenarios and describe solutions to typical security issues.
Abstract: Smart contracts that build up on blockchain technologies are receiving great attention in new business applications and the scientific community, because they allow untrusted parties to manifest contract terms in program code and thus eliminate the need for a trusted third party. The creation process of writing well performing and secure contracts in Ethereum, which is today’s most prominent smart contract platform, is a difficult task. Research on this topic has only recently started in industry and science. Based on an analysis of collected data with Grounded Theory techniques, we have elaborated several common security patterns, which we describe in detail on the basis of Solidity, the dominating programming language for Ethereum. The presented patterns describe solutions to typical security issues and can be applied by Solidity developers to mitigate typical attack scenarios.
244 citations
22 Mar 2018
TL;DR: This work implemented and tested a sample e-voting application as a smart contract for the Ethereum network using the Ethereum wallets and the Solidity language, and found it to be one of the most suitable ones, due to its consistency, widespread use, and provision of smart contracts logic.
Abstract: There is no doubt that the revolutionary concept of the blockchain, which is the underlying technology behind the famous cryptocurrency Bitcoin and its successors, is triggering the start of a new era in the Internet and the online services. While most people focus only at cryptocurrencies; in fact, many administrative operations, fintech procedures, and everyday services that can only be done offline and/or in person, can now safely be moved to the Internet as online services. What makes it a powerful tool for digitalizing everyday services is the introduction of smart contracts, as in the Ethereum platform. Smart contracts are meaningful pieces of codes, to be integrated in the blockchain and executed as scheduled in every step of blockchain updates. E-voting on the other hand, is another trending, yet critical, topic related to the online services. The blockchain with the smart contracts, emerges as a good candidate to use in developments of safer, cheaper, more secure, more transparent, and easier-to-use e-voting systems. Ethereum and its network is one of the most suitable ones, due to its consistency, widespread use, and provision of smart contracts logic. An e-voting system must be secure, as it should not allow duplicated votes and be fully transparent, while protecting the privacy of the attendees. In this work, we have implemented and tested a sample e-voting application as a smart contract for the Ethereum network using the Ethereum wallets and the Solidity language. Android platform is also considered to allow voting for people who do not have an Ethereum wallet. After an election is held, eventually, the Ethereum blockchain will hold the records of ballots and votes. Users can submit their votes via an Android device or directly from their Ethereum wallets, and these transaction requests are handled with the consensus of every single Ethereum node. This consensus creates a transparent environment for e-voting. In addition to a broad discussion about reliability and efficiency of the blockchain-based e-voting systems, our application and its test results are presented in this paper, too.
169 citations