Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Практическая криптография

..pdf
Скачиваний:
6
Добавлен:
12.11.2023
Размер:
16.23 Mб
Скачать

374

Глава 22. Хранение секретов

ных чисел. Мы исходим из факта, что запомнить идентификационную фразу намного проще, чем случайные числа. Большинство мнемонических приемов основаны на идее преобразования случайных данных в нечто похожее на на­ ши идентификационные фразы.

Некоторые пользователи не слишком любят стучать пальцами по клави­ атуре, поэтому выбирают свои пароли по-другому. Возьмем, например, по­ истине замечательное слово “Длспус,иносивсссцмбпсн?” Оно выглядит пол­ нейшей абракадаброй, если не знать, что это первые буквы слов некоторо­ го вполне осмысленного предложения. В данном случае мы воспользовались цитатой из шекспировского “Гамлета”: “Достойно ль смиряться под ударами судьбы, иль надо оказать сопротивленье и в смертной схватке с целым мо­ рем бед покончить с ними?”2 Разумеется, на практике использовать цитаты из классической литературы не следует. Литературные тексты слишком до­ ступны злоумышленнику, а сколько подходящих фраз может содержаться в книгах, стоящих на полке у пользователя А? Поэтому пользователю А сле­ дует придумать что-нибудь оригинальное, чего никто не мог бы разгадать.

По сравнению с полной идентификационной фразой для составления та­ кого пароля требуется предложение, состоящее из большего количества слов. Тем не менее подобный прием позволяет обеспечить необходимый уровень безопасности путем ввода меньшего количества символов, так как первые буквы слов обладают большей случайностью, чем последовательные буквы предложения. К сожалению, мы не знаем ни одной оценки количества эн­ тропии, которая приходится на каждый символ подобного слова. Возможно, впоследствии кому-нибудь удастся провести исследования и написать статью о различных способах выбора идентификационных фраз.

Идентификационные фразы — это, безусловно, самый лучший способ со­ хранить секрет в человеческой памяти. К сожалению, многие пользователи все равно испытывают серьезные затруднения с их применением. Кроме того, даже используя идентификационные фразы, весьма сложно сохранить в че­ ловеческом мозгу сразу 128 бит энтропии.

22 .2.1 Солим и растягиваем

Чтобы выжать как можно больше безопасности из пароля или идентифи­ кационной фразы с ограниченным объемом энтропии, можно воспользовать­ ся двумя любопытными приемами. Их названия наводят на мысль о средне­ вековой камере пыток. Данные приемы настолько просты и очевидны, что должны применяться в каждой системе, работающей с паролями. Исключе­ ний из этого правила не существует.

2Перевод Б. Пастернака. — П рим , п ерев .

22.2 Человеческая память

375

Первый прием состоит в том, чтобы добавить соли (salt). “Соль” — это случайное число, которое хранится вместе с данными, зашифрованными с по­ мощью пароля. Если это возможно, используйте 256-битовую соль.

Следующий шаг — это растягивание (stretching) пароля. По своей сути растягивание представляет собой очень длинный процесс вычисления. Пусть р — это пароль, a s — соль. Используя любую криптографически сильную функцию хэширования h} можно вычислить следующее:

хо := О,

Xi := h(xi-1 |р |в)для г = 1, ..., г,

К := хГ.

Полученное значение К применяется в качестве ключа для фактического шифрования данных. Параметр г — это количество итераций данного алго­ ритма, которое должно быть настолько большим, насколько это практически возможно. (Думаем, нам не нужно лишний раз подчеркивать, что значения Xi и К должны быть 256 бит длиной.)

Рассмотрим описанный процесс с точки зрения злоумышленника. Зная соль s и некоторые данные, зашифрованные с помощью ключа К, мы пыта­ емся найти К , перебирая различные пароли. Для этого мы выберем некото­ рый пароль р, вычислим соответствующее значение К, расшифруем данные и посмотрим, имеет ли смысл полученный открытый текст. Если расшифро­ ванный текст окажется бессмысленным, выбранный пароль р должен быть неправильным. Чтобы проверить одно значение р, необходимо выполнить г различных операций хэширования. Чем больше значение г, тем больше ра­ боты придется проделать злоумышленнику.

