[Mono-bugs] [Bug 646491] New: Constructor X509Certificate2(byte[]) throws an exception
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Thu Oct 14 06:45:47 EDT 2010
https://bugzilla.novell.com/show_bug.cgi?id=646491
https://bugzilla.novell.com/show_bug.cgi?id=646491#c0
Summary: Constructor X509Certificate2(byte[]) throws an
exception
Classification: Mono
Product: Mono: Runtime
Version: 2.8.x
Platform: All
OS/Version: All
Status: NEW
Severity: Critical
Priority: P5 - None
Component: interop
AssignedTo: mono-bugs at lists.ximian.com
ReportedBy: djechelon at fastwebnet.it
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Blocker: ---
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; it; rv:1.9.2.10)
Gecko/20100914 Firefox/3.6.10
When I try to load an X509Certificate that is stored as a .p12 file as an
embedded resource assembly, I get its payload as a byte[] and pass it to
X509Certificate2 constructor. Then I get a SecurityException from Mono.Security
Reproducible: Always
Steps to Reproduce:
Try running attached demo project
Actual Results:
Reading file but passing as byte[]
System.Security.Cryptography.CryptographicException: Unable to decode
certificat
e. ---> System.Security.Cryptography.CryptographicException: Input data cannot
b
e coded as a valid certificate. --->
System.Security.Cryptography.CryptographicE
xception: Input data cannot be coded as a valid certificate.
at Mono.Security.X509.X509Certificate.Parse (System.Byte[] data) [0x00041] in
C:\cygwin\tmp\monobuild\build\BUILD\mono-2.8\mcs\class\corlib\Mono.Security.X509
\X509Certificate.cs:113
--- End of inner exception stack trace ---
at Mono.Security.X509.X509Certificate.Parse (System.Byte[] data) [0x00352] in
C:\cygwin\tmp\monobuild\build\BUILD\mono-2.8\mcs\class\corlib\Mono.Security.X509
\X509Certificate.cs:207
at Mono.Security.X509.X509Certificate..ctor (System.Byte[] data) [0x00043] in
C:\cygwin\tmp\monobuild\build\BUILD\mono-2.8\mcs\class\corlib\Mono.Security.X509
\X509Certificate.cs:225
at System.Security.Cryptography.X509Certificates.X509Certificate.Import
(Syste
m.Byte[] rawData, System.String password, X509KeyStorageFlags keyStorageFlags)
[
0x0000c] in
C:\cygwin\tmp\monobuild\build\BUILD\mono-2.8\mcs\class\corlib\System
Security.Cryptography.X509Certificates\X509Certificate20.cs:225
--- End of inner exception stack trace ---
at System.Security.Cryptography.X509Certificates.X509Certificate.Import
(Syste
m.Byte[] rawData, System.String password, X509KeyStorageFlags keyStorageFlags)
[
0x00065] in
C:\cygwin\tmp\monobuild\build\BUILD\mono-2.8\mcs\class\corlib\System
Security.Cryptography.X509Certificates\X509Certificate20.cs:238
at System.Security.Cryptography.X509Certificates.X509Certificate2.Import
(Syst
em.Byte[] rawData, System.String password, X509KeyStorageFlags keyStorageFlags)
[0x00000] in
C:\cygwin\tmp\monobuild\build\BUILD\mono-2.8\mcs\class\System\Syste
m.Security.Cryptography.X509Certificates\X509Certificate2.cs:441
at System.Security.Cryptography.X509Certificates.X509Certificate2..ctor
(Syste
m.Byte[] rawData) [0x00011] in
C:\cygwin\tmp\monobuild\build\BUILD\mono-2.8\mcs\
class\System\System.Security.Cryptography.X509Certificates\X509Certificate2.cs:7
2
at Certificate.Program.Main (System.String[] args) [0x00000] in <filename
unkn
own>:0
Expected Results:
I expect the program to output certificate information
Problem occurred in both Mono 2.6.7 and Mono 2.8. Current test done under
Windows but found the same to occur in Linux too.
Workaround: (as soon as you are sure payload is PKCS#12) write the byte[] in a
temporary file and load it with string constructor
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list