Есть идея: Dcrypt

Есть идея: что, если мы создадим простой, но по-настоящему удобный инструмент шифрования? Работать он будет только с текстом, но зато будет доступен для всех сайтов, которые вам нужны (Твиттер, Фейсбук, ВКонтакте, электронная почта и даже Одноклассники): вы просто выделяете текст, вводите пароль и жмёте кнопку, отвечающую за шифрование, а затем вам останется лишь найти способ сообщить собеседнику пароль, необходимый для расшифровки.

Есть идея: Dcrypt,
универсальный инструмент шифрования

Какими сервисамы вы пользуетесь, чтобы связаться с друзьями и родственниками? Почти уверен, что это какой-то мессенджер, и бьюсь об заклад, что он не один, ведь вам всегда приходится подстраиваться под свой круг общения: если ваши друзья используют Telegram, вам придётся использовать Telegram, если им больше по вкусу WhatsApp, вам придётся использовать WhatsApp. По большому счёту для того, чтобы оставаться на связи, вам придётся зарегистрироваться в WhatsApp, Viber, Telegram, Skype, Wire, Facebook и других подобных сервисах. Звучит не очень удобно…

Но во времена господства электронной почты мир был устроен немного иначе: даже если вы когда-то зарегистрировались на исконно русском Mail.Ru, вы без проблем могли связаться и с американцем на GMail, и с китайцем на QQ. А вот если ваша мама пользуется WhatsApp, то у вас попросту нет другого выбора. И, по-моему, это проблема…

Например, мне бы хотелось использовать сквозное end2end шифрование, и почти все мессенджеры дают мне эту возможность. Но я не хочу регистрироваться в кучи ненужных мне сервисов: WhatsApp для семьи, Telegram и Facebook для хипстеров, WeChat для друзей из Китая и т. д. И я не хочу устанавливать все эти приложения! И что мне делать? В теории я бы мог пользоваться электронной почтой или каким-нибудь твиттером, но там вообще нет шифрования, а PGP – это всё ещё слишком сложно для обывателя.

Но у меня есть идея: что если мы создадим простой, но удобный инструмент шифрования текста? Работать он будет в виде браузерного расширения, похожего на уже привычные вам онлайн-переводчики: вы просто выделяете текст, который нужно зашифровать, вводите пароль и жмёте кнопку, отвечающие за шифрование. Затем вы копируете уже зашифрованный текст и отправляете его собеседнику. Остаётся только найти способ сообщить ему пароль, необходимый для расшифровки. В теории вам даже не нужен собеседник: например, таким способом вы могли бы защитить важные заметки или документы. Сервис, которым вы пользуетесь, тоже не будет важен: хоть Твиттер, хоть ВК, хоть Одноклассники. Никто не украдёт секрет бабушкиных огурцов! Как вам идея? Будет ли это востребовано? Готовы ли вы вручную шифровать сообщения и заметки? Стали бы вы пользоваться чем-то подобным, если бы расширение уже было доступно?

Когда я размышлял об этой идеи, в моём воображении вырисовывалось нечто похожее на Ddict, пожалуй лучший браузерный переводчик для Chromium. Ddict – это простое, но удобное расширение для перевода незнакомых слов и фраз (и это одна из главных причин, по которым я не могу навсегда переметнуться в стан Firefox): вы просто выделяете нужный фрагмент и жмёте Shift, чтобы увидеть всплывашку с переводом. Наш шифровальщик должен работать схожим образом, поэтому именно Ddict я и взял за образец.

Это Dcrypt – первый визуальный концепт нашего расширения. Но раз уж в его основе лежит Ddict, нам, скорее всего, придётся использовать код оригинального расширения. И это первое препятствие, с которым нам предстоит столкнуться: нам нужно связаться с разработчиком и заручиться его поддержкой, а он немного замкнут и редко идёт на контакт. Возможно, он слегка занят поддержкой Ddict (недавно Google обновили свой API, и расширение попросту перестало работать, а версия под Firefox всё ещё неготова), но, быть может, ему просто не интересна сама концепция… Вторая наша проблема: я вообще не шарю в написании кода, мой потолок – простенькое редактирование под собственные нужны. Здесь же нужно намного больше! Так что нам понадобится помощь… Лучшим для вас вариантом было бы, если Ddo (так зовут разработчика Ddict) заинтересовался нашей идеей и самостоятельно адаптировал расширение под работу с шифрованием. И раз уж в код мы пока не умеем, ограничимся визуальными концептами.

