LINUX.ORG.RU

Криптография на JS


0

1

Насколько сейчас быстры современные движки в плане числодробилки? Серьезная криптография, которая на си работает секунды, на JS возможна?

★★★★★

Ответ на: комментарий от Legioner

Я вроде описал в первом посте, зачем. Например, чтобы отправлять вместе с запросом его цифровую подпись гостовским сертификатом. Или реализовывать произвольные криптографические алгоритмы, например хешировать пароль перед отправкой на сервер в форме логина.

Это не вопрос на ответ зачем. Какую задачу ты собираешься этим решить?

vasily_pupkin ★★★★★
()
Ответ на: комментарий от vasily_pupkin

Задачу соответствия ТЗ заказчика «подписывать все запросы с помощью ЭЦП», например (которая сейчас решается джава-апплетом).

Legioner ★★★★★
() автор топика
Ответ на: комментарий от Legioner

Это решение просто для галочки. «Подписывать все запросы с помощью ЭЦП» в таком исполнении бессмысленно

vasily_pupkin ★★★★★
()
Ответ на: комментарий от vorpal

Только с паяльником будет именно что смешно, если не знать к кому применить или не иметь возможности дотянуться. Но это все словесная эквилибристика. Иногда в нее весело играть, но почти всегда пустая трата времени.

в данном случае как раз твой блокнот даёт возможность и узнать, и дотянутся. И в этом его минус.

Ты противоречишь себе

а я практик. Для меня утверждение «снег всегда белый» истинно и полезно на практике. Хотя любой диванный теоретик может его оспорить, предъявив пруфскрины снега со своей улицы, с автомобильной грязью и собачими экскрементами. И будет этот теоретик абсолютно прав. Как и ты прав.

и я еще приводил слова эксперта в своей области

ЕМНИП этот эксперт привёл Over9000 доводов против данного шифра, хотя ты до них даже не дочитал похоже. Да и вообще, зачем эта книжка вообще нужна, если по твоему достаточно только одной странички в вике, с описанием Абсолютно Не взламываемого Шифра? Который в чистом виде почему-то никто IRL не применяет?

drBatty ★★
()
Ответ на: комментарий от vorpal

Очень - это не подход, нужны цифры. Вот например (я не эксперт и могу ошибаться) - я встречал что лучший алгоритм факторизации - http://en.wikipedia.org/wiki/General_number_field_sieve, сложность там дана. Она больше полиномиальной.

ты немного ошибаешься. Там сложность дана в расчёте на операции. Т.е. что X×Y имеет сложность O(1). Это правильно для любого конечного ключа с фиксированным числом бит, но совсем не так, если ты этот ключ представляешь как строку символов. Есть и другие расхождения. IRL можно даже и не пытаться реализовать сабж, т.к. мне понятно, что он будет жутко тормозной и не рабочий, либо не тормозной, но не стойкий. Впрочем - можешь попытаться…

CBC-MAC AES-128 SHA-256, все это считается вполне надежным (ну может АНБ знает как сломать)

для AES-128 существует способ взлома, который быстрее брутфорса. Да и сам брутфорс ОЧЕНЬ быстр, благодаря аппаратной поддержки AES в x86.

А вот с реализацией, судя по вышеприведенному линку, есть проблемы.

ну ещё бы… Это всё мне напоминает постройку укрытия голыми руками из говна и палок, когда у врагов имеются танки и ракеты с атомными боеголовками. ☺

drBatty ★★
()
Ответ на: комментарий от Legioner

Задачу соответствия ТЗ заказчика «подписывать все запросы с помощью ЭЦП», например

дык пусть твой заказчик купит TLS сертификат, и не занимайтесь извращением. Тестировать ты можешь на самоподписанном.

drBatty ★★
()
Ответ на: комментарий от vasily_pupkin

Я надеюсь ты тут просто троллишь

нет, блин! Я вполне серьёзно обсуждаю перспективы развития реализации GnuPG на JavaScript! ☺

