Vì vậy, tôi đang chuyển thư viện ruby sang node.js và cần tạo chữ ký PKCS7.Làm cách nào để thực hiện việc đăng nhập PKCS7 này trong node.js?
Dưới đây là những gì các lib ruby được thực hiện:
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)
Làm thế nào tôi sẽ đạt được điều tương tự trong nút? Tôi cho rằng nó sẽ là một cái gì đó như:
crypto.createCredentials({
pfx : fs.readFileSync('some-cert.p12'),
passphrase : this.certificate_password,
cert : fs.readFileSync('some-path.pem','some-encoding'),
})
Câu hỏi:
- Đây có phải là đúng cách để làm điều này?
- Tôi có cần chỉ định danh sách khóa, danh sách ca, danh sách crl hoặc danh sách mật mã không?
- tôi nên sử dụng mã hóa nào để đọc chứng chỉ?
- là những gì tương đương với nút thiết
signed
- dòng là những gì tương đương với nút của
signed.to_der
Bạn đang viết thư viện sổ tiết kiệm Apple. Tôi đã cố gắng tìm ra điều tương tự. –
@ChrisF - vậy, bạn có bỏ cuộc hay không? Tôi biết nút có thể kéo điều này đi, ít nhất là bằng cách sử dụng ký hiệu mẫu của Apple được viết bằng C - tuy nhiên, tôi muốn tránh giới thiệu một phụ thuộc biên dịch. – Jesse
@Jesse Còn bạn thì sao? Vẫn còn mắc kẹt về điều này, tôi đang gặp phải những thách thức tương tự cho một máy chủ MDM nút nhưng tôi bị mắc kẹt trước đó! cf. http://stackoverflow.com/questions/12956995/pkcs7-data-payload-unpacking-with-nodejs – Olivier