[Mono-bugs] [Bug 75742][Nor] Changed - MONO PKCS7 signed by RSAManaged cannot be verified by Microsoft components.

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Thu Oct 20 11:49:34 EDT 2005


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by sebastien at ximian.com.

http://bugzilla.ximian.com/show_bug.cgi?id=75742

--- shadow/75742	2005-10-20 11:02:34.000000000 -0400
+++ shadow/75742.tmp.17195	2005-10-20 11:49:34.000000000 -0400
@@ -1,12 +1,12 @@
 Bug#: 75742
 Product: Mono: Class Libraries
 Version: 1.1
 OS: unknown
 OS Details: 
-Status: NEEDINFO   
+Status: REOPENED   
 Resolution: 
 Severity: Unknown
 Priority: Normal
 Component: Mono.Security
 AssignedTo: mono-bugs at ximian.com                            
 ReportedBy: dgranath at gmail.com               
@@ -45,6 +45,48 @@
   Everytime
 
 ------- Additional Comments From dgranath at gmail.com  2005-10-20 11:02 -------
 Created an attachment (id=15951)
 Test case for showing asym key incompatibilities Mono/Ms
 
+
+------- Additional Comments From sebastien at ximian.com  2005-10-20 11:49 -------
+This looks like an endianess issue. CryptoAPI & CAPICOM are known to
+have reversed values - so that (probably) explains why this works with
+other implementations.
+
+Running you sample on Mono I get:
+Mono Key; Ms Sig; Mono Verify; True
+Mono Key; Ms Sig; Ms Verify; True
+Mono Key; Mono Sig; Mono Verify; True
+Mono Key; Mono Sig; Ms Verify; True
+Ms Key; Ms Sig; Ms Verify; True
+Ms Key; Mono Sig; Ms Verify; False
+
+while on MS I get
+Mono Key; Ms Sig; Mono Verify; True
+Mono Key; Ms Sig; Ms Verify; False
+Mono Key; Mono Sig; Mono Verify; True
+Mono Key; Mono Sig; Ms Verify; False
+Ms Key; Ms Sig; Ms Verify; True
+Ms Key; Mono Sig; Ms Verify; False
+
+However the last part of your sample is wrong as you sign with kp and
+verify with mskp - which are different keys (unless you expected that
+failure?)
+
+	// Sign/Mono
+	sig = PKCS1.Sign_v15(kp, hash, hashedData);
+
+	// Verify/Ms
+	sdf = new RSAPKCS1SignatureDeformatter(mskp);
+	sdf.SetHashAlgorithm("SHA1");
+	Console.WriteLine("Ms Key; Mono Sig; Ms Verify; " +
+sdf.VerifySignature(hashedData, sig));
+
+Changing kp with mskp returns True under Mono and a
+NotSupportedException under Windows (as MS RSACryptoServiceProvider
+doesn't suuport DecryptValue). Another change could be exporting kp
+and importing it into mskp...
+
+I'll look into the other failures. Thanks for the sample.
+


More information about the mono-bugs mailing list