# Tag Info

Accepted

### Keeping a String Secret in (Open) Source Code

You have at least two options, depending on what problem you want to solve. If you want innocent readers of your code to not get the answers inadvertently, or you at least want to make it a bit ...
• 270k

### Why do we need full-fledged workstations running massive OSes with massive software?

You are conflating a number of issues here. Why does my software have all these features to begin with? Because other computers' software has those features, and network effects punish any software ...
• 3,413
Accepted

### How does an operating system create entropy for random seeds?

The title and the body of your question ask two different questions: how the OS creates entropy (this should really be obtains entropy), and how it generates pseudo-randomness from this entropy. I'll ...

### Keeping a String Secret in (Open) Source Code

You have two three options: Keep the answers separate from the rest of the source code If you want your code to be open source, however don't want the answers to be open source, then you open source ...
• 391

### Why do we need full-fledged workstations running massive OSes with massive software?

Since the other answers go pretty well into why companies just buy general purpose computers, I wanted to give an answer about security. In a lot of ways, it's easier to secure a system you know is ...

### What is oblivious RAM and how does it work?

Oblivious RAM is an interface between a program and the physical RAM that when you perform a read or write, does both at the same time on the physical RAM to hide if you are reading or writing. Plus, ...
Accepted

### Can you prevent a man in the middle from reading the message?

Can the man in the middle not just take the keys swapped by the opponents, change the keys and then decrypt and encrypt the message again? Yes, they can. A key exchange protocol like (the "textbook" ...
• 4,899

### Running an algorithm on data remotely and ensuring answer has not been tampered with

In the crypto community, this task is known as delegated computation, or verifiable delegation. You wish to let the server (the "cloud") to do the work for you, but you also want the cloud to give you ...
• 20.4k
Accepted

### Would it ever be possible for computer viruses to evolve new "genes" to allow them to perform their job?

I suppose it would be possible in theory, but computer malware (viruses, worms, etc.) typically don't work this way today, and there are good reasons why they're written the way they are. You might ...
• 141k

### Zero-knowledge proof: Abstract example

I believe this is done to illustrate two things. (i) The small probability, that $P$eggy ($P$rover) might be lying. If she really does not know the magic word and $V$ictor ($V$erifier) sees her ...
• 138
Accepted

### Can software itself be encrypted?

If you want a practical answer: with Intel SGX, the answer seems to be a qualified yes, but software development is likely to be more painful. (Similar with a TPM, though that will be even more ...
• 141k

### Would it ever be possible for computer viruses to evolve new "genes" to allow them to perform their job?

TL;DR: computers are not autonomous entities like organisms, with any survival instinct. They just run instructions, and sometimes they run instructions we don't like, so we run other instructions to ...
• 29.1k
Accepted

### Computer Security versions of the Halting Problem

What you're looking for is Rice's Theorem, which is a generalized version of Halting Undecidability. It basically says that any property of a Turing Machine (i.e. any computer program) is undecidable,...
• 29.1k

### Can you prevent a man in the middle from reading the message?

In a man-in-the-middle attack, you ask Bob for his key but Eve intercepts the message and sends you her key instead. She asks Bob for his key and then passes messages between you and Bob, decrypting ...
• 80.3k

### Why do we need full-fledged workstations running massive OSes with massive software?

"If I were running a company ... the employee would see only the "sections" that are relevant for them, coded by me." You are not prescient. You cannot predict the future requirements of all your ...

### Why do we need full-fledged workstations running massive OSes with massive software?

I'd use a simple username/password system, with no password resets or two-factor auth Password resets are required somewhere because people forget passwords. 2FA is required sometimes because they ...
• 411

### Why did the concept of "write-protecting" not carry over from floppy disks to USB memsticks and especially external USB HDDs?

I'm not entirely sure that this question is on topic, but nonetheless, I suspect it has a simple answer. Physical write protection mechanisms predate floppy disks. At my school holiday job in the ...
• 19k

### Keeping a String Secret in (Open) Source Code

Why would you store your answers in your GPL source code if you don't want your users to know them? Even if they're not known or easily crackable now, they can (and likely will) be in the future. ...
• 143

### Keeping a String Secret in (Open) Source Code

Open source requires the source code to be made public and available, not the game data. So you could easily put the data in another file and not publish that one. Add some crypto if you want to ...
• 149

### Keeping a String Secret in (Open) Source Code

If the object is to obscure strings from casual reading of the source code but keep them open so other people can easily make their own changes - for example if you were publishing the source to a ...
• 141

### Why do we need full-fledged workstations running massive OSes with massive software?

I would argue that the premise of the question makes a wrong assumption: There is an enormous amount of people that use computers set up to perform a single task. Behind the scenes, they're generic ...
• 141
Accepted

### How large is the seed in an encryption algorithm such as stream cipher?

The seed of a pseudorandom generator that is used as a stream cipher is called a key. The most common key sizes are 128 bits and 256 bits. (That's symmetric keys, where there's no cheaper way to break ...
Accepted

### Sharing a requested secret number not knowing which

This is known as the oblivious transfer problem. You can find about it online if you are looking for zero-knowledge interactive proofs for it.
• 10.8k

### Why are computers so fundamentally insecure?

The point of a general-purpose computer is that it can do almost anything. It's an extremely flexible tool. The point of a secure system is that it can't do most things. It can only do the things that ...
• 870

### Existence of functions that only tests memberships without revealing any information about the members

Yes. This is known as the problem of obfuscating a point function. There are standard schemes. See, e.g., the following papers: On Obfuscating Point Functions. Hoeteck Wee. STOC 2005. ...
• 141k

### How does an operating system create entropy for random seeds?

In addition to Gilles answer, interrupts can also be used to establish entropy. In Linux for example, when adding an interrupt handler you can define whether the occurrence of this interrupt should be ...

### Can Eve impersonate Alice or Bob by using a replay attack?

well, you don't really explain what happens in each step, and how the authentication procedure works, but your first suggestion is at the right direction. However, the impersonator wishes to ...
• 20.4k

### Would it ever be possible for computer viruses to evolve new "genes" to allow them to perform their job?

the general question is about evolution in malware. the specific question is about genes. there is indeed a genetic algorithm mechanism that uses digital "genes" for optimization & could certainly ...
• 10.8k