"key type not supported" and XP SP2 changes ?

Jeffrey Altman jaltman2 at nyc.rr.com
Tue Sep 7 18:52:36 EDT 2004


Tim:

You have not provided enough information to show how your code is
ending up with the RC4-HMAC session key.  The XP SP2 changes have
only been around for the last four weeks in production code.  What
have you been doing for the last four years to make your code work
with Windows 2000 and XP?

If the only enctypes which are common between your libraries and
the Windows Kerberos are DES-CBC-CRC and DES-CBC-MD5, then you must
request tickets by specifying one of those enctypes at the time you
request them.  Otherwise, you are likely to end up with RC4-HMAC as
the session key type when talking to Active Directory unless the
account associated with the SPN has been configured to be DES only.

Asking your clients to install a new version of Kerberos.dll on
their systems is going to break other third party products which
rely on the Kerberos SSP functionality as determined by the operating
system version number.  For that reason I doubt that Microsoft would
issue such a change.  Of course, you could always file a PSS request
if you have a support contract.

Jeffrey Altman


Tim Alsop wrote:

> Jeffrey,
> 
> Sorry to be confusing. Our code is not requesting a tgt, but I know for
> a fact that setting AllowTGTSessionKey to 0 on XP SP2 (the default
> setting) causes our code to work as required, but setting it to 1 causes
> it to complain with "key type not supported". My explanation I have
> given so far has been based on my assumptions from this test - maybe
> wrongly, but I am trying to draw a conclusion and it seems likely to me
> that if the key is not exported we don't give an error because we don't
> see the RC4 key. Maybe this conclusion is incorrect, but it does not
> change the fact that if we had the support for AllowTGTSessionKey on
> pre-SP2 XP systems we could provide a quick solution to the problem
> discovered by our customer.
> 
> I realy do apprecaite your help so far with this issue. I hope my
> explanation above helps ?
> 
> Take care,
> 
> Tim.
> 
> -----Original Message-----
> From: kerberos-bounces at mit.edu [mailto:kerberos-bounces at mit.edu] On
> Behalf Of Jeffrey Altman
> Sent: 07 September 2004 20:30
> To: kerberos at mit.edu
> Subject: Re: "key type not supported" and XP SP2 changes ?
> 
> Tim Alsop wrote:
> 
> 
>>Tim> we don't want to extract a tgt from lsa cache. This is not
>>necessary because our Kerberos library interfaces with LSA and 
>>requests a service ticket. The service ticket request is handled by MS
> 
> 
>>code and the MS Kerberos library (e.g. LSA) sends the request to MS AD
> 
> 
>>KDC. Our Kerberos library does not need any access to the Key, but 
>>since it sees the key and we have validation code to check for etypes 
>>that are supported (for other reasons) our code gives "key type not
> 
> supported"
> 
>>error.
> 
> 
> If you are not requesting the TGT then the AllowTGTSessionKey flag does
> not come into play at all.
> 
> 
> 
>>Tim> we are not looking to use DES enc type. The expectation is that 
>>Tim> RC4
>>keys can be used for TGT, but when a tgt is stored in the LSA cache we
> 
> 
>>don't see the RC4 key (e.g. AllowTGTSessionKey = 0). If we see the key
> 
> 
>>our code considers this to be an error - we are trying to avoid this 
>>but cannot on pre-SP2 versions of XP.
> 
> 
> What AllowTGTSessionKey does is allow the session key to be exported.
> If it cannot be exported the encryption type is set to 0 (ENCTYPE_NULL).
> 
> I really suggest that you fix your code.  Setting the AllowTGTSessionKey
> value to 0 breaks KFW and it breaks Java Kerberos.
> 
> 
>>Tim> Our code has a similar cache type to hide any specifics from the
>>application. Our implementation will eventually support the RC4 etype 
>>so this will work better then, but we have an existing customer who 
>>cannot deploy SP2 for a while and are trying to see if there is a 
>>short term solution for them.
> 
> 
> Your statements are so confusing.  You have said repeatedly that the
> reason you need to AllowTGTSessionKey flag is because you need to hide
> the RC4-HMAC enctype from your application.  But now you say the
> customer is having problems installing XP SP2 which is where the default
> behavior is "AllowTGTSessionKey = 0.  Which is it?
> 
> 
> 
>>Tim> If MS were able to implement the AllowTgtSessionKey that is in
> 
> SP2
> 
>>so that it can be added by hotfix to SP1 XP workstations this will
> 
> solve
> 
>>our problem.
> 
> 
> My confusion continues.  How does this solve your problem?
> Why is your application caring about the session key enctype of the TGT
> when it is not attempting to use the TGT to obtain a service ticket?
> 
> Jeffrey Altman
> 
> 
> 

-- 
-----------------
This e-mail account is not read on a regular basis.
Please send private responses to jaltman at mit dot edu


More information about the Kerberos mailing list