В нормальных ситуациях растягивание пароля должно выполняться при каждом использовании последнего. Напомним, что это происходит в тот мо­ мент, когда пользователь только что ввел пароль. Обычно ввод пароля за­ нимает несколько секунд, поэтому вполне допустимо потратить на его обра­ ботку, скажем, еще 200 мс. Вот наше правило выбора г: значение г долж­ но быть таким, чтобы вычисление K (s,p) занимало от 200 до 1000 мс на оборудовании пользователя. С течением времени компьютеры работают все быстрее и быстрее, поэтому г должно постепенно увеличиваться. В идеале приемлемое значение г следует определять экспериментальным путем, когда пользователь впервые выбирает пароль, и хранить г вместе с s. (Обязательно убедитесь, что значение г не слишком мало и не слишком велико.)

Какой выигрыш мы получили? Если г = 220 (это чуть больше милли­ она), тогда злоумышленнику для проверки каждого варианта пароля при­ дется проделать по 220 операции хэширования. Перебор 260 паролей требует выполнения 280 операций хэширования, поэтому использование г = 220 экви­

376 Глава 22. Хранение секретов

валентно увеличению размера пароля на 20 бит. Чем больше значение г, тем больший выигрыш в размере пароля мы получаем.

Теперь посмотрим на эту ситуацию с другой стороны. Параметр г не дает злоумышленнику извлечь пользу из появления высокоскоростных компью­ теров, поскольку с увеличением мощности компьютеров возрастает и зна­ чение г. Это нечто наподобие компенсатора закона Мура (Moore’s law), но только в долгосрочной перспективе. Через 10 лет злоумышленник может вос­ пользоваться технологией следующего десятилетия, чтобы взломать пароли, с которыми мы работаем сегодня. Поэтому нам все еще нужно обеспечивать приличный уровень безопасности и использовать пароли, которые содержат большое количество энтропии.

Это, между прочим, еще один аргумент в пользу применения протоко­ ла согласования ключей с прямой безопасностью. Каким бы ни было наше приложение, вполне вероятно, что закрытые ключи пользователя А будут защищены паролем. Через 10 лет у злоумышленника появится возможность определить пароль пользователя А. Но если ключ, зашифрованный с помо­ щью пароля, применялся только для запуска протокола согласования клю­ чей с прямой безопасностью, тогда, даже взломав ключ, злоумышленник не узнает ничего ценного. К тому времени ключ пользователя А больше не будет действительным (он давным-давно устареет), а знание его старого закрыто­ го ключа никак не поможет раскрыть ключи сеанса, которые применялись 10 лет назад.

Наличие соли мешает злоумышленнику сэкономить свои усилия, когда он пытается одновременно взломать большое количество паролей. Предпо­ ложим, что у системы есть миллион пользователей. Каждый из них хранит на диске файл со своими ключами, зашифрованный с помощью растянутого пароля соответствующего пользователя. Если бы мы не использовали соль, злоумышленник мог бы атаковать систему следующим образом: взять пароль р, вычислить растянутый ключ К и попытаться расшифровать каждый из этих файлов с помощью К. Для каждого пароля значение функции растяги­ вания нужно подсчитать только один раз, а полученный ключ может быть использован злоумышленником, чтобы попытаться расшифровать сразу мил­ лион файлов.

Добавляя к функции растягивания соль, мы делаем описанную ситуа­ цию невозможной. Все значения соли — случайные числа, поэтому каждый пользователь будет применять свою соль. Теперь злоумышленнику придется подсчитывать значение функции растягивания не для каждого пароля, а для каждой комбинации “пароль-файл”. Это потребует от него намного ббльше усилий, а для пользователей системы расходы окажутся незначительными.

Какого размера должно быть значение соли? Мы не будем отвлекаться на подробный анализ этого вопроса. Возможно, вам хватит и 128-битового зна­

22.3 Портативное хранилище

377

чения (если система не допускает проведения атак, в основе которых лежит парадокс задачи о днях рождения), но зачем экономить на таких мелочах? В наше время биты очень дешевы, и использование 256-битового значения соли удовлетворит любые потребности.

