Cette expression est née au milieu du XIXe siècle, par croisement avec "éventer la mèche" (fin du XVIe siècle). Celle-ci provient du langage militaire où l'on perçait la mine afin d'en laisser la mèche à l'air libre et la faire exploser. Par extension, cette expression a pris le sens de "divulguer un complot". Enfin, elle s'est ensuite transformée en "vendre la mèche", le verbe "vendre" étant à comprendre dans le sens de "trahir".