Нам нужен план «Б», и это второй концепт нашего расширения. На сей раз он основан на Dictionary. В Dictionary вы сами выбираете нужные вам сервисы. Почему бы не дать такую возможность и пользователям нашего шифровальщика? В теории это усложнит работу с расширением ровно на один шаг: вы выделяете текст, выбираете сервис, с помощью которого хотите его зашифровать, вводите пароль, а затем шифруете текст. По-моему, терпимо.

Но и тут есть нюансы: Dictionary – это пожалуй лучший онлайн-переводчик для Maxthon, но если вы пользуетесь другими браузерами, он теряется на фоне многочисленных конкурентов. Пока Dictionary далёк от идеала, но прогресс виден даже тем, кто лишь изредка запускал расширение. К тому же в случае с Dictionary я знаком с разработчиком (когда-то я помогал ему с локализацией на местные языки, и как раз с того момента расширение обрастает функционалом). Ему нравится идея и он готов помочь, но пока он слишком занят на основной работе и у него попросту нет времени на случайные проекты. Снова неудача…

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

Но раз уж мы в тупике, я решил снова отправится на поиски уже существующих расширений. И на сей раз мне повезло: я наткнулся на Cryptable и Cryptr. Вот только это не совсем то, чего я искал: оба расширения работают с текстом, но вводить этот текст я должен самостоятельно. Так что в итоге всё снова упирается в ручное копирование. Оно нам надо? Возможно, разработчики могли бы слегка расширить функционал своих творений и добавить туда хотя бы сочетания клавиш (всё-таки без автоматической замены текста мы как-нибудь проживём), вот только я пока не смог с ним связаться: у них нет страницы в Facebook или Twitter, где были бы указаны какие-то контакты. Я знаю только университет, под крылом которого эти расширения были созданы. Маловато будет…

И мы всё ещё упускаем один из наиболее важных аспектов разработки подобных расширений – доверие. Ну вот нашёл я аж два расширения, которые мог бы использовать. Почему не использую? Да потому, что не знаю, кто за ними стоит. Нашему расширению тоже никто доверять бы не стал (по крайней мере первое время). И это тоже проблема, которую нам предстоит решить. Первое, что приходит в голову, просто использовать сторонний сервис для шифрования текста. Так мы бы сняли с себя все вопросы, касающиеся работы алгоритмов шифрования. Но в таком случае какой сервис нам выбрать? Какому сервисы мы доверяем настолько, чтобы «продвигать» его через наше расширение?

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

P.S.

Пока всё это находится на стадии идеи… Но я действительно хочу воплотить её в жизнь! Мне было бы гораздо спокойнее, если бы у меня был простой и удобный способ зашифровать информацию, которой не хочется делиться с посторонними (ведь в конце концов многие до сих пор хранят пароли в блокнотовских файлах .txt!), но сейчас моих знаний недостаточно. Сильно сомневаюсь, что гайдов по алгоритмам шифрования хватит, чтобы довести дело до конца. Так что пока я ограничился только визуализацией.

Всё это слегка отличается от того, что я привык делать. Обычно я заходил немного с другой стороны: когда я натыкался на интересное и перспективное расширение, я связывался с его разработчиком и помогал ему слегка расширить уже имеющийся функционал. Так скрипты SaveTube, ViewTube и LinkTube стали довольно востребованными расширениями, а узко специализированный Turkish Dictionary превратился в интернациональный Dictionary. Но работать над дизайном и локализацией гораздо проще, чем писать код. Так что пока я просто надеюсь, что кто-то заинтересуется этой идеей также, как и я, и вместе мы всё-таки сможем её реализовать.

Ну а возвращаясь к Ddict, хотелось бы отметить, что несмотря на всю простоту и универсальность, расширение всё же не лишено ненужных элементов. Например, у нас есть аж два «окна» (окошко на панели инструментов и всплывшка поверх выделенного текста), а текстовое поле и переключение языков доступно лишь в одном из них. Почему бы не сделать всё чуточку проще? Просто избавимся от окна на панели инструментов, а часть функционала перенесём в всплывашку. По-моему, так Ddict выглядит гораздо минималистичнее, а главное проще. Но это тоже всего лишь концепт…

Comment