Timestamp GIT Secure your prior art without exposing code

← All posts

2026-10-07

Доказательство временной метки Git-коммита для патентных споров

Доказательство временной метки Git-коммита для патентных споров
timestamp git blockchain proof

Доказательство временной метки Git-коммита для патентных споров

В патентном споре дорогой вопрос редко звучит как «вы написали этот код?». Он звучит как «можете ли вы доказать когда?». Git записывает дату в каждый коммит, но эта дата хранится в базе данных, которой вы не владеете, и её можно переписать одним rebase. Доказательство временной метки Git-коммита для патентных споров решает эту проблему, превращая историю ваших коммитов в криптографическое prior art, которое третья сторона может проверить по блокчейну Bitcoin — без того, чтобы кто-либо читал ваш исходный код.

Эта статья объясняет, что представляет собой такое доказательство, как оно создаётся автоматически и где оно выдерживает проверку в юридическом разговоре.

Что такое доказательство временной метки Git-коммита?

Доказательство временной метки Git-коммита — это криптографическая запись, показывающая, что конкретный хеш коммита существовал в определённый момент времени, закреплённая в блокчейне Bitcoin. Это всё определение. Оно не описывает ваш код, вашу логику или ваш бизнес — оно доказывает существование отпечатка в определённый момент времени.

Полезно разделить две вещи, которые разработчики обычно путают:

  • Дата коммита в Git. Хранится в объекте коммита, редактируется с помощью git commit --amend или rebase и размещается на инфраструктуре, которую вы не контролируете, если используете платформу вроде GitHub. При юридическом аудите внутренние логи вроде этого обычно отклоняются как предвзятые или поддающиеся манипуляции.
  • Доказательство, закреплённое в Bitcoin. Запись о том, что хеш существовал до того, как был добыт определённый блок Bitcoin. После подтверждения блока ни один субъект — ни хостинг-провайдер, ни мы, ни вы — не может его изменить или датировать задним числом.

Один момент, который удивляет людей: доказательство охватывает хеш коммита, а не исходный код. Timestamp GIT никогда не видит, не копирует и не хранит ваш фактический исходный код. Он математически штампует хеш и ничего больше. Это zero-knowledge по замыслу, и именно это делает весь подход безопасным для использования в приватных и даже содержащих коммерческую тайну репозиториях.

Если вам нужна более широкая картина того, как это вписывается в IP-стратегию, руководство по интеллектуальной собственности для разработчиков охватывает смежные вопросы; эта статья остаётся на самом доказательстве временной метки.

Аналогия с нотариусом: почему временная метка — это доказательство

Подумайте о нотариусе. Вы передаёте запечатанный конверт, и нотариус ставит на нём дату. Нотариус не вскрывает конверт, не читает письмо и не хранит копию содержимого. Штамп удостоверяет только одно: этот запечатанный объект существовал в эту дату.

Теперь перенесите это на данный рабочий процесс:

  • Запечатанный конверт — это ваш хеш коммита, односторонний отпечаток SHA-1/SHA-256 состояния репозитория. Он ничего не раскрывает о содержимом, но уникально с ним связан.
  • Нотариус — это Bitcoin. Его нельзя подкупить, на него нельзя оказать давление, чтобы он датировал штамп задним числом, и у него нет мнения о вашем бизнесе.
  • Заверенная копия, которую вы храните, — это файл квитанции .ots и манифест. Доказательство у вас, и вы можете передать его кому угодно.

Почему эта аналогия важна юридически? Потому что слабое место внутренних доказательств не в том, что они неверны, — а в том, что это ваши доказательства. Лог Git-сервера говорит «доверьтесь мне». Публичное закрепление в блокчейне говорит «проверьте сами, вот математика». Именно это различие превращает историю коммитов в нечто, на чём юрист может построить аргумент о prior art.

Как Timestamp GIT превращает коммиты в доказательства для патентных споров

Модель из трёх шагов проста.

Шаг 1 — Отпечаток. Когда вы делаете коммит, Git генерирует уникальный односторонний хеш (SHA-1 или SHA-256), представляющий точное состояние всего вашего репозитория в этот момент. Это криптографически стойкий отпечаток вашей работы.

Шаг 2 — Закрепление. Timestamp GIT извлекает только хеши коммитов, собирает их в ежедневный текстовый файл-манифест по каждому репозиторию, генерирует SHA-256-хеш этого манифеста, строит дерево Меркла и закрепляет корень Меркла в транзакции Bitcoin с помощью протокола OpenTimestamps. Существование хеша замораживается во времени в конкретном блоке Bitcoin.

