Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Error: secretOrPrivateKey must be an asymmetric key when using ES256

Abierto
#898 13 comentarios 3 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
javascript, node.js, typescript

Línea de trabajo

Reproduce la llamada en src/app.ts:151 usando el valor de issuer.getPrivateKey() y las opciones de ES256 mostradas. Sigue el fallo a través de node_modules/jsonwebtoken/sign.js:124 y compara después el valor de clave aceptado por sign con el valor pasado a verify. La tarea está completada cuando se haya establecido el comportamiento compatible o el formato de clave requerido y esté cubierto por una prueba de regresión específica o por documentación.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Description

I am unable to sign a jwt by using the private key associated to a Metamask wallet. Ideally I would like to sign a jwt for a verifiable credential by using the private key of the issuer of the credential:

const vcPayload = {
  sub: sub.getDid(),
  nbf: Math.floor(Date.now() / 1000),
  vc: {
    '@context': ['https://www.w3.org/2018/credentials/v1'],
    type: ['VerifiableCredential'],
    credentialSubject: {
      degree: {
        type: 'BachelorDegree',
        name: 'Baccalauréat en musiques numériques'
      }
    }
  }
}

const vcJwt = jwt.sign(vcPayload, issuer.getPrivateKey(), { algorithm: 'ES256' });

const decodedJwt = jwt.decode(vcJwt, { complete: true });
console.log(`Decoded VC: ${JSON.stringify(decodedJwt)}`);

const verifiedJwt = jwt.verify(vcJwt, issuer.getPublicKey(), { algorithms: ['ES256'] });
console.log(`Verified VC: ${JSON.stringify(JSON.stringify(verifiedJwt))}`);

The problem I am encountering is the following one:

Error: secretOrPrivateKey must be an asymmetric key when using ES256
    at module.exports [as sign] (node_modules/jsonwebtoken/sign.js:124:22)
    at main (src/app.ts:151:21)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {stack: 'Error: secretOrPrivateKey must be an asymmetr…ions (node:internal/process/task_queues:95:5)', message: 'secretOrPrivateKey must be an asymmetric key when using ES256'}
Environment

"jsonwebtoken": "9.0.0"

Lenguaje dominante
JavaScript
Estrellas
18.2k
Forks
1.3k
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de auth0/node-jsonwebtoken

Todos los issues de auth0/node-jsonwebtoken

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.