Как стать автором
Обновить

Комментарии 56

Всё равно не поможет! Придумают ещё что-нибудь, что не даст оспорить результаты…
… а чё тут думать то, всё решают дубиновые резинки, а точнее их демонстрация
НЛО прилетело и опубликовало эту надпись здесь
Скажут что снимали на квартирах но добавили имитатор радиосигнала GPS (а если у нас камера не защищенная от вскрытия — то просто подключили имитатор NMEA-потока вместо приемника).
а цифровую подпись украли?
потеря цифровой подписи должна наказываться сильнее чем среднее преступленее, которое может быть с нею совершено
Второе место на конкурсе фильмов ужасов заняла советская лента «Потеря партбилета». (с)
Разумеется нет. Скажут что украли камеру физически с участка, и свидетели найдутся. Если будет слишком массоово то… Скажут про два варианта:
— Украли одну камеру и выдрали из прошивки ее закрытый ключ (ну да — работа по реверсингу та еще)
— там же какая то система корневых сертификатов и так далее? Значит товарищи из <цензура> которые нам совсем не товарищи — украли корневой/один из промежуточных ключей (ради интереса — можно даже реально дать комп/HSM с ним украсть и героическими усилиями правоохранительных органов — «спасти», после того как он побывал некоторое время неизвестно где)

И кстати вопрос а как у камер часы синхронизируются? По (S)NTP? Имитируется на раз. По GPS/GLONASS? Если у нас (или те кто говорят что подделка- говорят что он у нас есть) уже имитатор сигнала есть…

По хорошему, если мы реально заинтересованы в видеодоказательствах — это должен быть международный проект. И систему для России надо заказывать в США, а экспертизу просить провести — АНБ. А для США — наоборот. Железо — разное. И весь софт (ну разве что кроме Linux'а базового да и то если есть вариант).
Просто на следующий день после выборов «совершенно случайно» в результате «технического сбоя», утечет приватный ключ, которым подписывались все видео. Ну или база данных со всеми ключами для всех используемых камер, если они были разными. А дальше появится куча «снятых на квартирах» видео, подписанных «утекшим» ключом, которые, естественно, не будут приняты никакими судами.

Даже напрягаться с придумыванием не станут — просто не будет никаких подписей видео :)

По-моему вы слишком опрометчиво приписали себе изобретение.
Один из первых результатов в гугле, FIG.7
Фантасты раньше «изобрели». Несколько раз встречались подобные технологии в книгах. И все сопутствующие варианты.
Посмотрел. Типичное «не то». Там используется шифрование с секретным ключом, а не с открытым, как в «нормальной» ЭЦП. У меня сложилось впечатление, что этот патент предназначен для борьбы с плагиатом, т.е. если автор захочет доказать своё авторство, то он предъявит секретный ключ, из «водяных знаков» извлечёт подпись, которую при помощи указанного секретного ключа можно будет проверить. При этом, если ЦИК заранее объявит свой секретный ключ, то кто угодно с его помощью сможет подписать любое видео. Не та задача.

ЭЦП с открытым ключом для обозначенной мною задачи подходит. Прямо в процессе видеотрансляции можно проверить, что поток идёт с подписью ЦИКа. А если будут замечены какие-либо нарушения, то эпизод с нарушениями можно сохранить и предъявить, при этом ЭЦП с открытым ключом предоставляет свойство non-repudiation (невозможность отречения от авторства).

В системах с несимметричным ключом секретный (закрытый) ключ присутствует — им подписывают/шифруют, а вот проверяют подпись/расшифровывают открытым ключом, поэтому (если смотреть на обозначенный мной рисунок) все соответствует вашей задаче, а уж какое криптографическое ядро использовать — дело десятое.

«Я не захотел патентовать эту идею, поэтому я её описал в виде статьи, выкладываю в общий доступ и, как автор идеи, передаю её в public domain для неограниченного использования.» — это так не работает. как раз наоборот кто то возьмет эту идею и запатентует ее.

