집 >
기술 주변기기 >
IT산업 >
OpenZeppelin 및 친구가있는 품질 견고성 코드
OpenZeppelin 및 친구가있는 품질 견고성 코드
William Shakespeare
풀어 주다: 2025-02-16 11:20:10
원래의
339명이 탐색했습니다.
OpenZeppelin : 이더 리움 스마트 계약의 보안을 보장하기위한 강력한 도구
코어 포인트
OpenZeppelin은 Ethereum 개발자에게 안전하고 안정적인 견고성 코드 패턴 및 스마트 계약 모듈이 포함 된 귀중한 도구 세트를 제공하며, 이는 업계 표준이되어 송로 버섯을 통해 쉽게 배포 할 수 있습니다.
OpenZeppelin 라이브러리에는 ERC20, ERC721 및 ERC827 토큰을 포함하여 Ethereum 플랫폼에 토큰을 게시하기위한 다양한 계약이 포함되어 있습니다. 또한 기록 구매, 토큰 배송 및 전달 ETH 자금과 같은 다양한 기능을 갖춘 초기 토큰 서비스 (ICO)를위한 크라우드 펀딩 계약 세트를 제공합니다.
Zeppelinos는 안전한 스마트 계약 애플리케이션을 개발하고 관리하기위한 분산 된 도구 및 서비스 플랫폼입니다. 개발자가 업그레이드 모드를 통해 배포 된 코드의 변동성을 선택할 수있게하여 Ethereum에 배포 된 스마트 계약에 내재 된 불변성을 해결할 수 있습니다.
트러플 프레임 워크는 이더 리움의 개발 환경, 테스트 프레임 워크 및 자산 파이프 라인입니다. 여기에는 트러플 상자, 즉 프론트 엔드 JavaScript 코드, 견고성 계약 및 워크 플로 유틸리티가 포함 된 보일러 플레이트가 포함됩니다. Tokenmarket 및 Consensys는 또한 토큰 판매 관리 및 이더 리움 스마트 계약 모범 사례 제공을위한 잘 알려진 도구입니다.
이더 리움의 컴퓨팅은 네트워크의 모든 노드에서 복제해야하므로 컴퓨팅은 비싸고 비효율적입니다 (실제로 Ethereum의 Github 개발자 문서는 1999 년에 Ethereum의 컴퓨터가 1999 년을 초과 할 것으로 예상해서는 안된다고 말합니다.
따라서 EVM (Ethereum Virtual Machine)의 보안, 즉 이더 리움 블록 체인에 배치 된 스마트 계약의 보안이 중요합니다. 모든 오류는 실제 경제적 손실을 일으킬 수 있습니다. 해커는 악명 높은 DAO 해킹과 같은 계약 취약점을 악용하여 클래식 이더 리움 블록 체인을 낳았습니다.
완전성과 기타 다양한 디자인 결정은 이더 리움을 더욱 강력하고 복잡하게 만들뿐만 아니라 가격을 지불합니다. 이더 리움의 풍부함으로 인해 오류 및 해킹에 더 취약합니다.
더 나쁜 것은 이더 리움에 배치 된 스마트 계약을 수정할 수 없다는 것입니다. 블록 체인은 불변의 데이터 구조입니다.
이 기사는 스마트 계약의 보안과 안전한 스마트 계약을 작성하는 데 도움이되는 도구 및 라이브러리의 생태계를 탐구합니다.
에이즈
이더 리움 개발자를위한 가장 멋진 도구 중 하나는 OpenZeppelin 라이브러리입니다. 많은 안전하고 신뢰할 수있는 견고성 코드 패턴 및 스마트 계약 모듈이 포함 된 프레임 워크입니다. 저자 자체는 견고성 감사 및 컨설턴트로, 이러한 모듈에 대한 타사 감사 보고서를 읽을 수 있습니다. 아르헨티나에 본사를 둔 회사 인 Zeppelin Solutions의 Manuel Araoz는 주요 견고성 안전 패턴 및 고려 사항을 간략하게 설명합니다.
OpenZeppelin은 트러플과 함께 쉽게 배치 할 수있는 재사용 가능하고 안전한 오픈 소스 (MIT) 견고성 코드의 업계 표준이되었습니다. NPM을 통해 일단 설치 한 계약에서 쉽게 가져올 수있는 스마트 계약으로 구성됩니다.
Truffle Framework는 Truffle 및 Ganache와 함께 OpenZeppelin을 사용하는 방법에 대한 자습서를 게시합니다. 이 계약은 수입되기위한 것이며, 그 방법은 필요에 따라 다루어 지도록 의도된다. 파일 자체를 수정해서는 안됩니다.
ICO 모드
OpenZeppelin 라이브러리에는 Basictoken 계약, BurnableTokens, 고정 된 캡이있는 CappedTokens (고정 된 캡이있는 Mintable Tokens), MintableTokens, Pausabletokens (토큰 전송)를 포함한 ERC20 토큰을위한 Ethereum 플랫폼에 토큰을 게시하기위한 계약 세트가 포함되어 있습니다. 또한 토큰 베스팅 (절벽 기간 및 조끼 기간과 함께 전형적인 투자 계획과 같이 토큰 잔액을 점차적으로 방출 할 수있는 계약)도 있습니다.
ERC721 토큰에 대한 계약도 있습니다 (또는 Cryptokitties 유형의 대체 할 수없는 독특한 토큰).
에는 또한 ERC827 토큰 계약이 포함되어 있으며,이 계약은 토큰을 거래 할 때 데이터를 보내는 데 사용됩니다.
일부 크라우드 펀딩 계약 - 초기 토큰 서비스 계약도 있습니다. 이 계약은 구매를 기록하고, 구매자에게 토큰을 제공/발행 할 수 있으며, ETH 자금을 선물 할 수 있습니다. 토큰 구매를 확인하고 처리하는 기능도 있습니다.
FinalizableCrowdsale 계약을 통해 판매 후 특정 논리를 실행할 수 있습니다. PostDeliveryCrowDsale을 사용하면 크라우드 펀딩이 끝날 때까지 인출을 동결 할 수 있습니다. 환불 블레 크로드 세일은 금융 목표를 추가하는 크라우드 세일 계약의 연장이며 목표를 충족하지 않으면 사용자가 환불을받을 가능성이 있습니다.
파괴 가능한 계약은 소유자가 파괴 할 수 있으며 모든 자금은 소유자에게 전송됩니다. 하청 계약의 일시 정지 성을 달성하는 데 사용되는 계약도 있습니다.
OpenZeppelin은 ICO-FOR에 대한 많은 AIDS와 유틸리티를 제공합니다. 예를 들어 ETH 대신 ICO 주소로 전송 된 ERC20 토큰을 복구 할 수있는 계약입니다. 상속 가능한 계약을 통해 특정 상황에서 소유권을 다른 소유자에게 양도 할 수 있습니다. 자신의 계약에는 소유자 주소가 있으며 기본 승인/승인 및 소유권 양도를 제공합니다.
RBAC 계약은 역할 기반 액세스 제어 유틸리티를 제공합니다. 다른 주소에 다른 역할을 할당 할 수 있으며 역할 수에는 제한이 없습니다.
Zeppelin은 감사되지 않은 크라우드 펀딩 스타트 업 트러플 프로젝트의 예를 제공하므로 OpenZeppelin을 사용하기위한 프라이머로 사용하는 것이 가장 좋습니다. 크라우드 펀딩과 토큰을 신속하게 시작할 수 있습니다.
Zeppelinos
위 내용은 OpenZeppelin 및 친구가있는 품질 견고성 코드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!