IBM створила для АНБ США секретний комп’ютер Harvest для криптоаналізу
IBM створила для АНБ США комп’ютер Harvest, який із 1962 до 1976 року застосовували для криптоаналізу та обробки перехоплених даних.
IBM у 1962 році запустила для Агентства національної безпеки США спеціалізований комп’ютер Harvest, призначений для обробки перехоплених повідомлень, пошуку шифрів і криптоаналізу. Система працювала до 27 лютого 1976 року, а окремі її завдання, за даними IEEE Spectrum, виконувала до 200 разів швидше за інші комп’ютери свого часу.
Harvest, офіційно IBM 7950, працював у штаб-квартирі АНБ у Форт-Міді, штат Меріленд. Він поєднував універсальний транзисторний мейнфрейм IBM 7030 Stretch зі спеціальним потоковим співпроцесором. Stretch відповідав за загальні обчислення, введення-виведення даних та керування сховищем, тоді як Harvest аналізував алфавітно-цифрові дані.
Потокова обробка даних
Співпроцесор отримував із пам’яті два потоки даних, позначені P і Q, паралельно виконував над ними операції та записував результат як потік R. Ширина кожного потоку могла становити від одного до восьми бітів. Система мала адресовану на рівні бітів пам’ять, що давало змогу працювати з фрагментами даних довільної довжини, а не лише з цілими байтами.
Архітектура Harvest використовувала конвеєрну обробку: поки одна пара байтів порівнювалася, наступна вже завантажувалася з пам’яті. Уся система могла обробляти один байт за 0,3 мікросекунди та мала приблизно 800 кілобайтів адресованої пам’яті. За одним із задокументованих прикладів, комп’ютер менш ніж за чотири години перевірив 3,5 млрд символів тексту на наявність 7 тисяч цільових термінів.
У 1972 році аналітик АНБ Роберт Луні згадував завдання з кодовою назвою Moretown: система приблизно за десять годин опрацювала 11 млн повідомлень, перехоплених упродовж 16 років, звіряючи їх із переліком близько 8 тисяч термінів.
Роботизоване сховище і мова Alpha
Для безперервного постачання даних IBM розробила систему магнітних стрічок Tractor, або IBM 7955. Вона мала роботизований механізм, який самостійно діставав касети зі стелажів і подавав їх до накопичувачів. Кожна касета важила 6–7 кілограмів, містила близько 120 мегабайтів даних на стрічці завдовжки 550 метрів, а один модуль міг зберігати до 160 касет.
На момент запуску Harvest мав три автоматизовані модулі Tractor із сукупним доступним обсягом зберігання 44 гігабайти. Стрічки рухалися зі швидкістю 6 метрів за секунду, а перехід накопичувача до читання наступної вже підготовленої касети займав близько 18 секунд.
IBM і АНБ також створили для системи мову програмування Alpha — Advanced Language for Programming Harvest. Вона дозволяла криптоаналітикам описувати алфавіти та шаблони даних для обробки. Систему остаточно вимкнули після зношення спеціальної механічної деталі в бібліотеці Tractor: її виробник на той час уже припинив роботу. Згодом Harvest замінили суперкомп’ютером Cray-1.