Сравнительный обзор алгоритмов PGP
Тема, которую я в ответ на полученный в письме вопрос изначально собирался осветить в форуме, оказалась несколько шире, чем я предполагал. Итог печален: вместо темы в форуме получилась статья[link1] в Литературе. Читайте, в общем. Если возникнут вопросы — их сюда.
Ссылки
[link1] http://www.pgpru.com/articles/openpgp/pgp_compare.shtml
[link2] http://www.pgpru.com/articles/crypto/limits.shtml
[link3] http://www.pgpru.com/articles/
[link4] http://www.cs.berkeley.edu/~daw/teaching/cs276-s04/03b.ps
[link5] http://www.cs.berkeley.edu/~daw/teaching/cs276-s04/04a.ps
[link6] http://www.cs.berkeley.edu/~daw/teaching/cs276-s04/04b.ps
Стоит ли это понимать, как конец PGP?
http://www.compulenta.ru/2003/1/28/37101/
Израильские ученые придумали чип для взлома 1024-битного шифра RSA
28 января 2003 года, 12:11
Ученые, работающие в отделе информатики и прикладной математики Вайсмановского научного института (Израиль) разработали проект вычислительного устройства, способного с высокой скоростью раскладывать большие числа на простые множители. Как известно, именно принцип вычислительной трудности факторизации (разложения на множители) больших чисел положен в основу многих современных криптографических алгоритмов.
До сих пор наиболее эффективным алгоритмом факторизации считался алгоритм NFS (number field sieve – сито числового поля). С его помощью в 1999 году был взломан алгоритм RSA c ключом длиной 512 бит. Процесс взлома занял много месяцев и потребовал огромных вычислительных ресурсов. Стойкости 1024-разрядного шифра RSA, по мнению большинства экспертов достаточно для надежной защиты информации в течение ближайших 15-20 лет.
Однако Ади Шамир (один из соавторов алгоритма RSA) и Эран Тромер полагают, что это не так. Двое исследователей разработали новое вычислительное устройство, способное факторизовать числа в несколько раз быстрее всех предыдущих разработок такого рода. В результате, взлом стойких шифров значительно облегчается.
До последнего времени наиболее совершенным устройством для быстрого разложения чисел на множители была оптоэлектронная система TWINKLE. Она состояла из подложки, разбитой на множество вычислительных ячеек, каждая из которых работала с собственной числовой последовательностью. TWINKLE последовательно перебирает различные области числового сита в соответствии с сигналами от тактового генератора. Поскольку в TWINKLE применяются оптические компоненты, полупроводниковой основой устройства служит дорогой арсенид галлия.
Устройство TWIRL, разработанное Шамиром и Тромером, использует близкий к TWINKLE подход к реализации алгоритма разложения чисел на множители. Однако новое устройство может параллельно рассматривать тысячи участков числового сита, а схема устройства не содержит оптических элементов. По сути, TWIRL представляет собой специализированную сверхбольшую интегральную схему (СБИС), работающую на частоте 1 ГГц, выполненную по 0,13-микронной технологии.
Пока исследователи разработали лишь схему TWIRL и не реализовали ее на практике, хотя предварительная оценка показывает, что с помощью TWIRL взлом шифров с ключами длиннее 512 бит становится возможным. Например, для вскрытия 1024-битного шифра понадобится специальный компьютер на основе TWIRL стоимостью около 10 млн. долл. США. Для взлома шифра такой машине понадобится около года. 512-битный шифр RSA TWIRL-компьютер стоимостью в 10000 долларов США вскроет менее чем за десять минут.
По итогам своих исследований израильские ученые готовятся опубликовать статью. С ее предварительным вариантом в формате PDF можно ознакомиться здесь (размер файла 324 кб). http://psifertex.com/download/twirl.pdf
B, нет, так считать не стоит.
На протяжении последних пяти лет криптографические эксперты не рекомендовали использовать ключи RSA с модулем короче 2048 битов. Не забывайте, что хотя в настоящее время увеличение длины ключа RSA не приводит к экспоненциальному росту его стойкости (последние алгоритмы факторизации уже субэкспоненциальны), 2048 бит пока недосягаемы и останутся таковыми по самым пессимистичным прогноназам в ближайшие пять-семь лет.
Более того, PGP кроме RSA поддерживает алгоритм шифрования Эльгамаля (названный в PGP Diffie-Hellman'ом, что формально неверно) и алгоритм подписания DSA, оба основанные на математической проблеме вычисления дискретного логарифма в конечном поле. Несмотря на то, что проблемы факторизации и дискретного логарифмирования во многом близки, решение последней является более ресурсоёмкой задачей и пока недоступно с той же эффективностью, что разложение на множители.
В FAQ ( http://www.pgpru.com/faq ) в разделе Криптография я приводил некоторые доводы "за" и "против" ключей RSA и DH/DSS в PGP.
Кроме того, не исключено, что будущие версии PGP привнесут поддержку алгоритмов, основанных на эллиптических кривых (место под такой алгоритм, например, зарезервировано в самом стандарте OpenPGP) — этот подход хотя и является относительно молодым и не обладает той же научной базой, что Эльгамаль и RSA, видится весьма многообещающим: во-первых, он многократно быстрее последних, во-вторых, требует очень компактных ключей для обеспечения эквивалентной RSA и Эльгамалю стойкости.
Если последние алгоритмы факторизации уже субэкспоненциальны, то почему почему такая разница – около года и 10 минут на взлом ключей 1024 и соответственно 512 бит?
Потому что субэкспоненциальны, но не линейны. Соотношение между 2^512 и 2^1024 — не 1:2, а 1:2^512.
Да в общем понятно, что каждый бит увеличивает пространство ключей вдвое. Вопрос несколько иной был. Да ладно, черт с ним, с вопросом.
Еще один недостаток DSS – ему нужно для каждой подписи генерировать уникальное случайное сеансовое число. И под одним и тем же документом подпись будет каждый раз разная.
Если это число можно как-то предугадать, то и секретный ключ можно будет раскрыть. А еще с помощью выбора этого числа можно создавать "потайные каналы". Поэтому DSS многим поначалу не нравился по сравнению с более простым и прозрачным RSA (для подписи).
Да, и возможность скрытого канала в DSS стала серьёзным вопросом, применительно к PGP 7.x, исходный код которых никогда не был опубликован. При том, что неоднократно возникали подозрения в связах NAI и АНБ, многие пользователи отказались переходить на седьмую версию именно по этой причине.
Может про особенности DSS/DSA добавить инфу в FAQ?
Хотя бы как примечание мелким шрифтом.
Что-то мне казалось, я там об этом писал... :roll: Добавлю, конечно.
Почти взломан RSA – А прочие алгоритмы? Теоретически можно подобрать под любой из них систему, м-да-а-а...
URL: http://lenta.ru/news/2005/03/16/quantum/
В Австрии осуществили "необратимые" квантовые вычисления
"Необратимые" квантовые вычисления удалось впервые осуществить австрийским ученым. Антон Цайлингер (Anton Zeilinger) и его сотрудники из венского Института экспериментальной физики использовали для этого так называемые "запутанные состояния" фотонов. Результаты эксперимента, опубликованные в журнале Nature, неизбежно повлияют на современные представления о практической разрешимости ряда важных проблем теории чисел и криптографии.
Квантовые компьютеры основаны на качественно иной логике, чем современные классические. Принципы действия последних описываются булевой алгеброй, и любому состоянию вычислительной машины отвечает некоторая последовательность битов. Единицей квантовой информации является q-бит – состояние двухуровневой квантовой системы. В вычислениях существенно используются квантовые явления – суперпозиция и "запутывание" (entanglement) состояний, так что N q-битам отвечает 2N-мерное пространство, базисные векторы которого – последовательности "q-нулей" и "q-единиц".
Если "измерить" состояние квантовой системы "до" и "после", мы получим результат вычисления, которое в математической модели описывает соответствующий физический процесс. Это соображение встречается в работах Фейнмана, а в 1980 году советский алгебраист Манин сформулировал на его основе концепцию квантовых вычислений. Постановка вопроса была непривычной для математиков: требовалось "приспособить" задачу к некоторой системе, могущей ее решить.
Задач, для которых уже придуманы квантовые алгоритмы, сравнительно немного. Среди них, однако – проблема разложения на простые множители, исключительно важная для теории чисел и криптоанализа. Многие алгоритмы шифрования, криптостойкость которых с точки зрения классических вычислений не вызывает сомнений, взламываются посредством квантового компьютера.
Попытки воплотить q-бит в конкретных физических системах предпринимались с 1980-х годов. Эффективных квантовых компьютеров на основе сверхпроводимости или ядерного магнитного резонанса так и не удалось построить
А вот "реальная" машина?
URL: http://lenta.ru/internet/2001/05/18/quantumlight/
Американские ученые из университета Рочестера (University of Rochester) создали квантово-световой компьютер, который считает в миллиарды раз быстрее современных суперкомпьютеров, сообщает CNN. Появление этого устройства может сделать ненужными суперкомпьютеры.
Вместо традиционных электронных технологий в новом устройстве используются лучи света. Для такой машины элементарными задачами становится, например, взламывание шифров путем перебора комбинаций или поиск в больших базах данных.
Разработчики, представлявшие машину на конференции в Балтиморе, штат Мэриленд, привели такой пример: если обычный суперкомпьютер, выполняющий поисковую задачу – это библиотекарь, который идет к полкам с множеством книг искать среди них одну нужную, то квантово-световой компьютер – это устройство, которое клонирует библиотекаря в большом количестве, и на поиски одновременно отправляется уже целая бригада.
Проект по созданию машины финансировался американским министерством обороны.
Сообщения о создании квантового суперкомпьютера появляются в прессе чуть ли не каждый месяц, в течении десятков лет, как сообщения о создании лекарств от рака или СПИДа. Каждый раз говорят, что СПИД (Рак, синдром Альцгеймера) почти окончательно побежден. Со временем выясняется, что в лабораторных условиях удалось замедлить рост каких-то клеток и особенного практического значения это не имеет.
А термоядерный синтез? Уже в 60-е годы вот-вот должны были сделать. Почему же человечество до сих пор сжигает нефть и уран вместо тяжелой воды?
С квантовыми компьютерами и прочими долгожданными достижениями прогресса часто бывает также. Выяснится, что это всего лишь прототип платы, способный выполнять одну примитивную операцию, не имеющий практического значения, а его реальная скорость очень низкая из-за того, что не созданы другие блоки и т.д.
Не стоит буквально воспринимать журналистские публикации. Желательно по-возможности читать первоисточники и научные доклады (если есть возможность самому разобратья в этой теме).
Заранее извиняюсь за дилетантский вопрос. Но при наличии гипотетического квантового компьютера, существуют ли математические методы защиты информации, способные противостоять производительности квантовых криптоанализаторов?
Добрый день! :)
Вот данные из книги Б. Шнайера.
Теперь можно посчитать:
Пусть гипотетический квантовый компьютер будет работать в миллиард раз быстрее (хотя какова будет его скорость мне неизвестно, я просто предположил ткнув пальцем в небо) чем система из миллиона процессоров, о которой говориться в книге, каждый из которых проверяет миллион ключей/операций в секунду. Тогда для нахождения ключа грубой силой квантовому компьютеру потребуется не много не мало – время существования вселенной. При этом мы рассматриваем алгоритм с длиной ключа "всего лишь" 128 бит. А если мы возмем ключ с длиной 256 бит?
Вот еще несколько больших чисел из книги Шнайера:
Возраст планеты 2^30 лет
Время до следующего оледенения 2^14 лет
Возраст вселенной 2^34 лет
Число атомов планеты 2^170
Число атомов вселенной 2^265
Объем вселенной 2^280 см.куб.
Еще есть сравнительные оценки построенные не на временных факторах, а на энергетических, кстати где то в этом форуме об этом уже писали. Смысл таков – если представить, что на одну операцию по проверке ключа уходит минимальная в физике единица энергии (по моему переход электрона с одной орбиты атома на другую, как раз что то из области квантовых вичислений) то для проверки всех ключей пространства 2^128 нужно будет истратить энергии столько, сколько хватит для растопления всех льдов Антарктиды. Представите, что это да компьютер должен быть и какой у этого компьютера должен быть источник питания? Роль высокопроизводительных квантовых или каких-либо других суперкомпьютеров по моему мнению важна не для прямого взлома грубой силой, а для работ криптоанализа, именно поэтому огромная роль в криптографии отводится стойкости криптосистем.
Souran, почитайте статьи "Пределы роста"[link2] и [[http://www.pgpru.com/articles/crypto/keysize.shtml "Длина ключа и его
полный перебор"]]. Там приведены некоторые методики атак, их ресурсозатраты и практическая осуществимость, исходя из длин ключей и других факторов, упомянутых Вием: энергетических, тепловых. Вообще пробегитесь по разделу Литературы[link3]. Думаю, найдёте немало полезного.
Подбору симметричных ключей квантовые компьютеры принципиально не угрожают, а вот для криптографии с открытым ключем квантовые вычисления могут быть фатальными. Возможно решение "трудных задач" в таком компьютере будет субполиномиальным, ну проще говоря использовать очень большой ассиммметричный ключ пользователям будет непрактично по скорости, а маленький (для квантовых комп-ов) можно будет быстро взломать.
А вот что написано по этому поводу в черной книге:
Мда, – еще из книги Шнайера.
Остается надеяться, что ключи 2048 бит и более все же будут достаточно надежны в течении нами обозримого промежутка времени. Но мало кто думает о том, что будет через сотню лет, или же просто боятся делать прогнозы. Я все же думаю, что будут придуманы новые ассиметричные алгоритмы, и возможно с уже доказанной стойкостью. Может быть я и заблуждаюсь, но исключительно образно я бы сравнил RSA с песочными часами – это одна система, в которой песочек медленно сыплется из одной колбочки в другую через то самое узкое отверстие, которое можно гипотетически сравнить с медленным процессом разложения чисел на множители, больше длина ключа – тоньше отверстие. А можно ли придумать единую систему без такого отверстия? Насколько я помню основательница сайта Kat писала что-то о порванной фотографии. Если фотографию порвать не пополам (археологи как известно по костям воссоздают внешность древних животных), а в удачном месте? Или что то еще, пока мысли не идут, а интересно…
Одна из лучших на мой взгляд работ, до сих пор не утратившая свой актуальности, где даны (в том числе) прогнозы стойкости RSA:
http://www.secinf.net/uplarticle/4/cryptosizes.pdf
Там же про симметричные шифры, дискретные логарифмы и эллиптические кривые. Пока прогнозы совпадают с теми графиками и таблицами, которые там есть.
Christofer Wolf и Bart Preenel исследовали ассиметричные алгоритмы типа "Multivariate quadratic public key systems", устойчивые (пока) к квантовому вскрытию.
(Проблема решения мультивариантных квадратичных уравнений в конечном поле. Исследовалась еще с конца восьмидесятых годов)
Может когда-нибудь вместо RSA и ECC будет MQ?
Но пока их стойкость малодоказанна.
В чем суть недоказанности (или даже недоказуемости может быть) долговечной стойкости асимметричных алгоритмов? В том, что существует открытый ключ, по которому можно пытаться вычислить закрытый или есть какие-либо дополнительные факторы?
Собственно, я только повторяю вышеизложенное:
Классический пример "недоказуемой" стойкости RSA:
получение закрытого ключа по открытому или дешифроввка текста должны быть так же стойки, как и разложение больших простых чисел на множители.
Но строгого математического доказательства нет: возможно появятся какие-то новые области математического знания, которые укажут путь к быстрому разложению чисел.
Еще менее вероятно изобретение способа получения закрытого ключа в обход разложения чисел. Но нет строгого доказательства и для этого.
И это характерно для всех ассиметричных систем. В их основе лежит "трудная проблема", решение которой не удавалось получить в течении сотен или тысяч лет (разложение на множители волновало умы еще древнегреческих математиков) но кто может точно доказать, что она всегда будет трудной?
Нет ни одного абсолютного доказательства!
Есть еще более фундаментальная проблема P=NP. Если смогут решить и ее то криптография в худшем случае вообще прекратит свое существование даже в области симметричных шифров.
Вот интересная статья с http://www.cryptography.ru/db/msg.html?mid=1169815
Но пока такие достижения в математике выглядят чистой фантастикой вроде "машины времени" или "путешествия в гиперпространстве".
Более вероятно, что "трудные проблемы" не смогут решить мгновенно, а будут постепенно изобретать все более быстрые численные способы их решения.
В 2006 году состоится конференция по постквантовой крипографии:
http://postquantum.cr.yp.to/
Вопрос по генерированию асимметричный ключей.
Предположим, что в симметричной системе шифрования существует множество ключей 2^128. При получении ключа используется алгоритм случайного подбора. Допустим соответствие каждого из 128 бит нулю или единице определяется подкидыванием монеты 128-ю разными людьми по выстрелу стартового пистолета. Здесь все ясно.
Теперь что касается асимметричных ключей. Из сравнительных таблиц известно, что имея длину асимметричного ключа около 2304 бит для подбора правильного ключа грубой силой с вероятностью встречи нужного ключа 50% нужно перебрать примерно 2^127 вариантов. Но для генерирования асимметричного ключа требуется не просто подкинуть монеты n-раз, а произвести вычисления. Позволяют ли методы формирования ключа получить столько разных ключей, что бы их количество действительно было около 2^128? Т.е. есть ли соответствие между количеством вариантов перебора при поиске ключа и количеством ключей, которые можно сгенерировать?
Да! Вы подметили правильный критерий генерации ассиметричных ключей.
Нужно к примеру выбрать интервал в котором встретится примерно 2^128 простых чисел (этот интервал можно предсказать с большой точностью, он небольшой, числа в нем будут иметь примерно одинаковый порядок длины в битах), среди них перебирать случайным образом числа кандидаты и проверять на простоту тестом Рабина-Миллера. А именно так и делается.
Требование перебора 2^128 (например среди простых чисел из интервала) для асимметричных алгоритмов соблюдается обязательно.
Ну есть еще кое-какие тонкости, но это уже в специальной литературе читайте.
Наконец-то я добрался до полки со Шнайером (и Фергюссоном)
Вот Вам от них хороший пример:
От себя: 2^2000 / 1386 это примерно 2^1990 или 1990 бит. Явно больше, чем 128.
Вся проблема только в скорости подбора простого числа из заданного диапазона.
Так что проблема защиты ключа от брутфорса самая легкая и была продумана с самого начала.
Ничего неверного в этом нет. Шифрование ElGamal — ничто иное, как генерирование сеансого DH-ключа и согласование секретного симметричного ключа на его базе с публичным DH-ключем корреспондента. Публичная половина сеансового DH-ключа передается вместе с сообщением. Ключ ElGamal и ключ DH — одно и тоже.
Один и тот же ключ и один и тот же алгоритм использованный в разных протоколах. В случае DH — для согласования ключа, в случае ElGamal — для шифрования.
Но называть ключ ElGamal ключем DH совершенно корректно, так как это одно и то же.
Скажем иначе, не совсем точно. Диффи-Хеллманом принято называть интерактивный протокол согласования ключа. Эльгамаль — его частный случай и, одновременно, семейство дискретно-логарифмических алгоритмов, в том числе, и для цифровой подписи.
Не думаю, что совсем уместно проводить между ними прямую параллель. Это всё равно, как сравнивать схему одноразовых блокнотов с пороговой схемой разделения секрета. Да, между ними много общего, и OTP скорее частный случай схем secret sharing на базе простого XOR, но это не одно и то же.
Все так интересно, жаль, что не очень понятно.
Скажите. Известно, что блочные симметричные шифры работают с блоками текста. К примеру блок текста с которым работает алгоритм равен 64 битам, а длина ключа равна 128 битам. Значит количество вариантов перестановок битов в блоке может быть намного меньше чем позволил бы это сделать ключ. Каким образом тогда достигается "полное" использование всех вариантов ключа?
2 Sattva:
Это формальности, просто один параметр (случайное число x) не создается в ходе сеанса, а зафиксирован в ключе в виде g^xmodP. Заменили эфемерность на постоянство. Подпись – это "шифрование наоборот", поэтому x генерирует подписывающая сторона. Формулы те же. Возведение в степень – мультипликативные группы те же. А дискретные логарифмы злоумышленнику для взлома придется считать, что в одном что в другом случае абсолютно одинаково.
Разница слишком мала, даже в профессиональной литературе "путают", а точнее уравнивают или обобщают эти определения.
2 Гость:
Если шифры бы были устроены, так как Вы предполагаете, они бы взламывались элементарно. :-)
Ключ дает не 2^128 перестановок, а значительно больше.
Ни в коем случае!
КАЖДЫЙ ключ создает уникальную псевдослучаюную таблицу перестановок размером 2^64 (pseudorandom permutation). Для уникального соответствия каждого из 2^64 возможных открытых текстов каждому 2^64 шифртексту.
<...>
Дальше было неправильно :-(
Вот еще пара замечаний:
128 битовый конкретный уникальный ключ = 128 бит.
А когда говорят "шифр имеет 128-бит ключ" подразумевают все множество ключей 2^128.
Поэтому может возникнуть путаница в некоторых предложениях, например когда приводят расчеты на один ключ или на множество ключей. И один ключ и множество, все называют ключ, key. Следите за контекстом, чтобы не запутаться.
Если бы у какого-то алгоритма использовались не все биты ключа – это сокращенное пространство ключей, обычно грубый просчет в дизайне или тайная закладка для легкого взлома шифра (совместно с другими методами).
Тогда не возникает ли в пространстве 2^128 таблиц повторяющихся таблиц?
Я несколько неправильно дал ответ выше. Исправляюсь. Вот как легко запутаться даже в таких элементарных понятиях!
Перестановка для 64-битного блочного шифра считается как факториал:
(2^64)!
Все пространство перестановок значительно больше, но ключи размером и 2^64 и 2^128 и 2^256
дают лишь ничтожную выборку значений из этого гигантского пространства. Смотрите более
подробные расчеты в специальной литературе.
Вообще это важное понятие в криптоанализе – любая атака начинается в построении различителя шифра от случайной перестановки, затем идет к восстановлению ключа, поэтому в литературе по криптоанализу эти перестановки служат отправной точкой.
Насчет собственно повторяющихся таблиц, конечно они могут с ничтожной долей вероятности совпасть и стать одинаковыми для разных ключей, тогда речь идет об эквивалентных ключах или коллизиях ключей. Это похоже на естественные коллизии в хэш-функциях. Главные, чтобы они не были "неестественными", встречающимися чаще, чем по вероятности им положено или по какой-то закономерности, облегчающей криптоанализ.
Вот ссылки на определения "Pseudorandom functions and permutations", которые являются базовыми в построении блочных шифров:
http://www.cs.berkeley.edu/~da.....ing/cs276-s04/03b.ps[link4]
http://www.cs.berkeley.edu/~da.....ing/cs276-s04/04a.ps[link5]
http://www.cs.berkeley.edu/~da.....ing/cs276-s04/04b.ps[link6]
Попробуйти найти что-то более легкое для понимания, если сможете.
Или просто запомните, что ключи размером 64 или 256 бит дают намного меньше вариантов отображений открытого текста в шифртекст, чем возможно в блоке размером 64 бита.
(Иначе бы например 3-DES образовывал бы группу, хотя доказано, что комбинация трех разных ключей не сводится к одному ключу, т.е. дает иное отображение, не входящее в множество 64 (56)-битных ключей. Тут относительно не такая очевидная и простая математика, как кажется и "на пальцах" это все не объяснить).
... А ответ на самом деле надо было дать простой:
Nb – длина блока. Nk – длина ключа.
Для фиксированного ключа мы имеем 2^Nb входов и (2^Nb)! Всех возможных псевдослучайных перестановок.
Для всего множества ключей: (2^Nb)!^(2^Nk)
Если я в очередной раз ничего не перепутал. ;-)
unknown, простите, что за ps файл? Скачал, не знаю чем открывать.
Не знаю чем Вам помочь. Если бы Вы были в Линуксе, то такой бы вопрос у Вас бы даже не возник. ps.gz – "стандарт де факто" (В крайнем случае .pdf). для научных работ и статей и набор программ для работы с ним большой (начиная от gv).
Может под Win его тоже какой нибудь акробат-reader открывает?
P. S. Научные статьи в формате оффиса мне встречались только из России, Украины и Польши. Да и то от этого стараются уходить.
Гость,
GSView
http://www.cs.wisc.edu/~ghost/gsview/index.htm
unknown, Вам большое спасибо за ответы и интересную инфу. Acrobat Reader такие файлы не открывает, к сожалению.
sentaus, спасибо, скачал, но теперь еще нужно Ghostscript качать.
Всегда рад, когда кого-то интересуют вопросы криптографии и всего что с ней связано.
[offtopic] Вот после этого Линукс у меня становится навязчивой идеей. ;-)
Как все проще.
Просто для примера:
Нам нужен просмотрщик для файлов postscript
Набираем: apt-cache search postscript | grep view
Выбираем подходящий по описанию, ставим тоже одной простой командой при этом смотрим, какие пакеты он по зависимостям требует и сколько будет качать или ставить с диска. По умолчанию все само, что нам надо для просмотра postscipt скачается и настроится. Даже думать не надо. Хотя можно вмешаться и вручную контролировать этот процесс.
И так (почти) для любого формата файлов или любой задачи.
Т.е. даже не надо узнавать, что нужно для просмотра файлов или решения какой-то задачи. Есть огромный массив программ для поиска, дистростроители уже сами обо всем позаботились и упаковали в пакеты с нужными зависимостями.
Например, на запрос apt-cache search | grep network | grep anonimity среди разных вариантов можно получить tor, а при попытке его поставить будут предложены privoxy и соксификаторы.
[/offtopic]