Как изменить формы в браузере?
для всех браузеров с включенным JS
А что за решение? Можно какую-нибудь ссылку пожалуйста?
Самый распространенный язык скриптов - JavaScript.
Можно написать скрипт, который при нажатии определенной кнопки достает из текстового поля введенный текст, преобразовывает его как хочет, и только потом отправляет на сервер.
Из твоих слов не вполне понятно, какой уровень твоих познаний в веб-архитектуре вообще, так что ссылку дать тяжело. Но попробуй http://www.w3schools.com/
Допустим решили вы написать письмо. Вводите адресатов, тему и текст письма, вложений не прикрепляете и отправляете.Я это само собой сделаю в mail-клиенте.
реально ли написать какой-нибудь плагин для браузера, который в тексте письма (который вы набираете) менял бы, например, в каждом слове первую и последнюю буквы?Что за изврат?! Я бы стал писать плагин для mail-клиента.
А если у тебя wi-fi роутер ASUS - надо обязательно сменить на ZyXEL.
Смысл в том, чтобы от пользователя требовалось лишь только поставить плагин. После установки плагина для него перемена букв происходит незаметно и никаких дополнительных действий он не совершает, просто пишет и отправляет письмо как обычно. Просить сам почтовый сервис (например Яндекс) внедрить на страницу доп скрипты или кнопки естественно нереально.
Насколько мне известно, большинство браузеров в том или ином виде поддерживает плагины. Соответственно, можно написать плагин для браузера, который при нажатии определенной кнопки на определенном сайте выполняет определенные действия - возможно.
Есть ли унифицированный API для браузерных плагинов - не знаю. Краткий гуглинг привел меня на страничку http://en.wikipedia.org/wiki/NPAPI , но этот вопрос все равно надо детально исследовать.
В худшем случае под каждый браузер надо будет писать свой плагин.
P.S. Несмотря на мой саркастический пост в адрес -а, в его сообщении есть смысл. Ты уверен, что надо делать именно так, как ты описал? Может, ну его, браузер? Вообще, какая у тебя задача?
Понял идею! Спасибо большое) Думаю, NPAPI как раз то, что надо!
интересно, зачем такое хотеть?
Есть ли унифицированный API для браузерных плагинов - не знаю. Краткий гуглинг привел меня на страничку http://en.wikipedia.org/wiki/NPAPI , но этот вопрос все равно надо детально исследовать.Исключая IE, если браузер поддерживает плагины, то он поддерживает именно npapi. Поэтому плагины как правило пишутся в 2х вариантах: для IE (activex) и для не-IE (npapi).
В худшем случае под каждый браузер надо будет писать свой плагин.
Соответственно, можно написать плагин для браузера,тут проще написать скрипт под существующий плагин, например, greasemonkey.
таким способом и начать проще, и меньше проблем будет с поддержкой различных браузеров
о, зачем такое хотеть?Конечно желание в первом посте похоже на извращение. А вообще конечная цель - шифровать сообщение, не доставляя пользователю неудобств.
конечная цель - шифровать сообщение, не доставляя пользователю неудобств.С этого и надо было начинать. Для десктопных mail-клиентов уже есть готовые решения. Но тебе же хочется в браузере, так что продолжай придумывать извращения.
Буду признателен за ссылки по готовым решениям. Уверен, мое будет не хуже, а может даже и лучше. Браузеры за извращение не считаю, много людей ими пользуются, необходимо угодить всем. Не обладая никакой статистикой, предположу, что любителей браузеров больше 60 процентов)
для браузеров тоже бывают.
А нет у кого демонстрационного плагина (например, для Opera или Firefox который при нажатии кнопки "Найти" на главной странице Яндекса выдает сообщение "Hello World"?
Вот тут человек вроде как раз твою проблему решает для случая Gmail:
Использование браузеров для почты неудобно, но само по себе не извращение. Извращение - это когда ты пытаешься самостоятельно изменить или расширить функционал web-клиента, не будучи владельцем/админом сервиса.
Какие ваши аргументы, что это извращение?
А установить полноценный клиент с поддержкой gpg будет гораздо проще, чем ваять и устанавливать твой плагин (либо greasemonkey + скрипт к нему).
Если интересно, напишу что же не так с gpg. Как я успел понять из описания в Интернете, генерация ключей производится в оперативке компа. Это плохо, но не совсем критично. Что гораздо хуже, ключи хранятся на жестком диске. Вот это с позиций безопасности вообще беда. Сообщения шифруются на открытых ключах. И снова фейл с точки зрения скорости. Насколько корректно реализованы алгоритмы шифрования и криптографические протоколы высокого уровня - тоже вопрос серьезный и требующий более глубокого изучения. Подводных камней в этом деле немеряно, нужны веские основания для доверия авторам. Конечно решение подходит для широкого круга пользователей, но лично я сомневаюсь, что с безопасностью все окей. Альтернатива для реализации криптофункционала есть (какая не буду уточнять). Вопрос только в том, как бы выдернуть нужные формы для последующего шифрования\расшифрования.
Поэтому появился уточняющий вопрос от новичка в веб технологиях: Как выполнять написанный скрипт (который например выдает сообщение "Hello world") на каждой странице, которую открывает браузер? Допустим, этот браузер не IE. Буду крайне признателен за развернутый ответ!
Конечно решение подходит для широкого круга пользователей, но лично я сомневаюсь, что с безопасностью все окей.И тут меня настиг когнитивный диссонанс. Итак, давай поговорим начистоту, как программист с программистом.
Ты подозреваешь, что твои клиенты будут работать в очень агрессивных средах (им не комильфо генерировать ключ в своей собственной оперативке и хранить его на своем собственном диске).
Кроме того, ты всерьез считаешь, что реализациям PGP нельзя просто так доверять - тебе нужны более веские основания, чем 20-летняя история технологии и тот факт, что PGP - это де-факто стандарт в шифровании.
У тебя есть тайная альтернатива для реализации криптофункционала (очевидно, свободная от недостатков "нужна оперативная память для работы" и "ключ хранится на носителе", и работающая несравненно быстрее, чем очевидный фейл шифрования "на открытых ключах").
При этом ты новичок в веб технологиях настолько, что не можешь написать плагин для браузера, даже зная все нужные google words.
[image=летчик.jpg/]
Как я понял, greasemonkey работает только под Файрфоксом или Хромом. Т.е. пользователю нужно будет определиться под каким именно браузером он хочет шифровать почту, потом поставить greasemonkey, потом скриптик скачать нужный. А если у него IE или Opera, то вообще засада! Хотелось бы найти что-то более универсальное. Мои ограниченные познания не позволяют мне грамотно составить интересующий вопрос для гугла, увы(
Как я понял, greasemonkey работает только под Файрфоксом или Хромом. Т.е. пользователю нужно будет определиться под каким именно браузером он хочет шифровать почту, потом поставить greasemonkey, потом скриптик скачать нужный. А если у него IE или Opera, то вообще засада! Хотелось бы найти что-то более универсальное. Мои ограниченные познания не позволяют мне грамотно составить интересующий вопрос для гугла, увы(Для IE так: http://www.codeproject.com/KB/shell/BHOinCPP.aspx
Про оперу и фф: http://developer.mozilla.org/en/Plugins
А про криптографию расскажи, интересно
По спецухе я занимаюсь прикладной криптографией, с методами взлома (не математическими, а программными) знаком очень хорошо. Всю жизнь писал на чистом С, другого мне никогда не было нужно.
Да, я подозреваю, что ПК пользователя - агрессивная среда, хочешь безопасности, не храни и не генерируй ключи в оперативке. Не шифруй данные в памяти пользовательского процесса.
Если авторы GPG те же, что замутили PGP, то вопрос снимается. Они чуваки очень крутые.
Да, альтернатива есть.
Ни разу не писал плагин для браузера, более того, я не понимаю комплексно как они работают. В данный момент сижу гуглю, потихоньку продвигаюсь. Но скорость продвижения меня не радует, поэтому интересуюсь на форуме.
Задавай вопрос поконкретнее, отвечу с удовольствием) За ссылки спасибо!
Да, я подозреваю, что ПК пользователя - агрессивная среда, хочешь безопасности, не храни и не генерируй ключи в оперативке. Не шифруй данные в памяти пользовательского процесса.Какие программные средства шифрования на данный момент соответствуют данным требованиям?
Да, чисто программные средства шифрования дают какую-то степень защиты, но их может обойти всего один хороший специалист. И специалисты такие не редкость, говорю по собственному опыту.
Судя по всему решение универсальным не получится, придется мутить для каждого браузера отдельный билд. Я прав?
Выходит, так. Но не для каждого, а для двух. Все известные браузеры, кроме IE, поддерживают NPAPI.
Если ты пустил атакующего на компьютер пользователя - то это уже конец истории. До тех пор, пока у тебя хоть в каком-то виде отображается/вводится не зашифорванный текст, злоумышленник может его прочитать (в твоем случае он может, например, вставить свой плагин в браузер который точно также будет дергать текст из формочки). И извлекать ключи ему будет уже не нужно. И даже если ты каждый раз набираешь ключ (пароль) руками - кейлоггер решит проблему.
А каков примерный алгоритм? По ссылкам выше более пристально посмотреть? Мне нужны плагины или расширения? Или не то и не другое, а чисто поддержка браузером моих скриптов? Что-то я запутался нахер)
Тоже факт, при наличии закладки на компе пиши-пропало всем сообщениям. С другой стороны, не имея закрытого ключа атакующий не сможет подписывать сообщения, ЭЦП ставить всмысле. Да и опять же, шифровать асимметричными методами дело небыстрое. Нужен симметричный алгоритм.
тебе терабайты информации шифровать, или формочку в браузере?
Как я понимаю, тебе, скорее, нужны плагины, т.к. расширения у всех свои. А вот можно ли сделать через них именно то, что ты хочешь, стоит смотреть в документации API.
Да, с формочками выигрыш несущественный. Но если заглянуть в будущее и научиться вложения шифровать, пусть и в несколько мегабайт, то открытые ключи уже не комильфо. Да и сложно что ли пацанам сгенерить общий симметричный ключ, когда у каждого из них есть открытый и закрытый ключи?
пароль -> K-битный хэш -> XOR с K-битным ключем
XOR не взломать, так что остается только угадывать пароль (тут уже отдельная проблема выбора пароля) либо пытаться атаковать процесс использования ключа (все происходит в памяти и требует очень "интимного" вмешательства злоумышленника в жизнь компьютера, чтобы подсмотреть).
PS: ну и мне конечно интересно услышать про твой алгоритм, который видимо не использует ключи вообще (судя по тому, что ты считаешь использование ключей несекьюрным, а свой алгоритм считаешь более хорошим в этом смысле).
Ну да, так обычно и делается (SSH, SSL). В твоем случае симметричный ключ для вложений можно цеплять в хвост текста письма, а текст шифровать ассиметричным.
Я бы сказал, у меня нет своего алгоритма) Я не против ключей, естественно, куда без них! просто сейчас для шифрования/дешифрования есть специальные устройства. Ключи хранятся в них, достать их из устройств практически нереально. В устройствах свой микропроцессор, своя оперативка, шифрование происходит также внутри. В принципе ничего нового...
а чо, gpg/pgp по-твоему не умеет эти самые устройства использовать?
и да, тебе, как гуру в шифровании положено знать, что gpg - реализация RFC 4880
Когда ключ лежит в оперативной памяти в открытом виде, то один дамп и приехали. Даже не нужно знать, где конкретно он находится, сразу финита... Да не суть.
если есть возможность сделать дамп произвольного процесса, то вообще насрать на ключ - можно сдампить браузер с формочкой
или браузер тоже в спец. устройстве будет работать?
Сдампив браузер с формочкой ты прочитаешь одно сообщение. Сдампив ключ - все последующие (причем прицепившись где-нибудь попути, а не на защищаемом компьютере) да еще и сможешь от имени жертвы писать, подделывая его электронную подпись.
По-моему, некоторые из этих устройств он может использовать только в качестве надежного хранилища ключей, шифрование же по-прежнему происходит в оперативке. Так что аргумент не засчитывается.
ну если предполагать, что все так плохо, что у "потенциального противиника" полный доступ к компу + еще к сети, то следующий шаг - это доступ к мягким тканям паяльником, а тут уже никакие плагины не помогут
60-летние директора банков, не могущие освоить ничего сложнее веб-интерфейса mail.ru?
Написал свой первый плагин, который пока что ничего не делает:) Как его заставить отловить событие открытия и полной загрузки новой страницы?
Но если заглянуть в будущее и научиться вложения шифровать, пусть и в несколько мегабайт, то открытые ключи уже не комильфо.Не изобретай велосипед с одним квадратным колесом, которое ещё и не крутится.
Шифрование больших файлов с использованием открытых ключей давно продумано, реализовано и стандартизовано - ботай про PKCS CMS Enveloped Data (RFC 5652 либо у RSA: PKCS a>). Если кратко, то генерится одноразовый симметричный ключ, данные шифруются этим ключом, ключ шифруется ассиметрично на открытом ключе получателя (или даже на нескольких, если получателей несколько всё вместе отправляется.
А где я что-то изобретал? Про то, что ты написал, я прекрасно знаю. А в переписке речь шла о различии скорости при шифровании текста симметричными и асимметричными методами.
А в переписке речь шла о различии скорости при шифровании текста симметричными и асимметричными методами.так вот я и указал, что текст асимметричными методами никто не шифрует, и дал ссылку на то, как его шифруют.
Мои слова относятся к посту . Как мне показалось, он имел ввиду шифрование всего текста асимметричными методами. И его тезис в том, что на маленьких объемах информации разницы между "его" способом и тем, что ты написал, по времени не будет. Вот и все.
2w22
Оставить комментарий
Orion2008
Допустим решили вы написать письмо. Вводите адресатов, тему и текст письма, вложений не прикрепляете и отправляете. И вот вопрос: реально ли написать какой-нибудь плагин для браузера, который в тексте письма (который вы набираете) менял бы, например, в каждом слове первую и последнюю буквы? Т.е для вас процесс проходит самым обычным способом, а вот получатели видят письмо с уже переставленными буквами?Если не реально, то почему? Если реально, то для всех ли браузеров? (Safari, Chrome, IE, Firefox и т.д.)