Here is my response to the hostile and honest critics alike. Some people are grumpy today because they have not had their bowl of Meow-Mix today yet. Before I go on, let me say that by a reversible computer, I mean a computer that is 99% reversible as opposed to a 100% reversible computer. There will always be some irreversibility since you will need to delete information eventually at some point.
1. Symmetric encryption-decryption functions are not one-way functions and they can be made completely reversible. Everything I said therefore holds for symmetric encryption-decryption without a caveat.
2. Please look at the paper by Charles Bennett called TIME/SPACE TRADE-OFFS FOR REVERSIBLE COMPUTATION. That paper shows how one can use a process called uncomputation to compute anything you like using a reversible computer without spending too much time, space, or deletions.
3. Reversible computers will probably hit the market in the near future since they are necessary if we want to advance computing technology much further. Several researchers have even created reversible computer chips
https://dspace.mit.edu/bitstream/handle/1721.1/80144/43625195-MIT.pdf?sequence=2. The reasons why reversible comptuers have not hit the market yet are
a. reversible computation takes more steps than conventional computation so the gains that one would get by reversible computation would not be enough to overcome the space and time overhead that reversible computation comes with,
b. up until now, we had no need to construct reversible computation because we could get faster and faster computers simply by shrinking the size of everything, and
c. it is kind of hard to make a reversible computer.
4. Yes. Hash functions are one-way functions. That does not mean that they cannot be efficiently computed using nearly reversible computers. Let me give an outline of how it could be done efficiently without even resorting to the uncomputation techniques outlined in Bennett's paper that I had referred to.
Suppose that A is a finite set (A is the set of all blocks being hashed). Suppose that f_x:{0,1}^256->{0,1}^256 is a reversible function for each x in A. f_x can be computed solely using reversible gates. Then the function H:A*--->{0,1}^256 defined by H(x_1...x_n)=f_(x_n)(...f_(x_1)(0)). This is the Merkle-Damgard construction. The only irreversibility that comes into play is that you may need to delete the output of the hash function later on.
5. I have read up on cryptography already.
6. The title of this room is "serious discussion." This means that you do not use words like "f***ing" and "stupid ***" and phrases such as "You're dumb" and "This post is dumb." That sort of discussion should be reserved for a room called "non-serious discussion."
7. No response. What's up with that?