Quindi porto una libreria ruby su node.js e devo creare una firma PKCS7.Come eseguire questa registrazione PKCS7 in node.js?
Ecco ciò che il lib rubino sta facendo:
p12_certificate = OpenSSL::PKCS12::new(File.read('some-path.c12'), self.certificate_password)
x509_certificate = OpenSSL::X509::Certificate.new(File.read('some-other-path.pem'))
flag = OpenSSL::PKCS7::BINARY|OpenSSL::PKCS7::DETACHED
signed = OpenSSL::PKCS7::sign(p12_certificate.certificate, p12_certificate.key, File.read('some-manifest'), [x509_certificate], flag)
Come dovrei ottenere la stessa cosa nel nodo? Suppongo che sarebbe qualcosa di simile:
crypto.createCredentials({
pfx : fs.readFileSync('some-cert.p12'),
passphrase : this.certificate_password,
cert : fs.readFileSync('some-path.pem','some-encoding'),
})
Domande:
- È questo il modo giusto per fare questo?
- Devo specificare una chiave, un elenco, un elenco di crl o un elenco di cifre?
- quale codifica dovrei usare per leggere il certificato?
- qual è il nodo equivalente di impostazione
signed
- linea di quello che è il nodo equivalente di
signed.to_der
Stai scrivendo una libreria di libretti Apple. Ho faticato a cercare di capire la stessa cosa. –
@ChrisF - quindi, ti sei arreso, o cosa? So che il nodo può farcela, almeno utilizzando il firmatario di esempio di Apple scritto in C - tuttavia, vorrei evitare di introdurre una dipendenza compilata. – Jesse
@Jesse E tu? Ancora bloccato su questo, sto incontrando la stessa sfida per un server MDM nodo ma sono bloccato in precedenza! cf. http://stackoverflow.com/questions/12956995/pkcs7-data-payload-unpacking-with-nodejs – Olivier