Product Design, Manufacturing & Innovation Resources
Maison » Conception de Produits » Fabrication » Sommes de contrôle dans la conception et la fabrication de produits : comment éviter les erreurs d’étiquetage, les erreurs de lecture de codes-barres et les rappels coûteux

Sommes de contrôle dans la conception et la fabrication de produits : comment éviter les erreurs d’étiquetage, les erreurs de lecture de codes-barres et les rappels coûteux

Sommes de contrôle dans la conception et la fabrication de produits
Somme de contrôle
La mise en œuvre de sommes de contrôle améliore l'intégrité des données tout au long du cycle de vie du produit.

Une palette quitte le quai avec le bon produit mais une étiquette erronée. L'usine de réception la scanne, le système ERP accepte le code, et trois semaines plus tard, une réclamation est liée à un lot introuvable. La pièce elle-même était conforme. Un seul chiffre était erroné dans les données d'identification.

Le calcul d'une somme de contrôle est la mesure de protection la plus économique contre ce type de défaillance. Il ajoute quelques chiffres ou octets à un enregistrement, et toute station en aval peut vérifier cet enregistrement sans consultation de base de données.
Les produits physiques véhiculent des données à travers de nombreux intermédiaires, machines et formats. Un fichier CAO devient une nomenclature, une nomenclature devient un ordre de fabrication, et un ordre de fabrication devient une étiquette. L'étiquette est ensuite numérisée, et la numérisation devient un document d'expédition.

Ce guide considère la somme de contrôle comme un outil de qualité, et non comme un sujet relevant de l'informatique ou du développement. Il aborde les algorithmes, des chiffres de contrôle au SHA-256, puis les applique étape par étape : conception, industrialisation, production, qualité, logistique et service après-vente. Chaque chapitre se termine par deux conseils pratiques destinés aux ingénieurs travaillant sur des produits physiques.

 

Table des matières
1. Pourquoi les produits physiques dépendent de l'intégrité des données
2. Qu'est-ce qu'une somme de contrôle ?
3. Propriétés fondamentales et leur signification pour les indicateurs de qualité
4. Un bref historique des sommes de contrôle et des opérations similaires
5. Quelle est la place des sommes de contrôle dans le cycle de vie du produit ?
6. Bits de parité et sommes simples
7. Chiffres de contrôle : comment calculer un chiffre de contrôle GS1 et pourquoi il est important
8. Erreurs de lecture de codes-barres : causes, vérification et solutions
9. Comment éviter les erreurs d'étiquetage
10. Sommes de contrôle du réseau et du bus de terrain
11. Qu'est-ce que la vérification d'erreurs CRC ?
12. Fonctions de hachage non cryptographiques
13. Hachages cryptographiques et vérification d'une somme de contrôle SHA-256
14. Sommes de contrôle chiffrées, signatures et authenticité
15. Codes correcteurs d'erreurs
16. Comparaison des algorithmes
17. Conception et ingénierie
18. Industrialisation et fabrication, y compris la vérification du flashage du firmware
19. Gestion de la qualité et conformité
20. La perspective Lean Six Sigma
21. Logistique : comment réduire les erreurs de préparation de commandes en entrepôt
22. Service après-vente, marché de l'après-vente et fin de vie
23. Corruption accidentelle versus corruption malveillante
24. Comment choisir la somme de contrôle appropriée
25. Guide de mise en œuvre
26. Liste de contrôle des meilleures pratiques par rôle
Conclusion sur les sommes de contrôle et les éléments similaires
FAQ
Annexes

Note: Les dates réglementaires mentionnées dans cet article, telles que celles de la loi européenne sur la cyber-résilience, du passeport des produits numériques et de la loi américaine DSCSA, ont été vérifiées en novembre 2026. Veuillez les confirmer à nouveau avant d'établir un plan de conformité.

Points clés à retenir

  • Une somme de contrôle permet de détecter les erreurs accidentelles. Empêcher toute modification délibérée nécessite une signature ou un code chiffré.
  • Les chiffres de contrôle protègent les identifiants manipulés par les personnes et les scanners. Les CRC protègent les trames et les images de micrologiciel. Les hachages cryptographiques protègent les fichiers et les enregistrements.
  • Le chiffre de contrôle GS1 détecte toutes les erreurs sur un seul chiffre. Il ne détecte pas environ 11 % des transpositions adjacentes, c'est-à-dire celles où les deux chiffres diffèrent de 5.
  • Il convient de vérifier au moment de la création et à nouveau au moment de l'utilisation. Un contrôle unique à une étape ne permet pas de couvrir toutes les autres étapes.
  • Considérez le contrôle lui-même comme un système de mesure. Mettez-le à l'épreuve avec des échantillons reconnus comme défectueux, étalonnez les vérificateurs et suivez les résultats.

 

1. Pourquoi les produits physiques dépendent de l'intégrité des données

Un produit est un objet physique auquel s'ajoutent ses données.

Ces données comprennent les modèles CAO, les dessins, les nomenclatures, les images de firmware, les tables d'étalonnage, les étiquettes, les dossiers de lots, les résultats de tests et les documents d'expédition. Une valeur erronée dans l'un de ces éléments peut entraîner l'arrêt d'une ligne de production, l'envoi d'un article incorrect à un client ou un rappel de produit.

Là où les erreurs de données entrent dans la chaîne

Les erreurs proviennent généralement de ces cinq sources :

  • Les gens font des fautes de frappe ou lisent mal les chiffres.
  • Les machines interprètent mal les marques endommagées.
  • Bits de basculement de stockage et de transmission.
  • Les modifications apportées au processus remplacent la version correcte par une version obsolète.
  • Enfin, il est possible que quelqu'un modifie des données intentionnellement.
Erreurs de données
Identifier les sources d'erreurs de données dans les processus de conception et d'ingénierie des produits.
Source de l'erreur Exemple Conséquence typique Contrôle typique
Clé Chiffres inversés dans une référence Composant incorrect fourni à la ligne chiffre de contrôle
En lisant Code-barres 1D illisible décodé comme un autre nombre Lot incorrect enregistré Contrôle de la symbologie, niveau de vérification, correction des erreurs
Transmission Retournement de bit sur un châssis de bus de terrain valeur de consigne ou de capteur corrompue CRC
Stockage Cellule flash dégradée sur le terrain Micrologiciel ou données d'étalonnage corrompus CRC, code correcteur d'erreurs
Version Ancien modèle d'étiquette laissé sur une imprimante Données obsolètes sur les marchandises expédiées Hachage du fichier publié
Falsification Image du firmware modifiée défaillance de sûreté ou de sécurité Signature, code chiffré

 

Le coût de la mauvaise qualité

Le coût d'une qualité médiocre se décompose en prévention, évaluation, défaillances internes et défaillances externes. Une somme de contrôle intervient dans les deux premières catégories : elle évalue automatiquement les données et empêche la propagation de l'erreur. Les économies sont réalisées en détectant l'erreur en amont.

Une erreur détectée lors de l'impression des étiquettes entraîne une réimpression. La même erreur, détectée chez le client, engendre des mesures de confinement, de tri, voire un rappel de produit, et une perte de confiance.

Les règles empiriques comme la règle du 1-10-100 ne sont qu'indicatives. Seuls vos propres registres de rebuts, de retouches et de réclamations vous donneront le véritable coefficient multiplicateur.

Conseils de pros pour les ingénieurs

  • Cartographiez chaque étape de transmission de données, depuis la validation CAO jusqu'à l'étiquette d'expédition. Effectuez les premiers contrôles à ces étapes.
  • Classez les étapes de transfert en fonction de votre historique d'erreurs : réclamations, étiquettes de rebut et enregistrements de retouches. Commencez par l'étape où le coût par erreur détectée est le plus élevé, généralement après la sortie du produit de l'usine.
Somme de contrôle
Une somme de contrôle est une méthode de validation rapide permettant de garantir l'intégrité des données dans la conception et l'ingénierie des produits.

2. Qu'est-ce qu'une somme de contrôle ?

Une somme de contrôle est une petite valeur calculée à partir d'un bloc de données par un algorithme défini. L'émetteur la stocke ou la transmet avec les données. Le récepteur recalcule la valeur à partir de ce qu'il a reçu et compare les deux. Si elles diffèrent, cela signifie que les données ont été modifiées entre les deux calculs.

Imaginez un indicateur de réussite/échec : vous ne mesurez pas la totalité des données. Vous appliquez un test rapide et reproductible qui renvoie réussite ou échec.

 

Terminologie du monde des sommes de contrôle

Plusieurs termes sont utilisés de manière imprécise dans les usines et les équipes de développement logiciel. Le tableau les classe selon la question à laquelle chacun répond.

Terme Qu'est-ce que c'est Questionnez-la, répondez Utilisation typique
chiffre de contrôle Un ou deux chiffres ajoutés à un identifiant, calculés à l'aide d'une formule modulaire Ce numéro a-t-il été saisi ou scanné correctement ? GTIN, SSCC, VIN, IBAN
somme de contrôle simple Somme ou XOR des octets d'un message Le message court est-il arrivé intact ? Phrases NMEA 0183, enregistrements Intel HEX
CRC Remainder of a polynomial division over [latex]\mathrm{GF}(2)[/latex] Des bits ont-ils basculé dans cette image, ce bloc ou cette trame ? CAN, Modbus RTU, Ethernet, micrologiciel
Hachage ou digestat Empreinte digitale de taille fixe de données arbitraires Ce fichier est-il identique à celui-ci ? packages de distribution, téléchargements, déduplication
MAC ou HMAC Hachage ou chiffrement combiné à une clé secrète Cela a-t-il été produit par quelqu'un qui détenait la clé ? Messages authentifiés, étiquettes d'appareil
Signature numérique Preuve asymétrique d'origine calculée sur un hachage Qui a publié ceci, et est-ce que cela n'a pas changé ? Micrologiciels, certificats, documents réglementés
Code correcteur d'erreurs Redondance permettant la réparation des données endommagées Les dégâts sont-ils réparables ? DataMatrix, code QR, mémoire ECC

Détection versus correction

La plupart des sommes de contrôle se contentent de détecter une erreur. Elles indiquent qu'un problème est survenu, sans préciser sa nature. Cela suffit sur une chaîne de production, où la réaction appropriée consiste à arrêter, réimprimer, rescanner ou retransmettre. Les codes correcteurs d'erreurs vont plus loin et réparent les données, ce qui est particulièrement adapté aux supports susceptibles de s'effacer ou aux mémoires qui se dégradent. Le chapitre 15 traite de ces codes en détail.

Conseils de pro

  • Pour chaque contrôle, rédigez une fiche descriptive concise : les données protégées, le modèle d’erreur supposé, l’algorithme et ses paramètres. Un contrôle sans modèle d’erreur ne peut être évalué dans une AMDEC.
  • Stockez un identifiant d'algorithme à côté de chaque valeur de contrôle enregistrée, par exemple le nom sha256 suivi du condensé. Ainsi, une migration ultérieure n'invalidera jamais les enregistrements archivés.

3. Propriétés fondamentales et leur signification pour les indicateurs de qualité

Chaque propriété d'une somme de contrôle a un équivalent dans le vocabulaire de l'ingénierie de la qualité. Leur mise en correspondance permet d'intégrer la vérification dans une AMDEC ou un plan de contrôle sans traduction.

Propriété Signification Contrepartie de qualité
Déterminisme Une même entrée donne toujours la même valeur Répétabilité du contrôle
taille de sortie fixe La valeur comporte n bits quelle que soit la longueur de l'entrée. Coût constant par chèque, longueur de champ connue sur l'étiquette
Probabilité de détection Part des entrées corrompues qui modifient la valeur [latex]1 – P_{\mathrm{escape}}[/latex], input to the FMEA detection rating
Collision Deux entrées différentes donnent une seule valeur Échappement, également appelé fausse acceptation
distance de Hamming Le plus petit nombre d'erreurs binaires pouvant passer inaperçues Profondeur de détection garantie
Longueur d'éclatement La plus longue séquence de bits corrompus est toujours détectée. S'adapter à l'environnement sonore réel, par exemple aux interférences électromagnétiques à proximité des moteurs.
Avalanche effect Dans un bon hachage, inverser un bit d'entrée modifie environ la moitié des bits de sortie Rend négligeable un allumage accidentel

Probabilité de détection en nombres

For an arbitrary corruption pattern, an [latex]n[/latex]-bit check lets the error through with this probability:

[latex]\displaystyle P_{\mathrm{escape}} = 2^{-n}[/latex]

A mod-10 check digit lets about one random error in ten through. A 16-bit CRC lets one in 65,536 ([latex]2^{-16}[/latex]) through. A 32-bit CRC lets one in roughly 4.3 billion ([latex]2^{-32}[/latex]) through.

Les propriétés garanties sont plus robustes que cette statistique. Un bon CRC détecte chaque erreur sur un seul bit et chaque rafale jusqu'à sa propre longueur. C'est précisément pour cette raison que les ingénieurs choisissent un polynôme spécifique.

arithmétique du taux d'échappement

Le taux de détection d'une erreur de données est égal à la probabilité que l'erreur se produise, multipliée par la probabilité que le contrôle ne la détecte pas.

[latex]\displaystyle P_{\mathrm{escape}} = P_{\mathrm{error}} \times P_{\mathrm{miss}}[/latex]

Take an error rate of 1 in 1,000 keyed entries and a mod-10 check digit. Then [latex]P_{\mathrm{escape}} = 10^{-3} \times 10^{-1} = 10^{-4}[/latex]. About 1 entry in 10,000 still passes with a wrong random value. State such numbers in the FMEA instead of rating detection by feel.

Indice de détection FMEA

Dans le manuel AIAG-VDA FMEA de 2019, les contrôles de détection sont notés de 1 à 10, 10 signifiant une absence totale de détection. Ce même manuel a remplacé l'indice de priorité des risques par un tableau de priorité des actions, pondérant d'abord la gravité, puis la fréquence d'occurrence, et enfin la détection. Un contrôle automatisé bloquant l'opération suivante peut justifier une note de détection bien supérieure à celle d'un contrôle visuel. Il est important de conserver les preuves, par exemple un test de validation avec des échantillons défectueux connus.

Accepter faux
Équilibrer les types d'erreurs dans la validation des données afin de garantir l'exactitude et l'efficacité de la conception des produits.

fausse acceptation et faux rejet

Deux types d'erreurs peuvent affecter tout contrôle. Une acceptation erronée laisse passer des données incorrectes, ce qui constitue une erreur d'échappement. Un rejet erroné bloque des données valides et engendre une perte de temps de traitement. Un code de contrôle (CRC) correctement implémenté ne rejette jamais de données valides, car la règle est stricte. Les rejets erronés proviennent de l'étape de lecture, par exemple lorsqu'un scanner rencontre un problème avec un code valide mais mal imprimé.

Tips

  • Citez la probabilité d'échappement d'un contrôle n-bit pour la corruption aléatoire, ainsi que la longueur de rafale garantie et la distance de Hamming pour les défauts structurés, comme preuve de détection dans l'AMDEC.
  • Ne multipliez pas les taux d'échappement de deux contrôles sauf si leurs défauts sont indépendants. Deux contrôles qui lisent la même source corrompue, ou qui partagent un opérateur ou une bibliothèque logicielle, échouent simultanément.

4. Un bref historique des sommes de contrôle et des opérations similaires

Les techniques présentées dans cet article sont anciennes, et c'est là leur atout. Chacune d'elles repose sur des décennies d'expérience de terrain, et chaque mode de défaillance est documenté.

