Ищется программист JavaScript, ActiveX знакомый с криптографией
#3
Отправлено 28.11.2008, 10:42:18
Это кто тз писал интересно? На жаба-скриптах криптовать сообщения - это круто... Это будет ssl собственными руками. Может проще ssl настроить?Требуется интегрировать в Web-интерфейс функции криптования сообщений.
0x0000 - может я не понимаю, в чем заключается шифрование, и вообще сакральный смысл этого всего?
Сообщение отредактировал Zulkar: 28.11.2008, 10:43:31
#5
Отправлено 28.11.2008, 11:06:36
#6
Отправлено 28.11.2008, 12:18:15
Вы идете неверным путем. Такое делается не самопальным алгоритмом на жабаскриптах, который перестанет работать при следующем обновлении браузера, а с помошью ssl, с авторизацией по сертификатам, выданных клиентам. При соединении идет обмен открытыми ключами, ключи проверяются на подлинность, (сервер в качесте доверенного издателя может служить) и все. Во первых это будет гораздо надежнее, во вторых гораздо дешевле. Ваша же система на джава-скритпах будет очень дорогой и ненадежной.Требуется что бы сообщения передавались в зашифрованном виде (ассиметричное шифрование) и хранились на сервере соответственно тоже в зашифрованном виде и прочитать их мог только получатель. И что бы получаемое сообщение тоже передавалось на комп получателя в том же зашифрованном виде и расшифровывалось непосредственно перед прочтением.
#7
Отправлено 28.11.2008, 12:45:12
#8
Отправлено 28.11.2008, 13:12:21
Да, именно так и работает например почта, когда она ассиметрично зашифрована и подписана.Ну нет проблем, но сообщения на сервере должны лежать в закрытом виде - 1, получатель сообщения должен быть уверен, что сообщение именно от того, от кого отправленно (электронная подпись) - 2, ну и сообщение должно быть прочитано, ТОЛЬКО тем, кому адресовано - 3. Все способы шифрования канала не подходят ни по одному требованию! Применение PGP и подобных продуктов не подходит по причине требования: отсутствие на компе какого либо спец.ПО. Вот и выходит только Web-интерфейс . Ну пусть не JavaScript, пусть это будет загружаемый компонент, но операции криптования-декриптования должны осуществлятся только на компьютерах реципиентов.
1. сообщения на сервере должны лежать в закрытом виде (письмо зашифровано открытым ключом получателя и закрытым ключом отправителя)
2. Получатель сообщения должен быть уверен, что сообщение именно от того, от кого отправленно (открытый ключ отправителя расшифровывает письмо - фактически электронная подпись.)
3. Client-Side Certificates - все браузеры это поддерживают. Посмотрите как работает к примеру Web-Money Keeper Light
Еще раз - если вы используете SSL1/2/3/TLS - то гарантией стойкости алгоритма служат правительственые организации всего мира, ежегодные проверки военными организациями, да и вообще весь мир. Если вы используете криптование от дядя Вася Инкорпорайшен - то этот дядя вася и является вашей гарантией. Во первых это дорого будет, во вторых ненадежно. Но дело конечно ваше, убеждать не буду
#9
Отправлено 28.11.2008, 13:34:36
"Самопальные" алгоритмы на JS тоже ерунда какая то. Написано ведь - ActiveX, это значит обычный C/C++ с какой-нибудь проверенной библиотекой (openssl например), на JS пишется только обвязка. Да и не потянет JS сколько-нибудь нормального шифрования.
#10
Отправлено 28.11.2008, 13:39:24
Если обе части, клиентская и серверная, под Windows, то я бы вполне смог выполнить такую разработку. С использованием сертификатов, открытого и закрытого ключей, протокола https и т.д. Правда, должен честно сказать, раньше мне ничего подобного делать не приходилось. Но все же у меня есть основания думать, что смог бы сделать на достаточно высоком уровне (имеется немало хороших материалов на эту тему).
Интересует бюджет и сроки, отведенные для этой работы. Если здесь неудобно, то сообщите, пожалуйста, в ЛС.
#11
Отправлено 28.11.2008, 13:44:04
Шифруете сообщение открытым ключом получателя - сервер уже его не прочитает, не так ли?Zulkar: вы не понимаете, о чём просит автор. Он не хочет, чтобы сервер мог расшифровать сообщение. Отправитель (один клиент) шифрует, получатель (второй клиент) расшифровывает. SSL и прочее здесь не при чём.
"Самопальные" алгоритмы на JS тоже ерунда какая то. Написано ведь - ActiveX, это значит обычный C/C++ с какой-нибудь проверенной библиотекой (openssl например), на JS пишется только обвязка. Да и не потянет JS сколько-нибудь нормального шифрования.
#13
Отправлено 28.11.2008, 22:07:52
Ну да. А как "стандартными средствами" передать браузеру открытый ключ получателя (не забывайте, что шифровать надо не весь поток а только сообщение, всякие заголовки шифровать не нужно или пустить по https-у)? Может я что то не знаю, но я никогда такого не видел.Шифруете сообщение открытым ключом получателя - сервер уже его не прочитает, не так ли?
Потому что это достаточно интенсивные математические расчёты, а Javascript в них не блещет. Хотя с новыми движками вроде Google V8 всё может быть. Но остальные браузеры никто не отменял.почему?
Да и не потянет JS сколько-нибудь нормального шифрования.
#14
Отправлено 29.11.2008, 13:52:57
Вот вам линк на разъяснение технологии нашего партнёра, который редиска айронпорту продался и "не сын ты мне болЕ - не сын!" POSTX
Правда криптуется тут всё на мэйл-гейтвее нативно, а на клиенте уже раскручивается Java script'ом. На нынешнем железе - вполне терпимо. По уровню безопасности - сертифицировали как HIPAA, SOX, GLB compl.- внушаетЪ
Топикстартер же явно делает наколеночное поделие, не требующее сертификации в органах ... так что с зашифровкой проблем не будет. А с расшифрофкой - есть тут один маленький логический трап ... клиент заявлен как стэйтлесс - а сервер то _НЕ_ доверенный ... а на нём приватные ключи хранить надо ... Snake Oil Cryptography Co. чистой воды!
To Zulkar: Вы немного напутали: в пунктах 1 и 2. Для подписи никто не не делает как написали вы - дорого это и attack surface растёт без нужды. Обычно для подписи грубо говоря берут криптохэш от мессаги (MD5\SHA-256) и вот уже его - приватным ключом ...
То Visual1: там всё можно сделать внутри Java script (см. линк). OS - независимо.
То v04bvs: для такой схемы силёнок Java script'у хватит - один фиг ты более одной мессаги в 5 сек читать не осилишь, шифровка - тоже на клиентах.
Ну всё - отстрелялся, а еще все выходные впереди! Бум продолжать празновать - ибо жизнь коротка
#15
Отправлено 30.11.2008, 11:47:09
Хм, да, действительно.Ну да. А как "стандартными средствами" передать браузеру открытый ключ получателя (не забывайте, что шифровать надо не весь поток а только сообщение, всякие заголовки шифровать не нужно или пустить по https-у)? Может я что то не знаю, но я никогда такого не видел.
#16
Отправлено 01.12.2008, 08:46:42
ну скажем так, я видал реализацию RC4 на языке еще более тормазнутом чем JS ... вполне вменяемая скорость шифрования... особенно для не очень больших текстовПотому что это достаточно интенсивные математические расчёты, а Javascript в них не блещет. Хотя с новыми движками вроде Google V8 всё может быть. Но остальные браузеры никто не отменял.
#17
Отправлено 03.12.2008, 16:33:39
Правда не было требований мультиплатформенности, а достаточно было сделать под винду.
Сделали решение на https + URL моникеры
Моникер проставлялся с помощью активикса. Был написан свой протокол поверх https.
Можно про это почитать в инете. Правда работает только под интернет експлорер
Помню даже все это шифровали ключем который мог находица либо на флешке или дискете.
Если алгоритм построите таким образом что ключ не нужен на клиенте тогда всё можно можно реализовать на https+javascript(MD5+base64 к примеру или более сложные алгоритмы)
Я уже давно не программист, щас такие технологии(AJAX итд) и наработки(криптобиблиотеки на ECMA262) уже есть думаю что это совсем не проблема.
#18
Отправлено 03.12.2008, 17:03:10
думаю, этого будет более чем достаточно
Количество пользователей, читающих эту тему: 2
пользователей: 0, неизвестных прохожих: 2, скрытых пользователей: 0