Депонирование и эскроу исходного кода
Мы закрепим, как выглядел ваш продукт и в какой именно день, и напишем условия эскроу, которые прямо называют, когда и по каким доказательствам ваш заказчик получит копию исходного кода.
Когда нужны депонирование и эскроу

В прошлом месяце появилась копия
Вы знаете, кто из вас был первым. Чтобы это показать, нужны версия, дата и то, что закрепило и первое, и второе до начала спора.
Заказчик отказывается подписывать договор
Крупный покупатель хочет, чтобы исходный код держал третий, на случай если вы перестанете поддерживать продукт. Условие уже стоит в его шаблоне.
Два основателя спорят об одном файле
Работали оба, не записал ничего никто, а история репозитория начинается там, где кто-то этот репозиторий завёл.
Репозиторий остался у подрядчика
Сборка живёт в аккаунте, которым вы не управляете. Получить копию — одна задача, доказать, что в ней было в такой-то день, — другая.
Ваша единственная копия — ноутбук
Всё важное лежит на одной машине, и нигде не записано, когда появилась каждая часть. Для работы этого хватает, для спора — нет.
Что вы получаете
- Датированная запись на каждую версию
- Условия эскроу с названными триггерами
- Депозиты, которые принимает заказчик
- График обновления депозитов
Что требуется для депонирования и эскроу

Спор о копии решается датами и документами, и дата — единственная часть, которую никто не делает заранее. Потом её приходится собирать по чужим следам, и куски, которые никто не закрепил, так и остаются пропущенными.
Под одним словом ходят две разные работы. Одна закрепляет, что и когда существовало. Вторая кладёт копию исходного кода в руки нейтрального держателя, чтобы тот передал её, если случится названное.
Две работы под одним словом
Закрепление даты
Версия фиксируется так, чтобы позже вы могли показать: именно это содержимое существовало в тот день. Это ответ на вопрос о времени, и о том, кому принадлежит работа, он не говорит ничего.
Хранение исходника
Копия лежит у держателя, которого называет сам договор, — депозитарий, банк, специализированный сервис или иное согласованное сторонами лицо, — и уходит заказчику только при названных там событиях. Это ответ на вопрос о непрерывности, и про даты он не говорит ничего.
Как закрепляется дата
Механизм за ним ваших файлов не видит вовсе. Стандарт на штамп времени требует от службы ставить штамп только на хеш материала, отказываться разбирать этот хеш дальше проверки его длины и не включать в выдаваемый токен никаких сведений о том, кто обратился.
Обратно приходит подписанный токен с достоверным значением времени и собственным уникальным номером, утверждающий, что данное содержимое существовало в данный момент. Код при этом не покидает вашего периметра, а доказательство работает: хеш пересчитывается из сохранённого вами файла.
Что решает договор эскроу
- События, по которым копия выдаётся, — написанные так, чтобы посторонний мог понять, наступило ли одно из них.
- Что кладётся на хранение: исходный код, инструкции по сборке, зависимости, ключи и документация, по которой это можно собрать.
- Проверка: убеждался ли кто-нибудь, что из депозита действительно собирается тот продукт, который вы продали.
- Обновление: как часто новая версия заменяет старую и кому сообщают, когда этого не произошло.
- Что заказчик может делать с кодом после выдачи и что остаётся за пределами этого разрешения.
Какие части продукта право вообще способно удержать — это защита технологии; действия против уже продающейся копии — защита от клонов.
Что должно прийти от вас
- Версии, которые надо закрепить, и даты, которые вы уже можете показать
- Договор с заказчиком, в котором стоит условие об эскроу
- Сборка: что нужно, чтобы превратить исходный код в продукт
- Кто подписывает и кто вправе потребовать выдачу
Источники: требование ставить штамп только на хеш материала, не разбирать его дальше проверки длины и не включать в токен сведения об обратившемся — в стандарте протокола штампа времени, раздел 2.1.
Этапы работы
Решаем, что стоит закреплять, — 2–3 рабочих дня.
Запись нужна не каждому коммиту. Мы выберем точки, о которых действительно будут спорить: первая рабочая версия, каждый выпуск, материал, сданный подрядчиком, файлы дизайна за внешним видом.
Фиксируем версии.
По каждой выбранной точке мы закрепим содержимое и день, сохраним файл, из которого сделана запись, и опишем, как эти двое потом сверяются друг с другом.
Запись без файла, из которого она сделана, не доказывает ничего, поэтому хранятся они вместе.
Читаем присланное вам условие об эскроу.
Условие приходит из шаблона заказчика. Мы прочитаем, что оно выдаёт, при каких событиях и что заказчику будет позволено делать с кодом после выдачи.
Пишем условия выдачи.
События формулируются так, чтобы человек вне сделки мог понять, наступило ли одно из них: названный шаг банкротной процедуры, неисполненная поддержка после письменного предупреждения, закрытие продукта.
Мы напишем и то, чего заказчик делать не вправе: выдача — это лицензия, и её пределы место имеют в том же документе.
Согласуем состав депозита.
Из одного исходного кода продукт не собирается. В список входят инструкции по сборке, зависимости с их версиями, конфигурация и те секреты, без которых продукт не запускается.
График обновления.
Депозит, сделанный однажды, со временем становится депозитом того, что вы больше не продаёте. Мы зададим, как часто он заменяется и кому сообщают, когда замена задержалась.
Более широкое направление, к которому это относится, — «IP и контент».
Наши кейсы
FAQ
Нет, и это стоит проговорить до того, как за него заплатят. Депонирование — это доказательство, а доказательство отвечает на вопрос о времени: такое содержимое существовало в такой день. О том, кто создал материал, перенёс ли договор его вашей компании и охраняется ли вообще то, что внутри, оно не говорит ничего. На эти вопросы отвечают документы вокруг работы, и депозит стоит рядом с ними, не заменяя ни одного.
Что конкретное содержимое существовало в конкретный момент времени. Стандарт за ним требует от службы ставить штамп только на хеш материала и включать в подписываемый токен достоверное значение времени и уникальный номер. Хеш пересчитывается из файла, поэтому токен вместе с файлом показывают: именно это содержимое, неизменённым, и было проштамповано. Уберите одно из двух — пара не доказывает ничего.
Только при событиях, названных в договоре, — поэтому вокруг этих событий и идут все переговоры. Их надо написать так, чтобы держатель, который о вашем деле не знает ничего, мог по документам понять, наступило ли одно из них: названный шаг банкротной процедуры, неисполненная поддержка после письменного предупреждения, снятие продукта с продажи. Размытый повод вроде существенного нарушения ставит держателя судьёй в вашем споре, а такую роль договор передавать не должен.
Для закрепления даты — да. Стандарт штампа времени требует, чтобы служба работала с хешем материала, и запрещает ей разбирать этот хеш дальше проверки длины, так что файлы остаются у вас. Эскроу устроено ровно наоборот: весь его смысл в том, что копия лежит там, где вы ей не управляете, и готова уйти заказчику. Ограничить там можно другое: кто у держателя вправе её открыть и по какой записанной процедуре.
Обсудить
Задание
Поговорите с нашей командой
Поговорите с нашей командой.
Расскажите нам о своей задаче —
мы поможем вам в этом в любой юрисдикции.

