| Cryptography: Hashing & EncryptionHere are my brief notes on techniques to keep data integrity and confidentiality. Cryptology consists of two professions and disciplines:
| Topics this page:
|
Related Topics: |
Secure Channels
A secure channel is a means of data communication known (assumed) to be safe from intrusion and modification. Physical transport by a trusted messenger can be considered a safe channel. Authentication can be by voice recognition. Encryption provides assurance of message confidentiality (that others cannot read it), This is provided by use of the HTTPS protocol using SSL certificates on the server. To ensure message integrity (that the message was not changed enroute from the sender), the sender creates a digital signature. Digital signatures are like handwritten signatures, which are based on the idiosyncratic way one signs one's name. But Digital signatures are much more difficult to forge than a hand-written signature since they are created by encrypting a hash of the message being sent using his/her private key. This makes it so the signed message cannot be altered without also invalidating the signature. That private key is created using the sender's password plus unique identifying information about the sender (such as an email address, social security number, drivers license number, etc.). These keys are also called "Digital IDs". Digitally signing a message provides a verifiable record of the transaction to the recipient that the sender cannot repudiate. |
Entrust TruePass 7.0 delivers support for a 3-key pair model that defines a separate key pair to perform encryption, authentication, and digital signatures, as required by IETF RFC 3039 and European Union Digital Signature Directive. Explanation of this by the US Patent and Trademark Office and this company. |
Encryption (Encipherment) Mechanisms
Public and private Keys are stored in encrypted form on separate keyring files. | Cryptlib is a large open-source library of crypto functions. SafeTP is a seamless public-key encryption shareware tool that sits between FTP and your network stack, intercepting ftp commands to encrypt them before sending. The control channel alone or both data and control can be encrypted, if desired. Use this tool with any ftp sync tool. I had to configure my NAT firewall to allow a range of ports for PASV mode. Network Security: Private Communication in a Public World by Charlie Kaufman, Radia Perlman, and Mike Spencer. (Prentice Hall, 1995) It contains a clear description of how DES works. Firewalls and Internet Security: Repelling the Wily Hacker by William R. CHeswick and Steven M. Bellovin. (Addison-Wesley) written by senior researchers who maintained and redesigned AT&T's Internet connections. |
MPPE (Microsoft Point-to-Point Encryption)
MPPE requires EAP-TLS, MS-CHAPv1 or MS-CHAPv2 at one of three levels of encryption set in RRAS Remote access policy: |
Hashing Algorithms for Message Digests
A "good" hash function is one that very rarely maps two different data items to the same index, This is why jash functions are used to spread out the location of unique data (such as names) into a hash table for index into a daatabase table. Hashing eliminates the need to resort indexes. Cryptographically secure digest functions make it so a user's password doesn't have to be stored "in the wild" but a digest of the password, which can be used to determine whether a user has logged on. Hashing is not considered encrypted cipher:
The digest of plaintext can serve as a Modification Detection Code (MDC). The different hashing functions for different cryptographic standards
The standard used by banks are defined by ANSI X9, which has a relationship with IEEE P1363 standard. |
Cryptography for Internet & Database Applications (Indianapolis, Ind. John Wiley & Sons, 2002) by Nick Galbreath A course in Number Theory and Cryptography by Neal Koblitz. (Springer-Verlag) is a graduate-level textbook on number theory and cryptgraphy. A Cryptographic Companion by John J. G. Savard J. Orlin Grabbe's testMD.java sample program calculates several hash functions. |
Microsoft's Encrypting File System
From Windows Explorer, right click a file or folder for its Properties. The General tab will have an Advanced... button if the drive is NTFS. Click it. Select Encrypt contents to secure data. Notice Compress contents to save disk space is automatically unselected when Encrypt is selected because Windows 2000 does not encrypt compressed files.
To convert files into ciphertext, Microsoft Windows 2000 uses DESX, a modified version of DES.
To make Windows 2000 encrypt with three 128 bit keys, enable Triple DES (also called TDES or 3DES or DES3),
install the hardened
"High Encryption Pack add-on for Windows 2000"
.
Use the CIPHER.EXE utility to /Encrypt, /Decrypt /All files or /Specified directories in NTFS partitions. For a full list of options, including /I to Ignore errors, enter this at a command prompt:
During file encryption, Windows 2000 generates a random number called the FEK (File Encryption Key) using the file owner's public key. If the user does not have a key pair, one is generated on the fly and stored in the user's profile. The encrypted FEK is stored in the DDF (Data Decryption Field) for the file. Another copy of the FEK is encrypted with the public key of one or more recovery agents and stored in the DRF (Data Recovery Field) for the file. If the user's machine is not a member of a domain, the Local Administrator account is the designated recovery agent for all files encrypted on that machine. (this account's key pair is also automatically generated). In a domain environment, the default recovery agent is the Domain Administrator account. (This can, and typically should, be customized via group policy) So before you encrypt, modify the Recovery Agent's default setup in which the Administrator account is the agent for locally encrypted data. Reassign the Recovery Agent role to a separate domain account so that in the event of failure, the designated domain account-based Recovery Agent can recover the data. The LSAS (Local Security Authority Server) decrypts files by first decrypting the FEK in the DDF using the owner's private key or decrypting the recovery agent's FEK from the DRF. The decrypted FEK is then used to decrypt the encrypted file. This should be transparent process. Encrypted files are not indexed by the Index Service. Since data is still sent over a network in clear text, allowing it to be captured as it travels over the network, also use IPSec to secure network communications. If an encrypted file is copied to a diskette or other non-NTFS (FAT32) volume, the file is automatically unencrypted into clear text! If a file is moved from an EFS file, it is left decrypted. efsinfo.exe from the Resource Kit Security.cab file lists for encrypted folders and files their /Certificate thumbnail and /Recovery agent: Documents and Settings: Not Encrypted Lotus: Not Encrypted MSSQL7: Not Encrypted Program Files: Not Encrypted RECYCLER: Not Encrypted System Volume Information: Not Encrypted WINNT: Not Encrypted The Winadvapi is used to disable EFS for specific folders. To disable EFS at the OU level, delete the Encrypted Data Recovery Agents policy. An empty policy would nullify the inidividual recovery policies for computers within the OU. |
Q223316: Best Practice for Encrypting File System. Q230490: The Encrypted Data Recovery Policy for Encrypting File System Encrypting File System for Windows 2000 Microsoft Corporation. Windows 2000 Server Resource Kit . Volume: Microsoft Windows 2000 Server Deployment Planning Guide. Redmond, Washington: Microsoft Press, 2000. Chapter 11, "Planning Distributed Security." includes a short discussion on EFS. Microsoft Corporation. Windows 2000 Server Resource Kit . Volume: Microsoft Windows 2000 Server Distributed Systems Guide . Redmond, Washington: Microsoft Press, 2000. Chapter 15, "Encrypting File System." Microsoft Corporation. MCSE Training Kit: Microsoft Windows 2000 Server . Redmond, Washington: Microsoft Press, 2000. Lesson 2 in Chapter 11, "Microsoft Windows 2000 Security." Alternatives for MS-EFSDriveCrypt uses 256 bit steganographic techniques (hiding data in music files).BestCrypt includes source code. Caveo is an entire anti-theft service Utimaco's SafeGuard Easy PGPDisk, now integrated with PGPfreeware 6.0.2i GuardianEdge's Encryption Plus for Hard Disks (EPHD) uses for encryption Bruce Schneier's 160-bit Blowfish Advanced Encryption Standard (AES) in CBC mode with 256 bit keys. The disk key used to encrypt the data on the disk is randomly generated and stored encrypted under the disk key encryption key (Disk KEK) derived from the username and password. Users enter their password in the product, which then automatically supplies the Windows password. The main reason why companies buy EPHD is that it has a remote corporate key recovery mechanism. The product supports a one-time password in case users get locked out of their data. It can run on NT and Windows 9x. |
Lost Password Recovery
The RID Master manages the distribution of sequential relative identifiers. The first EFS log created is automatically named efs0.log. Security Questions |
Passware Kit from LostPassword.com performs password recovery. |
CiphersData Encryption StandardsDevelopoment on DES (Data Encryption Standard) started in 1975 and was standardized in 1981 as ANSI X3.92. FIPS PUB 46-1, which uses fixed-length 56-bit key and 8 bit parity check in its CBC (Cipher Block Chaining) algorithm [FIPS PUB 81] in 64 bit blocks.Triple DES (3DES) recursively encrypts using DES. Because of Massive Multiprocessing (MMP) brute-force cryptanalysis (the interception and attempted recovery of cleartext from a secured exchange), and use of single keys, DES is no long considered secure. That's why the US allows its export unhindered. Other Symmetric CiphersThe RC in RC2, RC4 ('87), RC5, RC6 ('98) - variable key-length ciphers -- is for Rivest Cipher because they were developed by Ron Rivest of RSA Data Security.IDEA is a 128-bit International Data Encryption Algorithm used in open source Pretty Good Privacy (PGP) Skipjack is an 80-bit key and 32 rounds on 64-bit blocks. It's used by the NSA for sensitive but nonclassified data. Blowfish, developed by USC professor Bruce Schneier and author of many popular books, including Applied Cryptography (), uses a variable-round block cipher using any length keys up to 448 bit. It's also a 2001 movie starring John Travolta and Halle Berry. Twofish is faster because it supports 128 bit blocks and 128, 192, or 256 bit keys. It's used with smartcards. Rijnadael has similar capabilities. On October 2, 2000, NIST chose it for their new Advanced Encryption Standard (AES). The DSA (Digital Signature Alogorithm), invented by David Kravitz and introduced by NIST, is the standard public-key encryption method in Linux.
|
|
Smart Cards Cryptoki
Security hardware offers significant security advantages over pure software applications. For example, portable tokens such as smartcards reduce the headaches of managing passwords, by enabling users to carry digital certificates on a credit card-size device. Cryptographic accelerators can greatly improve the performance of security-bound systems, by offloading expensive crypto operations to a dedicated processor - while ensuring that vital information, such as private keys, never leave the confines of the hardware device. Security Officer (SO) must initialize token. C_InitToken initializes token by destroying objects and denying normal user access until PIN is set Token users must login with PIN before accessing private objects. Applications cannot directly manipulate Cryptoki objects and contexts, which are created, manipulated, and destroyed beneath the API.
CDSAUnlike the Common Data Security Architecture (CDSA), Cryptoki is not an entire architecture consisting of auxiliary services such as data storage, libraries, and memory management for applications. CDSA Libraries include: Trust Policy, Data Library, Certificate Library, Elective Library (Open Group CDSA Specification c707, ISBN 1-85912-194-2) |
Applications requiring Crypto KeysApplications that require secure hardware, including access control via a user token, and cryptographically intensive applications, such as SSL server applications. Other examples include:
|
More: Resources
|
Cryptographic engines for use within IIS:
|
| Your first name: Your family name: Your location (city, country): Your Email address: |
Top of Page
Thank you! |