Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

98
Visualizações
Problema con crypto.importKey en Safari

Estoy desarrollando una página web, que también debe tener una función de chat, para que los usuarios puedan comunicarse entre sí a través de la plataforma. Los mensajes deben cifrarse con cifrado de extremo a extremo. Por lo tanto, uso la biblioteca criptográfica incorporada de Web-API. Al final del proceso de registro, cada usuario obtiene un par de claves generado. Cuando un usuario inicia sesión, su clave privada (en formato jwk) se cargará con:
crypto.subtle.importKey("jwk", data, { name: 'ECDH', namedCurve : 'P-256' }, true, ["deriveKey", "deriveBits"]).then(...) .
Cuando el usuario intenta iniciar una conversación con otro usuario, la clave pública del otro usuario se cargará con:
crypto.subtle.importKey("jwk", jwkData, { name: 'ECDH', namedCurve : 'P-256' }, true, ["deriveKey", "deriveBits"]).then(...) o
crypto.subtle.importKey("spki", base64data, { name: 'ECDH', namedCurve : 'P-256' }, true, ["deriveKey", "deriveBits"]).then(...) .

Todo el proceso de cifrado/descifrado funciona perfectamente en Firefox. Pero si pruebo el mismo código con Safari, la carga de la clave pública falla con: SyntaxError: A required parameter was missing or out-of-range. . Recibo este mismo error si trato de cargar la clave desde base64 o datos jwk. Logré averiguar qué parámetro falta, es el componente "d" en el jwk, pero esto solo debería incluirse en la clave privada, ¿no? La clave privada se puede cargar como se esperaba también en Safari, solo que la clave pública no.

Busqué en la lista de errores de Safari con criptografía, hay un montón de ellos, pero no especialmente este. ¿Alguien tiene experiencia con este error o alguna idea de cómo solucionarlo?

Gracias y un saludo Atila

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda