본 포스팅은 < 원본 : Technical Release and Changelog for v1.3.2 >의 번역본으로 Casper 캐스퍼 프로젝트에 관심이 있는 커뮤니티 투자자분들의 편의를 위해 작성되었습니다.

오타나 번역 관련 문의가 있으시다면 댓글로 부탁드립니다!

Casper Network 버전 1.3.2가 2021년 8월 5일 테스트넷 출시 1주일 후인 8월 12일 출시하기로 예정되었습니다. 아래에서 기술 릴리스와 체인지로그에 대한 업데이트를 확인하세요.

 

하이라이트

  • 네트워크가 검증자를 우선순위에 두는 검증자 키를 사용해 피어를 인증합니다.
  • 과거 스테이크 정보 획득 관련 이슈 해결
  • Quantstamp 감사 이후 변화 파트 2
  • 노드 RPC가 이제 ‘block-identifier(블록 식별기)’ 허용해 과거 옥션 정보 쿼리할 수 있게 되었습니다
  • 로컬 키는 더 이상 사용되지 않고, 스토리지 레이어에 독립 키스페이스로 사전 키 API가 추가되었습니다
  • 이제 네트워크 구성요소가 핸드셰이크 중에 키가 본딩된 검증기에 속하는지 확인하고, 본딩되지 않은 노드보다 우선 순위를 부여해 노드간에 메시지를 전달합니다 
  • 한 시기에 비활성/결함이 있었던 검증자는 다음 시기에 블록을 제안할 수 없습니다

 

주요 일정

현재 1.3.2 출시부터 메인넷까지 주요 마일스톤

엔지니어링 완료 2021년 8월 2일
테스트넷 2021년 8월 5일
메인넷 2021년 8월 12일
제너럴 커뮤니케이션 출시 2021년 8월 9일



주요 업데이트

보안 퍼포먼스 & 견고성 향상

  1. 네트워크가 검증자를 우선순위에 두는 검증자 키를 사용해 피어를 인증합니다: 피어와의 핸드셰이크 중, 노드의 퍼블릭 키는 이제 검증자 또는 비검증자인지 검증되어 검증자에 혜택을 줍니다. GH
  2. 일시정지 후 다시 가십을 시작하는 기능을 제거해 가십 메커니즘을 단순화했습니다: 일시정지 기능은 라우팅 테이블의 큰 변동을 예상해 이전 버전에서 중복된 추가기능이었지만, 그렇지 않았기 때문에 이제는 제거해 가시퍼 구성요소를 단순화합니다. GH
  3. 노드당 나가는 트래픽을 고정된 양으로 제한: 네트워크 대역폭에서 이제 모든 노드 간 커뮤니케이션에 대해 제한 조건 선택권이 비검증자가 아닌 검증자에게 주어져, 이와 같은 제약 조건 속에서도 컨센서스가 계속될 수 있습니다. 이것은 config.toml에서 max_non_validating_peer_request_rate에서 설정할 수 있으며, 이 변경은 CEP58 의 일부입니다. 세팅 디테일은 부록(포스트의 마지막 부분)에서 확인하세요. GH
  4. 비활성 검증자를 블록 제안 대상에서 제외하는 기능 도입: 이 기능은 한 시기에 비활성/결함이 있던 검증자가 다음 시기에 블록을 제안하지 못 하도록 하며 다른 검증자에게 그들의 슬롯을 내어주는 CEP43의 일부로, 이는 누락된 제안을 줄임으로써 생동성을 개선합니다. GH
  5. 블록 제안자의 전송과 기타 배포가 이제 분리되었습니다: 해시 레벨에서 배포 해시와 전송 해시가 구분할 수 없었기 때문에 악용될 여지가 있었기에, 이제 블록 검증자에서 우선 검증해 블록 제안자에서 분리됩니다. GH
  6. 멈추고 다시 시작할때 업그레이드된 노드가 합류되지 않는 문제 해결.

 

