Encrypted message with nLockTime I know you can delay a transaction's accepted date by using nLockTime. I'm still looking for the simplest way to generate a transaction with nLockTime, but that's another topic.

I'm wondering if there's a way to use this feature to send a message that will only decrypt after the time is due.

I know that a transaction broadcast with nLockTime already has all details visible and the amount is simply not yet spendable by the recipient. Is there a way to also make the note on that transaction encrypted until such date? Can I use bitmessage to achieve this somehow? How about another coin such as Dash or zCash which I assume also encrypt the transaction's note to anyone except the recipient [do they actually do this, especially Dash]?

The idea is to send a message that only the recipient can decrypt and only after a certain date, with no manual intervention in the future, nor anything else involved. It would be ideal if they received that message in their wallet like any transaction after it's due, but the message shouldn't be viewable by others nor by the recipient in advance searching, say, in a block explorer.

Thank you
I don't think that is possible with only nLockTime. There are however "smart" contracts, by using a 2-of-2 multisignature where each party deposits an insurance worth more than the shared secret. The economic loss is more than they gain if both parties don't follow through on their part of the deal.

On a note, this would actually be possible with the technology currently used ZCash. Using zk-SNARKS, you could generate proof that a piece of content is encrypted by key X. In that same zk-SNARK signature you could prove that hash(X) = Y and create an economic construct that will only allow a transaction after X is revealed, creating Y and allowing a party to get their money.