Есть идея: Dcrypt
Перри Ноид, ваш проводник в мир приватностиЕсть идея: что, если мы создадим простой, но по-настоящему удобный инструмент шифрования? Просто выделяете текст, вводите пароль и жмёте кнопку, отвечающую за шифрование. Останется лишь передать пароль собеседнику. Готовы ли вы заморочиться?
Dcrypt – универсальный инструмент шифрования
Какими сервисамы вы пользуетесь, чтобы связаться с друзьями и родственниками? Почти уверен, что это какой-то мессенджер, и, скорее всего, далеко не один. Если ваши друзья сидят в телеге, вам тоже придётся зарегистрироваться в телеге. Если ваша родня до сих пор признаёт только WhatsApp, вам придётся использовать WhatsApp. Никакого выбора у вас по большому счёту нет.
А вот с электронной почтой всё иначе: вы можете зарегистрироваться на исконно русском Mail.Ru и без проблем общаться и с американцами с какого-нибудь GMail, и с китайцами с тамошнего QQ. Вот только большинство почтовых сервисов до сих пор так и не научились в шифрование (PGP не в счёт, ибо пока это слишком сложно для большинства случайных пользователей.
И вот тут мне в голову пришла простая идея: что если мы создадим простой, но удобный инструмент шифрования текста? Работать он будет в виде браузерного расширения и, скорее всего, будет напоминать уже привычные вам онлайн-переводчики: вы просто выделяете текст, который нужно зашифровать, вводите пароль и жмёте кнопку, отвечающую за шифрование. Затем вы копируете уже зашифрованный текст и отправляете его собеседнику. Остаётся только найти способ сообщить ему пароль, необходимый для расшифровки. В теории вам и собеседник не особо нужен: например, таким способом вы могли бы защитить важные заметки или документы. Сервис, которым вы пользуетесь, тоже не столь важен: хоть Твиттер, хоть ВК, хоть Одноклассники. Никто не украдёт секрет бабушкиных огурцов! Как вам идея? Будет ли это востребовано? Готовы ли вы вручную шифровать сообщения и заметки? Стали бы вы пользоваться чем-то подобным, если бы расширение уже было доступно?
Размышляя об этой идеи, я представлял что-то в духе Ddict. Это простое, но в тоже время удобное расширение для перевода незнакомых слов и фраз: вы просто выделяете нужный фрагмент и жмёте Shift, чтобы увидеть всплывашку с переводом. Наш шифровальщик должен работать схожим образом, поэтому именно Ddict я и взял за образец.
На картинках выше – Dcrypt – первый визуальный концепт нашего расширения. И тут есть сразу две проблемы: во-первых, нам, скорее всего, понадобится использовать исходный код оригинального расширения, который почти наверняка придётся переписать почти до неузнаваемости, ну а во-вторых, я вообще не шарю в написании серьёзного кода, мой потолок – простенькое редактирование под собственные нужны. Здесь же нужно намного больше! И раз уж в код мы пока не умеем, ограничимся чисто визуальными концептами и постараемся придумать хоть какой-то план Б.
Второй концепт нашего расширения основывался на Dictionary. Это ещё один браузерный переводчик, в котором вы сами выбираете нужные именно вам сервисы. Почему бы не дать такую возможность и пользователям нашего шифровальщика? Теоретически это усложнит работу с расширением ровно на один клик: вы выделяете текст, выбираете сервис, с помощью которого хотите его зашифровать, вводите пароль, а затем шифруете текст. По-моему, вполне терпимо.
Но и тут есть свои нюансы: Dictionary – это, пожалуй, лучший онлайн-переводчик для Maxthon, но, если вы пользуетесь другими браузерами, он безнадёжно теряется на фоне многочисленных конкурентов. Сейчас Dictionary далёк от идеала, но прогресс виден даже тем, кто лишь изредка запускал расширение.
Звучит странно, но с расширениями для Maxthon я знаком куда лучше, чем с уже привычными Web Extensions. К тому же в те времена разработчик Dictionary частенько зависал на макстоновском форуме и идея с шифровальщиком ему понравилась. Вот только он был слишком занят на основной работе, и времени на случайные проекты у него почти не было. А мы то уже грезили мобильным приложением со схожим функционалом…

Что ж… Попробуем зайти с другой стороны! Когда я впервые задумался о необходимости иметь под рукой универсальную шифровалку для текста, я был уверен, что подобных расширений полно. Вот только найти их я поначалу не смог, поэтому и начал продумывать способы реализации. Параллельно я искал сайты, позволяющие зашифровать текст. Некоторые из них довольно функциональны, но не особо удобны: в случае с сайтом мне придётся вручную копировать и вставлять текст (минимум дважды), а мне хотелось, чтобы всё происходило автоматически.
Снова оказавшись в тупике, я снова отправится на поиски уже существующих расширений. И на сей раз мне повезло: я наткнулся на Cryptable и уже почивший Cryptr. Вот только это не совсем то, чего я искал: оба расширения работали с текстом, но вводить этот текст приходилось самостоятельно. Всё снова упёрлось в ручное копирование. Оно вам надо? Возможно, если бы мне удалось связаться с разрабами, они согласились бы слегка расширить функционал своих творений и добавить туда хотя бы сочетания клавиш (всё-таки без автоматической замены текста мы как-нибудь проживём), но за всё это время на связь со мной никто так и не вышел: у них нет ни страницы в Facebook, ни аккаунта в Twitter, где были бы указаны хоть какие-то контакты. Я знаю только университет, под крылом которого эти расширения были созданы. Маловато будет...
И мы всё ещё упускаем из виду один из наиболее важных аспектов разработки подобных расширений – доверие. Ну вот нашёл я аж два расширения, которые мог бы использовать. Так почему не использую? Да потому, что не знаю, кто за ними стоит! Вот и нашему расширению тоже никто доверять бы не стал (по крайней мере первое время). И это тоже проблема, которую нам предстояло бы решить! Самое простое решение, которое приходит в голову, – просто использовать для шифрования текста какой-то сторонний сервис (так мы бы сняли с себя все вопросы касательно алгоритмов шифрования). Но какой сервис нам выбрать? Какому сервисы мы доверяем настолько, чтобы «продвигать» его через наше расширение?
Но к счастью, сторонний сервис – вовсе не единственный способ решить проблему доверия. Я слегка надоедлив и немного дотошен: временами я пишу о проблемах приватности и особенностях защитных инструментов, и так уж вышло, что время от времени со мной связывались их разработчики. Так что я набрался наглости, рассказал им о своей идеи и поинтересовался, не глянут ли они и наш код, если всё будет готово. Некоторые из них без вопросов согласились! Да, я слегка переоценил свои силы и немного поторопился, но сторонний аудит – это всегда хорошо (особенно, когда дело касается безопасности).
P. S.
Всё это до сих пор находится на стадии идеи, но я действительно хочу воплотить её в жизнь! Мне было бы гораздо спокойнее, если бы у меня был простой и удобный способ зашифровать информацию, которой не хочется делиться с посторонними (ведь в конце концов многие до сих пор хранят пароли в блокнотовских файлах .txt). Но моих знаний сейчас, увы, недостаточно. И я сильно сомневаюсь, что гайдов по алгоритмам шифрования хватит, чтобы довести дело до конца.
Всё это слегка отличается от того, к чему я привык. Обычно я заходил немного с другой стороны: натыкаясь на перспективное расширение, я связывался с его разработчиком и помогал ему слегка расширить уже имеющийся функционал. Так скрипты SaveTube, ViewTube и LinkTube стали довольно востребованными расширениями, а узко специализированный Turkish Dictionary превратился в интернациональный Dictionary.
Вот только работать над дизайном и локализацией в разы проще, чем писать код. Так что пока я просто надеюсь, что кто-то заинтересуется этой идеей также, как и я, и вместе мы всё-таки сможем её реализовать. Забирайте, мне не жалко!
29.07.2019