Журнал аудита
Журнал аудита, по адресу /audit, это реестр. Каждое событие несёт SHA-256-хеш своего
содержимого и хеш предыдущего события, а затем подпись Ed25519 той машины,
которая его записала.
Показаны обе колонки хешей
Заголовок раздела «Показаны обе колонки хешей»Журнал утверждает, что prev каждой строки равен hash строки под ней. Обе колонки
показаны рядом, чтобы это можно было проверить самому, глазами. Одинокая зелёная
галочка, которая всегда говорит verified, никого ничему не учит, и ей невозможно
не доверять.
- ⟳ Verify перечитывает сам журнал, не индекс, и заново проходит цепочку. Сверка производной копии с самой собой ничего бы не доказала.
- Rebuild выбрасывает поисковый индекс и переигрывает журнал в новый. Безопасно в любой момент.
- Колонка sig отмечает любое событие, чья подпись не совпадает с его хешем.
Отредактируйте одну строку журнала вручную, и каждое событие после неё провалит проверку, потому что каждый хеш покрывает предыдущий. Удаление хвоста, единственная правка, которую цепочка не видит; именно поэтому журнал реплицируется, а не доверяется одной машине.
Чего здесь нет
Заголовок раздела «Чего здесь нет»Эфемерные события, присутствие, набор текста (kinds 9000-9999), никогда не записываются. Heartbeat каждые пятнадцать секунд на трёх машинах, это четверть миллиона событий в год, которые никто никогда не прочитает.
Из shell
Заголовок раздела «Из shell»curl -s localhost:3401/api/events/verify | jqtail -f ~/.erebros-t/events/log.jsonlЦепочка каждой машины проверяется отдельно, потому что у каждой свой файл;
ok: false называет порядковый номер, на котором разрыв. Если цепочка разорвана,
кто-то редактировал log.jsonl, восстановите его из резервной копии; не чините вручную.
См. также
Заголовок раздела «См. также»- Что такое Teams, четыре решения.
- Поиск