Windows IT Pro is the leading independent community for IT professionals deploying Microsoft Windows server and client applications and technologies.
  
  
  Advanced Search 


January 1999

Public Key Infrastructure in Windows 2000


RSS
Subscribe to Windows IT Pro | See More Security Articles Here | Reprints | Or get the Monthly Online Pass—only $5.95 a month!

Authenticode
Microsoft's PKI offers a code-signing technology called Authenticode that ensures the integrity and origin of commercial and free software distributed over the Internet. Authenticode, based on digital signature technology, adds a digital signature, a code-signing certificate, and a time stamp into such software codes as Java applets, ActiveX controls, .dll files, executable files, cabinet files, and catalog files. Authenticode also verifies downloaded code before you run it on your system. To sign and verify code, Authenticode uses two techniques: code signing and code verification.

Before you can sign code to guarantee its integrity and origin, you must obtain a code-signing or software-publishing certificate from a CA. You can then use the Authenticode signing functions the ActiveX SDK provides to sign the code. You pass the code you want to authenticate through a hashing algorithm and use your private key to sign the hash, which results in a digital signature. You then build a signature block, which contains the digital signature and the code-signing certificate. Authenticode lets you time stamp the signature block based on the current date and time that a time stamping service provider, such as VeriSign, provides. Finally, you bind the time stamped signature block to the original software. Now you can publish the signed software on your Web site for download.

The ActiveX SDK also supplies a code-verification function to verify downloaded software before you execute it. Microsoft has incorporated this function in IE 3.0 and later versions. Before IE runs signed code, it will call up the code-verification function to check the signature, publisher's certificate, and time stamp. After verification, the code-verification function will display the name of the code, the name of the organization or person who published the code, when the publisher authenticated the code, and the name of the CA that issued the code-signing certificate. The user decides whether to trust the publisher. Screen 4, page 102, shows a sample code-verification display. The display confirms that the verified code is an ActiveX control to capture the product ID in the local computer, that Microsoft signed the code at 9:42 a.m. on July 16, 1998, and that VeriSign issued the code-signing certificate. When you click Yes in a code-verification display, your browser will install and run the verified code.

In IE, you can set up a security policy for Authenticode with four security levels: high, medium, low, and custom. The high level doesn't execute damaged code; the medium level warns you before running potentially damaged code; the low level always executes any code; and the custom level lets you choose security settings, such as to enable ActiveX or to disable Java applets. You can also define different levels for different security zones, such as the Internet, intranets, trusted sites, and restricted sites in IE.

Encrypting File System
Win2K introduces EFS, a new security feature, in NTFS. EFS lets you encrypt files and directories in a local or remote computer. Figure 4 shows how EFS uses public keys for data encryption, decryption, and recovery.

Before you can use EFS, you need to create a data recovery agent. You use Group Policy Editor in the Win2K domain in which you want to use EFS. The data recovery agent contains a pair of public keys. A domain's data recovery agent can recover encrypted data in any Win2K computers in the domain if an original file's owner loses a private key. You can create a local data recovery agent in a local computer if the computer doesn't belong to a domain.

When you encrypt a file, EFS randomly generates a file encryption key (FEK) and uses this FEK to encrypt the file. To encrypt the FEK, EFS uses your public key, which EFS retrieves from your certificate, and saves the encrypted FEK to the Data Decryption Field (DDF) along with the file.

If you don't have a certificate, EFS simply generates a pair of keys--­one public key and one private key--­for you. If multiple users share the file, EFS will use a user's public key to encrypt the FEK for that user and save each encrypted FEK to the DDF. EFS encrypts the FEK a second time using the data recovery agent's public key and inserts the encrypted FEK into the Data Recovery Field (DRF) of the file. The EFS process is transparent; you simply enable the file encryption attribute in the advanced attribute list of a file's properties in Windows Explorer.

When you access an encrypted file, EFS automatically decrypts and opens the file for you if you are on the DDF list. If you are not on the DDF list, EFS denies access. When EFS decrypts a file, it locates your private key, uses this key to decrypt the FEK in your DDF, and decrypts the file using the FEK. EFS uses the same method to recover data with the data recovery agent's private key.

Building Security on PKI
I've given you a brief outline of Microsoft's rich set of PKI solutions. Using these tools, your company can establish a comprehensive PKI that is powerful, flexible, and customizable. When Win2K arrives, I think you'll be pleased with the power you'll have to satisfy your business security needs and to build your network security on PKI in Win2K.

End of Article

   Previous  1  2  3  4  [5]  Next  


Reader Comments
The article states that PKI uses a private key for encryption and a public key for decryption. To my knowledge any useful asymetric encryption uses both private and public keys for decryption and encryption. When encrypting with private key decryption happens with public, when encrypting with public key decryption happes with private key. To ensure the identity of both sender and reciever messages have to be encrypted with recievers public key followed by encryption with senders private key.

John Dsane Andersen June 29, 2000


I would be interested in obtaining a Best Practice if it exists for setting up CA within Windows 2000. Understanding that the way CA is implemented is going to be different for each individual organization, having a baseline or template to follow would be extremely helpful for those going through this process for the first time.

Stacy M. Williams April 12, 2001


You must be a registered user or online subscriber to comment on this article. Please log on before posting a comment. Are you a new visitor? Register now




Top Viewed ArticlesView all articles
Command Prompt Tricks

One reader shares his tip for setting up the command prompt to reflect a remote path. ...

WinInfo Short Takes: Week of November 9, 2009

An often irreverent look at some of the week's other news, including some more Windows 7 sales momentum, some Sophos stupidity, Microsoft's cloud computing self-loathing, more whining from the browser makers, Zoho's "Fake Office," and much, much more ...

Understanding File-Size Limits on NTFS and FAT

A general confusion about files sizes on FAT seems to stem from FAT32's file-size limit of 4GB and partition-size limit of 2TB. ...


Related Articles SHYM Ships Application Security Server

Security Whitepapers Reducing the Costs and Risks of Branch Office Data Protection

Solving Desktop Management Challenges in Healthcare

Solving Desktop Management Challenges in Education

Related Events WinConnections and Microsoft® Exchange Connections

Deep Dive into Windows Server 2008 R2 presented by John Savill

Check out our list of Free Email Newsletters!

Security eBooks Spam Fighting and Email Security for the 21st Century

Understanding and Leveraging Code Signing Technologies

A Guide to Windows Certification and Public Keys

Related Security Resources Introducing Left-Brain.com, the online IT bookstore
Looking for books, CDs, toolkits, eBooks? Prime your mind at Left-Brain.com

Discover Windows IT Pro eLearning Series!
Clear & detailed technical information and helpful how-to's, all in our trademark no-nonsense format


Windows IT Pro Home Register FAQ for Windows WinInfo News
Europe Edition About Us Contact Us/Customer Service Media Kit Affiliates / Licensing  
SQL Server Magazine Office & SharePoint Pro DevProConnections IT Job Hound
Left-Brain.com Technology Resource Directory asp.netPRO ITTV Windows SuperSite 
 
 Windows IT Pro is a Division of Penton Media Inc.
 © 2009 Penton Media, Inc. Terms of Use | Privacy Statement