Année Développement Pourquoi c'est important ici
Début des années 1950 Bits de parité dans le télégraphe et les premiers ordinateurs Première détection pratique des erreurs
1954 Hans Peter Luhn d'IBM dépose un brevet sur une méthode de chiffre de contrôle Origine du contrôle mod-10 sur les cartes de paiement
1961 Peterson et Brown publient des vérifications cycliques des taux de redondance. Base des CRC dans les bus et le firmware
1969 Verhoeff publie un schéma décimal qui capture toutes les transpositions adjacentes Cela montre qu'il existe de meilleurs chiffres de contrôle que le modulo 10.
1974 Premier article portant un code UPC scanné en magasin Début de la traçabilité par code-barres
1995 SHA-1 spécifié dans la norme FIPS 180-1 L'ère de la vérification des fichiers par hachage commence
2002 Famille SHA-2 publiée dans FIPS 180-2 SHA-256 devient le condensé par défaut
2004 Damm publie un chiffre de contrôle basé sur les quasi-groupes Schéma simple avec détection complète de transposition
2015 SHA-3 normalisé dans la norme FIPS 202 Deuxième famille indépendante de fonctions de hachage
2017 Première collision pratique SHA-1, connue sous le nom de SHAttered Le SHA-1 est inadapté partout où la falsification est problématique.
2022 Le NIST annonce le retrait du SHA-1 d'ici le 31 décembre 2030. Horizon de planification pour les produits à longue durée de vie

Conseil de pro : Lors de l'intégration d'une interface existante, conservez le contrôle d'origine sur cette liaison et ajoutez un contrôle de bout en bout plus robuste au niveau de la couche application. Modifier le format de trame existant comporte rarement le risque escompté.

5. Quelle est la place des sommes de contrôle dans le cycle de vie du produit ?

Utilisez ce tableau comme guide pour la suite de l'article. Il indique le type de contrôle applicable à chaque étape et l'endroit où une défaillance se manifeste généralement.

Scène Données à risque Protection typique défaillance typique Là où elle fait surface
Conception CAO, nomenclature, code source du firmware, références des pièces Hachage du paquet distribué, chiffre de contrôle du numéro de pièce, CRC de l'en-tête du firmware Révision erronée publiée, numéro de pièce mal saisi Revue des modifications techniques, première construction
Industrialisation Recettes, paramètres d'automate programmable, modèles d'étiquettes, programmes de test Comparaison du hachage ou du CRC avec un disque de référence Ancienne recette ou modèle chargé Premier article, essai en ligne
Production Marques, numéros de série, micrologiciel, données de la station Niveau de vérification, hachage de lecture, CRC du bus Marque illisible, flash défaillant, image corrompue Analyse en ligne, test de fin de ligne
Qualité Résultats d'examens, certificats, généalogie Chaîne de hachage, signature, piste d'audit Enregistrement modifié ou manquant Audit, réclamation client
Logistique Événements GTIN, SSCC, GLN, ASN, EPCIS Chiffre de contrôle GS1, totaux de contrôle des messages Erreur de sélection, adresse de livraison incorrecte, numéro de série en double Confirmation de prélèvement, réception des marchandises
Services et fin de vie Mises à jour, identifiants de pièces détachées, passeports Mises à jour signées, pièces authentifiées, identifiants uniques Mise à jour corrompue, pièce contrefaite Panne sur le terrain, réclamation sous garantie

Conseils de pro

  • Créez une matrice des étapes du cycle de vie, des objets de données, des contrôles présents et des preuves conservées. Chaque case vide représente un manque, et la matrice constitue votre backlog d'améliorations.
  • Générez le contrôle sur le système source et vérifiez-le sur le système de réception à l'aide d'une routine écrite indépendamment. Deux implémentations exposent des erreurs de paramètres et d'ordre d'octets qu'une bibliothèque partagée masque.

6. Bits de parité et sommes simples

Un bit de parité est un bit supplémentaire qui détermine si le nombre de bits à 1 dans un mot est pair ou impair. Il détecte tout nombre impair de bits inversés et ignore tout nombre pair. Deux inversions s'annulent et le mot est validé.

La parité bidimensionnelle organise les données en lignes et en colonnes et ajoute un bit de parité à chaque ligne et à chaque colonne. Elle repère un bit inversé et peut ainsi le corriger. Elle détecte toutes les erreurs de deux ou trois bits. Quatre bits inversés aux coins d'un rectangle peuvent néanmoins passer inaperçus.

Sommes de contrôle additives et XOR

L'étape suivante consiste à additionner tous les octets, ou à effectuer un XOR entre eux, puis à envoyer le résultat. Ces vérifications sont peu coûteuses et tiennent sur les microcontrôleurs les plus petits. Elles présentent deux faiblesses importantes en pratique : elles ignorent l'ordre des octets, ce qui permet de traiter des octets inversés ; et les erreurs peuvent se compenser : un octet est incrémenté de 1 tandis qu'un autre est décrémenté de 1, sans que la somme ne soit modifiée.

Une somme de contrôle XOR ignore également tout nombre pair d'inversions au même bit sur différents octets. Maxino et Koopman ont mesuré l'efficacité de telles sommes de contrôle pour les réseaux de contrôle embarqués en 2009 et ont constaté que les CRC de même largeur les surpassent en matière d'erreurs structurées.

Là où ils apparaissent encore

Lieu Schème Commentaire
Phrases NMEA 0183 (GPS, électronique marine) XOR des caractères situés entre le signe dollar et l'astérisque, envoyés sous forme de deux chiffres hexadécimaux Détecte les erreurs sur un seul bit, mais est vulnérable aux erreurs appariées.
Enregistrements Intel HEX dans les fichiers de firmware complément à deux de la somme des octets de l'enregistrement Protège uniquement chaque enregistrement, et non l'image entière.
liaisons série héritées et capteurs simples Somme de 8 bits ou XOR Consultez la fiche technique, puis ajoutez une vérification au niveau de l'application si les données sont critiques.

La casse du format Intel HEX est importante pour le firmware. Un fichier peut réussir tous les contrôles d'enregistrement et pourtant être incomplet, car un enregistrement manquant ne laisse aucune trace dans les autres. Ajoutez un CRC ou un hachage au niveau de l'image, comme décrit au chapitre 18.

Dispositifs physiques qui utilisent encore la parité et des additions simples

Cartes à bande magnétique

Chaque caractère comporte un bit de parité impaire, et un caractère de contrôle de redondance longitudinale suit le caractère de fin. Un lecteur rejette un glissement qui échoue à l'un ou l'autre de ces tests.

Instruments série et périphériques PLC

Les liaisons RS-232 et RS-485 peuvent ajouter un bit de parité à chaque caractère, ce qui permet de détecter les basculements de bits uniques causés par le bruit électrique.

Parité
Utilisation des bits de parité et des sommes de contrôle dans les dispositifs physiques pour la détection des erreurs et l'intégrité des données.

Programmateurs Flash et chargeurs de démarrage

Ils lisent les fichiers Intel HEX et Motorola S-record, qui contiennent une somme pour chaque enregistrement, et l'outil rejette normalement un enregistrement qui ne correspond pas.


Conseils d'experts en informatique

  • Ne jamais valider un bloc effacé ou mis à zéro. Commencez la somme par une valeur non nulle ou stockez son complément, de sorte qu'une mémoire flash vide remplie d'octets 0xFF ou 0x00 échoue au test.
  • Les sommes et les opérations XOR ne tiennent pas compte de l'ordre des octets. Si une liaison héritée impose un ordre particulier, ajoutez un champ de longueur et un numéro de séquence afin de détecter les trames interverties, perdues ou répétées.

7. Chiffres de contrôle : comment calculer un chiffre de contrôle GS1 et pourquoi il est important

Les chiffres de contrôle sont les plus anciens et les plus répandus dans l'industrie. Ils figurent à la fin des identifiants saisis manuellement et scannés par les machines. Ils constituent la base de la traçabilité, car chaque lot, numéro de série, emplacement et expédition est référencé par un identifiant.

Comment calculer un chiffre de contrôle GS1

GS1 exige un chiffre de contrôle pour toutes les clés d'identification numériques de longueur fixe, notamment GTIN-8, GTIN-12, GTIN-13, GTIN-14, GLN et SSCC. L'algorithme est une somme pondérée modulo 10. Les pondérations alternent entre 3 et 1, et le chiffre suivant le chiffre de contrôle a toujours la pondération 3.

  1. Écrivez les chiffres de la clé sans son chiffre de contrôle.
  2. En partant de la droite, multipliez les chiffres alternativement par 3 et par 1.
  3. Additionnez les produits de tous les chiffres.
  4. Le chiffre de contrôle est la valeur qui amène la somme au multiple de 10 suivant. Si la somme est déjà un multiple de 10, le chiffre de contrôle est 0.

Written as a formula, the check digit [latex]C[/latex] uses the digits [latex]d_i[/latex] of the body, counted from the right. The weight is [latex]w_i = 3[/latex] for odd [latex]i[/latex] and [latex]w_i = 1[/latex] for even [latex]i[/latex].

[latex]\displaystyle C = \left(10 – \left(\sum_{i=1}^{n} w_i d_i \bmod 10\right)\right) \bmod 10[/latex]

Exemple d'application pour le corps GTIN-13 400638133393. En comptant à partir de la gauche, les poids sont 1, 3, 1, 3 et ainsi de suite, car le chiffre le plus à droite du corps est dans une position impaire à partir de la droite.

Chiffre 4 0 0 6 3 8 1 3 3 3 9 3
Poids 1 3 1 3 1 3 1 3 1 3 1 3
Produit 4 0 0 18 3 24 1 9 3 9 9 9

The products add up to 89. The next multiple of 10 is 90, so the check digit is [latex]C = (10 – (89 \bmod 10)) \bmod 10 = 1[/latex] and the complete GTIN-13 is 4006381333931. The same rule applies to an SSCC. The 17-digit body 34012345000000001 sums to 43, which gives [latex]C = (10 – (43 \bmod 10)) \bmod 10 = 7[/latex] and the SSCC 340123450000000017.

Ce que détecte un chiffre de contrôle

Le tableau compare le schéma GS1 à trois alternatives. Les performances de GS1 et de Luhn ont été confirmées par simulation sur des clés aléatoires. Les propriétés de Verhoeff et de Damm sont documentées dans leurs publications originales.

Type d'erreur GS1 mod 10 (poids 3 et 1) Luhn contre 10 Verhoeff Zut
Substitution à un seul chiffre Tous les éléments détectés Tous les éléments détectés Tous les éléments détectés Tous les éléments détectés
transposition adjacente Tous les chiffres sauf les paires qui diffèrent de 5, soit environ 11 % des échanges de chiffres différents Tous sauf 09 et 90 Tous les éléments détectés Tous les éléments détectés
Déchets aléatoires à plusieurs chiffres Environ 90 % détectés Environ 90 % détectés Environ 90 % détectés Environ 90 % détectés

Le système de pondération GS1 n'est pas le plus robuste. C'est celui que vous devez utiliser pour les clés GS1. Pour les identifiants que vous définissez vous-même, choisissez un système plus robuste.

Un chiffre de contrôle valide ne renseigne pas sur l'existence du numéro. Il indique simplement qu'il est bien formé. Il ne prouve pas que le GTIN est attribué, qu'il appartient à ce produit ou qu'il est actif dans vos données de base. Il est donc essentiel de maintenir la validation des données de base en complément du contrôle arithmétique.

Le chiffre de contrôle du VIN en position 9

En Amérique du Nord, la norme 49 CFR 565 exige un chiffre de contrôle en position 9 du numéro VIN à 17 caractères. Chaque caractère est translittéré en un nombre, puis multiplié par un coefficient de pondération : 8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2. Les produits sont ensuite additionnés. Le reste de la division par 11 constitue le chiffre de contrôle ; un reste de 10 est représenté par la lettre X.

[latex]\displaystyle C = \left(\sum_{i=1}^{17} t_i w_i\right) \bmod 11[/latex]

Here [latex]t_i[/latex] is the transliterated value and [latex]w_i[/latex] is the weight of position [latex]i[/latex].

De nombreux numéros d'identification de véhicule (NIV) d'origine européenne ne comportent pas de chiffre de contrôle valide ; par conséquent, une règle de validation nord-américaine ne doit pas les rejeter automatiquement. Un test rapide pour votre propre implémentation : un NIV composé de dix-sept 1 doit produire le chiffre de contrôle 1. Le texte de la règle se trouve dans… 49 CFR 565.15.

Autres programmes que vous rencontrerez

  • Les codes-barres EAN-13 apposés sur les livres comportent un ISBN-13 et utilisent l'algorithme GS1. L'ancien ISBN-10 utilisait un système modulo 11.
  • Les numéros de cartes de paiement et les numéros IMEI utilisent l'algorithme de Luhn, que Hans Peter Luhn d'IBM a décrit dans un dépôt de brevet de 1954.
  • IBAN utilise le MOD 97-10 de la norme ISO/IEC 7064.
  • Les numéros de conteneurs d'expédition conformes à la norme ISO 6346 se terminent par un chiffre de contrôle.

Conception d'un chiffre de contrôle pour les numéros de pièces internes et les numéros de série

De nombreux systèmes créent des identifiants et ajoutent ensuite un système de vérification maison. Ces systèmes maison omettent souvent les transpositions, une erreur de saisie fréquente. Utilisez un système publié, sauf raison documentée de faire autrement.

  • Choisissez un algorithme établi et publié. Les algorithmes Damm ou Verhoeff conviennent aux identificateurs numériques. La norme ISO/IEC 7064 définit des systèmes purs et hybrides pour les chaînes numériques, alphabétiques et alphanumériques, parmi lesquels MOD 11-2, MOD 37-2 et MOD 97-10.
  • Fixez la longueur de l'identifiant et placez le caractère de contrôle en dernier.
  • Supprimez de l'alphabet les caractères similaires tels que O et 0, ou I et 1, ou traitez-les explicitement dans le schéma.
  • Définissez l'algorithme dans un document contrôlé avec des vecteurs de test, afin que chaque système applique la même règle.
  • Testez le système par rapport aux classes d'erreurs qui vous intéressent : substitution simple, transposition adjacente, erreurs jumelles et erreurs phonétiques où une entrée vocale existe.
  • Pour les nouveaux systèmes, il est conseillé d'utiliser des nombres non significatifs. Cela évite de devoir renuméroter les systèmes lorsqu'une classification change.
  • Validez à chaque point d'entrée, y compris les systèmes ERP, MES, les logiciels d'étiquetage et les scripts d'automates programmables. Un contrôle existant dans un système est ignoré par les autres.

Dispositifs et outils de validation des chiffres de contrôle

Dispositif ou outil Ce qu'il vérifie Pourquoi cela aide
lecteurs et décodeurs de codes-barres Le chiffre de contrôle EAN ou UPC lors du décodage Une erreur de lecture est rejetée et n'atteint jamais le système hôte.
Serveurs de logiciels d'étiquetage et d'impression Le chiffre de contrôle de la clé avant l'impression de l'étiquette Un GTIN ou un SSCC mal saisi ne devient jamais une étiquette physique
terminaux de paiement Le chiffre de Luhn du numéro de carte Les erreurs de saisie sont rejetées avant tout appel réseau.

Tips

  • Générez les chiffres de contrôle à partir d'une fonction de bibliothèque testée et réutilisez-la dans tous les systèmes. Ne saisissez jamais un chiffre de contrôle manuellement et fournissez les vecteurs de test de l'annexe A ci-dessous avec la bibliothèque.
  • Stockez les identifiants sous forme de texte de longueur fixe afin que les zéros non significatifs soient conservés dans les clés GTIN-14 et SSCC. Validez le chiffre de contrôle à chaque étape : impression des étiquettes, scan à la réception et importation dans l’ERP.

8. Erreurs de lecture de codes-barres : causes, vérification et solutions

Les erreurs de lecture de codes-barres se répartissent en trois catégories. Une absence de lecture interrompt le processus et entraîne une perte de temps. Une lecture erronée renvoie une valeur incorrecte qui semble pourtant valide. Une lecture erronée renvoie une valeur valide provenant du mauvais article, par exemple d'une étiquette voisine. Les lectures erronées constituent la catégorie la plus dangereuse, et les contrôles intégrés aux symbologies visent à les limiter.

Contrôles intégrés à la symbologie

Symbolisme Contrôle intégré Commentaire
EAN-13, UPC-A, ITF-14 Chiffre de contrôle GS1 mod 10 Une partie des données encodées
Code 128 et GS1-128 caractère de vérification obligatoire du module 103 Protège le symbole, et le lecteur le supprime. Les clés GS1 à l'intérieur conservent leur propre numéro de module 10.
Code 39 caractère de vérification optionnel du module 43 Activez cette option lorsque vous contrôlez à la fois l'imprimante et le lecteur.
Intercalé 2 sur 5 module optionnel 10 Définissez la longueur attendue dans le lecteur pour éviter les lectures partielles.
Code Data Matrix et QR Correction d'erreurs de Reed-Solomon Réparation des modules endommagés, voir chapitre 15

