WEB3.0(ETHEREUM)

김두용·2023년 1월 27일
0

STUDY

목록 보기
2/2
post-thumbnail

개발 도구

스마트 컨트랙트 언어

  • ★Solidity(솔리디티): 이더리움 스마트 컨트랙트 언어
  • Bamboo(밤부): 모핑 스마트 컨트랙트 언어
  • Vyper(바이퍼): 새롭게 시도되는 파이썬 프로그래밍 언어
  • LLL(Low-level Lisp-like Language): 저수준 프로그래밍 언어
  • Flint: 자산 유형과 상태 변환, 안전한 정수를 포함하고 보안 기능을 고려해 개발 중인 새로운 언어

프레임워크

  • ★Truffle(트러플): 가장 유명한 스마트 컨트랙트 개발, 테스팅, 배포 프레임워크. 트러플 세트는 트러플과 가나쉬, 드리즐이 포함되어 있다.
  • Hardhat(하드햇): 트러플과 비슷한 프레임워크. 트러플과 다르게 가상 이더리움 네트워크가 제공된다.
  • Embark(엠바크): 탈중앙화 어플리케이션 개발을 위한 프레임워크
  • Waffle(와플): 진화한 스마트 컨트랙트 개발, 테스팅을 위한 프레임 워크. ethers.js를 기반.
  • Dapp: DApple의 뒤를 잇는 탈중앙화 어플리케이션 개발 프레임 워크
  • Populus(팝풀러스): 가장 귀여운 동물 사진들과 함께하는 이더리움 개발 프레임워크
  • Etherlime(이더라임): 탈중앙화 어플리케이션 개발 프레임워크. ethers.js를 기반.
  • Parasol: 테스팅과 인퓨라(Infura) 배포, 자동 컨트랙트 문서 등 애자일 방식의 스마트 컨트랙트 개발 환경. 자유로운 사용자 정의와 남을 생각하는 디자인, 융통성 있는 기능이 있다.
  • 0xcert: 탈중앙화 어플리케이션 제작을 위한 자바스크립트 프레임워크

통합 개발 환경

  • Remix(리믹스): 블록체인 가상머신에서 테스트와 정적 분석이 포함된 웹 통합 개발 환경.
  • Superblocks Lab(수퍼블록스 랩): 웹 통합 개발 환경. 브라우저에 내장된 블록체인 가상머신, 메타마스크 통합, 거래 기록과 웹앱의 다른 기능들간 라이브 코드.
  • Atom(아톰): Atom Solidity Linter와 Etheratom, Autocomplete-solidity, Language-solidity 패키지가 있는 아톰 에디터
  • Pragma(프라그마): 솔리디티를 위한 아주 간단한 웹 통합 개발 환경. 스마트 컨트랙트를 자동 생성해주는 인터페이스. Autocomplete-solidity와 Language-solidity 패키지가 있다.
  • Vim Solidity(빔 솔리디티): 솔리디티를 위한 빔 문법 파일.
  • Visual Studio Code(비주얼 스튜디오 코드): 비주얼 스튜디오 코드에서 솔리디티 지원 확장 프로그램
  • Intellij Solidity Plugin(인텔리j 솔리디티 플러그인): 젯브레인 인텔리j 아이디어 통합 개발 환경으로 문법 강조, 형식, 코드 완성 등의 오픈 소스 플러그인
  • YAKINDU Solidity Tools(야킨두 솔리디티 도구): 이클립스를 기반으로 한 통합 개발 환경. 문맥 완성이 민감하고 도움말, 코드 탐색, 문법 색 구분, 컴파일러 빌딩, 빠른 수정, 템플릿이 특징
  • Eth Fiddle: 룸 네트워크에서 개발한 통합 개발 환경에서 스마트 컨트랙트를 작성하고 컴파일과 디버깅을 할 수 있다. 공유하기 쉽고 코드 정보를 확인할 수 있다.

