Buku Cryptography for Internet and Database Applications


salah satu buku tentang kriptografi yang recommended Cryptography for Internet and Database Applications Developing Secret and Public Key Techniques with JavaTM oleh Nick Galbreath,

berikut daftar isi dari buku tersebut

Chapter 1 Bits and Bytes
General Operations
Number Bases
Bits and Bytes
Signed Bytes
Bitwise Operators
Complementation or Bitwise NOT
Bitwise AND
Bitwise OR
Bitwise Exclusive OR (XOR)
Left-Shift
Right-Shift
Special Operations and Abbreviations
Packed Words
Integers and Endian Notation
Java Numerics
Basic Types
Type Conversion
Unsigned to Signed Conversions
Overflow
Arrays
Numeric Classes
Booleans and BitFields
Chars
Working with Bytes
Sign Problems
Conversion of Integral Types to Byte Arrays
Converting to Hex Strings
BigInteger
Creating and Converting
BigInteger and Cryptography
Secret Methods in BigInteger

Chapter 2 Secret Key Cryptography
Symmetric Block Ciphers
Cipher Properties
Security Properties
Brute-Force Attacks
Other Attacks
Common Block Ciphers
Data Encryption Standard (DES)
Triple DES
Blowfish
IDEA
RC5
Rijndael and the Advanced Encryption Standard (AES)
Twofish
RC6
Ciphers You Shouldn’t Use
Password XOR Schemes
Classical Cryptography
ROT 13
Padding
Fixed-Value Padding
Random Padding
PKCS Padding
Modes of Operations
Initialization Vectors
Electronic Codebook Mode (ECB)
Cipher Block Chaining Mode (CBC)
Cipher Feedback Mode (CFB)
Output Feedback Mode (OFB)
Counter Mode (CTR)
Propagating CBC (PCBC) Mode
Key Wrapping
Triple DES KEY Wrapping
AES Key Wrapping
Turning Passwords into Keys
Elliptic Curves
Underlying Mathematics: Elliptic Curves
The Algorithm
Standards and Practice
Other Public Key Cryptographic Systems
Rabin Cryptosystem
NTRU

Chapter 4
Summary
Random Numbers
Randomness and Security
Testing for Randomness
FIPS 140-2 Requirements
Pseudorandom Number Generators
Cryptographic PRNG
SHA-1 PRNG
Cipher-CBC or ANSI X9.17
FIPS 186
Blum-Blum-Shub
Stream Ciphers
One-Time Pads
RC4 or ArcFour
Using Randomness
Generating Random Numbers for Gaming
Generating Random Numbers in a Range
Shuffling
Generating Random Permutations
Small Permutations
Large Fixed Permutations
Random Sampling
Accessing Entropy
OS Services
Win32 CryptoAPI CryptGenRandom
/dev/random and friends
Userland Services
Entropy Generating Daemon (EGD)
PRNGD
Yarrow and EGADS
TrueRand Library
Remote Services
RAND Corporation
HotBits
Random.org
LavaRnd
Java and Random Numbers
Random and SecureRandom
java.util.random
java.security.SecureRandom
Developer Issues
Reseeding
Collecting Entropy
An Entropy Pool Implementation
Basic System State
Thread Schemes
Reading External Sources
Application Events
User Events

Chapter 5 Java Cryptography
Organization
Providers and Engine Classes
Parameters, Keys, and Certificates
Error Handling
Providers
Standard Names
Standard Sun and SunJCE Providers
Other Providers
Initializing Providers
Writing Your Own Provider
Core Engine Classes
MessageDigest
Digest Streams
MAC
SecureRandom
Ciphers
Additional Cipher-Related Objects
Signatures
SignedObject
Key Agreement Protocols
Parameters, Keys, and Certificates
Algorithm Parameters
AlgorithmParameters
AlgorithmParameterGenerators
Keys
Secret Keys
Public/Private Keys
Encoding and Encrypting Keys
Summary 202

Chapter 6 Small Message Encoding and Encryption
Preprocessing 203
Converting Digits into Bytes
7-bit to 8-bit Compression
General Compression and java.util.zip.Deflate
Adding Check and Parity Bits
Small Message Encryption
Single-Block Encryption
n-Block Encryption
Very Small Message Encryption
XOR Tables
Small Codebooks
RC5-16/16
Small Message Encoding
Encoding for Customer-Usable Data
Capacity and Range
Selecting a Base Representation
Selecting Base Alphabets
Mixed Bases and Alphabets
Adding Check Digits
Encoding for Machines and Customer-Visible Applications
Base 64
Base 85
Base 128 and Java Source Encoding

Chapter 7 Application and Data Architecture
Database Architecture for Encrypted Data
Selecting a Cipher
Secret or Public?
Cipher Selection
Data
Passwords
Challenges and Responses
Payment, Credit Card, and Other Account Numbers
Social Security Number (U.S.)
Birthdates and Birthdays
Last Name
Searching, Indexing, and Constraints
Removing Randomness
Deterministic Key Selection
Indexing and Hashing
Uniqueness Constraints
Asymmetric Data Usages
Null Values and Database Applications
Secure Memory Management in Java
Smart Array Classes
Char Arrays
Using SecureRandom
Secret Key Management
Secret Key Data
Key Generation
Key Encryption
Storage
Key Access and Distribution
Using Keys with Ciphers and MACs
Passwords
Startup Passwords
Member Names and Passwords
Selecting Passwords
Member Login, Success and Failure
Changing Passwords and Challenges
Web-Based Password Entry
Generating New Passwords
Member Names
Logging
Embedded-Encryption Logging
Fully Encrypted Log Files
Public Key Logging
Split Log Files
Network-Based Logs
Cryptographic Tokens and Applications
Token Design
Expirations and Time Quantization
Creating the Security Bits
URL Tokens
Tamper-Evident URLs
Protecting Static Content
A Simple URL MAC Implementation
Fast Query String Parsing
URL Encryption
Very Short URLs
Cookie Tokens
Detecting Cookie Capability
Cookies and Authentication
Tokens for Access Control
Buy-on-Demand Systems
Multiple Key Systems
Trials and Expirations
Decimal and Monetary Computations
Doubles and Floats
BigDecimal
Rounding
BigDecimal and Mathematics
BigDecimal Alternatives and Wrappers
Usage and Storage

Advertisements

Author: ridhobustami

orang ngak jelas

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s