Univelis / Foxspeed
906 subscribers
1.09K photos
30 videos
19 files
367 links
Новости электроники и что из ноосферы прилетело. callback: @catethysis
Download Telegram
Недавно обсудили в нашей компании, что оценивать защищённость разработок лучше не какими-то общепринятыми критериями или метриками, а просто деньгами.
В мире есть некоторые метрики защищённости железа/софта:
- CVSS (0–10 баллов потенциального урона от софта)
- Common Criteria, уровни EAL1–EAL7 с расчётом attack potential
- криптомодульные FIPS 140-3 с уровнями 1–4 от "клянусь, оно работает" до "дрель, морозилка и тепловизор не помогут".

Но всё это не особо мапится в язык бизнеса: даже если руководство хорошо шарит в инфобезе, всё равно нужен перевод. А вот деньги — отлично.

"Этот продукт на 1 млн ₽ взлома" — сразу в топку: хватит интересующегося студента с осциллографом и неделей времени.
"На 10 млн" — уже интересно, можно пообщаться, понять профиль атакующего и посмотреть, что доточить
"На 100 млн" — сразу зелёный свет: такой бюджет есть только у весьма специфичных игроков, да и то, если ROI реально виден.
Подход не новый, но я нечасто вижу его применение, и он отлично ложится на бизнес-слой.

Формально, мы оцениваем не уровень магии защиты, а минимальный бюджет осмысленного атакующего на получение промышленно пригодного эксплойта. Здесь:
- человеко-часы реверсера/лаборатории нужного класса;
- железо: микроскопы, ионный пучок, лазеры для fault-инъекций, xGSPS осциллографы, EM-щупы и т.д. (+амортизация);
- число итераций: сколько раз нужно пересобрать плату, чтобы довести атаку до состояния PoC;
- операционные риски: доступ к образцам, логистика, бумажки.

Изначально, мы просто идём к дружественной лаборатории реверсеров и просим их оценить цену, ну или хотя бы наш штатный реверсер оценивает из своего опыта. Но можно и формализовать: взять из Common Criteria их "attack potential" и перевести из баллов в рубли: сумма времени, экспертизы, возможностей и оборудования. У нас почти то же самое, только сразу в единицах, удобных для владельца продукта и CFO.
А главное, эта метрика отлично ложится на стоимость защищаемой системы, тираж выпуска и принимаемые риски: банально, 10к₽ контроллер партией 5к штук — хватит и "1 млн" защиты, любая более крутая защита будет явным перебором, просто не отобьёт экономику. А если... ну вы поняли.

Любой реверсер спросит: а что вы понимаете под стоимостью? Поиск уязвимости / первый успешный взлом / identification, или тиражное использование / exploitation? Одинаково важны обе фазы: дорогой взлом вполне может стоить того, если тиражирование будет условно-бесплатным и принесёт достаточный профит; и наоборот, детская уязвимость, но дорогие/недоступные носители для тиражирования ставят вопросы к ROI атаки. Хотя обычно даже единичный факт взлома уже роняет репутацию девайса, и уже не настолько важно, что тиражирование дорогое. Плюс, это может быть взлом не просто "системы в целом", а конкретного юзера этой системы, и это переходит в критерий принимаемых (или нет) рисков.

Метрика по стоимости железа тоже вопросительна: лаборатория не строится под один взлом, амортизация на потоке будет околонулевой, тогда взлом именно нашего девайса станет в разы дешевле. Эта штука в научных кругах называется low-cost attacs, особенно любят бесплатно ломать якобы "тампероустойчивые" устройства. (мораль: тампер это лишь щеколда на входе). Да и помните: суперустойчивый Knox в телефоне или ультразащищённый чип, требующий послойного шлифования кремния — скорее всего стократ дешевле обходятся на другом этапе, хотя бы даже на supply chain :)
Оценивать ROI тоже нужно обдуманно: чуваку может быть интереснее не эксплуатировать уязвимость, а просто продать её; а внутренняя оценка цены всегда будет ошибочной в разы.

