jsn: (common)
[personal profile] jsn

Меж тем, fallout от публикаций Сноудена в криптографии продолжает выпадать со страшной силой. Последнее из принесённого, на этот раз, Слэшдотом: после заявления Шнайера о том, что он теперь не доверяет шифрованию на эллиптических кривых, народ побежал вспоминать-искать, нет ли там чего-нибудь, похожего на закладку. И практически сразу же нашёл:

>> Bruce Schneier recommends *not* to use ECC. It is safe to assume he
>> knows what he says.
>
> I believe Schneier was being careless there. The ECC parameter sets
> commonly used on the internet (the NIST P-xxxr ones) were chosen using
> a published deterministically randomized procedure. I think the
> notion that these parameters could have been maliciously selected is a
> remarkable claim which demands remarkable evidence.

Okay, I need to eat my words here.

[...]

The deterministic procedure basically computes SHA1 on some seed and uses it to assign the parameters then checks the curve order, etc.. wash rinse repeat.

Then I looked at the random seed values for the P-xxxr curves. For example, P-256r's seed is c49d360886e704936a6678e1139d26b7819f7e90.

_No_ justification is given for that value. [...]

I now personally consider this to be smoking evidence that the parameters are cooked.

(original mailing list message)

Рекомендованные стандартом константы ECC изготовлены человеком NSA с помощью довольно подозрительного процесса. (Это не та же старая история про практически общеизвестную старую закладку NSA в Dual_EC_DRBG, это новое и гораздо круче). Дискуссия на соответствующем StackExchange:

The NIST FIPS 186-3 standard provides recommended parameters for curves that can be used for elliptic curve cryptography. These recommended parameters are widely used; it is widely presumed that they are a reasonable choice.

Тут сказано "широко используется". Насколько я понимаю, ECC-криптография вообще сильно менее "широко используется", чем DLP или IFP. Но вообще это big deal вроде бы -- один из трёх мейнстримовых математических фреймворков для шифрования с открытым ключом содержит палёные константы от NSA.

(оригинальный пост на Slashdot-е)

Date: 2013-09-12 12:20 am (UTC)
From: [identity profile] birdwatcher.livejournal.com
Прелесть!

Неплохо, неплохо

Date: 2013-09-12 01:06 am (UTC)
From: [identity profile] livejournal.livejournal.com
User [livejournal.com profile] lxe referenced to your post from Неплохо, неплохо (http://lxe.livejournal.com/2249954.html) saying: [...] Originally posted by at Неплохо, неплохо [...]

Date: 2013-09-12 06:14 am (UTC)
From: [identity profile] tnt23.livejournal.com
Ничего не смыслю в криптографии, но слыхал о планах перехода на ECC карточных платежных систем.

Date: 2013-09-12 08:21 am (UTC)
From: [identity profile] arkanoid.livejournal.com
О чем я сразу стал говорить, когда ECC начали усердно пушить под видом "next generation crypto", от чего меня отдельно коробит.

Date: 2013-09-12 08:25 am (UTC)
From: [identity profile] jsn.livejournal.com
В смысле, ты сразу говорил о константах?

Date: 2013-09-12 08:50 am (UTC)
From: [identity profile] arkanoid.livejournal.com
Я говорил, что ECC smells bad (а называть это next generation и вовсе буллшит), а константы -- наиболее подозрительная часть, хотя вглубь не копал, откуда именно они взялись.

Date: 2013-09-12 09:00 am (UTC)
From: [identity profile] jsn.livejournal.com
А почему smells bad и почему эта часть -- буллшит? Not a trick question, мне правда очень интересно; я в этой теме понимаю мало, а ты -- много. Мне казалось, что при использовании nothing up my sleeve констант (Бернштейн, например, давал такие, кажется?) оно не smells bad, и что аргументы про key length / performance действительно звучат привлекательно в плане next gen crypto.

Date: 2013-09-12 09:11 am (UTC)
From: [identity profile] arkanoid.livejournal.com
Потому что пушат очень активно, и почему именно это?

Буллшит -- потому что называют next generation, хотя оно явно никаким местом не next. Я раньше двумя руками ратовал за NTRU в качестве действительно "next", но вдумчивое прочтение некоторых статеек привело меня к ощущению (скорее именно ощущению), что на решетках / CVP хрен что сделаешь действительно надежно.

Next это то, что выстоит, когда у NSA будет алгоритом Шора в железе.

С другой стороны, у меня есть сомнения в том, что с созданием универсального квантового компьютера public key crypto выживет в принципе, кроме м б странной экзотики вроде McEliece. Но фора лет в двадцать меня устроит вполне.

Date: 2013-09-12 10:43 am (UTC)
From: [identity profile] rblaze.livejournal.com
Да ладно, если уж кровавая гебня перешла на ECC, то не так там всё плохо. Какие-то математики у них должны были остаться, ну хоть парочка.

Date: 2013-09-12 10:49 am (UTC)
From: [identity profile] jsn.livejournal.com
А гэбня на что перешла? На FIPS 186-3 curves? :)