La lecture n'est pas synonyme de qualité

Un scanner qui décode un symbole ne garantit pas sa qualité. Des symboles de qualité moyenne peuvent être décodés aujourd'hui, mais devenir inutilisables après que l'étiquette se soit abîmée pendant le transport. Un vérificateur évalue la qualité d'impression par rapport à une norme et attribue une note.

Type de symbole Norme de notation Commentaire
Symboles linéaires sur les étiquettes ISO/IEC 15416, édition 2025 Les notes vont de 4,0 à 0,0, soit de A à F.
Symboles bidimensionnels sur les étiquettes ISO/IEC 15415, édition 2024 Notes de A à F
Marquage direct des pièces (micro-percussion, laser, gravure chimique) ISO/IEC 29158, anciennement le rapport technique ISO/IEC TR 29158 Utilise un éclairage différent. Ses grades ne sont pas comparables aux grades de la norme ISO/IEC 15415.

Les vérificateurs doivent être étalonnés à l'aide d'une carte de test de conformité. La norme d'application ou le client définit le niveau minimal acceptable. Consultez les spécifications générales GS1 en vigueur et les règles sectorielles applicables à votre type de symbole.

Causes et solutions

Cause Symptôme Réparer
Faible contraste d'impression ou support inadapté Faible qualité, lectures intermittentes Changez le ruban ou le support, ajustez la densité d'impression, vérifiez auprès de l'imprimante
Zone de silence violée Défauts au niveau du bord de l'étiquette Corrigez la mise en page des étiquettes, ajoutez une vérification de modèle
La dimension X ne correspond pas à la résolution de l'imprimante. Les barres fusionnent ou les espaces disparaissent Choisissez une dimension X qui corresponde à un nombre entier de points d'impression.
Configuration du lecteur Erreurs de lecture à partir de symbologies activées mais inutilisées Activez uniquement les symbologies nécessaires, fixez les longueurs, validez le chiffre de contrôle
Éblouissement ou faible modulation sur les marques directes lectures instables Utiliser un éclairage adapté au marquage, conforme à la norme ISO/IEC 29158.
Dommages survenus pendant le transport Défaillance au niveau du récepteur Utilisez des symboles 2D avec un niveau de correction plus élevé, protégez l'étiquette avec un film de sur-laminage.

Appliquez une seule règle à chaque station de lecture. Décodez, validez le chiffre de contrôle, vérifiez le format par rapport à la clé attendue, puis acceptez la valeur. Toute erreur de lecture déclenche une réaction définie. Elle ne doit pas déclencher une boucle de nouvelles tentatives non comptabilisée.

Conseils pour des applications concrètes

  • Intégrez le niveau minimal de validation du symbole dans les spécifications d'étiquetage, en précisant la norme de mesure et la configuration du vérificateur. Un symbole scannable sur votre ligne indique seulement qu'il lisait correctement, et non qu'il présente une marge.
  • Considérez la zone de silence comme une contrainte de mise en page stricte dans le modèle d'étiquette. Testez le marquage direct des pièces selon la norme ISO/IEC 29158 dans les conditions d'éclairage et d'angle de lecture de la station réelle.

9. Comment éviter les erreurs d'étiquetage

Une étiquette erronée est l'une des défaillances de données les plus courantes et les plus visibles. Elle peut avoir plusieurs causes distinctes, et une somme de contrôle n'en corrige que certaines. Il est donc important d'identifier ces causes avant de choisir les contrôles.

Mode de défaillance Exemple Contrôle Rôle de la somme de contrôle
Données erronées imprimées Les données de la commande ont été modifiées après la création de la tâche d'impression. Imprimer à partir d'une source publiée, comparer la charge utile imprimée avec l'enregistrement attendu Le chiffre de contrôle valide la clé, la comparaison détecte les clés incorrectes.
Modèle ou version incorrecte Mise en page obsolète avec texte réglementaire périmé Les modèles de publication sont gérés par le contrôle des documents et chargés par hachage. Hachage du fichier modèle stocké dans l'enregistrement de version
Étiquette correcte sur produit erroné Le changement de rouleau laisse des étiquettes d'un autre produit dans l'imprimante Autorisation de ligne, rapprochement des rouleaux, numérisation pour correspondance lors de l'application Le chiffre de contrôle doit correspondre au GTIN ou au numéro de série attendu.
Étiquette manquante ou mal placée Étiquette ignorée par l'applicateur Détection de présence, contrôle de la vision Aucun, une autre commande est nécessaire
Numéro de série en double La réimpression réutilise une série allocation séquentielle centralisée, contrainte d'unicité Aucun, un chiffre de contrôle ne détecte pas les doublons.
Symbole illisible Impression à faible contraste Vérificateur en ligne avec un niveau minimum Vérification et classement de la symbologie

Un processus d'étiquetage en boucle fermée

  1. Publier le modèle d'étiquette et sa source de données sous contrôle de modification. Stocker un hachage du fichier modèle dans l'enregistrement de publication.
  2. Au démarrage de la tâche, l'imprimante ou le serveur d'étiquettes calcule le hachage du modèle chargé et le compare à l'enregistrement de validation. Une non-concordance bloque l'impression.
  3. Constituez la charge utile à partir de l'unique enregistrement faisant autorité. Générez le chiffre de contrôle à l'aide d'un logiciel et d'une bibliothèque éprouvée ; ne le saisissez jamais manuellement.
  4. Imprimez, puis vérifiez le symbole directement sur le support. Une note inférieure au minimum requis entraîne le rejet du label.
  5. Scannez l'étiquette imprimée et comparez son contenu décodé avec l'enregistrement attendu pour cet appareil. Rejetez tout appareil dont l'étiquette ne correspond pas.
  6. Un second contrôle a été effectué au poste d'emballage ou d'expédition après l'application. Ce second contrôle permet de détecter les erreurs qui surviennent après l'impression.
  7. À la fin de chaque cycle, effectuez un rapprochement des comptes. Le nombre d'étiquettes émises, apposées, mises au rebut et retournées doit correspondre.

La séquence utilise trois types de vérifications. Le hachage garantit le modèle correct. La clé de contrôle et le format vérifient sa validité. La comparaison avec l'enregistrement attendu confirme qu'il s'agit de la clé appropriée pour cette unité. Seule la troisième vérification permet de détecter une étiquette valide mais incorrecte.

Tips

  • Effectuez un nettoyage de ligne avant chaque changement d'étiquette. Retirez les anciens rouleaux, les restes d'impression et le modèle précédent, et ne lancez l'impression qu'une fois que le hachage du modèle correspond à l'enregistrement de publication.
  • Vérifiez systématiquement chaque étiquette imprimée par rapport à la fiche de commande en effectuant un arrêt brutal. Insérez une étiquette défectueuse au début de chaque quart de travail pour confirmer le bon fonctionnement du système d'arrêt.

10. Sommes de contrôle du réseau et du bus de terrain

Les machines protègent leurs données grâce à des contrôles définis dans le protocole. Ces contrôles sécurisent la liaison, saut par saut. Ils ne protègent pas les données une fois qu'elles sont stockées dans la mémoire de l'automate programmable ou dans une base de données.

sommes de contrôle Internet

Les en-têtes IP, TCP et UDP utilisent la somme de contrôle complémentaire à un (CRC) sur 16 bits décrite dans la RFC 1071. Ce calcul est peu coûteux, mais peu robuste. Il ne détecte pas les mots de 16 bits inversés ni certaines erreurs compensatoires. Les couches liaison ajoutent un CRC plus robuste en sous-jacent, ce qui explique la persistance de cette somme de contrôle faible.

Les fonctions de Fletcher et d'Adler-32 sont des sommes simples à deux accumulateurs, ce qui leur permet de détecter davantage d'erreurs d'ordre qu'une simple somme. La fonction d'Adler-32 est disponible dans la bibliothèque zlib. Elle est moins performante avec les messages courts.

Modbus RTU

Les trames Modbus RTU se terminent par un CRC 16 bits. Le polynôme est 0x8005, utilisé sous sa forme réfléchie 0xA001, avec la valeur initiale 0xFFFF. L'octet de poids faible du CRC est envoyé en premier. Modbus ASCII utilise un contrôle de redondance longitudinale plus simple, sur 8 bits.

Voici une requête RTU complète qui lit 10 registres de maintien à partir de l'esclave 1, en commençant à l'adresse 0. La valeur CRC est 0xCDC5, qui est transmise sur le câble sous la forme C5 suivi de CD.

01 03 00 00 00 0A C5 CD

CAN et CAN FD

Le protocole CAN classique utilise un CRC 15 bits avec le polynôme 0x4599. Il offre une distance de Hamming de 6 pour une longueur de trame fixe, permettant ainsi la détection de cinq erreurs binaires aléatoires. Le protocole CAN FD utilise un CRC 17 bits pour les charges utiles jusqu'à 16 octets et un CRC 21 bits au-delà, choisi pour conserver la même distance de Hamming de 6.

Le bourrage de bits complexifie la situation. La documentation CAN sur l'automatisation indique que le bourrage peut réduire la distance de Hamming effective pour certains motifs binaires dans les trames classiques, et CAN FD ajoute un compteur de bits de bourrage pour compenser cet écart. Les détails se trouvent dans… Explication de la CiA concernant le CRC dans les trames CAN.

Bus basés sur Ethernet

PROFINET, EtherCAT, EtherNet/IP et Modbus TCP transportent leurs données dans des trames Ethernet standard. Chaque trame se termine par une séquence de contrôle de trame de 32 bits (CRC-32), vérifiée par les périphériques à chaque saut. Les trames dont la séquence est incorrecte sont rejetées.

D'autres bus, comme PROFIBUS et IO-Link, définissent leurs propres contrôles de trame. Consultez la spécification du protocole et consignez le contrôle dans votre AMDEC au lieu de le supposer.

Bus basés sur Ethernet
Les bus basés sur Ethernet utilisent des trames Ethernet standard avec des contrôles CRC pour une transmission de données fiable dans les applications industrielles.

Protocoles de sécurité sur le toit du bus

Les protocoles de sécurité tels que PROFIsafe, CIP Safety et Fail Safe over EtherCAT considèrent le bus sous-jacent comme un canal noir. Ce canal peut corrompre, retarder, répéter ou réordonner les messages. La couche de sécurité ajoute son propre CRC, un compteur de séquence et un chien de garde, afin que la fonction de sécurité ne dépende pas des contrôles effectués sur la liaison.

Tirez les leçons de cette expérience pour vos propres conceptions. Un CRC au niveau de la liaison ne protège pas une recette lorsqu'elle est en mémoire ou transite par un serveur OPC UA et un MES. Ajoutez un contrôle de bout en bout au niveau de l'application pour chaque ensemble de paramètres ayant une incidence sur la sécurité ou la qualité.

Conseil: un La passerelle recalcule le CRC à distance, ce qui rend invisible toute corruption de sa mémoire. Il est recommandé d'ajouter un CRC de bout en bout avec un compteur reliant les passerelles pour chaque signal et consigne critiques pour la sécurité.

 

11. Qu'est-ce que la vérification d'erreurs CRC ?

A cyclic redundancy check treats the message as a long binary number, which is a polynomial over [latex]\mathrm{GF}(2)[/latex]. It divides that polynomial by a fixed generator polynomial and keeps the remainder. The remainder is the CRC, usually 8, 16 or 32 bits long. The sender appends it, the receiver divides again, and any mismatch signals corruption.

Un exemple concret

Take the 3-bit generator 1011, which stands for [latex]x^3 + x + 1[/latex], and the message 1101. Append three zeros to get 1101000. Then divide by repeated XOR with the generator.

1101000
1011
-------
0110000
 1011
-------
0011100
  1011
-------
0001010
   1011
-------
0000001

Le reste est 001, donc le mot transmis est 1101001. Diviser ce mot par 1011 donne un reste de 000. Inverser un seul bit rend le reste non nul. Les CRC réels utilisent des générateurs de 8 à 32 bits et fonctionnent soit matériellement, soit avec des tables de correspondance, mais le principe reste le même.

Ce que garantit un CRC

  • Toute erreur sur un seul bit, pourvu que le générateur comporte plus d'un terme.
  • Chaque erreur en rafale ne dépasse pas la largeur du CRC.
  • Every odd number of bit errors, for generators that contain the factor [latex]x + 1[/latex]. The common 16-bit polynomials qualify. The Ethernet CRC-32 does not.
  • Longer bursts and random patterns pass with a probability of roughly [latex]2^{-n}[/latex].
  • Une distance de Hamming qui dépend du polynôme et de la longueur du message.

Les paramètres qui doivent correspondre

Deux parties calculent le même CRC uniquement si elles s'accordent sur six paramètres : la largeur, le polynôme, la valeur initiale, la réflexion d'entrée, la réflexion de sortie et l'opération XOR finale. Les appellations telles que CRC-16 ou CRC-32 sont ambiguës. Catalogue Reveng CRC Cette fonction répertorie les ensembles de paramètres couramment utilisés. Vérifiez l'implémentation à l'aide de la valeur de contrôle ASCII 123456789.

Variante Polynôme Chaleur Réfléchissez à l'intérieur et à l'extérieur XOR final valeur de vérification Utilisation typique
CRC-8 0x07 0x00 Non 0x00 0xF4 Contrôles génériques 8 bits, en-tête de distributeur automatique de billets
CRC-8/MAXIMUM 0x31 0x00 Oui 0x00 0xA1 Dispositifs Dallas et Maxim 1-Wire
CRC-16/MODBUS 0x8005 0xFFFF Oui 0x0000 0x4B37 Modbus RTU
CRC-16/CCITT-FAUX 0x1021 0xFFFF Non 0x0000 0x29B1 Protocoles série, chargeurs de démarrage
CRC-16/XMODEM 0x1021 0x0000 Non 0x0000 0x31C3 XMODEM, certains chargeurs de démarrage
CRC-32 0x04C11DB7 0xFFFFFFFF Oui 0xFFFFFFFF 0xCBF43926 Ethernet, ZIP, PNG
CRC-32C 0x1EDC6F41 0xFFFFFFFF Oui 0xFFFFFFFF 0xE3069283 iSCSI, stockage, instructions matérielles

Choisir un polynôme en fonction de la longueur du message

La robustesse d'un CRC dépend du polynôme et de la longueur du message. Koopman a démontré dans un étude des CRC 32 bits que le polynôme IEEE 802.3 n'atteint qu'une distance de Hamming de 4 sur les messages Ethernet de longueur maximale, tandis que d'autres polynômes atteignent 6. Les réseaux embarqués avec des messages courts présentent des écarts plus importants, et certains polynômes 16 bits largement copiés sont peu performants aux longueurs où ils sont utilisés.

  • Définissez la plage de longueurs des messages avant de choisir un polynôme.
  • Déterminez la distance de Hamming requise à la longueur maximale. Les applications critiques pour la sécurité nécessitent généralement une distance de 6.
  • Prenez le polynôme issu de résultats de recherche exhaustive publiés, et non de traditions populaires ou d'un exemple de code.

Limites d'un CRC

Un CRC est une fonction linéaire du message. Étant donné un message et son CRC, n'importe qui peut modifier le message et calculer un CRC correspondant sans secret. Un CRC ne prouve donc rien quant à l'origine et ne peut empêcher une modification délibérée. Les chapitres 13 et 14 présentent les outils permettant de s'en prémunir.

Dispositifs contenant un CRC

Appareil Où se situe la CRC Remarque
Étiquettes RFID UHF (EPC Gen2) CRC 16 bits sur les réponses aux balises Détecte les erreurs de lecture aux portes de quai et sur les convoyeurs
périphériques USB CRC 5 bits sur les paquets de jetons, CRC 16 bits sur les paquets de données L'hôte tente de renvoyer un paquet ayant échoué
Cartes SD et microSD CRC 7 bits sur les commandes, CRC 16 bits sur les blocs de données Stockage commun pour les journaux et le firmware dans les produits embarqués