Без этих оговорок цифра "стоимость защиты" быстро превратится в самообман. Желательно ещё обновлять её по итогам реальных незапланированных доступов :)
🔥11👍9💯3
Наконец мои лапы дошли до этого крипточипа, а тут и задачка с хардверной эллиптической криптографией возникла на работе.

Суть: мелкий 8-ножка берёт на себя всю криптографию, причём правильно: охраняя закрытый ключ, давая честный рандом и т.д. Вынося всё чувствительное в него, вы автоматом получаете достаточную безопасность, подтверждённую опытом и сертами.

Оч заманчиво иметь SO8 чип, который умеет:
- генерить пары ключей (закрытый/открытый) для эллиптики
- юзать закрытый ключ внутри, никогда не отдавая его наружу
- генерить общий сессионный ключ по Диффи-Хеллману / ECDH
- считать хэши, подписывать и проверять подпись сообщений
- шифровать/расшифровывать сообщения по AES-128
- хранить данные в EEPROM, в т.ч. в OTP зонах
- ещё и имеет криптобезопасный генератор случайных чисел!

Зачем вообще всё это нужно: имеем два девайса, соединённых незащищённым каналом. CAN, RS485, Ethernet, что угодно, во что злоумышленник может влезть, прослушать и отправить свои посылки; пусть это контроллер двери и замок. Чувак подслушает команду "открытие двери", и потом отправит сам снова (replay атака). Как не дать это сделать? Не дать подслушать и отправить.

Чтобы не принять левую команду, добавим растущий номер или время, и вычислим хеш посылки с неким секретным ключом, это будет подписью. Не зная ключа, не сделаешь верную подпись.
Важно: подписываем закрытым/приватным ключом, проверяем подпись открытым/публичным. На старте, в режиме "знакомства" девайсов, каждый девайс сообщает всем свой публичный ключ, все его записывают.
Теперь, когда девайс А генерирует своё сообщение, он подписывает его своим приватным ключом, и любой другой девайс, приняв это сообщение, может проверить его подпись, используя уже известный публичный ключ девайса А.
Скорее всего, те кто менял блоки в машинах или айфонах, на этом моменте встрепенулись. Да, "прописать блок" это и есть "раздать его публичный ключ".
Против подслушивания можно зашифровать посылку полностью, но обычно хватает только подписи.

Про безопасность: Ledger вскрыли прошлые версии, ATECC508A на SSTIC 2020 лазером, и ATECC608A на BlackHat 2021 2 лазерами. 608A на сайте Microchip уже Not recommended for new designs, и есть B и C ревизии. У 608C есть варианты с JIL HIGH.
По методике из прошлого поста, уровень защиты "10 млн ₽" на старт и "10 тыс ₽" на повтор. Студент не вскроет :)
Для чипа, доступного на али за 300 ₽ это очень достойно.

Полный даташит недоступен, Microchip просит подписать NDA (вот бы чип умел подписывать кроме сообщений ещё и NDA!); но ковырянием в даташитах на прошлые версии и коде доступных библиотек, удалось навайбкодить всё, что нужно.
Команды в следующем посте:
14👍7😱2🔥1
Команды для работы с ATECC608 из предыдущего поста:
1. Инициализация

Чип по умолчанию спит и даже может быть не виден командой i2cdetect. Пробуждение — запись 0x00 в устройство с адресом 0x00. Да, не по адресу чипа, а по адресу General call шины.
w1@0x00: 0x00
Через i2ctools это можно сделать с ключом -a из-под su:
sudo i2cset -y -a 2 0x00 0x00
Команда вернёт ошибку, но не переживайте, это нормально.
Спустя 2 мс можно прочитать wake-статус:
r4@0x60: 04 11 33 43
04 длина, 11 успешный wake, и 2 байта CRC.

Дальше все запросы начинаются с 03, это функция передачи команды (ещё есть 00/Reset, 01/Sleep, 02/Idle)

