Some years ago I invented an unbreakable cipher. I had the good fortune to encounter a cryptographer a few days ago, and told him the method. He excused himself for five minutes, and when he came back he told me how to break it.
They've made some progress in cryptography in the last 30 years. The most significant development was the RSA method, which depends on identifying two long primes (originally, about 60 digits each), multiplying them to get a 120-digit number, and then using that number to encode the message in such a way that you can't decode it unless you can factor it into the two 60-digit primes. It was and is possible to factor a 120-digit number into its primes, but at the time you needed a lot of patience; if I recall rightly the computational power of the early 1980s was such that it would take approximately the lifetime of the earth to do it. One side effect of the RSA system was that you could announce a portion of your code to the world, and others could use it to encode messages to you, which only you could decode because only you knew your two primes that produced your public key. It was something as if you could announce that your public key was 91, but only you knew (or could calculate) that its two prime factors are 13 and 7.
Computers got faster and more powerful, and then someone invented a method to factor 120-digit numbers more efficiently, meaning that 60-digit primes weren't strong enough. My cryptographer friend said that Microsoft now uses 300-digit numbers for its encrypting, requiring two primes of 150 or so digits each. No doubt eventually encryption will use primes in the thousands of digits.