Как узнать, содержит ли платёжный адрес 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