В настоящей статье описан алгоритм настройки SSH-клиента Putty для ОС Windows для работы с JaCarta PKI.
Читать полностью »
Рубрика «системное программирование» - 48
Аутентификация в OpenSSH Putty по JaCarta PKI
2017-05-03 в 8:07, admin, рубрики: JaCarta, linux, OpenSSH Putty, ssh, USB-токен, аутентификация, Блог компании Аладдин Р.Д., информационная безопасность, криптография, системное программирование, смарт-карта, шифрование, метки: JaCarta, OpenSSH Putty, USB-токенКак удалённо отлаживать через WinDbg не включая отладочный режим Windows
2017-05-02 в 5:37, admin, рубрики: qemu, windbg, информационная безопасность, отладка, разработка под windows, реверс-инжиниринг, системное программирование
Иногда при анализе какой-нибудь платной программы малвари случается так, что она не хочет нормально работать, если в памяти есть отладчик или включён отладочный режим Windows.
В таких ситуациях помогает использование виртуальной машины с подключённым к ней отладчиком (например, GDB или IDA). Это если программа не пытается «сломаться» и в виртуальной машине тоже.
Читать полностью »
Выпуск Rust 1.17
2017-05-02 в 5:08, admin, рубрики: cargo, open source, Rust, компилятор, Компиляторы, Программирование, системное программированиеКоманда Rust рада представить выпуск Rust 1.17.0. Rust — это системный язык
программирования, нацеленный на безопасность, скорость и параллельное выполнение кода.
Если у вас установлена предыдущая версия Rust, то для обновления достаточно выполнить:
$ rustup update stable
Если у вас ещё не установлен Rust, то вы можете установить rustup c
соответствующей страницы нашего веб-сайта и ознакомиться с подробным примечанием
к выпуску 1.17.0 на GitHub.
Что вошло в стабильную версию 1.17.0
Выпуск Rust 1.17.0 в основном вносит небольшие улучшения, преимущественно касающиеся удобства использования.
Например, время жизни 'static теперь автоматически подразумевается для констант или статических переменных. При создании константы или статической переменной:
Исключения в Windows x64. Как это работает. Часть 4
2017-04-19 в 12:32, admin, рубрики: C, c++, exceptions, github, open source, try/except, UEFI, windows, Блог компании Аладдин Р.Д., исключения, системное программированиеОпираясь на материал, описанный в первой, второй и третьей частях данной статьи, мы продолжим обсуждение темы обработки исключений в Windows x64.
Описываемый материал требует знания базовых понятий, таких, как пролог, эпилог, кадр функции и понимания базовых процессов, таких, как действия пролога и эпилога, передача параметров функции и возврат результата функции. Если читатель не знаком с вышеперечисленным, то перед прочтением рекомендуется ознакомиться с материалом из первой части данной статьи. Если читатель не знаком со структурами PE образа, которые задействуются в процессе обработки исключения, тогда перед прочтением рекомендуется ознакомиться с материалом из второй части данной статьи. Также, если читатель не знаком с процессом поиска и вызова обработчиков исключений, рекомендуется ознакомиться с третьей частью данной статьи.
Читать полностью »
Начнем с математики. Векторизация вычислений в реализации технологии RAID-6
2017-04-19 в 9:15, admin, рубрики: raid, raid6, Алгоритмы, Блог компании RAIDIX, высокая производительность, конечные поля, контрольная сумма, математика, поля галуа, системное программирование, системы хранения данных, СХД, хранение данныхМногие помнят публикацию о «Рэйдикс» на Хабре «Как разработчики сидели в Петербурге и тихо ели грибы», в которой партнеры кратко изложили историю появления нашего продукта. Поэтому в первой статье своего Хаброблога мы бы хотели погрузиться в математические основы технологий RAIDIX.
(Не) любителям protothreads посвящается: Высокоуровневые функции для работы с 1-Wire
2017-04-12 в 12:40, admin, рубрики: 1wire, C, dma. isr, DS18B20, interrupt, irq, kernel, maxim, Realtime, scada, stm32, stm32l, stm32l-discovery, stm8, stm8l, stm8l-discovery, task, легковесные потоки, многозадачность, программирование микроконтроллеров, Разработка для интернета вещей, системное программированиеПодразумевается, что мы будем писать прошивку под «голое железо». В противном случае применение protothreads смысла не имеет, т.к. мультизадачность должна обеспечиваться средствами ОС. Подразумевается также, что нам необходимо реализовать несколько более-менее сложных алгоритмов, связанных с операциями ввода-вывода. Ну и, как всегда в микроконтроллерах, очевидные требования по экономии RAM и энергопотребления.
Читать полностью »
Настоящий Unix — не есть приемлемый Unix
2017-04-11 в 8:32, admin, рубрики: ls, UNIX, командная строка, Оболочки, операционные системы, системное администрирование, системное программирование, философия Unix
Командная строка Unix полна сюрпризов. Например, вы знали, что инструмент ls, который чаще всего используется для получения списка файлов в текущем каталоге, в версии OS X распознаёт не менее 38 разных флагов?
Я не знал, так что затвитил этот факт. И получил парочку ответов, один из которых заставил меня задуматься: действительно ли саму Unix нужно винить в этом?
Насколько я знаю, ни Linux, ни OS X не были спроектированы в строгом соответствии с философией Unix. Будет лицемерием основывать критику “Unix” только на этих производных от Unix, которые есть у нас сегодня.
Но я всё-таки попробую показать, как много проблем с интерфейсами командной строки в современных наследниках Unix восходят к корням самой Unix. В частности, я попытаюсь объяснить свой скепсис относительно идеи, что окружение командной строки Unix могло когда-либо поддерживать экосистему программ, каждая из которых хорошо выполняет одну функцию.
Но я немного опережаю события. Прежде чем я начну говорить об этом, давайте более пристально посмотрим на команду ls и попробуем выяснить, что конкретно она делает не так.
Читать полностью »
Как мы портировали программно-аппаратное решение из SPARC Solaris в AMD64 Linux и виртуализировали все это
2017-03-30 в 16:58, admin, рубрики: boost, c++, c++11, linux, Solaris, виртуализация, Программирование, Разработка под Linux, системное программированиеЭта статья для тех, кто все еще сильно любит древние Unix, но уже понимает, что срочно нужно мигрировать на Linux...

