Is four confirmations enough if the network hash rate is so high? The point of waiting for six confirmations is that it becomes near impossible to create six blocks vs the network. So double spends a effectively eliminated.  With the hash rate of the network so high, is four blocks enough to have the same security? 

Also, what about in the case of a fork like the one that resulted in 23 blocks?
Technically, one block is enough. However, a single block orphan occurs with sufficient frequency that many Bitcoin business prefer three or six confirmations. The difference is more a matter of personal choice.

The hash rate of the network does not significantly impact the time between blocks because of the difficulty level. The difficulty level helps maintain the block timing at approximately every 10 minutes.

The 11/12 March 2013 blockchain fork was a bit of a special case. Only one known double spend occurred, and that was a result of someone who crafted a raw transaction involving a company (OKpay) that did not heed the warning to cease transacting until the fork was resolved.