Skip to main content
Post Made Community Wiki
Source Link
Tim van Beek
  • 1.5k
  • 9
  • 25

cryptography

example: Information send over the internet needs to be secure such that only the sender and the recipient can understand and use it. Example: Man in the middle attack on a bank transaction: You send an order to your bank to pay 100 Dollars to Mr. X. I intercept this transmission and change the order to your bank to make them send me 100 000 Dollars instead. Since every information send over the internet passes through a lot of different computers (gateways), all I need to intercept your message is access to one of those computers. Thousands of network administrators do have such an access (this is grossly simplified of course).

In order to secure the information, me and my bank need to know an algorithm for cryptography. Commonly used are algorithms using public/private key pairs. These consist of functions such that

  1. the bank publishes a public key k,

  2. I can apply a function f mapping the information inf I would like to send, using the public key k, to an encrypted message f(inf, k).

  3. The whole punchline is that the inverse function can only be computed by knowing the private key, which only my bank knows. So only my bank can compute the information inf knowing f(inf, k).

Commonly used algorithms are based on the assumption that there is no efficient algorithm to factorize large numbers, i.e. compute the prime factors of a given large number. The validity has not been proven. So you can

a) get famous by proving this assumption,

b) get either famous (and provoke a collapse of internet banking) or insanely rich by finding an algorithm that computes prime factors efficiently,

c) get famous and rich by finding an efficient algorithm for public/private key encryption that is efficient and provable safe.