to post messages and comments.

Нашёл вменяемого УЦП. Это такой, который, проведя проверки, и ЭЦП по ГОСТу может продать, и SSL для сайтов, а если не может SSL для сайтов выпустить сам, ТАК ХОТЯ БЫ НЕ БУДЕТ ТУПИТЬ и предложит перепродать от другого УЦ, который может. И одновременно это не простой спекулянт иностранным SSL, который всё никак не догадается российскими ЭЦП заняться из того же окна. Вот на токенах и смарт-картах ГОСТ и RSA уже давно вместе, а почему тогда записывать их в разных местах.

Итак, встречайте: АНК.

Издание сертификата ЭП
SSL-сертификаты для HTTPS и TLS
Я уж и не верил, что когда-нибудь такое увижу. Для продажи SSL сотрудничает с польским Certum. Ну хотя бы так.

Если таких УЦ будет побольше, глядишь, кто-нибудь догадается ещё какие-нибудь совмещённые варианты делать. В КриптоПро есть ГОСТ для Authenticode, но действует только внутри предприятия, где доверие внутреннему УЦ. Кто-нибудь из УЦ мог бы это решение догадаться наружу выставить. Если от ГУЦ Минкомсвязи цепочка идти будет, это бы сразу решило многие проблемы.

Ещё плюсы УЦ:
У них можно купить смарт-карты еСМАРТ ГОСТ с отечественным криптопроцессором от Микрона (Зеленоград). еСМАРТ редко, где можно встретить, а у них вот есть. еСМАРТ ГОСТ, Рутокен ЭЦП 2.0 и еТокен от Алладин — это на данный момент все варианты с ГОСТами 2012го года (Стрибог). Кузнечика (2015й год) нет нигде, но хотя бы так. У Рутокена обновились только токены, а на смарт-картах до сих пор прошлое тысячелетие. Алладин — не вполне российский и сертификацию проходил довольно интересным способом, сертифицируется не всё изделие, а только модуль в нём. Так и остаётся еСМАРТ как лучший (кмк) вариант.
Держат сервис трансграничного электронного документооборота.

Минусы:
Похоже, удалённо ЭЦП записать не получится. Один-то раз, может, и получишь по почте новую СК, а через год что, выкинуть? Или новую получать, на которой не будет ещё не истёкших других сертификатов со старой, если они неизвлекаемые. Вот это не очень здорово.

Никак не могу воспроизвести TTH на папку. Да, я знаю, это позор, который должен быть спрятан глубоко, и лучше, чтоб про него даже не знали, но вот приспичило. Надо. Есть хеш папки, который посчитал удалённый клиент, есть сохранённый список файлов с него. По идее, это расширение было когда-то здесь, но этот старый сайт давно не пашет, а в Машине Времени не сохранилось. В документацию как официальное расширение не вошло, поэтому следы ведут на мёртвую вики. Сейчас у разработчиков на замену старому сайту есть новый dcbase.org, и там, по идее, текст был скопирован сюда. Из-за того, что вебмастер не мог придумать ничего лучше, чем поставить на сайт принудительный HTTPS, сайт этот сейчас стал недоступен от слова совсем. Ну или я, по крайней мере, не знаю прямого IP. Приходится читать через кеш Гугла. Но у меня такое чувство, что это это не копия вики, а копия форума, на котором когда-то обсудили, потом реализовали, и окончательную версию записали в вики, а вики сдохла. И теперь осталась только реализация в исходниках. Искал-искал, так и не нашёл, где это вычисляется.

Надо с отладочной печатью воспроизвести, как из хешей внутренних файлов получился хеш папки. Уж я и сортировку делал не делал, endianness вертел не вертел, вертел до / после сортировки, хеш вычислял и TTH, и чистый TIGER. Не сходится, и всё тут.

Как была криптография болью, так и остаётся. Ничего не меняется.

До чего же пространно указываются схемы подписи запросов на биржах. Во-первых, у каждого свои, во-вторых, постоянно непонятно, как что (де)кодировать, и нужно ли. В Poloniex секрет — очевидно шестнадцатеричная строка, но декодировать её не нужно, а в Cryptopia — очевидно Base64 строка, но декодировать её оказалось нужно. Или sha256 напишут, а потом сиди гадай, это SHA-256 в шестнадцатеричном виде в нижнем регистре или двоично, хотя всё остальное рядом — текст. В Kraken выясняется, что двоично, хотя всё остальное рядом — текст. URL в Kraken — это не то, что вы подумали, а только путь URL, как можно понять, перебрав всякие варианты кодирования/декодирования/некодирования/недекодирования остальных вызывавших сомнения элементов схемы и подсмотрев, наконец, в чужих реализациях.

Увидев в документации Cryptopia такое:
URI: the request uri. e.g. https://www.cryptopia.co.nz/Api/SubmitTradeОбрадовался, подумал, ну хоть что-то написали понятно. Вот, у кого Кракену бы поучиться. И думал я так, пока не запарился пытаться пробиться и не посмотрел опять, как делают другие:
strtolower( urlencode( $uri ) )
Как же вы мне все дороги.

Кажется, поймал в живую коллизию. С одной стороны, файл. С другой стороны, папка (хеш от отсортированных хешей файлов). Собрал свидетельства, сделал снимки экрана. По идее, это заодно сведётся и к коллизии для TIGER.

Надо будет независимыми утилитами перепроверить все расчёты. Не врёт ли мне клиент по другую сторону. В ГрейЛинке хеш для папок — устаревшая фича в пользу dcls, я в контекстном меню скачанного списка файлов вижу опции «получить магнитную ссылку» неактивным цветом. Только в поиске по TTH вижу файл и папку вместе.

