Vai al contenuto

root / tags / apple-silicon

#Apple Silicon

2 fiches

Qualità e Sicurezza Traduzione verificata automaticamente

Your Browser Does Math Differently on Every OS, and Anti-Bot Systems Read the Bits

Articolo tecnico pubblicato il **12 luglio 2026** da **Scrapfly Engineering**, su un canale di *fingerprinting* del browser poco conosciuto: **gli ultimi bit di un numero in virgola mobile tradiscono il sistema operativo**. **Il meccanismo**: lo standard IEEE 754 definisce come viene memorizzato un `double`, ma **non impone** che `sin`, `cos`, `tanh` o `exp` siano correttamente arrotondati; ogni sistema distribuisce quindi una **libm** che scambia una frazione di ULP contro la velocità, con i propri coefficienti minimax, tabelle e costanti di riduzione. Ne risulta che `Math.tanh(0.8)` restituisce **tre valori diversi** a seconda di glibc (Linux), libsystem_m (macOS) e UCRT (Windows) — *« una singola chiamata a tanh sull'input giusto è una firma per-OS. Dichiara macOS, restituisci bit matematici di Linux, e hai contraddetto il tuo stesso User-Agent. »* **L'indizio è recente e datato con precisione**: fino a **Chrome 147**, V8 calcolava `tanh` con una porta **fdlibm** integrata, identica ovunque e senza alcuna fuga; il commit V8 `c1486295ae5` l'ha sostituita con `std::tanh`, distribuito in V8 14.8.57, ossia **Chrome 148** — 148, 149 e 150 presentano la fuga, 147 e le versioni precedenti no. **Tre superfici concentrano le fughe**: `Math.tanh` (l'**unica** funzione `Math.*` interessata, poiché V8 integra e collega staticamente il resto), **tutte le funzioni trigonometriche CSS** (Blink chiama direttamente la libm dell'host, dopo una riduzione dell'angolo in gradi che non condivide codice con `Math.sin`), e **Web Audio** (dove il compressore resta sulla libsystem_m scalare mentre le fasi FFT e vettoriali passano attraverso **Accelerate**). **Quattro trappole** rendono difficile la contromisura: solo alcune funzioni presentano la fuga — quindi **falsificare le altre crea un'incoerenza rilevabile**; JavaScript e CSS sono percorsi di codice distinti; **macOS integra due librerie matematiche che divergono tra loro** (scalare vs. Accelerate, dal 10 all'89% degli input a seconda della funzione: `cos(0)` restituisce `1.0` da un lato, `0.9999999999999999` dall'altro); e **anche l'architettura presenta una fuga** (la propagazione FMA e del segno di NaN differisce tra ARM e x86). **La contromisura scartata e quella scelta**: aggiungere rumore fallisce due volte — il valore non corrisponde a **nessun** OS reale, e il non-determinismo a ogni chiamata è a sua volta un indizio. L'unica via è la **riproduzione bit a bit**: estrarre i coefficienti della libm target, trascriverli **in esadecimale** (una trascrizione decimale arrotonderebbe in modo diverso), scrivere ogni fused multiply-add esplicitamente come `fma()`, e compilare con `-ffp-contract=off` affinché il compilatore non ne inventi né ne ometta alcuno. **Nota sulla trasparenza**: l'editore dichiara fin dall'inizio che *« i post qui presenti sono redatti con l'IA, »* mentre i meccanismi, i dati e il codice restano propri.

#fingerprinting#browser fingerprint#anti-bot

**Scrapfly Engineering** — équipe d'ingénierie de **Scrapfly** · fournisseur d'infrastructure de collecte web. Le texte annonce sa position d'intérêt sans détour : *« Scrapfly ships a browser that has to match a real one across hundreds of signals · and math is one of the harder ones. »* On lit donc un **attaquant du problème de détection** · qui documente le canal parce qu'il doit le neutraliser.

Strumenti e Piattaforme Traduzione verificata automaticamente

ZML/LLMD : et si le « Docker des LLM » était français ?

Analisi SFEIR (voce da società di consulenza) del lancio, l'8 luglio 2026, di **LLMD** da parte della startup parigina **ZML** (fondata da **Steeve Morin**, ex VP Engineering di Zenly): un server di inferenza che esegue LLM su **cinque famiglie di chip** (NVIDIA CUDA, AMD ROCm, Google TPU, Intel oneAPI, Apple Metal) **a partire da un'unica codebase**. Tesi strutturante: il training sta cedendo il centro della scena all'**inferenza**, dove si decidono ormai il costo per token, la latenza e soprattutto la **dipendenza dal silicio**. La scommessa di ZML — riassunta dal motto *model to metal* — consiste nel **disaccoppiare il modello dall'hardware** tramite un compilatore scritto in **Zig + MLIR** che produce un binario nativo ermetico, senza Python nel percorso di esecuzione, esposto tramite una **API compatibile con OpenAI**. Due componenti, due licenze: **ZML** (il framework, Apache-2.0, >90% Zig) è open source; **LLMD** (il server) non lo è, gratuito al lancio. L'articolo legge l'oggetto attraverso tre lenti da società di consulenza — **FinOps dei token**, **libertà architetturale** (Design to Exit), **sovranità** (chip europei emergenti, integrazione nel processore VSORA Jotunn8) — per poi emettere un verdetto senza sconti: si tratta di un'**alpha**, da mettere "sotto osservazione attiva", non da adottare oggi.

#Inferenza LLM#serving#ZML

SFEIR (voix éditoriale du cabinet)