2. Чтение ревизии
w8@0x60: 03 07 30 00 00 00 03 5D
03 функция "команда", 07 длина, 30 команда Info, param1/00 — ревизия, param2/0000 — без параметров, и CRC. Ответ:
r7@0x60: 07 00 00 60 02 80 38
07 длина, 00006002 ревизия, 2 байта CRC.
.60.02 соответствует чипу ATECC608A, .60.03 — ATECC608B.

3. Случайное число
w8@0x60: 03 07 1B 00 00 00 24 CD
03 функция "команда", 07 длина, 1B команда Random, param1/00 и param2/0000 — без параметров, и CRC. Ответ:
r35@0x60: 23 FE A4 73 B9 4F D7 6F EA FB 5A 90 89 D0 1D 98 9E 8C 4C 49 84 BF 60 30 C7 FF BD 44 73 1A 52 D6 15 99 66
23 длина, FE A4 ... D6 15 случайное число (32 байта), 2 байта CRC.
Но пока конфиг чипа не залочен, эта команда всегда будет отдавать FF FF 00 00 FF FF 00 00... — это не издёвка, а маркер того, что чип открыт. Почему-то про это редко пишут, имейте в виду.

4. Публичный ключ из слота 0
w8@0x60: 03 07 40 00 00 00 00 05
03 функция "команда", 07 длина, 40 GenKey, param1/00 и param2/0000 — без параметров, и CRC. Ответ:
r67@0x60: 43 D2 DE .. 8B B3 29 A1
43 длина, D2 DE ... 8B B3 публичный ключ (64 байта), 2 байта CRC.
На самом деле, публичный ключ это лишь координата точки на эллиптической кривой: первые 32 байта X, вторые 32 байта Y.

5.1. Подготовка к подписыванию / загрузка Nonce в TempKey
w40@0x60: 03 27 16 03 00 00 h0 h1 ... h31 CRC_L CRC_H
03 функция "команда", 27 длина, 16 Nonce, param1/03 — режим Fixed, param2/0000 h0..h31 — 32 байта данных, и CRC. Ответ:
r4@0x60: 04 00 03 40
04 длина, 00 успешный приём, и 2 байта CRC.

5.2. Подписывание TempKey ключом из Slot0
w8@0x60: 03 07 41 80 00 00 28 05
03 функция "команда", 07 длина, 41 команда Sign, param1/80 — режим [External, TempKey], param2/0000 и CRC. Ответ:
r67@0x60: 43 C7 D2 .. BF 76 52 A2
43 длина, C7 D2 ... BF 76 подпись (64 байта), 2 байта CRC.
Подпись это на самом деле два числа по 32 байта, R||S.

Самое крутое то, что я попробовал проверить эту подпись тем же публичным ключом на компе в node.js — и проверка прошла! Мы успешно связали два криптоконтейнера, и всё работает :3

6. Блокировка конфигурации
У чипа есть три разных вида блокировки, для получения случайных чисел достаточно залочить конфигурацию.
w8@0x60: 03 07 17 80 00 00 39 8D
03 функция "команда", 07 длина, 17 команда Lock, param1/80 — режим [Lock Config, Ignore CRC], param2/0000 и CRC. Ответ:
r4@0x60: 04 00 03 40
04 длина, 00 успешный лок, и 2 байта CRC.

Расчёт CRC
16 бит LSB-first, полином 8005, input reflected, output not, init 0000, final xor 0000. CRC_L = младший байт, CRC_H = старший.

Да, в качестве сообщения я везде использую число длиной 32 байта, а как подписать пакет другой длины или текст? Конечно, захешировать. В чипе и SHA-256 есть для этого.

Я рассказал лишь о 20% возможностей чипа. Ещё можно производить новые ключи от старых, строя цепочку и размножая их дальше; есть счётчики для контроля монотонности сообщений; можно создавать сессионный ключ из двух приватных, причём напрашивается вариант где с одной стороны этот чип, а с другой линукс; и ещё много всего.

Рекомендую разобраться: вы можете за 350 рублей добавить к вашему устройству надёжное шифрование, не закапываясь в это с головой. Не зря же Брюс Шнайер, отец криптографии, запрещает реализовывать криптоалгоритмы самому :)
12👍6🔥4🤔1
Мне всегда чесали мозг двойные учёные. Вместе с комментаторами вспомнили много; накидайте в комменты ещё свои варианты :D