drBatty ★★
()
Ответ на: комментарий от drBatty

если по ТВОЕМУ достаточно только одной странички в вике, с описанием Абсолютно Не взламываемого Шифра

Оо, пошла демагогия. Тип: Приписывание утверждений.

Очень - это не подход, нужны цифры. Вот например (я не эксперт и могу ошибаться) - я встречал что лучший алгоритм факторизации - http://en.wikipedia.org/wiki/General_number_field_sieve, сложность там дана. Она больше полиномиальной.

ты немного ошибаешься. Там сложность дана в расчёте на операции. Т.е. что X×Y имеет сложность O(1). Это правильно для любого конечного ключа с фиксированным числом бит, но совсем не так, если ты этот ключ представляешь как строку символов.

Там вообще-то про алгоритм факторизации, а не про умножение. Но и про умножение неправильно в том контексте в котором описано. Сложность гуглится очень быстро. Этот абзац тоже демагогия. Тип: подмена тезиса.

для AES-128 существует способ взлома, который быстрее брутфорса. Да и сам брутфорс ОЧЕНЬ быстр, благодаря аппаратной поддержки AES в x86.

Характеристики без цифр - ошибка или демагогия. Поскольку это втречается второй раз, то демагогия. Тип: количественно-качественная подмена.

> А вот с реализацией, судя по вышеприведенному линку, есть проблемы.
ну ещё бы… Это всё мне напоминает постройку укрытия голыми руками из говна и палок, когда у врагов имеются танки и ракеты с атомными боеголовками.

Проблемы были и у openssl - так что не довод против использования вообще. В ответе опять используются демагогические приемы. Тип: Выдача аналогий за доказательство.

Слишком много мусора всего в двух постах. Вывод: нет смысла далше продолжать разговор.

Успехов.

vorpal
()
Ответ на: комментарий от vorpal

если по ТВОЕМУ достаточно только одной странички в вике, с описанием Абсолютно Не взламываемого Шифра

Оо, пошла демагогия. Тип: Приписывание утверждений.

дык одноразовый блокнот - годный шифр IRL? да/нет?

Там вообще-то про алгоритм факторизации, а не про умножение. Но и про умножение неправильно в том контексте в котором описано. Сложность гуглится очень быстро. Этот абзац тоже демагогия. Тип: подмена тезиса.

просто ты не понимаешь, что такое «вычислительная сложность». Попробую объяснить на простом примере: алгоритм qsort имеет сложность O(N*log(N)) (в среднем). Ты не задумывался, ЧЕГО? Какой физический смысл имеет результат этой функции? Очевидно, это число элементарных операций (сравнение и перестановки). Проблема в том, что сама операция сравнения в общем случае НЕ является элементарной, и имеет сложность O(M), где M - средняя длинна строки. Если мы сортируем не просто целые числа, а скажем строки длинной N, то сложность будет O(N*N*log(N)). Как видишь - все формулы правильные, но наша qsort стала сложнее и дольше тупого пузырька. В данном случае такая же проблема - формула в твоей вике верна, но неверны данные, которые ты туда подставляешь - даже простое умножение уже не является элементарной операцией в JS(речь-то не о маленьких числах вроде 1234567).

Характеристики без цифр - ошибка или демагогия.

ты можешь опровергнуть мои выводы цифрами. Что может быть проще? Для меня очевидно, что слон НАМНОГО больше комара. Но ты можешь и посчитать, если не веришь. Да, я такой ерунды никогда не считал.

Проблемы были и у openssl - так что не довод против использования вообще.

у данного метода _принципиальные_ проблемы: как его не реализовывай, но нативный код всё равно быстрее. Злоумышленник всегда будет иметь сильное преимущество по скорости. Единственное, что может спасти ситуацию - специализированные функции в стандарте языка(JS). А пока их нет - это действительно пустой трёп и демагогия.

drBatty ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.