Conseil: Le CRC doit couvrir l'en-tête, l'adresse et la longueur, ainsi que la charge utile. Un CRC portant uniquement sur la charge utile laisse passer une adresse ou une longueur corrompue.

12. Fonctions de hachage non cryptographiques

Les fonctions de hachage non cryptographiques telles que xxHash, MurmurHash, CityHash et FNV privilégient la vitesse à la sécurité. Sur les processeurs modernes, elles fonctionnent à une vitesse proche de celle de la mémoire et produisent des valeurs de 32, 64 ou 128 bits qui répartissent uniformément les entrées.

Elles n'offrent aucune protection contre une personne qui crée intentionnellement des entrées conflictuelles :

Là où ils apportent leur aide concernant les données produits

  • Détection des fichiers modifiés lors de la synchronisation PLM et PDM, sans transfert des fichiers.
  • Déduplication de grands ensembles de données de test et d'archives d'images provenant de systèmes d'inspection.
  • Comparer une configuration exportée avec une configuration enregistrée pour voir si des modifications ont été apportées.
  • Caches de clés et tables de consultation dans les pipelines MES et analytiques.

Risque de collision

The birthday bound sets the risk. For [latex]k[/latex] items and a [latex]b[/latex]-bit hash, the probability of at least one collision is approximately:

[latex]\displaystyle p \approx 1 – e^{-k^2 / 2^{b+1}}[/latex]

Avec un hachage 64 bits et un million d'éléments distincts, la probabilité qu'une collision se produise entre deux éléments est d'environ 2,7 sur 100 millions. Avec un hachage 32 bits et 100 000 éléments, la probabilité d'une collision est plus élevée que celle d'une collision improbable, à environ 69 %.

Choisissez un format 64 bits ou plus pour les inventaires. Considérez une correspondance comme une forte indication et confirmez-la en comparant l'ensemble des données lorsque le résultat est important. N'utilisez jamais ces fonctions pour prouver l'authenticité d'un fichier.

Conseils pour les ingénieurs

  • Utilisez des hachages non cryptographiques uniquement pour la détection des modifications et la recherche au sein de vos systèmes. Conservez au moins 64 bits pour les inventaires et comparez l'intégralité des données lorsqu'une correspondance détermine une décision.
  • Ne stockez jamais les valeurs issues de la fonction de hachage intégrée d'un langage de programmation. Certaines, comme celle de Python, peuvent changer d'une exécution à l'autre. Stockez plutôt les condensés d'un algorithme nommé avec une graine fixe.
Six-256
Comprendre les fonctions de hachage cryptographiques et leurs propriétés de résistance pour une conception de produits sécurisée.

13. Hachages cryptographiques et vérification d'une somme de contrôle SHA-256

Dans ce chapitre, nous allons aborder les détails techniques et pratiques.

Une fonction de hachage cryptographique doit résister à trois types d'attaques :

  • La résistance à la préimage signifie que personne ne peut trouver d'entrée pour un condensé donné.
  • La résistance à la seconde préimage signifie que personne ne peut trouver une entrée différente qui corresponde au condensé d'une entrée donnée.
  • La résistance aux collisions signifie que personne ne peut trouver deux entrées ayant le même condensé.
Algorithme Sortir Statut Utiliser
MD5 128 bits Des collisions peuvent être produites en pratique Acceptable uniquement pour la détection de corruptions accidentelles. À éviter dans les nouvelles conceptions.
SHA-1 160 bits L'ouvrage Practical Collision a été publié en 2017. Le NIST prévoit de le retirer du catalogue d'ici le 31 décembre 2030. Systèmes hérités uniquement
SHA-256, SHA-384, SHA-512 256, 384, 512 bits Aucune attaque pratique connue Valeurs par défaut pour les hachages de version, les condensés de firmware et les signatures
SHA-3 (FIPS 202) 224 à 512 bits Conception interne différente de celle du SHA-2 Famille alternative où la diversité est souhaitée
BLAKE2, BLAKE3 Jusqu'à 512 bits, 256 bits par défaut Moderne et rapide, mais sans algorithme approuvé par le FIPS Fichiers volumineux où la rapidité est essentielle et où l'approbation n'est pas requise

Le NIST décrit le plan de retrait du SHA-1 sur son site web. page d'annonce SHA-1Un condensé SHA-256 offre environ 128 bits de résistance aux collisions, ce qui est largement supérieur à toute attaque pratique.

Comment vérifier une somme de contrôle SHA-256

Il vous faut deux choses : le condensé attendu provenant d’une source fiable et le fichier. Calculez le condensé localement et comparez la chaîne complète. Comparer uniquement les premiers caractères compromet la majeure partie de la protection.

# Linux : calcul de la somme de contrôle SHA256 du firmware.bin : sha256sum -c SHA256SUMS # macOS : shasum -a 256 firmware.bin # Windows PowerShell : Get-FileHash .\firmware.bin -Algorithm SHA256 # Invite de commandes Windows : certutil -hashfile firmware.bin SHA256

Un fichier SHA256SUMS contient une ligne par fichier, avec le condensé, deux espaces et le nom du fichier. La commande `sha256sum -c` lit ce fichier et affiche `OK` ou `FAILED` pour chaque fichier. Avant d'utiliser un outil, vérifiez-le avec le vecteur de test de l'annexe B.

Un résumé à côté du fichier ne prouve pas grand-chose

Un attaquant capable de remplacer un fichier peut également remplacer son condensé. Un condensé publié protège contre les téléchargements corrompus. Il ne protège cependant pas contre les miroirs malveillants ou les serveurs web compromis. Pour garantir l'authenticité, utilisez l'une de ces méthodes.

  • Obtenez le récapitulatif via un canal distinct et fiable, par exemple le portail fournisseur via HTTPS ou un document d'achat signé.
  • Vérifiez un fichier de condensé signé avec une clé dont vous avez obtenu l'empreinte numérique indépendamment, par exemple avec gpg –verify SHA256SUMS.asc SHA256SUMS.
  • Laissez l'appareil ou l'installateur vérifier la signature du code, afin que personne n'ait à comparer des chaînes de caractères.

Chaînes de hachage pour les enregistrements par lots et les pistes d'audit

Une chaîne de hachage rend un journal inviolable. Chaque enregistrement stocke le hachage de l'enregistrement précédent, et son propre hachage couvre son contenu plus cette valeur.

[latex]\displaystyle H_n = \mathrm{SHA}\text{-}256(H_{n-1} \parallel r_n)[/latex]

Here [latex]r_n[/latex] is record number [latex]n[/latex].

Toute modification d'un enregistrement entraîne la non-correspondance de tous les hachages ultérieurs. L'intégrité et l'ordre d'une chaîne ne sont garantis que si son dernier hachage est ancré en dehors du système hébergeant le journal. Plusieurs options sont possibles : la signature périodique, l'horodatage de confiance conforme à la RFC 3161, ou l'envoi du hachage à un client ou un auditeur. Sans ancre, toute personne disposant d'un accès en écriture peut recalculer l'intégralité de la chaîne.

14. Sommes de contrôle chiffrées, signatures et authenticité

Tout est public jusqu'à présent. N'importe qui peut calculer un CRC ou un SHA-256 pour un message modifié. Pour empêcher toute modification intentionnelle, la vérification doit reposer sur un secret ou une clé privée.

Mécanisme Comment ça marche Preuve Gestion des clés Utilisation typique
HMAC (RFC 2104) Du haschisch combiné à un secret partagé Message inchangé et émis par un détenteur de la clé Un secret partagé des deux côtés Messages authentifiés entre systèmes et appareils
CMAC (NIST SP 800-38B) MAC construit sur un chiffrement par blocs, généralement AES Identique à HMAC Secret partagé, convient au matériel doté d'un moteur AES Dispositifs embarqués, éléments sécurisés
Étiquette AEAD (AES-GCM, ChaCha20-Poly1305) Chiffrement combiné à une étiquette d'authentification Confidentialité, intégrité et origine Clé partagée et un nonce unique par message Télémétrie et mises à jour cryptées
Signature numérique (ECDSA, Ed25519, RSA) La clé privée signe un hachage, la clé publique le vérifie. Intégrité et origine, vérifiables par toute personne possédant la clé publique Clé privée dans un module de sécurité matériel, clé publique dans les appareils Micrologiciels, certificats, documents réglementés

Les systèmes à secret partagé placent la clé dans chaque vérificateur. Une clé présente sur des dizaines de stations de test ou des milliers d'appareils est difficile à protéger et à renouveler. Les signatures résolvent ce problème. Les stations et les appareils ne détiennent que la clé publique, tandis que la clé privée reste stockée dans un module de sécurité matériel chez l'autorité de certification.

Ne créez pas de MAC en hachant un secret suivi du message avec SHA-256. SHA-2 est vulnérable aux attaques par extension de longueur sur cette construction. HMAC existe précisément pour éviter cela.

Démarrage sécurisé
Le démarrage sécurisé et le firmware signé renforcent l'intégrité et la sécurité du produit en ingénierie.

Cas d'utilisation dans les environnements de produit

    • Firmware signé et démarrage sécurisé. La ROM de démarrage vérifie la signature du chargeur de démarrage, et ce dernier vérifie l'application. Le CRC reste important pour l'intégrité en cours d'exécution de la mémoire flash et de la RAM, mais il ne remplace jamais la signature.
  • L'authenticité d'une pièce détachée est une question distincte. Un numéro de série avec un chiffre de contrôle valide ne prouve en rien son authenticité, puisqu'il est calculable par n'importe qui. L'authentification requiert un secret, par exemple une étiquette cryptographique dans un élément sécurisé ou un code qu'un serveur peut vérifier et que personne ne peut déduire du numéro de série.
  • Les étiquettes peuvent contenir des données anti-contrefaçon. GS1 définit un identifiant d'application, AI 8030, pour une signature numérique intégrée au support de données, associée à la clé.
  • Les documents réglementés nécessitent une attention particulière. Une signature cryptographique permet de sécuriser les documents électroniques, mais ne constitue pas une signature électronique au sens de la partie 11 du titre 21 du CFR. La réglementation exige également des contrôles d'identité, la signification de la signature et son lien avec le document.

Serrures, clés et dispositifs d'accès

Les serrures mécaniques et électroniques illustrent la différence entre la détection d'erreurs et l'authentification.

  • Serrures à goupilles : les dimensions de la clé doivent correspondre à la hauteur des goupilles, la serrure vérifiant ainsi une forme physique. Cette forme constitue un secret partagé, car quiconque la reproduit obtient l'accès.
  • Les cartes d'identité sans contact à bas coût : les trames de lecture contiennent un CRC pour se prémunir contre les erreurs radio, ce qui ne prouve en rien l'identité de l'utilisateur. Les anciennes cartes utilisant un chiffrement propriétaire vulnérable, comme MIFARE Classic, peuvent être clonées. Les cartes d'identité modernes utilisent un système de défi-réponse avec des chiffrements standard tels que l'AES.
  • Serrures intelligentes Bluetooth Low Energy : la couche de liaison protège chaque paquet avec AES-CCM, dont le code d’intégrité du message est un contrôle à clé.
  • Consommables et accessoires authentifiés : certaines cartouches d’imprimante, batteries et capteurs contiennent une puce qui répond à un défi cryptographique lancé par le périphérique hôte.

Deux conseils de pro

  • Planifiez la gestion des clés avant de choisir l'algorithme. Utilisez des clés distinctes par famille de produits, injectez-les sur un poste sécurisé, conservez-les dans un module de sécurité matériel et enregistrez l'injection pour chaque numéro de série.
  • Ajoutez un compteur ou un nonce à chaque message authentifié. Sans cela, un attaquant peut réutiliser un message valide enregistré.

15. Codes correcteurs d'erreurs

La détection signale les données erronées et la correction les répare. Cela engendre une redondance accrue, mais permet la poursuite du processus sans nouvelle analyse, retransmission ni retouche.

Code Principe Là où vous le rencontrez
Code de Hamming avec un bit de parité supplémentaire (SECDED) Corrige toute erreur sur un seul bit et détecte les erreurs sur deux bits Mémoire ECC dans les PC industriels et mémoire RAM et flash des microcontrôleurs
Reed-Solomon Correction basée sur les symboles qui gère bien les rafales Code QR, Data Matrix ECC 200, disques optiques, systèmes de stockage
BCH Correction binaire multibit contrôleurs de mémoire flash NAND
LDPC Décodage itératif proche de la limite théorique Contrôleurs SSD, normes sans fil

Marques qui résistent aux dommages

Un code QR offre quatre niveaux de correction (L, M, Q et H), qui restaurent respectivement environ 7 %, 15 %, 25 % et 30 % des mots de code. La norme Data Matrix ECC 200 utilise l'algorithme Reed-Solomon avec un taux de redondance fixe par taille de symbole. Les pièces marquées au laser, sales ou abîmées, ainsi que les étiquettes utilisées tout au long de la chaîne d'approvisionnement, en bénéficient directement.

La correction d'erreurs renforce la robustesse du marquage. Elle peut aussi masquer une dégradation. Un symbole Data Matrix endommagé peut être décodé parfaitement alors que sa capacité de correction résiduelle tend vers zéro. La vérification selon la norme ISO/IEC 15415 indique la correction d'erreurs inutilisée comme un paramètre noté. Pour contrôler la qualité d'impression et de marquage, il convient de se fier à la note du vérificateur et non au résultat de la lecture.

Mémoire ECC et mémoire flash dans les produits embarqués

Les microcontrôleurs destinés aux applications automobiles et industrielles protègent souvent la mémoire flash et la RAM par correction d'erreurs (ECC). Le matériel corrige les erreurs de bits individuelles et les comptabilise. Il faut ensuite lire et enregistrer les compteurs d'erreurs corrigées. Une augmentation de ce compteur indique une cellule défaillante, une alimentation limite ou des perturbations dues aux radiations. Un CRC calculé après correction utilise des données correctes ; le compteur est donc le seul signal précoce disponible.

Mémoire ECC
La mémoire ECC améliore la fiabilité des produits embarqués en détectant et en corrigeant les erreurs dans la mémoire flash et la RAM.

Dispositifs et supports qui reposent sur la correction d'erreurs

  • Les pièces marquées au laser et microbillées portent des symboles Data Matrix ECC 200, qui utilisent des codes Reed-Solomon, de sorte qu'une marque éraflée peut encore être décodée.
  • Serveurs, contrôleurs et microcontrôleurs automobiles : la mémoire ECC corrige généralement les erreurs sur un seul bit et détecte les erreurs sur deux bits.
  • SSD, eMMC et cartes SD : le contrôleur applique des codes BCH ou LDPC aux pages flash, et ses compteurs de bits corrigés peuvent servir d’indicateur d’usure.

Tips

  • Choisissez le niveau de correction d'erreur en fonction de la méthode de marquage et de l'environnement. Testez ce choix en provoquant des dommages intentionnels tels que des éraflures et un masquage partiel, puis évaluez le résultat.
  • Consignez le nombre d'erreurs corrigées de la mémoire ECC, de la mémoire flash et du décodage des symboles. Une augmentation soudaine de ce nombre constitue un signal d'alarme, car une unité encore fonctionnelle peut ne plus avoir de capacité de correction.

16. Comparaison des algorithmes

Le tableau récapitule les familles et leur place dans cet article. Les performances dépendent de la plateforme ; effectuez donc vos propres mesures sur votre matériel cible.

