Question:
Hi, i've a big problem with decrypt a mime object with a pfx certificate. I'm using ChilkatDotNet4.dll in my c# project. I've builded the project and release it in windows 7, working well. When i execute my exe in another windows xp machine, i'm getting an error with the same pfx file. The same exe and pfx working in another win xp machine... There are no difference between machines installed frameworks. Help me to find a solution,please! This is the log after error:
ChilkatLog:
DecryptUsingPfxFile:DllDate: Jan 19 2012
UnlockPrefix: TELEWRSMIME
Username: WRMCDCTXCOM51:mborlik
Architecture: Little Endian; 32-bit
Language: .NET 4.0
pfxFilename: C:Documents and SettingsmborlikDesktopCryptXcomFaxCertificatesxcom.pfx
importPfxData:ParsePkcs12:verifyHmacIntegrity:Failed to decode DER -- number of bytes in DER is zero.saltNumBytes: 20nContentInfos: 2
saltBase64: c6YvQEIyKen3ZLWPgkLeM8PsWek=
numIterations: 2000
macHashOid: 1.3.14.3.2.26
macStoredDigest: 9ED5 5A06 0354 1647 8BD7 0AF2 6991 4B9C 1CBD C2A8
Password and HMAC verified.
ContentInfo:Pkcs7_loadXml:numCerts: 3PKCS7 DataPKCS7_DATA
dataSize: 1595
SafeContents:SafeBagOid: 1.2.840.113549.1.12.10.1.2ContentInfo:
Pkcs8ShroudedKeyBag
Pkcs8ShroudedKeyBag:PBE encryption.
Salt: PmEz+ZEDdbk=
Iterations: 2000
numEncryptedBytes: 1240
algorithm: des
keyLength: 192
outputSize: 1233
Pkcs7_loadXml:Pkcs7_EncryptedData:PKCS7_ENCRYPTED_DATAPBE encryption.
Salt: YhN9YKfTNxY=
Iterations: 2000
numEncryptedBytes: 4512
algorithm: rc2
keyLength: 40
outputSize: 4506
SafeContents:SafeBagOid: 1.2.840.113549.1.12.10.1.3
CertBag
x509_cert_CN: xxxx
x509_cert_E: xxx@xxxx.lis
x509_cert_DN: C=IT, ST=Lombardia, L=Milano, O=xxxxx Telecomunicazionixxx., OU=xxxx, CN=xxxx, E=fax@xcom.lis
x509_serial: 173DB3310002000001AB
SubjectKeyIdentifier: Xl20DLqa4NmVCUWMm7boUwzUbmQ=
SafeBagOid: 1.2.840.113549.1.12.10.1.3
CertBag
x509_cert_CN: Intranetxxxx Root CA
x509_cert_DN: DC=it, DC=root, CN=Intranet xxxx Root CA
x509_serial: 5B1C60D3157C958C470D4F2A5D395DC1
SubjectKeyIdentifier: oWIct91eZG3EeHh1TpNvonmo9GE=
SafeBagOid: 1.2.840.113549.1.12.10.1.3
CertBag
x509_cert_CN: Intranetxxxxx Certificate Authority
x509_cert_DN: DC=it, DC=root, DC=xxxx, CN=Intranet xxxxxx Certificate Authority
x509_serial: 42D90D030000000000F2
SubjectKeyIdentifier: ofP54WKPBM9qryeFxSjrIa79YTg=
PFX imported successfully.
Failed to decode DER.
Not PKCS7 DER.
Failed.
The change in operating system (XP vs. Windows 7) is not the cause of the problem. My guess is that the error occurs earlier when your app loads the MIME object. I suspect the task of loading the MIME object with the encrypted MIME failed, your app didn't notice it, and then called DecryptUsingPfxFile on an empty MIME object. The PFX loaded fine, but given that the MIME object is empty, you get the "Failed to decode DER -- number of bytes in DER is zero." error message.
Thanks for the answer, i try to update the chilkat from 9.3.0 to 9.3.2 and now it works! this will remain a mystery...
We have the same problem
We had used Chilkat2 (9.4.1) on Framework 2.0 and all worked fine.
Now we upgraded to ChilkatDotNet45 and mime.DecryptUsingPfxFile() does not work anymore.
same code on the same email and the same certificate, different results.
Having Verbose logging switched on this is all I get:
ChilkatLog:
DecryptUsingPfxFile:
DllDate: Mar 11 2016
ChilkatVersion: 9.5.0.56
UnlockPrefix: UPSDEUSMIME
Username: WKSP000587B3:kln1avp
Architecture: Little Endian; 32-bit
Language: .NET 4.5
VerboseLogging: 1
pfxPath: D:\UPSDATA\BOSS\DAT\NLCerts\bpUPS.pfx
Failed.
--DecryptUsingPfxFile
--ChilkatLog.
I would really appreciate if there would be some help provided here as this is a very unpleasant situation.
update:
I learned from the last post that it might help you guys get the working version as well. When using ChilkatDotNet2.dll in version 9.4.1 I have the success and the following Log content:
ChilkatLog:
DecryptUsingPfxFile:
DllDate: Jul 8 2013
ChilkatVersion: 9.4.1.25
UnlockPrefix: UPSDEUSMIME
Username: WKSP000587B3:kln1avp
Architecture: Little Endian; 32-bit
Language: .NET 2.0
VerboseLogging: 1
pfxFilename: D:\UPSDATA\BOSS\DAT\NLCerts\bpUPS.pfx
importPfxData:
ParsePkcs12:
verifyHmacIntegrity:
saltNumBytes: 20
saltBase64: dSkUqts5Cr7UlgDRqw1qVvctt0M=
numIterations: 2000
macHashOid: 1.3.14.3.2.26
macStoredDigest: 874B 3C9E 4DD8 3896 B4F7 EB82 004D D1F3
9913 0C4A
Password and HMAC verified.
--verifyHmacIntegrity
SEQUENCE
DecodeAsnConstructed:
Integer
intBytes: 03
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.7.1 (PKCS7 Data)
Tag=Constructed
DecodeAsnConstructed:
OctetString: 1863
qp_string: 0=82=07C0=82=03=BC=06 *=86H=86=F7=0D=01=07=01=A0=82=03=AD=04=82=03=A90=82=
=03=A50=82=03=A1=06=0B*=86H=86=F7=0D=01=0C=0A=01=02=A0=82=02=B60=82=02=B20=
=1C=06=0A*=86H=86=F7=0D=01=0C=01=030=0E=04=08=B2=FE=9E=9E=AC=E1
--DecodeAsnConstructed
--DecodeAsnConstructed
SEQUENCE
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 1.3.14.3.2.26
--DecodeAsnConstructed
OctetString: 20
qp_string: =87K<=9EM=D88=96=B4=F7=EB=82=00M=D1=F3=99=13=0CJ
--DecodeAsnConstructed
OctetString: 20
qp_string: u)=14=AA=DB9=0A=BE=D4=96=00=D1=AB=0DjV=F7-=B7C
Integer
intBytes: 07D0
--DecodeAsnConstructed
--DecodeAsnConstructed
AuthenticatedSafe:
SEQUENCE
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.7.1 (PKCS7 Data)
Tag=Constructed
DecodeAsnConstructed:
OctetString: 937
qp_string: 0=82=03=A50=82=03=A1=06=0B*=86H=86=F7=0D=01=0C=0A=01=02=A0=82=02=B60=82=02=
=B20=1C=06=0A*=86H=86=F7=0D=01=0C=01=030=0E=04=08=B2=FE=9E=9E=AC=E1@=8D=02=
=02=07=D0=04=82=02=90=87=FEc=A8=C6=C6=DE*=A4=E5(=8B &=84k=99
--DecodeAsnConstructed
--DecodeAsnConstructed
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.7.6 (PKCS7 EncryptedData)
Tag=Constructed
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Integer
intBytes: 00
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.7.1 (PKCS7 Data)
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.12.1.6 (PKCS12 SafeContentsBag)
SEQUENCE
DecodeAsnConstructed:
OctetString: 8
qp_string: J~y1*=9CN=EC
Integer
intBytes: 07D0
--DecodeAsnConstructed
--DecodeAsnConstructed
--DecodeAsnConstructed
--DecodeAsnConstructed
--DecodeAsnConstructed
--DecodeAsnConstructed
--DecodeAsnConstructed
--AuthenticatedSafe
nContentInfos: 2
ContentInfo:
Pkcs7_loadXml:
PKCS7 Data
dataSize: 937
--Pkcs7_loadXml
PKCS7_DATA
SafeContents:
SafeBagOid: 1.2.840.113549.1.12.10.1.2
Pkcs8ShroudedKeyBag
Pkcs8ShroudedKeyBag:
PBE encryption.
Salt: sv6enqzhQI0=
Iterations: 2000
numEncryptedBytes: 656
algorithm: des
keyLength: 192
outputSize: 649
--Pkcs8ShroudedKeyBag
--SafeContents
ContentInfo:
Pkcs7_loadXml:
Pkcs7_EncryptedData:
AlgorithmIdentifier:
oid: 1.2.840.113549.1.12.1.6
PBE encryption.
Salt: Sn55MSqcTuw=
Iterations: 2000
--AlgorithmIdentifier
numEncryptedBytes: 824
algorithm: rc2
keyLength: 40
outputSize: 817
--Pkcs7_EncryptedData
--Pkcs7_loadXml
PKCS7_ENCRYPTED_DATA
SafeContents:
SafeBagOid: 1.2.840.113549.1.12.10.1.3
CertBag
x509_cert_E: ups@douane.lan
x509_cert_DN: C=NL, O=UPS, OU=UPS, E=ups@douane.lan
x509_serial: 00
SubjectKeyIdentifier: iyu179VlVBpz7HjVmzV4TAMr6Ck=
--SafeContents
--ContentInfo
--ContentInfo
numCerts: 1
importX509_1:
x509_cert_dn: C=NL, O=UPS, OU=UPS, E=ups@douane.lan
numPrivateKeys: 1
Got encrypted private key.
hashCert_1:
hashCert:
CommonName:
ValidFrom: Sun, 18 Sep 2015 09:45:24 GMT
ValidTo: Sun, 16 Sep 2020 09:45:24 GMT
certHashEntry: 00:
certHashEntry2: SubjectKeyId:iyu179VlVBpz7HjVmzV4TAMr6Ck=
This certificate has a private key.
privKeyHashEntry: 00:
privKeyHashEntry2: SubjectKeyId:iyu179VlVBpz7HjVmzV4TAMr6Ck=
--hashCert
--hashCert_1
--importX509_1
PFX imported successfully.
--ParsePkcs12
loadPkcs7Der_4:
DerParseTimeMs: Elapsed time: 0 millisec
loadPkcs7Xml:
Pkcs7_loadXml:
Pkcs7_EnvelopedData:
RC2_CBC
IV: wUkqzVT/tV8=
KeyLength: 40
numRecipients: 1
RecipientInfo:
IssuerAndSerialNumber:
serialNumber1: 00
issuerCommonName:
issuerCountry: NL
issuerState:
issuerLocality:
issuerOrganization: UPS
--IssuerAndSerialNumber
encryptedKeyNumBytes: 128
--RecipientInfo
--Pkcs7_EnvelopedData
--Pkcs7_loadXml
--loadPkcs7Xml
Pkcs7XmlLoadTimeMs: Elapsed time: 0 millisec
--loadPkcs7Der_4
unEnvelope1:
UnEnvelope:
FindMatchingPrivateKey:
NumRecipientInfos: 1
findPrivateKey: 00:
Key found!
RecipientCertSerialNum: 00
RecipientCertIssuerCN:
Found matching private key
findCert: 00:
--FindMatchingPrivateKey
AlgorithmIdentifier:
oid: 1.2.840.113549.1.1.1
--AlgorithmIdentifier
Decrypting symmetric key...(2)
ModulusLen: 129
DLen: 128
PLen: 65
QLen: 65
DPLen: 65
DQLen: 64
InvQLen: 64
modulus_bitlen: 1024
littleEndian: 1
encryptedData: 4161 B72C 601E D566 E0A9 84D6 DE1E 4C1D
C28D 2EDD EE03 3E71 BDEA 4A17 8055 2F71
E2C9 355E 2AB1 9A88 4BEC 596C 1775 D336
76CA 2962 90F7 2796 2E97 A79B E1D2 AFC8
6943 AD4C 9F7D 475C 9D44 B89A C993 8E13
8300 A2B7 BF80 3A09 7796 3583 ED81 2D5A
E0F2 7326 D082 66F7 F66A 4369 6A07 C271
7740 7DAD 6D23 7A04 1032 90E2 B433 06B5
exptmod: Elapsed time: 0 millisec
exptmod_decoded: 029F F94A F31B 5A5D 609D E1D5 C6D5 ECAF
3FE1 F763 D8EE C44C 5963 91AB 706F DF3A
A146 D770 3921 E441 9D38 AD3F 65D2 8B24
B7BF 337B 109B 8AC7 25CE 6235 6C74 7E14
D3EB 6277 4397 0C25 6AAF D4C1 F9A0 CE6D
064B 3CC9 453C 6B2E 45BF 9B8E 1956 380A
4679 D61B 1885 B31A 9901 045B FA95 A4A5
E3E8 BD5F CE8A A3F0 2400 252A B34E E4
exptmod_decoded_size: 127
padding: PKCS 1.5
sizeAfterPkcs15_decode: 5
Decrypting data using symmetric key (2)
decryptedSymmetricKeyLen2: 5
symmetricDecrypt_2:
setByAlgorithmIdentifier:
algId_oid: 1.2.840.113549.3.2
RC2_CBC
keyLength: 40
--setByAlgorithmIdentifier
symmetricKeySizeInBytes: 5
numBytesToDecrypt: 2840
algorithm: rc2
keyLength: 40
outputSize: 2833
symmetricDecryptOutputSize: 2833
--symmetricDecrypt_2
--UnEnvelope
--unEnvelope1
LoadMimeComplete2:
Found end-of-header.
setHeaderContents:
ParseMimeHeader:
Header is entirely 7-bit
FinalCodePageDecision: 0
unfoldedHeaderField1: Mime-Version: 1.0
MimeField:
rawField: Mime-Version: 1.0
name: Mime-Version
value: 1.0
--MimeField
unfoldedHeaderField1: Content-Type: application/x-pkcs7-mime; smime-type=signed-data; name=smime.p7m
MimeField:
rawField: Content-Type: application/x-pkcs7-mime; smime-type=signed-data; name=smime.p7m
name: Content-Type
value: application/x-pkcs7-mime; smime-type=signed-data; name=smime.p7m
--MimeField
unfoldedHeaderField1: Content-Transfer-Encoding: base64
MimeField:
rawField: Content-Transfer-Encoding: base64
name: Content-Transfer-Encoding
value: base64
--MimeField
unfoldedHeaderField2: Content-Disposition: attachment; filename=212VYTVA.DAT
MimeField:
rawField: Content-Disposition: attachment; filename=212VYTVA.DAT
name: Content-Disposition
value: attachment; filename=212VYTVA.DAT
--MimeField
--ParseMimeHeader
--setHeaderContents
parseMimeBody:
contentType: application/x-pkcs7-mime; smime-type=signed-data; name=smime.p7m
charset:
clearing charset based on content-type.
treating body as binary (non-character) data.
treating body as binary data because of attachment status.
bIsAttachment: 1
setMimeBodyByEncoding2:
encoding: base64
entireBodyLen: 2636
charset:
isText: 0
wasReally1252: 0
--setMimeBodyByEncoding2
--parseMimeBody
--LoadMimeComplete2
SEQUENCE
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Tag=Constructed
DecodeAsnConstructed:
Integer
intBytes: 02
--DecodeAsnConstructed
Integer
intBytes: 00
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.1.5
Null
--DecodeAsnConstructed
SEQUENCE
DecodeAsnConstructed:
SET
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 2.5.4.6
Printable String
qp_string: NL
--DecodeAsnConstructed
--DecodeAsnConstructed
SET
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 2.5.4.10
Printable String
qp_string: UPS
--DecodeAsnConstructed
--DecodeAsnConstructed
SET
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 2.5.4.11
Printable String
qp_string: UPS
--DecodeAsnConstructed
--DecodeAsnConstructed
SET
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.9.1 (PKCS9 Signature Attribute)
IA5 String
qp_string: ups@douane.lan
--DecodeAsnConstructed
--DecodeAsnConstructed
--DecodeAsnConstructed
SEQUENCE
DecodeAsnConstructed:
UTC String
qp_string: 150918094524Z
UTC String
qp_string: 200916094524Z
--DecodeAsnConstructed
SEQUENCE
DecodeAsnConstructed:
SET
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 2.5.4.6
Printable String
qp_string: NL
--DecodeAsnConstructed
--DecodeAsnConstructed
SET
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 2.5.4.10
Printable String
qp_string: UPS
--DecodeAsnConstructed
--DecodeAsnConstructed
SET
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 2.5.4.11
Printable String
qp_string: UPS
--DecodeAsnConstructed
--DecodeAsnConstructed
SET
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.9.1 (PKCS9 Signature Attribute)
IA5 String
qp_string: ups@douane.lan
--DecodeAsnConstructed
--DecodeAsnConstructed
--DecodeAsnConstructed
SEQUENCE
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.1.1
Null
--DecodeAsnConstructed
Bit String
--DecodeAsnConstructed
Tag=Constructed
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
SEQUENCE
DecodeAsnConstructed:
Oid: 2.5.29.14
OctetString: 22
qp_string: =04=14=8B+=B5=EF=D5eT=1As=ECx=D5=9B5xL=03+=E8)
--DecodeAsnConstructed
SEQUENCE
DecodeAsnConstructed:
Oid: 2.5.29.35
OctetString: 105
qp_string: 0g=80=14=8B+=B5=EF=D5eT=1As=ECx=D5=9B5xL=03+=E8)=A1L=A4J0H1=0B0 =06=03U=04=
=06=13=02NL1=0C0=0A=06=03U=04=0A=13=03UPS1=0C0=0A=06=03U=04=0B=13=03UPS1=1D=
0=1B=06 *=86H
--DecodeAsnConstructed
SEQUENCE
DecodeAsnConstructed:
Oid: 2.5.29.19
OctetString: 5
qp_string: 0=03=01=01=FF
--DecodeAsnConstructed
--DecodeAsnConstructed
--DecodeAsnConstructed
--DecodeAsnConstructed
SEQUENCE
DecodeAsnConstructed:
Oid: 1.2.840.113549.1.1.5
Null
--DecodeAsnConstructed
Bit String
--DecodeAsnConstructed
Success.
--importPfxData
--DecryptUsingPfxFile
--ChilkatLog