но зачем нам шифрованные видео, если и так в предыдущий раз все транслировали, и все видели как пачки по 90 листов летели в урну.
Уже не запатентует — опубликованную информацию запрещается патентовать. Если даже кто и запатентует, например, по причине нерасторопности патентоведов, то патент можно оспорить.

И тут речь не про шифрованные видео, а про электронную цифровую подпись видео. Одно из свойств ЭЦП — non-repudiation (невозможность отказа от авторства).
Таким образом мы защищаем не только каждый кадр от модификации, но и последовательность кадров.

А не проще в каждый кадр ставить время и сквозную нумерацию кадров?
Так можно выдернуть из потока любой фрагмент и потом точно понимать откуда он и при необходимости состыковывать с другими фрагментами.
Разумеется, проще, но не решает поставленной задачи. Функция «вставить время в каждый кадр» (прямо в изображение) уже давно имеется чуть ли не в каждой видеокамере. И что, это вставленное время что-то доказывает? Ровным счётом ничего! Для этой цели применяется криптография, конкретно, ЭЦП — она, да, имеет доказательную силу.
Временные метки и так присутствуют в видеопотоке. Кроме того, у современных форматов и контейнеров их две — метка для декодирвания, и метка для отображения. Кадры совершенно не обязательно должны декодироваться в той последовательности, в которой будут показываться.
Красиво.
А как видится реализайия на практике?

1 Все камеры наблюдения специализированны с криптозащитой от ЦИК и возможностью записи на внешние источники.
2 Все желающие(или допущенные), могут подлючать/отключают свои носители(флешки), на которые потоком пишется видео с момента вставки.
3 Проверка осуществляется как централизованно, так и обычным отключением носителя и проигрыванием данных в программе позволяющей проверить как миди потоки так и валидность ключа.

Кто знает как можно отключить носитель без потери открытых фалов? Или файлы должны быть по 1-5 мин?

У кого есть более простое решение?
1. Все камеры наблюдения имеют встроенную технологию ЭЦП видеопотока. В каждую камеру вставлена сим-карта с секретным ключом ЭЦП. Секретный ключ хранится в симке, которая вставлена внутрь видеокамеры. Видеопоток транслируется, как с любой веб-камеры, и записывается не только на специализированных серверах, но и любым желающим.

2. Нет. Никто и близко к камере не подходит, чтобы ЦИК потом не сказал, что из камеры симку с секретным ключом спёрли. Там, конечно, можно сделать так, что для того, чтобы добраться до симки, нужно при помощи отвёртки вскрывать корпус, а корпус можно опломбировать, но даже при всех этих ухищрениях, пусть лучше во время трансляции никто к видеокамере и не подходит. Незачем.

3. Нет. Проверка проверяется любым, кто смотрит видеопоток. На сайте ЦИКа должна быть опубликована база данных публичных ключей каждой камеры с соответствующими сертификатами. Программа, которой просматривают видеопоток (и, возможно, сохраняют копию) по публичному ключу, полученному из публичной БД ЦИКа, аутентифицирует видеопоток. В идеале программа должна быть с открытым исходным кодом.
Поправочка автору: каждый кадр — это о несжатом видеопотоке? Потому что в «обычном» классическом видеопотоке (сейчас это чаще всего H.264) нет «каждого» кадра. есть ключевые кадры и куча дельт к ним. Подписывать нужно какую-то финальную единицу потока, например блок от одного до следующего ключевого кадра. Это может быть совершенно разный по длительности фрагмент (в количестве результирующих кадров)
нет никакой проблемы подписывать дельту и ключевые кадры
Нет, о сжатом. Если применяется какая-либо технология сжатия видеопотока, то подписывается именно сжатый видеопоток, именно в том виде, в каком он передаётся и/или хранится. Если кадры существенно разные (опорные и дельта), то это имеет значение при выборе начала эпизода (его лучше начинать с опорного кадра), но не имеет никакого значения для описанных свойств ЭЦП.
Подписывать весь GOP. Реализация так, как описал ее автор, очень затруднена в условиях реальной жизни, т.к. все потоковое видео передается по UDP, который не гарантирует доставку пакетов, и выпадение кадров в видеопотоке совершенно типично. В онлайн-трансляциях GOP относительно короткий (6-30 кадров, 0.2-1 секунда).
А не повлияют ли возможные пропуски кадров на возможность проверки этой самой ЭЦП?
С одной стороны, поскольку подписывается каждый кадр, то проверка ЭЦП возможна для любого кадра, даже одиночного.

