Как узнать, содержит ли платёжный адрес Cardano стейкинговый credential
В выгрузке кошелька могут встречаться base- и enterprise-адреса. По байту заголовка можно узнать, есть ли ссылка на стейкинг и как задан платёжный credential.
Декодируйте двоичный заголовок
Проверьте текстовую кодировку адреса и извлеките исходные байты декодером. У платёжных адресов Shelley старшие четыре бита первого байта задают тип, младшие — тег сети.
0x01 = 0000 0001
0x61 = 0110 0001
В обоих примерах тег 1 обозначает mainnet. Тип 0 — base-адрес с хешами платёжного и стейкингового ключей. Тип 6 — enterprise-адрес с хешем платёжного ключа без стейкингового credential.
Не подставляйте вымышленный адрес наград
Из одного enterprise-адреса нельзя получить стейкинговый credential для запроса наград. Даже у base-адреса проверьте тип credential перед построением адреса наград. Для адресов Byron нужен отдельный декодер. cips.cardano.org Cardano CIP-19