Диаграмма Гершпрунга-Расселла
Эффект Прандтля-Глоерта
Параметры Тиля-Смолла
Схема Улама-Теллера
Алгоритм Диффи-Хеллмана
Эффект Даннинга-Крюгера
Феномен Баадера-Майнхоф
Эффект Барнума-Форера
Конденсат Бозе-Эйнштейна
Метод Рунге-Кутты
Неустойчивость Релея-Тейлора
Уравнения Навье-Стокса
Распределение Максвелла-Больцмана
Задача Штурма-Лиувилля
Закон Бойля-Мариотта
Закон Гей-Люссака
Фильтр Саллена-Ки
Уравнение Навье-Стокса
Мария Склодовская-Кюри
Закон Менделеева-Клапейрона
Правило Тициуса-Боде
Вектор Умова-Пойнтинга
Алгоритм Кули-Тьюки
Мост Эйнштейна-Розена
Неравенство Коши-Буняковского
Закон Майкельсона-Шварца :)
Код Рида-Соломона
Пространство Калаби-Яу
Алгоритм Ахо-Корасик
Теорема Остроградского-Гаусса
Диаграмма Эйлера-Венна
Мост Вина-Робинсона
Неравенство Коши-Адамара
Алгоритм Герчберга-Саксона
Теорема Пэли-Винера
Излучение Вавилова-Черенкова
Закон Джоуля-Ленца
Теорема Найквиста-Шеннона-Котельникова
Код Боуза-Чоудхури-Хоквингема
Парадокс Эйнштейна-Подольского-Розена
Закон Бугера-Ламберта-Бера
Алгоритм Кнута-Морриса-Пратта
Метод Бранауэра-Эммета-Теллера
Закон Био-Савара-Лапласа
Теория Дерягина-Ландау-Фервея-Овербека
10😁3
Forwarded from e/acc
Шифропанки проиграли

Я начал вести этот канал с серии постов об истории Cypherpunks — более чем 40-летнего движения, которое привело к появлению ключевых технологий, позволяющих построенние децентрализованных систем и институтов, таких как PGP и PKI (способ гарантировано приватного общения), Digicash (первые электронные деньги), TOR и Bittorent и, наконец, Биткоина, Эфира и идеи ДАО.

Почему это важно? Математика — неостановимый инструмент. Мы научились создавать нецензурируемые деньги и каналы связи. Но победив в создании инструментов, мы споткнулись о реальность их внедрения. Распространение технологий зависит не от криптографической стойкости, а от старой скучной политики и человеческой психологии, где важнее привычки, чем алгоритмы.

Четыре года я делал проекты в области SSI — системы цифровой identity для образования, медицины и идентификации в интернете. Технически мы всё сделали верно. Коммерчески проекты были успешны. Но идеологически мы провалились: вижен «суверенной личности» остался утопией. Люди не стали владеть своими данными, они просто получили еще один логин-пароль, за которым стоял новый посредник.

Парадокс: технологии шифропанков победили везде, но их идеология нигде не прижилась. Триллионы долларов в крипте, HTTPS на каждом сайте, сквозное шифрование в мессенджерах. Но криптографический слой оказался захвачен той самой бюрократической машиной (Левиафаном), против которой создавался. Пользователи сами, добровольно, отдают ключи от своей крипты Бинансу, а свои переписки — серверам Gmail и iMessage.

Причина проста: мы проигнорировали «когнитивный налог». Шифропанки требовали от человека ответственности: хранить ключи, понимать риски, настраивать ноды. Но обычный человек не хочет разбираться в эллиптических кривых ради покупки чашки кофе. Он выбирает Google не потому, что любит корпорации, а потому что восстановить пароль там можно за две минуты. Удобство — наркотик, а централизация — его главный дилер. Если приватный инференс стоит $50k, он проиграет подписке за $20, даже если эта подписка читает и использует ваши данные.

