← На главную

MacSurf v1.3.1 привёз нативный TLS 1.3 на Classic Mac OS 9

30.05.2026 06:58 · hackernews

MacSurf — это браузер для Classic Mac OS 9 на PowerPC. Он работает на G3 iMac с частотой 233 МГц, поддерживает CSS3, ES5 JavaScript и рендерит PNG с альфа-каналом. Это ранняя альфа, так что для повседневного использования он пока не годится: тяжёлые SPA, современный CSS, видео и WebGL не поддерживаются. Но проект уже достаточно зрелый, чтобы его тестировали на реальном железе — авторы просят баг-репорты и скриншоты с G3 и G4.

Ключевая фишка — нативный TLS. Сначала в версии v1.3 «Forward» появился первый в истории Classic Mac OS нативный TLS 1.3 (RFC 8446 на базе BearSSL, шифры ChaCha20-Poly1305 и AES-128-GCM). А свежий релиз v1.3.1 (май 2026) добавил поддержку нескольких кривых для ECDHE: X25519, P-256 и P-384. Это позволило открывать сайты с NIST-only кривыми, например форум 68kmla.org — крупное сообщество Classic Mac, которое теперь полностью рендерится на G3 iMac через TLS 1.3 + P-384. В предыдущей версии v1.2 «Sealed» закрыли уязвимую заглушку энтропии и добавили полноценный менеджер загрузок с поддержкой POST-форм.

Браузер собран на инструментах эпохи: CodeWarrior 8, Carbon, QuickDraw, Open Transport. Исходники на C89 — том же C, что писали в 1999 году. Движок — форк NetSurf с фронтендом под macOS 9. Для JavaScript используется Duktape 2.7.0 (полный ES5). В браузере около 150 CSS-свойств, включая Grid, Flex, custom properties, border-radius, box-shadow, градиенты, трансформации, z-index, text-shadow и даже CSS-счётчики. PNG, GIF, JPEG, BMP и TIFF — все с правильной прозрачностью.

Для работы нужна Mac OS 9.1+ и CarbonLib 1.5+. Собрать можно из исходников в CodeWarrior 8 или через Retro68 для быстрой проверки синтаксиса на Linux. Есть и старый Go-прокси (macsurf-proxy) — он ретраится как запасной вариант, но теперь не обязателен, так как macTLS работает напрямую.

Читать оригинал →