19 lines
925 B
JavaScript
19 lines
925 B
JavaScript
// Fixtura: optiuni TLS in Node.
|
|
const tls = require('node:tls');
|
|
const https = require('https');
|
|
|
|
const server = tls.createServer({
|
|
minVersion: 'TLSv1', // EXPECT: TLSv1.0 | weak-now
|
|
ecdhCurve: 'X25519MLKEM768:X25519:prime256v1', // EXPECT: X25519MLKEM768 | quantum-safe ; X25519 | quantum-vulnerable ; ECDH-secp256r1 | quantum-vulnerable
|
|
});
|
|
|
|
const agent = new https.Agent({ minVersion: 'TLSv1.2', maxVersion: 'TLSv1.3' }); // EXPECT: TLSv1.2 | quantum-vulnerable ; TLSv1.3 | unknown
|
|
|
|
const PQ = 'X25519MLKEM768';
|
|
const GRUPURI = { hibrid: 'X25519MLKEM768' };
|
|
const a2 = tls.connect({ ecdhCurve: PQ }); // EXPECT: X25519MLKEM768 | quantum-safe
|
|
const a3 = tls.connect({ ecdhCurve: `${PQ}:X25519` }); // EXPECT: X25519MLKEM768 | quantum-safe ; X25519 | quantum-vulnerable
|
|
const a4 = tls.connect({ ecdhCurve: GRUPURI[process.env.MOD] }); // EXPECT: tls ecdhCurve | unknown
|
|
|
|
module.exports = { server, agent, a2, a3, a4 };
|