Как воспроизвести предсказуемый адрес экземпляра CosmWasm
Детерминированное создание зависит от точного набора байтов. Читаемая запись соли может отличаться от значения, действительно переданного в цепочку.
Получите предполагаемый адрес запросом к сети
Задайте CHECKSUM как hex-контрольную сумму кода, CREATOR как фактического создателя, GRPC как совместимый TLS gRPC wasmd с reflection. В примере аргументы инициализации исключены из вычисления адреса.
grpcurl -d "{\"codeHash\":\"$CHECKSUM\",\"creatorAddress\":\"$CREATOR\",\"salt\":\"0102\"}" "$GRPC" cosmwasm.wasm.v1.Query/BuildAddress
Строка соли 0102 обозначает два байта. Текст UTF-8 из символов 0102 занимает четыре байта с hex-представлением 30313032 и даст другой адрес. Сопоставьте результат BuildAddress с ожидаемым адресом экземпляра.
Сверьте режим создания
Если в адрес входят байты сообщения инициализации, передайте те же байты в initArgs как base64 для protobuf JSON. Совпадение прогноза не доказывает существование экземпляра или успешность будущих проверок прав и исполнения контракта. github.com wasmd Query API