Как стать автором
Обновить

Создания сеансового ключа с использованием публичных и приватных ключей

Время на прочтение 1 мин
Количество просмотров 4.5K
Информационная безопасность *Криптография *
Наглядный пример аутентификации по ключу. Похожим образом сейчас может работать много протоколов включая ssh.

Всего голосов 59: ↑50 и ↓9 +41
Комментарии 25

Интернет на магнитах 3 — P2P Сайт и Форум

Время на прочтение 8 мин
Количество просмотров 12K
Децентрализованные сети *
image Концепция интернета на магнитах состоит в том чтобы не зависеть от программного обеспечения, протокола или способа передачи данных. Не важно каким образом вы получаете файл имея магнит вы можете удостоверится что получили именно то что заказывали.

Для создания и обновления магнитного сайта с множеством страниц нам понадобится электронная подпись. Нужна она чтобы обозначить источник и связать между собой страницы сайта. Для её создания и использования можно воспользоваться пакетом GnuPG.

Читать дальше →
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 5

Bitcoin in a nutshell — Cryptography

Время на прочтение 12 мин
Количество просмотров 111K
Криптография *Python *Программирование *Биллинговые системы *
Одна из причин, почему Bitcoin продолжает привлекать столько внимания — это его исключительная «математичность». Сатоши Накамото удалось создать систему, которая способна функционировать при полном отсутствии доверия между ее участниками. Все взаимодействия основаны на строгой математике, никакого человеческого фактора — вот в чем была революционность идеи, а не в одноранговой сети, как многие думают. Поэтому первую главу я решил посвятить именно математическим основам Bitcoin.

Ниже я постараюсь объяснить вам самые базовые вещи — эллиптические кривые, ECC, приватные / публичные ключи и так далее. По возможности я буду иллюстрировать свои слова примерами кода, преимущественно на Python 2.7, если что-то непонятно — спрашивайте в комментариях.

intro
Читать дальше →
Всего голосов 43: ↑38 и ↓5 +33
Комментарии 10

А ты хто такой? Эволюция протоколов аутентификации MySQL и MariaDB в лицах

Время на прочтение 5 мин
Количество просмотров 8.4K
Информационная безопасность *Криптография *MySQL *
замок на старом сейфе В далекие времена, до фейсбука и гугла, когда 32 мегабайта RAM было дофига как много, security была тоже… немножко наивной. Вирусы выдвигали лоток CD-ROM-а и играли Янки Дудль. Статья «Smashing the stack for fun and profit» уже была задумана, но еще не написана. Все пользовались telnet и ftp, и только особо продвинутые параноики знали про ssh.

Вот примерно в это время, плюс-минус год, родился MySQL и были в нем юзеры, которых надо было не пускать к чужим данным, но пускать к своим.

Michael Widenius (или просто Monty) явно был знаком с параноидальными безопасниками не понаслышке, чего стоит один такой момент (из исходников, global.h):

/* Paranoid settings. Define I_AM_PARANOID if you are paranoid */
#ifdef I_AM_PARANOID
#define DONT_ALLOW_USER_CHANGE 1
#define DONT_USE_MYSQL_PWD 1
#endif

Так что неудивительно, что пароли в MySQL открытым текстом не передавались никогда. Передавались случайные строки на основе хешей. А конкретно, первый протокол аутентификации (цитируется по mysql-3.20, 1996) работал так:
Читать дальше →
Всего голосов 28: ↑28 и ↓0 +28
Комментарии 24

Реализация Elliptic curve Menezes-Vanstone cryptosystem на базе OpenSSL API

Время на прочтение 14 мин
Количество просмотров 3K
Криптография *Программирование *
Из песочницы
Здравствуйте, уважаемые хабровчане! По мере моего посильного занятия криптографией для своих скромных нужд, в попытках поддержать достойный уровень безопасности данных (я ориентируюсь на уровни, указанные в разделе ecrypt тут) меня начало беспокоить падение производительности при использовании криптоалгоритма RSA.

К сожалению, этот алгоритм оказался единственным в openssl, который допускает шифрование/дешифровку маленьких блоков данных (предполагается по смыслу статьи — ключей для алгоритмов симметричного шифрования) с помощью асимметричных криптоалгоритмов.

Прогулявшись по просторам интернета, удалось выяснить, что:

1. El-Gamal может успешно шифровать/расшифровывать, но эти операции не реализованы в openssl (есть реализация в libgcrypt). В плане быстродействия El-Gamal раза в 3 быстрее RSA
при той-же длине ключа и той-же криптостойкости на 1 бит ключа.

2. Elliptic Curve cryptosystem (ECC) приятно удивили скоростью и криптостойкостью на 1 бит ключа, но операции шифрования/дешифрования на основе ECC не реализованы в openssl.
Реализация ECC шифрования в libgcrypt есть, но очень специфична. Если коротко, то шифруемое сообщение m отображается на точку эллиптической кривой mG, из которой исходное сообщение m не может быть получено иначе, как взломом ECC или перебором всех возможных значений m.

3. В литературе [1] описана Menezes-Vanstone ECC, но есть уведомления о ее «уязвимости» [2]
Разберем этот вопрос подробнее.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 19

Как на Java c помощью КриптоПро подписать документ PDF

Время на прочтение 10 мин
Количество просмотров 33K
Блог компании Альфа-Банк Информационная безопасность *Криптография *Java *PDF


Привет! Я сотрудник Альфа-Банка и занимаюсь разработкой программного обеспечения со встроенными средствами криптографической защиты информации.