Но война не окончена. Сейчас код перестает быть просто софтом и становится институциональным дизайном. Следующее поколение систем (ИИ-агенты, абстракция аккаунтов и чейнов в крипте, intent economy) скроет сложность от пользователя. И главное его преимущество остается

Будущее не за тем, чтобы заставить всех стать гиками. Будущее за системами, которые являются само-оптимизирующимися кибернетическими организмами, где «правильный» выбор является одновременно и самым простым. Лозунг «Cypherpunks write code» не просто про код, а про дизайн механизмов (стимулов) и интерфейсы, которые делают свободу фичей системы. Мы неизбежно придем к автономным институтам не потому, что люди станут сознательнее, а потому что старые институты коллапсируют под весом собственной неэффективности. Почему — в следующей части.
🔥8😢5💯1
Все вокруг меня стали ставить ноды мештастика — сегодня уже четв шестой человек за 2 месяца. Я чего-то не знаю и там раздают деньги, или это попытка убежать от цензуры? Ну тогда лол.
🤣127👻6👍4🌚2
В новом году в мире ожидается мясо, посмотрим чо будет.
Доросли до 800 подписчиков вашими стараниями; а в новом году будет продолжение проекта #DOLGO (GNSS-генератор) и продолжение исследований Лаборатории резонанса.
Спасибо, что следите и ждёте постов, вы няшечки :3
Сил, наличия чипов и наличия желания делать штуки дальше.
22🥰10👍8
НОВОГОДНЯЯ МИКРОСХЕМА (буквально)
Начну год с лёгкого поста, пока все ещё под салатиками.

Замечали, что практически все гирлянды нужно прощёлкать 7 раз, чтобы дойти до единственно удобного режима "не мигает"?
А замечали мерцание гирлянд на 100 Гц, будто разработчикам было лень сделать ШИМ на 1 кГц? Меня это давно расстраивает: как можно такой стробоскоп пускать в продажу!

Всё это потому, что все они сделаны на одной микросхеме. Конечно, для такого массового товара китайцы не могли не разработать специальную микру, точнее две:
- MOSDESIGN M80056B / M80056B-1 / M80002-4
- Unisonic UTC8156
Различаются числом ветвей (4/8) и управлением (кнопка или 8-позиционный переключатель), в остальном идентичны.

*Тут был ошибочный текст про задание частоты* В микросхеме есть понижатель напряжения на стабилитроне, поэтому снаружи лишь диодный мост (а скорее, один диод), резистор, и тиристоры для гирлянд. Коммутация только пропуском целых периодов, поэтому это и не ШИМ даже, а просто вкл/выкл на частоте 50 Гц.

Конечно, никто не пытается следить за фазой синуса в сети (как в сложных симисторных регуляторах), вся регулировка яркости это лишь пропускание целых полупериодов сети — поэтому они мерцают, и особенно это заметно на малой яркости в начале / конце режима "slo-glo" (медленное разгорание/потухание).

А теперь вместо лампочек в гирляндах светодиоды: да, на цепи из нескольких десятков белых светодиодов с ограничивающим резистором погасится как раз напряжение сети, но у них нет инерционности ламп, поэтому все колебания яркости прекрасно видны, особенно боковым зрением.
Сейчас сильно популярнее гирлянды с питанием от USB; как мне удалось выяснить, там уже полноценный микроконтроллер типа того 4-центового Padauk, уже с 32'768 Гц кварцем и гораздо более приятным ШИМ без мерцаний.

Самое милое, что эти чипы прямо в даташите называются Рождественскими Микросхемами, такая прелесть :3
У кого такая гирлянда — скидывайте в комменты фотки своих контроллеров, соберём коллекцию.