С другой стороны, если какой-то кадр теряется, то теряется непрерывность эпизода — будет очень тяжело объяснять, почему в представленном эпизоде нет непрерывности кадров, возникают очень неприятные вопросы на тему, кто и с какой целью удалил кадры из потока, и вообще, нет ли тут видеомонтажа. Если поток непрерывный, то вопросов нет, а вот если поток прерывается из-за пропущенных кадров — ну да, проблема…
НЛО прилетело и опубликовало эту надпись здесь
Насчёт «хоть какой» — это Вы погорячившись. «Хоть какая» подпись неинтересна, сразу будет видно, что подпись-то чужая. Интересна именно подпись ЦИКа. Так что для предложенной Вами схемы осталось дело за малым — раздобыть секретный ключ ЦИКа, чтобы подписать видеопоток, чтобы выдать его за аутентичную запись, снятую на участке…
НЛО прилетело и опубликовало эту надпись здесь
Поняли верно.

Прекрасный сюжет! Да, тут криптография будет бессильна. С одной стороны, на участке есть наблюдатели, которые имеют право заходить во все помещения участка. С другой стороны, ничто не мешает ЦИКу разместить камеры видеонаблюдения вообще вне участка где-то «на квартирах» и транслировать подписанную картинку, где всё чинно и благолепно. Ну тут могу предложить только организационную меру. На участках непосредственно перед открытием участков для голосования наблюдателям демонстрируют пустые урны для голосования, демонстрируют исправное функционирование КОИБов, и опечатывают урны. Нужно прописать в ФЗ-67 «Об основных гарантиях избирательных прав...», что в списке этих процедур, совершаемых перед открытием участка, наравне с опломбировкой урн, также наблюдатели контролируют изображение с камеры, что это не муляж, убеждаются, что в неё установили симку с ключом ЭЦП, опечатали пломбой, как урну, проверили, что ключ ЭЦП именно избиркомовский, внесён в базу данных, имеет действительный сертификат публичного ключа ЭЦП…
НЛО прилетело и опубликовало эту надпись здесь
наверное было бы неплохо, если бы была какая-нибудь независимая организация и можно было подпись вести сразу двумя ключами: ЦИКа и
той организации.
Не хочу вас расстраивать, но именно такой метод уже был предложен аж в 1999 году: www.sciencedirect.com/science/article/pii/S089054010092916X (подробности в самом PDF на который там ссылка).

В частности:
The basic idea of our solution is to divide the stream into blocks and embed some authentication
information in the stream itself. The authentication information of the ith block will be used to authenticate
the (i + 1)st block. This way the signer needs to sign just the first block and then the properties of
this single signature will “propagate” to the rest of the stream through the authentication information
Большое спасибо за ссылку!!! Да, метод аналогичный, постановка задачи такая же. Есть, впрочем, важное отличие в решении. Gennaro и Rohatgi используют два разных алгоритма подписи — «обычный» и «облегченный» (одноразовый). Видимо, в те времена вычисление «нормальной» подписи считалось тяжёлой задачей, вот Gennaro и Rohatgi сэкономили. «Нормальной» ЭЦП они подписывают только первый блок, в каждый блок вставляют одноразовый ключ для аутентификации последующего блока, и все последующие блоки подписывают уже облегчённой одноразовой подписью. Соответственно, чтобы убедиться в аутентичности потока надо сохранять первый блок, подписанный «нормальной» ЭЦП, и все блоки до интересующего эпизода, а так же сам эпизод, разумеется. То, что я предлагаю, подразумевает использование «нормальной» ЭЦП для каждого кадра, а потому обладает свойством «сепарабельности» — в моём случае нет необходимости хранить весь поток, начиная с первого подписанного кадра, можно начинать принимать поток с любого места. Я подразумевал, что у неограниченного потока нет не только конца, но и начала.