Началась эта история с того, что наш уважаемый заказчик решил уменьшить риски эксплуатации оборудования 10-ти летнего возраста, сэкономить на лицензиях и перейти с Unix на Linux, а заодно и виртуализировать это программно-аппаратное решение. Не то, чтобы заказчик не любил Solaris и Unix, просто сама возможность виртуализировать серверное приложение, жестко привязанное к специфической на сегодняшний день архитектуре SPARC и «седеющей» операционной системе Solaris, выглядела для заказчика очень привлекательной. Отдельным пунктом стоял вопрос замены специализированной карты с PCI интерфейсом на доступное «виртуализированное» решение. Мы решили взяться за такую интересную задачу.
Читать полностью »
MIPSfpga и UART
2017-03-29 в 20:18, admin, рубрики: C, fpga, mips, MIPS microAptiv UP, MIPSfpga, SoC, Verilog, Анализ и проектирование систем, программирование микроконтроллеров, системное программированиеПрошло чуть больше месяца с тех пор, как я портировал open source модуль UART16550 на шину AHB-Lite. Писать об этом на тот момент было несколько не логично, так как еще не была опубликована статья про прерывания MIPSfpga.
Если вы опытный разработчик, то для вас только одна полезная новость: UART16550 добавлен в состав системы MIPSfpga-plus, дальше можете не читать. А тем, кого интересует разобранный пример использования этого модуля — добро пожаловать под кат.

MIPSfpga и прерывания
2017-03-27 в 11:59, admin, рубрики: C, fpga, mips, mips assembler, MIPS microAptiv UP, MIPSfpga, SoC, Verilog, Анализ и проектирование систем, программирование микроконтроллеров, системное программированиеВ статье приводится несколько примеров настройки и использования прерываний MIPS32 Release 2, включая подробное описание задаваемой при этом конфигурации, описывается работа с контроллером внешних прерываний.
Весь описываемый код опубликован на github в составе проекта mipsfpga-plus [L3].


