02 Технические принципы MeriToken
Введение: Опираясь на положение, установленное в 01-meritoken-overview.md, этот документ раскрывает технические инварианты, которым MeriToken должен удовлетворять в двух ролях — «контрактный компонент» и «соединитель социальных отношений», — по пяти нитям: шифрование, хранение, получение, гарантии конфиденциальности, гарантии прав владения и пользования. Этот документ не пересказывает общую конструкцию
GMC; когда речь заходит о поведении вышестоящего уровня, он отсылает к внешним ссылкам в 07-related-projects.md.
Предпосылки
Как только MeriToken берёт на себя роль многократно ссылаемого контрактного компонента и соединителя социальных отношений в новом обществе, его технические принципы уже не могут ограничиваться «записью одной строки в книге учёта». Каждое порождение, передача и обращение к MeriToken рассматривается по двум недопустимым к нарушению измерениям: во-первых, проверяемость — любая ссылаемая запись должна быть независимо проверяема любым третьим лицом; во-вторых, гарантии конфиденциальности — содержание ссылаемой записи не обязано полностью раскрываться непричастным сторонам в момент обращения.
Этот документ берёт эти два недопустимых к нарушению ограничения за отправную точку и развивает обсуждение по пяти нитям: шифрование, хранение, получение, гарантии конфиденциальности, гарантии прав владения и пользования. Каждая нить соответствует набору конкретных технических принципов, действующих в рамках ограничений вышестоящей системы GMC, однако этот документ не разворачивает протокольные подробности самой GMC.
Основное содержание
Шифрование
На протяжении всего жизненного цикла порождения и передачи MeriToken использует ту же асимметричную систему ключей, что и GMC, для выпуска и взаимного подписания записей:
- Многостороннее совместное подписание: запись MeriToken несёт по меньшей мере два класса подписей — «вкладчик и свидетель». Дополнительные подписи могут добавляться при участии третьесторонней оценки или арбитража. Многостороннее совместное подписание — минимальный технический носитель семантики «контрактного компонента»; нехватка одной подписи означает нехватку одного свидетельства исполнения.
- Обязательство по содержанию: содержательная часть записи (описание вклада, контекст, отпечатки результатов и т. п.) фиксируется в цепочке в форме обязательства; само исходное содержание не обязано попадать в цепочку. Это и сохраняет проверяемость, и не раскрывает несущественные детали содержания всей сети
GMC. - Поддающееся аудиту, но скрываемое: в сценариях аудита содержание за обязательством может быть избирательно раскрыто, и сам акт раскрытия оставляет след. Без раскрытия третьи лица всё равно могут проверить существование и право собственности на запись, но не могут прочесть детали содержания.
Цель конструкции шифрования — не превратить MeriToken в «непротекаемый» содержательный архив. Она в том, чтобы при семантике «контрактного компонента» каждое обещание и акт исполнения опирались на независимое криптографическое обеспечение, и чтобы каждый акт обращения не требовал повторного раскрытия исходного содержания.
Хранение
Ключевой вопрос на уровне хранения — не «где хранить», а «с какой гранулярностью организовывать и кому персистировать»:
- Обязательства в цепочке, содержание вне цепочки: криптографические обязательства и подписи записей MeriToken персистируются в цепочке
GMC; исходное содержание (например, результаты вклада, текст оценки) удерживается субъектом вне цепочки согласно его локальной политике. Обязательства в цепочке гарантируют сетевую согласованность записей, а содержание вне цепочки сохраняет полноту субъекта над собственными данными. - Агрегация по субъекту: хранение вне цепочки агрегируется на уровне гранулярности личных субъектов или субъектов
Fay. Каждый субъект решает сам, какие носители хранения, политики резервного копирования и окна доступности использовать, не завися ни от какого централизованного поставщика услуг. - Избыточность и восстанавливаемость: субъект может выбрать передачу зашифрованной копии своего внецепочечного содержания доверенному контрагенту (что также записывается как запись MeriToken), чтобы восстановление было возможным при потере локальной копии. Сам акт передачи также вносится в
GMC, что предотвращает скрытый путь «восстановления из ничего».
Разделение хранения на два уровня — «обязательство в цепочке / содержание вне цепочки» — призвано уравновесить цели «сетевой проверяемости» и «хранения, контролируемого субъектом». Без одного из них MeriToken либо вырождался бы в публичный архив, читаемый кем угодно, либо сжимался бы до локальной балльной системы, не пригодной для межсубъектного обращения.
Получение
Под получением понимается конкретный поток, которому следует любой субъект (личный или Fay) при обращении к MeriToken:
- По ссылке, а не по копии: ссылаемая сторона не передаёт ссылающемуся копию записи MeriToken. Вместо этого она предоставляет независимо проверяемый ссылочный дескриптор. По дескриптору ссылающийся проверяет существование и право собственности на запись через
GMC, после чего может, при необходимости, запросить у ссылаемой стороны дополнительное раскрытие. - Уровневое раскрытие: запрашивающий может запросить три уровня раскрытия — «существование + право собственности» (наименьшее раскрытие), «семантическое резюме записи» (среднее раскрытие) и «детали исходного содержания» (наибольшее раскрытие). Каждый уровень — независимое действие; нет поведения по умолчанию «раз получил дескриптор — автоматически получаешь доступ к содержанию».
- Получение оставляет след: каждое действие получения (включая получения с нулевым раскрытием, лишь подтверждающие существование) оставляет след согласно правилам вышестоящей системы
GMC. След служит и аудитным свидетельством, и данными о рёбрах в последующем графе социальных отношений, фиксирующем «кто на кого ссылался».
Разделение получения на три шага «ссылка → проверка → раскрытие» позволяет MeriToken оставаться интенсивно используемым в семантике «соединителя социальных отношений»: в большинстве случаев сотрудничества для поставки доверия достаточно лишь первых двух шагов; третий шаг включается только тогда, когда детали действительно нужно изучить.
Гарантии конфиденциальности
Гарантии конфиденциальности — не отдельная функция, а семантика конфиденциальности, извлекаемая из каждого из уровней шифрования, хранения и получения:
- Минимальное раскрытие по умолчанию: по умолчанию любое отношение обращения соответствует наименьшему уровню раскрытия; любое получение выше минимального требует активного согласия ссылаемой стороны, и само это согласие записывается как запись MeriToken.
- Связи не реконструируются посторонними: третье лицо не может реконструировать полный социальный граф «кто на кого ссылался и что было сослано» лишь по обязательствам в цепочке
GMC. Видимость каждого акта обращения ограничена ссылающимся и ссылаемой стороной, и при желании может быть распространена на конкретные третьи стороны. - Отзыв и аннулирование: согласно исходному соглашению ссылаемая сторона может отозвать разрешение на раскрытие, после чего запись с высоким уровнем раскрытия становится недействительной для ссылающегося с этого момента. Уже произведённые действия обращения остаются независимо проверяемыми, но ранее раскрытое содержание больше не может быть сослано повторно.
Суть гарантии конфиденциальности — не «данные никогда не появляются в цепочке» — это противоречило бы проверяемости. Это «в цепочке живут только обязательства, а содержание раскрывается только при наличии разрешения». Это необходимое следствие семантики «контрактного компонента» в измерении конфиденциальности.
Гарантии прав владения и пользования
Право владения и право пользования — два предмета, которые нужно обсуждать отдельно:
- Право владения определяется отношением подписи: право владения записью MeriToken определяется совместно самыми ранними подписями «вкладчика и свидетеля» на этой записи и неизменно закрепляется в
GMC. Право владения не размывается повторным обращением и не дрейфует к неподписавшим субъектам через соглашения о передаче. - Право пользования предоставляется ссылаемой стороной: в отличие от права владения, «право пользования» описывает «кто, в каких сценариях, может ссылаться на этот MeriToken и включать его в свою аргументацию». Право пользования предоставляется ссылаемой стороной по сценарию, образуя матрицу авторизации «сценарий × пользователь», независимую от изменений права владения.
- Приоритет при конфликтах: при конфликте права владения и права пользования (например, держатель права пользования желает раскрыть исходное содержание, а владелец отказывается) приоритет имеет право владельца на отзыв. Этот приоритет — прямое следствие принципа «обещание предшествует ссылке» в семантике «контрактного компонента».
Разделение права владения и права пользования на два уровня устраняет двусмысленность вроде «сослался на ваш MeriToken — значит, теперь владею им». Право владения — институциональный бит; право пользования — реляционный бит. Различие между ними многократно вызывается в сотрудничестве нового общества.
⏳ Ожидаемая иллюстрация (слот:
meritoken-technical-flow) Описание: схема замкнутого цикла шифрования / хранения / получения MeriToken: многостороннее совместное подписание вкладчиком и свидетелем → обязательство в цепочкеGMC→ внецепочечное содержание, удерживаемое субъектом локально → получение ссылающимся по дескриптору → уровневое раскрытие → запись следа получения обратно вGMC. Запланированный файл:illustration/meritoken-technical-flow.png
Связь с другими темами
| Тема | Связь с этим документом |
|---|---|
| 01-meritoken-overview.md | Даёт определения двух ролей, которые этот документ затем технически конкретизирует. |
| 03-meritoken-social.md | Расширяет «получение / гарантию конфиденциальности / право пользования» этого документа в смысл на уровнях социальных отношений, политической логики и экономической структуры. |
| 04-meritoken-usage.md | Приземляет «получение» этого документа в сценарии применения для двух категорий обращающихся — личных субъектов и субъектов Fay. |
| 05-meritoken-credential.md | Помещает «право владения и право пользования» этого документа рядом с credential личности и прав владения, который несёт credential, и приводит соответствие. |
| 06-meritoken-deep-cases.md | Повторно использует определённые здесь потоки получения и раскрытия в сценариях высокоплотного использования и прокатки. |
| 07-related-projects.md | Содержит официальные внешние ссылки для вышестоящих тем — общего протокольного уровня GMC и операционной среды системы ifay. |
Сноски о терминах
Появляющиеся в этом документе Reserved_Term:
- GMC: Global Merit Chain — вышестоящая система, которой принадлежит MeriToken; см. glossary.md.
- Fay: неличный субъект, обращающийся к MeriToken; см. glossary.md.
- credential: credential личности и прав владения для личного субъекта или субъекта
Fay; см. glossary.md. - ifay: название проектной системы; см. glossary.md.
Основная китайская форма MeriToken используется как обычное обозначение MeriToken только в основном тексте чертежей zh-CN и zh-TW. Правила локализации MeriToken по языкам см. в разделе Localized_Term в glossary.md.
