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

행진 2022

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

하이라이트

3월, 네오 코어는 새로운 마일스톤 버전인 Neo 3.2로 발전했습니다. 업데이트는 상대적으로 분산되어 버그 수정, C# 컴파일러 개선 사항 및 몇 가지 새로운 기능으로 나뉘어졌습니다. 계약을 체결하는 개발자는 기본 CryptoLib 계약에 새로운 추가 기능을 찾을 수 있습니다. Murmur 해시 함수의 구현, 암호화 보장없이 해싱 할 때 빠르고 비용 효율적인 옵션이 필요합니다.

가장 중요한 변경 사항 중 하나는 블록 제한당 최대 트랜잭션을 변경함으로써 N3 TestNet의 TPS 한도가 크게 증가하여 더 많은 새로운 분산 응용 프로그램이 네트워크에 배포되기 시작함에 따라 트랜잭션을 적시에 처리 할 수 있도록하는 간단한 설정 조정의 형태로 이루어졌습니다.

툴링 프론트에서 NGD Enterprise는 새로운 디버거 미리보기가 출시되면서 파동을 일으켰습니다. 미리보기는 Neo Blockchain Toolkit의 디버깅 경험을 몇 가지 향상 시켰으며 저장보기의 변경에 중점을 두었습니다. 호환되는 컴파일러(현재 C#만 해당)를 사용하는 개발자는 컴파일 중에 표준 디버그 정보 파일에서 내보내지는 형식 정보로 코드를 장식할 수 있습니다.

Neo 디버거는 이 데이터를 사용하여 계약 저장소 및 런타임 값 유형에 대한 향상된 개요를 제공하므로 개발자가 실행을 디버깅할 때 계약 데이터를 쉽게 시각화할 수 있습니다.

Neo SPCC는 또한 Go 노드/SDK 구현과 NeoFS 클라이언트 모두를 위해 개발자 경험을 몇 가지 개선했습니다. 전자에서는 개발자가 Go를 통해 사용자 지정 계약과 신속하게 상호 작용할 수있는 새로운 계약 바인딩 생성기를 찾을 수 있으며 후자는 다양한 UX 개선 및 버그 수정을 받았습니다.

이번 달 Red4Sec의 보안 검토를 거친 여러 생태계 프로젝트는 NeoFS, Flamingo 및 AxLabs가 주창하는 새로운 GrantShares DAO 프로젝트에 대한 계약을 포함하여 이루어졌습니다.

March Neo 글로벌 월간 개발 보고서 전문은 아래에서 확인할 수 있습니다.

프로토콜 개발

프로토콜 개발

네오 코어

Neo 컴파일러 C#이 최신 C# 10 구문을 지원하도록 업데이트되었습니다.

C# 스마트 계약용 핵심 컴파일러는 .NET 6.0과 함께 도입된 새 네임스페이스 구문에 대한 지원을 추가하는 업데이트를 받았습니다. 컴파일러의 다른 변경 사항은 계약 명명 옵션 (현재 -base-name)을 개선하고 런타임에 예외를 생성하는 경로 버그를 수정했습니다.


N3 TestNet 처리량 제한은 10배 증가할 것으로 예상됩니다.

TestNet에 대한 MaxTransactionsPerBlock 설정을 수정하면 다음 릴리스에서 블록당 트랜잭션 수가 512개에서 5000개로 변경됩니다. 이렇게 하면 네트워크의 처리량이 초당 34개에서 333개 이상의 트랜잭션으로 증가하여 노드가 단 10개 블록에서 전체 50,000개의 트랜잭션 mempool을 완전히 비울 수 있습니다. DBFTPlugin 구성의 해당 변경은 블록에 대한 새로운 최대 시스템 요금 및 크기를 수용하기 위해 수행되었습니다.


Murmur32 해시 함수가 네이티브 CryptoLib 계약에 추가되었습니다.

Murmur 비암호화 해시 함수에 대한 지원이 기본 계약 암호화 라이브러리에 추가되어 효율적인 해싱이 필요할 때 개발자가 온체인을 사용할 수 있는 새로운 도구가 도입되었습니다. 이 함수는 SHA256보다 GAS 효율이 높기 때문에 암호화 보안(반전에 대한 저항)이 필요하지 않은 해시 기반 조회에 적합합니다.


핵심 Neo 플러그인 모듈의 문제에 대한 버그 수정 완료

N3 TestNet 체인에서 수행 된 연구에 따라 여러 가지 문제가 발견되고 해결되었습니다. JSON 처리 중에 발생하는 메모리 부족 문제는 RpcServer 및 ApplicationLogs 플러그인의 결과 스택 크기에 대한 새로운 제한과 TokenTracker 모듈에 대한 GAS 제한을 통해 방지됩니다. 이러한 제한은 적절한 구성 파일에서 조정할 수 있습니다. 이 팀은 또한 오라클 서비스의 지역 정보 유출을 해결했습니다.

인프라 및 툴 개발

인프라 및 툴 개발

하이라이트

인프라 및 툴 개발

프로젝트 이정표

노드

Neo SPCC의 NeoGo

3 월에는 neo-go v0.98.2가 출시되어 오래된 MPT 상태 데이터에 대한 가비지 수집이 추가되었으며 Windows에 대한 완전한 지원이 추가되었습니다. 이 업데이트에는 컴파일러 향상, 계약 바인딩 생성기 및 기타 다양한 개선 사항이 포함되었습니다.

또한 새 릴리스에서 팀은 Go v1.15에 대한 지원을 중단하고 대신 1.18 지원을 추가했습니다. 버그 수정과 함께 퍼지 테스트를 개발하고 내부 테스트를 리팩토링하여 neotest를보다 광범위하게 사용하는 데 상당한 시간을 보냈습니다.

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

SDK

AxLabs의 neow3j

AxLabs는 3 월에 neow3j v3.16.0을 출시했습니다. 새 버전을 사용하는 개발자는 instanceOf 키워드에 대해 지원되는 새로운 유형, 계약 그룹을 만들고 서명되지 않은 트랜잭션을 검색하기 위한 유틸리티 메서드, 구조체 상속 지원 등 다양한 개선 사항 및 버그 수정을 찾을 수 있습니다.

https://github.com/neow3j/neow3j

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

NGD Enterprise의 네오 블록체인 툴킷

3월에 NGD Enterprise는 업데이트된 N3 디버거의 미리보기 릴리스를 출시하여 개발자에게 새로운 생산성 향상을 가져왔습니다. 변경 사항은 주로 키/값 바이트 스트림이 가독성과 사용 편의성을 위해 상위 유형으로 디코딩되는 스토리지 뷰에 영향을 줍니다. C # 용 Neo 스마트 계약 컴파일러가 변경을 용이하게하기 위해 업데이트되었습니다. 다른 언어용 컴파일러가 이를 따르면 N3 에코시스템의 모든 계약 개발자는 새로운 디버거 개선 사항의 혜택을 누릴 수 있습니다.

팀은 또한 Neo 3.2 출시일 근처에 출시 될 것으로 예상되는 Neo Blockchain Toolkit의 Neo 3.2 호환 버전에 대한 진전을 이루었습니다.

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

월렛

NEXT의 NeoLine

NEXT의 크롬 확장 지갑 NeoLine은 이번 달에 몇 가지 업그레이드를 받았습니다. N3, dAPI 팁 로직 최적화, 캐싱 조정 및 버그 수정을 위한 직접 GAS 클레임 버튼이 최신 지갑 버전으로 구현되었습니다.

https://neoline.io/

NEOFS

Neo SPCC의 NeoFS

Neo SPCC는 지난 한 달 동안 여러 NeoFS 업그레이드를 완료하여 neofs-contract v0.15.0, neofs-node v0.27.6, neofs-http-gw v.0.19.0 및 neofs-s3-gw v0.19.0의 네 가지 모듈 업데이트로 정점을 찍었습니다.

계약 업데이트로 인해 GAS 효율성이 향상되고 넷맵 계약에 저장할 수 있는 네트워크 맵의 수가 증가했습니다. 노드 업데이트는 주로 버그 수정에 중점을 두었으며 대신 새로운 기능이 v0.28 미리보기 릴리스로 안내되었습니다. S3 게이트웨이는 알림 구성, 배치 정책 재정의 및 기타 개선 사항에 대한 지원을 받았으며 HTTP 게이트웨이는 버그 수정 및 개체 속성의 공백에 대한 지원을 받았습니다.

neofs-cli를 사용하는 개발자는 다운로드/업로드를 위한 진행률 표시줄 및 전달자 토큰 생성을 위한 새로운 명령과 같은 새로운 UX 개선 사항을 찾을 수 있습니다. Neo SPCC는 또한 RESTful API 프로토 타입 및 S3 Authmate UX 개선 사항을 개발하기 위해 노력했습니다.

https://fs.neo.org/

감사

Red4Sec의 감사

Red4Sec 팀이 검토 할 새로운 스마트 계약이 예정되어 있습니다. 팀은 GrantShares 스택에 대한 감사, NeoFS 환경 테스트, 최근 플라밍고 수정 사항에 대한 검토를 완료했으며 PayProxy 프로젝트에 대한 솔루션을 연구하기 시작했습니다.

https://red4sec.com/en