Шаг 3 — Доказательство. Вы получаете неизменяемый файл квитанции .ots. Манифест и квитанции возвращаются в ваш собственный репозиторий — либо в выделенную ветку timestamps, либо в отдельный теневой репозиторий — готовые для юриста, аудитора или суда.

Под капотом управляемый конвейер выглядит так:

  1. Обнаружение коммитов — GitHub App обнаруживает новые коммиты через вебхуки.
  2. Очередь хешей — хеши коммитов попадают в хранилище «ключ-значение» в памяти для пакетной обработки.
  3. Ночной cron-воркер — каждую ночь воркер группирует ожидающие хеши, записывает манифесты .txt, строит дерево Меркла, создаёт доказательства против публичных календарей OTS и закрепляет корень в Bitcoin.
  4. Доставка доказательств — манифесты и квитанции возвращаются в ваш репозиторий. Подтверждение Bitcoin обычно занимает около трёх часов, поэтому запись доказательств завершается через несколько часов после запуска пакета.

Важная часть для вашей команды: вы устанавливаете GitHub App один раз. Никаких CLI-инструментов, никаких команд протокола, никаких ручных шагов. Ночной воркер делает всё остальное, и на машинах ваших разработчиков ничего устанавливать не нужно. Даже подход с использованием сырого протокола — самостоятельная оркестрация календарей и транзакций — мы рассматриваем как деталь реализации, а не как рабочий процесс, который вам когда-либо придётся запускать.

Для команд, которые хотят, чтобы хеш покидал их инфраструктуру их собственными руками, режим Enterprise ZK заменяет вебхук на GitHub Action из 12 строк, который выполняется на ваших раннерах и отправляет в API Timestamp GIT только хеш коммита. Ваш исходный репозиторий полностью остаётся в стороне.

Почему это важно в патентном споре (и что люди понимают неправильно)

Три сценария возникают снова и снова:

  • Патентные тролли. Non-practicing entities подают широкие патенты на распространённые технологии. Если вы реализовали эту технологию за месяцы до их даты подачи и можете это доказать, закреплённая дата коммита становится prior art, способным аннулировать притязание.
  • Споры с сотрудниками. Когда ведущий разработчик уходит, начинаются споры о том, когда была задумана функция. Неизменяемая временная метка заменяет «он сказал, она сказала» датой, которую ни одна из сторон не может отредактировать.
  • Заявления о clean-room разработке. Конкурент заявляет, что «независимо разработал» нечто похожее. Доказательство того, что у вас была готовая логика на 18 месяцев раньше, создаёт математическую стену, через которую не перелезть рассказом о независимой разработке.

И три заблуждения, которые стоит развеять сразу:

  • «Моей истории коммитов на GitHub достаточно». Она размещается третьей стороной, которую вы не контролируете, и её можно редактировать. Amend, rebase, force-push — даты сдвигаются.
  • «Мне нужно опубликовать свой код, чтобы доказать, что он у меня был». Нет. Timestamp GIT закрепляет хеш, а не исходный код. Вы получаете доказательство prior art без раскрытия реализации — а это именно то, что нужно для коммерческой тайны.
  • «Мне пришлось бы самому запускать OpenTimestamps». Не пришлось бы. GitHub App обрабатывает протокол от начала до конца, а следующий раздел показывает, как проверить результат.

Проверка и представление доказательства

Проверка выполняется локально и по принципу zero-knowledge. Любой может взять файл .ots и проверить его по блокчейну Bitcoin, не доверяя Timestamp GIT — и не нуждаясь в существовании нашей компании. Криптографическое доказательство опирается исключительно на SHA-256 и данные блоков Bitcoin. Вот что означает «независимость от поставщика» на практике: никакого проприетарного формата, никакой привязки к вендору.

Для повседневного использования продукт предоставляет те же доказательства в более удобных формах:

  • Публичная страница проверки по адресу /verification/{user}/{repo}/{date} — пошаговая многоуровневая проверка цепочки Меркла. Все вычисления происходят локально в вашем браузере. Никто не видит, что вы проверяете.
  • PDF-сертификат для конкретной даты (/api/report/{user}/{repo}/{date}) — артефакт, который вы передаёте юрисконсульту.
  • Аудиторский CSV полного реестра (/api/audit/{user}/{repo}), полезный для полного обзора цепочки хранения.
  • Бейджи README, публично отображающие статус проверки. Инвесторы и покупатели читают их как сигналы зрелости IP. URL бейджей и markdown-сниппеты берутся из /api/badgeLink/{user}/{repo}.

