The keys must have been found.
Note that "must have" (active) or "must have been" (passive) is used for expressing deductions and conjectures: logical necessity, or conviction.
Bob must have found his keys because I saw him drive out of the parking lot." [I didn't see the keys, but I can deduce they were being used.]
You must have been a beautiful baby" [I am guessing that you were a beautiful baby also, since you're beautiful now.]
She must have landed in London by now. [Without direct evidence, but judging by the passage of time since her departure and the expected flight duration, I expect that she has landed.]
So, "the keys must have been found" expresses the speaker's conjecture that the keys are in a recovered state, or that they were in a recovered state based on an observation. (Since time has passed between that observation and the present moment, it may not be true now):
Just now, I saw Bob drive out of the lot, so he must have found his keys. [Bob is probably still driving and so must still have the keys.]
Last Friday I saw Bob drive out of the lot, so he must have found those keys he had been looking for. [Current status of the keys is completely unknown.]
The keys are sure to have been found.
This is like like "the keys must have been found" when "must have" is being used to make a conjecture, not a deduction. There is no difference between:
I'm sure the keys have been found.
I'm sure the keys were found.
Watch out though: these two sentences have a possible interpretation of certainty, as in "I'm positively certain that the keys were found". The sentence "The keys are sure to have been found" does not have a possible interpretation of certainty. Therefore, only one of these sentences makes sense:
- {The keys are sure to have been found * | I'm sure the keys have been found}, because I saw Bob bring them to reception, where they were placed in the lost-and-found box! Go take a look for yourself.
"Must have/have been", "sure to have/have been" can never express certainty based on a direct observation. "Must have/have been" can express certainty, but only based on an indirect deduction:
- The keys { must* | } have been found because I see them on your desk.
There is no difference between "was found" and "has been found", due to the semantics of "to find" (in the sense of to recover something lost, not necessarily in the sense of to uncover a truth). Of course, that does not hold for all verbs.
You may be required to use one form or the other depending on the surrounding context, but there is no nuance that separates them. For instance the "long been" construction:
- Did you ever find your wallet?
- Oh that! That {has long (since) been found | was long (since) found * | was found long ago}.
The correct variants say exactly the same thing.