Idea 3) Time based auth. Have a factor that only becomes clear when a certain time happens. Hard to implement in practice? Could it be something such as how light falls on the earth or something stranger? How could this work in practice?
nLockTime should handle this:
https://en.bitcoin.it/wiki/Contracts