Date: 2013-09-12 10:59 am (UTC)
From: [identity profile] rblaze.livejournal.com
Константы другие, но алгоритмы-то те же, с ними ничего не сделаешь.

Date: 2013-09-12 11:03 am (UTC)
From: [identity profile] jsn.livejournal.com
Просто на то, чтобы не купиться на палёные константы, пары математиков легко хватит; на что-либо более серьёзное -- уж никак.

Date: 2013-09-12 11:10 am (UTC)
From: [identity profile] rblaze.livejournal.com
Это описание абсолютно соответствует тем процессам, по которым я пересекался с ФСБ и до того ФАПСИ :)

Date: 2013-09-12 11:29 am (UTC)
From: [identity profile] jsn.livejournal.com
О, а расскажи вообще, как там всё за железным занавесом устроено? Вот снаружи любой студент знает, что нельзя самому делать реализацию даже придуманного умными людьми крипто: ошибок налепишь, энтропию проебёшь, side channel-ов насажаешь, и т.д, и поэтому надо брать существующую реализацию с репутацией (e.g. openssl, nacl или что там), и использовать. Но в России-то, для сильно секретного, так нельзя, поди? Как же они живут? Вот это их ECC, например, как реализовано?

Date: 2013-09-12 11:59 am (UTC)
From: [identity profile] rblaze.livejournal.com
Disclaimer: я секретного ничего не делал. Ну то есть делал то, что потом вроде как засекретили, но это было на рубеже тысячелетий, давно сдохло и поэтому неправда. Всё остальное, о чем рассказ - для "коммерческой" информации, всяких персональных данных, но без грифов.

В России я лично накодировал [почти] все реализации криптоалгоритмов и протоколов, потому что готовых тупо нет, и то же самое сделали все остальные нуждающиеся в криптографии в нашей конторе. Количество допущеных при этом косяков представить себе сложно, с ходу я могу вспомнить парочку довольно грубых своих. Протоколы частично придуманы в ФАПСИ, частично нами, что из этого вышло... а хрен знает, я старался, но мало ли. Стойкость несколько усиливается тем, что никаких опций и закладок на разные реализации в этих протоколах нет, все взаимодействиующие устройства наши, шаг влево-вправо или не та версия - до свидания.

Всё это, разумеется, прошло сертификацию в ФСБ, и получило красивые бумажки с печатями. Сертификация заключалась в том, что проверялась правильность реализации заявленых алгоритмов, то бишь симметричного и асимметричного ГОСТа и программного ДСЧ. На протоколы смотрели разве что с точки зрения "а что это у вас на одном ключе все соединение шифруется, попилите его на кусочки по полтора килобайта и для каждого от исходного ключа сгенерируйте отдельный", да и то начиная с 2008 года, до того вообще на них не жаловались. Ни про какие ошибки типа padding oracle, правила authenticate then encrypt (или наоборот, whatever they want) и т.д. от сертификаторов я отродясь не слышал. Зато были запросы "а пропатчили ли вы такую-то ошибку в OpenSSL" и "у нас тут static analyzer на strlen ругается, исправьте".

При этом сертификационную лабораторию, которая возьмется за проект на базе FreeBSD, мы задолбались искать настолько, что собрались уж было перевести его на Linux. На тот момент не понадобилось, к счастью. Найти кого-то, способного проанализировать код не на C/C++, наверное невозможно вообще.
Edited Date: 2013-09-12 12:06 pm (UTC)

Date: 2013-09-12 10:51 am (UTC)
From: [identity profile] arkanoid.livejournal.com
Ну есть ECC вообще и ECC approved by NIST. Больше вопросов ко второму, который везде и стоит.

Date: 2013-09-12 08:30 am (UTC)
From: [identity profile] kehrmann.livejournal.com
Ох, вчера же ебнуло. Фак.
Побольше счастья, поменьше кармы!

Date: 2013-09-12 08:52 am (UTC)
From: [identity profile] jsn.livejournal.com
Спасибо :)

Date: 2013-09-12 01:30 pm (UTC)
From: [identity profile] levong.livejournal.com
кстати да.
и проницательности; впрочем, она и так. есть :)

Date: 2013-09-12 04:13 pm (UTC)
From: [identity profile] jsn.livejournal.com
Спасибо :)

Profile

jsn: (Default)
jsn

July 2020

S M T W T F S
   1234
56789 1011
12131415161718
19202122232425
262728293031 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 31st, 2025 05:33 pm
Powered by Dreamwidth Studios