- Spegnimento
- 19 agosto 2026 alle ore 02:19 UTC
- Autore
- Kamo
- Impegno
- f760aef
KToken non poteva verificare un vero token. I quattro id che trasporta sono int64s, e il Java signer (kamo-shared-library KToken#canonicalForMac) si applica ciascuno come un `long` grezzo, quindi tutti 19 cifre entrano nel materiale MAC. Questa classe li legge con Number(), che gira oltre 2^53, e ogni setter poi applicato `v|0` -- una tronca a 32 bit in cima alla arrotondazione. 1168485648209608710 venne fuori come un piccolo integer, il noto HMAC non corrispondeva al un server firmato, e parseAndVerifyCookie restituito null: un token valido letto come forgiato. Ha mai concordato con se stesso, su ids abbastanza piccolo da rappresentare. Gli id sono ora le stringhe digitali del cookie, quindi il materiale corrisponde al byte del firmatario per byte, e sono convalidati dalla forma piuttosto che da Number(), che avrebbe sconfitto punto. La scadenza rimane un numero -- epoca secondi sono ~1.8e9 e in nessun pericolo. Nulla chiama parseAndVerifyCookie oggi; il cookie viene trasmesso ai servizi verbatim. Quindi questo risolve una minestra piuttosto che un'estrazione, ma è una minestra in una percorso auth, dove il fallimento sembrerebbe un login respinto piuttosto che un bug arrotondante. Stesso cambiamento del kamo-internal f55a95c9, dove porta prove di mutazione: 4 dei 6 fallire contro la precedente implementazione. Questo repo non ha nessun test runner.