Всё чаще к Ростелеком обращаются учреждения из крупного бизнеса и государственного сегмента, целью которых является организация комплекса услуг с обязательным криптографическим шифрованием передаваемого трафика. И это логично так как опыт реализации крупных проектов уже за плечами, а тенденция разработки и внедрения в коммерческую эксплуатацию новых услуг движется уверенно вперед.

Пытался переписать на Delphi crypt(), которым шифрует пароли ISPConfig у заказчика. Сначала по ссылкам с форума ISPConfig меня кинуло сюда. Взял, переписал на Delphi, только на последнем этапе лень было ещё и модифицированный Base64 делать. Сконвертил в обычный Base64, знак равенства отрезал, а остальные символы заменил по таблице соответствия.

Не сошлось.

Начал вникать глубже в тему. Оказывается, их способ кодирования пароля корнями уходит в /etc/shadow в Linux. Всплыл оригинальный исходник crypt_md5.c. Переписал всё с него. Заодно нашёл ошибку. Я в строках, соответствующих 149 и 150 из первой ссылки, вычислял MD5, а надо только в 150. Строки выглядит похоже, но в 149 MD5 не вычисляется, а там ещё дальше по тексту идёт продолжение. И, присмотревшись, ещё увидел, что модифицированный Base64 берётся от октетов, идущих не подряд, а вперемешку, так что либо нужно тем же образом перемешать, либо переписать на Delphi рабочий код. Переписал.

Не сошлось.

В коде я манипулировал и UTF8String, и TIdBytes, которые суть array of Byte, и постоянно байты перегонял туда и обратно. Думал, ну можь тут накосячил. Сделал отдельную функцию, которая и на вход, и на выход работает со строками. Код стал проще выглядеть, заодно там изолированные экземпляры TIdHashMessageDigest5 теперь используются, а то вдруг я общий экземпляр как–то неправильно использовал.

Не сошлось.

Как на Byte действует shl в Delphi, я уже не уверен, но очень может быть, что значение на выходе так и остаётся Byte, и после shl 16 получается 0, надо бы каждый байт привести к Integer перед тем, как делать shl.

Не сошлось.

Вообще, вряд ли, но вдруг у байтов после расширения размера одновременно с приведением к знаковому численному типу появляется шлейф из единиц в старших разрядах и как–то где–то что–то потом портит. Тем более, в коде по первой ссылке использовался "and $ff". Не зря же, наверное? Надо тоже добавить.

Не сошлось.

Смотрел–смотрел, так и не увидел ошибку. Решил ещё посмотреть разных реализаций. Нашёл независимую для PHP. И бросилось в глаза, что на 103й строке $ctx .= pack("C", 0); Я такой уже один раз видел по первой ссылке, но по второй, откуда я потом переписывал, был j–й байт final, причём, j инициализируется в начале for нулём, а потом не меняется, то есть, это 0, который будет указывать на первый байт в final или password. Я вообще к первой ссылке с недоверием относился после того, как ошибку увидел и переписал по второй ссылке, так что как во второй ссылке, так и у меня был первый байт от final. Это сейчас я разглядел, что строки 149 и 150 отличаются, а тогда ещё нет, и коду по второй ссылке я доверял больше, чем по первой. Но странно, что по третьей так же, как и по первой. Пытаясь понять, почему 0, увидел, что для безопасности по второй ссылке периодически что–нибудь затиралось, но так как мне эта безопасность была не нужна, это я в свой код не переписывал, а там как раз final нулями перезаписывается перед этим циклом, отсюда и 0.

Сошлось. Где–то 5 часов ушло на отладку.

New York Times Removes Passage on China From Story on Apple/FBI Encryption Fight
I’ve long wondered why China allows companies like Apple to sell devices without back doors for their government. A big part of why they tolerate it seems to be the fact that no government gets this.
Если Китай прогнёт установку зондов, это будет очень весело. Представляю, как подгорит у постиндустриалистских фундаменталистов.

Тут внезапно пришли дедлайны по аспирантуре, нужно написать реферат про криптографию, философию и вот это вот все в ключе истории. Какие источники можно использовать? Шеннон и Тьюринг писали какие-нибудь философские рассуждения на эту тему?

Никто больше не считает, что весь этот кипешь с "глобальной слежкой", "расшифровкой любых типов шифрования специальным отделом АНБ", "получением данных с любого смартфона", "прослушиванием телефонных линий иностранных государств" затевается ради того, чтобы дать повод тоталитарным правительствам (читай — оккупационному правительству россии) прикрыть доступ к мировому интернету?
Сейчас Сноуден, так удачно полетевший в Россию, раскроет ФСБ чудовищные факты слежки за православными россиянами и ФСБ вынесет правительству РФ единственно верную рекоммендацию: отключить или максимально ограничить передачу информации по зарубежными каналам связи с целью обезопасить данные россиян. Помните "Закон о защите персональных данных"?

В свете последних новостей

“I am so glad I resisted pressure from Intel engineers to let /dev/random rely only on the RDRAND instruction. [...] Relying solely on the hardware random number generator which is using an implementation sealed inside a chip which is impossible to audit is a BAD idea.” — Theodore Ts’o
pressure from Intel engineers
Ну, вы поняли.

Я подумал, что у властей только один выход, чтобы остановить распространение свободомыслия через криптографию — разрешить доступ только к официальным сайтам (или лицензированным) и запретить пользователям обмениться между собой данными. Потому что в другом случае пользователи сети смогут обмениваться данными между собой инкапсулированными в html например (или в любой другой разрешённый формат).
Но есть выход:
Можно строить свои сети через вайфай, только вот в рашке эта идея обречена на провал. Правда можно заказать у китайцев сделать дофига мелких транзитных wifi станций размером с какашку и рассыпать по всей стране. А менты будут ходить с совками и мешками и собирать их, лол