В данной статье хочу рассказать о следующих вещах:

  • преимуществах формата PDF в качестве документа с электронной подписью;
  • платформе Java, библиотеке itextpdf и СКЗИ КриптоПро CSP, как инструментах подписи;
  • о том, с какими трудностями пришлось столкнуться, о доработке itextpdf;
  • привести пример кода, выполняющего несколько подписей;
  • поговорить о целесообразности использования формата PDF в качестве документа с подписью.
Читать дальше →
Всего голосов 14: ↑13 и ↓1 +12
Комментарии 25

Настройка двусторонней RSA и GOST аутентификации в приложении на JBoss EAP 7

Время на прочтение 14 мин
Количество просмотров 17K
Блог компании Альфа-Банк Информационная безопасность *Криптография *Open source *Java *


Здравствуйте!

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

В этой статье расскажу, как мы в своей деятельности применяем один из инструментов обеспечения информационной безопасности.
Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Комментарии 3

Не ждем, а готовимся к переходу на новые стандарты криптографической защиты информации

Время на прочтение 18 мин
Количество просмотров 38K
Блог компании Альфа-Банк Информационная безопасность *Криптография *Open source *Java *
В информационном мире и Digital-Банке само собой разумеется – Digital Security и Digital Signature.

Криптография позволяет нам защитить информацию от подмены и однозначно установить ее правообладателя посредством усиленной электронной подписи.

Криптография дает возможность закрыть для посторонних глаз информацию конфиденциального характера с помощью шифрования.

Как применять криптографию в соответствии с законодательством и ладу с регуляторами?

Речь пойдет о правовых аспектах и об организационно-технических мероприятиях в рамках официального перехода на национальные стандарты в области криптографической защиты информации ГОСТ Р 34.11-2012 «Функция хэширования» и ГОСТ Р 34.10-2012 «Процессы формирования и проверки электронной цифровой подписи».

Переход осуществляется в средствах электронной подписи, применяемых для информации, не содержащей сведений, составляющих государственную тайну, в случаях, подлежащих регулированию со стороны ФСБ России в соответствии с действующей нормативной правовой базой.
Читать дальше →
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 10

СМЭВ 3. Электронная подпись сообщений на Java и КриптоПро

Время на прочтение 16 мин
Количество просмотров 42K
Блог компании Альфа-Банк Информационная безопасность *Криптография *Open source *Java *
Туториал


Система межведомственного электронного взаимодействия (СМЭВ) задумывалась как цифровая среда предоставления услуг и исполнения государственных и муниципальных функций в электронной форме.

В настоящее время СМЭВ продолжает расширять свои возможности и вовлекать все большее количество участников взаимодействия.

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

В этой статье мы поговорим о том, как своими силами подписать запросы и проверить электронные подписи ответов СМЭВ версии 3.0, и о паре интересных нюансов, с которыми пришлось при этом столкнуться.
Читать дальше →
Всего голосов 26: ↑26 и ↓0 +26
Комментарии 16

Инфраструктура открытых ключей: утилита генерации запросов на квалифицированный сертификат

Время на прочтение 8 мин
Количество просмотров 7.5K
Информационная безопасность *Криптография *IT-инфраструктура *IT-стандарты *C *
Из песочницы
image Одним из центральных объектом инфраструктуры открытых ключей (Public Key Infrastructure — PKI/ИОК) наряду с ключевой парой является сертификат, который сегодня фактически является аналогом гражданского паспорта.
Читать дальше →
Всего голосов 15: ↑15 и ↓0 +15
Комментарии 9

Разбираем и просматриваем квалифицированные сертификаты средствами Python/Tkinter

Время на прочтение 10 мин
Количество просмотров 11K
Информационная безопасность *Криптография *Open source *Python *Графические оболочки *
Квалифицированные сертификаты быстро стали неотъемлемой частью повседневной жизни. И все больше людей хотят увидеть этого «зверя» изнутри. Это с одной стороны. А с другой стороны разрабатывается все больше приложений, в которых задействуется информация иэ этих сертификатов. И это не только атрибуты ИНН или ОГРН владельца или издателя сертификата. Это может быть и информация о том какой криптопровайдер использован владельцем сертификата (атрибут subjectSignTool) для генерации закрытого ключа или на базе каких сертифицированных средств создан удостоверяющий центр (УЦ), выпустивший тот или иной сертификат. И если написать программку, которая будет анализировать выпускаемые сертификаты, то можно будут собрать интересную статистику по тому какие СКЗИ используют владельцы сертификатов и на базе каких (правда это менее интересно) сертифицированных (или несертифицированных) средств развернуты УЦ (атрибут issuerSignTools):
Читать дальше →
Всего голосов 11: ↑10 и ↓1 +9
Комментарии 24

Простой ASN1-кодек на базе sprintf

Время на прочтение 13 мин
Количество просмотров 6.3K
Криптография *Программирование *IT-стандарты *C *Разработка под Linux *
imageТранспортный синтаксис ASN.1 определяет однозначный способ преобразования значений переменных допустимых типов в последовательность байт для передачи по сети. В ASN.1 он называется базовыми правилами кодирования (Basic Encoding Rules, BER). Правила являются рекурсивными, так что кодирование составных объектов представляет собой составление в цепочку закодированных последовательностей составляющих объектов. Протокол ASN.1 описывает структуру данных простым и понятным языком.
Читать дальше →
Всего голосов 21: ↑17 и ↓4 +13
Комментарии 21