In Matthew 26, when the high priest asks Jesus whether he is the Messiah, Jesus seems to equivocate. Why does he say "You have said so," instead of simply saying yes?

Let's take a look at the passage in question. The scene is the informal hearing before Caiaphas. It is the Lord's last night before his execution.

63... The high priest said to him, “I charge you under oath by the living God: Tell us if you are the Messiah, the Son of God.” 64 “You have said so,” Jesus replied. “But I say to all of you: From now on you will see the Son of Man sitting at the right hand of the Mighty One and coming on the clouds of heaven.” 65 Then the high priest tore his clothes and said, “He has spoken blasphemy! Why do we need any more witnesses? Look, now you have heard the blasphemy."

In v.64, asked directly whether he is the Son of God, Jesus (at first blush) seems to give an indirect answer. But his following words make it abundantly clear that he has no doubt as to his identity or the certainty of the events of his second coming. So emphatic is Jesus that the high priest immediately accuses him of blasphemy.

Notice earlier in the chapter a similar response to a question, in this case from Judas Iscariot:

23 ...“The one who has dipped his hand into the bowl with me will betray me. 24 The Son of Man will go just as it is written about him. But woe to that man who betrays the Son of Man! It would be better for him if he had not been born. 25 Then Judas, the one who would betray him, said, “Surely you don’t mean me, Rabbi?” Jesus answered, “You have said so.”

The wording is identical. (We see an almost identical match in Matt 27:11.) Perhaps "You have said so" implies responsibility on the part of Judas for what he has done, just as Jesus incriminates Caiaphas. But there is no doubt at to the meaning. (Consider the strong words of Christ in vv. 23-24!)

No, Jesus doesn't equivocate. He is the Christ, the Son of God. Nor should we equivocate in our witness to the world!