ssh2.utils.generateKeyPairSync liefert in etwa 4 von 1000 Fällen einen privaten Schlüssel, an dem der eigene Parser scheitert. Ein so erzeugter Server-Schlüssel wäre dauerhaft unbrauchbar gewesen; in den Tests war es die Ursache des gelegentlich roten SSH-Tests. Refs #014 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
14 lines
504 B
TypeScript
14 lines
504 B
TypeScript
import { utils } from "ssh2";
|
|
import { describe, expect, it } from "vitest";
|
|
import { ed25519Erzeugen } from "@/engine/ssh/schluessel";
|
|
|
|
describe("ed25519Erzeugen", () => {
|
|
it("liefert nur Schlüssel, die ssh2 selbst lesen kann (roh scheitern etwa 4 von 1000)", () => {
|
|
for (let i = 0; i < 1500; i++) {
|
|
const paar = ed25519Erzeugen("test");
|
|
expect(utils.parseKey(paar.privat)).not.toBeInstanceOf(Error);
|
|
expect(paar.oeffentlich).toMatch(/^ssh-ed25519 \S+ test$/);
|
|
}
|
|
});
|
|
});
|