Le code de Hadamard est un code correcteur, nommé d'après Jacques Hadamard, à taux de transfert extrêmement faible mais à grande distance, couramment utilisé pour la détection et la correction d'erreurs lors de la transmission de messages sur des canaux très bruyants ou peu fiables.
Dans la notation standard de la théorie du codage pour les codes en bloc, le code de Hadamard est un code , c'est-à-dire un code linéaire sur un alphabet binaire, a une longueur de bloc de , la longueur (ou la dimension) du message , et une distance minimale . Bien que la longueur du bloc soit très grande par rapport à la longueur du message, les erreurs peuvent être corrigées même dans des conditions extrêmement bruyantes.
Ce code étant localement déchiffrable, c'est-à-dire qu'il est possible de récupérer des parties du message original avec une forte probabilité, tout en ne disposant que d'une petite fraction du message reçu, il possède de nombreuses applications dans la théorie de la complexité des calculs et en particulier dans la conception de preuves vérifiables par probabilité. De plus, comme la distance relative du code de Hadamard est de 1/2, il est en théorie possible de récupérer des messages avec au maximum 1/4 de bits erronés. Cependant, en utilisant le décodage par liste, il est possible de calculer une courte liste de messages candidats possibles tant que moins de des bits du message reçu ont été corrompus.
Grâce à ses propriétés mathématiques uniques, les codes Hadamard sont intensément étudiés dans des domaines tels que la théorie du codage, les mathématiques et l'informatique théorique, outre ses applications dans de nombreuses technologies et industries.
Bien que Jacques Hadamard n'ait pas inventé le code lui-même, il a défini la matrice de Hadamard vers 1893, bien avant que le premier code correcteur, le code de Hamming, ne soit développé dans les années 1940.
Le code de Hadamard est basé sur des matrices de Hadamard, et bien qu'il y ait beaucoup de matrices de Hadamard différentes qui pourraient être utilisées, normalement seulement la construction de Sylvester des matrices de Hadamard est utilisée pour obtenir les mots de code du code de Hadamard.