$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

[국내논문] 이더리움 스마트 계약 프로그램의 ERC-20 API 기능 명세의 관례상 표준과 적합성 리뷰 방법
A De Facto Standard for ERC-20 API Functional Specifications and Its Conformance Review Method for Ethereum Smart Contracts 원문보기

정보처리학회논문지. KIPS transactions on software and data engineering. 소프트웨어 및 데이터 공학, v.11 no.10, 2022년, pp.399 - 408  

문현아 (서강대학교 컴퓨터공학과) ,  박수용 (서강대학교 컴퓨터공학과)

초록
AI-Helper 아이콘AI-Helper

이더리움 토큰 스마트 계약의 표준 API인 ERC-20은 지갑이나 분산 거래소같은 응용 프로그램들에서 호환성을 보장하기 위해 도입되었다. 그러나 API의 동작에 대한 엄밀한 기능 명세와 표준 적합성 리뷰 도구는 지원되고 있지 않아 호환성 취약점 문제가 발생할 수 있다. 본 논문에서는 이더리움 블록체인의 ERC-20 토큰 스마트 계약 프로그램들의 관례상 표준에 부합하는지 검사하는 새로운 리뷰 절차와 이를 지원하는 도구를 제안하였다. 기존 이더리움 블록체인 시장 상위 100개의 토큰 스마트 계약 프로그램들을 ERC-20 API 기능 동작면에서 분석한 지식을 바탕으로 관례상 표준을 명시적으로 정의하였고, 이렇게 정의된 관례상 표준으로 새로운 ERC-20 스마트 계약 프로그램을 체계적으로 리뷰할 수 있는 방법을 설계할 수 있었다. 이 리뷰 방법을 지원하는 도구를 개발하고 벤치마크 프로그램에 대해 실험 평가하였다.

Abstract AI-Helper 아이콘AI-Helper

ERC-20, the standard API for Ethereum token smart contracts, was introduced to ensure compatibility among applications such as wallets and decentralized exchanges. However, many compatibility vulnerability problems have existed because there is no rigorous functional specifications for each API nor ...

주제어

표/그림 (9)