기능

  1. 과거 스테이크 정보 획득 관련 문제 해결: 이 문제가 해결되기 전에 유저들은 state_get_auction_info RPC 방법을 통해 과거 잔액 정보는 구할 수 있었지만 과거 스테이크 정보는 구할 수 없었습니다. 이제 block-identifier 인수를 선택적 값으로 취함으로써 과거 옥션 정보를 구할 수 있도록 수정되었습니다. GH & GH
  2. 블록을 다운로드할 때 새로 추가된 피어가 후보로 고려되지 않는 문제 해결: 새로 연결된 피어(이미 업그레이드된 네트워크에 합류하려는 시도)가 블록을 다운로드할 때 대체 소스로 간주되지 않는 문제가 해결됩니다. 선형 체인을 동기화할 때 첫 번째 블록 다운로드 시도가 실패하면 노드가 동기화를 중지합니다. GH

 

이벤트 스트림 & 매트릭스

  1. 최종 서명과 배포를 별도의 SSE 이벤트 스트림으로 이동: SSE 이벤트 스트림이 이제 세개로 나뉘어 하나는 최종 서명, 두번째는 배포, 세번째는 남은 이벤트를 위해 쓰입니다. 기존 엔드포인트는 더 이상 작동하지 않으며, 최종 서명 엔드포인트 url은 이 GH에서, 배포 스트림 변경은 이 GH에서 확인하세요. 또한 승인된 배포의 표현에 대한 변경 사항이 있으며, 이는 이제 다른 SSE와 일치하는 DeployAccepted 유형으로 래핑됩니다.  GH
  2. current_era 매트릭스 관련 문제 해결: 업그레이드 이후 첫 시기에 current_era 매트릭이 일시적으로 0으로 설정되었으며, 이것을 해결했습니다.

 

스마트 컨트랙팅

  1. Quantstamp 감사 변경 파트 2: 이러한 변화는 배포를 개시한 사용자 계정/컨트랙트가 아닌 컨트랙트의 즉시 호출자에 기반해 옥션 컨트랙트 기능을 인증하는 새로운 구조를 도입합니다. get_call_stack이라는 새로운 방법이 Rust 컨트랙트 API 라이브러리의 런타임 모듈에 도입되어 컨트랙트의 즉시 호출자를 검증하고 호출자를 검증하는데 호스트측의 로직도 검증이 사용됩니다. GH
  2. 로컬 키 지원 개선: 컨트랙트 헤더의 도입으로 로컬 키와 컨트랙트가 서로 다른 스토리지 레이어에 있어 버전 문제가 발생했으며, 이는 서로 다른 두 개의 컨트랙트 버전이 중복된 로컬 키로 데이터에 액세스할 수 있음을 의미합니다. CEP 39의 일부로 로컬키는 사용되지 않으며, 사전 키 API는 스토리지 레이어에 별도의 키스페이스로 추가됩니다. 컨트랙트 개발자는 이를 사용해 사용자에게 프로비저닝된 URef 어드레스 앞에 있는 별도의 키스페이스에 데이터를 저장합니다. GH
  3. ‘get-account-info’ 클라이언트 명령 및 RPC 추가: 계정을 쿼리하기 위해 우리는 state_get_item RPC 콜을 통해 글로벌 스테이트를 요청하며, 이는 버전 1.2.0에서 불필요한 오버헤드입니다. 현재 버전인 1.3.2에서는 새 RPC 방법 state_get_account_info와 새 명령 get-account-info가 클라이언트에 추가되어 계정을 쿼리하고 오버헤드를 단순화합니다. GH 

 

알려진 이슈

이 릴리스에는 현재 알려진 회귀분석, 치명적이거나 해결해야 할 우선순위가 높은 문제가 없습니다. 

콜 투 액션

Casper 메인넷 네트워크의 다양한 유저에 대한 예상된 액션과 참고사항은 아래 표를 참조하세요.

유저 액션 자산 참고 사항


검증자, 거래소 & 노드 실행자

● 업그레이드 지침 확인 및 업그레이드.

● 업그레이드 상태 확인.

업그레이드 지침

1.3.2-코드베이스
● 업그레이드 경로 1.2.1->1.3.2, Casper 노드 및 클라이언트.

● 새 세팅은 부록 참조






dApp 개발자/컨트랙트 작성자/거래소

● sdk를 2.01로 업데이트하기 전 Javascript sdk 변경사항 확인

● 이 릴리스에 대한 컨트랙트를 다시 컴파일할 필요가 없습니다