TL;DR: Чипы новогодних гирлянд — это легаси из времён ламп накаливания и тиристоров. Модуляция яркости пропуском периодов отлично работала с тепловой инерцией ламп; теперь перешли на светодиоды без инерции, а чипов на складах миллионы штук на годы вперёд — вот и видим злое мерцание.
Ну а тонкие провода это и экономия, и предохранитель при КЗ.
15👍12🔥6🍾2
НОВОГОДНИЕ ИТОГИ
Наверное, надо запостить такие картинки, раз все постят.
Ну да, техно-сарказм, ваш любимый токсик опять кричит на ИИ и на то, как всё вокруг сделано неправильно.
А я в рамках своего 2025 Wrapped отмечу посты про:
- 25 Гбит/с домашнюю сеть
- Самодельную камеру Вильсона
- Запись своей фотки в RFID-визитку
- Супер-телескоп Веры Рубин
- Силовые MEMS-выключатели
- Матрицу со встроенной видеообработкой
- Тактильный энкодер типа SmartKnob
- Выступление на Underconf 2
- Работу с Secure Enclave чипом ATECC608
А чем интересным поделитесь вы? Расскажите! (да, это наглый Call-to-Action).

Забавно, мама напомнила первые мои моменты знакомства с электричеством: во втором классе собрал схему с лампой и выключателем, но почему-то замкнул сеть. Конечно, при включении выбило автоматы, зато было весело.
Ну а потом, в 5 классе, в школе устроили чаепитие и воткнули ~5 чайников в удлинители, вставленные друг в друга цепочкой. Ожидаемо, изоляция потекла. Расскажите и про свои случаи!

А насчёт той кошьки — она сидит в частной коллекции кошек в доме за городом, нам периодически присылают видосики, ей там вроде нормально. Всё равно хочется найти ей человека.
9👏7
ВСКРЫТЬ BLUETOOTH ESP32
На днях прошёл 39-й Chaos Communication Congress, и подарил много тем для освещения. Выложу пару из них под тегом #39с3.

ESP32 крут, но его радио насквозь проприетарно, и когда вы уже наигрались с чипом так, как того хотел производитель — хочется поиграться более грязно: например, почему бы не вскрыть эти назойливые чёрные радиоящики? Антонио Васкес Бланко (Antón) показал, как приоткрыть эту завесу тайны.

Вообще, почему всё так плохо? Все радиоинтерфейсы зарегулированы; следовать спекам просят везде, но тут особая ситуация: среда доступа разделяемая (общий радиоэфир), и любое отклонение от спек портит жизнь сразу всем. Поэтому есть радиочасть (прошитая бинарными блобами) и интерфейс доступа, куда HCI-командами можно послать лишь что-то разрешённое.
Хотя давно всплывала инфа, что у ESP32 есть и незадокументированные регистры, и нестандартные команды, на которые таки приходит ответ. Espressif отвечали, что это отладочные команды для производства, но... ну вы поняли.

Антонио докопался до деталей реализации BT-периферии, восстановил полную карту памяти/регистров/прерываний и собрал воедино все те штуки, которые и делают этот модуль полностью прозрачным.
По итогам реверса он смог:
- принимать и передавать низкоуровневые данные (не только высокоуровневые абстракции)
- инжектить произвольные пакеты (а значит, открыл дверь для Bluetooth-фаззинга!)
- выложить полную инфу с описанием регистров и структур.

К сожалению, так и не вышло полностью перевести модуль в promiscious режим, в основном из-за хардверной генерации Sequence ID. Но даже так это уже существенный прорыв.
Теперь ESP32 становится платформой для глубокого исследования Bluetooth — от поиска закладок в беспроводных наушниках до аудита сетевого поведения и сниффинга всего обмена, от фуззинга и тестов на устойчивость до разборов странного поведения устройств.

сслк: media.ccc.de/v/39c3-liberating-bluetooth-on-the-esp32
репо: github.com/TarlogicSecurity/ESP32-Bluetooth-Reversing
🔥228🌚6😨1
СДЕЛАТЬ АЛЮМИНИЙ КАК У APPLE
Все видели этот фирменный сатиновый эппловский алюминий в макбуках: матовый, почти не бликующий, выглядящий "дорого". Если хотите повторить такой в своём девайсе — я реверснул их технологию и готов поделиться с вами. Забавно, что сначала я дошёл до сути сам, потом почитал патенты Apple, почти совпало.
Суть: шлифовка+аквабласт+анодирование+герметизация.

