결국 Windows 및 Linux (Mono)에서 실행해야하는 Windows 용 유틸리티를 작성하고 있습니다. 이 문서에서는 Windows에서 잘 작동하는 사용자 입력에 의해 지정된 파일에서 인증서를로드하고 있습니다. 그러나 Mono에서 실행하고 Windows에서 사용하는 것과 동일한 인증서를 사용하면 "입력 데이터를 유효한 인증서로 코딩 할 수 없습니다"라는 텍스트가있는 System.Security.Cryptography.CryptographicException이 발생합니다.Mono에서 X509Certificate2를로드하면 CryptographicException이 throw됩니다. "입력 데이터를 유효한 인증서로 코딩 할 수 없습니다."
Mono에 버그가 있습니까? 아니면 다른 플랫폼에서 인증서를로드하기 위해 뭔가 다른 작업을 수행해야합니까? 그냥 이런 작은 테스트 기능은 오류가 표시됩니다 :
public X509Certificate2 LoadCertificate(string certPath)
{
X509Certificate2 signingCertificate = new X509Certificate2(certPath);
return signingCertificate;
}