EldoS | Feel safer!

Software components for data protection, secure storage and transfer

Windows Phone 7 TElHTTPSClient verification error

Also by EldoS: Rethync
The cross-platform framework that simplifies synchronizing data between mobile and desktop applications and servers and cloud storages
Posted: 10/26/2012 10:27:49
by Rajen Kishna (Basic support level)
Joined: 10/12/2012
Posts: 20

We're trying to implement a mechanism to do HTTPS requests on Windows Phone 7 to our server, which has a certificate that is signed by our enterprise Root CA. The code we're using is:

void MainPage_Loaded(object sender, RoutedEventArgs e)
    TElHTTPSClient https = new TElHTTPSClient();
    https.OnCertificateValidate += new TSBCertificateValidateEvent(https_OnCertificateValidate);

void https_OnCertificateValidate(object Sender, TElX509Certificate X509Certificate, ref TSBBoolean Validate)
    Validate = true;

Once the TElHTTPSClient runs into the OnDocumentBegin event, we get the following exception:

A first chance exception of type 'System.Security.VerificationException' occurred in SecureBlackbox.dll
A first chance exception of type 'System.Security.VerificationException' occurred in SecureBlackbox.HTTP.dll

   at SBZUncompressUnit.__Global.NEEDBITS(UInt32 n, UInt32& bits, UInt32& have, Boolean& res, Byte[]& Next, Int32& NextIndex, UInt32& hold)
   at SBZUncompressUnit.__Global.inflate(TZStreamRec& z, Int32 f)
   at SBHTTPSCommon.TElHTTPCompressedProcessor.DecodeData(Byte[] Buffer, Int32 Position, Int32 Size, Int32& Processed, TSBBoolean& EndReached)
   at SBHTTPSClient.TElHTTPSClient.ProcessDataBlock(Byte[]& Buffer, TSBBoolean& NoMoreData)
   at SBHTTPSClient.TElHTTPSClient.DoData(Object Sender, Byte[] Buffer)
   at SBSSLClient.TElSSLClient.DoData(Byte[] Buffer)
   at SBSSLClient.TElSSLClient.TLS1ParseOnRecordLayer(Byte[] Buffer, Int32 Size, TSSL3ContentType ContentType, Int32 DTLSEpoch, Int64 DTLSSeqNum)
   at SBSSLClient.TElSSLClient.AnalyzeBuffer()
   at SBSSLClient.TElSSLClient.DataAvailable()
   at SBHTTPSClient.TElHTTPSClient.PerformExchange()
   at SBHTTPSClient.TElHTTPSClient.PerformRequest(Int32 Method, String URL)
   at SBHTTPSClient.TElHTTPSClient.Get(String URL)
   at PhoneApp2.MainPage.MainPage_Loaded(Object sender, RoutedEventArgs e)
   at MS.Internal.CoreInvokeHandler.InvokeEventHandler(Int32 typeIndex, Delegate handlerDelegate, Object sender, Object args)
   at MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName)

Is there anything we're missing? Thanks in advance.
Posted: 10/26/2012 10:48:51
by Ken Ivanov (EldoS Corp.)


It seems that the root for the problem is a bug in compression routines that has been introduced fairly recently. The issue, which is specific to Windows Phone 7 assemblies, is already being investigated.

As a temporary workaround, please switch compression off in TElHTTPSClient (set UseCompression to false).
Posted: 10/30/2012 07:51:42
by Rajen Kishna (Basic support level)
Joined: 10/12/2012
Posts: 20

Hi Innokentiy,

I can confirm that this issue has been resolved in the 10.0.227 update which was released today.




Topic viewed 804 times



Back to top

As of July 15, 2016 EldoS Corporation will operate as a division of /n software inc. For more information, please read the announcement.

Got it!