CESS 기술 월보 | 2023년 8월 진행 상황
1. 중요 제출, 수정, 발표
블록체인 네트워크
CESS 테스트넷 v0.6.0 버전은 합의 노드와 저장 노드로 구성됩니다. 합의 노드는 CESS 네트워크의 세계 상태를 유지하며 (by CESS Node), CESS 네트워크 내의 "데이터 인증 스테이션" 역할을 합니다 (by TEE Worker). 저장 노드는 검증 가능한 저장 공간을 제공하며, CESS 네트워크 내의 "데이터 저장 풀" 역할을 합니다. 다음은 이번 달 진행 상황입니다:
1. 합의 노드 [v0.6.0]
체인 노드의 도전 증명 검증 결과 제출 SGX 서명 인터페이스 매개변수를 조정했습니다.
체인 노드의 공간 증명 모듈 서명 검증 프로세스에서 관련 구조체의 필드 정보를 업데이트했습니다.
체인 노드의 Sminer, Audit 및 FileBank 팔렛과 일부 데이터 구조 정의를 최적화하여 코드 구조를 간소화했습니다.
체인 노드의 권한 취소 독점 기능을 추가하여 DeOSS 사용자가 동시에 여러 Gateway에 권한을 부여할 수 있도록 지원했습니다.
체인 노드의 코드에 경계 오버플로우 검사를 수행하고, 오버플로우 또는 경계 오류를 방지하기 위해 일부 계산 논리를 최적화했습니다.
체인 노드의 검증 청산 프로세스에서 재분배 횟수가 상한에 도달하지 않았을 때의 처리 논리 오류를 수정했습니다.
체인 노드의 도전 검증 생존 기간 시간 계산 문제와 저장 노드 강제 종료 프로세스를 최적화했습니다.
체인 노드에 rust-toolchain.toml 파일을 추가하여 도구 체인 버전 및 관련 구성 요소를 지정했습니다.
체인 노드가 DeOSS 권한 프로세스를 처리할 때 동일한 계정 주소를 필터링하지 않는 문제를 수정했습니다.
체인 노드의 랜덤 도전 검증 결과가 유효하게 지워지지 않아 다음 라운드 도전에 영향을 미치는 문제를 수정했습니다.
TEE Worker의 서비스 데이터 필터링 기능을 추가하여 저장 증명 알고리즘 모듈의 보안을 더욱 강화했습니다.
TEE Worker의 p2p 모듈을 업그레이드하여 gRPC와 결합하여 간결하고 효율적인 원격 서비스 호출 기능을 구현했습니다.
TEE Worker의 유휴 공간 인증 프로세스를 업그레이드하여 인증 결과를 저장 노드가 블록체인에 제출하도록 하여 작업 흐름을 간소화했습니다.
TEE Worker의 서비스 파일 태그 계산 및 저장 증명 배치 검증 기능의 업데이트 및 디버깅을 완료했습니다.
TEE Worker가 배치 검증 저장 증명 시 저장 노드가 빈 데이터를 제출하여 발생한 오류 문제를 수정했습니다.
TEE Worker의 키 공유 네트워크에서 발생한 공유 키 불일치 문제를 수정했습니다.
TEE Worker의 체인 상 등록 프로세스를 최적화하여 공유 키 검증을 추가하여 키 공유의 보안을 강화했습니다.
TEE Worker의 공유 키 포장 방식 및 처리 논리를 최적화하여 키 유출 위험을 줄였습니다.
TEE Worker 단일 노드의 스트레스 테스트를 완료하고, 요청 수가 너무 많아 gRPC 요청 오류가 발생하는 문제를 수정했습니다.
nodeadm 프로그램의 업데이트를 완료하여 합의 노드와 저장 노드의 일부 새로운 기능을 지원했습니다.
nodeadm 프로그램 테스트 중 발견된 사용자 안내 부족 및 yq 프로그램 설치 실패 등의 문제를 수정했습니다.
nodeadm 프로그램에서 노드 모드 전환 시 발생한 컨테이너 이름 충돌 문제를 수정했습니다.
2. 저장 노드 [v0.6.0]
p2p 라이브러리를 기반으로 저장 노드 유휴 공간 증명 알고리즘 모듈과 TEE Worker 간의 상호작용 기능을 구현했습니다.
유휴 공간 인증 프로세스 테스트를 완료하고 인증 실패, 서명 검증 실패 등 일련의 문제를 수정했습니다.
저장 노드 서비스 파일 집계 증명 계산 기능의 개발 및 디버깅 작업을 완료했습니다.
저장 노드가 충돌 후 재시작할 때 유휴 공간 증명 모듈 상태 복구 실패 문제를 수정했습니다.
저장 노드 유휴 공간 증명 모듈의 랜덤 도전 상태 복구 메커니즘을 최적화했습니다.
저장 노드와 TEE Worker의 연결 방식을 gRPC 직접 연결에서 libp2p 기반 gRPC 연결로 업그레이드했습니다.
유휴 파일 인증 프로세스에서 저장 노드가 TEE Worker를 찾는 방식을 고정 구성에서 동적 탐색으로 업그레이드했습니다.
저장 노드 Dockerfile 빌드 실패 및 entrypoint 명령 구성 부정확 문제를 수정했습니다.
libp2p gRPC 연결을 기반으로 한 유휴 파일 인증, 랜덤 도전 및 교체 프로세스 테스트를 완료했습니다.
저장 노드 랜덤 도전 프로세스를 최적화하여 유휴 파일과 서비스 파일의 도전 프로세스를 병렬로 실행하여 효율성을 높였습니다.
저장 노드 유휴 공간 증명 모듈의 고장 복구 및 랜덤 도전 상태 설정 기능을 최적화하여 실행 속도를 향상시켰습니다.
유휴 공간 증명 모듈의 공간 크기 상한 설정이 무효화되는 문제를 수정했습니다.
서비스 파일 랜덤 도전 과정에서 일부 파일을 삭제한 후 상태를 즉시 판단하지 않아 도전 실패 문제를 수정했습니다.
유휴 공간 증명 랜덤 도전 상태 설정 오류로 인해 도전 증명 검증 실패 문제를 수정했습니다.
서로 다른 사용자 파일 아래 동일한 fragment 데이터를 저장하지 않아 랜덤 도전 검증을 통과할 수 없는 문제를 수정했습니다.
제품
CESS는 Web3에 실현 가능한 저장 서비스를 제공하는 것을 사명으로 하여 새로운 세대의 객체 저장 서비스 (DeOSS)를 구축하고 있습니다. 현재 CESS 네트워크의 제품 생태계는 점차 풍부하고 번영해 가고 있으며, 온라인 파일 공유 도구 (DeShare), 공공 블록체인 스냅샷 저장 서비스, CESS 클라우드 드라이브 등 혁신적인 애플리케이션이 탄생했습니다. 많은 경험을 해보시기 바랍니다. 다음은 이번 달 진행 상황입니다:
1. 객체 저장 서비스 (DeOSS)
게이트웨이의 파일 업로드 실패 재연결 메커니즘을 최적화하고, 계속 연결 실패하는 노드를 블랙리스트에 추가했습니다.
게이트웨이의 파일 업로드 시 100M 제한 초과 후 업로드 실패 문제를 수정했습니다.
Go SDK의 일부 코드를 리팩토링하여 파일 업로드 및 저장, 파일 검색 및 다운로드 기능을 통합하여 프로세스를 간소화했습니다.
Go SDK에서 일부 필드 이름 비규격, 서명 방법 오류 메시지 불명확, 파일 처리 프로세스가 비정상적으로 차단되는 문제를 수정했습니다.
Go SDK에 저장 객체 및 검색 객체와 관련된 메서드를 추가했습니다.
게이트웨이의 하드코딩된 고정 루프로 인한 인덱스 초과 오류를 수정했습니다.
게이트웨이가 처음 실행될 때 작업 디렉토리가 존재하지 않아 발생한 다운 오류를 수정했습니다.
Go SDK를 최적화하여 공간 권한 여부 및 버킷 생성 여부 판단 프로세스를 추가했습니다.
Go SDK에 구체적인 거래 이벤트의 필드 파싱 기능을 추가하여 더 정확한 거래 상태 판단 능력을 갖추었습니다.
2. 온라인 파일 공유 도구 (DeShare)
- 파일 캐시 기능을 업그레이드하여 DeOSS와 동일한 캐시 메커니즘을 사용하며 v0.2.1 버전을 발표했습니다.
- 파일 업로드 로직을 업데이트하여 파일을 공용 게이트웨이에 통합하여 업로드했습니다.
2. 기술 솔루션 논의
- 기술 팀이 Web3 Gaming Hackathon 2023의 참가 팀에 기술 지침을 제공합니다.
이번 달 기술 팀은 Web3 Gaming Hackathon 2023의 참가 팀에 전문 기술 지침을 제공하고, 심사위원으로서 여러 프로젝트에 유용한 조언을 주었습니다. 우리는 해커톤 활동이 혁신과 협업을 촉진하는 훌륭한 플랫폼이라고 믿으며, 참가 팀과 함께 탐색하고 배우며 문제를 해결하기를 기대합니다.
3. 기술 문서 자료 참고
GitHub: https://github.com/CESSProjectWiKi: https://github.com/CESSProject/cess/wikiCIPs: https://github.com/CESSProject/CIPs