Zum Inhalt springen

Das Magazin für Web-Handwerker Montag, 19. Oktober 2026

Backend

Node.js 24.22.0 bringt native Crypto-APIs, Throttle/Debounce und ein schließbares StatementSync

Die LTS-Version 24.22.0 von Node.js liefert fortgeschrittene Crypto-APIs, native Throttle- und Debounce-Hilfsfunktionen sowie ein explizites Schließen für SQLite-Statements.

Der LTS-Zweig „Krypton“ von Node.js hat am 14. Oktober 2026 die Version 24.22.0 erhalten, die siebzehn nennenswerte Änderungen bündelt. Betroffen sind das Modul crypto, die eingebaute SQLite-API, perf_hooks und das Modul util – allen voran zwei lange erwartete Funktionen: util.throttle und util.debounce.

Crypto erhält neue Zertifikats- und Verschlüsselungsmodi

Fünf der siebzehn Änderungen betreffen die Kryptografie. crypto.parsePKCS12() liest nun direkt einen PKCS#12-Container (das Format .p12/.pfx, das Zertifikat und privaten Schlüssel bündelt), ohne eine externe Abhängigkeit. Hinzu kommt eine generische MAC-API sowie die dynamische Erkennung von Chiffren und Hashfunktionen, die von OpenSSL-Providern bereitgestellt werden. Die Modi SIV und GCM-SIV sind nun ebenfalls in den Cipher- und Decipher-APIs verfügbar – zwei Modi, die gegen die versehentliche Wiederverwendung eines Nonce robust sind, ein Szenario, das schon manche Verschlüsselung auf Anwendungsebene kompromittiert hat.

SIV und GCM-SIV hängen vom OpenSSL-Provider ab, mit dem das verwendete Node.js-Binary kompiliert wurde. Vor dem Produktiveinsatz lohnt sich eine Prüfung von crypto.getCiphers() in der Zielumgebung, um einen stillen Fehlschlag beim Deployment zu vermeiden.

util.throttle und util.debounce verlassen das Terrain externer Bibliotheken

Bisher erforderte das Drosseln der Häufigkeit eines Aufrufs (debounce) oder das Begrenzen seiner Ausführungsrate (throttle) die Installation von lodash oder einer kleinen dedizierten Bibliothek. Node.js 24.22.0 bringt eine native Implementierung beider Funktionen in node:util mit, gedacht für Server-Skripte, die Festplattenschreibvorgänge, Aufrufe externer APIs oder wiederholte Benachrichtigungen bremsen müssen.

import { throttle, debounce } from 'node:util';

const logMetrics = throttle(() => {
  console.log('Metriken-Snapshot gesendet');
}, 5000);

const persistDraft = debounce((content) => {
  writeFileSync('draft.json', JSON.stringify(content));
}, 800);

onMetricTick(logMetrics);
onEditorChange(persistDraft);

SQLite: vorbereitete Statements lassen sich jetzt explizit schließen

StatementSync.prototype.close() und StatementSync.prototype[Symbol.dispose]() halten Einzug in das Modul node:sqlite. Vorbereitete Statements blieben bisher so lange geöffnet, wie der Prozess lief; sie können nun explizit freigegeben werden, oder automatisch über die using-Syntax der Sprache, was die Ressourcenverwaltung in Migrationsskripten oder Einmalaufgaben vereinfacht.

perf_hooks schärft die Beobachtung von Latenzen

Das Performance-Messmodul erhält ein neues gleitendes Fenster-Histogramm, SlidingWindowHistogram, sowie eine API für das Konfidenzintervall des Mittelwerts (meanCI) und CBOR-Export/Import, um Histogramme zwischen Prozessen oder Diensten auszutauschen.

Mit SlidingWindowHistogram begnügt sich perf_hooks nicht mehr mit einem gleitenden Mittelwert: Es erfasst, wie sich eine Latenz über die Zeit entwickelt, nicht nur ihren Durchschnitt über die gesamte Lebensdauer des Prozesses.

NeuerungModulTypische Verwendung
crypto.parsePKCS12()node:cryptoEin .p12-Client-Zertifikat ohne externe Abhängigkeit laden
Generische MAC-APInode:cryptoEinen Nachrichtenauthentifizierungscode unabhängig von HMAC berechnen
SIV- / GCM-SIV-Modinode:cryptoVerschlüsselung, die Nonce-Wiederverwendung toleriert
util.throttle / util.debouncenode:utilHäufigkeit von Schreibvorgängen oder Netzwerkaufrufen begrenzen
StatementSync.close() / Symbol.disposenode:sqliteEin vorbereitetes Statement explizit freigeben
SlidingWindowHistogramnode:perf_hooksDie Entwicklung einer Latenz über die Zeit verfolgen

Dieses Patch-Release zeigt einen langfristigen Trend im 24er-Zweig: Hilfsfunktionen, die sich die meisten Teams bisher über npm besorgten, wandern in den Kern der Laufzeitumgebung. Es ist dieselbe Bewegung, die zur standardmäßigen Aktivierung der Temporal API in Node.js 26 geführt hat, wo sich das Projekt für Standardisierung statt für eine Fragmentierung desselben Bedarfs über Dutzende konkurrierender Pakete entschieden hat.

Das Wichtigste in Kürze

Node.js 24.22.0 bleibt im strengen Sinne ein Minor-Update (SEMVER-MINOR bei fast allen Änderungen), ohne erwartete Breaking Changes für bestehende Anwendungen. Teams, die Client-Zertifikate verwalten, Skripte zur Ratenbegrenzung schreiben oder auf eingebettetes SQLite setzen, haben nun einen konkreten Grund, den Umstieg auf diese LTS-Linie einzuplanen.

Was mich an diesem Release am meisten beeindruckt, ist nicht die Kryptografie, sondern das Duo throttle/debounce: Das sind zwei Funktionen, die ich in den letzten zehn Jahren auf praktisch jedem Backend-Projekt neu implementiert oder aus lodash importiert habe. Sie nun in der Laufzeitumgebung zu sehen, mit einer vom Node-Team selbst getesteten Semantik, bedeutet eine Abhängigkeitszeile weniger, die man bei jedem Kundenprojekt prüfen muss. — Simon Janvier

Weiterführende Links: Die vollständigen Änderungen der Version 24.22.0 sind im offiziellen Changelog des Node.js-24-Zweigs nachzulesen.

Teilen LinkedIn Bluesky Hacker News E-mail

Ebenfalls lesenswert