Быстрый способ проверить публичный статус из скрипта:

curl -s https://timestampgit.dev/api/statusSummary/acme/payments-service

Приватные репозитории добавляют к URL зашифрованный HMAC, поэтому только авторизованные пользователи могут просматривать их статус. HMAC специфичен для конкретного экземпляра сервера.

Пошаговую версию этого процесса — включая то, как самостоятельно пройти по цепочке Меркла — см. в Как проверить временную метку Bitcoin для Git-репозитория.

Варианты развёртывания: управляемый, Enterprise ZK или self-hosted

Стандартный режим (GitHub App). Установите приложение на репозиторий. Оно читает только хеш HEAD-коммита и записывает доказательства в ветку timestamps или теневой репозиторий. Модель разрешений GitHub означает, что нам нужен как минимум доступ на чтение исходного репозитория (разрешения только на хеш коммита не существует), плюс доступ на чтение-запись к целевому репозиторию.

Режим Enterprise ZK. GitHub Action из 12 строк выполняется на вашей инфраструктуре и отправляет в API только хеш коммита. Доступ на чтение исходного репозитория не требуется, и ваш код никогда не покидает вашу среду.

Лицензия на self-hosted Docker. Для максимальной безопасности и сред с физической изоляцией Timestamp GIT поставляется как Docker-образ. Быстрый старт с Docker Compose выглядит так:

services:
  timestampgit:
    image: rue1401/timestampgit:prod
    ports:
      - "8080:8080"
    volumes:
      - ./data:/app/data
    restart: unless-stopped
  valkey:
    image: valkey/valkey:8
    restart: unless-stopped
docker compose pull
docker compose up -d
docker compose logs -f timestampgit

После запуска приложение доступно по адресу http://localhost:8080, а мастер настройки при первом запуске проведёт вас через подключение вашего GitHub App. Ограниченная по времени демонстрационная лицензия для оценки доступна через форму запроса на странице Docker License. Пошаговое руководство по self-hosted Docker охватывает полную настройку, если вы пойдёте этим путём.

FAQ

Действительно ли закреплённая в Bitcoin временная метка Git-коммита допустима в патентном споре? Она предоставляет готовые для суда доказательства, основанные на всемирно признанных криптографических стандартах. Доказательство показывает, что хеш коммита существовал в конкретное время блока Bitcoin, что можно использовать для установления prior art. Допустимость зависит от вашей юрисдикции и вашего юрисконсульта, но само криптографическое доказательство математически проверяемо любым человеком.

Видит ли или хранит ли Timestamp GIT мой исходный код? Нет. Timestamp GIT обрабатывает только хеши коммитов. В стандартном режиме GitHub App читает хеш HEAD-коммита; в режиме Enterprise ZK GitHub Action отправляет только хеш из вашей инфраструктуры, без доступа на чтение исходного репозитория. Ваш код остаётся в вашей среде.

Что нужно установить на машинах моих разработчиков? Ничего. Timestamp GIT — это управляемый GitHub App. Вы устанавливаете его один раз на репозиторий, и каждый коммит автоматически закрепляется каждую ночь. Вашей команде не нужно изучать или запоминать никакие CLI-инструменты.

Сколько стоит защита приватного репозитория? Публичные репозитории бесплатны в рамках плана Open Source. Приватные репозитории покрываются планом Pro Agency за $49/месяц, а Enterprise ZK с GitHub Actions — за $199/месяц. Также доступна лицензия на self-hosted Docker для сред с физической изоляцией, с ограниченной по времени демонстрационной лицензией для оценки.

Заключение

Доказательство временной метки Git-коммита превращает то, что вы и так делаете — коммитите код, — в prior art, который вы можете защищать. Одной истории коммитов не выдержать юридического аудита, потому что её можно редактировать и она размещена кем-то другим. А хеш, закреплённый в Bitcoin, выдержит, потому что математика публична, а запись неизменяема.

Практический путь — перестать думать о временных метках как о рутинной обязанности. Установите GitHub App один раз, нацельте его на репозитории, которые важны, и позвольте ночному закреплению делать работу. Проверяйте панель статуса, когда нужно доказательство, встраивайте бейдж, когда хотите показать зрелость IP, и передайте квитанцию .ots своему юристу в тот день, когда она действительно понадобится.

Похожие статьи

EU label: AI-generated content