Algorithme Taille de sortie Détecte Vitesse relative Sécurité contre les changements délibérés Utilisation typique ici
Bit de parité 1 bit Nombre impair de lancers le plus rapide Aucun Liens de série hérités
Somme de 8 bits ou XOR 8 bits Erreurs simples, faiblesses en matière d'erreurs structurées Très rapide Aucun Phrases NMEA, enregistrements Intel HEX
Chiffre de contrôle GS1 mod 10 1 chiffre Toutes les erreurs à un chiffre, la plupart des transpositions Instantané Aucun GTIN, SSCC, GLN
Verhoeff, Damm 1 chiffre Toutes les erreurs à un seul chiffre et les transpositions adjacentes Instantané Aucun Identifiants internes
Famille ISO/IEC 7064 1 ou 2 caractères Cela dépend du système Instantané Aucun IBAN, identifiants internes
CRC-16 16 bits Débit en rafales jusqu'à 16 bits, distance de Hamming définie par un polynôme et la longueur Très rapide, prise en charge matérielle courante Aucun Modbus RTU, trames courtes
CRC-32, CRC-32C 32 bits Débits jusqu'à 32 bits, distance de Hamming définie par un polynôme et la longueur Instructions matérielles très rapides Aucun Ethernet, images de firmware, stockage
xxHash64, xxHash128 64 ou 128 bits Différences accidentelles Proche de la vitesse de la mémoire Aucun Déduplication, détection des changements
SHA-256 256 bits Tout changement, à des fins pratiques Prise en charge matérielle rapide sur de nombreux processeurs Environ 128 bits de résistance aux collisions Hachages de version, condensés de firmware, journaux d'audit
SHA-3-256, BLAKE2, BLAKE3 256 bits ou plus Tout changement, à des fins pratiques Rapide Même classe que SHA-256 Alternatives au SHA-256
HMAC-SHA-256, CMAC 128 à 256 bits Changement et origine Rapide Cela dépend du secret des clés Messages authentifiés
Signature ECDSA, Ed25519 64 octets typiques Changement et origine Signature plus lente, vérification rapide Solide tant que la clé privée reste protégée Micrologiciel, enregistrements, certificats
Reed-Solomon Redondance d'environ 10 à 30 % des données Détecte et corrige Modéré Aucun Code QR, Data Matrix, stockage

17. Conception et ingénierie

Les sommes de contrôle sont intégrées au produit avant même la fabrication de la première partie. Elles font partie intégrante du processus de validation et du modèle de données.

CAO, dessins et nomenclatures en cours de publication

Un système PLM ou PDM identifie une version par sa révision. La lettre de révision indique la version initialement prévue. Le hachage du package publié indique les octets diffusés. Ces deux informations sont stockées dans l'enregistrement de la version. Tout utilisateur peut ainsi vérifier le contenu reçu, ce qui comble une lacune liée aux lettres de révision : la possibilité qu'un fichier ait été remplacé ou modifié après sa publication.

  • Calculer un condensé SHA-256 pour chaque fichier publié, par exemple le modèle STEP, le PDF du dessin et l'exportation de la nomenclature.
  • Calculez un condensé supplémentaire sur un manifeste qui répertorie tous les fichiers et leurs condensés, afin qu'une seule valeur représente l'ensemble du paquet.
  • Intégrez le résumé du manifeste dans l'enregistrement ECO ou ECN et dans le bordereau de transmission envoyé aux fournisseurs.
  • Laissez le portail fournisseur ou le système de production recalculer et comparer à réception.
  • Comparez les exportations de nomenclature (BOM) par hachage entre les configurations de conception et de fabrication. Une différence est signalée et fait l'objet d'une analyse humaine pour l'expliquer.

Vérification des erreurs dans les références des pièces et les connecteurs

La conception détermine la facilité avec laquelle une erreur peut être commise ultérieurement. Un chiffre de contrôle sur les références des pièces permet de détecter les erreurs de saisie à chaque étape. Des formats de numérotation distincts pour les pièces achetées, les dessins et les assemblages empêchent toute confusion entre les différentes catégories. Les connecteurs à détrompage et les étiquettes asymétriques fonctionnent selon le même principe au niveau physique.

micrologiciel embarqué et données d'étalonnage

Une image de firmware doit être autodescriptive et autovérifiable. Une structure courante place un en-tête fixe à une adresse connue.

Champ d'en-tête But
nombre magique Identifie le type d'image et détecte le chargement d'un fichier incorrect.
Version du format Permet au chargeur de démarrage d'analyser les futures structures d'en-tête.
Identifiant du produit et du matériel Empêche l'exécution d'une image valide pour un autre produit
Version du logiciel Prend en charge la traçabilité et la protection contre la restauration
Longueur de l'image Définit la région couverte par les contrôles
CRC-32 de l'image Détecte les corruptions accidentelles à chaque démarrage ou à la demande
Digest SHA-256 ou signature Prouve l'intégrité et l'origine avant la première exécution
Octet de remplissage défini Permet de conserver des zones flash inutilisées de manière déterministe, garantissant ainsi la reproductibilité des compilations.

Appliquez la même rigueur aux blocs d'étalonnage et de configuration dans l'EEPROM ou la mémoire flash. Stockez un CRC avec chaque bloc. Définissez le comportement en cas d'échec du contrôle : utilisation des valeurs par défaut, génération d'une erreur et interdiction d'utiliser les données sans les enregistrer. Conservez des blocs de copie et d'écriture redondants, assurant la continuité de service en cas de coupure de courant.

Contexte de sécurité fonctionnelle

Les normes de sécurité fonctionnelle considèrent la corruption de mémoire et les erreurs de communication comme des modes de défaillance nécessitant des mesures de diagnostic. Les normes ISO 26262 (véhicules routiers), IEC 61508 (systèmes industriels) et IEC 62304 (logiciels pour dispositifs médicaux) exigent toutes de démontrer comment ces défauts sont détectés. Les mesures typiques comprennent les CRC (certificats de contrôle de réception) sur la mémoire de code et de données, la protection des communications par des compteurs de séquence et la redondance du stockage.

L'analyse doit indiquer la couverture diagnostique, c'est-à-dire la proportion de défaillances détectées par la mesure. Un CRC 32 bits n'offre pas automatiquement une couverture de 99 % pour l'ensemble du système. La couverture dépend des éléments couverts par le CRC, de sa fréquence d'exécution et du comportement du système en cas de défaillance.

Protection mécanique contre les erreurs intégrée au matériel

Le concept de chèque était utilisé dans les produits physiques bien avant l'invention de l'informatique. Dans ces conceptions, la forme de la pièce constituait la valeur du chèque.

Connecteurs codés : Les connecteurs M12 sont codés A, B, D et X, ce qui empêche le branchement d'un câble de capteur à un port Ethernet. Les boîtiers D-sub utilisent une forme trapézoïdale pour la même raison. Raccords pour gaz médicaux : Le système de sécurité d'indexation des broches positionne les broches sur l'étrier à des endroits différents pour chaque gaz, empêchant ainsi l'insertion d'une bouteille de gaz incompatible. Connecteurs médicaux de petit diamètre : La série ISO 80369 définit des connecteurs aux géométries distinctes pour différentes applications, telles que l'alimentation entérale et neuraxiale, afin de prévenir les erreurs de connexion. Pistolets de distribution de carburant : Sur de nombreux marchés, un pistolet de distribution de diesel est trop gros pour un goulot de remplissage d'essence. Goupilles et fixations de positionnement : Des goupilles de diamètres différents, disposées de manière asymétrique, imposent à une pièce une orientation unique. Calibres de contrôle : Un calibre de contrôle vérifie si un alésage est conforme aux tolérances et le rejette dans le cas contraire. Il s'agit d'un test physique de conformité, comparable à la comparaison d'une somme de contrôle.

Conseils de pro sur les sommes de contrôle en ingénierie

  • Prévenir d'abord, détecter ensuite. Utilisez la géométrie, les connecteurs à détrompage et les caractéristiques asymétriques comme mesures de prévention dans l'AMDEC de conception, et ajoutez le contrôle d'identité électronique comme deuxième couche.
  • Chaque image de firmware et d'étalonnage doit comporter un en-tête avec la version, la longueur et le CRC, et spécifier le comportement en cas d'échec de la vérification au démarrage. L'état de sécurité est un choix de conception et non un comportement par défaut.

18. Industrialisation et fabrication, y compris la vérification du flashage du firmware

L'industrialisation transforme les données de conception en processus opérationnels. La plupart des erreurs de données qui atteignent la production surviennent à ce stade : recettes erronées, modèles d'étiquettes incorrects, limites de test inadaptées.

Marquage et correction des erreurs des stations de numérisation

  • Vérifier le marquage au point d'application et à nouveau à l'endroit où le marquage est requis pour la première fois. Les normes ISO/IEC 15415, 15416 et 29158 définissent le classement.
  • Transformez le poste de lecture en portillon. L'automate programmable ne lance l'opération suivante que lorsque les tests de décodage, de chiffre de contrôle, de format et de valeur attendue sont tous réussis.
  • Ajoutez des chiffres de contrôle aux numéros de série générés par la ligne, afin de protéger également la saisie manuelle aux postes de retouche.
  • Consignez chaque analyse ayant échoué, en indiquant la station, l'heure et, si possible, l'image du symbole. Ces informations alimentent la méthodologie DMAIC présentée au chapitre 20.

Recettes et paramètres

Les programmes de réglage des machines, les programmes de couple, les calendriers de soudage et les limites de test sont stockés sous forme de fichiers ou de lignes de base de données. Un paramétrage erroné ou obsolète peut engendrer un dysfonctionnement silencieux, car la machine fonctionne correctement malgré des instructions incorrectes.

Conservez une référence de hachage dans le MES ou le PLM. À chaque téléchargement de recette et au début de chaque lot, le logiciel de la station recalcule le hachage de la recette active et le compare. Une différence bloque la production du lot. Pour les paramètres transmis par bus à un contrôleur, ajoutez un CRC dans le bloc de données afin que le contrôleur récepteur ne traite pas de valeurs corrompues.

Comment vérifier le flashage du firmware en fin de ligne

Le soudage par étirage est une étape de processus au même titre que le soudage ou le serrage. Il nécessite une méthode définie, des critères d'acceptation et un enregistrement pour chaque numéro de série. Un programmeur qui signale une réussite indique seulement que ses commandes ont été exécutées.

  1. Programmez l'image avec l'option de vérification du programmateur activée, si l'appareil et l'outil le permettent.
  2. Relisez les régions programmées et calculez un hachage SHA-256 ou CRC-32 sur les régions définies dans le plan de contrôle. Comparez le résultat avec le hachage de référence du journal de publication.
  3. Traitez les données spécifiques à chaque unité dans une étape distincte. Le numéro de série, l'adresse MAC et les valeurs d'étalonnage diffèrent selon l'unité. Excluez-les du condensé de l'image complète et vérifiez-les par rapport à leurs propres enregistrements, ou calculez le condensé attendu en intégrant les données de l'unité.
  4. Vérifiez les octets d'option, les fusibles et les bits de verrouillage. Une application correcte, mais avec une configuration de démarrage incorrecte ou sans protection en lecture, est une unité défectueuse.
  5. Interrogez le périphérique en cours d'exécution pour obtenir sa version logicielle et le condensé de son image via le protocole applicatif. De nombreux produits calculent le CRC de leur mémoire flash à l'aide d'un périphérique matériel et le communiquent. Cela permet également de tester la communication.
  6. Consignez le résultat dans le système MES en fonction du numéro de série de l'unité, ainsi que le condensé d'image et la version de l'outil. L'unité ne doit pas être autorisée à poursuivre sa production sans enregistrement de réussite.
  7. On soumet la station à intervalles réguliers à un échantillon défectueux connu, par exemple une image comportant un bit inversé. Cela prouve que la station continue de rejeter l'échantillon.
Méthode Force coût du temps Limites
Vérification du programmeur Compare le flash avec l'image source qui vient d'être écrite. Faible Ne couvre pas les octets d'option, dépend de l'implémentation de l'outil
Relecture et hachage sur la station Vérification indépendante du contenu réel Moyenne à élevée pour les grandes images, car la lecture est souvent plus lente que la programmation. L'accès en lecture doit être autorisé, ce que la protection contre la lecture peut interdire.
CRC calculé par le périphérique et transmis via le bus Rapide et teste le chemin d'accès à l'application Faible Protège uniquement contre les erreurs accidentelles et repose sur le micrologiciel qui effectue les calculs.
Vérification de la signature par le chargeur de démarrage au premier démarrage Prouve l'intégrité et l'origine Faible Accepte une image incorrecte mais signée validement ; il faut donc la combiner avec une vérification de version.

Respectez l'ordre des étapes : une fois la protection en lecture activée, toute relecture ultérieure est impossible. Vérifiez d'abord, puis verrouillez, et enfin vérifiez que le bit de verrouillage est activé.

Enregistrements de la station d'essai et de l'outillage

Les résultats des tests de couple, d'inspection visuelle, d'étanchéité et électriques constituent des preuves commerciales et parfois légales. Les enregistrements stockés sous forme de fichiers ou de lignes simples peuvent être altérés ou perdus sans laisser de trace.

  • Calculer un hachage d'enregistrement à partir du numéro de série, de la station, de l'heure, du résultat et des valeurs mesurées.
  • Écrivez les enregistrements dans un magasin en mode ajout uniquement, ou enchaînez-les comme décrit au chapitre 13, avec un ancrage périodique.
  • Synchronisez les horloges des stations avec une source de temps fiable, afin que les horodatages aient une signification.

Communication machine à machine

OPC UA propose la signature et le chiffrement des messages via ses modes de sécurité Sign et SignAndEncrypt. Utilisez-les entre les stations, les automates programmables et le MES. La sécurité du transport protège les données en transit. Elle ne remplace pas les contrôles au niveau applicatif des paramètres critiques, qui doivent être préservés lors du stockage, de la conversion et de l'exportation.

Dispositifs de station qui sécurisent le processus

Certaines mesures physiques fonctionnent comme une somme de contrôle. Le poids d'un kit, par exemple, est une propriété redondante qui doit correspondre à la valeur attendue.

Appareil Ce que cela vérifie Arrêt brutal typique
Scanner à montage fixe ou lecteur de vision Contenu de l'étiquette ou de la marque décodé par rapport à l'ordre de travail Interverrouillage PLC qui maintient le convoyeur
Contrôleur de couple et d'angle avec identification de la fixation Le bon programme pour le bon joint, et le couple et l'angle à l'intérieur de la fenêtre Outil désactivé jusqu'à ce que le programme approprié soit actif
trieuse pondérale Masse de l'assemblage ou du kit par rapport à la masse attendue Rejeter la porte en cas de pièce manquante ou supplémentaire
Capteurs de présence de pièces et dispositifs de fixation à clé Présence, type et orientation de la pièce Démarrage du cycle non libéré
Dispositif de programmation avec lecture en retour Résumé de la région programmée lue à partir de l'appareil lui-même L'unité a été déclarée défectueuse et envoyée en réparation.
Go et no-go ou manomètre à air Dimension à l'intérieur de la tolérance Partie séparée automatiquement ou par l'opérateur
Vérification d'image
Mettre en œuvre une vérification sécurisée des images pour les mises à jour de produits.

Conseils de pro

  • Autoriser la station à charger une image uniquement par révision depuis le serveur de déploiement et vérifier son hachage ou sa signature avant le flashage. Refuser toute image non conforme à l'ordre de travail.
  • Chaque contournement d'une butée matérielle doit être protégé par un interrupteur à clé ou une connexion autorisée, et suivre l'évolution du nombre de contournements par ligne et par changement de vitesse. Une augmentation de ce nombre indique une faiblesse du contrôle avant même qu'une sortie de secours ne se manifeste.

19. Gestion de la qualité et conformité

Les systèmes qualité exigent des résultats que les sommes de contrôle contribuent à atteindre : identification, traçabilité, documents contrôlés et enregistrements fiables. Les normes mentionnent rarement les sommes de contrôle ; elles désignent plutôt les résultats, et une vérification est un moyen de prouver l’obtention d’un résultat.

Cadre Exigence pertinente Comment une somme de contrôle le prend en charge
ISO 9001:2015 Article 8.5.2 relatif à l'identification et à la traçabilité, et au contrôle des informations documentées Chiffres de contrôle des identifiants, hachages des documents contrôlés
IATF 16949 Traçabilité, prévention des erreurs, plans de contrôle, PPAP Poka-yoke avec chiffres de contrôle et vérification, hachages dans les paquets de données PPAP
AS9100 Gestion de la configuration, identification des produits, prévention des pièces contrefaites Hachages de publication pour les configurations de référence, authentification des composants
ISO 13485:2016 Traçabilité (article 7.5.9), UDI, validation logicielle Chiffres de contrôle UDI, vérification validée des étiquettes et du micrologiciel
21 CFR Partie 11 et Annexe 11 de l'UE Documents électroniques, pistes d'audit, signatures électroniques Chaîne de hachage de la piste d'audit, signature des enregistrements
SPORT 5 Validation des systèmes informatisés fondée sur les risques Validation de la fonction de vérification elle-même

