EldoS | Feel safer!

Software components for data protection, secure storage and transfer

Windows Phone 7 TElHTTPSClient verification error

Also by EldoS: Solid File System
A virtual file system that offers a feature-rich storage for application documents and data with built-in compression and encryption.
#22232
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:

Code
void MainPage_Loaded(object sender, RoutedEventArgs e)
{
    TElHTTPSClient https = new TElHTTPSClient();
    https.OnCertificateValidate += new TSBCertificateValidateEvent(https_OnCertificateValidate);
    https.Get("https://OURSERVER/SOMERESOURCE");
}

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:

Code
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


Stacktrace:
Code
   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.
#22233
Posted: 10/26/2012 10:48:51
by Ken Ivanov (EldoS Corp.)

Rajen,

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).
#22270
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.

Thanks

Reply

Statistics

Topic viewed 787 times

Number of guests: 1, registered members: 0, in total hidden: 0




|

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!