Congratulations! You've just reinvented hash based commitments.
The idea of 'publish a disguised value' and later 'reveal the value of that disguised value' is known (in cryptographical circles) as commitments; the fundamental properties are:
It should be infeasible to determine, from the commitment, what it stands for ("hiding")
It should be infeasible to reveal ("open") a commitment to two different values ("binding")
There are a number of commitment schemes known; the simplest are hash based commitments, which work pretty much as you said.
The commitment is binding (with the caveat in the next paragraph) if the hash function is collision resistant; showing that it is hiding is slightly trickier (it can't be shown from any of the standard hash security notions), but if the random value is long enough, it is quite plausible.
The only slightly tricky part is that the committer must not be able to change where the random value and where the value is, for example:
sha256( 'secret key' + '[email protected]' )
sha256( 'secret ke' + '[email protected]' )
This can be done either by agreeing beforehand the length of the 'secret key', or including length values for the components in the secure hash.
Now, the obvious question is "if this method is the simplest, why would someone do anything more complex"? Well, some will complain about the 'plausibility' in the hiding property, and want something more solid. In addition, this works if all you need is a basic commitment scheme; however sometimes there is a need to do a zero knowledge proof of the committed values (e.g. these two commitments commit to the same value) - that's painful for hash based commitments, and much more doable with (say) Pedersen commitments.