Pull to refresh

Comments 14

Получатель может восстановить исходные данные, собрав достаточно «капель» из фонтана, при этом неважно – какие именно «капли» у него есть, и какие именно он пропустил.
Но в примере как минимум один блок идёт чистый. Сработает ли система при потере него?
Меня тоже смутило слово «достаточно капель»,
И кажется мне что для скачивания всего файла целиком, если допустить потерю 10% блоков, нужно будет гораздо больше данных передать.
Собственно необходимую избыточность, естественно, тоже никто не отменял. Однако для начала нужно как-то декодировать это без сильных повреждений. Если при потере маленького кусочка мы теряем весь файл — это скорее получается система простого уничтожения данных.
Вообще идея напоминает чем-то голографическое кодирование, когда всё перемешано со всем (условно говоря). Только там огромная избыточность была, как и во всех системах с возможностью восстановления.
Видимо оно находит применение в сетях, гда данные только в одну сторону передаются. Без обратной связи. Там данные передаются непрерывно и покругу. К примеру teletext в телевизоре. Если бы данные просто, без кодирования передавались, то в случае потери одного блока пришлось бы ждать пока этот блок не передадут снова. В случае с фонтаном кодов вероятность того, что этот же блок участвовал в кодировании какого то другого блока выше и тем самым выше вероятность, что данные будут полученны раньше чем за два цикла передачи.
Чем это отличается от кодов Рида-Соломона?
Википедия о Tornado code говорит, что в сравнении с кодами Рида-Соломона он менее эффективен по памяти, но процессы устранения ошибок и генерации(кодов, не ошибок) проходят быстрее. В свою очередь, фонтанный код (или коды) является развитием кода торнадо(торнадного кода, трудности перевода), сохраняя, надо полагать, отличия от кодов Рида-Соломона.
Эх, я тут ожидал увидеть инфу о работе над ПО для винницкого фонтана (на заглавном фото)
Зашел, не прочитав превью, с мыслями «О, наконец-то узнаю, как там внутри работает!»(на первом фото — Винницкий фонтан, вдвойне интересно было узнать о достопримечательности родного города), а тут эта… отличная статья. Отдельное спасибо за рассмотренный пример, реально помог лучше понять всю суть происходящего.

З.Ы. Спасибо за раунд на Codeforces, хоть он и был 4 месяца назад.
приходите к нам работать? :)
мы — молодой фонд, который занимается высокочастотной алготорговлей.

Понятно, идём дальше.
Интересный подход, между прочим! Сколько читал про всякое шифрование (включая стеганографию), но про фонтаны слышу впервые.
Ведь это прекрасный способ общаться без влезания спец-служб: отправляем мылом один фрагмент, другой скачиваем с файлопомойки, третий лежит на известном форуме, четвёртый с пастебина и вуаля — письмо! Немного геморно, конечно, но если посылаешь частную информацию (напр., где живут родственники, номера счетов) — имеет смысл страховаться.
Проще тогда ключ (пароль) разбить на части и отправить разными каналами, а файл зашифровать и отправить самым быстрым методом. Один зашифрованный файл привлечет внимания меньше, чем четыре.
Все 4 файла будут отправлены с разных мест, в каждом случае наблюдатель увидит только один покоцаный файл, и только тотальная слежка поможет увидеть весь процесс целиком.

4-й файл может быть доставлен голубиной или даже обычной почтой в виде телеграммы.
QR код в разделе частных объявлений Times. :) *вспоминая Холмса*
Sign up to leave a comment.