Это придумано давно и называется "блокчейн".

Речь вообще не об этом.
В связи с прорывом в работе искусственного интеллекта по подделке человеческих лиц (https://www.reddit.com/user/deepfakes) такое шифрование должно резко пойти в гору. Вопрос только, каких ресурсов оно потребует? Например для стандартного FullHD битрейта в 28 мБит\сек — сколько составит увеличение?
Не будет с этим проблем — даже простые системы обеспечат тысячи подписей в секунду (а нужно обычно не больше 60), а скорость хеширования на уровне сотен мегабит (или гигабит на мощных системах или акселлераторах). Кодирование видео намного более затратная операция, так что подписывание будет почти незаметно.
Понимаю, что статья больше техничаская, но раз уж было упоминание о применении технологии на конкретном примере, то будет риторический вопрос. В каком суде оспаривать будете, в инопланетном?)
Хороший вопрос, флеймоёмкий… Ответ: в нашем, российском. «Другого суда у меня для вас нет.»

Я в курсе нескольких судебных исков по части выборов. Общий сценарий такой. Избирком допускает какое-то нарушение. Подаём иск в районный суд. Районный суд принимает неправосудное решение, поддерживая избирком. Оспариваем в областном суде. Областной суд поддерживает решение районного. Оспариваем в Верховном Суде. Верховный Суд сначала артачится, дескать, исковая давность прокисла. Подаём иск о восстановлении срока исковой давности. Верховный Суд срок восстанавливает и принимает иск к рассмотрению. Верховный Суд отменяет решения районного и областного судов. Только никто никакой ответственности не несёт, да и времени уже с момента выборов прошло уже больше года, никто ничего отменять уже не будет, никаких мандатов ни у кого отбирать не будет, никаких новых выборов назначать не собирается, и заставлять их делать по суду — как раз к следующим выборам, может быть, успеем…

Реформа судебной системы несколько выходит за рамки того, что я согласен обсуждать тут. Поэтому отвечу так: да, идея ЭЦП видеопотока никак не вылечит нашу судебную систему, но это и не её задача, тем не менее, идея ЭЦП видеопотока будет полезной даже с учётом волокиты нашего российского суда, поскольку позволяет сохранить в безопасности от ЦИКа копию видеозаписи с нарушениями и предъявить её, сохраняя её доказательную силу.
То, что зашифровано на секретном ключе, может быть расшифровано, используя публичный ключ, и, наоборот, то, что зашифровано на публичном ключе, может быть расшифровано при помощи парного к нему секретного ключа.
— вы уверены в такой формулировке? Чем же она тогда отличается от симметричного шифрования?
Я не нашел по ссылке утверждения, что открытым ключем можно что-то расшифровывать.
Анекдот вспомнился… Лектор читает лекцию. Прочитал. Спрашивает:
— У кого есть вопросы?
Один студент руку тянет:
— Профессор, в последнем утверждении я не понял, как вы пришли к такому выводу…
— Это утверждение, а не вопрос. У кого есть вопросы?
Как вы думаете, каким образом можно проверить электронную подпись, если публичным ключём ничего нельзя расшифровать?
Иллюстрация тут: ru.wikipedia.org/wiki/RSA#%D0%A6%D0%B8%D1%84%D1%80%D0%BE%D0%B2%D0%B0%D1%8F_%D0%BF%D0%BE%D0%B4%D0%BF%D0%B8%D1%81%D1%8C

