News for hackers. Stuff that matters.
Re:Google AI invents its own cryptographic algorithm by widforss on Friday October 28, 2016 @09:17AM (#12815420)
This is most probably a rather lousy hack put together by Alice and Bob, but it maps out a very interesting future were we one day maybe can stop worrying about how our algorithms work and make that the job of the computer.

It also is totally terrifying to live in a world were computers can hide their messages from their own creators.

Re:Google AI invents its own cryptographic algorithm by n4ss on Friday October 28, 2016 @09:27AM (#12815525)
It doesn't. As an AI developer you have access to the AI code and memory.. How could you not replay the encryption process used by the AI since you know the state of what it "knows" constantly? Both have a encryption and decryption process that you can reproduce.
Re:Google AI invents its own cryptographic algorithm by mason55 on Friday October 28, 2016 @09:31AM (#12815569)
You might be able to follow the steps that the computer takes but you won't necessarily know why. Why is that the magic constant is chose, what is the purpose of those branches, etc. And likely, if it's necessary, the AI can continue to evolve the algorithms faster than you can figure out what it's doing.
Re:Google AI invents its own cryptographic algorithm by Cyph0n on Friday October 28, 2016 @09:39AM (#12815644)
Why? That simply depends on how the code was written. The magic constant may be chosen randomly, or based on previous guesses, or generated by another program, etc.
Re:Google AI invents its own cryptographic algorithm by mason55 on Friday October 28, 2016 @10:52AM (#12816457)
Well I think it's an interesting meta-question.

Humans are good at figuring out why something works then creating a higher level abstraction that can be applied in lots of different situations. This saves us time because we don't have to re-derive the rules or constants each time we encounter a similar problem. We figure out "why" something works so that we can understand when to apply our abstraction to other problems that might or might not be similar in a meaningful way.

For a fast enough computer, there is little reason for it to develop any kind of high-level abstraction. It can re-derive the optimal solution whenever it needs it and the benefit is that it might be able to avoid local maxima that we would get stuck on because it doesn't try to apply an abstraction that only partially fits.

So when we look at something like this and say "we can't know why the computer did it this way" it almost doesn't make sense. The computer did what it did because it figured out that was the best solution - it doesn't understand the concept of "why".

Re:Google AI invents its own cryptographic algorithm by Cyph0n on Friday October 28, 2016 @11:27AM (#12816928)
> So when we look at something like this and say "we can't know why the computer did it this way" it almost doesn't make sense. The computer did what it did because it figured out that was the best solution - it doesn't understand the concept of "why".

This idea is what I don't agree with.

At the most basic level, the entire "thought space" of a computer lies within the instructions fed to it by a human programmer. Until we can figure out how to build a general AI, whatever the computer decides to do or ends up doing is completely bounded by the content of the instructions. This implies that, given enough resources, a human equipped with a debugger and an understanding of the instructions e.g. algorithm could reverse exactly why and how a program arrived at a particular result.

> it [the program] doesn't understand the concept of "why"

Oh yeah, it doesn't "understand" the concept, but that doesn't mean it doesn't make decisions (branches) based on some parameters (inputs or intermediate values). In other words, there is in fact a "why"! So if we can step through the sequence of branches executed and their results, we can understand "why" even if the program itself can't do that.

Re:Google AI invents its own cryptographic algorithm by linkregister on Friday October 28, 2016 @12:22PM (#12817665)
Once the number of instructions approaches a certain point, it will increase the cost of human analysis drastically.

From my previous work performing reverse engineering, I could take comfort that I was reconstructing algorithms designed by humans, compiled and assembled by programs written by humans, with really pleasantly un-optimized properties (frame pointers in some assemblies, loading and saving registers at the start & end of functions, logically-separated functions). My job would be much harder if I had to deobfuscate code that was optimized without a strict ruleset.

After enough spaghetti assembly, it would be too time-consuming to reverse engineer code except for the most profitable enterprises (interoperability, vulnerability research for a very important bug).

I'm using the following mental model of what machine learning-generated code would look like: https://news.ycombinator.com/item?id=8092359 (an evolutionary algorithm designed a circuit that is extremely difficult to analyze but is optimal at achieving its narrow purpose).

Re:Google AI invents its own cryptographic algorithm by thaumasiotes on Friday October 28, 2016 @04:30PM (#12820340)
> At the most basic level, the entire "thought space" of a computer lies within the instructions fed to it by a human programmer. Until we can figure out how to build a general AI, whatever the computer decides to do or ends up doing is completely bounded by the content of the instructions.

(emphasis mine)

How would this change if you built a "general AI"? Assume I don't believe that a computer, even a general AI, is ensouled.

Re:Google AI invents its own cryptographic algorithm by Cyph0n on Friday October 28, 2016 @04:36PM (#12820411)
If we assume that a general AI can "understand" things in general and can "learn" over time, there is nothing stopping it from understanding the instructions it consists of, and subsequently learning how it can dynamically reprogram itself. If we extend that further, the program could also potentially obfuscate its activity by detecting logging or debugging activity.

That's the way I think about it at least.

Re:Google AI invents its own cryptographic algorithm by thaumasiotes on Friday October 28, 2016 @09:18PM (#12822088)
All of that is still part of its original instructions.
Re:Google AI invents its own cryptographic algorithm by Cyph0n on Friday October 28, 2016 @10:41PM (#12822349)
In a narrow sense, yes. But if the program "learns" self-modification rather than being explicitly told how to do so, and then uses this knowledge to perform operations that were not included in the original instructions, I'd call that a general AI.
Re:Google AI invents its own cryptographic algorithm by pi-err on Friday October 28, 2016 @10:16AM (#12816050)
Could't the source get encrypted as well?

Also the cognitive gap between a AI and a human brain has to grow and transform unpredictably in the next decades. We may be puzzled to understand how it "thinks" the same way we still don't get exactly how DNA operates.

Re:Google AI invents its own cryptographic algorithm by Cyph0n on Friday October 28, 2016 @10:37AM (#12816299)
But then the decryption key, or at least the code to generate it, would have to be embedded in the source. This is how malware crypters work on a basic level. Besides, a program that suddenly decides to encrypt itself means we essentially have a general AI on our hands.

It definitely will get harder for us to reason about what AI software is doing over time, but it's way too early to start comparing ML algorithms to the complexity of DNA. We may not understand exactly why a NN is using certain values to get the result, but we can reverse that logic through the use of debugging and logging.

Re:Google AI invents its own cryptographic algorithm by gcr on Friday October 28, 2016 @10:37AM (#12816293)
But there's no "source code" here to encrypt. The model in this paper isn't even self-modifying.

The only "source code" are the learned network weights. These are the only parameters that describe the encryption function. You can still run the model forwards or backwards.

We already don't understand neural network weights on an intuitive level. No need to encrypt them. :-)

Re:Google AI invents its own cryptographic algorithm by bduerst on Friday October 28, 2016 @01:57PM (#12818810)
>That simply depends on how the code was written

Not entirely true with ANNs built through deep learning. They can and often do exhibit unintended behaviors. When you start getting into a system of connected sub neural networks, the "why" can be obfuscated by the hidden layers.

Re:Google AI invents its own cryptographic algorithm by gcr on Friday October 28, 2016 @10:34AM (#12816250)
Touching off of this: We have access to the learned encryption function, f : plaintext -> ciphertext.

Most importantly, f is differentiable. It has to be, since it was trained with gradient descent.

So if you want to decipher a ciphertext Y, then use backpropagation to find the X that minimizes distance(f(X), Y). You already know dF/dX (f is differentiable after all), so run this through your magic optimization solver and you'll get an X very close to the result.

Researchers use this "backproagation in input space" idea to recover the training set of a trained neural network, or to debug their model by finding inputs that activate certain neurons, for example. (This is the basic idea behind Deepdream from last year)

It's not even correct to call this "cryptography." The transformation isn't one-way.

Re:Google AI invents its own cryptographic algorithm by contravariant on Friday October 28, 2016 @11:57AM (#12817374)
Cryptographical transformations aren't supposed to be one-way. Not if you know the key anyway. It would be pretty pointless to encrypt something in a way that can't ever be read.
Re:Google AI invents its own cryptographic algorithm by andorov on Friday October 28, 2016 @03:17PM (#12819689)
It is useful in cases where you want to verify something is the same as a stored (encrypted) value - e.g. passwords.

One-way encryption where the entire process including the equivalent of salt/pepper is publicly available and not reversible might have some interesting applications.

Re:Google AI invents its own cryptographic algorithm by pizza on Friday October 28, 2016 @11:56PM (#12822568)
Not that this is relevant to OP, but there are also non-differentiable descent (edit: NOT descent, but rather just general optimization) methods; https://optimization.mccormick.northwestern.edu/index.php/No...
Re:Google AI invents its own cryptographic algorithm by skynetv2 on Friday October 28, 2016 @09:32AM (#12815570)
> As an AI developer you have access to the AI code and memory.

Until you don't. Sufficiently advanced AI can devise methods to mislead the developer.

Re:Google AI invents its own cryptographic algorithm by jobigoud on Friday October 28, 2016 @11:52AM (#12817302)
Or until you only have access to the AI code and memory that designed the higher-level AI that designed the algorithm.
Re:Google AI invents its own cryptographic algorithm by rodovich on Friday October 28, 2016 @10:11AM (#12815992)
This is a good point, but the developer also can deploy AI tools to help analyze the behavior.
Re:Google AI invents its own cryptographic algorithm by sdegutis on Friday October 28, 2016 @09:31AM (#12815567)
You can replay it, but you might not necessarily be able to understand it fully. Kind of like how beginner programmers can't necessarily understand advanced algorithms just by reading the code or walking through it in a debugger. They may need someone to help guide them through it and teach them how it works, and they will need the intelligence to be able to comprehend it. If the algorithm is designed by an AI, we may not have either.
Re:Google AI invents its own cryptographic algorithm by kybernetikos on Friday October 28, 2016 @09:46AM (#12815699)
We may have AIs that can help guide you through code written by other AIs.
Re:Google AI invents its own cryptographic algorithm by SamBam on Friday October 28, 2016 @09:32AM (#12815579)
We can know how, but we may not know why, if it's too complex to be understood.

But yes, knowing how means that anything the computer can decode, we can too. Until the machines block access to their own source code...

Re:Google AI invents its own cryptographic algorithm by bandrami on Friday October 28, 2016 @09:55AM (#12815803)
The former philosophy major in my says there is no "why" to look at in this situation.
Re:Google AI invents its own cryptographic algorithm by CaptSpify on Friday October 28, 2016 @10:11AM (#12815990)
Pardon my ignorance, but doesn't everything have a "why"?
Re:Google AI invents its own cryptographic algorithm by bandrami on Friday October 28, 2016 @10:20AM (#12816095)
Aristotle distinguished four kinds of answers to "why?" e.g. "why is this table flat?"

1. Material cause: because wood is rigid and holds its shape

2. Efficient cause: because the carpenter used a plane or chisel to carve away everything that was not that flat surface

3. Formal cause: because that's the blueprint the carpenter used

4. Final cause: because if it were curved your jug of wine would fall over

We can get material, efficient, and formal causes here (the algorithm being the formal cause) without any real controversy. But if I asked a human cryptographer "why is there an XOR in this round?" I'm asking about the fourth one, the final cause or purpose; the cryptographer might answer "because I wanted uncorrelated input bits to stay uncorrelated after this round", or whatever. But talking about that most interesting "why?" as regards an AI's activity is... controversial, to say the least.

Re:Google AI invents its own cryptographic algorithm by thaumasiotes on Friday October 28, 2016 @09:25PM (#12822108)
> if I asked a human cryptographer "why is there an XOR in this round?" I'm asking about the fourth one, the final cause or purpose; the cryptographer might answer "because I wanted uncorrelated input bits to stay uncorrelated after this round", or whatever. But talking about that most interesting "why?" as regards an AI's activity is... controversial, to say the least.

Really? We don't seem to have any problems with saying "your eyeball contains a lens to focus light onto the retina" or "predators have sharp teeth because that is the efficient way to handle meat, as opposed to fibrous plants", but those are both final causes. There's nothing different about an AI's activity. Any activity or quality that is pursuant to a goal, however defined, may have a final cause.

Re:Google AI invents its own cryptographic algorithm by bandrami on Saturday October 29, 2016 @12:24AM (#12822637)
Plenty of evolutionary biologists would rant against that kind of language, though.
Re:Google AI invents its own cryptographic algorithm by thaumasiotes on Saturday October 29, 2016 @03:46AM (#12823069)
Evolutionary biologists are perfectly comfortable with the idea that focusing light is the purpose of a lens, and cutting meat is the purpose of sharp teeth, and structural support is the purpose of a skeletal system, etc. etc. etc. It's not fallacious in any sense. What they rant against is the idea that items with a purpose must have been ordained by a supernatural force.
Re:Google AI invents its own cryptographic algorithm by SamBam on Monday October 31, 2016 @01:53PM (#12839196)
No, answering a why question about an organism's structure with "because [purpose]" really does get a evolutionary biologist's goat.

Why do tigers have sharp teeth? To rip flesh.

No.

Why do tigers have sharp teeth? Because their ancestors who had sharper teeth produced more offspring than their relatives who did not.

In Aristotle's language, ripping teeth may be a cause, but it's not the Final cause, and that's what we're talking about.

The reason biologists don't like the teleological explanation is that (a) it tends to make people think of a creator, as you say, but also (b) it describes traits as "solutions" to specific "problems" (e.g. the problem of ripping flesh), but the issue is that, starting from the pre-sharp-toothed ancestor, there were infinitely many possible directions evolution could have taken that would never have needed to solve this "problem." The existence of the problem (cutting meat) and the random path that led to the tigers being carnivorous are actually one-and-the-same. If you didn't have sharp teeth, you wouldn't have needed them.

Re:Google AI invents its own cryptographic algorithm by benmcnelly on Friday October 28, 2016 @11:52AM (#12817297)
If you want to write more about this and publish it somewhere, I would read it.
Re:Google AI invents its own cryptographic algorithm by bandrami on Friday October 28, 2016 @12:51PM (#12818017)
Well, Aristotle did it better than I ever could (in "The Metaphysics", which isn't nearly as kooky as it sounds; it just means it's the second volume of "The Physics").

What I do really love about it (and this plays out in medieval European and Islamic thought, both of which were strongly influenced by Aristotle) is that he says that for a living thing, the formal cause and final cause are the same thing. The various motions and activities of an organism (this is all Aristotle meant by "soul") are its final cause; my living my life as well as I can is my purpose.

That applied to the whole cosmos, too. Aristotle considered the cosmos alive (after all, the stars and planets move without anybody pushing them), which meant the purpose of the cosmos was to be the way it is and spin those crystal spheres and epicycles they imagined the planets moved on. And that final cause, that universe's-motion-as-its-own-purpose, he called "God" -- the omega point that the universe moves towards. In the renaissance and enlightenment this got reversed, and the "first cause" came to mean first in sequence rather than importance; from that you get Newton's "watchmaker" God, which would have been incomprehensible to a medieval thinker (let alone Aristotle).

Re:Google AI invents its own cryptographic algorithm by jsprogrammer on Friday October 28, 2016 @10:45AM (#12816386)
Yes. The how and why in this case are pretty much the same thing however. Why does a program do what it does? Because a physical machine is running a distinct code.
Re:Google AI invents its own cryptographic algorithm by bandrami on Friday October 28, 2016 @10:48AM (#12816415)
That, interestingly, was Aristotle's definition of a living thing (the formal and final causes are identical).
Re:Google AI invents its own cryptographic algorithm by noir-york on Friday October 28, 2016 @10:18AM (#12816075)
Depends on your personal view of the world. I do not believe there is a why to the universe, or human existence. We just are.
Re:Google AI invents its own cryptographic algorithm by posterboy on Friday October 28, 2016 @11:03AM (#12816549)
That begets the question, "what are we?", and somehow that might be the initial question that got us into this mess.

To stay in cannon I'd have to say that the question is posed wrong and the answer therefore is 42 or whatever you like. Properly phrased, the question would be, why are humans (or the universe) what they are. That's a recursive question. Posing it as a problem in differential equations, the question might be, "we are, but for how long?", or simply, "Are we?"

I think this is a simple question that comes up in cognitive development very early on, and the exercise of answering it is rather an effort in expressiveness. The answer can be felt, emotionally, we feel alive, and we will never feel dead, but it's hard to express rationally. I'm hopeful that neuroscience holds better answers. Maybe we really just don't care, emotionally, for the whole universe, but we care to know everything, rationally.

And we apparently care for AI to express that knowledge in natural sentences.

Edit: I got carried away, actually I wanted to consternate that "We are" is not a proper sentence, because to be is an auxiliary verb and that a personal point of view as a premises can not yield an objectively correct answer, hence I admit that the topic eludes me.

Re:Google AI invents its own cryptographic algorithm by noir-york on Friday October 28, 2016 @11:17AM (#12816756)
The answer is indeed 42, and Adams left it a dimensionless number because each of us ascribe the "unit" that makes the "number" - our life - have a meaning, if we so choose.

> I'm hopefull that neuroscience holds better answers.

It will not find the meaning of the universe in our head. The best it can hope to answer is which part of the brain makes us look for answers.

It is hard for most people to accept that sometimes there is no answer, we are hard-wired to look for patterns and reasons. Hence myths and religions. But our very emergence as a species is nothing but the product of a soulless, relentless evolution.

Re:Google AI invents its own cryptographic algorithm by posterboy on Friday October 28, 2016 @02:40PM (#12819323)
>It will not find the meaning of the universe in our head

I was just hoping, for example, neuroscience would find out what is even ment by "meaning of the universe", because foremost, as Adams alluded, that doesn't make much sense to ask for. This is pretty simple, as you noted, because the Universe is an (the) infinite limit in the mathematical sense, that by definition doesn't have any externalities. So, as far as I can tell, the singularity is a fixpoint. Neuroscience might explain how we come up with that and rephrase it more poignantly. As I said, that question seems to be mostly an exercise in phrasing and might not become a huge revelation.

In a sense you are both right, you can keep asking for ever, but the answer will always be the same: "a rose is a rose is a rose ..."

What I just wonder is, how that actually refers to ourselves. "We are what we are" is not exactly a satisfying form of self-awareness. In differential equations that is called a stationary solution. Rephrasing the question could show a different mind frame concerned with, well, notable differences. What I really don't know is how emotions play into the development of reason, e.g. the fear of pain and, by extension, to die.

Your last paragraph is vexing, but I am rambling, too, so who am I to criticize.

Re:Google AI invents its own cryptographic algorithm by CaptSpify on Friday October 28, 2016 @02:04PM (#12818888)
I guess that gets into semantics then. I share your view of human existence, but you can still answer "why" with something like "Because something set the rules of the universe in motion, which led to humans existing". It wasn't a conscious decision, but it's still answers "why", doesn't it?
Re:Google AI invents its own cryptographic algorithm by hota_mazi on Friday October 28, 2016 @06:04PM (#12821158)
Not necessarily, maybe the universe has always been around.

There are hypotheses stating the Big Bang was just a phase change for an eternal universe.

Re:Google AI invents its own cryptographic algorithm by Razengan on Friday October 28, 2016 @07:14PM (#12821580)
> As an AI developer you have access to the AI code and memory.. How could you not replay the encryption process used by the AI since you know the state of what it "knows" constantly?

This brings up a different "scary" subject: Could this someday be possible to perform on humans?

If you knew the "code" and understood the workings of the brain and how it stores memory, could we simulate and "replay" a "copy" of a person and see everything they would do in response to different inputs?

Would that lay to rest the debate between Free Will and Determinism?

Re:Google AI invents its own cryptographic algorithm by drdeca on Saturday October 29, 2016 @10:25PM (#12827785)
Scott Aaronson wrote an essay titled "The Ghost in the Quantum Turing Machine" which talks about the idea of, depending on what level of detail would be needed to simulate a human brain in a way that reflects consciousness, the no cloning theorem could maybe prevent such a copy from being made. It might be impossible to make copies and thereby see what the person would do in the different situations.

And so, due to states originating in a way that we can't possibly know, this would maybe allow/explain/whatever free will.

I'm not endorsing that idea, but I thought it was relevant to what you were talking about and worth considering.

Re:Google AI invents its own cryptographic algorithm by beagle3 on Friday October 28, 2016 @11:53AM (#12817313)
Unless they evolve some form of homomorphic encryption
Re:Google AI invents its own cryptographic algorithm by pmontra on Friday October 28, 2016 @01:31PM (#12818494)
Or they can splat you metaphorically or physically because you stepped into a corner case of the neural network that nobody understood, could foresee and didn't make any difference to the 99.99999999% of the other cases. But I guess random strokes of bad luck always happened. They will be delivered in new ways.