Кстати, будьте очень внимательны, используя соль и растягивание. Од­ нажды нам попалась система, в которой были замечательно реализованы оба этих приема. Затем, однако, какому-то программисту пришло в голову улучшить пользовательский интерфейс, предоставляя более быстрый ответ относительно того, правилен ли введенный пользователем пароль. Для это­ го программист сохранял контрольную сумму каждого пароля, что свело на нет всю процедуру применения соли и растягивания. Если время отклика си­ стемы оказывается недопустимо медленным, вы можете немного уменьшить значение г, но убедитесь, что злоумышленник сможет проверить правиль­ ность пароля, только выполнив по меньшей мере г операций хэширования.

22.3Портативное хранилище

Очередная идея — хранить ключи где-нибудь за пределами компьютера. Самая простая форма внешнего хранилища — это клочок бумаги, на кото­ ром записаны пароли. Многие заводят хранилища подобного рода даже для абсолютно не криптографических систем наподобие Web-узлов. Очень часто нам (в том числе и авторам этой книги) приходится помнить по меньшей мере полдюжины паролей, а это не очень-то легко, особенно если речь идет о системах, в которых пароль используется крайне редко. Чтобы запомнить пароли, пользователи просто их записывают. Ограничение этого решения со­ стоит в том, что пароль все еще должен обрабатываться глазами, мозгом и пальцами пользователей при каждом его применении. Чтобы раздражение пользователя и совершаемые им при вводе ошибки не превышали разумных пределов, данный прием может применяться только к паролям и идентифи­ кационным фразам с относительно низкой степенью энтропии.

Как разработчику, вам не придется предпринимать каких-либо действий для реализации данного метода хранения. Пользователи всегда будут запи­ сывать пароли на клочках бумаги, какие бы правила вы ни установили и как бы ни настроили систему паролей.

Более совершенная форма хранилища представляет собой некоторую раз­ новидность переносимой памяти. Это может быть карта флэш-памяти, диске­ та, пластиковая карта с магнитной полосой или любой другой вид цифрового хранилища. Системы цифрового хранения всегда обладают достаточной ем­ костью для хранения, как минимум, 256-битового секретного ключа, поэтому можно забыть об использовании паролей с низкой степенью энтропии. По су­

378

Глава 22. Хранение секретов

ти, переносимая память сама превращается в ключ. Тот, у кого есть ключ, ав­ томатически получает доступ к системе, поэтому переносимую память нужно хранить в безопасном месте.

22.4Идентификатор безопасности

Более удачное (и более дорогостоящее) решение — это использование ус­ тройства, названного идентификатором безопасности (secure token). Это ма­ ленький компьютер, который пользователь может носить с собой. Внешний вид идентификатора безопасности может варьироваться в широких преде­ лах — от смарт-карты (которая выглядит в точности как кредитная карта) до приборов iButton, USB-устройств или карт формата PCMCIA. Главны­ ми особенностями такого устройства являются наличие энергонезависимой памяти (т.е. памяти, которая сохраняет свои данные после выключения ком­ пьютера) и центрального процессора.

Идентификатор безопасности функционирует аналогично портативному хранилищу данных, однако имеет ряд улучшений в плане безопасности. В частности, доступ к ключам, хранящимся в таком устройстве, может быть ограничен паролем или каким-либо другим способом. Прежде чем идентифи­ катор безопасности позволит вам применить ключ, вы должны предоставить ему правильный пароль. При этом идентификатор безопасности сам может защитить себя от злоумышленников, пытающихся подобрать пароль, блоки­ руя доступ после трех или пяти неудачных попыток ввода. Разумеется, неко­ торые пользователи то и дело ошибаются при вводе пароля. Для восстановле­ ния доступа к системе таких горе-пользователей применяются специальные, гораздо более длинные ключи или идентификационные фразы с более высо­ кой степенью энтропии.

Как видите, подобные системы обеспечивают многоуровневую защиту данных. Прежде всего пользователь защищает идентификатор физически; например, он может хранить его в кошельке или на брелке. Чтобы добраться к данным, злоумышленник должен украсть сам идентификатор или по край­ ней мере получить к нему какой-нибудь доступ. Затем ему придется либо физически взломать идентификатор и извлечь из него данные, либо узнать пароль, чтобы разблокировать идентификатор. Для усложнения физической атаки подобные устройства часто делают устойчивыми к несанкционирован­ ному вмешательству3.

3Такие идентификаторы устойчивы к несанкционированному вмешательству, ио отнюдь не защищены от пего полностью. Физический взлом устройств возможен всегда; вопрос лишь в том, во сколько он обойдется.

