Рубрика «aes» - 4

Введение

Всем доброго времени суток! В своей первой статье по Laravel я хочу поделиться своим опытом организации зашифрованного взаимодействия между клиентом (десктопным приложением) и сервером, работающем под управлением Laravel.

В чем суть задачи? Есть приложение, которое работает по принципу подписки: оплатил на сайте скажем месяц использования и месяц пользуешься. Как только этот срок прошел, приложение должно перестать работать. Так как по условию для работы этого приложения требуется подключение к интернету, то самым оптимальным вариантом проверять лицензионность приложения будет опрашивать сервер лицензий, который по совместительству может быть еще и сайтом, через который собственно и происходит оплата и продление периода использования приложения.

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

В этой статье я расскажу о том, как организовать зашифрованное взаимодействие между клиентом и сервером. В качестве серверной площадки будет приложение на движке Laravel 4.1 (последняя версия на момент публикации). Предполагается, что в качестве клиента будет выступать приложение, написанное на C#, но в этой статье я не буду описывать написание клиента. Вместо этого могу порекомендовать статью с CodeProject'а, в которой приводится пример использования криптографии на C#: Encrypting Communication between C# and PHP. Собственно эта статья и стала отправной точкой для моих изысканий.
Читать полностью »

На прошлой неделе компания Samsung Electronics объявила о запуске в продажу линейки новых твердотельных накопителей 840 EVO mSATA, в числе которых оказался и первый в мире терабайтный SSD-диск mSATA.

Коротко о новом: Samsung выпустила 840 EVO — первый в мире SSD накопитель mSATA ёмкостью 1 ТБ
Читать полностью »

Аппаратная поддержка алгоритма AES современными процессорами
Компанией Intel в 2008 г. были предложены новые команды для x86 архитектуры, которые добавили поддержку на аппаратном уровне симметричного алгоритма шифрование AES(Advanced Encryption Standard). На данный момент AES — один из самых популярных алгоритмов блочного шифрования. Поэтому аппаратная реализация должна привести к повышению производительности программ использующих этот алгоритм шифрования(OpenSSL, The Bat, TrueCrypt ...). Новое расширение команд получило название AES-NI. Оно содержит в себе следующие инструкции:

  • AESENC — Выполнить один раунд шифрования AES,
  • AESENCLAST- Выполнить последний раунд шифрования AES,
  • AESDEC — Выполнить один раунд расшифрования AES,
  • AESDECLAST — Выполнить последний раунд расшифрования AES,
  • AESKEYGENASSIST — Поспособствовать в генерации раундового ключа AES,
  • AESIMC — Обратный Mix Columns.

Так как про сам алгоритм шифрования AES было уже было сказано многое, то в этом посте рассмотрим, как можно воспользоваться этими инструкциями.

Читать полностью »

Осторожно: данный пост может вызывать непродолжительное обострение паранойи

Привет! Не верите ли вы в популярные продукты для защищённой переписки так, как не верю в них я? Например, в браузерные крипточаты с шифрованием на стороне клиента, или в p2p-криптомессенжеры?

В данном посте речь пойдет об организации защищённого общения между двумя собеседниками. Он адресован таким же недоверчивым людям как я, поэтому в нём не будет ни кода, написанного мной, ни изобретённых на коленке протоколов и алгоритмов. Будет использоваться только библиотека openssl и набор программ openssh.

image

Читать полностью »

Вы когда-нибудь интересовались механизмом работы ssh-ключей? Или тем, насколько безопасно они хранятся?

Я использую ssh каждый день много раз — когда запускаю git fetch или git push, когда развертываю код или логинюсь на сервере. Не так давно я осознал, что для меня ssh стал магией, которой я привык пользоваться без понимация принципов ее работы. Мне это не сильно понравилось — я люблю разбираться в инструментах, которые использую. Поэтому я провел небольшое исследование и делюсь с вами результатами.

По ходу изложения встретится много аббревиатур. Они не помогут понять идеи, но будут полезны в том случае, если вы решите погуглить подробности.

Итак, если вам доводилось прибегать к аутентификации по ключу, то у вас, скорее всего, есть файл ~/.ssh/id_rsa или ~/.ssh/id_dsa в домашнем каталоге. Это закрытый (он же приватный) RSA/DSA ключ, а ~/.ssh/id_rsa.pub или ~/.ssh/id_dsa.pub — открытый (он же публичный) ключ. На сервере, на котором вы хотите залогиниться, должна быть копия открытого ключа в ~/.ssh/authorized_keys. Когда вы пытаетесь залогиниться, ssh-клиент подтвержает, что у вас есть закрытый ключ, используя цифровую подпись; сервер проверяет, что подпись действительна и в ~/.ssh/authorized_keys есть открытый ключ, и вы получаете доступ.

Что же хранится внутри закрытого ключа?

Читать полностью »

IM+ Paranoia Mode On

Приветствую тебя, читатель!

Последнее обновление мультипротокольного мобильного клиента IM+ принесло с собой поддержку протокола шифрования OTR (Off-the-Record). Примечательно что функция шифрования доступна не зависимо от того каким IM-протоколом вы пользуетесь при общении (OSCAR, Jabber, Gtalk, MSN, YIM или IRC).

Основные свойства этого протокола:

  • шифрование сообщений — никто иной не сможет прочитать сообщения;
  • аутентификация собеседников — уверенность в том, кто является собеседником;
  • если потеряны секретные ключи, прошлая переписка не будет скомпрометирована;

Читать полностью »

Сергей Скоробогатов, который недавно обнаружил бэкдор в китайском чипе FPGA, произвел успешное извлечение ключа AES, который отмечен как «высокозащищенный» и «практически неломаемый», на FPGA военного уровня Actel/Microsemi ProASIC3 за 0.01 секунду.
Использовался способ анализа сторонних каналов, который назвается Pipeline Emission Analysis (PEA).
Это не новый способ сам по себе, а значительно улучшенный метод волнового анализа.
Данный способ, как подсказывает Ocelot, используется для атаки на реализацию AES на FPGA, используя наводки и помехи.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js