Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
| | | | | | | | | |
Эх, тяжело... 19.02.03 16:56 Число просмотров: 3475
Автор: Persicum Статус: Незарегистрированный пользователь
|
... живется нам, недоучкам и паранойикам!!!
Китайскую теорему об остатках применял?
Применял...
Модульную арифметику без деления Монтгомери
(но по модулю! но без всякого деления!!!) применял?
Применял...
m-ричную степень применял?
Нет, т.к. думаю эффект ее был бы около 10%:...
И все равно в 5раз медленее положенного работает =(((
|
<theory>
|
Как сгенерить ключ для RSA? 28.12.02 18:06
Автор: zim Статус: Незарегистрированный пользователь
|
Привет всем! Подскажите кто-нибудь алгоритмик , если нежалко, как сгенерировать простое число большого размера?
|
|
просто 28.12.02 23:45
Автор: RElf <M> Статус: Member
|
> Привет всем! Подскажите кто-нибудь алгоритмик , если > нежалко, как сгенерировать простое число большого размера?
Читайте главу "4.5. Как строить большие простые числа" в
"Введение в криптографию" под редакцией В.В.Ященко
|
| |
а программно как реализовать? 29.12.02 15:54
Автор: zim Статус: Незарегистрированный пользователь
|
ни один тип не предназначен для работы с такими числами, может библиотека какая есть?(желательно сишная)
|
| | |
crypto++ 29.12.02 19:18
Автор: amirul <Serge> Статус: The Elderman
|
Загляни на sourceforge.net crypto++ - самая продвинутая либа для работы с криптографией из всех которые я видел. Если именно на C, то могу отмылить конкретно только RSA на C (74 кило)
|
| | | |
crypto++ 02.01.03 14:00
Автор: zim Статус: Незарегистрированный пользователь
|
отмыль, если не сложно :)
|
| | | | |
Ушло 02.01.03 16:42
Автор: amirul <Serge> Статус: The Elderman
|
Если не разберешься пиши. Примера там нет, но у всех функций человеческие названия, так что понятно что к чему
|
| | | | | |
RSA и подпись. Две новые проги... 23.01.03 19:08
Автор: Persicum Статус: Незарегистрированный пользователь
|
Я тут написал две программки:
persicum.front.ru
Кому интересно...
Все свое и все на TurboPascal'e =).
У меня несколько вопросов к спецам.
1) Насколько они отстают в скорости стандартным процедурам?
(разы или порядки?)
2) Какой длины числа щас реально факторизуются (пусть за месяцы сетевых раздельных вычислений)
3) Какая размерность самого быстрого алгоритма факторизации
(надюсь, он экспоненциальный exp(a*n); n-число бит, а - все время уменьшается).
4) Как програмно уберечь открытый ключ от подмены?
Чесно говоря, чегото я не пойму. Если ктото испаганит докумеент
и заменит открытый ключ (типа настоящий) как без нотариуса
програмно это отловить?
Заранее спасибо, думаю, мои скромные проги
заслужили того, чтоб автору подробно все объяснили...
|
| | | | | | |
RSA и подпись. Две новые проги... 23.01.03 20:27
Автор: tatar_0x4e Статус: Member
|
> Все свое и все на TurboPascal'e =). > У меня несколько вопросов к спецам. > 1) Насколько они отстают в скорости стандартным процедурам? > (разы или порядки?) > > 2) Какой длины числа щас реально факторизуются (пусть за > месяцы сетевых раздельных вычислений)
Though the new device, if built, would place 512-bit RSA keys at much greater risk, it would have no effective impact on 1024-bit RSA," said Shamir, a professor at the Weizmann Institute in Israel.
"This theoretical device reinforces what RSA has been advising its customers for several years," said Burt Kaliski, chief scientist of RSA Laboratories. "A key size of 512 bits is not enough for real security, and 768 bits should be considered the acceptable minimum key length for protecting critical data."
А вообще, читал какой-то мериканский документ, где для защиты правительситвенных данных после 2001-2-3? какого-то, короче, года рекомендуют ключик 2048 :)
> > 3) Какая размерность самого быстрого алгоритма факторизации > (надюсь, он экспоненциальный exp(a*n); n-число бит, а - все > время уменьшается).
NFS(Number Field Sieve) -
e ^ 2 * ( ( ln ( n )) ^ 1/3 ) * (ln (ln ( n )) ^ 2/3)
> > 4) Как програмно уберечь открытый ключ от подмены? > Чесно говоря, чегото я не пойму. Если ктото испаганит > докумеент > и заменит открытый ключ (типа настоящий) как без нотариуса > програмно это отловить?
Никак :) Для того и существуют центры сертификации ключей (СА) - автоматические нотариусы.
Здесь вообще есть два подхода (защиты публичных ключей от подмены).
1) строится т.н. иерархия доверия, то есть СА старшего уровня подписывает своей ЭЦП ключики СА более низкого уровня, типа удостоверяет, что с ними все в порядке, а его ключик в свою очередь подписывает СА более высокого уровня - в конце концов все сходится к одному супер СА(Root CA), который стоит в сейфе и сам себе подписывает ключи. Сейф охраняется мускулистыми мальчиками с пулеметами :) [не программно конечно, но ОЧЕНЬ эффективно :) ] Например, в протоколе SET (электронная коммерция) иерархия доверия строится следующим образм: Root CA - самый крутой, ему все верят, нуждается в непробиваемой физической защите (толщина решеток обычно описывается в прилагаемых внутрикорпоративных стандартах :) ), Brand CA - корпорация, участник иерархии доверия, Geopolitical CA - обслуживает определенный кусок планеты (иногда опускается), Merchant CA - выдает ключики торговцам заинтересованным в использовании SET в своих сделках, стоит в банке обслуживающем торговцев (толщина решеток вокруг и калибр пулемета у охраны описывается в соответствующем стандарте :) ) , Cardholder CA - cтоит в банке обслуживающем покупателя идущего к вышеупомянутым торговцам, покупатель получает ключики вместе с кредитной картой, Payment Gateway CA - выдает ключики для гейта через который транзакции идут из магазинов в расчетную систему.
ВСЕ СА ОХРАНЯЮТСЯ, как папа Римский, если фирма хочет попасть в иерархию доверия (то есть получить ключи для своих СА) необходимо пройти процедуру сертификации, а чтобы ее пройти надо снабдить свои СА соответствующими причиндалами в виде замков, решеток и озверевшей до нужной кондиции охраны.
2) Есть более дешевый путь :) Децентрализованное распределение ключей. Раскидать свой публичный ключ в как можно больше общедоступных мест, опубликовать в журнале Космополитен (если согласится ? :/ ? ) и надеятся что злобный кракер просто физически не сможет их все выловить и заменить... Это теория. А на практике ключ обычно подписывают как можно больше людей, которым доверяешь ты и которым доверяет получатель сообщения зашифрованного на этом ключе. Чем больше подписей, тем более сложно их все подделать.
> > Заранее спасибо, думаю, мои скромные проги > заслужили того, чтоб автору подробно все объяснили...
А ты исходники выложи, а то и поговорить не о чем... Мало ли кто RSA реализовывает... реализовывал... молодец, что сам, конечно... welcome to the club... :]
|
| | | | | | | |
RSA и подпись. Две новые проги... 24.01.03 14:11
Автор: CP Статус: Незарегистрированный пользователь
|
> e ^ 2 * ( ( ln ( n )) ^ 1/3 ) * (ln (ln ( n )) ^ 2/3) т.е. ~exp(n^1/3) по длине ключа - суперполиномальный
стало-быть, при увеличении ключа 1024 в два раза -
сложность возрастает в 20 раз( всего-то, а не в 2^1024)
в четыре раза - в 1000 раз. Срочно надо добавить ключи
8128 =))).
> А ты исходники выложи, а то и поговорить не о чем... Мало > ли кто RSA реализовывает... реализовывал... молодец, что > сам, конечно... welcome to the club... :]
Может, в будущем.. Надо причесать все,
к тому-же под NT она не работает пока,
надо разбираться...
А вообще, если есть процедура PowerMod(a,e,n) - вот и весь RSA
Сначала я в Mathematice 4 долго экспериментировал,
а когда врубился - на паскале написал...
|
| | | | | | | | |
RSA Performance 04.02.03 15:58
Автор: persicum Статус: Незарегистрированный пользователь
|
> реализовывал... молодец, > что сам, конечно... Скажу без ложной скромности - написать RSA на турбопаскале
с нуля - неслыханная дерзость!
Насколько он прост математически,
настолько и сложен технически. Первая версия просто работала
себе потихоньку...
Потом два порядка быстродействия я отвоевал на
китайской теореме и на делении со словарем на 96метров =).
(будет в версии 0.4 скоро).
Думаю, еще есть резервы...
1) Таинственная квази-64-разрядность Пентиума.
Если попросить на асме, он вроде умеет сразу перемножать
числа 64бит и давать сразу 128 бит результат (где?
я знаю тока асм 32бит, EDX,EAX ... может в стеке?)
2) что такое быстрое умножение Монтгомери без
приведения по модулю?
3) Еще предложения...
|
| | | | | | | | | |
Эх, тяжело... 19.02.03 16:56
Автор: Persicum Статус: Незарегистрированный пользователь
|
... живется нам, недоучкам и паранойикам!!!
Китайскую теорему об остатках применял?
Применял...
Модульную арифметику без деления Монтгомери
(но по модулю! но без всякого деления!!!) применял?
Применял...
m-ричную степень применял?
Нет, т.к. думаю эффект ее был бы около 10%:...
И все равно в 5раз медленее положенного работает =(((
|
|
|