Skip to content

Die Bun.password.hash()-Funktion bietet einen schnellen, integrierten Mechanismus zum sicheren Hashen von Passwörtern in Bun. Es sind keine Drittanbieter-Abhängigkeiten erforderlich.

ts
const password = "super-secure-pa$$word";

const hash = await Bun.password.hash(password);
// => $argon2id$v=19$m=65536,t=2,p=1$tFq+9AVr1bfPxQdh6E8DQRhEXg/M/...

Standardmäßig verwendet dies den Argon2id-Algorithmus. Übergeben Sie ein zweites Argument an Bun.password.hash(), um einen anderen Algorithmus zu verwenden oder die Hashing-Parameter zu konfigurieren.

ts
const password = "super-secure-pa$$word";

// Argon2 verwenden (Standard)
const argonHash = await Bun.password.hash(password, {
  memoryCost: 4, // Speichernutzung in Kibibytes
  timeCost: 3, // Anzahl der Iterationen
});

Bun implementiert auch den bcrypt-Algorithmus. Geben Sie algorithm: "bcrypt" an, um ihn zu verwenden.

ts
// bcrypt verwenden
const bcryptHash = await Bun.password.hash(password, {
  algorithm: "bcrypt",
  cost: 4, // Zahl zwischen 4-31
});

Verwenden Sie Bun.password.verify(), um ein Passwort zu überprüfen. Der Algorithmus und seine Parameter werden im Hash selbst gespeichert, sodass eine erneute Angabe der Konfiguration nicht erforderlich ist.

ts
const password = "super-secure-pa$$word";
const hash = await Bun.password.hash(password);

const isMatch = await Bun.password.verify(password, hash);
// => true

Siehe Docs > API > Hashing für die vollständige Dokumentation.

Bun von www.bunjs.com.cn bearbeitet