19 мон ГЮІ 2015. 1. 9 Вимоги та їх реалізація при побудування засобів криптографічного захисту інформації
![]()
|
2.2.21 СамотестуванняЗагальні вимоги до самотестування. Попередні та умовні самотестування криптографічного модуля надають оператору гарантії, що не виникнуть збої, які будуть перешкоджати правильній роботі модуля[10]. Всі самотестування повинні виконуватися, і модуль повинен визначати проходження або провал тестування без зовнішнього керування, наданих зовні вхідних текстових векторів, очікуваних на виході результатів, або втручання оператора, і незалежно від того, чи працює модуль в затвердженому або незатвердженому режимі. Попереднє самотестування не повинне виконуватись і проходити успішно до того, як модуль виведе які-небудь дані через інтерфейс виведення даних. Умовні самотестування повинні виконуватись, коли викликається застосовна функція безпеки або процес (тобто функція безпеки, для якої необхідне самотестування). Всі самотестування, визначені в основних алгоритмічних стандартах, повинні застосовуватися криптографічним модулем. Всі самотестування, визначені додатково або замість самотестувань, зазначених в основних алгоритмічних стандартах Додатки В - Д), повинні бути реалізовані як визначено в додатках В - Д для кожної затвердженої функції безпеки, методу встановлення SSP і механізму автентифікації. Криптографічний модуль може виконувати інші попередні або умовні тестування критичних функцій на додаток до тестувань, зазначених у цьому стандарті. Якщо криптографічний модуль провалює самотестування, модуль повинен увійти в стан помилки і вивести індикатор помилки. Криптографічний модуль не повинен виконувати ніякі криптографічні операції і виводити інформацію керування і дані через інтерфейси виведення керування і даних, перебуваючи у стані помилки. Криптографічний модуль не повинен використовувати ніяку функціональність, яка спирається на функції або алгоритми, що не пройшли самотестування, поки відповідні самотестування не будуть повторені і успішно пройдені. Якщо модуль не виводить статус помилки при провалі самотестування, оператор модуля повинен бути в змозі визначити, чи увійшов модуль в стан помилки неявно через однозначні процедури, описані в політиці безпеки (додаток Б стандарту). На Рівнях безпеки 3 і 4, модуль повинен вести журнал помилок, доступний уповноваженому оператору модуля. Журнал помилок повинен надавати інформацію, як мінімум, про останні помилкові події (тобто, які самотестування провалилися). Повинні виконуватися вимоги до документації. 2.2.22 Попередні самотестуванняЗагальні вимоги до попереднього самотестування. Попередні тестування повинні виконуватись і успішно проходитися криптографічним модулем в період між включенням криптографічного модуля або ініціалізацією (після вимкнення, скидання, перезавантаження, холодного пуску, відключення живлення і т.д.) і переходом модуля в робочий стан [10]. Криптографічний модуль повинен виконати наступні попередні тестування, якщо це застосовно: попереднє тестування цілісності програмного / програмно-апаратного забезпечення; попереднє тестування обходу і попереднє тестування критичних функцій. Попереднє тестування цілісності програмного / програмно-апаратного забезпечення. Всі програмні і програмно-апаратні компоненти в межах криптографічної границі повинні перевірятися за допомогою затвердженого методу контролю цілісності, що задовольняє вимоги. Якщо перевірка провалена, попереднє тестування цілісності програмного / програмно-апаратного забезпечення теж повинне бути провалене. Попереднє тестування цілісності програмного / програмно-апаратного забезпечення не є обов'язковим для будь-якого програмного або програмно-апаратного забезпечення, що не підпадає під вимоги безпеки даного стандарту, або для будь-якого виконуваного коду, що зберігається в неперезаписуваній пам'яті. Якщо апаратний модуль не містить ні програмного, ні програмно-апаратного забезпечення, модуль повинен, як мінімум, реалізувати одне самотестування криптографічного алгоритму.Криптографічний алгоритм, який використовується для виконання затвердженого методу контролю цілісності при попередньому тестуванні цілісності програмного / програмно-апаратного забезпечення, повинен спочатку пройти самотестування криптографічного алгоритму. Попереднє тестування обходу. Якщо криптографічний модуль реалізує можливість обходу, то модуль повинен гарантувати правильність роботи логіки, що керує активацією можливості обходу шляхом виконання цієї логіки. Модуль також повинен перевіряти шлях даних: шляхом переключення вимикача обходу таким чином, щоб криптографічна обробка забезпечувалася, і перевірити, що дані, передані через механізм обходу, пройшли криптографічну обробку і шляхом переключення перемикача обходу таким чином, щоб криптографічна обробка не виконувалася і перевіряти, що дані, передані через механізм обходу не оброблені криптографічно. Попереднє тестування критичних функцій. Можуть бути й інші функції безпеки, критичні для безпечної роботи криптографічних модулів, які повинні бути протестовані в ході попереднього тестування. Документація повинна визначати критичні функції, які підлягають попередньому тестуванню. |