Кратко
- В редакции 03 следующий подписант подтверждал хеш заранее создаваемого контекста; координатор мог собрать подписи в обратном порядке.
- Редакция 04 хеширует полный предыдущий signoff, включая фактическую подпись, и отклоняет старые, смешанные и незакреплённые сильные цепочки.
- Новый переход доказывает зависимость завершённых артефактов. Он не доказывает доверенное время, чтение, понимание, окончательную авторизацию, исполнение или эффект.
Все подписи могли быть подлинными, а рассказ об их порядке — ложным. Именно это признаёт draft-schrock-ep-quorum-04, индивидуальный проект с предполагаемым статусом Informational, поданный 6 сентября.
В редакции 03 контекст каждого следующего одобряющего содержал prev_context_hash — хеш контекста предшественника. Документ утверждал, что благодаря этому подписи сами доказывают последовательность согласования.
Но контекст ещё не является подписанным доказательством. Оркестратор мог заранее построить все контексты, первым получить автограф последнего участника, пройти список назад, а затем показать пакет в правильном порядке. Проверки проходили, хотя следующий человек не зависел от уже существующей предыдущей подписи.
Входом стала законченная предыдущая подпись
Профиль EP-QUORUM-SIGNOFF-CHAIN-v1 берёт полный JSON-объект предыдущего signoff, включая реально переданную подпись. Перед SHA-256 он соединяет доменный разделитель, один нулевой октет и UTF-8-представление JCS. Следующий участник включает полученный prev_signoff_hash в собственный подписываемый контекст.
Первый контекст обязан не содержать поля. Null в первом звене, отсутствующий или неизвестный профиль, старый prev_context_hash, смешение форматов, неверный переход или замена предыдущей подписи ломают сильную цепочку. Даже другая корректная подпись того же контекста меняет хеш и требует заново подписать следующий шаг.
При заявленных предположениях о стойкости подписей и хеша это создаёт причинную зависимость следующего доказательства от уже завершённого предыдущего. Доверенных часов не появляется: issued_at остаётся утверждаемым значением. Не доказываются показанный экран, чтение предыдущего решения, понимание, добровольность, отсутствие сговора или автоматического одобрения.
Артефакт не должен назначать собственную власть
Gate проверяет форму политики, подписи, точное действие, роли, различные идентификаторы людей, различные ключи, порог, порядок, сильную цепочку и окно. Настоящая подпись зарегистрированного человека в неподходящей роли не засчитывается. Один ключ под двумя именами не становится двумя одобряющими. Неполный trail не даёт частичных полномочий.
Однако ожидаемая политика и Approver Directory должны поступить из аутентифицированных источников вне предъявленного quorum. Иначе доказательство само выбирает правило своей достаточности. Базовый проект также ограничивает идентичность: криптография подтверждает подпись зарегистрированного ключа; связь идентификатора с конкретным человеком создаёт система регистрации.
Пошаговый admission лишь раньше отсеивает известные ошибки. Executor обязан пересчитать весь gate, поскольку не доверяет оркестратору. Даже выполненный quorum остаётся свидетельством одобрения, а не полным решением AUTHORIZED. Затем отдельно нужны локальное решение, исполнение, наблюдение эффекта и атомарное однократное потребление.
Три реализации одной команды — не три независимых свидетельства
Проверяющие программы на JavaScript, Python и Go используют общий репозиторий и корпус. Совпадение результатов на старых цепочках с обратными подписями и на подмене предшественника полезно как внутренняя проверка согласованности. Оно не является независимой реализацией, формальным доказательством, испытанием совместимости или промышленным внедрением.
Проект не требует действий IANA. Запись в Datatracker не превращает индивидуальную подачу в консенсус IETF. Ценность правки уже и честнее: общий слой фиксирует лишь тот инвариант, который поддерживают байты, а организационная власть, человеческое решение и операционная реальность остаются отдельными слоями.
Источники
- Запись документа в IETF Datatracker
- EP-QUORUM, редакция 04
- EP-QUORUM, редакция 03
- EP Authorization Receipts, редакция 12
- RFC 8785: JSON Canonicalization Scheme
- Web Authentication, Level 2
- RFC 2119: ключевые слова требований
- RFC 8174: регистр ключевых слов
- Minimum Initial Specification, Localized Future Decision, and Voluntary Adoption
- On Reality Layers, Symbolic Power, and Why Clarity Feels So Hostile
- Running-Code Primacy
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
