|
COOPENOMICS
v1
Кооперативная Экономика
|
Функции | |
| void | ano::migrate () |
| Миграция контракта. Подробнее... | |
| void | ano::endorse (eosio::name issuer, eosio::name subject, eosio::checksum256 chain_id, eosio::public_key cert_key, eosio::time_point_sec expires_at, std::string credential) |
| Выдать или продлить заверение. Подробнее... | |
| void | ano::revoke (eosio::name issuer, eosio::name subject) |
| Прекратить признание: убрать запись о заверении. Подробнее... | |
| void ano::endorse | ( | eosio::name | issuer, |
| eosio::name | subject, | ||
| eosio::checksum256 | chain_id, | ||
| eosio::public_key | cert_key, | ||
| eosio::time_point_sec | expires_at, | ||
| std::string | credential | ||
| ) |
Выдать или продлить заверение.
| issuer | кто заверяет: АНО либо оператор, у которого есть действующее заверение. |
| subject | кого заверяют. |
| chain_id | сеть, в которой действует заверение. |
| cert_key | ключ заверения субъекта, который признаётся. |
| expires_at | когда заверение перестаёт действовать. |
| credential | подписанное заверение целиком — то, что поедет внутри удостоверения пайщика и будет проверено без сети. |
issuer.Действие одно на оба уровня цепочки: АНО им признаёт оператора, оператор — кооператив. Отличие только в том, кто подписывает, и в предельном сроке.
Кто вправе заверять. АНО — всегда, она корень и опирается сама на себя. Все остальные — только имея действующее заверение. Это и есть то свойство, ради которого затевалась цепочка: право заверять не берётся из факта существования аккаунта, а передаётся сверху и вместе со сроком.
Почему нельзя заверить самого себя. Тогда любой аккаунт объявил бы себя признанным, и проверка перестала бы что-либо значить: цепочка, замкнутая на себя, ведёт не к корню, а по кругу.
Почему срок ограничен сверху. Отозвать выданную подпись невозможно — она уже у того, кому её выдали. Единственный способ перестать признавать — перестать продлевать и дождаться, пока заверение погаснет. Предел срока и определяет, сколько ждать; без него заверяющий выписал бы бессрочное признание, и отзыв стал бы недостижим.
Что действие не проверяет — подпись. Она разбирается там же, где проверяются удостоверения пайщиков, единственной реализацией. Испортивший подпись портит её себе: его собственные кооперативы перестанут проходить проверку.
| void ano::migrate | ( | ) |
Миграция контракта.
Пустышка для обновлений сборки. Настоящие миграции состояния выполняются отдельным планом.
| void ano::revoke | ( | eosio::name | issuer, |
| eosio::name | subject | ||
| ) |
Прекратить признание: убрать запись о заверении.
Действие называется отзывом, но отзывом в строгом смысле не является, и это важно понимать. Подписанное заверение уже у того, кому его выдали; забрать подпись назад нельзя, и проверяющий без сети продолжит принимать её до конца срока. Убрав запись, заверяющий прекращает продление — заверение погаснет само в пределах своего срока, месяца или меньше.
Проверяющему с сетью таблица даёт последнее слово: записи нет — признания нет, и ждать истечения незачем.
Убрать запись может выдавший её либо АНО. Второе — чтобы ошибку оператора было кому исправить, не дожидаясь его самого.