Сформирован выпуск основной ветки nginx 1.27.1, в рамках которой продолжается развитие новых возможностей, а также выпуск параллельно поддерживаемой стабильной ветки nginx 1.22.1, в которую вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей. В обновлениях устранена уязвимость (CVE-2024-7347) в модуле ngx_http_mp4_module, приводящая к аварийному завершению рабочего процесса при обработке специально оформленного файла в формате MP4. Проблема проявляется начиная с выпуска 1.5.13 при сборке nginx с модулем ngx_http_mp4_module (не собирается по умолчанию) и использовании в настройках директивы mp4. Для устранения уязвимости в старых версиях можно использовать патч.
Помимо уязвимости в выпуске nginx 1.27.1 также устранены ошибки в реализации протокола HTTP/3, переведён в разряд необязательных обработчик в модуле stream и решена проблема с игнорированием новых соединений HTTP/2 при плавном завершении рабочих процессов.
Сформирован выпуск основной ветки nginx 1.27.1, в рамках которой продолжается развитие новых возможностей, а также выпуск параллельно поддерживаемой стабильной ветки nginx 1.22.1, в которую вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей. В обновлениях устранена
После девяти месяцев разработки опубликован релиз Minetest 5.9.0, свободного кроссплатформенного игрового движка в жанре песочница, позволяющего создавать игры в стиле Minecraft, используя различные воксельные блоки для совместного формирования игроками различных структур и построек, образующих подобие виртуального мира. Предоставляемый движком геймплей полностью зависит от набора модов, создаваемых на языке Lua. Движок написан на языке С++ c использованием 3D-библиотеки IrrlichtMt (форк Irrlicht). Код Minetest распространяется под лицензией LGPL, а игровые ресурсы под лицензией CC BY-SA 3.0. Готовые сборки формируются для различных дистрибутивов Linux, Android, FreeBSD, Windows и macOS.
- Добавлена поддержка шейдера "God Rays", также известного как "объёмное освещение". https://honk.any-key.press/d/zK2S2cc33ntQ6Hprn4.png
- Выполнение генератора карт (Lua Mapgen) вынесено в отдельный поток, что позволяет модам использовать собственный механизм генерации карт. Ранее создателям модов приходилось учитывать функции Mapgen, чтобы управлять задержками.
- Улучшена производительность рендеринга частиц, благодаря чему создатели модов могут создавать более сложные эффекты частиц. Данное изменение также может привести к значительному повышению FPS на некоторых устройствах.
Дополнительно можно отметить работу над версией Minetest 5.10.0, в которой расширен набор графических эффектов (например, появятся отражения в воде), добавлена поддержка формата gITF для упрощения создания анимированных моделей и проведён редизайн интерфейса ContentDB в главном меню.
После девяти месяцев разработки опубликован релиз Minetest 5.9.0, свободного кроссплатформенного игрового движка в жанре песочница, позволяющего создавать игры в стиле Minecraft, используя различные воксельные блоки для совместного формирования игроками различных структур и построек, образующих подобие виртуального мира. Предоставляемый движком геймплей полностью зависит от набора модов, создаваемых на языке Lua. Движок написан на языке...
После шести месяцев разработки увидел свет релиз языка программирования Go 1.23, который развивается компанией Google при участии сообщества как гибридное решение, сочетающее высокую производительность компилируемых языков с такими достоинствами скриптовых языков, как лёгкость написания кода, быстрота разработки и защищённость от ошибок. Код проекта распространяется под лицензией BSD.
Синтаксис Go основан на привычных элементах языка Си с отдельными заимствованиями из языка Оберон. Язык достаточно лаконичен, но при этом код легко читается и воспринимается. Код на языке Go компилируется в обособленные бинарные исполняемые файлы, выполняемые нативно, без использования виртуальной машины (модули профилирования, отладки и другие подсистемы выявления проблем на этапе выполнения интегрируются в виде runtime-компонентов), что позволяет добиться производительности, сопоставимой с программами на языке Си.
Проект изначально разрабатывается с оглядкой на многопоточное программирование и эффективную работу на многоядерных системах, в том числе предоставляя реализованные на уровне операторов средства для организации параллельных вычислений и взаимодействия между параллельно выполняемыми методами. Язык также предоставляет встроенные средства защиты от выхода за допустимые области выделенных блоков памяти и обеспечивает возможность использования сборщика мусора.
- В циклах "for" при определении диапазонов значений появилась возможность указания функции в качестве аргумента выражения "range" для использования этой функции в качестве итератора, что позволяет создавать собственные итераторы для любых последовательностей. Возможно указание функций следующих типов: func(func() bool), func(func(K) bool) и func(func(K, V) bool). Добавлен новый пакет iter, предоставляющий базовые операции для организации перебора последовательностей. Кроме того, в пакеты slices и maps добавлены новые возможности для работы с итераторами. Например, для перебора ключей ассоциативного массива в отсортированном виде теперь можно указать "for i, x := range slices.Sorted(maps.Keys(m)) {...}".
- Добавлена предварительная поддержка (включается через GOEXPERIMENT=aliastypeparams) использования псевдонимов типов со своими параметрами в обобщённых функциях (дженериках), при помощи которых можно создавать функции для работы сразу с несколькими типами.
- В инструментарий встроена возможность отправки телеметрии на сервер telemetry.go.dev, охватывающей только данные об особенностях работы с инструментарием (телеметрия не добавляется в пользовательские приложения, собираемые при помощи инструментария). Телеметрия сохраняется в локальных файлах, доступных для аудита. По умолчанию отправка на внешний сервер телеметрии отключена (opt-in) и требует активации при помощи новой команды "go telemetry on". Отправка телеметрии поможет выявить аномалии и нештатное поведение, оценить особенности взаимодействия разработчиков с инструментарием и понять, какие опции наиболее востребованы, а какие почти не используются. Предполагается, что накопленная статистика даст возможность модернизировать инструментарий, позволит повысить эффективность и удобство работы. https://honk.any-key.press/d/nSRZL73s77Jy7KQLZB.png
- Добавлена команда "go env -changed" для вывода только настроек, значения которых отличаются от значений по умолчанию.
- Добавлена команда "go mod tidy -diff", позволяющая вместо внесения изменений в файлы, вывести изменения в форме патча в формате diff.
- В команду "go vet" добавлен анализатор версий, показывающий элементы, слишком новые для использования в выбранной версии Go. Например, анализатор выдаст предупреждение об использовании функции reflect.TypeFor, появившейся в версии 1.22, при попытке использования в модуле, заявляющем поддержку версии 1.21.
- Улучшена реализация типов time.Timer и time.Ticker, в которые внесены изменения связанные с буферизацией и оптимизацией сборки мусора.
- Добавлен пакет structs, определяющий типы для изменения свойств структуры.
- Добавлен пакет unique с функциями для канонизации сопоставимых значений.
- В файлы go.mod и go.work добавлена поддержка директивы godebug для управления отладкой.
- Добавлена экспериментальная поддержка OpenBSD на 64-разрядных системах RISC-V (openbsd/riscv64). Улучшена поддержка Linux, macOS, ARM64, RISC-V и WASI.
- Повышена производительность на архитектурах i386 и amd64 при включении оптимизации на основе результатов профилирования кода (PGO - Profile-guided optimization), позволяющей учитывать особенности, определяемые во время выполнения программы.
После шести месяцев разработки увидел свет релиз языка программирования Go 1.23, который развивается компанией Google при участии сообщества как гибридное решение, сочетающее высокую производительность компилируемых языков с такими достоинствами скриптовых языков, как лёгкость написания кода, быстрота разработки и защищённость от ошибок. Код проекта
Национальный институт стандартов и технологий США (NIST) представил первые три стандарта, определяющие криптоалгоритмы, стойкие к подбору на квантовом компьютере. Первый стандартизированный алгоритм (CRYSTALS-Kyber) определяет способ инкапсуляции ключей и предназначен для шифрования обмена данными, а два других (CRYSTALS-Dilithium и Sphincs+) реализуют варианты формирования цифровых подписей, которые могут использоваться для решения задач, связанных с аутентификацией. Для того, чтобы избежать путаницы стандартизированные варианты алгоритмов переименованы: CRYSTALS-Kyber в ML-KEM, CRYSTALS-Dilithium в ML-DSA, а Sphincs+ в SLH-DSA. Выбранные алгоритмы разрабатываются с 2016 года и являются победителями ранее объявленного NIST конкурса по разработке алгоритмов постквантовой криптографии.
Активно развивающиеся последнее время квантовые компьютеры кардинально быстрее решают задачи разложения натурального числа на простые множители (RSA) и дискретного логарифмирования точек эллиптической кривой (ECDSA), которые лежат в основе современных асимметричных алгоритмов шифрования по открытым ключам, эффективно не решаемых на классических процессорах. На текущем этапе развития возможностей квантовых компьютеров пока недостаточно для взлома актуальных классических алгоритмов шифрования и цифровых подписей на базе открытых ключей, таких как ECDSA, но предполагается, что ситуация может измениться уже в этом десятилетии.
Принятые стандарты:
- FIPS 203 - рассматривается как основной стандарт для шифрования данных, использующий алгоритм CRYSTALS-Kyber (ML-KEM - Module-Lattice Key-Encapsulation Mechanism) для организации обмена ключами между сторонами, выполняющими шифрование и расшифровку данных. Алгоритм CRYSTALS-Kyber использует методы криптографии, основанные на решении задач теории решёток, время решения которых не отличается на обычных и квантовых компьютерах. Достоинствами выбранного алгоритма являются относительно небольшой размер ключей и высокая скорость работы.
- FIPS 204 - первичный стандарт для формирования цифровых подписей, основанный на алгоритме CRYSTALS-Dilithium (ML-DSA - Module-Lattice Digital Signature Algorithm), который как и CRYSTALS-Kyber базируется на теории решёток.
- FIPS 205 - альтернативный стандарт для формирования цифровых подписей, использующий алгоритм Sphincs+ (SLH-DSA - Stateless Hash-Based Digital Signature Algorithm), который применяет методы криптографии на основе хеш-функций. Sphincs+ отстаёт от CRYSTALS-Dilithium по размеру подписей и скорости работы, но базируется на совершенно иных математических принципах, т.е. останется эффективен в случае компрометации алгоритмов на основе теории решёток.
Кроме того, до конца года планируется утвердить четвёртый стандарт - FIPS 206, предназначенный для работы с цифровыми подписями и основанный на алгоритме FALCON, который как и алгоритмы CRYSTALS-Kyber и CRYSTALS-Dilithium основан на решении задач теории решёток, но в отличие от них ориентирован на применения, в которых требуется минимальный размер подписи. Стандартизированный вариант алгоритма FALCON будет поставляться под именем FN-DSA (FFT (быстрое преобразование Фурье) over NTRU-Lattice Digital Signature Algorithm). До конца года также планируется выбрать алгоритмы для создания альтернативных стандартов общего шифрования, которые будут основаны на иных принципах работы, чем задействованные в стандарте FIPS 203 на базе алгоритма CRYSTALS-Kyber.
Национальный институт стандартов и технологий США (NIST) представил первые три стандарта, определяющие криптоалгоритмы, стойкие к подбору на квантовом компьютере. Первый стандартизированный алгоритм (CRYSTALS-Kyber) определяет способ инкапсуляции ключей и предназначен для шифрования обмена данными, а два других (CRYSTALS-Dilithium и Sphincs+) реализуют варианты формирования цифровых подписей, которые могут использоваться для решения задач,...
Опубликован релиз web-браузера Pale Moon 33.3.0, ответвившегося от кодовой базы Firefox для обеспечения более высокой эффективности работы, сохранения классического интерфейса, минимизации потребления памяти и предоставления дополнительных возможностей по настройке. Сборки Pale Moon формируются для Windows и Linux (x86_64). Код проекта распространяется под лицензией MPLv2 (Mozilla Public License).
Проект придерживается классической организации интерфейса, без перехода к интегрированным в Firefox 29 и 57 интерфейсам Australis и Photon, и с предоставлением широких возможностей кастомизации. Из удалённых компонентов можно отметить DRM, Social API, WebRTC, PDF-просмотрщик, Сrash Reporter, код для сбора статистики, средства для родительского контроля и людей с ограниченными возможностями. По сравнению с Firefox, в браузер возвращена поддержка расширений, использующих XUL, и сохранена возможность применения как полноценных, так и легковесных тем оформления.
- Для работы сборок для архитектуры x86_64 теперь требуется процессор с поддержкой инструкций AVX (для старых систем сообществом возможно будут формироваться неофициальные сборки, которым достаточно поддержки SSE).
- Для формирования сборок для Linux задействован компилятор GCC 11, что может привести к появлению несовместимости с библиотеками старых дистрибутивов.
- В CSS добавлена частичная поддержка каскадных слоёв, определяемых при помощи правила @layer.
- Добавлена поддержка HTTP-заголовков Sec-Fetch-*, предназначенных для отправки дополнительных метаданных о характере запроса для принятия на сервере мер для защиты от некоторых типов атак;
- На платформе Linux добавлена поддержка FFmpeg 7.0 и libavcodec 61.
- Включён упреждающий DNS-резолвинг имён хостов, упоминаемых в ссылках на странице. Для отключения в настройках сети добавлена соответствующая опция.
- Реализована блокировка обращений к IP-адресу 0.0.0.0.
- Параметры выравнивания и точности в функциях класса toFixed приведены к соответствию спецификации.
- Добавлен атрибут navigator.webdriver, который для Pale Moon всегда принимает значение false.
- Улучшена обработка полей с паролями в web-формах.
- Библиотека NSS обновлена до версии 3.90.4.
- Шрифт с emoji обновлён до версии 15.1.2.
- Удалён код, связанный с экспериментом FoxEye, прекращена поддержка LibAV и проведена чистка использования макросов в коде CSS.
Дополнительно можно отметить корректирующий выпуск Firefox 129.0.1, в котором предложено два исправления: устранена проблема с воспроизведением видео, защищённого DRM (проявляется, например, на вещательной платформе Hulu); исправлено аварийное завершение при перетаскивании мышью видеофайла на некоторые сайты (например, при публикации на x.com/twitter.com).
Опубликован релиз web-браузера Pale Moon 33.3.0, ответвившегося от кодовой базы Firefox для обеспечения более высокой эффективности работы, сохранения классического интерфейса, минимизации потребления памяти и предоставления дополнительных возможностей по настройке. Сборки Pale Moon формируются для
Сформирован релиз специализированного дистрибутива Tails 6.6 (The Amnesic Incognito Live System), основанного на пакетной базе Debian 12, поставляемого с рабочим столом GNOME 43 и предназначенного для анонимного выхода в сеть. Анонимный выход в Tails обеспечивается системой Tor. Все соединения, кроме трафика через сеть Tor, по умолчанию блокируются пакетным фильтром. Для хранения пользовательских данных в режиме сохранения пользовательских данных между запусками применяется шифрование. Для загрузки подготовлен iso-образ, способный работать в Live-режиме, размером 1 ГБ.
В новой версии обновлены Tor Browser 13.5.2, почтовый клиент Thunderbird 115.14.0 и пакеты с прошивками. Улучшена поддержка новых графических карт и беспроводных адаптеров. Разрешено включение одновременно нескольких сетевых интерфейсов. Максимальное время ожидания перед выводом ошибки при невозможности разблокировать постоянное хранилище увеличено до 4 минут. Повышена надёжность создания постоянного хранилища при первом запуска с USB-накопителя. Решена проблема с подключением к сети Tor, используя предлагаемый по умолчанию набор мостовых узлов.
Сформирован релиз специализированного дистрибутива Tails 6.6 (The Amnesic Incognito Live System), основанного на пакетной базе Debian 12, поставляемого с рабочим столом GNOME 43 и предназначенного для анонимного выхода в сеть. Анонимный выход в Tails обеспечивается системой Tor. Все соединения, кроме трафика через сеть Tor, по умолчанию блокируются пакетным фильтром. Для хранения пользовательских данных в режиме сохранения пользовательских данных между запусками применяется...
Опубликован выпуск свободной PaaS-платформы Cozystack 0.11.0, построенной на базе Kubernetes. Проект нацелен на предоставление готовой платформы для хостинг-провайдеров и фреймворка для построения частных и публичных облаков. Платформа устанавливается напрямую на серверы и охватывает все аспекты подготовки инфраструктуры для предоставления управляемых сервисов. Cozystack позволяет запускать и предоставлять кластеры Kubernetes, базы данных и виртуальные машины. Код платформы доступен на GitHub и распространяется под лицензией Apache-2.0.
В качестве базового стека технологий используется Talos Linux и Flux CD. Образы с системой, ядром и необходимыми модулями формируются заранее, и обновляются атомарно, что позволяет обойтись без таких компонентов как dkms и пакетный менеджер, и гарантировать стабильную работу. Предоставляется простой метод установки в пустом дата-центре с помощью PXE и debian-подобного установщика talos-bootstrap.
Платформа включает свободную реализацию сетевой инфраструктуры (fabric) на базе Kube-OVN, и использует Cilium для организации сервисной сети, MetalLB для анонса сервисов наружу. Хранилище реализовано на LINSTOR, где предлагается использование ZFS в качестве базового слоя для хранилища и DRBD для репликации. Имеется преднастроенный стек мониторинга на базе VictoriaMetrics и Grafana. Для запуска виртуальных машин используется технология KubeVirt, которая позволяет запускать классические виртуальные машины прямо в контейнерах Kubernetes и уже имеет все необходимые интеграции с Cluster API для запуска управляемых Kubernetes-кластеров внутри "железного" Kubernetes-кластера.
В новой версии:
- Добавлена поддержка S3. Подготовлена базовая реализация SeaweedFS в Cozystack. Написан Kubernetes-COSI-драйвер для автоматического заказа S3-бакетов (S3 Bucket). В пакет (chart) со SeaweedFS добавлена поддержка автоматического изменения размера томов.
- Реализована сетевая изоляция между арендаторами (tenant). Произведена большая работа по улучшению сетевой изоляции между арендаторами, исправлены ошибки, полностью переработаны сетевые политики.
- Обновлён интерфейс пользователя. Заменены все пиктограммы сервисов. Сводный экран (dashboard) переработан так, чтобы выводить только необходимую информацию в ResourceView. Добавлена возможность указывать конкретные ресурсы для показа посредством перечисления их в специальной роли ‹name›-dashboard-resources. https://honk.any-key.press/d/M8L2y3WwJBbGB7jKxz.png
- В документации добавлен раздел Development Guide и обновлена инструкция по установке в Hetzner.
- Сетевая система Cilium обновлена до версии 1.16, в которую включён патч для автоматического определения устройств, подготовленный разработчиками Cozystack.
- Решена проблема со сборщиком мусора в tenant Kubernetes-кластерах.
- Решена проблема с пробросом HTTP- и HTTPS-трафика с помощью ingress в tenant Kubernetes-кластера.
- Добавлены snapshot-controller и object-storage-controller.
- LINSTOR обновлён до версии 1.28.
- Talos Linux обновлён до версии 1.7.6
- Kube-OVN переведён на сборку из стабильной базы.
Опубликован выпуск свободной PaaS-платформы Cozystack 0.11.0, построенной на базе Kubernetes. Проект нацелен на предоставление готовой платформы для хостинг-провайдеров и фреймворка для построения частных и публичных облаков. Платформа устанавливается напрямую на серверы и охватывает все аспекты подготовки инфраструктуры для предоставления управляемых сервисов. Cozystack позволяет запускать и предоставлять кластеры Kubernetes, базы данных...
Компания Oligo Security опубликовала информацию об уязвимости, затрагивающей Chrome, Firefox и Safari, и позволяющей обойти ограничение доступа к сетевым службам, доступным только на локальной системе, через обращение по IP-адресу 0.0.0.0. Первые предупреждения об уязвимости были опубликованы ещё 18 лет назад, но до сих пор проблема так и не была исправлена.
Уязвимость, которая проявляется только в Linux и macOS, вызвана тем, что IP-адрес 0.0.0.0 на данных платформах приводит обращению к локальному сетевому интерфейсу (localhost), т.е. отправка запроса на 0.0.0.0 аналогична запросу к адресу 127.0.0.1. В современных браузерах имеются средства для противодействия обращению к 127.0.0.1 при работе с внешними сайтами, так как оно может использоваться для манипуляций с внутренними сервисами на системе пользователя, доступными только локальным приложениям.
Уявзимость позволяет обойти запрет обращения к 127.0.0.1 и организовать атаку на внутренние сервисы при открытии в браузере внешней страницы, подконтрольной атакующему. При обращении через 0.0.0.0 механизмы CORS (Cross-Origin Resource Sharing) и PNA (Private Network Access) не могут помешать совершению подобной атаки. Отмечается, что проблема не столь безобидна, как кажется, и уже используется злоумышленниками в процессе совершения реальных атак, эксплуатирующих критические уязвимости в серверных приложениях, доступ к которым открыт только для локальной системы.
Например, использование 0.0.0.0 для доступа к локальным сервисам зафиксировано в выявленных в марте и июле атаках ShadowRay и Selenium Grid, которые использовались для организации выполнения кода на системах разработчиков. В случае атаки ShadowRay целью были системы разработчиков, использующих AI-фреймворк Ray. Вторая атака была нацелена на эксплуатацию критической уязвимости в платформе Selenium Grid в конфигурациях, принимающих запросы только с локального хоста.
Дополнительно, упоминается возможность применения метода для эксплуатации уязвимости ShellTorch в сервере PyTorch TorchServe, используемом на компьютерах разработчиков AI-приложений. Доступ к сетевым сервисам локального хоста также может использоваться для сканирования сетевых портов с целью косвенной идентификации пользователя.
Разработчики Firefox подготовили изменение спецификации для вызова Fetch, запрещающее доступ к 0.0.0.0, но пока не определили время начала блокировки в браузере. В Chrome доступ к 0.0.0.0 планируют начать блокировать в выпуске Chrome 128, ожидаемом на следующей неделе. В Safari блокировку 0.0.0.0 планируют реализовать в выпуске Safari 18.
Компания Oligo Security опубликовала информацию об уязвимости, затрагивающей Chrome, Firefox и Safari, и позволяющей обойти ограничение доступа к сетевым службам, доступным только на локальной системе, через обращение по IP-адресу 0.0.0.0. Первые предупреждения об уязвимости были
Сформирован выпуск дистрибутива RebeccaBlackOS 2024-08-12, нацеленного на ознакомление с последними наработками, связанными с поддержкой Wayland в различных десктоп-окружениях и приложениях. Дистрибутив построен на пакетной базе Debian и включает свежие сборки библиотек Wayland (срез из master-ветки), композитный сервер Weston и преднастроенные для работы поверх Wayland окружения KDE, GNOME, Wayfire (с компонентами MATE), Sway, LXQt и Xfce. Выбор окружения производится через меню менеджера входа, при этом возможен запуск оболочки из уже запущенного окружения в форме вложенного сеанса. Для загрузки доступен iso-образ размером 1.7 Гб.
В состав дистрибутива включены свежие версии библиотек Clutter, SDL, GTK, Qt, FreeGLUT, GLFW, KDE Frameworks и Gstreamer, собранных с поддержкой Wayland, и компонент Xwayland, позволяющий запускать обычные X-приложения в окружении, сформированном при помощи композитного сервера Weston. В дистрибутив также входят собранные в качестве клиентов Wayland варианты медиаплеера mpv и приложений KDE. Для настройки udev и параметров multiseat-конфигураций, в которых за одним рабочим столом может одновременно работать несколько человек со своими клавиатурами и мышами (у каждого пользователя свой независимый курсор), предоставляется специальный графический конфигуратор. В Weston включена поддержка RDP. В поставку включена утилита waypipe для удалённого запуска приложений на базе Wayland.
Основные изменения:
- Пакетная база обновлено до Debian 12.
- Ядро Linux обновлено до версии 6.10. Включён режим DRM Panic для отображения в случае сбоев наглядного цветного отчёта в стиле "синего экрана смерти".
- Включён драйвер ttynull и задействованы патчи для использования /dev/ttynull в качестве консоли по умолчанию (позволяет systemd корректно отображать лог через /dev/console).
- Из поставки удалён Qt5 и оставлен только Qt6.
- Во входящий в поставку systemd-logind 252 из systemd-logind 257 перенесена поддержка SAK (SecureAttentionKey).
- В менеджере входа в систему waylandloginmanager обеспечена возможность запуска нескольких параллельных сеансов одного пользователя. Вместо zenity для организации интерфейса задействован kdialog. В интерфейсе переключения между сеансами обеспечен показ названий сеансов.
- Вместо wlsuhelper задействован более простой в использовании wlsu.
- Унифицировано оформление загрузочного меню GRUB, загрузочной заставки и менеджера входа. Обеспечен более ранний запуск заставки Plymouth, показываемой в процессе загрузки.
- Добавлен новый сеанс со средой рабочего стола LXQt.
- Из сборки исключены проекты Liri, Mir, Enlightenment и Wine. Liri исключён из-за неготовности порта на базе Qt6, а остальные из-за ограничений на размер iso-образа.
- Из-за проблем со сборкой QtWebEngine в 32-разрядном chroot-окружении, прекращено формирование iso-образа для 32-разрядных систем.
Сформирован выпуск дистрибутива RebeccaBlackOS 2024-08-12, нацеленного на ознакомление с последними наработками, связанными с поддержкой Wayland в различных десктоп-окружениях и приложениях. Дистрибутив построен на пакетной базе Debian и включает свежие сборки библиотек
Опубликован выпуск композитного сервера Hyprland 0.42, использующего протокол Wayland. Композитный сервер ориентирован на мозаичную (tiling) компоновку окон, но также поддерживает и классическое произвольное размещение окон, группировку окон в форме вкладок, псевдомозаичный режим и полноэкранное раскрытие окон. Поддерживаются элементы для создания визуально привлекательных интерфейсов, такие как градиенты в обрамлении окон, размытие, анимационные эффекты и тени. Для расширения функциональности могут подключаться плагины, а для внешнего управления работой предоставляется IPC на базе сокетов. Код написан на языке С++ и распространяется под лицензией BSD.
Для повышения производительности игр предоставляется возможность отключения вертикальной синхронизации (VSync) с кадровым гасящим импульсом, применяемую для защиты от появления разрывов при выводе (tearing). Настройка осуществляется через файл конфигурации, изменения в котором подхватываются на лету без перезапуска. Среди возможностей также выделяется поддержка динамически создаваемых виртуальных рабочих столов, два встроенных режима компоновки элементов на экране и система глобальной обработки горячих клавиш.
Новый выпуск примечателен полным избавлением от привязки к библиотеке wlroots в пользу собственной релизации протокола Wayland и библиотеки отрисовки aquamarine, реализующей бэкенды для Wayland, DRM (Direct Rendering Manager) и работы без экрана (Headless). В новой версии также добавлена поддержка механизма "explicit sync", дающего возможность снизить задержки, избавиться от появления артефактов и устранить подвисания при выводе графики на системах с GPU NVIDIA.
Опубликован выпуск композитного сервера Hyprland 0.42, использующего протокол Wayland. Композитный сервер ориентирован на мозаичную (tiling) компоновку окон, но также поддерживает и классическое произвольное размещение окон, группировку окон в форме вкладок, псевдомозаичный режим и полноэкранное раскрытие окон. Поддерживаются элементы для создания визуально привлекательных интерфейсов, такие как градиенты в обрамлении окон, размытие, анимационные...
Доступен выпуск проекта Frigate 0.14, предоставляющего средства для создания сетевых видеорегистраторов (NVR, Network Video Recorder) в реальном режиме времени анализирующих видео, передаваемое с IP-камер видеонаблюдения, а также выявляющих и фиксирующих изменения и объекты. Например, система может сохранять изображений людей, проходивших мимо камеры. Для выявления объектов используется модель машинного обучения, выполняемая на локальной системе без обращения к внешним сервисам. Код платформы написан на языке Python и распространяется под лицензией MIT.
Для обработки передаваемых с камеры изображений и определения объектов используются OpenCV и Tensorflow. Система оптимизирована для минимального потребления ресурсов и использует многопроцессную модель запуска моделей. Для снижения нагрузки определение объектов выполняется только в привязке к определению изменений и движения. Возможна интеграция с различными системами домашней автоматизации, поддерживающими протокол MQTT (Message Queuing Telemetry Transport), такими как Home Assistant и OpenHab. Управление производится через web-интерфейс, который может быть интегрирован непосредственно в интерфейс Home Assistant.
Из особенностей упоминается низкий уровень ложных срабатываний, возможность раздельного определения объектов (люди, машины), поддержка опционального задействования устройств Google Coral TPU для ускорения обработки видео в режиме реального времени (Frigate может обрабатывать более 100 операций определения объектов в секунду), возможность определения зон срабатывания и точного времени вторжения, гибкая система отправки оповещений. Система также поддерживает ретрансляцию видео и просмотр в Live-режиме при помощи WebRTC и RTSP, что позволяет снизить число подключений к камере.
Новый выпуск примечателен добавлением нового полностью переписанного интерфейса пользователя, который оптимизирован для настольных и мобильных систем. Интерфейс позволяет быстро оценить состояние в данный момент и изучить недавно произошедшие события, получить live-доступ к изображению камер, просмотреть сводное состояние камер и отследить историю событий, которые наглядно отобраюатся в виде анимированных миниатюр. Добавлена поддержка аутентификации, определения ролей доступа (администратор, пользователь) и подключения с использованием прокси, таких как authelia, authentik и oauth2_proxy.
Улучшен интерфейс для пересмотра записанного видео, в котором теперь можно быстро переключаться между моментами, на которых зафиксировано движение и выявлены объекты. Выявленные события разделены на категории важности и типы объектов, добавлена возможность фильтрации на основе приоритетов (например, ситуация пересечения человеком границы собственности имеет более высокий приоритет, чем определение рядом гуляющего человека). Реализована возможность разделения камер на группы.
Доступен выпуск проекта Frigate 0.14, предоставляющего средства для создания сетевых видеорегистраторов (NVR, Network Video Recorder) в реальном режиме времени анализирующих видео, передаваемое с IP-камер видеонаблюдения, а также выявляющих и фиксирующих изменения и объекты. Например, система может сохранять изображений людей, проходивших мимо камеры. Для выявления объектов используется модель машинного обучения, выполняемая на...
Дэниел Cтенберг (Daniel Stenberg), автор утилиты для получения и отправки данных по сети curl, объявил о принятии в состав проекта утилиты wcurl. Утилита wcurl теперь признана официальным проектом curl, но при этом её разработка будет продолжена прежними сопровождающими в отдельном репозитории, независимо от curl. Утилиту развивает один из мэйнтейнеров Debian, сопровождающий пакет с curl. В Debian Testing, Debian Unstable и в бэкпортах Debian 12 утилита wcurl уже поставляется в составе пакета curl. Код утилиты wcurl написан на Shell и распространяется под лицензией Curl (вариант лицензии MIT).
Новая утилита представляет собой обвязку над curl, реализующую упрощённый интерфейс для загрузки файлов, напоминающий по принципу запуска утилиту wget и избавляющий пользователя от необходимости запоминать специфичные параметры запуска curl (например, многим проще установить wget, чем каждый раз набирать "curl -L -O -C --remote-time"). В отличие от curl утилита wcurl позволяет указать сразу несколько ссылок для загрузки, автоматически обрабатывает перенаправления и предпринимает повторные попытки загрузки в случае сбоев.
Вместо вывода в стандартный поток wcurl сохраняет загруженную информацию в файлы, имена которых выбираются на основе содержимого указанных ссылок или имени, возвращённом сервером, а время изменения файла выставляется в значение, которое сервер возвращает в HTTP-заголовке Last-modified. Если файл с выбранным именем уже существует, wcurl не перезаписывает его, а добавляет дополнительную цифру к имени. При указании нескольких ссылок, обеспечивается их параллельная загрузка.
Утилита также отключает обработку подстановок "{}" и "[]" в URL и допускает использование пробелов в ссылках, самостоятельно заменяя их на формат "%xx". При помощи опции "--curl-options" пользователю предоставляется возможность задания любых опций curl, а через опцию "--dry-run" определения строки для запуска curl без фактического выполнения операции.
В анонсе также упоминается утилита trurl, созданная автором curl в прошлом году и дополняющая curl возможностями для разбора и манипуляции URL. При помощи утилиты trurl можно в скриптах быстро выполнять такие действия, как замена имени хоста, страниц и отдельных параметров в ссылке, выделение хоста и пути из ссылки, преобразование URL в раздельное представление элементов в формате JSON. Код trurl написан на C и Perl, и распространяется под лицензией Curl.
Дэниел Cтенберг (Daniel Stenberg), автор утилиты для получения и отправки данных по сети curl, объявил о принятии в состав проекта утилиты wcurl. Утилита wcurl теперь признана официальным проектом curl, но при этом её разработка будет продолжена прежними сопровождающими в отдельном репозитории, независимо от curl. Утилиту
В поставляемом в составе FreeBSD сервере OpenSSH выявлена уязвимость (CVE-2024-7589), позволяющая добиться удалённого выполнения кода с правами root без прохождения аутентификации. Уязвимость является вариантом выявленной в начале июля проблемы в OpenSSH (CVE-2024-6387) и также вызвана состоянием гонки, возникающем из-за выполнения в обработчике сигналов функций, не рассчитанных на вызов в асинхронном режиме.
Разработчики FreeBSD устранили исходную июльскую уязвимость сразу после анонса, но исправление не охватывало всех возможных векторов атаки. Исправление сводилось к отключению вызова функции sshlogv, выделяющей память динамически, что при асинхронном выполнении могло привести к повреждению внутренних структур malloc при срабатывании обработчика сигнала SIGALRM во время выполнения определённого кода. Как оказалось, похожая проблема возникала в специфичном для FreeBSD вызове функции blacklist_notify, обеспечивающем интеграцию с фоновым процессом blacklistd.
Помимо применения патча, уязвимость можно блокировать через выставление в /etc/ssh/sshd_config параметра "LoginGraceTime=0", но при этом отключение таймаута упростит инициирование отказа в обслуживании при установке большого числа соединений, превышающих лимиты, заданные через параметр MaxStartups.
Кроме того, устранены ещё три уязвимости во FreeBSD:
- CVE-2024-6760 - возможность обхода защиты от применения ktrace для трассировки suid-процессов, что позволяет непривилегированному пользователю получить доступ к содержимому файлов, для чтения которых у него нет прав, например, можно прочитать содержимое файла с хэшами паролей пользователей.
- CVE-2024-6759 - в NFS-клиенте выявлена возможность использования в именах файлов символов разделения путей ".." и "/";
- CVE-2024-6640 - уязвимость в пакетном фильтре PF, из-за которой пакеты ICMPv6 с нулевым идентификатором не подпадали под правила межсетевого экрана, рассчитанные на то, что входящие пакеты отражаются в таблице состояния (state table).
В поставляемом в составе FreeBSD сервере OpenSSH выявлена уязвимость (CVE-2024-7589), позволяющая добиться удалённого выполнения кода с правами root без прохождения аутентификации. Уязвимость является вариантом
В рамках проекта Verso ведётся разработка нового web-браузера, построенного на основе движка Servo. Код Verso, как и Servo, написан на языке Rust и распространяется под лицензиями MIT и Apache 2.0. Браузер пока находится на ранней стадии развития и, помимо предоставляемых движком Servo средства для обработки web-контента, реализует простой интерфейс пользователя. Готовые для тестирования сборки публикуются для Linux (flatpak), Windows и macOS.
Отрисовка в Verso осуществляется с использованием собственного композитного менеджера, использующего OpenGL и взаимодействующего с Servo при помощи средств обмена сообщениями, предоставляемых фреймворком Constellation. В настоящее время работа сосредоточена на реализацииподдержки многооконного интерфейса, использующего разные контексты отрисовки в одном экземпляре движка Servo. Из дальнейших планов развития проекта упоминается поддержка мноопроцессного режима, sandbox-изоляция для всех платформ и задействование возможностей мультимедийного фреймворка Gstreamer.
Проект Servo изначально развивался компанией Mozilla, но затем перешёл под покровительство организации Linux Foundation. Движок отличается поддержкой многопоточного рендеринга web-страниц, распараллеливанием операций с DOM (Document Object Model) и задействованием предоставляемых языком Rust механизмов безопасного программирования. Servo изначально создан с поддержкой разбиения кода DOM и рендеринга на более мелкие подзадачи, которые могут выполняться параллельно и более эффективно использовать ресурсы многоядерных CPU. В Firefox уже интегрированы некоторые части Servo, такие как многопоточный CSS-движок и система отрисовки WebRender.
Из связанных с Servo проектов также можно отметить сотрудничество разработчиков Servo и операционной системы Redox, разрабатываемой на Rust и использующей концепцию микроядра. Отмечается, что команды Servo и Redox подали заявку на получение гранта для портирования JavaScript-движка SpiderMonkey и Servo WebRender, улучшения инструментов для кросс-компиляции Servo и написания на языке Rust стека для работы с шрифтами.
В рамках проекта Verso ведётся разработка нового web-браузера, построенного на основе движка Servo. Код Verso, как и Servo, написан на языке Rust и распространяется под лицензиями MIT и Apache 2.0. Браузер пока находится на ранней стадии развития и, помимо предоставляемых движком Servo средства для обработки web-контента, реализует простой интерфейс пользователя. Готовые для тестирования сборки
После более года разработки подготовлен первый рабочий порт браузера Firefox для открытой операционной системы Haiku, продолжающей развитие идей BeOS. Готовые установочные сборки пока не публикуются, для желающих использовать Firefox в Haiku предлагается выполнить сборку из исходных текстов. До сих пор в Haiku предлагались браузеры WebPositive, Epiphany и Falkon, использование которых создавало трудности из-за излишнего подозрительного отношения к ним некоторых сетей доставки контента и крупных сайтов.
По данным одного из разработчиков Haiku в начале 2000-х годов энтузиасты ОС BeOS стали одними из вдохновителей создания Firefox. В то время в рамках проекта Bezilla развивался порт пакета Mozilla Suite для ОС BeOS. Так как пакет был слишком раздут связанное с BeOS сообщество попыталось создать на его основе легковесный вариант, в котором был оставлен только бразуер и удалены все остальные компоненты, такие как почтовый клиент и редактор web-страниц. Разработчики из Mozilla посчитали идею заслуживающей внимания и выпустили собственный обособленный вариант браузера под именем Phoenix, из-за пересечения с торговой маркой переименованный в Firebird, а затем ещё раз переименованный в Firefox из-за пересечения с названием свободной СУБД.
После более года разработки подготовлен первый рабочий порт браузера Firefox для открытой операционной системы Haiku, продолжающей развитие идей BeOS. Готовые установочные сборки пока не публикуются, для желающих использовать Firefox в Haiku предлагается выполнить сборку из
Разработчики экспериментального браузера Ladybirdобъявили о намерении использовать язык программирования Swift в качестве основного для своего проекта. Включение в состав кода на Swift планируется начать осенью, после выхода релиза Swift 6 (использовать ветку Swift 5 мешает привязка к старой версии Clang, несовместимой с текущей кодовой базой Ladybird на С++). Благодаря возможности совмещения кода на С++ и Swift, внедрение Swift будет производиться постепенно без переписывания имеющегося кода.
Выбор Swift обусловлен рядом преимуществ, включая безопасные методы работы с памятью, защиту от состояний гонки, современный синтаксис и эргономику. Особое значение для команды Ladybird имеет объектно-ориентированная природа Swift, что позволяет точнее моделировать веб-спецификации и внутренние компоненты браузера. Разработчики также отмечают улучшающуюся поддержку Swift для не-Apple платформ и активную работу над совместимостью с C++, что открывает путь к постепенному внедрению языка в проект. Несмотря на исторические связи Swift с Apple, язык становится всё более независимым, о чём свидетельствует, например, перенос его репозитория в отдельную организацию на GitHub.
Андреас Клинг, основатель проекта Ladybird, поделился своими мыслями о Rust. По мнению Клинга, хотя Rust обладает впечатляющей экосистемой, он менее удобен для разработки долгоживущих программ с большими сложными графами объектов. Кроме того, Клинг охарактеризовал сообщество Rust как "токсичное".
Напомним, что изначально браузер Ladybird развивался в рамках проекта по разработке операционной системы SerenityOS. В июне 2024 года, Андреас Клинг, который в своё время работал в компании Nokia и занимался разработкой Safari, решил отделить проект браузера от проекта операционной системы, и полностью посвятить своё время его разработке. В июле проект получил пожертвование в 1 млн. долларов и приступил к формированию некоммерческой организации Ladybird Browser Initiative.
Браузер написан на языке С++ и распространяется под лицензией BSD. Проектом развивается собственный движок LibWeb, JavaScript-интерпретатор LibJS, библиотека отрисовки текста и 2D-графики LibGfx, движок для регулярных выражений LibRegex, XML-парсер LibXML, интерпретатор промежуточного кода WebAssembly (LibWasm), библиотека для работы с Unicode LibUnicode, библиотека для преобразования текстовых кодировок LibTextCodec, парсер для разметки Markdown (LibMarkdown), библиотеки с криптографическими примитивами (LibCrypto, LibTLS), библиотека для работы с архивами LibArchive, библиотеки для воспроизведения звука и видео (LibAudio, LibVideo) и библиотека LibCore с общим набором полезных функций, таких как преобразование времени, ввода/вывод и обработка MIME-типов.
В Ladybird применяется многопроцессная архитектура, в которой занимающийся формированием интерфейса процесс отделён от процессов, обеспечивающих обработку web-контента, отправку запросов по сети, декодирование изображений и хранение Cookie. Связанные с декодированием изображений и сетевым взаимодействием обработчики выделены в отдельные процессы для усиления изоляции и защиты. Для каждой вкладки используется отдельный процесс обработки web-контента, изолированный от остальной системы. Для построения интерфейса в macOS используется AppKit, в Android - родной для данной платформы API создания графического интерфейса, а на остальных платформах - Qt. Поддерживаются основные web-стандарты (браузер проходит тесты Acid3), HTTP/1.1 и HTTPS. Графический интерфейс оформлен в классическом стиле и поддерживает вкладки.
Разработчики экспериментального браузера Ladybirdобъявили о намерении использовать язык программирования Swift в качестве основного для своего проекта. Включение в состав кода на Swift планируется начать осенью, после выхода релиза Swift 6 (использовать ветку Swift 5 мешает привязка к старой версии Clang, несовместимой с текущей кодовой базой Ladybird на С++). Благодаря возможности совмещения кода на С++ и Swift, внедрение...
Опубликован экспериментальный выпуск открытой реализации Win32 API - Wine 9.15. С момента выпуска 9.14 было закрыто 18 отчётов об ошибках и внесено 240 изменений.
- В движок MSHTML добавлена поддержка прототипов и конструкторов объектов.
- Расширена поддержка собранных для Windows ODBC-драйверов к СУБД.
- Закрыты отчёты об ошибках, связанные с работой приложений: WinProladder 3.x, FTDI Vinculum II IDE, UK's Kalender, Splashtop RMM 3.6.6.0.
- Закрыты отчёты об ошибках, связанные с работой игр: Desperados: Dead or Alive, Final Fantasy XI Online, Jade Empire, Star Wars: Knights of the Old Republic, Doom 3: BFG Edition, Astra 2, ChessBase 17.
Опубликован экспериментальный выпуск открытой реализации Win32 API - Wine 9.15. С момента выпуска 9.14 было закрыто 18 отчётов об ошибках и внесено 240 изменений.
- В движок MSHTML добавлена поддержка прототипов и конструкторов объектов.
- Расширена поддержка собранных для Windows ODBC-драйверов к СУБД.
- Закрыты отчёты об ошибках, связанные с работой приложений: WinProladder 3.x, FTDI Vinculum II IDE, UK's Kalender, Splashtop RMM 3.6.6.0.
- Закрыты...
Исследователи из компании IOActive выявилиуязвимость (CVE-2023-31315) в процессорах AMD, которая при привилегированном локальном доступе к системе позволяет изменить конфигурацию SMM (System Management Mode, Ring -2), даже если включён механизм блокировки SMM (SMM Lock), а также потенциально даёт возможность добиться выполнения кода на уровне SMM. Уровень SMM, имеющий более высокий приоритет, чем режим гипервизора и нулевое кольцо защиты, позволяет получить неограниченный доступ ко всей системной памяти и может использоваться для контроля за операционной системой.
Уязвимость, которая получила кодовое имя Sinkclose, вызвана некорректной проверкой моделезависимых регистров (MSR, Model Specific Register). За SMM закрепляется область физических страниц памяти, к которой блокируется доступ на уровне контроллера памяти. Выявленная уязвимость позволяет обойти данную блокировку через манипуляцию с определёнными регистрами MSR, запись в которые не была запрещена несмотря на выставление режима SMM Lock.
Эксплуатация уявзимости может быть совершена из нулевого кольца защиты, на котором работает ядро операционной системы, и использоваться, например, для сохранения своего присутствия после эксплуатации других уязвимостей в системе или применения методов социальной инженерии. Операционная система не может отслеживать и контролировать выполнение кода на уровне SMM, что может быть использовано для модификации прошивок и размещения скрытого вредоносного кода или руткитов, не определяемых из операционной системы, а также для отключения верификации на этапе загрузки и атак на гипервизоры для обхода механизмов проверки целостности виртуальных окружений.
Уязвимость проявляется сериях процессоров AMD EPYC (1-4 поколения), Ryzen (R1000, R2000, 3000-8000, V1000, V2000, V3000), Athlon 3000 и Threadripper PRO. Обновления микрокода для блокирования уязвимости уже выпущено для мобильных и десктопных серий CPU EPYC и Ryzen. Для встраиваемых моделей CPU обновление планируют опубликовать в октябре. Единственным способом удаления внедрённого через атаку на SMM вредоносного кода является очистка памяти при помощи физически подключённого программатора SPI Flash.
Исследователи из компании IOActive выявилиуязвимость (CVE-2023-31315) в процессорах AMD, которая при привилегированном локальном доступе к системе позволяет изменить конфигурацию SMM (System Management Mode, Ring -2), даже если включён механизм блокировки SMM (SMM Lock), а также потенциально даёт возможность добиться выполнения кода на уровне SMM. Уровень SMM, имеющий более высокий приоритет, чем режим гипервизора и нулевое кольцо...
Тим Петерс (Tim Peters), автор гибридного алгоритма сортировки Timsort, член Python Core Team и один из старожил проекта, участвующий в разработке с первых версий CPython, отстранён управляющим советом (Steering Council) на три месяца из-за жалобы на нарушение кодекса поведения.
Среди примеров нарушений, ставших причиной временного отстранения, упоминается участие в обсуждении изменений правил, позволяющих совету директоров удалять заслуженных членов организации Python Software Foundation (Fellows) в случае нарушения кодекса поведения, путём внутреннего голосования, без привлечения к голосованию других членов фонда.
Тим поставил под сомнение данное изменение и предложил проводить более детальное разбирательство, если среди голосующих есть несогласные. Упоминается также то, что удаление участников за закрытыми дверями без раскрытия перед сообществом сути нарушения может привести к злоупотреблениям. Противники публичных обсуждений нарушений кодекса поведения считают, что раскрытие информации может причинить дополнительные страдания членам общества и людям, пострадавшим от поведения нарушителя.
В списке претензий Тиму: нагнетание атмосферы страха, неуверенности и сомнений (FUD), что способствовало возникновению эмоциональных реакций участников обсуждения; упоминание концепций обратного сексизма и обратного расизма; признание смешным старого потенциально оскорбительного в современных реалиях скетча SNL 1970-годов; упоминаниеситуаций, связанных с сексуальными домогательствами и насилием (данные темы некоторые люди считают неприемлемыми); обсуждение блокировок и удалений участников (воспринимается как раскрытие личной информации); расхождение взглядов с современными веяниями в области нейроразнообразия; обсуждение спорных тем или прошлых конфликтов; высказывание предположений о мотивах и психическом здоровье участников.
Тим Петерс (Tim Peters), автор гибридного алгоритма сортировки Timsort, член Python Core Team и один из старожил проекта, участвующий в разработке с первых версий CPython, отстранён управляющим советом (Steering Council
Проект Raspberry Pi представил новую плату Raspberry Pi Pico 2, продолжающую развитие миниатюрных плат Pico и Pico W, оснащённых микроконтроллером собственной разработки. Плата производится на заводе Sony и доступна по цене 5 долларов. Как и прошлые платы Pico новая модель ориентирована главным образом для совместного использования с компьютерами Raspberry Pi, разработки встраиваемых систем и систем управления различными устройствами. До конца года планируется дополнительно выпустить модель Pico 2 W с поддержкой Bluetooth и Wi-Fi (2.4GHz 802.11n), реализованной на базе чипа Infineon CYW43439.
Плата Pico 2 примечательна задействованием нового микроконтроллера RP2350, который по сравнению с применявшимся в прошлых моделях микроконтроллером RP2040, включает более производительный двухядерный процессор ARM Cortex-M33 с DSP и блоком для вычислений с плавающей запятой, работающий на частоте 150MHz (ранее использовался ARM Cortex-M0+ 133 MHz), Чип оснащён 520 KB встроенной оперативной памяти (ранее было 264 КБ), позволяет подключать внешние модули памяти QSPI PSRAM и предоставляет расширенные возможности для обеспечения безопасности. Плата Pico 2 комплектуется 4MB QSPI Flash, что два раза больше, чем в прошлой модели. При этом плата полностью совместима с прошлыми моделями на уровне аппаратных интерфейсов и программного обеспечения, используемого для разработки приложений.
Чип RP2350 содержит встроенные аппаратные средства для защиты от атак по внесению неисправностей (Fault Injection) и поддерживает технологию Arm TrustZone, которая может использоваться для верификации загрузки по цифровой подписи, предоставляет инструкции для ускорения вычисления хэшей SHA-256 и надёжной генерации случайных чисел (TRNG, True Random Number Generator). Кроме того предоставляется 8 KB одноразово программируемой памяти, дающей возможность записать данные, которые затем невозможно изменить или удалить.
Для создания приложений могут применяться языки Си, C++, MicroPython или CircuitPython. Разработка на С/C++ может вестись в редакторе Visual Studio Code для которого распространяется специальное дополнение. Возможностей чипа достаточно для выполнения приложений для решения задач машинного обучения, для разработки которых имеется порт фреймворка TensorFlow Lite. Для сетевого доступа предлагается использовать сетевой стек lwIP, который включён в состав Pico SDK для разработки приложений на языке Си, а также в прошивку с MicroPython.
Отдельно заявлено о партнёрстве с компаниями 4D Systems, Adafruit, Bus Pirate, Cytron, Hellbender, Ignys, Invector Labs, Melopero, NewAE, Pimoroni, Seeed, Solder Party, SparkFun, Switch Science, ThisisNotRocketScience, Tiny Circuits и Wiznet, которые подготовили собственные варианты плат и устройств на базе микроконтроллера RP2350. Среди развиваемых продуктов: экраны gen4-RP2530, Arduino-совместимая плата Adafruit Feather RP2350, отладочные платы Bus Pirate 5XL и Bus Pirate 6, промышленный контроллер ввода/вывода Cytron IRIV I/O, контроллер для роботов MOTION 2350 Pro, платы для разработчиков Hellbender RP2350 и Ignys RP2350, плата Challenger+ RP2350 BConnect, Melopero Perpetuo LoRa и NewAE RP2350, Pimoroni Tiny 2350, Plasma 2350, PGA2350, Seeed XIAO RP2350, Solder Party RP2350 Stamp, SparkFun Pro Micro и Switch Science Picossci2, синтезатор звуковых эффектов ThisIsNotRocketScience Bopp & Steve, игровая приставка Tiny Circuits Thumby Color.
Проект Raspberry Pi представил новую плату Raspberry Pi Pico 2, продолжающую развитие миниатюрных плат Pico и Pico W, оснащённых микроконтроллером собственной разработки. Плата производится на заводе Sony и доступна по цене 5 долларов. Как и прошлые платы Pico новая модель ориентирована главным образом для совместного использования с компьютерами Raspberry Pi, разработки встраиваемых систем и систем управления различными устройствами. До конца года планируется...