Формулировка немного неполная, меня она не так давно тоже поставила в тупик. Полная выглядит так: зашифрованное закрытым ключом можно расшифровать только открытым, и наоборот — зашифрованное открытым ключом можно расшифровать только закрытым.
Хотите отправить получателю зашифрованное письмо — берете открытый ключ этого пользователя и им шифруете, теперь расшифровать его сможет только этот получатель своим закрытым ключом.
С цифровой подписью наоборот — автор документа шифрует своим закрытым ключом, например, вычисленный хэш документа и выкладывает этот документ с полученной подписью подписью. Теперь любой может открытым ключом автора расшифровать эту подпись и полученный хэш сравнить с вычисленным самостоятельно. Если они совпали, значит: 1) документ не изменен 2) подпись принадлежит автору документа

Сюда ещё нужно привнести идеи из области криптовалют.
То есть последовательность видеокадров — это блокчейн.
Криптовалютчики достаточно сильно разработали разные подходы к блокчейну.
Это и подписи Шнорра и всякие другие модные штучки.
Кому это нужно, зачем или для чего?
Если приватный ключ источника скомпрометирован, то любые видео можно переподписать — то есть подделать. Блокчейн подделать сложнее, но есть более простой способ — включать в подписанное видео токены из независимого timestamp-service.

То есть, если нужна определенная гарантия что видео не будет скомпрометировано в будущем, нужно:
— независимый timestamp-service, который будет выдавать подписанный случайный токен на каждый новый стрим (начало трансляции);
— подписывать каждый кадр (дельту), включая как составляющий элемент хэша вышезапрошенный токен (ну и хэш предыдущего, конечно);
— по окончании стрима (или его прерывании) просить очередной токен и вставлять его в последний кадр.

Таким образом, мы получим стрим, который будет практически невозможно подделать даже если приватный ключ источника будет скомпрометирован. Разумеется, исходя из предположения что timestamp-service не может быть скомпрометирован, но это намного сложнее сделать (хотя в теории, конечно, возможно). Тут, правда, есть потенциал DoS — если timestamp-service будет недоступен — это как раз легко устроить, но дальнейшие меры снижают риски.

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

Ну и наконец, вбиваем очередной гвоздь, обязывая всех стримеров публиковать подписанный хэш каждого завершенного стрима в нескольких печатных (да, бумажных) изданиях в текстовом виде + qr-code — всё, у дотошных журналистов и прочих детективов есть всё необходимое чтобы доказать подлинность (или наоборот) любого опубликованного стрима, и даже судам будет сложно сопротивляться — если, разумеется, они вообще признают цифровую подпись стрима.

PS: Это, разумеется, только общий обзор — дьяволов в деталях достаточно :)
Благоглупости это всё. Если приватный ключ не скомпрометирован, то «независимые timestamp-сервисы» просто не нужны. Если приватный ключ скомпрометирован, то никакие «независимые timestamp-сервисы» просто не помогут.

PS: Это, разумеется, только общий обзор — дьяволов в деталях достаточно :)

Вот с этим утверждением соглашусь. :) А чтобы не плодить дьяволов в деталях, подскажу, как правильно подходить к придумыванию криптографических протоколов. Есть такая замечательная штука — BAN-логика. dic.academic.ru/dic.nsf/ruwiki/1350500 Позволяет в очень ясной форме записать криптографический протокол и проанализировать его. Особое внимание уделите «верификации»!
Если приватный ключ скомпрометирован, то никакие «независимые timestamp-сервисы» просто не помогут.

Вообще-то помогут — пока не скомпрометированы. Если добавить чуть-чуть деталей. Но это уже совсем другая история, заслуживающая отдельной статьи. За ссылку спасибо, но для меня это уже давно пройденный этап :)
Кому нужно — тот знает. Кому не нужно и не знает — тот спрашивает «кому это нужно».
Блокчейн не забудьте, сейчас это в тренде…
вы серьезно думаете, что проблема не в людях у власти?
«Каждый народ имеет такое правительство, какого заслуживает» (с) Жозеф де Местр
Вы дали ссылку сюда в ЖЖ (там комментарий не виден, скорее всего из-за ссылки)

Ну и как этот способ поможет обывателю? Вот есть у меня видеорегистратор в авто, и есть телефон в руках.

Мои действия, после того, как я хочу как-то сохранить фото или видео для суда в качестве 100% доказательства?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории