B
Bill Menees
I'm running XP Pro SP1, and I'm having problems with the
CryptoAPI that I believe are related to a problem with
Rsaenh.dll. I can only call CryptDeriveKey with
algorithms and key sizes supported by the base crypto
provider even though XP is supposed to ship with the
strong/enhanced crypto provider. For algorithms with
larger key sizes (e.g. CALG_3DES), I always get an
NTE_BAD_ALGID result, which behaves like I'm only running
the base crypto provider.
FWIW, I'm running the MSDN Universal version of XP Pro,
and I upgraded from Win2K Pro. I've used Windows Update
to install all the critical updates, service packs, etc.
While trying to debug this, I've discovered that my
RSAEnh.dll (in Winnt\System32) isn't really the enhanced
crypto provider. It appears to be a renamed version of
rsabase.dll! In the DLL's version resource, the
Description field says "Microsoft Base Cryptographic
Provider", and the Internal Name and Original File Name
fields say "rsabase.dll".
I reapplied XP SP1 hoping that would fix it, but it
didn't help. I deleted rsaenh.dll, and the OS promptly
replaced it with the same version of the file.
So does anyone know how I can fix this? It seems that I
have the base crypto provider DLL masquerading as the
enhanced provider DLL. Where can I get the real
rsaenh.dll (i.e. the one that supports 128-bit encryption,
etc.) for XP?
Thanks,
Bill Menees
CryptoAPI that I believe are related to a problem with
Rsaenh.dll. I can only call CryptDeriveKey with
algorithms and key sizes supported by the base crypto
provider even though XP is supposed to ship with the
strong/enhanced crypto provider. For algorithms with
larger key sizes (e.g. CALG_3DES), I always get an
NTE_BAD_ALGID result, which behaves like I'm only running
the base crypto provider.
FWIW, I'm running the MSDN Universal version of XP Pro,
and I upgraded from Win2K Pro. I've used Windows Update
to install all the critical updates, service packs, etc.
While trying to debug this, I've discovered that my
RSAEnh.dll (in Winnt\System32) isn't really the enhanced
crypto provider. It appears to be a renamed version of
rsabase.dll! In the DLL's version resource, the
Description field says "Microsoft Base Cryptographic
Provider", and the Internal Name and Original File Name
fields say "rsabase.dll".
I reapplied XP SP1 hoping that would fix it, but it
didn't help. I deleted rsaenh.dll, and the OS promptly
replaced it with the same version of the file.
So does anyone know how I can fix this? It seems that I
have the base crypto provider DLL masquerading as the
enhanced provider DLL. Where can I get the real
rsaenh.dll (i.e. the one that supports 128-bit encryption,
etc.) for XP?
Thanks,
Bill Menees