Позитивні моменти використання стандартів ISO та системи менеджменту якості доведено досвідом багатьох компаній, у тому числі і в сфері інформаційних технологій. Про це вже багато написано, тому пропагувати ISO та систему менеджменту якості я не беруся. Завдання моєї статті — показати, що з допомогою двох не дуже складних схем можна зрозуміти сенс процесу впровадження системи менеджменту якості і отримати конкретні, чіткі рекомендації, які документи для цього потрібні. Таких схем, які наведені в статті, ви не знайдете ні в одному керівництві. Саме тому я вирішив поділитися ними з читачами Хабра.


Джерело

Читати далі →

Цілі, завдання і принципи автоматизації

Працюючи в компанії, яка займається системною інтеграцією, мені доводилося багато разів читати і доповнювати документи типу ТКП, ТЗ за Гостом, Плани приймання та інше. Проекти по автоматизації підприємств переслідували схожі цілі і мали приблизно однаковий формат. Одні і ті ж фрази повторювалися з документа в документ.

Я вирішила зібрати найпоширеніші фрази, потрапляли в розділ «мета і завдання». І додати принципи, яких слід дотримуватися при формуванні рішень.

Список не універсальний. Буду рада, якщо комусь це допоможе при написанні документів.

З іншого боку, деякі принципи, зібрані у цьому списку — це моє розуміння того, до чого повинні прагнути як і великі корпорації, так і окремі команди по розробці продуктів. Сходинки на шляху до інформатизації суспільства.

Я закликаю дотримуватися цих принципів у своїй роботі, щоб триматися якоїсь планки, нижче якої — просто вже не сучасно бути.


Читати далі →

Реалізація блочного шифру «Коник» з режимом CFB на С++

Сьогодні мова піде про новий алгоритм блочного шифрування «Коник» з стандарту ГОСТ Р 34.12 2015. Останнім часом виходить безліч публікацій, присвячених цим стандартом. У них з теоретичної точки зору описуються наведений алгоритм, вивчаються особливості готельних перетворень, а так само пропонуються способи оптимізації, шляхом включення вставок коду на мові асемблера.

У даній статті я пропоную читачеві ознайомитися з реалізацією даного блочного шифру на мові С++. Варто зазначити, що при написанні даної програми не переслідувалася мета досягти найбільшої ефективності, а основним завданням було показати, як працює алгоритм. Ознайомитися з описом алгоритму можна в офіційній документації.

Структура програми

Програма складається з трьох частин
  • набір допоміжних функцій і класів — mycrypto.cpp mycrypto.hpp
  • блочний шифр «Коник» — Kuznyechik.cpp Kuznyechik.hpp
  • режим шифрування Cipher Feed Back — modes.hpp

Читати далі →

Покрокова робота ГОСТ Р 34.12-2015 в режимі ECB

Коник у режимі ECB

Не так давно з'явилася стаття присвячена новому стандарту блочного шифрування — ГОСТ Р 34.12-2015. У якій досить докладно описані всі нововведення цього алгоритму. У цій статті я спробую пояснити покрокове дія алгоритму в режимі простої заміни, щоб ще наочніше користувачі змогли оцінити переваги вітчизняного стандарту. В процесі розгортки раундових ключів і в режимі зашифрування використовуються одні і ті ж перетворення, тому виносити окремо це питання не станемо. Для більшого розуміння кожне перетворення буде пояснювати частина коду реалізації стандарту на мові С++

Отже, приступимо.

Читати далі →

Схема Блома

imageУ червні 2015 року в Росії був прийнятий стандарт блочного шифрування — ГОСТ Р 34.12-2015. Мені стало цікаво об'єднати цей ГОСТ (точніше, поліном, який використовується у ньому) і схему Блома.

Озброївшись джерела і самим ГОСТом, я приступив до справи. Але для початку трохи теорії.

Отже, Схема Блома —схема попереднього розподілу ключів в мережі зв'язку. Принцип її дії такий:

Читати далі →

Оповідь про те, як ми вітчизняного виробника підтримували



Якщо довго мучитися, що-небудь вийде!
© народна мудрість

Настав час захоплюючих історій, %username%!

Відразу обмовлюся, що описана нижче історії ніколи не траплялося. Всі збіги випадкові, всі персонажі вигадані.

В силу своєї професійної діяльності, нам доводиться працювати з різними операторами зв'язку. Практично всі вони — федерального рівня, або їх «дочки» в країнах СНД. Однією з таких компаній є… Нехай він буде Z.
Історія взаємовідносин з ним давня і колеги, напевно, розкажуть багато цікавого. Але це як-небудь потім, а поки розповім свою історію я.
Вимоги до безпеки у цій компанії серйозні — положення зобов'язує (А ще 152-ФЗ «ПРО захист персональних даних»). Причому якщо раніше вимоги були драконівські (в дусі «Місія нездійсненна»: ізольоване приміщення, сканер сітківки, автоматники...), то зараз звелися до просто суворим: індивідуальні учеткі і зашифровані канали зв'язку між нами та замовником. Шифрування — ГОСТовское, ніякого вам буржуйського закордонного IPSec. Ринок таких рішень малий, постачальників — раз-два і скінчилися. Реалізація… ну не Checkpoint і не Cisco, але терпимо.

Але це була приказка, а за казкою прошу під кат!

Читати далі →

Конструюємо локальний криптографічний TLS-проксі HTTP c API електронного підпису



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

Основним засобом взаємодії користувача та інформаційної системи повільно, але вірно стає браузер.
Якщо уважно розглянути питання інтеграції популярних браузерів і російських криптосредств, то вимальовуються наступні проблеми:
  • Браузери використовують абсолютно різні криптографічні бібліотеки (MS Crypto API, NSS, openssl). Універсального криптосредства, яка «додає» Гости у всі ці бібліотеки немає
  • Механізми вбудовування багатьох криптосредств в операційну систему і в браузер «зав'язані» на версію ОС. З виходом оновлення ОС працездатність криптосредства може скінчитися
  • Google Chrome відмовляється від підтримки плагінів, які працюють через NPAPI. А багато російські вендори криптосредств розробили плагіни, використовуючи саме цей механізм
  • На мобільних платформах браузери не підтримують плагіни


В даній ситуації найбільш універсальним рішенням представляється винести реалізацію TLS-ГОСТ і функцій ЕЦП в окреме мережне додаток, яке приймає запити від браузера на localhost дозволяє «тунелювати» з'єднання між браузером і віддаленими web-серверами (real proxy), а також надає HTTP API для функціоналу ЕЦП, роботи з сертифікатами, токенами і т. п.
Не скажу, що ідея є новою, але давайте спробуємо зробити деякий конструктор для її реалізації.

Деталями конструктора будуть:


Любителі модульних архітектурних экпериментальных рішень запрошуються під кат.


Читати далі →

ГОСТ 34.11-2012 Стрибог на flat assembler (x86)

  image
 
У продовження теми OS Systemicus (тому там використовується цей алгоритм) привожу повний код реалізації ГОСТ 34.11-2012 на асемблері. Ця ж «бібліотека» використовується і в даній програмі — http://omegicus.com/gost_34.11-2012_stribog
 
 
Читати далі →

Досвід застосування ЕСПД

Введення

Основне завдання цього тексту — розповісти, що таке Єдина система програмної документації (ЕСПД) і як ці стандарти застосовувати на практиці. Почну з розповіді про те, які бувають стандарти, і закінчу досвідом застосування кожного з ЕСПДшних стандартів окремо.
 
Читати далі →