참고문헌 (31)

  1. G. Wood, "Ethereum: A secure decentralised generalised transaction ledger," Ethereum Yellow Paper, [Internet], https://ethereum.github.io/yellowpaper/paper.pdf, 2018, Accessed May 2022. 

  2. V. Buterin, "A next-generation smart contract and decentralized application platform," Ethereum White Paper, [Internet], https://ethereum.org/en/whitepaper/, Accessed May 2022. 

  3. N. Szabo, "Smart contracts: Formalizing and securing relationships on public networks," First Monday, Vol.2, No.9, 1997. 

  4. F. Vogelsteller, and V. Buterin, "EIP-20: ERC-20 Token Standard," [Internet], https://eips.ethereum.org/EIPS/eip-20, 2015, Accessed May 2022. 

  5. Etherscan [Internet], https://etherscan.io, Accessed May 2022. 

  6. H. Moon, and S. Park, "Conformance evaluation of the top100 Ethereum relationships on public token smart contracts with Ethereum Request for Comment-20 functional specifications," IET Software, Vol.16, No.2, pp.233-249, 2022. 

  7. CVE-2021-33403, Integer overflow in LNC token [Internet], https://github.com/MRdoulestar/SC-RCVD/blob/main/Vulnerabilities/LNCToken.md, Accessed May 2022. 

  8. CVE-2018-11239, burnOverflow in Hexagon token [Internet], https://peckshield.medium.com/new-burnoverflow-bug-identified-in-multiple-erc20-smart-contracts-cve-2018-11239-52cc4f821694, Accessed May 2022. 

  9. EtherDelta. 2018. [Internet], https://etherdelta.com/, Accessed May 2022. 

  10. T. Chen et al., "TokenScope: Automatically detecting inconsistent behaviors of cryptocurrency tokens in ethereum," in Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security (CCS '19). Association for Computing Machinery, New York, pp.1503-1520, 2019. 

  11. J. Feist, G. Greico, and A. Groce, "Slither: A static analysis framework for smart contracts," in Proceedings of the 2nd International Workshop on Emerging Trends in Software Engineering for Blockchain (WETSEB '19), IEEE Press, pp.8-15, 2019. 

  12. E. Hildenbrandt et al., "KEVM: A complete formal semantics of the ethereum virtual machine," in Proceedings of 2018 IEEE 31st Computer Security Foundations Symposium (CSF), pp.204-217, 2018. 

  13. J. Liu and Z. Liu, "A survey on security verification of blockchain smart contracts," IEEE Access, Vol.7, pp.77894-77904, 2019. 

  14. S. Tikhomirov et al., "SmartCheck: Static analysis of ethereum smart contracts," in Proceedings of 2018 IEEE/ACM 1st International Workshop on Emerging Trends in Software Engineering for Blockchain (WETSEB), pp.9-16, 2018. 

  15. B. Jiang, Y. Liu, and W. K. Chan, "ContractFuzzer: Fuzzing smart contracts for vulnerability detection," in Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering, ASE'18, pp.259-269, 2018. 

  16. S. So, M. Lee, J. Park, H. Lee, and H. Oh, "VERISMART: A highly precise safety verifier for ethereum smart contracts," in Proceedings of IEEE Symposium on Security and Privacy (SP), IEEE, pp.1678-1694, May 2020. 

  17. S. So, S. Hong, and H. Oh, "SmarTest: Effectively hunting vulnerable transaction sequences in smart contracts through language model-guided symbolic execution," in Proceedings of 30th USENIX Security Symposium, pp.1361-1378, 2021. 

  18. J. Frank, C. Aschermann, and T. Holz, "ETHBMC: A bounded model checker for smart contracts," in Proceedings of the 29th USENIX Security Symposium, pp.1-18, 2020. 

  19. L. Luu, D. Chu, H. Olickel, P. Saxena, and A. Hobor, "Making smart contracts smarter," in Proceedings of ACM SIGSAC Conference on Computer and Communications Security (CCS'16). pp.254-269, 2016. 

  20. S. Kalra, S. Goel, M. Dhawan, and S. Sharma, "ZEUS: Analyzing safety of smart contracts," in Proceedings of 25th Annual Network and Distributed System Security Symposium, pp.1-15, 2018. 

  21. L. Alt, and C. Reitwiessner, "SMT-Based verification of solidity smart contracts," in Proceedings of Leveraging Applications of Formal Methods, Verification and Validation. Industrial Practice: 8th International Symposium, pp.376-388, 2018. 

  22. P. Tsankov, A. Dan, D. Cohen, A. Gervais, F. Buenzli, and M. Vechev, "Securify: Practical security analysis of smart contracts," in Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, 2018, pp.67-82. 

  23. OpenZeppelin, "An ERC-20 test suite," [Internet], https://github.com/OpenZeppelin/openzeppelin-contracts, Accessed May 2022. 

  24. Google, "Compatibility Test Suite", 2020 [Internet], https://source.android.com/compatibility/cts, Accessed May 2022. 

  25. W3C, "Markup Validation Service," [Internet], https://validator.w3.org/, Accessed May 2022. 

  26. IEEE and The Open Group, "PosixTM Certification", [Internet], http://get.posixcertified.ieee.org/, 2020, Accessed May 2022. 

  27. J. Tretmans, "An Overview of OSI Conformance Testing", 2001. 

  28. G. Ye et al., "Automated conformance testing for JavaScript engines via deep compiler fuzzing," in Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation (PLDI 2021), pp.435-450, 2021. 

  29. B. Loring and J. Kinder, "Systematic generation of conformance tests for JavaScript", 2021 [Internet], https://doi.org/10.48550/arXiv.2108.07075, Accessed May 2022. 

  30. N. Atzei, M. Bartoletti, and T. Cimoli, "A survey of attacks on ethereum smart contracts," in Proceedings of the 6th International Conference on Principles of Security and Trust, Vol.10204, pp.164-186, 2017. 

  31. WBTC token smart contract [Internet], https://etherscan.io/token/0x2260fac5e5542a773aa44fbcfedf7c193bc2c599, Accessed May 2022. 

저자의 다른 논문 :

관련 콘텐츠

오픈액세스(OA) 유형

GOLD

오픈액세스 학술지에 출판된 논문

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로