네오 글로벌 월간 보고서 - 개발

할 수있다 2022

네오 글로벌 월간 보고서 - 개발

하이라이트

이번 달 핵심 개발 팀의 많은 업데이트는 프로토콜과 개발 플랫폼으로서 Neo의 유지 보수성과 장기적인 안정성에 중점을 두었습니다. 하드 포크 지원을 구현하면 이전 버전과 호환되지 않는 변경 사항을 안전하게 도입 할 수 있으며, 첫 번째는 DoS 우려를 완화 할 수있는 syscall 가격 변경입니다.

스냅숏 격리는 예외가 발생하는 계약 호출 간에 원치 않는 계약 저장소 변경이 지속되는 것을 방지하는 또 다른 예입니다. C# 개발자의 계약 개발 환경은 조건부 컴파일을 통해 향상되어 디버그와 프로덕션 컴파일 간에 코드를 다시 작성할 필요가 없습니다.

Neo가 후원하는 커뮤니티 개발 그룹은 핵심과 단계적으로 자체 업데이트를 발표하여 수정에 적응하고 새로운 기능을 이식했습니다. NEXT는 주요 NeoLine 확장 지갑 업그레이드에 대한 준비를 완료하여 사용자와 개발자 모두에게 지갑을보다 다재다능하게 만들기 위해 원장 지원 및 사용자 정의 네트워크 지원을 제공했습니다.

한편, Neo SPCC는 오브젝트 트리 서비스의 형태로 새로운 NeoFS 최적화를 탐구했으며, NGD Enterprise는 TypeScript 스마트 계약을 위한 새로운 컴파일러 개발의 기반을 계속 다루었습니다.

May에 대한 전체 Neo 글로벌 월간 개발 보고서는 아래에서 찾을 수 있습니다.

프로토콜 개발

프로토콜 개발

네오 코어

계약 간 호출에 대해 구현된 예외 처리 개선 사항

Neo 코어에 스냅샷 격리를 추가한 것은 Neo가 5월에 받은 가장 주목할만한 업그레이드 중 하나였습니다. 업데이트 후 계약 호출로 인한 상태 변경 사항은 각 계약 호출 간에 별도로 유지됩니다.

지정된 호출로 인해 예외가 발생하면 호출된 계약의 상태 변경이 자동으로 롤백되어 호출을 수행하는 계약에서 예외를 처리할 때 발생할 수 있는 의도하지 않은 결과가 방지됩니다.


프로토콜 수준 하드포크 및 syscall 가격 조정 지원

핵심 개발 팀은 프로토콜 수준 하드 포크에 대한 지원을 포함하는 첫 번째 릴리스가 될 5 월에 Neo v3.3.0 마일스톤 릴리스를 위해 노력했습니다. 이를 통해 플랫폼은 과거 블록에서 트랜잭션을 중단하지 않고 하드 코딩 된 syscall 가격을 조정할 수 있습니다. 첫 번째 포크에서는 getRandom 및 createMultisigAccount에 대한 수수료가 DoS 우려 및 기타 문제를 완화하기 위해 조정되었습니다.


NeoVM은 StackItems에 대해 변경할 수 없는 새로운 연산 코드와 딥 복사본으로 향상되었습니다.

MODMUL과 MODPOW는 NeoVM에 도착하여 암호화 및 영지식 증명과 관련된 온 체인 응용 프로그램에 새로운 기회를 열었습니다. NeoVM 수준의 또 다른 변경 사항은 스택 항목을 변경할 수 없는 것으로 딥 카피하는 기능이었습니다. 이를 통해 알림 및 GetNotifications와 관련된 상황에서 성능을 향상시키면서 계약이 수신된 알림을 수정할 가능성을 피할 수 있습니다.


조건부 컴파일과 새로운 메소드가 neo-devpack-dotnet에 상륙합니다.

C# 계약 컴파일러는 5월에 절대값을 반환하기 위한 새로운 수학 메서드, 저장소 맵에 대한 최적화, 바이트 문자열을 연결하는 기능 등 여러 가지 업데이트를 받았습니다.

#if DEBUG를 통한 조건부 컴파일 지원도 구현되어 C# 개발자를 위한 계약 개발 워크플로가 개선되었습니다. 특히 읽기 전용 메서드에서 safe 특성을 일시적으로 사용하지 않도록 설정하는 데 사용할 수 있으므로 릴리스 코드를 손상시키지 않고 개발 중에 Runtime.Log()를 사용할 수 있습니다.

인프라 및 툴 개발

인프라 및 툴 개발

하이라이트

인프라 및 툴 개발

프로젝트 이정표

노드

Neo SPCC의 NeoGo

Neo SPCC는 이번 달에 NeoGo 업데이트의 일반적인 산을 완료했습니다. 지난 몇 달 동안과 마찬가지로 변경 사항은 참조 구현의 프로토콜 변경과 Go 노드 별 최적화 및 버그 수정으로 나뉘어졌습니다.

