Can an exchange work which does not have control of the private keys? It seems like there is really no great way to exchange USD for BTC.  Having to trust an exchange with your private keys is undesirable.  I'm wondering if there is a way to utilize the convenience of an online exchange without needing to trust them with your private keys.  So two questions:


Are there any exchanges which do not require control of the private keys?  I am aware that Coinbase offers a multi-sig vault but I'm talking more about zero control, zilch, nada, private keys on your local device only.
Is there a problem with the following exchange model?  The exchange manages all the market orders and matches buyers and sellers to transact directly.  The exchange communicates the terms of a transaction to the BTC seller's wallet (like the blockchain wallet) and tells the seller that he has X minutes until the terms are void.  The BTC seller's wallet finalizes the transaction.  The transaction requires the exchanges signature and the seller's signature.  The seller signs the transaction using his private key and forwards it to the exchange.  The BTC buyer sends money to the exchange.  The exchange then signs the transaction and sends it off to the network.  Once the transaction is confirmed in the blockchain Y number of times (to avoid double spending), the exchange forwards along the money to the BTC seller, keeping a commission for himself.
This could work. Participants would need to deliver sufficient money to the exchange to protect others from their non-performance. But the exchange would never have to touch any Bitcoins.

When you sell Bitcoins, you'd have to be responsible for any decrease in the value of Bitcoins between when you sold them and when you delivered them. Rational sellers would price this risk into their spreads and try to deliver as quickly as possible.

Likely, the buyer would have to be able to cancel a buy if the seller didn't deliver. If the price had gone down, the buyer would be responsible for the difference in price.

The problem with such a service, at least today, is that it would be difficult for people to buy and sell on it. Buyers would have to wait for delivery and possibly switch offers and sellers would need to deliver quickly or risk losing money. This would result in higher buy prices and lower sell prices, which would likely discourage adoption.

It could become popular among people who want to speculate on the price of Bitcoins with leverage. You could sell Bitcoins you don't have, for example. The buyer doesn't want Bitcoins, they just want to profit if the price goes up.