Skip to Content
이더리움 마스터하기, 2nd Edition
book

이더리움 마스터하기, 2nd Edition

by Carlo Parisi, Alessandro Mazza, Niccolo Pozzolini, Gavin Wood, Andreas M. Antonopoulos
October 2025
Beginner to intermediate
570 pages
9h 24m
Korean
O'Reilly Media, Inc.
Content preview from 이더리움 마스터하기, 2nd Edition

9장. 스마트 콘트랙트 보안

이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com

보안은 스마트 콘트랙트를 작성할 때 가장 중요한 고려 사항 중 하나입니다. 스마트 콘트랙트 프로그래밍 분야에서는 실수로 인해 많은 비용이 발생하고 쉽게 악용될 수 있습니다. 이 장에서는 보안 모범 사례와 디자인 패턴, 스마트 콘트랙트에 취약점을 유발할 수 있는 관행과 패턴인 보안 안티패턴에 대해 살펴보겠습니다.

다른 프로그램과 마찬가지로, 스마트 콘트랙트는 작성된 대로 실행되지만, 항상 프로그래머가 의도한 대로 실행되는 것은 아닙니다. 또한 모든 스마트 콘트랙트는 공개되어 있으며, 모든 사용자는 트랜잭션을 생성하는 것만으로 스마트 콘트랙트와 상호작용할 수 있습니다. 모든 취약점이 악용될 수 있으며, 손실은 거의 항상 복구가 불가능합니다. 따라서 모범 사례를 따르고 잘 테스트된 디자인 패턴을 사용하는 것이 중요합니다.

강력한 개발은 보안의 '스위스 치즈 모델'의 첫 번째 계층이라고 생각하면 됩니다. 각 보호 계층은 스위스 치즈 한 조각과 같은 역할을 하며, 그 자체로는 완벽하지 않지만 함께 사용하면 더 강력한 방어력을 발휘합니다. 첫 번째 계층은 신뢰할 수 있는 디자인 패턴을 사용하고, 명확하고 의도적인 코드를 작성하며, 알려진 함정을 적극적으로 피하는 등 견고한 개발 관행을 따르는 것입니다. 이 기본 계층은 취약점으로부터 계약을 보호하는 데 가장 좋은 출발점이 됩니다. 이 외에도 테스트, 코드 리뷰, 버그 바운티와 같은 다른 계층이 추가적인 보호 기능을 제공하지만, 이 모든 것은 개발 관행에서 시작됩니다.

보안 모범 사례

방어적 프로그래밍 은 스마트 컨트랙트에 특히 적합한 프로그래밍 스타일입니다. 이는 다음을 강조하며, 모두 모범 사례입니다:

미니멀리즘/단순함

코드를 작성하기 전에 모든 구성 요소가 정말 필요한지 한 걸음 물러서서 생각해 볼 필요가 있습니다. 설계를 단순화할 수 있을까요? 특정 데이터 구조가 불필요한 면적을 차지하지는 않나요? 아키텍처가 결정된 후에도 비판적인 시각으로 코드를 다시 살펴보고 줄을 줄이고, 에지 케이스를 제거하거나, 불필요한 기능을 삭제할 기회를 찾아야 합니다. 계약이 단순할수록 추론, 테스트, 감사하기가 더 쉽습니다. 일부 탈중앙 금융 프로토콜은 합법적으로 수천 줄로 늘어나기도 하지만, 누군가가 코드베이스의 규모를 자랑할 때는 회의적일 필요가 있습니다. 코드가 많다는 것은 더 많은 가치를 의미하는 것이 아니라 더 많은 버그를 의미하는 경우가 많습니다.

코드 재사용

새것을 만들지 마세요. 필요한 대부분의 기능을 수행하는 라이브러리나 컨트랙트가 이미 존재한다면 이를 재사용하세요. 예를 들어, 오픈제플린은 커뮤니티에서 널리 채택되고 철저하게 테스트되며 지속적으로 검토되는 컨트랙트 제품군을 제공합니다. 자체 코드 내에서는 DRY 원칙을 따르세요: 반복하지 마세요. 코드 조각이 두 번 이상 반복되는 경우, 함수나 라이브러리로 작성하여 재사용할 수 있는지 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

마이크로 프론트엔드 구축, 2nd Edition

마이크로 프론트엔드 구축, 2nd Edition

Luca Mezzalira
핸즈온 머신러닝(3판)

핸즈온 머신러닝(3판)

오렐리앙 제롱(Aurélien Géron)

Publisher Resources

ISBN: 9798341671614