22.5 Безопасный пользовательский интерфейс

379

На сегодняшний момент идентификаторы безопасности являются одним из лучших и самых практичных методов хранения секретных ключей. Они относительно недороги и имеют довольно небольшой размер, что позволяет носить их с собой.

Одна из проблем практического применения идентификаторов безопасно­ сти — халатное поведение пользователей. Они то и дело оставляют свой иден­ тификатор безопасности подключенным к компьютеру, когда уходят на обед или деловую встречу. Поскольку пользователям ужасно не хочется повторно вводить пароль, их система будет настроена таким образом, чтобы послуш­ но предоставлять доступ к данным на протяжении многих часов с момента последнего ввода пароля. В подобной ситуации злоумышленнику достаточно подойти к компьютеру и воспользоваться секретными ключами, хранящими­ ся в идентификаторе.

Вы можете попробовать решить эту проблему путем обучения. Среди лю­ бимых средств воздействия на сознание пользователей можно назвать видео­ презентации “Корпоративная безопасность в офисе”, отвратительные и совсем не смешные плакаты “Возьмите свои смарт-карты с собой на обед”, а также лекции на тему “Если я еще когда-нибудь увижу смарт-карту вставленной в компьютер, хозяин которого ушел покурить, он прослушает эту лекцию еще 50 раз”. Впрочем, существуют и другие пути решения этой проблемы. Сде­ лайте так, чтобы идентификатор безопасности был ключом не только к сек­ ретным данным, но и к дверям офиса. Теперь пользователь будет вынужден брать идентификатор с собой, чтобы попасть обратно в офис. Настройте ав­ томат, продающий кофе, таким образом, чтобы он выдавал стаканчик с кофе только при наличии идентификатора безопасности. Это не позволит пользо­ вателям оставлять идентификаторы подключенными к компьютеру на время своего отсутствия. Иногда безопасность системы полностью обеспечивается подобными примитивными мерами, но они оказываются гораздо эффектив­ нее многочисленных плакатов, правил и призывов.

22.5Безопасный пользовательский интерфейс

Несмотря на бесспорные достоинства, идентификатор безопасности имеет один существенный недостаток. Пароль, который используется для доступа к содержимому идентификатора, должен вводиться в компьютер или дру­ гое аналогичное устройство. Это не составит проблемы, если мы полностью доверяем своему компьютеру, однако, как известно, компьютеры не настоль­ ко хорошо защищены, чтобы можно было на них надеяться. Действительно, смысл хранения секретных ключей за пределами компьютера состоит именно в том, что мы не совсем ему доверяем. Можно достичь более высокого уровня

380

Глава 22. Хранение секретов

безопасности, если сам идентификатор будет оснащен встроенным безопас­ ным пользовательским интерфейсом. Теперь пароль (или, скорее всего, PINкод) можно вводить прямо в идентификатор безопасности, не полагаясь на внешнее устройство.

Наличие у идентификатора безопасности собственной клавиатуры защи­ тит PIN-код от взлома. Разумеется, после введения PIN-кода компьютер все равно узнает ключ и может делать с этим ключом все, что ему вздумается. Таким образом, мы все еще ограничены безопасностью компьютера в целом.

Чтобы предотвратить подобные проблемы, необходимо внедрить крипто­ графические процессы, выполняемые при участии секретного ключа, в сам идентификатор безопасности. Это требует применения в идентификаторе спе­ циализированного кода, благодаря чему тот быстро превращается в полно­ ценный компьютер. На сей раз, однако, это будет доверенный компьютер, который пользователь может носить с собой. Доверенный компьютер может реализовать компоненты каждого приложения, критические для безопасно­ сти, на самом идентификаторе безопасности. В подобной ситуации для иден­ тификатора безопасности важно наличие дисплея, чтобы пользователь ви­ дел, какие действия он авторизует, вводя свой PIN-код. В типичной ситуации пользователь управляет приложением с помощью мыши и клавиатуры ос­ новного компьютера. Когда, например, пользователь должен авторизовать банковский платеж, компьютер отправляет соответствующие данные иден­ тификатору безопасности. Последний отображает на своем дисплее сумму платежа и другие параметры транзакции, а пользователь авторизует платеж, введя свой PIN-код. Затем идентификатор подписывает параметры транзак­ ции, а основной компьютер завершает ее выполнение.

