Publication | Closed Access
Securify
969
Citations
22
References
2018
Year
Unknown Venue
EngineeringInformation SecurityVerificationSecurity AuditsSmart ContractsSoftware AnalysisFormal VerificationSmart Contract LanguageSecure By DesignData PrivacyComputer SciencePermissionless BlockchainsSmart ContractLanguage-based SecurityData SecurityCryptographySoftware SecurityProgram AnalysisBlockchain
Permissionless blockchains enable arbitrary program execution via smart contracts, allowing untrusted parties to interact without trusted intermediaries, yet repeated security concerns have eroded confidence in handling billions of USD. The authors present Securify, a scalable, fully automated security analyzer for Ethereum smart contracts that can prove contract behaviors as safe or unsafe with respect to a given property. Securify performs a two‑step analysis: it symbolically analyzes the contract’s dependency graph to extract precise semantic information, then checks compliance and violation patterns specified in a domain‑specific language to determine property satisfaction. Securify has analyzed over 18,000 user‑submitted contracts, is publicly released, and an extensive evaluation demonstrates its effectiveness in proving correctness and discovering critical violations, making it a regular tool for expert security audits.
Permissionless blockchains allow the execution of arbitrary programs (called smart contracts), enabling mutually untrusted entities to interact without relying on trusted third parties. Despite their potential, repeated security concerns have shaken the trust in handling billions of USD by smart contracts. To address this problem, we present Securify, a security analyzer for Ethereum smart contracts that is scalable, fully automated, and able to prove contract behaviors as safe/unsafe with respect to a given property. Securify's analysis consists of two steps. First, it symbolically analyzes the contract's dependency graph to extract precise semantic information from the code. Then, it checks compliance and violation patterns that capture sufficient conditions for proving if a property holds or not. To enable extensibility, all patterns are specified in a designated domain-specific language. Securify is publicly released, it has analyzed >18K contracts submitted by its users, and is regularly used to conduct security audits by experts. We present an extensive evaluation of Securify over real-world Ethereum smart contracts and demonstrate that it can effectively prove the correctness of smart contracts and discover critical violations.
| Year | Citations | |
|---|---|---|
Page 1
Page 1