Intégrité des données et ALCOA+

Les organismes de réglementation décrivent l'intégrité des données à l'aide des principes ALCOA : attributabilité, lisibilité, contemporanéité, originalité et exactitude. Le principe ALCOA+ étend ces principes en ajoutant l'exhaustivité, la cohérence, la pérennité et la disponibilité. Une somme de contrôle correspond à certains de ces principes. Elle atteste qu'un enregistrement est exact et inchangé depuis sa création. Une chaîne de hachage indique que les enregistrements sont complets et ordonnés.

Une somme de contrôle n'indique ni qui a créé un enregistrement, ni quand. Elle complète la piste d'audit et le contrôle d'accès, sans les remplacer.

Traçabilité et préparation aux rappels

La traçabilité repose sur des identifiants qui restent valides de la réception des composants à leur expédition. Les chiffres de contrôle garantissent l'exactitude des identifiants lors de leur passage dans les scanners et les claviers. La généalogie établit des liens entre les numéros de lot, de série et de série à différents niveaux, en amont et en aval.

Évaluez la préparation au rappel simulé. L'indicateur est le temps écoulé entre un déclencheur, par exemple un numéro de lot fournisseur, et l'obtention de la liste complète des unités finies concernées et de leurs emplacements. Les contrôles non effectués et les identifiants dupliqués sont des raisons typiques pour lesquelles un rappel simulé peut prendre plusieurs jours au lieu de quelques heures.

Étalonnage
Mettre en œuvre des processus de vérification robustes pour les données d'étalonnage et les données fournisseurs dans la conception et l'ingénierie des produits.

Données relatives à l'étalonnage, aux équipements de test et aux fournisseurs

  • Associez les certificats d'étalonnage à des identifiants d'équipement comportant un chiffre de contrôle et conservez un hachage de chaque fichier de certificat.
  • Pour les certificats fournisseurs tels que les certificats de conformité (CoC), les certificats d'analyse (CoA) et les rapports d'essais de matériaux, demandez des fichiers signés ou des données structurées. Comparez automatiquement le numéro de lot et la référence avec le bon de commande et le bon de réception.
  • Pour les fichiers CAO, les micrologiciels et les programmes de test des fournisseurs, vérifiez le condensé par rapport au bordereau de transmission avant toute utilisation du fichier.

Bonus : valider le chèque lui-même

Dans les environnements réglementés, la fonction de contrôle fait partie d'un système informatisé et doit être validée selon les principes GAMP 5. Planifiez la qualification d'installation, opérationnelle et de performance (QI, QO et QP) en fonction du risque.

Le protocole de qualification opérationnelle (OQ) doit inclure des tests négatifs. Fournissez au contrôleur des données erronées et prouvez qu'il les rejette. Conservez les vecteurs de test dans le fichier de validation et relancez-les après toute modification du logiciel, du micrologiciel du lecteur ou des modèles d'étiquettes.

Conseil: dansIntégrez la vérification au processus. Incluez des tests négatifs, stockez les vecteurs de test dans le fichier de validation et relancez-les après toute modification du micrologiciel du scanner, de l'imprimante, de la bibliothèque ou du système d'exploitation.

20. La perspective Lean Six Sigma

Poka-yoke
L'intégration du poka-yoke et du jidoka améliore la conception des produits en garantissant la qualité intégrée et la prévention des erreurs dans les processus d'ingénierie.

Poka-yoke et jidoka

De nombreux points communs avec les sommes de contrôle : Shigeo Shingo a formalisé le poka-yoke, ou détrompage, lorsqu’il travaillait chez Toyota. Il a distingué les fonctions de contrôle, qui rendent l’erreur impossible ou arrêtent le processus, des fonctions d’avertissement, qui se contentent de la signaler. Le jidoka, ou qualité intégrée, ajoute l’arrêt : la machine s’immobilise lorsqu’elle détecte une anomalie.

Un chiffre de contrôle avec un arrêt brutal à une station de lecture est une fonction de contrôle. Un échec de lecture qui laisse passer l'appareil malgré tout n'est qu'un avertissement. Vérifiez vos stations afin de déceler précisément cette différence.

AMDEC

Évaluez honnêtement la détection de chaque contrôle. Un contrôle avec arrêt brutal, testé avec des échantillons défectueux connus et couvrant la cause de la défaillance, obtient une meilleure évaluation que le même contrôle que les opérateurs peuvent contourner. Consignez les éléments de preuve dans l'AMDEC processus.

La méthode de priorisation des actions de l'AIAG-VDA vous incite également à privilégier la prévention. Prévenir signifie ici concevoir le processus de manière à éviter toute erreur de saisie de données, par exemple en générant les identifiants et les étiquettes à partir d'une source unique plutôt qu'en les saisissant manuellement.

DMAIC appliqué aux erreurs de données

Phase Activité Exemple avec des produits mal étiquetés
Définir Problème, portée, caractéristique critique pour la qualité Des étiquettes erronées ont été livrées au client A au cours des 12 derniers mois. Le critère de qualité essentiel (CTQ) est que le contenu de l'étiquette corresponde au produit dans 100 % des unités.
Mesure Système de référence et de mesure Comptez les défauts par million d'étiquettes et effectuez une analyse de concordance des attributs du vérificateur par rapport à une référence.
Analyser Causes profondes Diagramme de Pareto des causes : version du modèle, modifications des rôles, saisie manuelle, réimpressions
Améliorer Contrôles Vérification du hachage du modèle, analyse comparative, service de numérotation centralisé, chiffres de contrôle partout où la saisie est conservée
Contrôle Maintenir les gains Carte de contrôle du taux d'échec de numérisation, plan de contrôle, audits, plan de réaction

The defects per million opportunities follow from the number of defects [latex]D[/latex], the units [latex]N[/latex] and the opportunities per unit [latex]O[/latex]. The sigma level adds the conventional 1.5 sigma shift to the normal quantile.

[latex]\displaystyle \mathrm{DPMO} = \frac{D}{N \times O} \times 10^{6}[/latex]

[latex]\displaystyle \sigma_{\mathrm{level}} = \Phi^{-1}\left(1 – \frac{\mathrm{DPMO}}{10^{6}}\right) + 1.5[/latex]

A worked example with illustrative numbers shows the arithmetic. 36 wrong-label defects in 480,000 labels, counting one opportunity per label, give [latex]\mathrm{DPMO} = 36 / 480000 \times 10^{6} = 75[/latex]. With the conventional 1.5 sigma shift, that is a sigma level of about 5.3. After the improvements, 6 defects in the next 480,000 labels give 12.5 per million and about 5.7 sigma. The figures illustrate the calculation. They are not a benchmark.

Analyse des systèmes de mesure et contrôle statistique des procédés (CSP)

Considérez les scanners et les vérificateurs comme des systèmes de mesure. Les vérificateurs doivent être étalonnés selon une norme de conformité. Pour les données de réussite/échec, effectuez une analyse de concordance des attributs entre les opérateurs, les scanners et une référence, afin de quantifier la concordance et les biais.

Ensuite, effectuez un suivi à l'aide de cartes de contrôle. Une carte p convient pour la proportion de scans échoués par lot. Une carte u convient pour les défauts par unité. Une augmentation du taux d'échec de première lecture signale souvent l'usure de la tête d'impression, du ruban ou un changement de support, bien avant que les notes de vérification ne descendent en dessous du seuil.

Déchets et retour sur investissement

Data errors create classic wastes: defects, rework, waiting for corrected data, motion to find the right item, and excess inventory held as a buffer against bad data. A simple model sums, over all stages [latex]s[/latex], the number of errors [latex]n_s[/latex] times the cost per error [latex]c_s[/latex].

[latex]\displaystyle C_{\mathrm{total}} = \sum_{s} n_s c_s[/latex]

Comparez ce chiffre au coût de mise en œuvre, qui comprend principalement la configuration logicielle, le matériel de numérisation et de vérification, et la formation.

Calculez le coût par erreur à partir de votre propre comptabilité analytique. Ce coût varie considérablement entre une erreur détectée chez l'imprimeur et une erreur détectée chez le client.

Exemple de plan de contrôle

Caractéristiques Méthode Fréquence Acceptation Plan de réaction
Identité du modèle d'étiquette Comparaison du haschisch avec l'historique de publication Chaque emploi commence Correspondre Bloquez le travail, prévenez le service d'ingénierie
qualité d'impression des symboles vérificateur en ligne 100 %, ou un échantillon par lot si le risque le permet Note égale ou supérieure à la note minimale spécifiée Rejetez l'étiquette, vérifiez la tête d'impression et le ruban
Contenu de l'étiquette par rapport à l'enregistrement de l'unité Analyser et comparer 100 pour cent Correspondance exacte Isoler l'unité, examiner le rôle et les données
Résumé des firmwares Hachage de lecture 100 % en fin de ligne Correspondance avec Golden Digest Reprogrammez une fois, puis mettez au rebut et trouvez la cause racine
Santé de la fonction de contrôle Défi connu pour être mauvais Chaque quart de travail Le rejet est enregistré Arrêtez la ligne, recalibrez ou réparez.
Traçabilité Rappel fictif du lot aux unités Plan d'audit annuel ou par an Délai respecté Combler les lacunes dans les données généalogiques

Trois familles d'appareils poka-yoke

Shingo a regroupé les méthodes de prévention des erreurs en trois familles. Chacune a un équivalent parmi les vérifications présentées dans ce guide :

Méthode de contact
Détecte la forme, la taille ou la couleur par le toucher ou par un capteur, par exemple un interrupteur de fin de course ou un dispositif à clé. Le traitement des données s'effectue par un test de format ou de chiffre de contrôle.
Méthode à valeur fixe
Signale une erreur lorsqu'un nombre défini de pièces ou de mouvements n'est pas atteint, par exemple pour un plateau à positions comptées. Les données correspondantes sont un champ de longueur ou un nombre de segments.
Méthode par étapes
Vérifie que les étapes se déroulent dans le bon ordre, par exemple grâce à un système de verrouillage qui bloque une étape jusqu'à ce que la précédente soit terminée. Les données correspondantes sont un numéro de séquence ou un flux de travail de type « numérisation-libération ».

Tips

  • Intégrez les données de rejet des postes de contrôle dans le SPC, par exemple un graphique de rejet par ligne, avec des sous-groupes par équipe, imprimante ou dispositif de fixation. Un taux de rejet stable peut masquer une boucle de retouche gourmande en ressources.
  • Considérez un rejet lors du contrôle comme un défaut de l'étape précédente du processus et non comme une réussite du contrôle. Identifiez la cause et clôturez le processus à la source.

21. Logistique : comment réduire les erreurs de préparation de commandes en entrepôt

Les erreurs de préparation de commandes figurent parmi les défaillances les plus coûteuses liées aux données en logistique. Chacune d'elles déclenche une série de retours, de réexpéditions et de réclamations.

Identification GS1

Le GTIN identifie un produit à un niveau d'emballage donné. Le SSCC identifie une unité logistique, comme une palette, et comporte 18 chiffres. Le GLN identifie un lieu ou une partie. Le GRAI identifie les articles réutilisables. Tous ces codes comportent un chiffre de contrôle, et la norme d'étiquetage logistique GS1 définit leur présentation sur les unités.

Détection d'erreurs basée sur la numérisation

  1. Commencez par scanner l'étiquette de l'emplacement. La vérification du chiffre et la validation du format permettent de détecter immédiatement un code d'emplacement erroné, et le WMS confirme qu'il s'agit bien de l'emplacement attendu.
  2. Scannez le GTIN de l'article ou du carton. Le système le compare à la tâche de prélèvement et rejette tout article incorrect avant la saisie de la quantité.
  3. Confirmer la quantité par comptage des scans, ou par contrôle du poids lorsque le scan de chaque pièce est impossible.
  4. Scannez le conteneur de destination ou le SSCC lors de la fermeture de l'unité et liez-y le contenu.
  5. Lors du chargement, vérifiez que les SSCC correspondent bien au manifeste d'expédition.
Cause de l'erreur de sélection Remède typique
Objets d'apparence similaire dans des emplacements adjacents Scannez pour confirmer le GTIN, règles d'emplacement
Saisie manuelle des codes d'emplacement ou d'article Supprimez le clavier du processus et utilisez des chiffres de contrôle lorsque la saisie est inévitable.
Confusion des unités de mesure (chaque, emballage intérieur, caisse) GTIN distincts par niveau d'emballage, utilisant le chiffre indicateur GTIN-14
Étiquettes endommagées ou illisibles Vérification lors de l'étiquetage, codes 2D avec correction d'erreurs, station de réétiquetage
Erreurs de données de base Validez les chiffres de contrôle du GTIN à l'importation et comparez-les aux données sources du fournisseur.
SSCC en double allocation centrale et contrainte d'unicité

Quantify accuracy as defects per million lines picked. A line accuracy of 99.9 percent sounds high, yet it equals [latex](1 – 0.999) \times 10^{6} = 1000[/latex] errors per million lines, far from six sigma. State targets in DPMO, so that they connect to your Lean Six Sigma metrics.

Intégrité des messages EDI, ASN et EPCIS

Les messages commerciaux comportent leurs propres champs d'intégrité. Les normes EDI incluent des numéros de contrôle et des compteurs de segments, par exemple dans les segments de fermeture d'un message EDIFACT ou d'un ensemble de transactions X12. Le destinataire les utilise pour détecter les données tronquées ou manquantes. Les événements EPCIS contiennent les identifiants des unités concernées, et la valeur de l'événement dépend des chiffres de contrôle et de l'unicité de ces identifiants.

À réception des messages, validez-les dans l'ordre suivant : contrôle du nombre d'exemplaires, vérification des identifiants (chiffres de contrôle et formats), puis application des règles métier (par exemple, la correspondance entre l'ASN et le bon de commande). Rejetez ou mettez en quarantaine les messages non conformes et suivez le taux de rejet par partenaire commercial.

Sérialisation dans les chaînes réglementées

Les chaînes de distribution pharmaceutique et de dispositifs médicaux ajoutent des règles de sérialisation. Aux États-Unis, la loi sur la sécurité de la chaîne d'approvisionnement des médicaments (Drug Supply Chain Security Act) exige un identifiant de produit comprenant le code NDC, le numéro de série, le numéro de lot et la date de péremption, le tout présenté dans une matrice de données 2D, sur chaque emballage. Les exigences renforcées en matière de sécurité de la distribution sont entrées en vigueur progressivement. Initialement prévues pour le 27 novembre 2023, une période de stabilisation s'est achevée le 27 novembre 2024, et la FDA a accordé des exemptions aux petits distributeurs jusqu'au 27 novembre 2026.Avis d'exemption de la FDA).