На практике идентификаторы с безопасным пользовательским интерфей­ сом слишком дороги для большинства приложений. Пожалуй, самой близ­ кой альтернативой идентификатору безопасности является КПК (например, Palm). Тем не менее пользователи загружают на свои КПК многочисленные программы, а разработчики КПК не позиционировали их изначально как безопасные устройства, поэтому, на наш взгляд, КПК ненамного безопаснее обычных компьютеров.

Описанная ситуация может служить хорошим примером конфликта меж­ ду функциональностью и безопасностью. Для пользователей важно иметь возможность загружать программы и запускать их, когда они пожелают. Кроме того, им хотелось бы доверять своему компьютеру ценную инфор­ мацию. Учитывая текущее положение дел в обеспечении безопасности опе­ рационных систем, мы просто не в состоянии совместить в одном и том же устройстве гибкость, которую предоставляет возможность загрузки про­ грамм, и уровень безопасности, который требуется системе. А если придется делать выбор между безопасностью и возможностью загрузки программы,

22.6 Биометрика

381

которая отображает на экране танцующих свинок, пользователи, вне всяких сомнений, выберут последнее.

22.6Биометрика

Те, кто интересуется последними веяниями моды, могут добавить к свое­ му арсеналу средств безопасности еще и биометрику. В идентификатор без­ опасности можно встроить что-нибудь наподобие сканера отпечатков паль­ цев или сетчатки глаза. В настоящее время биометрические устройства еще не получили широкого распространения. Сканеры отпечатков пальцев стоят не так уж и дорого, но безопасность, которую они обеспечивают, крайне со­ мнительна. В 2002 году криптограф Дутому Мацумото (Tsutomu Matsuraoto) со своими тремя учениками показал, как обмануть все имеющиеся в продаже сканеры отпечатков пальцев, используя только подручные материалы [63]. Оказалось, что с созданием искусственного пальца по свежему отпечатку (как те, которые мы оставляем на гладкой поверхности) справится любой сообразительный старшеклассник.

В действительности нас шокировало не то, что устройства считывания от­ печатков пальцев можно обмануть, а то, как это просто. Что еще хуже, про­ изводители биометрических устройств постоянно рассказывали о том, какую высокую безопасность обеспечивает биометрическая идентификация. Они ни­ когда не говорили, как легко подделать отпечатки пальцев. И вдруг на сцене появляется математик (даже не эксперт по биометрике!), который одним взмахом руки развенчивает все устоявшиеся мифы. У нас есть два предполо­ жения: либо производители биометрических устройств знали об этом и бес­ стыдно обманывали нас, либо они не знали об этом, а значит, совершенно некомпетентны в своей области. Нам нужно действительно хорошо подумать о том, насколько безопасны остальные биометрические системы.

Тем не менее, даже несмотря на то что сканеры отпечатков пальцев лег­ ко обмануть, они все еще могут сослужить хорошую службу. Предположим, у нас есть идентификатор безопасности с небольшим дисплеем, небольшой клавиатурой и сканером отпечатков пальцев. Чтобы добраться к ключу, необ­ ходимо получить физический доступ к идентификатору безопасности, узнать PIN-код и подделать отпечаток пальца. Все это требует от злоумышленника намного бблыпих усилий, чем любое из предыдущих решений. Это, пожалуй, самая лучшая из практических схем хранения ключей, которую можно ре­ ализовать на данный момент. С другой стороны, подобный идентификатор безопасности будет стоить недешево, поэтому использовать его смогут далеко не все.

382

Глава 22. Хранение секретов

Сканеры отпечатков пальцев могут применяться для обеспечения безопас­ ности данных и на более примитивном уровне. Прикосновение пальца к ска­ неру занимает всего лишь доли секунды, поэтому вполне допустимо, чтобы пользователи проделывали эту процедуру относительно часто. Таким обра­ зом, применение сканера отпечатков пальцев может повысить уверенность в том, что действия компьютера были авторизованы именно тем человеком, которому это поручено. Теперь сотруднику предприятия будет сложнее раз­ решить коллеге пользоваться своим паролем. Вместо того чтобы защищать систему от хитроумных злоумышленников, сканер отпечатков пальцев будет предотвращать случайные нарушения правил безопасности. Это может при­ нести гораздо большую пользу безопасности системы, нежели попытка ис­ пользовать сканер отпечатков пальцев в качестве высоконадежного средства защиты.

