ся виконання алгоритму протягом 4х288=1152 разів, що гарантує залежність кожного біта початкового стану від кожного біта ключа і кожного біта Ініціалізується вектора.
Після проходження стадії ініціалізації кожен такт генерується новий член ключового потоку Z, який проходить процедуру XOR з наступним членом тексту. Процедура розшифровки відбувається в зворотному порядку - кожен член шифротекста проходить процедуру XOR з кожним членом ключового потоку Z.
Стандартна апаратна реалізація алгоритму вимагає наявності 3488 логічних елементів і виробляє 1 біт ключового потоку за 1 такт. Але, так як кожен новий стан біта не змінюється принаймні протягом 64 раундів, то ще 64 стани можуть бути згенеровані паралельно при збільшенні кількості логічних елементів до 5504. Також можливі різні варіації продуктивності залежно від кількості використаних елементів.
Програмна інтерпретація даного алгоритму також досить ефективна. Реалізація Trivium мовою C на процесорі AthlonXP 1600 + дозволяє отримати швидкість шифрування більше 2,4 Мбіт / с.
На відміну від ранніх потокових шифрів, як наприклад RC4, алгоритм Trivium, крім закритого ключа (K) також має не започатковано вектор (IV), який є відкритим ключем. Застосування IV дозволяє проводити безліч незалежних сеансів шифровки / розшифровки використовуючи всього лише 1 ключ і кілька ініціюючих векторів (по одному для кожного сеансу).
В даний момент не відомо жодних методів атаки на даний алгоритм, які були б ефективніше послідовного перебору. Складність проведення даної атаки залежить від довжини повідомлення і складає близько 2120.
Існують дослідження методів атак (наприклад, кубічна атака), які близькі по ефективності до перебору. Крім того, існує метод атаки, що дозволяє відновити K з IV і ключового потоку. Складність даної атаки дорівнює 2135 і незначно зменшується при збільшенні кількості ініціюючих векторів, що використовувалися з одним ключем. Можливі також атаки з дослідженням псевдослучайной послідовності ключового потоку з метою знаходження закономірностей і передбачення подальших біт потоку, але дані атаки вимагають вирішення складних нелінійних рівнянь. Найменша отримана складність такої атаки становить 2164.
2.2 Застосування генераторів ПСП
Як видно з описаного вище, при синтезі і реалізації криптографічних модулів вельми важливу роль грає вироблення і розподіл криптографічно значимої інформації (ключів, сінхропосилок і т. п.). Важливу і криптографічно значиму роль грає вироблення випадкового числа, використовуваного для «індивідуалізації» процесу підписи кожного повідомлення.
Для вирішення завдань створення (виробітку) ключової інформації застосовуються різного роду генератори псевдовипадкових чисел, які діляться на два великі класи - програмні і апаратні. В апаратних генераторах джерелом випадкового процесу є шум в електронних приладах. Очевидно, застосування апаратних генераторів вимагає наявності спеціального обладнання. Зазвичай для генерації послідовності псевдовипадкових чисел застосовують комп'ютерні програми, які насправді видають детерміновані числові послідовності, за своїми властивостями схожі на випадкові.
Програмний генератор випадкових чисел призначений для вироблення криптографічно значимої інформа...