Science of changing plain text into cipher text by substituting or transposing characters
        Uses algorithms (mathematical formulas) and keys to create cipher text
          Earliest cryptography relied on human effort to create, break codes; today computers are used
Earliest Methods of Cryptography
          Substitution ciphers
          Maps each letter to another letter
          Prone to frequency analysis
          Vigenere cipher
        Polyalphabetic substitution
          Substitutes cipher letters according to keyword
          Assigns number values to letters (a=0)
          Adds value of each letter in keyword to letter values in plain text in order
        If you know length of key, can break cipher text into multiple simple substitution ciphers

Encryption with Vigenere Cipher
Breaking Vigenere Cipher Text Into
Simple Substitution Ciphers

Earliest Methods of Cryptography
          One-time pad
        Pad of paper with random selection of numbers (two copies)
        To encrypt, first letter of plain text shifted by first number on pad, second letter by second pad number, etc.
          Historic ciphers
        Enigma: WWII German machine creating complex substitutions
        Purple: WWII Japanese machine modeled after Enigma
Cryptographic Primitives
          Primitives: Four main areas of cryptography
        Random number generation
        Symmetric encryption
        Asymmetric encryption
        Hash functions
          Goals of cryptography: Confidentiality, integrity, authentication (CIA)
Random Number Generation
          Computer-generated random numbers are pseudorandom
        Computers cannot create fully random numbers
          Goal is unpredictability
          Depth concern: Algorithms cycle, repeat
          Two cryptographically secure pseudorandom number generators
        Blum-Blum-Shub pseudorandom number generator
RSA pseudorandom number generator

Symmetric Encryption
          Single-key encryption
        Same key used to encrypt, decrypt
          Used for confidentiality
          May provide integrity depending on mode used
          Analogy is lockbox
        Single key required
        Key is set of random bits
          Encryption strength depends on algorithm or cipher used
        Computationally secure: Time needed to compute all combinations is so large, can’t be done in reasonable amount of time

Stream Ciphers
          Type of symmetric encryption
          Stream of data: Each byte processed with preceding bytes; order is important
          Stream Cipher
        Uses single key to encrypt message or stream of data, e.g. one-time pad
        Does not require padding
        Provides integrity: If first bytes changed, errors propagated through message
Stream Cipher

Block Ciphers
          Type of symmetric encryption
          Blocks of message processed independently
          Must safeguard against:
        Identification of repeated blocks
        Changing of block order

Sharing Keys
          Keys: Must be known by both parties before algorithm can be used
          Sharing options
        “Pre-shared secret”
        Trusted third party
        Key agreement protocol
          E.g. Diffie-Hellman key exchange
          Prone to man-in-middle attack
Man-in-the-Middle Attack

 Asymmetric Encryption
          Requires use of two keys
        Private key known only by owner
        Public key available to users
          Public key used to encrypt data that only recipient with private key can read
          Because asymmetric encryption very slow, often used just to encrypt symmetric encryption key
          Digital signature:  Encrypts small attachment to message with private key to verify ownership
Digital Signature of Hash

Hash Functions
          Take messages and compute smaller, fixed-size message (digest, or hash)
          Provide better performance
          Provide integrity: Message always hashes to same digest
          Used in authentication blocks
          Used to create pseudorandom data
          Useful for storing passwords: However, passwords should be salted with pseudorandom values
          Keyed hash functions are designed to require keys


Internet Options Dialog Box

sampai sini ja sempat explore ! 
Penah jugak jumpa benda neh ? kalau yang guna server yang ada security msti ada. try cari .
HAHA . crytography neh sangat best ! 
sebarang penambahan buleh ja .silakannnn ..