I'm unsure how Proof of Stake prevents double spending. In PoW it's evident that I need 51% of the hashing power of the network, to "overtake" the real chain with my fraudulent fork. But what stops me in Proof of Stake to:
- Save the current chain as is.
- Send 1 coin to Bob
- Go offline and add blocks to my backed up chain, excluding my prior transactions, and wait until it's larger than the real blockchain
- Go online and broadcast the fraudulent fork.
Does the rest of the network have a way to see that I cheated by adding my own blocks? In PoW they could check the hash, but they can't here. I of course wouldn't get any fees or rewards for the "fake" blocks, but I would still get my money back, that I send to Bob.
Hope someone can clarify why this is not possible, and how the network can spot that I wasn't selected to add those blocks.