0. Из Al 6061 делаем нужную деталь: фрезеровка, резание, ...
1. Шлифуем её. Apple говорит про полировку, но доводить до зеркала точно не нужно, потратит силы, а пользы не принесёт.

2. Создадим микрорельеф поверхности: похоже на пескоструй, но песок поцарапает деталь; похоже на сатинирование, но оно тоже оставит царапины, хоть и направленные; всё равно не то.
Это аквабластинг: микросферы из кремнезёма в потоке воды. Они бомбардируют алюминий, упрочняя поверхностный слой, и оставляя сотни микрократеров на 1мм². Это ручной этап, и чем ровнее получится бластить, тем лучше результат. Получим равномерную, правильно рассеивающую свет матовость.

3. Анодируем для красоты: обычное сернокислое анодирование без красителя (для цвета Silver), для других цветов красители я не подбирал. Так получаем толстый прочный оксидный слой Al₂O₃ для закрепления текстуры и для ощущения прочности.
На этом этапе становится важен материал. Алюминий 6061 проявляет себя хорошо, а вот пробовали мы такое сделать с алюминием после SLM 3D-печати — оказалось, что в порошке алюминия для печати есть кремний (это по сути силумин), и он не окисляется, создаёт серую пыль на поверхности, уходит в раствор в виде взвеси, падает на дно, короче создаёт шлам. Для 3D-печатных штук понадобится опыт анодирования силумина, либо некие фторсодержащие добавки для растворения кремния.

4. Уже почти то, что нужно — но сейчас поверхность пористая и жадно впитывает всё, не только краску, но и жир с пальцев: отпечатки появляются мгновенно и даже ацетон их не возьмёт.
Надо запечатать поры.
В промышленности это делают гидротермальным методом: свежий, не закристаллизовавшийся Al₂O₃ обдают горячей водой или паром, он переходит в бёмит AlO(OH), увеличиваясь в объёме и распирая/закрывая поры. Я сделал проще: аэрозольно покрыл лаком Cramolin Plastic, а липкую, блестящую плёнку лака с поверхности смыл ацетоном. Лак остался в порах, не давая адсорбироваться грязи. Это — органическая импрегнация пор.

Можно сказать, вы получите сапфировую плёнку на алюминии.
🔥37👍7🆒42😱2
ХИМИЧЕСКАЯ ËЛОЧКА не заставила себя ждать (но жёлтая)
0. Обмотайте весы плёнкой, наденьте перчатки, приготовьте пакет для мусора и бутылку с широким горлом.
1. В 500 мл колбе: 2 грамма нитрата свинца (II) растворите в 50 мл холодной воды с парой капель уксуса или несколькими крупинками лимонной кислоты, чтобы предотвратить гидролиз (а то пойдёт белёсая муть гидроксида/карбоната свинца).
2. В другой 50 мл колбе: 3 грамма йодида калия растворите в 30 мл холодной воды.
3. Покачивая большую колбу, вылейте в неё раствор йодида.
4. Восторгайтесь (очень важно!) насыщенному жёлтому цвету мелкокристаллического йодида свинца (II).
5. 5 минут дайте осадку осесть, слейте раствор в бутылку, промойте осадок холодной водой и опять слейте после отстоя.
6. Залейте туда 400 мл крутого кипятка (подогрейте колбу, чтобы не лопнула), перемешайте (осадок растворится) и оставьте.
7. Через полчаса в растворе начнут созревать кристаллы волшебной красоты. Наблюдайте. Это реакция "золотой дождь".
Pb(NO₃)₂ + 2 KI → PbI₂↓ + 2 KNO₃
8. Утилизируйте все перчатки и пакеты, бутылку, реагент нитрата свинца и дважды вымойте руки до локтя и лицо.
9. PbI₂ можно размешать в глицерине в маленькой колбе.

