Wasmd 0.30 출시
연말 출시!
2022년은 좋고 나쁘게 다사다난한 2022년이었습니다. 훌륭한 Wasmd 릴리스로 마무리하는 것은 어떨까요?
우리는 검토하고 우선 순위를 정해야 할 커뮤니티 기능 요청이 많았으며 Wasmd v0.30을 통해 이번 연말 릴리스에서 그 중 많은 기능을 얻을 수 있었다는 것을 발표하게 되어 기쁩니다.
늘 그렇듯이 이 릴리스를 가능하게 해주신 모든 기여자에게 큰 감사를 드립니다!
개요(TLDR)
Wasmd v0.30에는 일반적인 버그 수정 및 개선 사항 외에도 커뮤니티에서 많이 요청한 변경 사항이 많이 포함되어 있으며 다음도 제공했습니다.
- 인증 모듈 통합
- 인터체인 계정 v0.2.4를 사용하여 v4.2.0으로 IBC 업그레이드
- 개발자 가이드 및 모범 사례 추가
- Bump Go 최소 1.19
- gov 제안 저장 및 인스턴스화
- 정부 투표가 더 큰 wasm 바이트코드를 업로드하도록 허용
- AcceptListStargateQuier 소개
- 작성자 주소로 계약 가져오기
- 지원 인스턴스화 권한 > gov 저장소에 대한 체인 권한
인증 모듈 통합
authz 모듈은 다른 계정(수여자)에게 권한을 부여하고 원래 계정(수여자)을 대신하여 체인에서 작업을 실행하는 Cosmos-SDK 모듈입니다.
이는 권한 부여 작업에만 필요하므로 개인 계정 키를 보호하는 데 특히 유용하지만 피부여자 키를 사용할 수 있습니다. 이것은 부여자 개인 키에 대한 액세스가 제한된 조직 또는 프로세스 구조를 일치시키는 데에도 유용할 수 있습니다.
승인된 승인은 부여자의 계정으로 실행되기 때문에 많은 권한이 있습니다. 따라서 작업 범위를 제한하는 특정 authz 확장이 다른 모듈에 존재합니다. 예를 들어, 은행에서. 양도할 수 있는 토큰의 총량인 Authorization이 정의됩니다.
authz 모듈은 메시지 유형을 허용하는 일반 인증과 함께 제공됩니다. 이는 wasmd를 포함한 모든 Cosmos 모듈에서 작동합니다. 문제는 wasm 계약이 일반적으로 많은 작업을 지원하고 세분화된 액세스 제어가 불가능하다는 것입니다.
wasmd 권한 부여 확장은 보다 미세한 수준의 액세스 제어를 지원하기 위해 구축되었습니다. 실행 및 마이그레이션 시 계약 메시지와 일치하도록 필터를 정의할 수 있습니다. Wasmd는 다음 필터와 함께 첫 번째 반복으로 제공됩니다.
AllowAllMessagesFilter — 계약 메시지와 일치하는 와일드카드
AcceptedMessageKeysFilter — 계약 메시지는 정확히 하나의 키가 있는 json 객체로 해석됩니다. 이 키는 수락 목록에서 수락되도록 설정할 수 있습니다. 예를 들어 `withdrawal, delegate`가 설정되면 `{"withdraw": {}}` 및 `{"delegate":{}}` 메시지는 허용되지만 `{"sent":{}}`는 허용되지 않습니다. 키가 목록에 없습니다.
AcceptedMessagesFilter — 이 필터는 계약 메시지에 대해 가정하지 않습니다. 순수한 이진 데이터로 해석되어 비교됩니다. 형식의 작은 변화는 이미 중요합니다. 예를 들어 {"withdraw":{}}계약 메시지가 설정된 경우 거부 {"withdraw":{}}되는 동안 이어야 합니다(공백에 주의).{"withdraw":{} }
하지만 이 필터의 이점은 객체 키 뒤에 데이터도 포함된다는 것입니다. 예를 들어 다음 {"vote":"yes"}으로 변경할 수 없습니다.{"vote":"no"}
wasmd 권한 부여 확장의 또 다른 요소는 한계입니다. 작업이 부여자 계정 범위에서 실행되므로 은행 잔고에 대한 전체 액세스 권한이 있습니다. 부여자는 이를 제한하고 통제권을 유지하는 데 어느 정도 관심이 있습니다. 예를 들어, {“withdraw”:{}} 작업은 잔액에 액세스할 필요가 없지만 {“delegate”:{}}는 잔액에 액세스할 필요가 없습니다. 다양한 사용 사례를 지원하기 위해 필터로 설정할 수 있는 다음과 같은 제한이 있습니다.
MaxCallsLimit — 계약 승인을 사용할 수 있는 횟수를 정의하고 승인자 계정에서 토큰 전송은 허용되지 않습니다.
MaxFundsLimit — 사용할 토큰 예산을 설정하고 통화 수에 제한이 없습니다.
CombinedLimit — 토큰 예산 및 실행할 수 있는 실행 횟수를 설정합니다.
한도는 각 보조금 실행 후 업데이트됩니다. 한도가 경과하면 인증이 종료되고 제거됩니다.
추가 정보:
https://github.com/cosmos/cosmos-sdk/tree/main/x/authz
인터체인 계정 v0.2.4를 사용하여 v4.2.0으로 IBC 업그레이드
이 업그레이드에는 IBC 프로토콜 핸드셰이크와 수수료 미들웨어 모듈인 interchain-accounts v0.2.4가 포함되며 ibctesting 패키지도 업데이트됩니다.
추가 정보:
https://github.com/CosmWasm/wasmd/issues/960
https://github.com/cosmos/ibc-go/blob/v4.2.0/CHANGELOG.md
개발자 가이드 및 모범 사례를 추가합니다.
코딩 가이드라인이 업데이트되어 경험이 많은 개발자는 물론 초보자도 쉽게 자신을 찾고 방향을 잡을 수 있습니다. 모범 사례도 추가되었으며 새롭고 업데이트된 가이드는 여기에서 찾을 수 있습니다.
Bump Go 최소 1.19
코스모스-SDK를 따르기 위해 최소 Go 버전이 1.19로 올라갔고, 이는 혼합 Go 1.18/19 체인에서 합의 문제도 방지합니다.
추가 정보:
https://github.com/CosmWasm/wasmd/issues/1041
gov 제안 저장 및 인스턴스화
이전 버전에서는 wasm(저장)을 업로드하고 계약을 인스턴스화하려면 2개의 별도 gov 제안이 필요했습니다.
이제 두 단계를 하나로 실행할 수 있는 새로운 gov 제안 유형이 있습니다.
따라서 이제 우리는 제안서 작성에 대한 조직적 오버헤드와 종속성이 줄었습니다. (인스턴스화하기 전에 저장소를 예약하고 실행해야 하므로)
추가 정보:
https://github.com/CosmWasm/wasmd/issues/785
정부 투표가 더 큰 wasm 바이트코드를 업로드하도록 허용합니다.
우리는 wasm 크기를 800KB로 제한했는데, 이는 체인의 글로벌 제한을 높이는 것이 바람직하지 않을 수 있기 때문에 대부분의 계약에 합리적이었습니다. gov 계약이 이 기능을 수행하고 일반 Tx가 800KB로 유지되는 동시에 최대 4MB의 wasm 크기를 허용할 수 있다고 제안되었습니다.
추가 정보:
Accept List Stargate Querier 소개
Stargate 쿼리는 "Stargate" 일반 protobuf 형식을 통해 시스템 상태를 쿼리하는 강력한 일반 확장 지점입니다. 이 체인을 사용하면 유동성 풀과 같은 계약에서 불가지론적 데이터를 쿼리할 수 있습니다.
이 기능은 반환된 상태가 결정적이지 않아 합의를 깨는 과거에 많은 문제를 일으켰습니다. 우리는 모든 체인이 많은 포크를 유지하고 잠재적으로 버그를 도입하지 않고도 자체 화이트리스트를 쉽게 구성할 수 있도록 이 승인 목록을 추가했습니다. Osmosis는 사용자 지정 모듈에 대해 이를 활성화하기 위해 포크했으며 다른 체인에서도 유사한 기능을 원했습니다.
그러나 수락 목록은 체인 설계자가 유지 관리하고 지원하려는 개별 Stargate 쿼리에 대한 지원을 다시 추가하는 방법입니다(자체 위험 부담). 이제 기본 승인 목록은 비어 있으며 사용하려는 쿼리 유형을 추가하려면 체인의 Go 코드에서 변수를 설정해야 합니다.
추가 정보:
https://github.com/CosmWasm/wasmd/issues/904
작성자 주소로 계약 가져오기
이전 버전에서는 code-id에 대한 모든 계약 인스턴스를 가져오는 쿼리가 있었습니다. 널리 사용되는 사용 사례는 주소 x로 생성된 모든 계약 인스턴스를 나에게 제공하는 것입니다.
이 릴리스부터 이제 지원되며 더 나은 UX를 사용할 수 있습니다.
추가 정보:
https://github.com/CosmWasm/wasmd/issues/998
지원 인스턴스화 권한 > gov 저장소에 대한 체인 권한
이것은 또한 허가된 체인에 인스턴스를 생성하는 것에 관한 것입니다.
이전 버전에서는 상점 wasm 코드와 코드 인스턴스화 설정에 대한 구성 업데이트가 필요했습니다. 이제 이 릴리스에서 store gov 제안은 이미 올바른 인스턴스화 권한을 설정할 수 있습니다.
이것은 gov 작업 흐름을 개선하고 하나의 제안을 저장합니다.
추가 정보:
https://github.com/CosmWasm/wasmd/issues/1020
참여하다
당신이 보는 것과 같이? Twitter에서 전 세계에 알리거나 Discord에서 토론에 참여하세요. 다가오는 CosmWasm Academy 코호트에 대한 정보를 얻으려면 매체에서 우리를 팔로우하거나 방문하십시오.http://academy.cosmwasm.com, 스킬 레벨을 올릴 수 있습니다.
그리고 올해의 마지막 커뮤니티 콜을 확인하십시오. 12월 20일 화요일 오후 6시(CET)에 더 많은 초기 통찰력과 질문을 할 수 있는 공간에 대한 많은 흥미진진한 발표가 있을 것입니다.
의제: https://github.com/CosmWasm/cosmwasm/issues/1548

![연결된 목록이란 무엇입니까? [1 부]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