● 크롬 스토어에서 최신 Signer를 설치합니다.

새 기능: Call Stack 지원 GH

새 기능: 로컬 키 개선 GH

● NFT 컨트랙트 이용 가능

● ERC20 컨트랙트 업데이트

JavaScript 2.2.3

Signer_Version 1.3.0

● 업그레이드 전 사용자는 반드시 JS SDK 2.2.3 변경사항을 확인해야 합니다.

● JavaScript SDK 1.4.3은 유지관리에서도 지원됩니다.

● Signer 1.3.0 확인
2021년 8월 8일 변경사항 공개

● Java, Python SDK, 쿼리, 전송, 위임 곧 출시 (2021년 8월 예정)

● 거래소: 토큰 전송을 위해 사용자 특정 전송 ID가 설정되어야 함.



향후 작업

다음 릴리스에 대해 진행중인 작업과 로드맵 및 cspr.live 변경사항을 제공합니다.

로드맵 작업 진행 1.4.0 CSPR.live
로드맵 1.4.0 진행 cspr.live 릴리스 노트



부록

기능 유저 세팅




노드당 나가는 트래픽을 한정된 양으로 제한:




검증자, 거래소 & 노드 실행자
Config.toml, Config-example.toml

max_outgoing_byte_rate_non_validators: 활성 검증자가 제한되지 않는 동안 활성 검증자로 인식되지 않는 노드가 사용할 수 있는 최대 송신 초당 바이트 대역폭 양을 제어합니다. 이는 네트워크 부하가 높을 때 컨센서스의 진행을 보호하는데 도움을 줍니다. 값이 0이면 제한이 없으며 기능이 비활성화됩니다.

max_incoming_message_rate_non_validators: 활성 검증자로 인식되지 않는 노드의 초당 최대 요청 수를 제어해 노드를 단순 Dos-공격으로부터 보호합니다. 활성 검증자는 제한되지 않으며 값이 0이면 제한이 없으며 기능이 비활성화됩니다.

enable_mem_deduplication: 메모리에서 일부 중복된 데이터 구조를 제거해 메모리 보존을 시도합니다. 여러 피어가 동일한 정보를 요청하거나 동일한 피어가 여러 번 요청하는 경우 메모리 풋프린트가 크게 줄어들며, 기본값은 false입니다.

활성화된 경우 권장된 값

max_outgoing_byte_rate_non_validators: 6553600

max_incoming_message_rate_non_validators: <40, >3000

enable_mem_deduplication: true

 

Casper Labs는?

캐스퍼(Casper)는 모든 사람이 기회를 확장하기 위해 특별히 제작된 블록체인 플랫폼입니다. 블록체인의 차세대 프론티어를 지향하는 캐스퍼는 사용성, 비용, 분산 또는 보안면에서 강한 애플리케이션을 위해 설계되었습니다. 캐스퍼는 블록체인이 사용하기 편리하고, 세계적으로 개방되며, 혁신적인 미래를 지원하기 위해 블록체인의 진입 장벽을 제거합니다. 오픈 소스 원칙에 의해 안내되고 개개인에게 힘을 실어주기 위해 기초부터 구축되는 이 팀은 오랫동안 지속할 수 있는 동등한 기반을 제공하고자 합니다.

 

* 해당 포스팅은 투자 관련 정보 공유의 목적으로 포스팅된 글이며 투자 권유가 아닙니다. 그러므로 개인 투자의 책임은 모두 본인에게 있으니 참고하셔서 투자하시기 바랍니다.

잘못된 정보 혹은 재미있게 보셨다면 댓글 부탁드립니다.

보다 빠른 정보는 텔레그램 채널과 채팅방, 카카오톡 채팅방을 통해 받아보세요 :)

민티드랩 텔레그램 공지방 : https://t.me/minted_labs

민티드랩 텔레그램 채팅방 : https://t.me/minted_chat

카카오톡 오픈 채팅방 : http://open.kakao.com/o/gDtWugpb (입장코드 : 200311)

캐스퍼랩스 한국 공식 텔레그램 공지방 : https://t.me/casperKoreaAnnounce

캐스퍼랩스 한국 공식 텔레그램 채팅방 : https://t.me/casperblockchainkorea

+ Recent posts