Суть реакции:
при взаимодействии нитрата свинца Pb(NO₃)₂ и йодида калия KI проиходит обмен ионами, и образуется йодид свинца PbI₂ (потому что он слаборастворим) и нитрат калия KNO₃, но поскольку реагенты смешиваются быстро и реагируют по всему объёму, йодид свинца получается очень мелкодисперсный. Прекрасный плотный жёлтый цвет, но это ещё только половина эксперимента.
Растворимость йодида свинца зависит от температуры: при 100°C это 4.36 г/л, при 80°C 3 г/л, а при комнатных 25°С — всего 0.76 г/л. Поэтому, если приготовить его насыщенный раствор в кипятке, то при охлаждении раствора эти лишние 3.6 грамма на литр выпадут в осадок; но главное, они будут кристаллизоваться медленно, образуя невиданной красоты кристаллы-хлопья сразу во всей толще раствора, сверкая и медленно опадая.
🔥185😱3
АНАЛОГОВЫЕ FPGA ДОСТУПНЫ, ОПЯТЬ
Программируемые аналоговые схемы это как привычные FPGA, только в аналоговой электронике: массив фильтров, усилителей, смесителей, детекторов, и всё это можно пересобирать софтом.
Профиты ясны: сейчас мы берём входной сигнал (почти всегда аналоговый), оцифруем его в АЦП, параллельно обрабатываем, короче все прелести трейдоффа "кол-во состояний vs битность". А так можно, например, умножить сигнал на N одной ячейкой.

Концепция известна с 90-х (тот же Anadigm), но есть проблемы. Классическая ПЛИС программируется внешней цифровой памятью, а настройки ПАИС (усиления, веса, токи смещения, пороги, тысячи их!) придётся как-то генерировать локально, ставя ЦАП на каждый вход — и лишнее место, и потребление.
Да и аналоговые штуки плохо масштабируются вниз, а для создания программируемой схемы нужен массив из большого количества одинаковых ячеек.

В новом SoC FPAA от Hasler эти значения хранятся в плавающих затворах pFET транзисторов прямо в массиве аналоговых ячеек. А для задания значений рядом есть АЦП/ЦАП, которые, конечно, можно использовать и для работы схемы. А ещё SRAM 16k*16 для кода и данных и 16-битное ядро MSP430 для контроля, обработки и динамического переконфигурирования схемы.

То есть, ЦАПы настроек никуда не исчезают, просто добавляются буферы и роутинг этих сигналов. Это до 600'000 раз компактнее, чем ставить ЦАП к каждому элементу, требующему настройки.
Отдельно они упоминают, что и этот роутинг сам является активным элементом цепи, участвующим в вычислениях.

Что можно делать, и сделано уже прямо сейчас: напрашивается always-on обработка сигнала рядом с сенсором, одновременно и конфигурируемая, и ультра-низкопотребляющая. Да и быстрое прототипирование аналоговых схем тоже хочется потрогать, а дальше перенести в схему, или так и оставить FPAA чип рядом.
Низкопотребляющая mixed-signal обработка, сенсор-хабы, адаптивные контуры управления без задержек на конверсии.

Два примера: подводный сонар с переконфигурированием на лету под разные режимы работы, и споттер ключевого слова (то, как умная колонка слышит ваше "Маруся!") с потреблением 23 мкВт. Да, keyword spotter на обычных SoC уже оптимизированы — даже приснопамятный IA611 с NPU потреблял 2 мВт на фазе ожидания ключевого слова; но ПАИС стократ экономичнее.

В 2025 Okika заявила о завершении поглощения Anadigm (прежние лидеры аналоговых матриц) и намерении развивать FPAA под своим крылом. Правда, основная отладочная плата пока стоит полмиллиона рублей. Ждём :)

Ну так а чо делать: это уже в чистом виде микропотребляющие нейроны, или аналоговый conditioner / анти-клип перед АЦП, переконфигурируемый аналоговый фронденд для стенда с датчиками, и даже симулятор динамических систем / ODE-решателей на аналоговых вычислениях.
Намеренно не провожу параллели с советским аналоговым гидрокомпьютером, потому что ну разный класс устройств.
11🤔5👍3🔥2🎄2😱1