Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

282
Views
Obtenga claves de sesión TLS con NodeJS

Tengo una aplicación de servidor y cliente escrita en NodeJS que se comunican entre sí a través de TLS, con certificados autofirmados. Los certificados no se validan con una CA; en cambio, el usuario tiene acceso a ambas interfaces a la vez y verificará manualmente la autenticidad del servidor y el cliente utilizando un código de verificación calculado en ambas aplicaciones utilizando la clave de escritura del servidor TLS y la clave de escritura del cliente.

¿Se almacenan estas claves incluso después de que se completa el apretón de manos? ¿Cómo puedo acceder a estas claves desde un socket TLS de NodeJS en el lado del cliente? Estoy usando la biblioteca https nativa.

Código del servidor:

 const options = { key: fs.readFileSync('./server.key'), cert: fs.readFileSync('./server.crt'), enableTrace: true, requestCert: true, rejectUnauthorized: false, }; const server = https.createServer(options, app); this.initWithServer(server); server.on('secureConnection', (soc) => { console.log(server.getTicketKeys()); });

Codigo del cliente:

 const requestOptions = { hostname: HOST, port: PORT, path: '/', method: 'GET', rejectUnauthorized: false, requestCert: true, key: fs.readFileSync('./client.key'), cert: fs.readFileSync('./client.crt'), }; requestOptions.agent = new https.Agent(requestOptions); const req = https.request(requestOptions, (res) => { res.setEncoding('utf8'); let data = ''; res.on('data', (resBody) => { data += resBody; }); res.on('end', () => { const body = JSON.parse(data); }); }); req.end(); req.on('socket', (socket) => { socket.on('secureConnect', () => { const peerCertificate = socket.getPeerCertificate(true); console.log(peerCertificate.pubkey); const localCertificate = socket.getCertificate(true); console.log(localCertificate.pubkey); console.log(socket.getSession()) }); });
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!