Des résumés de cabinets d'avocats indiquent que la FDA a prolongé certaines exemptions pour les petits dispensateurs jusqu'au 27 novembre 2027 en août 2026 (Résumé de BuchananConsultez le site web de la FDA pour connaître l'état actuel de la situation.

Au sein de l'UE, la directive relative aux médicaments falsifiés impose l'apposition d'un identifiant unique et d'un dispositif anti-falsification sur les emballages. L'identifiant unique de dispositif (UDI) des dispositifs médicaux suit la même logique. Des organismes émetteurs tels que GS1 définissent la structure de l'identifiant, et le chiffre de contrôle assure sa validation.

Chaîne du froid et données IoT

Les enregistreurs de température et les capteurs IoT permettent de vérifier qu'un envoi a respecté les limites autorisées. Choisissez des appareils qui enregistrent les données avec un CRC ou une signature, et privilégiez les téléchargements signés. Sécurisez le transport par un chiffrement authentifié. Sans ces précautions, un fichier journal n'est qu'une simple feuille de calcul modifiable.

Lutte contre la contrefaçon et suivi et traçabilité

Un numéro de série comportant un chiffre de contrôle valide est facile à falsifier. Le système de suivi et de traçabilité enregistre côté serveur les numéros de série émis et les lieux où ils ont été consultés. La présence d'un numéro de série identique à deux endroits différents, ou d'un numéro de série jamais émis, constitue un signal d'alarme. Pour les biens de grande valeur, il est recommandé d'ajouter une signature ou un élément de sécurité, comme décrit au chapitre 14.

Blockchain et registres distribués

Les registres distribués permettent d'ancrer les empreintes numériques des événements de la chaîne d'approvisionnement, empêchant ainsi toute modification non autorisée de l'historique. Ils ne vérifient ni la réalité de l'événement, ni l'authenticité de l'article scanné. Les données erronées restent erronées, désormais horodatées de façon permanente.

Une chaîne de hachage signée avec ancrage externe fournit la preuve d'inviolabilité dont la plupart des systèmes ont besoin, sans les coûts opérationnels supplémentaires. Envisagez un registre partagé uniquement lorsque plusieurs parties qui ne se font pas confiance ont besoin d'un enregistrement commun.

 

Exemples d'équipements et d'outils d'entrepôt

  • Casques de préparation de commandes vocale : le système demande au préparateur de commandes d’énoncer les chiffres de contrôle affichés à l’emplacement de prélèvement. Tout emplacement incorrect est rejeté avant même le prélèvement de l’article.
  • Modules de préparation et de mise en rayon lumineux : un voyant lumineux et un indicateur de quantité signalent l’emplacement du produit, et l’opérateur confirme par un bouton. Ajoutez un système de scan des articles lorsque les erreurs de préparation sont coûteuses.
  • Scanners portables et annulaires : scan pour confirmer l’emplacement, l’article et le SSCC de l’étiquette de la palette.
  • Stations de pesage et de dimensionnement : le poids mesuré est comparé aux données de référence, ce qui permet de signaler un article incorrect ou un carton endommagé.
  • Portails RFID aux portes de quai : les étiquettes lues à l’intérieur d’une palette sont comparées à l’avis d’expédition préalable.

22. Service après-vente, marché de l'après-vente et fin de vie

Mises à jour par voie hertzienne
Des processus de mise à jour robustes dans la conception des produits garantissent la sécurité et la fiabilité grâce à des défenses multicouches contre les défaillances potentielles.

Mises à jour par voie hertzienne et sur le terrain

Une mise à jour peut échouer de trois manières : le transfert est corrompu, l’image est incompatible avec l’appareil ou elle est malveillante. Il est donc essentiel de mettre en place des mesures de sécurité adaptées à ces situations.

  • Un CRC par segment ou par bloc permet de détecter rapidement les erreurs de transfert.
  • Un hachage de l'image complète, vérifié avant l'installation, confirme son intégrité.
  • Une vérification de signature par rapport à une clé publique stockée dans l'appareil confirme l'origine.
  • La correspondance entre l'identifiant du produit et celui du matériel empêche l'installation d'une image destinée à un autre appareil.
  • Un contrôle de version avec protection contre la restauration empêche les rétrogradations vers des versions vulnérables.
  • Les doubles partitions avec confirmation au démarrage permettent de conserver l'ancienne image exécutable si la nouvelle échoue.

Pièces détachées, garantie et retours

  • Les références des pièces détachées comportent un chiffre de contrôle, et les formulaires web d'enregistrement de garantie le valident, ce qui permet de détecter les erreurs de saisie à la source.
  • Les numéros de série permettent de relier une panne sur le terrain à la généalogie de la production, y compris le résumé du firmware enregistré en fin de chaîne.
  • La logistique inverse nécessite les mêmes identifiants et les mêmes contrôles que la logistique directe.

Passeport de produit numérique

Le règlement (UE) 2024/1781 relatif à l’écoconception des produits durables est entré en vigueur le 18 juillet 2024 et a introduit le passeport numérique du produit : un passeport relie des données normalisées du cycle de vie à un support de données sur le produit, souvent un code QR.

La Commission européenne a lancé le registre DPP avec un environnement de test le 20 juillet 2026. Le premier passeport obligatoire s'applique à certaines piles à compter du 18 février 2027, conformément au règlement européen sur les piles et accumulateurs. D'autres groupes de produits suivront au fur et à mesure de l'adoption des actes délégués. Voir le Page de commission sur les batteries et le annonce d'inscription.

Les conséquences sur l'intégrité des données sont directes. L'identifiant unique du produit doit rester unique, persistant et correct pendant toute la durée de vie du produit, ce qui justifie l'utilisation d'une clé de contrôle et d'un processus d'attribution centralisé. Les données du passeport doivent être vérifiables, ce qui implique le hachage des documents sous-jacents et les signatures de l'opérateur économique. Le support de données doit également rester lisible, ce qui nous ramène à la question de la qualité du marquage et de la correction des erreurs.

23. Corruption accidentelle versus corruption malveillante

Le contrôle approprié dépend de la cause de l'erreur. Le bruit, l'usure et les erreurs humaines sont aléatoires. Un attaquant ou un contrefacteur, en revanche, ne l'est pas et choisit la modification que votre contrôle ne peut détecter.

Menace Exemple Des chèques qui aident Des chèques qui ne servent à rien
Erreur accidentelle Inversion de bit, erreur de saisie, téléchargement partiel chiffre de contrôle, CRC, hachage Aucun autre n'est nécessaire.
Modification délibérée Micrologiciel modifié, enregistrement de test altéré Signature, HMAC CRC, hachage simple, chiffre de contrôle
Substitution Pièce contrefaite avec un numéro de série copié Étiquette d'authentification, suivi et traçabilité chiffre de contrôle
Rejouer Ancien message valide renvoyé Compteur de séquence ou horodatage couvert par un MAC Toute somme de contrôle statique
Annulation Ancien firmware signé mais vulnérable réinstallé Vérification de version avec compteur anti-retour arrière Signature seule

Les attaques par collision sont problématiques dès lors que deux parties font confiance à un condensé plutôt qu'à un fichier préparé par l'une d'elles. MD5 et SHA-1 échouent à ce test. Pour l'authentification des messages, utilisez HMAC et jamais un hachage avec préfixe secret, en raison de l'allongement de la chaîne.

cybersécurité et réglementation industrielles

La série de normes CEI 62443 définit une exigence fondamentale en matière d'intégrité des systèmes. Elle couvre l'intégrité des communications ainsi que l'intégrité des logiciels et des informations dans les systèmes d'automatisation et de contrôle industriels. Les contrôles effectués sur le micrologiciel, la configuration et les recettes en sont une preuve directe.

Le règlement (UE) 2024/2847 relatif à la cyber-résilience de l'UE est entré en vigueur le 10 décembre 2024. L'obligation de déclaration des vulnérabilités exploitées et des incidents graves s'applique depuis le 11 septembre 2026, y compris aux produits déjà commercialisés. La première notification doit être effectuée dans les 24 heures suivant la prise de connaissance de la vulnérabilité par le fabricant. L'application complète, avec les exigences essentielles et le marquage CE, débutera le 11 décembre 2027. Les amendes pour non-respect de l'obligation de déclaration peuvent atteindre 15 millions d'euros ou 2,5 % du chiffre d'affaires annuel mondial. Résumé par Matheson couvre la chronologie.

Les exigences essentielles comprennent la protection de l'intégrité des données, des programmes et de la configuration contre toute modification non autorisée, ainsi que des mécanismes de mise à jour sécurisés. Le micrologiciel signé et les mises à jour vérifiées deviennent donc une obligation de conformité et non plus une simple préférence technique. La directive NIS2 (UE) 2022/2555 impose des obligations supplémentaires en matière de sécurité et de déclaration à de nombreux fabricants de machines, d'équipements électriques, de véhicules et de dispositifs médicaux.

Contrefaçons, marché gris et attaques contre la chaîne d'approvisionnement

  • Les produits contrefaits copient les étiquettes et les numéros de série. La défense repose sur l'authentification par un code secret, et non par un meilleur chiffre de contrôle.
  • Les produits du marché gris sont authentiques mais détournés. Les règles de suivi et de traçabilité qui signalent un numéro de série provenant d'une région non autorisée permettent de les démasquer.
  • Les attaques de la chaîne d'approvisionnement ciblent le serveur de compilation, le canal de mise à jour ou le micrologiciel des composants fournis par les fournisseurs. Utilisez des versions signées, conservez une nomenclature logicielle avec les condensés et vérifiez les condensés du micrologiciel des fournisseurs via un second canal.

24. Comment choisir la somme de contrôle appropriée

Commencez par la menace, puis le type de données, puis les contraintes. Répondez aux questions dans l'ordre et arrêtez-vous au premier mécanisme qui convient, puis ajoutez le suivant si la réponse à une question ultérieure est également oui.

  1. Une personne pourrait-elle modifier les données délibérément et en tirer profit ? Si oui, utilisez une signature numérique ou un HMAC. Ne conservez un CRC ou un hachage qu’en cas d’erreurs accidentelles.
  2. La valeur est-elle saisie, lue ou scannée ? Si oui, utilisez un chiffre de contrôle sur l’identifiant, une validation au niveau du scanner et des marquages ​​2D avec correction d’erreurs pour les dommages physiques.
  3. Les données transitent-elles par un bus ou sont-elles stockées en mémoire ? Si oui, utilisez un CRC avec un polynôme adapté à la longueur du message et à la distance de Hamming requise. Ajoutez un CRC de bout en bout pour les paramètres critiques.
  4. Un fichier ou un enregistrement doit-il être considéré comme identique à une référence ? Si oui, utilisez SHA-256 pour la comparaison. Un hachage rapide non cryptographique suffit pour les comparaisons non critiques.
  5. Les données doivent-elles survivre à une corruption sans qu'une nouvelle tentative soit nécessaire ? Si oui, ajoutez un code de correction d'erreurs.
  6. Ces données font-elles partie d'un enregistrement réglementé ? Si oui, ajoutez une piste d'audit, une validation et une justification documentée de la méthode choisie.
Données ou étape Risque Approche recommandée
Numéros de pièces et numéros de série saisis par les utilisateurs Moyen Chiffre de contrôle Damm, Verhoeff ou ISO/IEC 7064. Chiffre GS1 pour les clés GS1.
Étiquettes et marques Moyen à élevé Vérification selon les normes ISO/IEC 15415, 15416 ou 29158, symboles 2D avec correction d'erreurs, hachage de modèle
Données de bus de terrain et de capteurs Moyen Protocole CRC avec une distance de Hamming adaptée à la longueur, protocole de sécurité le cas échéant
Recettes et paramètres Haut Hash contre le disque d'or, plus un CRC dans le bloc de transfert
packages CAO et de mise en production Moyen Manifeste SHA-256 stocké dans l'enregistrement de publication
Mises à jour du micrologiciel Haut Signature et SHA-256 pour la publication, CRC pour les vérifications d'exécution
Documents réglementés Haut Chaîne de hachage ou signature avec piste d'audit, validée
Identifiants et messages logistiques Moyen Chiffres de contrôle GS1, totaux de contrôle des messages, validation des règles métier
Comparaison en masse et déduplication Faible xxHash avec une comparaison complète sur match

Conseils pour la prise de décision

  • Conservez une trace écrite des décisions prises pour chaque objet de données : modèle d’erreur, support, budget de taille, durée de vie et propriétaire. Consultez-la à chaque étape de la conception et dès que la chaîne d’approvisionnement ou la menace évolue.
  • Testez les contrôles candidats en injectant des erreurs correspondant à des modes de défaillance réels : inversions de bits, chiffres transposés, troncature et fichier incorrect. Mesurez le taux de détection plutôt que de vous fier à la théorie.

25. Guide de mise en œuvre

Trois règles permettent d'éviter la plupart des problèmes : utiliser une bibliothèque éprouvée ou une implémentation unique partagée ; définir chaque paramètre dans un document de référence ; effectuer des tests avec des vecteurs publiés avant la première mise en production. L'annexe B contient les vecteurs utilisés ci-dessous.

Chiffre de contrôle GS1 en Python

def gs1_check_digit(body: str) -> int:
    if not body.isdigit():
        raise ValueError('digits only')
    total = sum(int(d) * (3 if i % 2 == 0 else 1)
                for i, d in enumerate(reversed(body)))
    return (10 - total % 10) % 10

def gs1_is_valid(full: str) -> bool:
    return (full.isdigit() and len(full) > 1
            and gs1_check_digit(full[:-1]) == int(full[-1]))

assert gs1_check_digit('400638133393') == 1
assert gs1_check_digit('34012345000000001') == 7
assert gs1_is_valid('4006381333931')

Chiffre de contrôle GS1 dans Excel

Pour un corps GTIN-13 de 12 chiffres stocké sous forme de texte dans la cellule A1, cette formule renvoie le chiffre de contrôle.

=MOD(10-MOD(SOMMEPROD(--STXT(A1;{1;3;5;7;9;11};1))+3*SOMMEPROD(--STXT(A1;{2;4;6;8;10;12};1));10);10)

Stockez les identifiants sous forme de texte, jamais sous forme de nombres. Excel ne conserve que 15 chiffres significatifs par nombre ; un code SSCC à 18 chiffres stocké comme un nombre perd donc ses derniers chiffres. De plus, il supprime les zéros non significatifs, ce qui corrompt les valeurs GTIN-12 et GTIN-8.

Chiffre de contrôle GS1 en SQL

Cette requête utilise une expression de table commune récursive. Testée avec SQLite, elle renvoie 1 pour le corps GTIN-13 et 7 pour le corps SSCC utilisé précédemment. Adaptez la syntaxe à votre dialecte de base de données.

AVEC RÉCURSIF d(i, n) COMME ( SÉLECTIONNER 1, LONGUEUR('400638133393') UNION TOUS SÉLECTIONNER i + 1, n DE d OÙ i < n ) SÉLECTIONNER (10 - (SOMME(CAST(SOUS-TÊTE('400638133393', i, 1) COMME ENTIER) * CAS QUAND (n - i) % 2 = 0 ALORS 3 SINON 1 FIN) % 10)) % 10 COMME chiffre_de_contrôle DE d;

Chiffre de contrôle GS1 dans un texte structuré PLC

Cette fonction est conforme à la norme IEC 61131-3 relative aux fonctions de chaînes de caractères. Les fournisseurs diffèrent quant aux détails, notamment en ce qui concerne les noms de conversion des chaînes ; il est donc recommandé de l’exécuter avec les vecteurs de l’annexe B dans votre propre environnement d’exécution.

FONCTION GS1_CheckDigit : INT VAR_INPUT sBody : STRING(17); END_VAR VAR i, n, iSum : INT; END_VAR n := LEN(sBody); iSum := 0; POUR i := 1 À n FAIRE SI ((n - i) MOD 2) = 0 ALORS iSum := iSum + 3 * STRING_TO_INT(MID(sBody, 1, i)); SINON iSum := iSum + STRING_TO_INT(MID(sBody, 1, i)); END_IF END_FOR GS1_CheckDigit := (10 - (iSum MOD 10)) MOD 10;

CRC-32 en C

La version bit à bit est la plus courte et la plus facile à auditer. Elle a été compilée et testée avec le vecteur correspondant à la chaîne ASCII 123456789. En production, on utilise généralement une table ou un périphérique matériel.

uint32_t crc32_update(uint32_t crc, const uint8_t *data, size_t len) { while (len--) { crc ^= *data++; for (int bit = 0; bit > 1) ^ (0xEDB88320u & (0u - (crc & 1u))); } } return crc; } /* On commence par 0xFFFFFFFF, on traite chaque bloc, on termine par un XOR final : crc = 0xFFFFFFFFu; crc = crc32_update(crc, buffer, length); crc ^= 0xFFFFFFFFu; Le résultat pour la chaîne ASCII 123456789 est 0xCBF43926. */

Modbus CRC-16 et SHA-256 en flux continu en Python

import hashlib

def crc16_modbus(data: bytes) -> int:
    crc = 0xFFFF
    for byte in data:
        crc ^= byte
        for _ in range(8):
            crc = (crc >> 1) ^ 0xA001 if crc & 1 else crc >> 1
    return crc

frame = bytes([0x01, 0x03, 0x00, 0x00, 0x00, 0x0A])
crc = crc16_modbus(frame)
wire = frame + bytes([crc & 0xFF, crc >> 8])   # low byte first

