Шифрования сообщений вконтакте методом AES для браузеров Chrome и Firefox

  • Автор темы RosettaLop
  • Обновлено
  • 16, Apr 2023
  • #1


После скандала с PRISM вопрос безопасности данных стал еще актуальней чем был, и даже если вы не секретный агент, то вашаличная переписка, должна соответствовать своему названию, и по умолчанию должна быть закрыта от доступа третьих лиц. Взяв это за аксиому это принцип, я занялся разработкой дополнений для браузеров для работы с популярной в странах СНГ социальной сетью вконтакте методом AES.
тут

). Чобы зашифровать/расшифровать текст нужно сообщение и ключ (и размер блока, по умолчанию 256, но бывает 128, 196). Зашифрованное сообщение можно передавать через любой канал связи, например SMS, IM, почта, социальные сети.

Итак, какоето время я жил с периодически всплывающей мыслью, а почему бы нам не автоматизировать процесс расшифровки-шифровки сообщений для сети vk.com?

Архитектуру процесса я видел следующим образом:

1) гденибудь рядом с формой отправки появляется форма ввода секретного ключа

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

3) зашифрованное сообщение отправляется как обычное

4) расширение отслеживает открытое окно диалога, сканирует сообщения на наличие маркера AESSTART, и если маркер есть, расшифровывает в соответствии с введённым ключём. + выводит иконку ключик справа от сообщения и меняет фон на зелёный

Трудности с реализацией плагинов были связанны с особенностями разработки под конкретную платформу, и изучение документации.

В итоге получилось вот что: Chrome: VkCrypt

Mozilla: https://addons.mozilla.org/en–US/firefox/addon/vkcrypt/

Как оказалось версия под Chrome безопаснее, так как в нём скрипты расширения и скрипты сайта выполняются изолированно от друг друга, в разных средах. В Mozilla Firefox теоретически вконтакт может считать массив с ключами получив доступ к window.secureKeys. В хроме введённые ключи существуют только на стороне пользователя, со стороны вконтакта к ним нет никакого доступа.
Краткая инструкция:

Для того чтобы работало шифрование и дешифрование информации, вы должны знать секретный ключ (пароль), который так же должен знать ваш собеседник.

Лучше всего обменяться ключом при личной встрече, это может быть набор букв и цифр.

Установите плагин, войдите в режим диалога с вашим собеседником (в мини чате и в режиме сообщений плагин не работает), если плагин установился, справа от текстовой формы и аватара будет ссылка «ENTER SECRET KEY».

Нажмите эту ссылку, и в появившемся окне введите ваш секретный ключ.

Ваш собеседник должен проделать такую–же операцию. Теперь ваши сообщения будут отправляться зашифрованные, а зашифрованные сообщения собеседника — отображаться в расшифрованном виде.
страница проекта

| исходники

RosettaLop


Рег
22 Feb, 2014

Тем
74

Постов
193

Баллов
573
  • 19, Apr 2023
  • #2
После скандала с PRISM вопрос безопасности данных стал еще актуальней чем был, и даже если вы не секретный агент, то вашаличная переписка, должна соответствовать своему названию, и по умолчанию должна быть закрыта от доступа третьих лиц. Взяв это за аксиому это принцип, я занялся разработкой дополнений для браузеров для работы с популярной в странах СНГ социальной сетью вконтакте методом AES. Небольшая предистория, алгоритм AES (Advanced Encryption Standard) — это симметричный алгоритм шифрования, который на конкурентной основе был принят в качестве стандарта шифрования правительством США по результатам одноимённого конкурса.

Алгоритм подробно описан, и есть его различные реализации под разные платформы и веб интерфейс (например Скрытая информация :: Авторизуйтесь для просмотра »
). Чобы зашифровать/расшифровать текст нужно сообщение и ключ (и размер блока, по умолчанию 256, но бывает 128, 196). Зашифрованное сообщение можно передавать через любой канал связи, например SMS, IM, почта, социальные сети.

Итак, какоето время я жил с периодически всплывающей мыслью, а почему бы нам не автоматизировать процесс расшифровки-шифровки сообщений для сети vk.com?

Архитектуру процесса я видел следующим образом:

1) гденибудь рядом с формой отправки появляется форма ввода секретного ключа

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

3) зашифрованное сообщение отправляется как обычное

4) расширение отслеживает открытое окно диалога, сканирует сообщения на наличие маркера AESSTART, и если маркер есть, расшифровывает в соответствии с введённым ключём. + выводит иконку ключик справа от сообщения и меняет фон на зелёный

Трудности с реализацией плагинов были связанны с особенностями разработки под конкретную платформу, и изучение документации.

В итоге получилось вот что: Chrome: Скрытая информация :: Авторизуйтесь для просмотра »
Mozilla: Скрытая информация :: Авторизуйтесь для просмотра »
Как оказалось версия под Chrome безопаснее, так как в нём скрипты расширения и скрипты сайта выполняются изолированно от друг друга, в разных средах. В Mozilla Firefox теоретически вконтакт может считать массив с ключами получив доступ к window.secureKeys. В хроме введённые ключи существуют только на стороне пользователя, со стороны вконтакта к ним нет никакого доступа.
Краткая инструкция:

Для того чтобы работало шифрование и дешифрование информации, вы должны знать секретный ключ (пароль), который так же должен знать ваш собеседник.

Лучше всего обменяться ключом при личной встрече, это может быть набор букв и цифр.

Установите плагин, войдите в режим диалога с вашим собеседником (в мини чате и в режиме сообщений плагин не работает), если плагин установился, справа от текстовой формы и аватара будет ссылка «ENTER SECRET KEY».

Нажмите эту ссылку, и в появившемся окне введите ваш секретный ключ.

Ваш собеседник должен проделать такую–же операцию. Теперь ваши сообщения будут отправляться зашифрованные, а зашифрованные сообщения собеседника — отображаться в расшифрованном виде. Скрытая информация :: Авторизуйтесь для просмотра »
| Скрытая информация :: Авторизуйтесь для просмотра »
Скрытая информация :: Авторизуйтесь для просмотра »
 

Coollaime


Рег
08 Apr, 2020

Тем
66

Постов
161

Баллов
521
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно