Showing posts with label CipherText. Show all posts
Showing posts with label CipherText. Show all posts

Tuesday, January 17, 2017

Cryptography: Classical Encryption Techniques


1. List and briefly define types of cryptanalytic attacks based on what is known to the 
attacker. 

  • Ciphertext only. One possible attack under these circumstances is the brute-force approach of trying all possible keys. If the key space is very large, this becomes impractical. Thus, the opponent must rely on an analysis of the ciphertext itself, generally applying various statistical tests to it.  
  • Known plaintext. The analyst may be able to capture one or more plaintext messages as well as their encryptions. With this knowledge, the analyst may be able to deduce the key on the basis of the way in which the known plaintext is transformed.  
  • Chosen plaintext. If the analyst is able to choose the messages to encrypt, the analyst may deliberately pick patterns that can be expected to reveal the structure of the key.

2. What is the difference between an unconditionally secure cipher and a computationally secure cipher? 
An encryption scheme is unconditionally secure if the ciphertext generated by the scheme does not contain enough information to determine uniquely the corresponding plaintext, no matter how much ciphertext is available. 
An encryption scheme is said to be computationally secure if:
  1. the cost of breaking the cipher exceeds the value of the encrypted information, and
  2. the time required to break the cipher exceeds the useful lifetime of the information.

3. What are two problems with the one-time pad?
  1. There is the practical problem of making large quantities of random keys. Any heavily used system might require millions of random characters on a regular basis. Supplying truly random characters in this volume is a significant task. 
  2. Even more daunting is the problem of key distribution and protection. For every message to be sent, a key of equal length is needed by both sender and receiver. Thus, a mammoth key distribution problem exists.

Tuesday, August 23, 2016

Cyber Security: Cryptography - Hidden Messages

Cryptography is a specialised area of mathematics concerned with protecting information so that it can be transmitted and received securely even when there is a risk that a hostile third party might intercept or modify the data.

Coursera - Hundreds of Specializations and courses in business, computer science, data science, and more   Discover Data Science with Coursera   Master Computer Science on Coursera

The secret of keeping secrets
There have been many applications of cryptography throughout history, ranging from simple ciphers used by Julius Caesar to send military orders to his generals, to the more sophisticated medieval ciphers that withstood most attacks until the late 19th century and the famous Enigma codes of World War II.

The development of computers in the 20th century allowed for far more complex means of encryption. Computers could perform:
  • the mathematical operations that underpin all cryptography
  • much more complex mathematics than could be reasonably expected of a human
  • much faster than a human
  • on much more data than a human could handle.
Any data that could be represented in binary format, i.e. using 0s and 1s, can be encrypted by a computer. It is not an exaggeration to say that encryption makes much of the modern world possible. Some commonplace applications for cryptography include:

Master Big Data with UCSD and Coursera  Learn Social Media Marketing with Northwestern and Coursera  Become a Web Developer in 2016 with Coursera 
  • secure banking and payments systems – cryptography ensures your money is safe when it is transferred between accounts, issued at ATMs or used to shop online
  • protecting conversations made over mobile telephones
  • safeguarding wireless networks that give access to the internet
  • securing files on hard disks and memory sticks
  • authenticating electronic documents
  • electronic voting
  • securing media files such as music or movies from piracy, where it is known as Digital Rights Management (DRM).
Plaintext and ciphertext
As in previous weeks, there is some terminology we need to introduce:
  • plaintext – information that can be directly read by humans or a machine (this article is an example of plaintext). Plaintext is a historic term pre-dating computers, when encryption was only used for hardcopy text, nowadays it is associated with many formats including music, movies and computer programs
  • ciphertext – the encrypted data
  • a cipher – the mathematics (or algorithm) responsible for turning plaintext into ciphertext and reverting ciphertext to plaintext. (You might also see the word ‘code’ used. There is a technical difference between the two but it need not concern us now.)
  • encryption – the process of converting plaintext to ciphertext (occasionally you may see it called ‘encipherment’)
  • decryption – the process of reverting ciphertext to plaintext (occasionally ‘decipherment’). 
Coursera Project Management - Qualify for 35 PDUs   Build Project Management Skills with Coursera   Learn Data Science, Digital Marketing, Business Foundations & More. Start Learning.