블록체인 테스트 네트워크

  • Ganache(가나쉬): 시작적인 UI와 로그들을 보여주는 테스트 이더리움 블록체인 어플리케이션
  • Kaleido(칼레이도): 컨소시엄(consortium) 블록체인 네트워크를 돌릴 때 사용. 개념증명들(PoCs)과 테스팅에 좋다.
  • Pantheon Private Network: 도커 컨테이너 안에서 판테온 노드의 프라이빗 네트워크를 사용할 수 있다.
    • Artemis: 페가시스의 이더리움 2.0 비콘 체인의 자바 구현물
    • Orion: 페가시스의 프라이빗 거래 수행을 위한 컴포넌트
  • Cliquebait(클리끄베이트): 실제 블록체인 네트워크와 유사한 도커 인스터스를 사용해 스마트 컨트랙트 어플리케이션을 통합하고 테스팅한다.
  • Local Raiden(로컬 라이덴): 데모와 테스트 목적으로 도커 컨테이너에서 로컬 라이덴 네트워크를 실행
  • Private networks deployment scripts(개인 네트워크 배포 스크립트): 개인 권위증명(PoA) 네트워크를 위한 배포 스크립트를 실행한다.
  • Local Ethereum Network(로컬 이더리움 네트워크): 개인 작업증명(PoW) 네트워크를 위한 배포 스크립트로 실행
  • Ethereum on Azure: 이더리움 PoA 네트워크 컨소시엄의 거버넌스와 배포 네트워크
  • getho: PoA 방식의 프라이빗 블록체인과 스마트 컨트랙트 테스팅 툴이 있는 DApp 개발 플랫폼
  • Ethereum on Google Cloud: PoW를 기반으로 한 이더리움 네트워크를 만들 수 있다.

