Я разрабатываю приложение, в котором мне нужно будет проверить, есть ли в загруженных файлах p12 сертификаты, выданные доверенными центрами сертификации. Я пытаюсь найти программный c способ сделать это в javascript, хотя если это невозможно в js, я могу использовать другой язык.
Я не знаю, что это будет наиболее подходящим инструмент для этого, но я использую библиотеку узла forge и имею следующее:
const p12 = fs.readFileSync(PATH_TO_PDF_P12_CERTIFICATE, 'binary');
const p12Asn1 = forge.asn1.fromDer(p12, false);
const p12Parsed = forge.pkcs12.pkcs12FromAsn1(p12Asn1, false, 'password');
const bags = p12Parsed.getBags({bagType: forge.pki.oids.certBag});
const caStore = forge.pki.createCaStore();
forge.pki.verifyCertificateChain(caStore, [Object.values(bags)[0][0].cert]);
Однако, похоже, у меня в caStore нет сертификатов по умолчанию, и я не знаю, как его получить чтобы проверить уже установленные на моей машине.