def sha256_file(path, chunk=1024 * 1024):
    h = hashlib.sha256()
    with open(path, 'rb') as f:
        for block in iter(lambda: f.read(chunk), b''):
            h.update(block)
    return h.hexdigest()

Le fil variable contient 01 03 00 00 00 0A C5 CD. La fonction de flux lit le fichier par blocs, ce qui lui permet de gérer des images de toute taille avec une mémoire constante. Pour expérimenter avec les sommes de contrôle de chaînes hexadécimales et ASCII, essayez le Calculateur de somme de contrôle hexadécimale et ASCII sur ce site.

Pièges liés à l'implémentation des sommes de contrôle

Piège Ce qui se produit Contre-mesure
Ordre des octets Modbus envoie d'abord l'octet de poids faible du CRC. Une inversion d'octets provoque une erreur à chaque trame. Vérifier par rapport à une image capturée à partir d'un appareil réel
Valeur initiale et réflexion Un autre ensemble de paramètres produit un CRC plausible mais erroné Corrigez les six paramètres CRC dans la spécification d'interface
Texte versus octets Les fins de ligne, l'encodage du texte et les espaces de fin modifient un résumé Hachez les octets stockés avec précision et définissez la normalisation si du texte est impliqué.
Types numériques pour les identifiants Les zéros non significatifs disparaissent, les nombres longs perdent des chiffres en virgule flottante Stockez les identifiants sous forme de chaînes de caractères dans Excel, CSV, les bases de données et les données PLC.
Chargement de fichiers entiers en mémoire Les images de grande taille saturent la RAM de la station Hacher en morceaux
Couverture non définie Le condensé comprend des champs variables tels que les numéros de série Définir les régions exactes et exclure ou corriger les données spécifiques à chaque unité
Bibliothèques non vérifiées Un bogue silencieux réussit tous les tests que vous n'avez pas écrits. Exécuter les vecteurs publiés dans le pipeline de construction

26. Liste de contrôle des meilleures pratiques par rôle

Recherche et développement et conception

  • Définissez un chiffre de contrôle et un format fixe dans chaque système d'identification, dès la première ébauche du concept de numérotation.
  • Ajoutez aux images de firmware un en-tête contenant un numéro magique, une version, une longueur, un CRC et une signature, et spécifiez le comportement en cas d'échec.
  • Paramètres CRC du document et justification du polynôme dans la spécification d'interface.
  • Stockez les hachages des paquets publiés dans le registre de publication et dans les documents de transmission des fournisseurs.
  • Inclure dans l'analyse de sécurité une couverture diagnostique des contrôles de mémoire et de communication.

Fabrication

  • Utilisez les stations de balayage et de flashage comme des barrières avec arrêts brusques, et enregistrez chaque contournement.
  • Vérifiez le firmware par lecture ou par un condensé rapporté par l'appareil, et enregistrez le résultat pour chaque numéro de série.
  • Comparez les recettes actives avec le hachis doré au début de chaque lot.
  • À chaque quart de travail, confrontez chaque contrôle à un échantillon défectueux connu.
  • Veillez à ce que les vérificateurs et les scanners soient calibrés et entretenus.
Détection FMEA
Mettre en œuvre des processus d'assurance qualité robustes afin d'améliorer la fiabilité des produits grâce à des tests et une validation systématiques.

Qualité

  • Évaluer la détection des AMDEC à partir de preuves telles que les résultats des tests de validation et les enregistrements de contournement.
  • Validez les contrôles et conservez les vecteurs de test dans le fichier de validation.
  • Effectuez des simulations de rappel et suivez le temps nécessaire pour obtenir la liste des unités concernées.
  • Analyser les taux d'échec des analyses graphiques et les niveaux de vérification, et agir en fonction des tendances.
  • Les certificats des fournisseurs sont automatiquement comparés aux données des bons de commande et de réception.
  •  

Logistique

  • Scanner pour confirmer l'emplacement, l'article et le contenant à chaque prélèvement.
  • Validez les identifiants et les messages à la réception et suivez le taux de rejet par partenaire commercial.
  • Attribuer les SSCC de manière centralisée et garantir leur unicité.
  • Vérifiez les étiquettes au moment de leur apposition et utilisez des symboles 2D pour les chaînes d'approvisionnement longues ou accidentées.
  • Exprimez les objectifs en défauts par million de lignes.

TI et OT

  • Fournir une bibliothèque ou un service partagé pour les chiffres de contrôle, les CRC et les hachages, avec des vecteurs de test publiés.
  • Signer le firmware et les versions, conserver les clés privées dans un module de sécurité matériel et planifier la rotation et la révocation.
  • Synchronisez les horloges et conservez les enregistrements dans des magasins en mode ajout uniquement ou dans des chaînes de hachage avec ancrage externe.
  • Stockez les identifiants sous forme de chaînes de caractères dans tous les systèmes qui y accèdent.
  • Planifiez l'agilité de vos algorithmes, car SHA-1 est abandonné et les signatures post-quantiques arrivent.

Deux conseils de pro pour les ingénieurs

  • Désignez un responsable pour chaque contrôle. Cette personne gère l'algorithme, les paramètres, les vecteurs de test et le plan de réaction.
  • Intégrez chaque contrôle dans le plan de contrôle et l'AMDEC du processus, et auditez-le selon le même calendrier qu'un système de mesure.
Sommes de contrôle
L'intégration de sommes de contrôle robustes et de processus contrôlés améliore l'intégrité et la fiabilité du cycle de vie des produits.

Conclusion sur les sommes de contrôle et les éléments similaires

Les sommes de contrôle sont petites, anciennes et bien comprises. Leur intérêt dans le développement de produits physiques réside dans leur utilisation appropriée au bon moment du cycle de vie et dans le traitement du contrôle comme un processus maîtrisé et documenté.

Utilisez des chiffres de contrôle lorsque des personnes et des scanners manipulent des identifiants. Utilisez des CRC pour les trames, les blocs et les images, avec un polynôme adapté à la longueur du message. Utilisez SHA-256 pour les fichiers et les enregistrements, et des signatures ou des codes chiffrés lorsque le risque de modification intentionnelle est présent. Ajoutez une correction d'erreurs lorsque des marques et des données en mémoire risquent d'être altérées.

Ensuite, bouclez la boucle avec des preuves. Remettez en question les contrôles, évaluez les vérificateurs, consignez les résultats et analysez les chiffres. Un contrôle non testé repose sur une simple supposition.

 

Pilote en charge du vol avec le coût par intervention le plus élevé et sans contrôle aujourd'hui. Mesurer le taux d'intervention avant et après, et utiliser le résultat pour justifier le prochain contrôle.

Considérez chaque contrôle comme un élément contrôlé, doté d'une spécification, d'un responsable, de vecteurs de test et d'une fréquence de vérification. Un contrôle dépourvu de ces éléments deviendra obsolète.

 

FAQ

Pourquoi un test CRC-32 réussi ne prouve-t-il pas qu'une image de firmware correspond à la version prévue ?

Un CRC ne détecte que les corruptions accidentelles, et n'importe qui peut créer une image modifiée possédant le même CRC. Vérifiez le condensé SHA-256 par rapport à un enregistrement de version qui vous parvient par un canal distinct, et ajoutez une signature chaque fois qu'une modification délibérée présente un risque.

Quelles erreurs échappent à un chiffre de contrôle GS1 mod-10 ?

Le contrôle détecte toutes les erreurs d'un seul chiffre, mais il ne repère pas les inversions consécutives de chiffres différant de 5, soit environ 11 % des échanges de chiffres différents. Un chiffre valide ne prouve rien quant à l'affectation ; il est donc important de conserver la validation des données de référence en parallèle du contrôle arithmétique.

Comment évaluer la détection FMEA pour un contrôle basé sur une somme de contrôle ?

Évaluez les preuves et non l'algorithme : un système d'arrêt automatique contrôlé, mis à l'épreuve avec des échantillons défectueux connus, obtient une bien meilleure évaluation qu'un contrôle que les opérateurs peuvent contourner ou qui n'a jamais été remis en question. Quantifiez la probabilité de contournement, conservez le journal des contestations et le registre des contournements, et appliquez la logique de priorité des actions de l'AIAG-VDA 2019.

Comment choisir un polynôme CRC pour mon interface ?

La distance de Hamming garantie dépend à la fois du polynôme et de la longueur du message ; il convient donc de définir d'abord la plage de longueurs. Koopman a démontré que le CRC-32 de la norme IEEE 802.3 n'atteint qu'une distance de Hamming de 4 sur les trames Ethernet de longueur maximale, tandis que d'autres polynômes atteignent 6. Il est donc recommandé de choisir le polynôme issu des résultats de recherches exhaustives publiés.

Pourquoi deux systèmes qui prétendent tous deux utiliser le CRC-16 sont-ils en désaccord sur chaque trame ?

Le nom ne définit pas l'algorithme, car la largeur, le polynôme, la valeur initiale, la réflexion d'entrée, la réflexion de sortie et l'opération XOR finale doivent tous correspondre. Indiquez les six paramètres dans la spécification d'interface et testez les deux extrémités avec la valeur de contrôle de la chaîne ASCII 123456789 du catalogue Reveng.

Quand une comparaison SHA-256 en fin de chaîne ne constitue-t-elle toujours pas une preuve de flashage correct ?

Le hachage du fichier source ou la confiance accordée à l'indicateur de réussite du programmateur ne fournissent aucune information sur le contenu du périphérique. Il est nécessaire de relire la région depuis le périphérique via un chemin distinct, d'inclure les octets d'option, les fusibles et les bits de verrouillage, de traiter séparément les données spécifiques à l'unité telles que le numéro de série, l'adresse MAC et l'étalonnage, et d'enregistrer le résultat pour chaque numéro de série.

Une chaîne de hachage est-elle suffisante pour rendre les enregistrements par lots inviolables ?

Une chaîne ne prouve son ordre et son intégrité que si son hachage le plus récent est stocké en dehors du système qui héberge le journal. Utilisez une signature périodique, des horodatages fiables conformes à la RFC 3161, ou transmettez le hachage à un client ou un auditeur, car toute personne disposant d'un accès en écriture peut sinon recalculer l'intégralité de la chaîne.

Où s'arrête la protection de mes signaux par un CRC de bus de terrain ?

Une passerelle ou un pont recalcule le CRC pour le segment suivant, de sorte que toute corruption de sa mémoire entre deux sauts reste invisible. Pour les signaux et les points de consigne critiques pour la sécurité, ajoutez un CRC de bout en bout avec un compteur généré à la source et vérifié au niveau du consommateur.

De combien de bits un hachage non cryptographique a-t-il besoin pour les inventaires et la déduplication ?

C’est la limite de l’âge qui fait la différence : un hachage 32 bits avec 100 000 éléments a une probabilité de collision d’environ 69 %, tandis qu’un hachage 64 bits avec un million d’éléments reste proche de 2,7 sur 100 millions. Utilisez 64 bits ou plus et comparez l’intégralité des données lorsqu’une correspondance est nécessaire pour prendre une décision.

Comment dois-je traiter les lecteurs et vérificateurs de codes-barres dans une analyse de système de mesure ?

Calibrez les vérificateurs à l'aide d'une carte de test de conformité, appliquez la norme ISO/IEC 15416, 15415 ou 29158 au type de symbole et effectuez une analyse de concordance des attributs entre les opérateurs, les scanners et une référence. Un symbole correctement lu indique seulement qu'il est lisible ; il convient donc de suivre la distribution des notes et la capacité de correction d'erreur inutilisée comme indicateurs de dérive.

Dois-je valider la fonction de vérification elle-même dans un environnement réglementé ?

Oui, car le contrôle fait partie d'un système informatisé qui relève des principes GAMP 5, de la partie 11 du titre 21 du CFR ou de l'annexe 11 de l'UE. Planifiez les tests IQ, OQ et PQ en fonction du risque, stockez les vecteurs de test et les tests négatifs dans le fichier de validation et relancez-les après toute modification du micrologiciel du scanner, de l'imprimante, de la bibliothèque ou du système d'exploitation.

Comment planifier la mise hors service des algorithmes dans les produits qui restent en service pendant 10 à 20 ans ?

Tenez un registre des algorithmes avec les dates de révision, par exemple pour le plan du NIST visant à retirer SHA-1 d'ici le 31 décembre 2030. Concevez des chargeurs de démarrage et des canaux de mise à jour de manière à ce que les algorithmes et les clés puissent être remplacés sur le terrain, car la loi sur la cyber-résilience fait des mises à jour signées et vérifiées une question de conformité à compter du 11 décembre 2027.

 

Annexes

Annexe A : Vecteurs de test

Toutes les valeurs ont été calculées ou confirmées à l'aide du code présenté au chapitre 25 ou d'outils de référence. Toutes les chaînes de caractères saisies sont fournies au format ASCII.

Fonction Saisir Résultat attendu
CRC-32 123456789 0xCBF43926
CRC-32C 123456789 0xE3069283
CRC-16/MODBUS 123456789 0x4B37
CRC-16/CCITT-FAUX 123456789 0x29B1
CRC-8 (polynôme 0x07) 123456789 0xF4
SHA-256 123456789 15e2b0d3c33891ebb0f1ef609ec419420c20e320ce94c65fbc8c3312448eb225
Cadre Modbus RTU 01 03 00 00 00 0A CRC 0xCDC5, envoyé comme CD C5
Exemple pédagogique CRC-3 Message 1101, générateur 1011 Reste 001
Chiffre de contrôle GTIN-13 400638133393 1, clé complète 4006381333931
Chiffre de contrôle GTIN-12 03600029145 2, clé complète 036000291452
Chiffre de contrôle GTIN-14 1540014128876 3, clé complète 15400141288763
Chiffre de contrôle SSCC 34012345000000001 7, clé complète 340123450000000017
Chiffre de contrôle de Luhn 7992739871 3, numéro complet 79927398713
Chiffre de contrôle du NIV (règle nord-américaine) 11111111111111111 1
Chiffre de contrôle du NIV (règle nord-américaine) 1HGBH41JXMN109186 X en position 9

Annexe B : Normes et références

Sources en ligne utilisées pour cet article, vérifiées en novembre 2026 :

Normes et publications citées par nom, disponibles auprès des organismes émetteurs :

  • RFC 1071 (somme de contrôle Internet), RFC 2104 (HMAC), RFC 3161 (protocole d'horodatage)
  • FIPS 180-4 (SHA-1 et SHA-2), FIPS 202 (SHA-3), NIST SP 800-38B (CMAC)
  • ISO/IEC 7064 (systèmes de caractères de contrôle), ISO 6346 (codes des conteneurs), ISO/IEC 29158 (qualité du marquage direct des pièces)
  • ISO 9001, IATF 16949, AS9100, ISO 13485, ISO 26262, IEC 61508, IEC 62304, IEC 62443
  • Manuel AMDEC AIAG et VDA, 1re édition, 2019
  • 21 CFR Partie 11, UE GMP Annexe 11, GAMP 5
  • Maxino et Koopman, « L’efficacité des sommes de contrôle pour les réseaux de contrôle embarqués », IEEE Transactions on Dependable and Secure Computing, 2009
  • Règlement (UE) 2024/2847 (loi sur la cyber-résilience), Règlement (UE) 2024/1781 (écoconception de produits durables), Règlement (UE) 2023/1542 (piles), Directive (UE) 2022/2555 (NIS2)

Sujets abordés : Sommes de contrôle, intégrité des données, cycle de vie du produit, erreurs de lecture de codes-barres, outil qualité, chiffres de contrôle, CRC, SHA-256, fichiers CAO, nomenclature, ordre de travail, documents d'expédition, chiffre de contrôle GS1, correction d'erreurs, images de firmware, signature, code saisi et passeport numérique du produit.

Contexte historique

1959-11
1960
1960
1960
1960
1960
1960
1958
1960
1960
1960
1960
1960
1960
1960

(si la date est inconnue ou non pertinente, par exemple « mécanique des fluides », une estimation arrondie de son émergence notable est fournie)

10e année anniversaire

Les images en pleine résolution et les téléchargements sont uniquement disponibles, et 100% gratuits, pour les membres inscrits.