[CrashCourse CS] #33 Cryptography

Steve·2021년 9월 25일
0

Defense in Depth - strategy of using many layers of varying security mechanisms to frustrate attackers.

Cryptography - "Secret writing"
Cipher - an algorithm that converts plain text to into ciphertext.
Encryption - process of making text secret
Decryption - reverse process

Substitution ciphers

Replace every letter in a message with somthing else according to a translation.

  • Caesar cipher - shift the letters in a message forward by three places.

Permutation ciphers

  • Columnar transposition cipher

By the 1990's, cryptography was mechanized in the form of encryption machines

  • The most famous - Germna Enigma

With the advent of computers, cryptography moved from hardware into software.
Data Encryption Standard - developed by IBM and the NSA in 1977.

  • Used binary keys that were 56 bits long.

In 2001, the Advanced Encryption Standard was finalized and published.

  • Uses 128, 192, or 256 bits
  • AES chops data up into 16-byte blocks, and then applies a series of substitutions and permutations, based on the key value, plus some other operations to obscure the message, and this process is repeated ten or more times for each block.
  • AES is used everywhere from encrypting files, transmitting data over WiFi with WPA2, accessing websites using HTTPS, etc.

Key exchange

An algorithm that lets computers agree on a key without ever sending one.

  • Done in one-way functions - mathmatical operations that are very easy to do in one direction, but hard to reverse.
  • Diffie-Hellman Key Exchange - use modular exponentiation for the one-way function.
  • These keys that can be used by both sender and receiver, to encrypt and decrypt messages, are called symmetric keys because the key is the same on both sides.

Asymmetric encryption

There are two different keys - often public and private key.

  • Knowing the public key only lets you encrypt, but not decrypt.
  • A digital public key can encrypt something that can only be decrypted with a private key.
  • Reverse is possible too: encrypting something with a private key that can be decrypted with public key
    • This is used for signing, where a server encrypts data using their private key. Anyone can decrpyt it using the server's public key.
    • This acts like an unforgeable signature, as only the owner, using their private key, can encrypt.
  • The most popular asymmetric encryption technique used today is RSA

Vocabuary

  • Cipher - 암호
  • Analogy - 비유
  • unforgeable - 위조 불가능한
  • imposter - 사칭하는 사람, 사기꾼
profile
게임과 프론트엔드에 관심이 많습니다.

0개의 댓글