Amin 's Blog
IEEE 1667 — хотели как лучше, получилось как всегда.
Беспокойство по поводу утечек данных с проёбанных флешек вполне понятно, и любой более-менее адекватный человек этим вопросом так или иначе озадачивался. Обычно вариантов три — пароль на выбранный документ (если поддерживает и нормально реализован), криптоконтейнер в файле или шифрование флешки целиком.
Посмотрим, что из этого вышло… …
Поскольку нормальная защита офисных документов шифрованием есть только в ОпенОффисе (для MSO 2007/2010 надо курить исходники, которых нет, хотя шифрование там заявлено нормальное), да и помнить пароли на кучу документов — убого. Архивы с паролями — тоже говно, потому что распаковка одного файла из архива на 5000 файлов не мгновенна даже на Core i7.
Криптоконтейнеры жестко привязаны к своим программам (всякие PGP Disk, FreeOTFE, TrueCrypt), которые надо СТАВИТЬ. Нативные и унифицированные криптоконтейнеры есть в линуксе (dm-crypt), но оно к винде не прикручиваемо.
Третий вариант — шифрование флешки средствами от вендора, но они а) пиздец кривые б) требуют уёбищного софта в) в 99.99% только венда г) вместо AES может оказаться XOR.
И тут родилась здравая идея — сделать стандарт на шифирование (и аутентификацию заодно) флешек целиком — IEEE 1667.
Детали я пересказывать не буду, оно подробно описано в блоге Azazela:
http://ru.intel.com/business/community/index.php?automodule=blog&blogid=1960&&req=printentry&eid=1505
Но поскольку стандарт писала компания микрософт, получилось как всегда — хорошая и правильная идея реализована как обычно через жопу, непрозрачно, криво и с геморроем.
— Только виста (причем голая виста не катит, нужен Feature Pack) / виндовс-7, и то после 15 минут ожидания установки и настройки для новой для системы флешки.
— Федора-16 и прочие линуксы нативно не тянут, хотя опубликован стандарт аж в 2008. Слабо верю, что за три года никто не пытался реализовать. То есть либо стандарт не настолько стандартный, и есть закрыте фвендорские фичи, либо есть патентная ебля. В моем случае отсутствие на настоящий момент полноценной кроссплатформенности (хотя заявлено совсем иное) — это фатальный недостаток.
— виндоффс ХР видит только после установки драйвера, который автоматом не находится.
— реализация шифрования и управление ключами непрозрачны.
— Защита от перебора — пиздец. Флешка блочится после 50 неудачных попыток, причем после этого флешку можно только сбросить. Правильно, первый же вирус или косячный драйвер — и пиздец данным. Что мешало просто принимать пароль в течении 1 минуты после исчерпания лимита — непонятно.
— описана только аутентификация, пароль нужен только для доступа по USB. Данные похоже вообще не шифруются, то есть против сервисников с паяльниками 1667 — скорее всего абсолютно беспомощное говно.
А началось все с того, что мне принесли флешку, которая на вин-7 просила пароль, а на ХР вообще не открывалась. Поебавшись с виртуальными машинами, выяснил, что это тот самый 1667. Кстати, не надо путать с BitLocker/BitLockerToGo — это похоже совсем другие грабли.
В конечном итоге на этот 1667 забили и сделали обычный TrueCrypt-контейнер, который работает как в винде, так и в линуксе. И который юзает теплый ламповый AES в XTS-режиме, а не хуй знает какое проприетарно-вендорское говно.
Share this:
Понравилось это:
Похожее
BhNO3 writes:>то есть против сервисников с паяльниками 1667 — скорее всего >абсолютно беспомощное говно.Да против сервиснегов с паяльником равно как и с утюгом вообще никакие криптоконтейнеры не катят :).
Originally posted by anonymous:
Да против сервиснегов с паяльником равно как и с утюгом вообще никакие криптоконтейнеры не катят :).
Познакомься с особенностями TrueCrypt и включи фантазию…
BhNO3, мы о защите самой флешки, а не о защите её обладателя. Наш сценарий — потеря/забывание/проёб флешки в транспорте/чужом офисе/гостях. А вовсе не выбивание признания в создании порносайта в иранском застенке.Ну и кроссплатформенность при достаточной простоте работы — кагбе необходима. Скрытые тома — фишка иногда крайне нужная, но не в нашем случае.
IEEE 1667-2018
IEEE Standard for Discovery, Authentication, and Authorization in Host Attachments of Storage Devices
Discovery, authentication, and authorization protocols between hosts and storage devices over multiple transports are defined in this standard.
Working Group Details
- Active Projects
- Active Standards
- Superseded Standards
- Inactive-Withdrawn Standards
- Inactive-Reserved Standards
1667-2006
IEEE Standard Protocol for Authentication in Host Attachments of Transient Storage Devices
This project defines a standard protocol for secure authentication and creation of trust between a secure host and a directly attached Transient Storage Device (TSD), such as a USB flash drive, portable hard drive, or cellular phone. The protocol has only an indirect relationship with data integrity/security, and does not directly address issues of authorization and enforcement. The protocol also does not address devices that are attached using a network connection. However, a device that uses a point-to-point wireless connection such as WUSB may comply with this protocol.
1667-2009
IEEE Standard for Authentication in Host Attachments of Transient Storage Devices
This project defines a standard protocol for secure authentication and creation of trust between a secure host and a directly attached Transient and other Storage Devices, such as a USB flash drive, portable hard drive, or cellular phone. The protocol has only an indirect relationship with data integrity/security, and does not directly address issues of authorization and enforcement. The protocol also does not address devices that are attached using a network connection. However, a device that uses a point-to-point wireless connection such as WUSB may comply with this protocol.
1667-2015
IEEE Standard for Discovery, Authentication, and Authorization in Host Attachments of Storage Devices
Discovery, authentication, and authorization protocols between hosts and storage devices over multiple transports are defined in this standard. It specifies a new Silo Type Identifier (STID) allocation process that uses the IEEE Registration Authority.
Защита данных с технологией IEEE 1667 в Phison флешках
Автором проекта USBDev, лично тестировались флешки на таких контроллерах, как: Phison PS2251-38 и PS2251-61.
Предположительно, функцию IEEE1667 поддерживают ещё такие чипы, как: PS2251-33 и PS2251-50.
В свою очередь, более современные контроллеры, среди которых как USB2.0, так и USB3.0 модели, отказываются работать с ней. При этом, например, модели PS2267 и PS2268, хотя и предлагают задать пароль, но в конечном итоге выдают ошибку – Не удается установить пароль.
Полнофункционально, с флешками на технологии Enhanced Storage, можно работать в операционной системе Windows 7. Для других ОС, рекомендую использовать стороннюю утилиту – Silicon Power IEEE1667-SWITCH.
Помимо использования совместимой флешки, нужно ещё задать несколько дополнительных опций, при перепрошивке флешки. Первым делом настройте утилиту Phison MPALL согласно следующей ИНСТРУКЦИИ.
Далее зайдите в расширенный режим редактирования настроек MPALL, выбором пунктов Advance Setting и Load Last Setting. Последнее, необходимо, чтобы заданные ранее параметры не сбросились.
Режим флешки, в обязательном порядке, переключаем с классического MODE3 на MODE8.
Поперву может показаться, что всё прекрасно работает и в обычном MODE3. Но в таком случае, пароль легко сбрасывается, даже встроенными средствами винды.
А именно при выполнении стандартной функции сброса пароля, данные на флешки не затираются, а остаются неприкасаемыми, несмотря на вывод предупреждения и якобы завершения процедуры отчистки.
На странице Other Setting активируем галочку IEEE 1667.
Сохраняем настройки и прошиваем флешку.
WIN7, при первом же подключении, спросит, будете ли вы создавать пароль.
Если вы согласитесь, то вам предоставляется задать пароль и фразу-подсказку, на случай провалов в памяти.
На других системах, с этим же самым, вам может помочь свободная сторонняя утилита IEEE1667-SWITCH.
В Windows 7, при подключении флешки, автоматически всплывёт окно, куда и следует ввести пароль.
Опять же, на иных ОС, можно использовать уже известную нам утилиту SP IEEE1667-SWITCH.
Запускаем, нажимаем кнопку Enable, выбираем UnLock и вводим пароль.
Сброс, подразумевает попутное уничтожение данных расположенных на флеш-диске, что обусловлено вопросом конфиденциальности. На выходе будем иметь тот же IEEE1667-носитель, только уже с удаленным паролем, а, следовательно, возможностью установить новый.
Чтобы стала видима кнопка ‘Сброс устройства‘, достаточно попытаться авторизоваться с неверным паролем.
Далее появятся всплывающие предупреждения о том, что в результате, вся информация будет удалена.
После получения согласия, будет выполнено сброс устройства Enhanced Storage.
По завершению процедуры, система попросит отформатировать диск. Форматируй-неформатируй, а данные уже не восстановить, во всяком случае средствами, доступными для простых смертных.
В программе от Silicon-Power, всё делаем по аналогии. Забиваем левый пароль.
Обзор NVMe-накопителя Kingston KC2000: известные слагаемые и неожиданная сумма
Позиции компании Kingston традиционно очень сильны на российском рынке твердотельных накопителей. Даже сейчас, когда тяжеловесы – производители первого эшелона – добились явного доминирования, Kingston, которая не обладает собственным производством флеш-памяти и не разрабатывает контроллеров, уверенно удерживает по объёмам продаж третье место, с долей 15-20 % в штучном и 10-15 % в денежном выражении (по данным GfK Russia). Поэтому всё, что делает эта компания, вызывает огромный интерес, ведь очевидно, что добиться такого признания среди покупателей можно было, лишь обладая каким-то особым рецептом успеха.
И как следует из статистики продаж, по этому рецепту сделана модель Kingston A400 – SATA-накопитель начального уровня, который пользуется огромной популярностью благодаря низкой цене при неплохих для своего класса характеристиках. Однако не стоит думать, что стратегия Kingston заключается в ориентации только на нижний ценовой сегмент. В модельном ряду компании есть и SSD, которые привлекают к себе внимание отнюдь не ценой, а уровнем производительности и использованием перспективных аппаратных платформ. И с наилучшим примером такого накопителя мы познакомимся сегодня: это Kingston KC2000 – флагманская потребительская модель M.2 SSD с интерфейсом NVMe.
Справедливости ради стоит сказать, что KC2000 – не совсем новинка. Данный накопитель был анонсирован в середине прошлого года, а в России появился в январе 2020-го. Но никаких обновлений ассортимента у Kingston с тех пор не происходило. Впрочем, в этом не было и нет никакой необходимости: для KC2000 изначально была выбрана удачная платформа, которая смотрится вполне актуально и сегодня. И хотя в нём нет поддержки новейшей версии протокола PCI Express 4.0, это нельзя назвать критичным недостатком. Во-первых, число систем, способных принимать PCIe 4.0-накопители, не слишком велико и ограничено лишь конфигурациями, построенными на процессорах Ryzen 3000 и платах с чипсетом X570. Во-вторых, как показало тестирование, даже в таких сборках имеющиеся на рынке PCIe 4.0-накопители проигрывают по реальной производительности правильно спроектированным SSD с шиной PCI Express 3.0.
На первый взгляд, KC2000 как раз и относится к таким добротным решениям. Во многом это обуславливается тесными отношениям компании Kingston с Kioxia (бывшей Toshiba Memory), благодаря которым она получает доступ к наиболее современной и лучшей по качеству флеш-памяти японского производителя. В частности, в KC2000 применяется BiCS4-память – 96-слойная TLC 3D NAND, которая встречается в прочих NVMe-накопителях не так уж и часто. А в том окружении, в котором она работает в KC2000, найти её где-то ещё, кроме накопителя Kingston, вообще невозможно.
Дело тут в том, что Kingston KC2000 – это уникальный накопитель, в котором память Kioxia управляется контроллером Silicon Motion SM2262EN. Обычно производители второго-третьего эшелона спаривают этот контроллер с 64-слойной флеш-памятью Micron или Intel, а память Kioxia встречается главным образом в накопителях, построенных на контроллерах Phison. Но в том-то и заключается необычность подхода Kingston: инженеры компании скрестили лучший NVMe-контроллер независимого разработчика с более прогрессивной 96-слойной памятью своего давнего партнёра. И в итоге от Kingston KC2000 можно ожидать даже большего, чем от прочих популярных моделей на базе SM2262EN, таких как, например, ADATA XPG SX8200 Pro.
Именно по этой причине мы решили сделать подробный обзор Kingston KC2000. Стоимость этого накопителя выше, чем у ADATA SX8200 Pro, но нельзя исключать, что специально подобранное сочетание компонентов делает предложение Kingston гораздо интереснее в плане производительности. Вот и проверим.
⇡#Внешний вид и устройство
KC2000 поставляется в простейшей упаковке – блистере. В комплекте с накопителем пользователь получает ключ для установки популярной программы для резервного копирования и клонирования разделов Acronis True Image HD.
Для изучения старшего представителя своего модельного ряда компания Kingston предоставила нам версию KC2000 ёмкостью 1 Тбайт. Накопитель выполнен в форм-факторе M.2 2280, но микросхемы флеш-памяти располагаются на обеих его сторонах, что иногда создаёт проблемы с монтажом в системах с низкопрофильным слотом M.2. Штатных средств теплоотвода в конструкции не предусматривается, даже этикетка не имеет фольгированного слоя. Так что KC2000 лучше всего ставить в материнские платы с собственными системами охлаждения слотов M.2.
На этикетке накопителя указаны дата производства (цифры 1951 указывают на 51-ю неделю 2019 года) и версия прошивки (S78283). Кроме того, приведён идентификатор PSID, что указывает на поддержку аппаратного AES-шифрования и соответствие Kingston KC2000 стандартам TCG Opal 2.0 и Microsoft eDrive.
Как и было сказано выше, управляется накопитель чипом SM2262EN. Хотя в нём и не реализована поддержка PCI Express 4.0, это наиболее производительная на данный момент версия NVMe-контроллера Silicon Motion для потребительских решений, поддерживающая и DRAM-буфер, и восемь каналов для подключения флеш-памяти.
Массив флеш-памяти в Kingston KC2000 сформирован из 256-гигабитных кристаллов 96-слойной BiCS4-памяти (TLC 3D NAND). Всего их для терабайтного накопителя требуется 32 штуки, то есть контроллер в данном случае может пользоваться четырёхкратным чередованием. Все кристаллы распределены по восьми микросхемам, каждая из которых, очевидно, содержит внутри сразу по четыре кремниевых кристалла.
Микросхемы промаркированы самой Kingston, и это закономерно, поскольку компания закупает у Kioxia флеш-память в виде «полуфабрикатов» – полупроводниковых пластин, а их резкой, тестированием и финальным корпусированием занимается уже самостоятельно. Таким путём Kingston добивается снижения себестоимости, плюс это даёт компании определённый контроль над качеством памяти.
Последний важный элемент конструкции KC2000 – это DRAM-буфер, представленный двумя чипами DDR3-1600. Их суммарная ёмкость составляет 1 Гбайт, и они играют роль своего рода оперативной памяти – в них контроллер хранит копию таблицы трансляции адресов и буферизирует мелкоблочные записи.
⇡#Технические характеристики и особенности работы
Стоит напомнить, что KC2000 – это накопитель, с которым Kingston выходит в сегмент производительных NVMe-решений. Для этого компания совершила неожиданный разворот: после многолетнего сотрудничества с Phison она отказалась от применения в своей флагманской модели очередного контроллера этого разработчика в пользу решения Silicon Motion. Но самое интересное в Kingston KC2000 даже не это, а то, что в нём вместе с контроллером Silicon Motion используется память Kioxia. Такая комбинация идёт вразрез с эталонным дизайном и любыми традициями: все заметные производители, выпускающие SSD на контроллере SM2262EN, ставят в них память Micron или Intel. Поэтому KC2000 очень любопытен для исследования.
Технические характеристики Kingston KC2000 выглядят следующим образом:
Производитель | Kingston | |||
Серия | KC2000 | |||
Модельный номер | SKC2000M8 /250G | SKC2000M8 /500G | SKC2000M8 /1000G | SKC2000M8 /2000G |
Форм-фактор | M.2 2280 | |||
Интерфейс | PCI Express 3.0 x4 – NVMe 1.3 | |||
Ёмкость, Гбайт | 250 | 500 | 1000 | 2000 |
Конфигурация | ||||
Микросхемы памяти: тип, интерфейс, техпроцесс, производитель | Kioxia 96-слойная 256-Гбит TLC 3D NAND (BiCS4) | |||
Контроллер | SMI SM2262EN | |||
Буфер: тип, объём | DDR3-1600, 256 Мбайт | DDR3-1600, 512 Мбайт | DDR3-1600, 1024 Мбайт | DDR3-1600, 1024 Мбайт |
Производительность | ||||
Макс. устойчивая скорость последовательного чтения, Мбайт/с | 3000 | 3000 | 3200 | 3200 |
Макс. устойчивая скорость последовательной записи, Мбайт/с | 1100 | 2000 | 2200 | 2200 |
Макс. скорость произвольного чтения (блоки по 4 Кбайт), IOPS | 350 000 | 350 000 | 350 000 | 250 000 |
Макс. скорость произвольной записи (блоки по 4 Кбайт), IOPS | 200 000 | 250 000 | 275 000 | 250 000 |
Физические характеристики | ||||
Потребляемая мощность: бездействие/чтение-запись, Вт | 0,2/7,0 | |||
MTBF (среднее время наработки на отказ), млн ч | 2,0 | |||
Ресурс записи, Тбайт | 300 | 600 | 1200 | |
Габаритные размеры: Д × В × Г, мм | 80 × 22 × 3,5 | |||
Масса, г | 8-11 | |||
Гарантийный срок, лет | 5 |
Как показывает опыт, паспортные спецификации не всегда отражают действительность — реальную производительность устройства мы изучим во время тестирования. Что касается ресурсных характеристик и условий гарантии Kingston KC2000, то они находятся на абсолютно типичном уровне. Продолжительность гарантии составляет пять лет, и в течение этого срока допускается ежедневно обновлять на SSD примерно треть полной ёмкости.
Так как рассматриваемый накопитель отличается по своему дизайну от прочих SSD на контроллере SM2262EN, инженерам Kingston пришлось поработать над собственной микропрограммой. Это могло сильно поменять какие-то привычные алгоритмы работы, однако удалось установить, что по факту все привычные технологии в KC2000 на месте. В первую очередь речь идёт про динамическое SLC-кеширование – оно сохранилось в полной мере. Под запись в быстром однобитовом режиме контроллер отдаёт примерно половину свободного места. Это значит, что на чистый терабайтный накопитель можно на высокой скорости записать порядка 150 Гбайт.
Из графика видно, что если говорить о записи, то KC2000 присущи три принципиально разных режима быстродействия. SLC-режим, в котором пиковая скорость линейной записи составляет около 2,7 Гбайт/с. TLC-режим с пиковой скоростью в районе 1,2 Гбайт/с. И третий, самый медленный режим, в котором вместе с записью в TLC-режиме контроллеру приходится уплотнять данные, изначально записанные в однобитовом режиме. В этом случае линейная скорость падает примерно до 700 Мбайт/с.
SLC-кеширование в Kingston KC2000 распространяется и на операции чтения. Суть заключается в том, что после записи свежей информации в динамический SLC-кеш она не переводится в TLC-вид при первой же возможности, а на некоторое время сохраняется в однобитовом варианте. Это даёт выигрыш в производительности операций мелкоблочного чтения в том случае, если обращения происходят к данным, которые были записаны на SSD непосредственно перед этим. Но в реальности такой сценарий встречается крайне редко.
График, приведённый выше, показывает, как меняется скорость мелкоблочного чтения по мере того, как информация «устаревает». В данном случае видно, что если после записи тестового файла на чистый терабайтный накопитель записать ещё около 100 Гбайт данных, то скорость чтения из первоначального файла упадёт примерно на 20 %. И «честная» скорость случайного чтения блоками по 4 Кбайт для Kingston KC2000 составляет не выдающиеся 62 Мбайт/с, а довольно обычные 44 Мбайт/с.
Отметить нужно и ещё одну особенность Kingston KC2000, касающуюся обработки команды TRIM. Микропрограмма этого SSD устроена таким образом, что удаление больших объёмов файлов приводит к временной «заморозке» его работы. Как показано на диаграмме, после удаления файла объёмом 64 Гбайт в течение примерно четырёх секунд происходит глубокое падение производительности и рост времени отклика накопителя, в это время накопитель практически не реагирует на внешние запросы.
Этот эффект связан с необходимостью провести «сборку мусора» в массиве флеш-памяти и обнулить высвободившиеся блоки страниц, и в той или иной степени он присущ всем современным SSD. Однако в случае KC2000 данный эффект проявляется несколько сильнее, чем обычно.
Компания Kingston снабжает свои накопители специальной сервисной утилитой SSD Manager. Её возможности нельзя назвать исчерпывающими, но базовую функциональность эта программа обеспечивает.
Так, она позволяет посмотреть служебную информацию о SSD и отображает данные о его текущем состоянии, включая показатели здоровья и температурный режим. Заодно посредством SSD Manager можно обновить прошивку, однако новые микропрограммы не скачиваются из Сети, а поставляются внутри дистрибутива утилиты.
Также утилита даёт доступ к полной телеметрии S.M.A.R.T., расшифровывая все значимые величины.
Отдельно стоит отметить вкладку Security, на которой активируется движок аппаратного шифрования SSD. Как было указано выше, Kingston KC2000 поддерживает алгоритм AES256, который можно задействовать, например, в Windows BitLocker либо в каком-то другом совместимом со стандартами IEEE 1667 или TCG Opal 2.0 ПО.
Напомним, при включении аппаратного шифрования может потребоваться не только активировать стандарты IEEE 1667 либо TCG Opal 2.0 в самом SSD (что делается через утилиту), но и также отключить CFM в BIOS и переустановить операционную систему. Также программа SSD Manager будет нужна в случае необходимости отключить шифрование или изменить его ключ.