코어와 최근 v3.3.0 릴리스를 추적하여 팀은 완전한 C# 호환성을 유지하는 데 필요한 모든 조정을 구현했습니다. 여기에는 바이트 배열 비교 제한, 변경할 수 없는 스택 항목 및 VM의 새 연산 코드뿐만 아니라 하드 포크 지원 및 다양한 리팩토링/DOS 완화가 포함되었습니다.

NeoGo 관련 업데이트의 긴 목록은 5 월에 구현되었습니다. 예를 들어 오라클 시스템 리디렉션 개선, 상태 비호환성, tty를 사용한 암호 처리, 참조 카운터 문제 및 규칙 감시 범위에 대한 수정 및 RPC 패키지에 대한 다양한 개선 사항이 있습니다.

팀은 또한 철저한 문법 검토를 통해 문서 및 코드 주석을 향상 시켰습니다. 거의 300 개의 파일이 개선되어 NeoGo를 생태계에서 가장 철저하게 문서화 된 프로젝트 중 하나로 굳건히 만들었습니다.

https://github.com/nspcc-dev/neo-go

SDK

AxLabs의 neow3j

Axlabs는 5 월에 neow3j의 v3.17.1을 출시했는데, SDK와 devpack에 변경 사항을 가져온 사소한 업데이트입니다. 전자의 릴리스에서는 NeoVM에서 FAULT 상태로 끝나는 트랜잭션을 빌드할 수 있도록 변경했습니다. 원래 성공적으로 실행된 트랜잭션만 전송할 수 있었습니다. 새로운 옵션을 사용하면 계약 테스트를 위해 잘못된 트랜잭션을 진행할 수 있습니다.

devpack에는 수동 인스턴스화 없이 Storage 및 StorageMap 클래스에서 Hash160 및 Hash256을 쉽게 검색할 수 있도록 새로운 편의 메서드가 추가되었습니다.

https://github.com/neow3j/neow3j

스마트 컨트랙트 및 DAPP 프레임워크

NGD Enterprise의 네오 블록체인 툴킷

Neo Blockchain Toolkit은 Neo core v3.3 업데이트 이후 여러 가지 변경 사항을 받았습니다. 시험판이 게시되었으며 테스트를 진행 중이며 최종 릴리스 전에 필요한 플러그인 업데이트가 보류 중입니다. 지난 달 팀에서 미리 본 Storage 스키마 디자인도 개발자 피드백 및 검토에 따라 변경 사항을 받았습니다.

이 팀은 또한 현재 개발 초기 단계에 있는 TypeScript를 위한 새로운 스마트 컨트랙트 컴파일러를 개발하기 위한 노력을 계속했습니다. 완료되면 언어는 다섯 번째로 지원되는 Neo N3 스마트 계약 언어가되어 전통적인 (특히 웹) 개발자가 블록 체인에 참여할 수있는 주요 온보딩 기회를 제공합니다.

https://marketplace.visualstudio.com/items?itemName=ngd-seattle.neo-blockchain-toolkit

월렛

NEXT의 NeoLine

5 월에 NeoLine Chrome 확장 지갑에 대한 주요 개선 사항이 완료되었습니다. 원장 하드웨어 지갑 장치, 사용자 지정 네트워크 및 RPC 서버 지원, 지갑 검색 및 활성 지갑 표시기와 같은 UX 개선 사항. NEXT는 또한 지갑 세부 정보 페이지의 UI를 다시 디자인하여 새로운 기능을 설명하기 위해 기본 논리를 다시 작성하고 정밀 검사 디자인을 개선했습니다.

https://neoline.io/

NEOFS

Neo SPCC의 NeoFS

5월까지 NeoFS 개발은 성능 및 유지 보수성 향상에 중점을 두었습니다. 가장 중요한 변화는 개체 트리 서비스의 형태로 액세스 제어, 복제를 처리하고 여러 가지 최적화를 가져 왔습니다. CLI 리팩토링, SDK 업데이트 및 API 개선 사항도 NeoFS 코어에서 구현되었습니다.

또한 NeoFS 서비스는 트리 서비스를 채택하도록 조정되어 고부하에서 S3 게이트웨이의 성능을 개선했습니다. 팀은 또한 NeoFS CDN 서비스의 공개 릴리스를 준비하고 S3 호환 솔루션을 벤치마킹하기위한 보편적 인 부하 테스트 도구를 만들었습니다.

https://fs.neo.org/

감사

Red4Sec의 감사

Red4Sec은 GrantShares 스마트 계약의 수정 검토 및 최종 납품, PayProxy에 대한 요청 검토 및 FlamingoSwapPair 프로젝트에서 발견 된 새로운 문제를 포함하여 5 월에 생태계 프로젝트에 대한 감사를 계속했습니다. 6월에 Saffron Finance에 대한 감사도 예정되어 있었으며, 핵심 Neo 플랫폼에서 두 가지 취약점이 발견되어 보고되었습니다.

https://red4sec.com/en