Please help me pick right design of software…
I have to design client-server software, where the server should verify that the client runs software from specific source code. It has to be verifiable that the software doesn't simulate actions (results of algorithms). So, we accept that client could be compromised. We just want to be able to notice if that happens.
The real task behind this question: “burn-after-read” text messenger. How can a sender verify that the receiving client really deleted message and didn't store it in RAM?
A related question: is there FOSS software which operates like Smart card?
The design should implement open source software, and could be applied to p2p network (that means server could be compromised too, and we need avoid 51% botnet attack). It should be applied to basic x86 desktops, without TPM, CA & Smart card.
I feel answer could lie near fields of cryptography, GPG, i2p, DHT, Kademlia, Bitcoin.