이더리움 테스트 퍼셋(faucets)

  • Rinkeby faucet
  • Kovan faucet
  • Ropsten faucet
  • Universal faucet
  • Nethereum faucet(C#/.NET faucet)
  • Goerli faucet

이더리움 프론트엔드 API

  • Web3.js: 자바스크립트 웹3
    • Eth.js: 자바스크립트 웹3 대안
    • Ethers.js: 자바스크립트 웹3 대안, 유용한 유틸리티들과 지갑 기능 존재
    • Web3Wrapper(웹3래퍼): 타입스크립트 웹3 대안
    • Ethereumjs(이더리움js): 이더리움이 좋아하는 ethereumjs-util과 ethereumjs-tx를 위한 유틸리티 함수 모음
    • flex-contract / flex-ether: 제로 구성(zero-configuration), 스마트 컨트랙트와 트랜젝션을 만들 때 상호작용을 위한 고수준 라이브러리
    • ez-ens: 간단하며, 제로 구성(zero-configuration) 이더리움 이름 서비스 주소 해결책
    • web3x: web3.js의 타입스크립트 포트. 컨트랙트 상호작용이 포함되어 모든 타입의 보안과 작은 빌드의 이점이 존재.
  • Drizzle(드리즐): Redux 라이브러리 블록체인 프론트엔드와 연결
  • ★dfuse: dfuse Ethereum API를 사용하는 타입스크립트 라이브러리
  • Tasit SDK: React Native를 사용하여 모바일 이더리움 DApps를 만들기 위한 자바스크립트 SDK
  • useMetamask: Ethereum DApp 프로젝트에서 메타마스크를 관리하는 사용자 정의 React Hook
  • WalletConnect: 월렛과 DApp을 연결하기 위한 개방형 프로토콜
  • Subproviders: 웹3 프로바이더 엔진과 함께 사용되는 여러가지 유용한 subproviders(탈중앙화 어플리케이션을 지원하는 렛저 하드웨어 월렛을 위한 LedgerSubprovider를 포함)
  • web3-react: 싱글페이지 이더리움 DApps를 빌딩하기 위한 리액트 프레임워크
  • Vortex(볼텍스): DApp-ready Redux Store. 웹소켓 덕분에 효율적이고 민첩하게 백그라운드 데이터를 새로고침 한다. 트러플과 엠바크와 작동.
  • Strictly Typed: 자바스크립트 대안
    • elm-ethereum
    • purescript-web3

이더리움 백엔드 API

  • _**Web3.py: PYTHON 웹3
  • _**Web3.php: PHP 웹3
  • _**Ethereum-php: PHP 웹3
  • Web3j: JAVA 웹3
  • Nethereum: .NET 웹3
  • Ethereum.rb: RUBY 웹3
  • Web3.hs: HASKELL 웹3
  • KEthereum: KOTLIN 웹3
  • Pyethereum: 이더리움 프로젝트의 PYTHON 코어 라이브러리
  • Eventeum: 이더리움 스마트 컨트랙트 이벤트와 백엔드 마이크로 서비스를 연결. Kauri가 JAVA로 작성
  • Ethereumex: 이더리움 블록체인을 위한 ELIXIR JSON-RPC 클라이언트
  • EthContract: ELIXIR 언어로 된 이더리움 스마트 컨트랙트 쿼리를 도와주는 헬퍼 메소드 세트.

부트스트랩(Bootstrap) / 실행(out of box) 도구

  • ★Truffle boxes(트러플 박스): 이더리움 생태계를 위한 패키지 컴포넌트
  • Pantheon Private Network: 도커 컨테이너 안에서 판테온 노드의 프라이빗 네트워크를 사용할 수 있다.
  • Testchains: 빠른 반응을 위한 .NET 데브체인 사전구성.(Blazor/Blockchain Explorer: 와즘 블록체인 익스플로러. 샘플 기능 존재.)
  • Local Raiden(로컬 라이덴): 데모와 테스트 목적으로 도커 컨테이너에서 로컬 라이덴 네트워크를 실행
  • Private networks deployment scripts(개인 네트워크 배포 스크립트): 개인 권위증명 네트워크를 위한 배포 스크립트를 실행합니다.
  • Parity Demo-PoA Tutorial(패리티 데모-권위증명 튜토리얼): 2개의 노드로 패리티 합의 인증 라운드와 PoA 테스트 체인을 만들기 위한 단계별 튜토리얼
  • Local Ethereum Network(로컬 이더리움 네트워크): 개인 작업증명 네트워크를 위한 배포 스크립트로 실행
  • Kaleido(칼레이도): 컨소시엄 블록체인 네트워크를 돌릴때 사용. 개념증명들과 테스팅에 좋다.
  • Cheshire(쳬셔): 크립토키티 API와 스마트 컨트랙트의 로컬 샌드박스 도구, 트러플 박스로 이용 가능.
  • Aragon CLI: 아라곤 CLI는 아라곤 앱 개발과 생성하는데 이용
  • ColonyJS: 콜로니 네트워크 스마트 컨트랙트와 상호작용하는 API를 자바스크립트 클라이언트로 제공
  • ArcJS: 자바스크립트 어플리케이션을 이더리움 스마트 컨트랙트 DAOstack Arc로 접근을 가능하게 해주는 라이브러리

이더리움 ABI 도구

  • ABI Decoder(ABI 디코더): 이더리움 거래의 데이터 매개변수 디코딩과 이벤트를 위한 라이브러리
  • ABI-gen: 컨트랙트 ABI의 타입스크립트 컨트랙트 래퍼를 생성
  • Ethereum ABI UI: 이더리움 컨트랙트 ABI의 필드 정의와 관련 발리데이터 UI를 자동 생성
  • headlong: 프로그램의 동작이 잘 정의도니 컨트랙트 ABI와 자바 언어로 된 RLP 라이브러리
  • One Click DApp: ABI를 이용해 유일한 URL로 DApp을 즉시 생성
  • Truffle Pig: 로컬로 개발할때 사용하도록 간단한 HTTP API를 찾거나 트러플에서 생성된 컨트랙트 파일을 읽는 개발 툴. HTTP를 통해 최신 컨트랙트 ABI를 제공.

스마트 컨트랙트 개발을 위한 패턴

  • Dappsys(댑시스): 안전하고, 단순하며, 유연한 이더리움 컨트랙트 개발 블록
    • 댑시스는 이더리움/솔리디티의 일반적인 문제들에 대한 해결책을 가지고 있습니다.
      • Whitelisting(화이트리스팅)
      • Upgradable ERC20-Token(향상 가능한 ERC20 토큰)
      • ERC20-Token-Vault
      • RBAC 증명
    • 메이커다오와 더타오를 위한 개발 블록들도 제공
    • own을 만들거나, 검증되지 않거나, 솔루션 전에 상의해야 한다.
    • 사용 설명은 Dapp-a-day 1-10과 Dapp-a-day 11-25이다.
  • ★OpenZeppelin(오픈제플린): 솔리디티 언어의 재사용과 안전한 스마트 컨트랙트의 오픈프레임워크
    • 가장 널리 사용되는 라이브러리와 스마트 컨트랙트들
    • 댑시스와 유사하고, 트러플 프레임워크에 더 통합된다.
  • 어셈블리와 향상된 워크샵
  • 간단한 이더리움 멀티시그(Multisig): 특히 Benefits 부분
  • CryptoFin Solidity Auditing Checklist(크립토핀 솔리디티 감사 체크리스트): 일반적인 조사 결과들과 메인넷 시작을 위한 컨트랙트 분석 때 주의해야 할 이슈의 체크리스트
  • AragonOS(아라곤OS): DAO와 탈중앙화 어플리케이션, 프로토콜을 위한 스마트 컨트랙트 프레임워크
    • 업그레이드 가능(Upgradebility): 스마트 컨트랙트는 최신 버전으로 업그레이드 가능
    • 승인 통제(Permission control): Auth와 AuthP 수정자를 사용함으로써, 다른 어플리케이션 또는 엔티티만 접근할 수 있도록 기능을 보호할 수 있다.
    • 촉진자(Forwarders): 아라곤OS 어플리케이션 다른 어플리케이션에게 실행을 할 인텐트(intent)를 보내는데, 인텐트는 일련의 요구사항 충족이 되어야 전달

이더리움 클라이언트

  • Pantheon(판테온): 페가시스의 자바 클라이언트
  • Geth(게스): 고(Go) 클라이언트
  • Parity(패리티): 러스트(Rust) 클라이언트
  • Aleth: C++ 클라이언트
  • Pyethapp: pyethereum을 이용하는 파이썬 클라이언트
  • Trinity(트리니티): py-evm을 이용하는 파이썬 클라이언트
  • Ethereumjs(이더리움js): ethereumjs-vm을 이용하는 JS 클라이언트
  • Ethereumj(이더리움j): 이더리움 재단의 자바 클라이언트
  • Harmony(하모니): 이더캠프(EtherCamp)의 자바 클라이언트
  • Seth(세스): 커멘드 라인을 위한 메타마스크 형태의 이더리움 클라이언트 도구
  • Mustekala(머스테카라): 메타마스크의 이더리움 라이트 클라이언트 프로젝트
  • Exthereum: 엘릭서(Elixir) 클라이언트
  • EWF 패리티: Tobalaba 테스트 네트워크를 위한 에너지 웹 재단 클라이언트
  • Quorum(큐럼): JP Morgan에 의해 데이터 프라이버시를 지원하는 이더리움의 승인받은 구현
  • Mana: 엘릭서(Elixir)로 쓰여진 이더리움 전체노드 구현체

저장소

  • IPFS: 탈중앙화 된 저장소와 파일 레퍼런스
    • IPFS-Store: 검색 기능이 포함된 IPFS 저장소 서비스
    • OrbitDB: IPFS의 최상단 탈중앙화된 데이터베이스
    • JS IPFS API: IPFS HTTP API를 위한 클라이언트 라이브러리, 자바스크립트로 실행
    • TEMPORAL: 다른 분산화/탈중앙화 저장소 프로토콜과 IPFS로 들어오는 API를 쉽게 이용
  • Swarm(스웜): 분산화 된 저장소 플랫폼과 컨텐츠 분산 서비스, 이더리움 웹3 스택의 네이티브 기초 계층 서비스
  • NFT.Storage: 분산화 된 저장소 플랫폼

메세징

  • Whisper(위스퍼): 각각의 탈중앙화 어플리케이션들 통신을 위한 의사소통 프로토콜, 이더리움 웹3 스택의 네이티브 기초 계층 서비스
  • DEVp2p Wire Protocol(데브p2p 와이어 프로토콜): 작동 중인 이더리움/위스퍼 노드간 피어-투-피어 통신
  • Pydevp2p(파이데브p2p): RLPx 네트워크 계층의 파이썬 구현

테스팅 도구

  • Solidity code coverage(솔리디티 코드 커버리지): 솔리디티 코드 커버리지 도구
  • Solidity coverage(솔리디티 커버리지): 솔리디티 스마트 컨트랙트를 위한 코드 커버리지 대안
  • Solidity function profiler(솔리디티 함수 프로파일러): 솔리디티 컨트랙트 함수 프로파일러
  • Sol-profiler: 업데이트 된 솔리디티 스마트 컨트랙트 프로파일러 및 대안
  • Espresso(에스프레소): 빠르고, 병렬 방식, 핫 리로딩이 있는 솔리디티 테스트 프레임워크
  • Eth tester: 테스팅 이더리움 어플리케이션들을 위한 도구 세트
  • Cliquebait(클리끄베이트): 실제 블록체인 네트워크와 유사한 도커 인스턴스를 사용해 스마트 컨트랙트 어플리케이션을 통합하고 테스팅
  • Hevm: hevm 프로젝트는 단위 테스팅과 스마트 컨트랙트 디버깅을 위해 특별히 만들어진 이더리움 가상 머신(evm) 구현체
  • Ethereum graph debugger(이더리움 그래프 디버거): 솔리디티 그래픽적인 디버거
  • Tenderly CLI: 사람이 읽을 수 있는 스태 트레이스와 함께 개발속도를 빠르게 한다.
  • Solhint(솔힌트): 보안을 제공하는 솔리디티 린터, 스타일 가이드와 스마트 컨트랙트 인증을 위한 모범 사례 규칙이 있다.
  • Ethlint: 솔리디티 보안 이슈 & 식별과 스타일 수정을 린터로 한다. 예전의 솔리움
  • Decode(디코드): 읽을 수 있고 쉽게 이해할 수 있도록 로컬 testrpc 노드에서 제출된 거래를 분석하는 npm 패키지
  • Truffle-Assertions(트러플 어설션): 트러플의 솔리디티 스마트 컨트랙트 테스팅에 사용되는 유틸리티와 추가적인 어설션 npm 패키지. 가장 중요한 부분은 특정 이벤트가 발생했는지를 확인하는 기능이 추가
  • Psol: 매크로와 조건부 컴파일, 자동 원격 종속성 포함, mustache.js 형식 문법을 이용한 솔리디티 어휘 처리기
  • solpp: 포괄적인 지시문 및 표현식 언어, 복잡한 수학 및 많이 유용한 도우미 기능을 제공하는 솔리디티 전처리기(preprocessor)와 플랫터너(flattener).
  • Decode and Publish: 가공되지 않은 이더리움 트랜젝션을 복호하고 퍼블리쉬한다.
  • Doppelganger: 유닛 테스팅 동안에 제작 중인 스마트 컨트랙트 종속성을 위한 라이브러리
  • rocketh: 선택 가능한 테스트 실행기와 web3 라이브러리를 허용하는 이더리움 스마트 컨트랙트 테스트를 위한 간단한 라이브러리

보안 도구

  • MythX: 보안 인증 플랫폼과 이더리움 개발자를 위한 환경 도구들
  • Mythril Classic(마이스릴 클래식): 오픈소스 이더리움 가상머신 바이트코드 보안 분석 도구
  • Oyente(오옌테): 정적 스마트 컨트랙트 보안 분석 대안
  • Securify(시큐리파이): 이더리움 스마트 컨트랙트를 위한 보안 스캐너
  • SmartCheck(스마트체크): 고정 스마트 컨트랙트 보안 분석기
  • Porosity(포로시티): 블록체인을 기반으로 한 이더리움 스마트 컨트랙트를 위한 디컴파일러와 보안 분석 도구
  • Ethersplay(이더스프레이): EVM 역어셈블러
  • Evmdis: EVM 역어셈블러 대안
  • Hydra(하이드라): 암호화폐경제학 컨트랙트 보안, 탈중앙화 보안 바운티를 위한 프레임워크
  • Solgraph(솔그래프): 스마트 컨트랙트 보안분석을 위해 시각적인 솔리디티 제어 흐름을 보여줌
  • Manticore(만티코어): 스마트 컨트랙트와 바이너리의 심볼릭 실행 도구
  • Slither: 솔리디티 정적 분석 프레임워크
  • Adelaide: 솔리디티 컴파일러를 위한 SECBIT 정적 분석 익스텐션
  • Solidity Security Blog(솔리디티 보안 블로그): 알려진 공격 벡터와 일반적인 안티패턴 종합 리스트
  • Awesome Buggy ERC20 Tokens(어썸 버기 ERC20 토큰): 토큰에 영향을 주는 ERC20 스마트 컨트랙트의 취약성 모음
  • Free Smart Contract Security Audit: Callisto 네트워크의 무료 스마트 컨트랙트 보안 감사

모니터링

  • Neufund(노이펀드): Smart Contract Watch: 스마트 컨트랙트와 거래의 수를 모니터하는 도구
  • Scout: 이더리움 안에서 당신의 스마트 컨트랙트의 이벤트 로그와 활동을 바로 데이터 피드한다.
  • Chainlyt: 구체적인 함수 호출 거래를 검색할 수 있고, 컨트랙트 작동 방법을 확인할 수 있다. 디코드된 거래 데이터가 포함된 스마트 컨트랙트를 탐색할 수 있다.

그 밖에 다양한 도구

  • Truffle boxes(트러플 박스): 탈중앙화 어플리케이션을 빠르게 만들기 위한 패키지 컴포넌트
    • Cheshire(쳬셔): 크립토키티 API와 스마트 컨트랙트의 로컬 샌드박스 도구, 트러플 박스로 이용 가능
  • Solc: 솔리디티 컴파일러
  • Sol-compiler(솔컴파일러): 프로젝트 단계의 솔리디티 컴파일러
  • Solidity cli: 솔리디티 코드를 빠르고 쉽고, 더 믿을 수 있게 컴파일
  • Solidity flattener: 솔리디티 프로젝트와 단층 파일 유틸리티를 합쳐줌. 이더스캔에서 컨트랙트를 인증하거나 임포트된 컨트랙트 시각화에 유용
  • Sol-merger: 대안이며, 솔리디티 컨트랙트를 위한 개별 파일을 가져와 병합한다.
  • RLP(Recursize Length Prefix): 자바스크립트의 RLP 인코딩
  • eth-cli: 이더리움 학습과 개발을 도와주는 CLI 도구 모음집
  • Ethereal(이더리얼): 이더리움에서 일반 작업 관리를 위한 커멘드 라인 도구
  • Eth Crypto: web3.js와 솔리디티를 사용하는 튜토리얼과 이더리움을 위한 암호적 자바스크립트 함수
  • Parity Signer(패리티 싸이너): 서명 거래를 모바일 어플리케이션으로 가능하게 한다.
  • py-eth: 이더리움 생태계를 위한 파이썬 도구들 모음
  • truffle-flattener: 트러플에서 개발 중인 솔리디티 파일의 의존성을 연결해준다.
  • Decode(디코드): 읽을 수 있고 쉽게 이해할 수 있도록 로컬 testrpc 노드에서 제출된 거래를 분석하는 npm 패키지
  • TypeChain(타입체인): 이더리움 스마트 컨트랙트를 위한 타입스크립트 바인딩
  • EthSum: 간단하게 이더리움 주소를 검사하는 도구
  • PHP based Blockchain indexer(PHP 기반 블록체인 인덱서): PHP에서 이벤트 리스닝 또는 블록 인덱싱을 해준다.
  • Purser: 이더리움 기반 지갑을 위한 자바스크립트 통합 지갑 도구. 소프트웨어, 하드웨어, 메타마스크를 지원. 탈중앙화 어플리케이션 개발을 위해 모든 지갑을 일관되고 예측 가능한 인터페이스로 가져온다.
  • Node-Metamask: node.js로부터 메타마스크를 연결
  • Solidity-docgen: 솔리디티 프로젝트를 위한 문서 생성기
  • Ethereum ETL: 이더리움 블록체인 데이터를 CSV 또는 JSON 파일로 내보낸다.
  • prettier-plugin-solidity: 정형화 된 솔리디티 코드를 위한 Prettier 플러그인
  • EthToolbox: 이더리움 개발자를 위해 오프체인 도구가 있는 웹앱. EC recovery, address formatter, unit converter, hash functions, keys generator 등의 기능이 있음
  • Unity3dSimpleSample: 이더리움과 유니티 통합 데모
  • Flappy: 이더리움과 유니티 통합 데모/샘플
  • Wonka: 니더리움(Nethereum) 비즈니스 방식 엔진 데모/샘플

스마트 컨트랙트 표준 & 라이브러리

  • ERCs: 이더리움 주석 요청 저장소
    • Tokens
      • ERC-20: 대체 가능 자산의 토큰 기준(Fungible assets)
      • ERC-721: 대체 불가능 자산 토큰 기준(Non-Fungible assets)
      • ERC-918: 채굴 가능한 토큰 기준(Mineable)
    • ERC-165: 스마트 컨트랙트 도구 인터페이스 확인과 발행을 표준 방법으로 생성
    • ERC-725: 키 관리와 실행, 블록체인 아이덴티 구축을 위한 프록시 컨트랙트
    • ERC-173: 컨트랙트의 소유권을 위한 표준 인터페이스

인기있는 스마트 컨트랙트 라이브러리

  • Zeppelin(제플린): 스마트 컨트랙트 향상를 위한 제플린OS 라이브러리와 세이프매스와 같이 테스트 된 재사용가능 스마트 컨트랙트들이 포함되어 있다.
  • Cryptofin-solidity(크립토핀 솔리디티): 이더리움에서 가스 효율이 좋은 스마트 컨트랙트와 보안 구축을 위한 솔리디티 라이브러리 모음
  • Modular Libraries(모듈러 라이브러리): 이더리움 가상 머신을 활용하는 블록체인 사용을 위한 개발 패키지 그룹
  • DateTime Library(데이트타임 라이브러리): 가스 효율이 좋은 솔리디티 일시 라이브러리
  • Aragon(아라곤): DAO 프로토콜. upgradeability와 거버넌스에 집중한 아라곤OS 스마트 컨트랙트 프레임워크도 포함
  • ARC: DAO를 위한 운영시스템. 다오 스택의 기초 계층
  • 0x: DEX 프로토콜
  • Token Libraries with Proofs(프루프 토큰 라이브러리): 주어진 사양과 고차원 속성에 관해 토큰 컨트랙트의 정확성 증명을 포함

2번째 계층 구조를 위한 개발자 가이드

  • Payment/State Channels(결제/상태 채널)
    • 이더리움 결제 채널: 50줄 코드의 이더리움 결제 채널
    • 뮤라이덴 문서: 뮤라이덴 발신자/수신자 유스케이스를 위한 샘플과 가이드
  • Plasma(플라즈마)
    • Learn Plasma: 코넬 대학교에서 시작한 2018 IC3-Ethereum Crypto Boot Camp의 노드 어플리케이션 웹사이트로, 다양한(MVP/Cash/Debit) 플라즈마를 모두 포함
    • 플라즈마 MVP: 오미세고의 최소 실행 가능한 플라즈마의 연구 구현물
    • 플라즈마 MVP 고랭(Golang): 최소 실행 가능한 플라즈마 규격 확장과 고랭 구현물
    • 플라즈마 캐시(Cash): 간단한 플라즈마 캐시 구현물
  • SideChain(사이드체인)
    • POA Network
      • POA Bridge
      • POA Bridge UI
      • POA Bridge Contracts
    • Loom Network(룸 네트워크)
  • zkSNARKs
    • ZoKrates: 이더리움에서 zkSNARKs을 위한 툴박스
    • The AZTEC Protocol: 이더리움 네트워크 안에서 비밀 거래와 이더리움 메인넷에서 구현을 실시간으로 한다.
  • UI 컴포넌트 사전빌드
    • ui.aragon.org: DApp 컴포넌트를 포함하는 리액트 라이브러리
    • components.bounties.network: DApp 컴포넌트를 포함하는 리액트 라이브러리
    • lorikeet.design: DApp 컴포넌트를 포함하는 리액트 라이브러리
    • ui.decentraland.org: DApp 컴포넌트를 포함하는 리액트 라이브러리
    • dapparatus: 재사용 가능한 리액트 DApp 컴포넌트
    • Metamask UI: 메타마스크 리액트 컴포넌트
    • DappHybrid: 웹을 기반으로 한 분산화 어플리케이션을 위한 하이브리드 호스팅 방식의 플랫폼
    • Nethereum.UI.Desktop: 크로스 플랫폼 데스크탑 지갑 샘플

참고
https://github.com/ConsenSys/ethereum-developer-tools-list/blob/master/README_Korean.md

0개의 댓글