Cryptography

What is Cryptography - The science of encrypting, hiding, information


Cyphers - moving a letter around, jumbled in a different sequence


Cryptanalysis - process of analyzing available information in an attempt to return the encrypted message to its original form.


Differential cryptanalysis - comparing the input plaintext to output ciphertext to try and determine key used to encrypt the info.


Linear cryptanalysis - uses both plaintext and ciphertext, puts plaintext through simplified cipher to try and deduce the key.


Cryptographic is to - hiding data, resiting forgery, resisting unauthorized change, resisting repudiation, enforcing policy, and exchanging keys


cryptographic operations performed by - using both algorithm and a key


cryptographic operations use - encryption , hashing, digital signatures


To encrypt information it is based on two different operations - substitution and transposition


what is substitution - replacement of items with a different item

what is transposition - changing of the order form


keyspace - a set of possible key values.


diffusion - one change in plaintext means many changes in ciphertext


confusion - randomness of an output. each character of ciphertext depends on several parts of the key


obfuscation - the masking of an item to render it unreadable, still useable


Perfect forward secrecy - property of a public key system in which a key derived from another key is not compromised even if the originating key is compromised in the future


Security through obscurity - Naming after a progressive set of objects


Transposition cipher - same letters used but order is changed.


plaintext - unencrypted output


ciphertext - encrypted output


algorithm - step by step recursive computational procedure for solving a problem in finite number of solutions


Hashing - takes an input and mathematically reduces it to a unique number known as hash

(not reversible)


Symmetric algorithm - shared secret algorithm (same key used for encryption and decryption)


asymmetric algorithm - use a very different process by employing two keys, public and private key (key pair)


key - special piece of data used in encryption and decryption processes


eXclusive OR(XOR) - bitwise function applied to data., depends system on secrecy of the key


shift cipher - one letter of the alphabet is shifted a set of number of places in alphabet for another letter.


ROT 13 - every letter is rotated 13 positions


Vigenere cipher - works as polyalphabetic subsitution cipher, depends on password


Key management - exchange, storage, safeguarding, revocation of keys.


Which encryption uses key management? asymmetric encryption


Salting - provides sufficient entry for low entropy inputs to hash functions


hashing function - special mathematical function that performs a one way function


One way function - no feasible way to retrieve plaintext from ciphertext once algorithm is processed


hash - the output of the hashing algorithm for a specific output


MAC - Message authentication code


HMAC - Hash-based message authentication code, special subset of hashing technology


collision attack - vulnerability to hash algorithms, attacker finds two different messages that hash the same value


Message digest - creates a message digest/hash from data input into the algorithm


MD2 - takes a data input of any length and produces a hash output of 128 bits.


MD4 - Fast algorithm, subject to more attacks


MD5 - collision attacks, can be computed in eight hours


SHA - Secure Hash Algorithm, a set of hash algorithms designed by NIST(national institute and technology)


SHA 1 - used to secure hashing in DSS (Digital Signature Standard). Creates message digests 160 bits long, used in DSA (Digital Signature Algorithm) to later be used as the signature of the message


SHA function - does all hashing functions, applies a compression function to the data input. Works in block mode, seperates data into words first, then groups words into blocks.

SHA1 modeled? MD4


SHA-2 - padding is added, no known collision attacks against SHA-256

what is sha2 vunerable to? reduced-round SHA-256


SHA 3 - Algorithm different from previous. Resistant to attacks that are successful to them.


RIPEMD - RACE Integrity Primitives Evaluation Message Digest, a hashing fucntion. Has problems with collisions.


RIPEMD-160 - algorithm based MD4, uses two parallel channels with 5 rounds.


Symmetric Encryption - both sender and receiver of message have previously obtained the same key.(shared key)


Shared secret - shared key to decrypt a encrypted message


DES - Data Encryption Standard, block cipher, segments input data into blocks of a specified size, padding last block to make it a multiple of the block size required. Key used for both encryption


3DES - uses three keys, spins through DES algorithm 3 times(multiple encryption). Plaintext encypted by DES then encrypting first ciphertext with a different key, then encrypting second cipher text with third key, not good for low powered devices.


AES - provides stream cipher function to support message authentication, uses Galois Counter Mode(GCM)


RC - Rivest Cipher,

RC2 - a variable-key-size blockmode cipher. Breaks input blocks into four 16 bit words, puts them through 18 rounds of mix/mash operations, outputs 64 bits of ciphertext for 64 bits of plaintext

RC5 - block cipher, multiple variable elements, number of rounds, key sizes, and block sizes

RC6 - Uses count of 20 rounds and 3 possible key sizes.

RC4 - Stream cipher, enciphers the plaintext in a stream, bit by bit. faster than block ciphers.

Blowfish - block mode cipher, encryption done by seperating the 64bit input block into 32 bit words, function executed every round


Twofish - block cipher, utilizes 128-blocks with variable length key 256. Uses 16 rounds and splits key mateial into two sets. One to perform encyption the other to load into the algorithms s boxes


IDEA - International Data Encryption Algorithm, block mode cipher using 64 bit block size and 128 bit key. process uses eight rounds, with final four step process. Last step concatenated to form ciphertext.


ChaCha20 - uses 256 bit key and 96 bit nonce and uses 20 rounds. Built using AEAD, authenticated encryption with assocaiated Data.


Cipher Modes


ECB - Eletronic Codebook, simplest mode operation of all, message divided into blocks, each block encrypted separately.


CBC - Cipher Block Chaining, defined as a block mode where each block is XORed with the previous ciphertext block before being encrypted.


Counter Mode (CTM) - Uses a “Counter” function to generate a nonce that is used for each block encryption.