Support different MAC Algorithms to generate PKCS12 wrapper
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
- #1062 de @leninmehedy — cerrado sin fusionar
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- javascript
- Área
- cryptography
Línea de trabajo
Start in lib/pkcs12.js at p12.toPkcs12Asn1 and inspect the existing algorithm and MAC-detection paths. Trace how the MAC is generated, then verify that the requested option is configurable, defaults to SHA1 for compatibility, and produces output usable with the stated OpenSSL MAC algorithm example.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Background
Currently openssl or keytool uses SHA256 to generate MAC data for pkcs12. However, node-forge uses SHA1 as here
openssl also allows specifying the macAlgorithm using parameter below:
-macalg val Digest algorithm to use in MAC (default SHA256)
node-forge currently allows reading pkcs12 files generated by other tool and supports detecting the MAC algorithm used as you can find here
Proposal
We should allow passing a new option called options.macAlgorithm for function p12.toPkcs12Asn1.
Here:
macAlgorithmshould be a string similar tooptions.algorithmoroptions.encAlgorithmparameter.macAlgorithmmust default tosha1for backward compatibility.
For example, someone should be allowed to generate pkcs12 using node-forge as below that essentially generates similar to openssl:
const pkcs12Asn1 = forge.pkcs12.toPkcs12Asn1(keypair.privateKey, cert, constants.PFX_DUMMY_PASSWORD, {
count: 10000,
saltSize: 20,
algorithm: `aes256`
macAlgorithm: 'sha256'
friendlyName: `my-node0`,
})
# generate pkcs12 file using openssl
openssl pkcs12 -export -out private-node0-openssl.p12 -inkey myKey.pem -in cert.pem -iter 10000 -name my-node0 -macsaltlen 20
- Lenguaje dominante
- JavaScript
- Estrellas
- 5.4k
- Forks
- 875
- Merge medio
- 3 min
- PR fusionados (30 d)
- 6
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de digitalbazaar/forge
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
digitalbazaar/forge#1170 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 52/100
digitalbazaar/forge#1147 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
digitalbazaar/forge#1146 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 58/100
digitalbazaar/forge#1145 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 48/100
digitalbazaar/forge#1144 ·
Los mantenedores suelen responder en 1 día
Todos los issues de digitalbazaar/forge
Issues similares
-
area:models enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
status: ready
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
melodic-software/claude-code-plugins#14389 ·
Los mantenedores suelen responder en 1 día
-
[推荐] oai123 - ChatGPT代充平台与AI服务商城Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100