Эндрю Хуан (
В отличие от других проектов, Precursor предлагает энтузиастам не просто плату, а готовый прототип портативного устройства с алюминиевым корпусом размером 69 x 138 x 7.2 мм, LCD-экраном (336×536), аккумулятором (1100 mAh Li-Ion), миниатюрной клавиатурой, громкоговорителем, вибромотором, акселерометром и гироскопом. Вычислительный модуль поставляется не с готовым процессором, а с программно определяемым SoC на базе FPGA Xilinx XC7S50, на базе которого организована эмуляция 32-разрядного CPU RISC-V, работающего на частоте 100MHz. При этом нет никаких ограничений по эмуляции других аппаратных компонентов, например, может быть эмулирована работа различных процессоров, от 6502 и Z-80 до AVR и ARM, а также звуковых чипов и различных контроллеров. Плата включает 16 MB SRAM, 128 MB Flash, Wi-Fi Silicon Labs WF200C, USB type C, SPI, I²C, GPIO.
Из возможностей, связанных с безопасностью, отмечается наличие двух аппаратных генераторов псевдослучайных чисел. Интересно, что устройство принципиально поставляется без встроенного микрофона — подразумевается, что приём звука возможен только при явном подключении гарнитуры, а если гарнитура отключена то физически невозможно организовать подслушивание, даже если программное обеспечение устройства было скомпрометировано.
Чип для беспроводной связи (Wi-Fi) аппаратно изолирован от остальной платформы и работает в отдельном окружении. Для защиты от несанкционированного доступа также применяется запираемый корпус, отдельный RTC для отслеживания целостности, мониторинг движения в режиме ожидания (всегда включённые акселерометр и гироскоп). Предусмотрено также наличие цепи саморазрушения и мгновенной очистки всех данных, активируемой при помощи AES-ключа.
Для описания аппаратных компонентов применяется FHDL-язык
Betrusted-EC с ядром 18 MHz LiteX VexRISC-V RV32I.
В SoC Betrusted предоставляется встроенный набор криптографических примитивов, таких как генератор псевдослучайных чисел, AES-128, -192, -256 с режимами ECB, CBC и CTR, SHA-2 и SHA-512,
Precursor позиционируется как платформа для создания и верификации прототипов, в то время как Betrusted представляет собой одно из готовых мобильных устройств, созданных на базе Precursor. Так как традиционные анклавы, применяемые для изолированного хранения криптоключей, не защищают от высокоуровневых атак, таких как сбор паролей при помощи кейлоггеров или доступ к сообщениям через создание скриншотов экрана, в Betrusted в реализацию анклава добавлены элементы взаимодействия с пользователем (
Betrusted не пытается заменить собой мобильный телефон, а лишь образует защищённый анклав с вводом и выводом, доступными для аудита. Например, внешний смартфон может использоваться через Wi-Fi как не заслуживающий доверия канал передачи данных, но передаваемые зашифрованные сообщения набираются только на встроенной клавиатуре устройства Betrusted, а полученные сообщения отображаются только на встроенном экране.
Все компоненты Precursor и Betrusted являются открытыми и доступны для модификации и экспериментов под лицензией
Источник: opennet.ru