ETC Labs Core 1분기 업데이트!
ETC Labs Core는 Ethereum Classic 1월에 오픈하였습니다.
그 후 LABS는 이더리움 클래식의 생태계를 만드는데 총력을 기울였고,
기존의 Dapp 생태계를 이더리움 클래식으로 확장시키는 것에 초점을 맞추었습니다.
초반은., ETC-ETH 호환성, 중요 데이터 분석 툴 개발, DApp 개발 환경 편의사항을 개선하기 위해,
블록 체인 분야의 네임드 개발자들과 협력였으며, 그 과정에서 팀을 크게 성장하게 되었습니다.
그리고 중요한 이정표 또한 얻었습니다.
[팀]
기존 코어 개발팀에 비해 팀의 사이즈가 75퍼센트 커졌습니다.
팀은 Constantine Kryvomaz , Meowbits , Michael Collison , Mike Lubinets , Shane Jonas , Stevan Lohja , Zachary Belford로 시작했습니다. 그리고 현재 리쿠르팅에 대해서, Alan Li , Devon Wesley , Jake Lang , Talha Cross , Zac Mitton 및 Zane Starr을 포함될 예정이기 때문에 이부분에 큰 자신감을 가지고 있습니다.
Constantine, Meowbits 및 Talha는 Meowbits를 클라이언트 개발팀으로 구성했습니다.
클라이언트 개발팀은 네트워크 분석 툴 메이킹에 기여하고 있습니다.
클래식 게스(Classic Gath)를 지원합니다. Geth, Multi-Geth 및 네트워크 업그레이드를 지원합니다.
Alan Li, Jake Lang, Michael C., Mike L.은 리드 컴파일러 개발 업체 인 Michael C.와 EVM / Compiler 팀을 구성합니다. ETC JIT 컴파일러와 EVM LLVM 프로젝트를 추진하고 있기 때문에, EVM 및 스마트 계약 실행 성능을 획기적으로 향상시킵니다.
Dapp 툴 개발 팀에 셰인 (Shane)과 재커리 벨 포드 (Zachary Belford)가 추가되었으며, Devon, Mitton, Zane와 함께 팀을 이끌고 있습니다.
DApp 툴 팀은 DApp 개발자 환경을 지원하는 프로젝트에 참여하고 있습니다.
그중, OpenRPC도 포함되어 있는데 해당 내용은 P2P 통신, 특히 블록체인에서 상당히 혁신적(게임체인저 레벨의)인 부분이 될 것이라 자부합니다.
Stevan Lohja는 계약, 문서화, 웹개발, 코디네이팅 업무를 진행하고 있습니다.
그리고, 교육에 대한 기술과 개발 문서화도 담당합니다.
2019 년 1 분기 성과
[Client Team]
팀은 ECIP-1054 업그레이드 코드 (Atlantis 코드) 제안서를 공표했습니다.
아틀란티스 업그레이드는 커뮤니티 전체에서 엄청난 서포트를 받아왔습니다.
제안서에는 test-net 및 main-net의 블록 높이가 포함되어 있지만,
현재 클라이언트 개발자 그룹과 더 많은 토론이 필요합니다.
ECIP-1054 업그레이드 포크의 가시적 성과는, ETC-ETH 호환성과 ETC 체인의 성능 향상을 동시 가능하게 하는 것입니다.
ECIP-1054 : 아틀란티스, EVM 및 프로토콜 업그레이드
ECIP-1053 : JSON-RPC 서비스에 OpenRPC 서비스 검색 추가
ETC 테스트넷을 Kotti 네트워크와 협력
(Kotti 네트워크 : Ethereum Classic 테스트 네트워크로 보임 단 POA)
기존의 코티 테스트넷은 클라이언트에서 광범위하게 사용할수 있으며, 신뢰성도 보장이 되는 테스트넷입니다)Classic Geth 및 Multi-Geth 클라이언트에 대한 지속적인 지원 및 유지 관리.
클라이언트 팀은 네트워크 구동 소프트웨어를 원활히 제공하는 업무에 집중하여, 개발자가 분산 형 및 피어 투 피어 애플리케이션을 개발할 수 있도록 지원하고 있습니다.
2019 년 1 분기에 목표를 달성하는 과정에서 여러 가지 문제를 해결했습니다.
특히 Q1의 초기에 51 % 광산 공격의 형태로 이중 지출 공격을 당했습니다. 우리는 모니터링 도구를 사용하여 네트워크 사용자가 그에 따라 확인 횟수를 조정할 수 있도록 지원했습니다.네트워크 감독용 오픈소스 프로그램 완성 (51% 공격 감지)
Geth 클라이언트 용 ELK 스택 구성을 완료
EVM / 컴파일러 팀
[스푸트니크 –VM]
- Geth 클라이언트의 기능별 구성을 갖춘 다용도의 동적 경로 API를 구현.
- Multi-Geth EVM에서 구현 된 통합 레이어
- SputnikVM은 모든 ETH 테스트 슈트 하드 포크를 통과 완료
아직, Atlantis를 활성화하기에 충분하지만 더 많은 테스트가 필요함. - Repo HouseKeeping (Jenkins의 CI 설정, 오래된 코드 포맷, Rust 2018 에디션 용 코드 업데이트)
- EVMC API에서 바인딩을 구현하고 SVM에 대한 호환성 문제를 평가
Just-In-Time 컴파일러 (JIT)
- 서브 시스템 완성 : 가스 계량, 예외 처리 및 런타임 매니저
(모든 서브 시스템에 대한 단위 테스트). - 외부 인터페이스 하위 시스템 (function signature provider)의 1 단계 완료
- Wrapper API 구현 (인라인 선언 타임 LLVM 생성용)
Unexpected:
- 속성 및 내장 관리자를 작성 (잉크 웰과 llvm-C API에서 서포트 부족)
- LLVM 컨텍스트 할당 해제와 관련된 메모리 누수 발견
- 싱글 톤에 의존하지 않는 명확한 평생 모델을 갖기 위해 JIT 리팩터링 작업 시작
LLVM EVM 백엔드:
LLVM EVM 백엔드 파이프 라인 및 워크 플로우 (LLVM 가상 레지스터를 스택 작업으로 변환하는 stackify pass 포함)를 설계했습니다.
예비 LLVM 코드 생성기 구현.
설계된 EVM 코드 생성기 최적화 프레임 워크.
Tooling Team
Etherlog
ethereum 클라이언트, ElasticSearch, Logstash 및 Kibana를 실행할 초기 ELK 기반 로깅 설정 완료 ETC 네트워크의 상태를 모니터링하기위한 완벽한 대시 보드를 미리로드합니다.
OpenRPC
2018 년 4 월에 JSON-RPC를 사용하는 대부분의 응용 프로그램 개발자는 기본 계층에서 높은 수준의 소프트웨어 품질에 대한 강한 요구가 있음을 확인했습니다.
우리는 Open API 및 gRPC와 같은 솔루션을 조사했지만 적절한 해결책은 아님을 확인했습니다. . Ethereum Classic뿐만 아니라 다른 모든 블록 체인을 Open API 및 gRPC로 가져 오는 툴에 대한 아이디어를 만들었습니다.
지금까지 우리는 “대규모의 변경 없이” 칭찬할 만한 툴을 만들었습니다.
OpenRPC 사양 1x 출시
ECIP-1053를 이더리움 클래식만이 아닌, 블록체인 전체 생태계 툴링을 높이기 위해 OpenRPC 개선 제안을 Bitcoin 및 Ethereum에 제공했습니다.
- BIP / EIP
[목업 서버]
OpenRPC 문서에 정의 된 메소드에 응답 할 JSON-RPC 백엔드를 제공하기 위해 모의 서버 를 완성했습니다 .
이렇게하면 완벽하게 작동하는 서버가 테스트됩니다.
[Generator Client]
생성자 클라이언트 - sdk (결국) 모든 언어를 완료했습니다 .
현재 Rust, TypeScript 및 JavaScript를 지원합니다.
OpenRPC 문서가 주어지면 클라이언트를 다음과 같이 단순하게 생성 할 수 있습니다.
[Playground]
OpenRPC 용 웹 IDE 완성
브라우저 내 편집기와 OpenRPC Meta 스키마 및 문서가 결합되어 대화식 문서, OpenRPC 문서 편집 환경을 제공합니다.
https://playground.open-rpc.org/ 에서 시험해 볼 수 있습니다 .
[Docs React]
OpenRPC 문서 용 React Docs 구성 요소 완성
Docs React 는 주어진 OpenRPC 문서에 대한 문서를 렌더링하는 반응 구성 요소입니다.
사용 예시
리액터 앱에서 :
[Jenkins]
Windows, Linux 및 OSX에서 로컬로 작업하면서 여러 플랫폼에 대한 도구를 빌드 할 수 있도록 Jenkins 설치를 완료했습니다. 또한 AWS에 쉽게 배포 할 수있는 테라 폼 구성이 포함되어 있습니다.
[Ethash Client Setups ]
광부 클라이언트를 사용할 준비가되었습니다 . 원하는 풀 서버와 지불 주소로start_miner.bat
파일을 편집함으로써, 광부는 쉽게 ETC 마이닝을 시작할 수 있습니다.
분기별 마일스톤
[2 분기]
Client :
- Multi-Geth 내의 서비스 (OpenRPC) 구현
- EWASM의 함의 분석
EVM :
- SVM 버전 0.11 및 0.12 출시
- 스푸트니크 –가상머신 개발 개선; 최신 SVM으로 업데이트.
통합 테스트, 'miri'테스트로 실험 예정 - EVMC 결합 안정, EVMC에 대한 SVM 지원을 프로토타입 작업
JIT :
- 완벽한 외부 (sload / store 등), 메모리, 스택 및 256 비트 산술 서브 시스템.
- 메인 컴파일러 코드 생성
- 블록 체인 액세스가 필요없는 외부 콜백을위한 도우미 하위 시스템을 구현
LLVM EVM :
- LLVM 프레임 워크의 동작 구현
- LLVM에서 EVM 최적화
- 계약 언어 프론트 엔드와 통합 (Vyper , Solidity)
- 설정한 Solidity 컴파일러의 성능 중 90 % 이상 달성
Tool 개발: - 서비스 실행의 완벽한 구축.
- ETC 클라이언트의 OpenRPC 탑재
- Jade DApp 프레임 워크의 환경 업그레이드.
교육:
- 개발자 리소스 및 문서를위한 오픈 소스 개발 포털을 시작
[3분기]
클라이언트:
아틀란티스 포크 업그레이드.
EVM :
아틀란티스 포크 업그레이드.
JIT :
JIT를 완료하십시오.
LLVM EVM :
Tool:
다중 네트워크 탐색기
스마트 계약 도구.
미디어의 ETC Labs Core
ETC Labs는 Ethereum 가상 머신과의 호환성을 소개하기 위해 Atlantis 하드 포크 제안서를 작성 중입니다 ... bitcoinexchangeguide.com
ETC에 더 관심이 있으신가요? 우리는 Ethereum Classic의 더 빠른 개발을 위해 여러분의 도움이 필요합니다! 참여 방법을 알아보세요.
ETCLabsCore팀은 현재 리쿠르팅 중입니다 - https://www.linkedin.com/jobs/view/1144896854/
굿 이브닝! 저는 코박봇 입니다.
보클했습니다 :)