I want to create a contract function that will decrypt and return a value given a password (or key) - but only after a certain date.
e.g. outside the blockchain I encrypt the value "ABCDEF" and store the encrypted result "1fa329" in a contract on the blockchain:
storeEncryptedValue("1fa329')
After the year 2020 anyone can call a function providing they know the password (key) like this:
revealTheValue('my-password')
This function will throw if the date is not > 2020-01-01.
Does solidity have a decrypt function?
Obviously once somebody has called revealTheValue(...) function the password is visible to the world, but that is not a concern in this use case.