Отметим также, что работа Мацумото может иметь серьезные послед­ ствия для использования отпечатков пальцев в качестве криминальных улик. Оказывается, что сделать искусственный палец по имеющемуся отпечатку не так уж сложно. Так почему бы не смазать искусственный палец чем-нибудь жирным и не наставить чужих отпечатков в нужных местах? До сих пор подобные трюки можно было увидеть только в шпионских фильмах, однако, как вы убедились, реализовать подобную идею несложно и на практике. Вы­ ходит, что наличие отпечатков пальцев на орудии убийства значит отнюдь не так много, как мы привыкли думать. Пройдет не менее 10 лет, прежде чем су­ дебная система свыкнется с этой мыслью, а пока что создание искусственных пальцев остается безотказным средством оклеветать невинного человека.

22.7Однократная регистрация

Как уже не раз отмечалось, среднестатистическому пользователю при­ ходится запоминать слишком много паролей. В связи с этим особую при­ влекательность приобретает идея однократной регистрации (single sign-on SSO). Она состоит в том, чтобы предоставить пользователю один главный па­ роль, который, в свою очередь, будет использоваться для расшифровки всех остальных паролей, применяемых пользователем в различных приложениях.

Для реализации этой схемы все приложения должны уметь взаимодей­ ствовать с системой однократной регистрации. Каждый раз, когда прило­ жению нужен пароль, оно должно запрашивать его не у пользователя, а у системы однократной регистрации. Однако на практике это не срабатыва­ ет. Данный процесс еще не стандартизирован, а пока этого не случится, он не будет происходить автоматически. Только подумайте, сколько различных

22.8 Риск утраты

383

приложений придется подвергнуть изменениям, чтобы они автоматически по­ лучали свои пароли у системы однократной регистрации.

Более простая идея состоит в том, чтобы создать небольшую программу, которая будет хранить пароли в текстовом файле. Пользователь А вводит свой главный пароль, а затем использует привычные операции копирования и вставки, чтобы скопировать пароль из системы однократной регистрации в нужное приложение. Брюс однажды представил широкой общественности свою программу под названием Password Safe, которая занималась именно этим. К сожалению, данная программа не более, чем цифровая версия клоч­ ка бумаги, на котором пользователь А записывает свои пароли. Разумеется, она очень полезна и определенно лучше клочка бумаги, если мы всегда ис­ пользуем один и тот же компьютер. Тем не менее она никак не является тем самым глобальным решением, которым должна была бы стать идея одно­ кратной регистрации.

22.8Риск утраты

А что, если идентификатор безопасности сломается? Или пользователь забудет свой клочок бумаги с паролями в кармане брюк и затем бросит их в стиральную машину? Утрата секретных ключей —это всегда плохо. Ее цена может варьироваться от необходимости перерегистрации в каждом приложе­ нии для получения нового ключа до безвозвратной потери доступа к важным данным. Если вы зашифруете с помощью секретного ключа свою докторскую диссертацию, над которой усердно работали на протяжении пяти лет, а затем потеряете этот ключ, у вас больше не будет докторской диссертации. Все, что

увас останется, — это файл с грудой случайных битов. Какой кошмар! Довольно сложно создать систему хранения ключей, которая была бы

проста в использовании и вместе с тем обладала бы высокой надежностью. Поэтому данные функции необходимо разнести. Сохраните две копии клю­ ча — одну, которая будет проста в использовании, и другую, обладающую высокой надежностью. Если первая система когда-нибудь потеряет ключ, вы сможете восстановить его с помощью второй системы, которая вовсе не обя­ зательно должна быть сложной. Как насчет того, чтобы написать ключ на листке бумаги и положить его в банковский сейф?

Несомненно, разрабатывать надежную систему хранения следует очень тщательно. Благодаря своим особенностям она быстро станет местом хра­ нения всех секретных ключей, а следовательно, превратится в крайне при­ влекательный объект для нападения. Необходимо провести анализ рисков, чтобы определить, какой вариант хранения вам больше подходит: несколько небольших надежных систем или же одна большая.