It would absolutely be enforceable by law.
In general, a contract requires only an offer, its acceptance, and consideration (gain or loss resulting from the accepted offer). The parties must also have a shared understanding of the terms of the contract (for example, if one thinks he's paying 1 million in Zimbabwean currency and the other thinks he's getting 1 million in dollars, there is no contract).
Bitcoin is valuable consideration. It's a tradable asset with a tangible (if fluctuating) value.