Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

two problems

Name: Anonymous 2013-02-17 18:11

1. Is it possible for a remote server to prove that the software it runs is what it claims to run to the client.

2. Is it possible for a piece of software to operate on encrypted content in such a way that the owner of the machine cannot know what the software is doing, and no information about the data being processed is exposed?

Name: 1 2013-02-17 21:26

>>12
I'd expect 1 to be impossible. Since you are communicating with a device over a network, all you know is the input and output. I guess the closest thing is to trust the server and use authentication to verify its identity. And besides, you can never know what other devices may be listening in the middle anyway.

2 sounds reasonable when the operation is storing and retrieving data. I suppose if there was any other type of operation, the encryption function would need to be an isomorphism for whatever the function was.

let enc be the encryption function.
let k the encryption key.
let d1, d2 be two plain text data elements.
let f be some operation defined on the data elements.
let d3 = f(d1,d2).

find an operation defined on the encrypted data elements, g, such that:

c1 = enc(k,d1)
c2 = enc(k,d2)
c3 = enc(k,d3)
= enc(k,f(d1,d2))
= g(enc(k,d1),enc(k,d2))
= g(c1,c2)

Client encrypts d1, d2, and creates a g for f. Then the client gives the server, g, c1, c2. Server computes c3 using c1, c2, and g, and sends c3 back to the client. client decrypts c3. client uses le cloud without sacrificing privacy.

But knowing g, c1, and c2, you must not be able to infer what d1, d2, f, or d3 are.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List