Why is secur32.dll called secur32.dll and not secure32.dll?
Many years ago, in a discussion of why you shouldn’t name your DLL “security.dll”, I dug a bit into the history behind the DLL. Here are some other useless tidbits about that file.
Originally, there were two DLLs called
security.dll. One was the 32-bit version and one was the 16-bit version. They could coexist because the 32-bit version was in the
system32 directory and the 16-bit version was in the
And then Windows 95 showed up and screwed up everything.
Windows 95 did not have separate
system directories. All the system files, both 16-bit and 32-bit, were lumped together in a single
system directory. When the Security Support Provider Interface was ported to Windows 95, this created a problem, for it would require two files in the same directory to have the same name. Since the 16-bit version had seniority (because your Windows 95 installation may have been an upgrade install over Windows 3.1, which would have been the 16-bit version), it was the 32-bit version that had to be renamed.
Okay, so why
security32.dll was too long, since it exceeded the classic 8.3 limit, and Windows NT supported being run on FAT volumes (which necessarily did not support long file names, since long file names on FAT didn’t exist until Windows 95). Okay, but why
secur32.dll instead of
secure32.dll, which still fits inside the 8.3 constraints?
Nobody knows for sure any more; the person who chose the name left Microsoft a long time ago. Perhaps because
secur32.dll looked better than
securi32.dll. Maybe he couldn’t count.