Brevet FR3132815A1 — publié le 20230818

Procédé de hachage partiel d’un flux vidéo La présente description concerne un procédé de transmission d’un flux vidéo comprenant : - la génération, par un capteur d’image (102), d’un flux vidéo comprenant des première et deuxième images ; - le hachage, par le capteur d’image (102), d’une partie de la première image sur la base d’une première configuration de hachage pour générer une première valeur de hachage, la première configuration définissant des premières positions de pixels à hacher ; - le hachage, par le capteur d’image (102), d’une partie de la deuxième image sur la base d’une deuxième configuration de hachage pour générer une deuxième valeur de hachage, la deuxième configuration étant différente de la première configuration et définissant des deuxièmes positions de pixels à hacher ; et - la transmission, par le capteur d’image (102) des première et deuxième images, et des première et deuxième valeurs de hachage, vers un deuxième dispositif (106). Figure pour l'abrégé : Fig. 2 Procédé de hachage partiel d’un flux vidéo La présente description concerne de façon générale la protection et la sécurisation du contenu d’images et plus particulièrement, d’un flux vidéo. Pour certaines applications, telles que des applications dans le domaine des automobiles, il est important d’assurer l’intégrité des images d’un flux vidéo transmises entre un capteur d’image et une unité de traitement. Une solution consiste à hacher les images avec une fonction de hachage côté capteur d’image, et d’appliquer la même fonction de hachage côté unité de traitement. Les résultats de hachages sont ensuite comparés afin de détecter d’éventuelles modifications. Néanmoins, dans de telles applications, la cadence d’images enregistrées par le capteur d’image peut être élevée. De plus, il y a une tendance à augmenter la résolution des images. Il se peut que, dans certains cas, le capteur d’image ne soit pas assez performant pour appliquer une fonction de hachage à ces images tout en suivant la cadence du flux. De même, les fonctions de hachage mises en œuvre par le processeur recevant ces images peuvent ne pas être assez rapides pour assurer le hachage entier de chaque image. Il existe un besoin d’améliorer les méthodes de hachage d’images provenant d’un flux vidéo. Un mode de réalisation pallie tout ou partie des inconvénients des procédé de hachage partiel connus. Un mode de réalisation prévoit un procédé de transmission d’un flux vidéo comprenant : - la génération, par un capteur d’image, d’un flux vidéo comprenant des première et deuxième images, chaque image étant un agencement de pixels à des positions de pixels correspondantes, chaque pixel étant associés à une ou plusieurs données de pixels ; - le hachage, par le capteur d’image, d’une partie de la première image sur la base d’une première configuration de hachage pour générer une première valeur de hachage, la première configuration définissant des premières positions de pixels à hacher ; - le hachage, par le capteur d’image, d’une partie de la deuxième image sur la base d’une deuxième configuration de hachage pour générer une deuxième valeur de hachage, la deuxième configuration étant différente de la première configuration et définissant des deuxièmes positions de pixels à hacher ; et - la transmission, par le capteur d’image des première et deuxième images, et des première et deuxième valeurs de hachage, vers un deuxième dispositif. Selon un mode de réalisation, au moins une position de pixel parmi les premières positions de pixels n’appartient pas aux deuxièmes positions et/ou au moins une position de pixel parmi les deuxièmes positions de pixels n’appartient pas aux premières positions. Selon un mode de réalisation, le procédé ci-dessus comprend en outre : - la transmission, par le capteur d’image vers le deuxième dispositif, d’une ou plusieurs valeurs indiquant les première et deuxième configurations de hachage. Selon un mode de réalisation, le procédé ci-dessus comprend, avant lesdits hachages partiels des première et deuxième images, la réception par le capteur d’image, à partir du deuxième dispositif, d’une table des configurations dans laquelle sont indexées au moins la première et la deuxième configurations de hachage, la première configuration étant indexée à un premier index et la deuxième configuration étant indexée à un deuxième index, le procédé comprenant en outre la transmission, par le capteur d’image, des premier et deuxième index au deuxième dispositif. Selon un mode de réalisation, la table des configurations reçue par le capteur d’image est chiffrée, le procédé comprenant en outre le déchiffrement, par le capteur d’image, de la table des configurations chiffrée. Selon un mode de réalisation, le premier index est transmis au deuxième dispositif dans une ligne d’état de la première image et le deuxième index est transmis au deuxième dispositif dans une ligne d’état de la deuxième image. Selon un mode de réalisation, les premier et deuxième index sont sélectionnés de manière aléatoire, par le capteur d’image, parmi au moins trois index de la table des configurations. Selon un mode de réalisation : - la première configuration de hachage est indiquée, au deuxième dispositif, par le capteur d’image dans une ligne d’état de la première image ; et - la deuxième configuration de hachage est indiquée, au deuxième dispositif, par le capteur d’image, dans une ligne d’état de la deuxième image. Selon un mode de réalisation, lesdites étapes de hachage comprennent l’utilisation de l’algorithme de hachage SHA-2. Selon un mode de réalisation, la proportion de premières positions de pixels à hacher parmi la totalité des pixels de la première image est comprise entre 25% et 80%, et la proportion de deuxièmes positions de pixels à hacher parmi la totalité des pixels de la deuxième image est comprise entre 25% et 80%. Selon un mode de réalisation, chaque image du flux vidéo est composée de plusieurs paquets de données, chaque paquet comprenant plusieurs données de pixel associées aux pixels de l’image, la taille de chaque paquet de données étant programmable ; et chacune des première et deuxième configurations définissant : - la taille d’un ou plusieurs paquets d’une image à hacher ; ou - la taille d’un ou plusieurs paquets d’une image à ne pas hacher ; ou - la taille d’un ou plusieurs paquets d’une image à hacher et la taille d’un plusieurs paquets d’une image à ne pas hacher. Selon un mode de réalisation, le procédé ci-dessus comprend en outre la génération de façon aléatoire, par un générateur de nombres aléatoires, de la taille dudit un ou plusieurs paquets de l’image à hacher et/ou la taille dudit un ou plusieurs paquets de l’image à ne pas hacher. Un mode de réalisation prévoit un procédé de vérification d’intégrité d’un flux vidéo, comprenant : - la réception, par un dispositif de traitement, d’un flux vidéo comprenant des première et deuxième images, chaque image étant un agencement de pixels à des positions de pixels correspondants, chaque pixel étant associés à une ou plusieurs données de pixels ; - la réception, par le dispositif de traitement, d’une première valeur de hachage associée avec la première image et d’une deuxième valeur de hachage associée avec la deuxième image ; - le hachage, par le dispositif de traitement, d’une partie de la première image sur la base d’une première configuration de hachage pour générer une autre première valeur de hachage, la première configuration définissant des premières positions de pixels à hacher ; - le hachage, par le dispositif de traitement, d’une partie de la deuxième image sur la base d’une deuxième configuration de hachage pour générer une autre deuxième valeur de hachage, la deuxième configuration étant différente de la première configuration et définissant des deuxièmes positions de pixels à hacher ; et - la vérification, par le dispositif de traitement, de l’intégrité du flux vidéo sur la base d’une première comparaison de la première valeur de hachage avec l’autre première valeur de hachage et d’une deuxième comparaison de la deuxième valeur de hachage avec l’autre deuxième valeur de hachage. Selon un mode de réalisation, le procédé ci-dessus comprend en outre : - la détermination, par le dispositif de traitement, les premières et deuxièmes positions de pixels à hacher en fonction d’une séquence aléatoire générée à partir d’une graine ; et - la transmission, par le dispositif de traitement, la graine au capteur d’image. Selon un mode de réalisation, le procédé ci-dessus comprend en outre, si la première valeur de hachage ne correspond pas à l’autre première valeur de hachage, ou la deuxième valeur de hachage ne correspond pas à l’autre deuxième valeur de hachage, la désactivation du capteur d’image. Un mode de réalisation prévoit un capteur d’image comprenant : une matrice de pixels configurée pour capturer des images ; un premier dispositif de traitement configuré pour recevoir des images capturées par la matrice de pixels, pour générer un flux vidéo comprenant au moins une première image et au moins une deuxième image, et pour transmettre le flux vidéo vers un deuxième dispositif, chaque image étant un agencement de pixels à des positions de pixels correspondantes, chaque pixel étant associés à une ou plusieurs données de pixels ; un circuit de hachage configuré pour : - hacher une partie de la première image, sur la base d’une première configuration de hachage, pour générer une première valeur de hachage et transmettre la première valeur de hachage au deuxième dispositif, la première configuration définissant des premières positions de pixels à hacher ; et - hacher une partie de la deuxième image, sur la base d’une deuxième configuration de hachage, pour générer une deuxième valeur de hachage et transmettre la deuxième valeur de hachage au deuxième dispositif, la deuxième configuration étant différente de la première configuration et définissant des deuxièmes positions de pixels à hacher. Un mode de réalisation prévoit un dispositif de traitement configuré pour : - recevoir un flux vidéo comprenant des première et deuxième images, chaque image étant un agencement de pixels à des positions de pixels correspondantes, chaque pixel étant associés à une ou plusieurs données de pixels ; - recevoir une première valeur de hachage associée avec la première image et d’une deuxième valeur de hachage associée avec la deuxième image ; - hacher une partie de la première image sur la base d’une première configuration de hachage pour générer une autre première valeur de hachage, la première configuration définissant des premières positions de pixels à hacher ; - hacher une partie de la deuxième image, sur la base d’une deuxième configuration de hachage, pour générer une autre deuxième valeur de hachage, la deuxième configuration étant différente de la première configuration et définissant des deuxièmes positions de pixels à hacher ; et - vérifier l’intégrité du flux vidéo sur la base d’une première comparaison de la première valeur de hachage avec l’autre première valeur de hachage et d’une deuxième comparaison de la deuxième valeur de hachage avec l’autre deuxième valeur de hachage. Un mode de réalisation prévoit un dispositif comprenant le capteur d’image relié au dispositif de traitement par un ou plusieurs bus de communication. Ces caractéristiques et avantages, ainsi que d'autres, seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non limitatif en relation avec les figures jointes parmi lesquelles : la représente, de façon très schématique et sous forme de blocs, un dispositif de capture et de traitement d’un flux vidéo selon un mode de réalisation de la présente description ; la représente, de façon très schématique et sous forme de blocs, le dispositif de la plus en détail selon un mode de réalisation de la présente description ; la représente une image et illustre un exemple de configuration de hachage partiel d’une image ; la représente un flux de paquets d’une image et illustre un exemple de configuration de hachage partiel d’une image ; la est un organigramme représentant des opérations d’un procédé de transmission et de vérification d’intégrité d’un flux vidéo selon un exemple de réalisation de la présente description ; la est un organigramme représentant des opérations d’un procédé de transmission et de vérification d’intégrité d’un flux vidéo selon un autre exemple de réalisation de la présente description ; et la est un organigramme représentant des opérations d’un procédé de transmission et de vérification d’intégrité d’un flux vidéo selon encore un autre exemple de réalisation de la présente description. Procédé de transmission d’un flux vidéo comprenant : - la génération, par un capteur d’image (102), d’un flux vidéo comprenant des première et deuxième images, chaque image étant un agencement de pixels à des positions de pixels correspondantes, chaque pixel étant associés à une ou plusieurs données de pixels ; - le hachage, par le capteur d’image (102), d’une partie de la première image sur la base d’une première configuration de hachage pour générer une première valeur de hachage, la première configuration définissant des premières positions de pixels à hacher ; - le hachage, par le capteur d’image (102), d’une partie de la deuxième image sur la base d’une deuxième configuration de hachage pour générer une deuxième valeur de hachage, la deuxième configuration étant différente de la première configuration et définissant des deuxièmes positions de pixels à hacher ; et - la transmission, par le capteur d’image (102) des première et deuxième images, et des première et deuxième valeurs de hachage, vers un deuxième dispositif (106). Procédé selon la revendication 1, dans lequel au moins une position de pixel parmi les premières positions de pixels n’appartient pas aux deuxièmes positions et/ou au moins une position de pixel parmi les deuxièmes positions de pixels n’appartient pas aux premières positions. Procédé selon la revendication 1 ou 2, comprenant en outre : - la transmission, par le capteur d’image (102) vers le deuxième dispositif (106), d’une ou plusieurs valeurs indiquant les première et deuxième configurations de hachage. Procédé selon l’une quelconque des revendications 1 à 3, comprenant, avant lesdits hachages partiels des première et deuxième images, la réception par le capteur d’image (102), à partir du deuxième dispositif (106), d’une table des configurations dans laquelle sont indexées au moins la première et la deuxième configurations de hachage, la première configuration étant indexée à un premier index et la deuxième configuration étant indexée à un deuxième index, le procédé comprenant en outre la transmission, par le capteur d’image, des premier et deuxième index au deuxième dispositif (106). Procédé selon la revendication 4, dans lequel la table des configurations reçue par le capteur d’image (102) est chiffrée, le procédé comprenant en outre le déchiffrement, par le capteur d’image, de la table des configurations chiffrée. Procédé selon la revendication 4 ou 5, dans lequel le premier index est transmis au deuxième dispositif (106) dans une ligne d’état de la première image et le deuxième index est transmis au deuxième dispositif (106) dans une ligne d’état de la deuxième image. Procédé selon l’une quelconque des revendications 4 à 6, dans lequel les premier et deuxième index sont sélectionnés de manière aléatoire, par le capteur d’image, parmi au moins trois index de la table des configurations. Procédé selon l’une quelconque des revendications 1 à 7, dans lequel : - la première configuration de hachage est indiquée, au deuxième dispositif (106), par le capteur d’image (102) dans une ligne d’état de la première image ; et - la deuxième configuration de hachage est indiquée, au deuxième dispositif (106), par le capteur d’image (102), dans une ligne d’état de la deuxième image. Procédé selon l’une quelconque des revendications 1 à 8, dans lequel lesdites étapes de hachage comprennent l’utilisation de l’algorithme de hachage SHA-2. Procédé selon l’une quelconque des revendications 1 à 9, dans lequel la proportion de premières positions de pixels à hacher parmi la totalité des pixels de la première image est comprise entre 25% et 80%, et la proportion de deuxièmes positions de pixels à hacher parmi la totalité des pixels de la deuxième image est comprise entre 25% et 80%. Procédé selon l’une quelconque des revendications 1 à 10, dans lequel : chaque image du flux vidéo est composée de plusieurs paquets de données, chaque paquet comprenant plusieurs données de pixel associées aux pixels de l’image, la taille de chaque paquet de données étant programmable ; et chacune des première et deuxième configurations définissant : - la taille d’un ou plusieurs paquets d’une image à hacher ; ou - la taille d’un ou plusieurs paquets d’une image à ne pas hacher ; ou - la taille d’un ou plusieurs paquets d’une image à hacher et la taille d’un plusieurs paquets d’une image à ne pas hacher. Procédé selon la revendication 11, comprenant en outre la génération de façon aléatoire, par un générateur de nombres aléatoires (211a, 211b), de la taille dudit un ou plusieurs paquets de l’image à hacher et/ou la taille dudit un ou plusieurs paquets de l’image à ne pas hacher. Procédé de vérification d’intégrité d’un flux vidéo, comprenant : - la réception, par un dispositif de traitement (106), d’un flux vidéo comprenant des première et deuxième images, chaque image étant un agencement de pixels à des positions de pixels correspondants, chaque pixel étant associés à une ou plusieurs données de pixels ; - la réception, par le dispositif de traitement (106), d’une première valeur de hachage associée avec la première image et d’une deuxième valeur de hachage associée avec la deuxième image ; - le hachage, par le dispositif de traitement (106), d’une partie de la première image sur la base d’une première configuration de hachage pour générer une autre première valeur de hachage, la première configuration définissant des premières positions de pixels à hacher ; - le hachage, par le dispositif de traitement (106), d’une partie de la deuxième image sur la base d’une deuxième configuration de hachage pour générer une autre deuxième valeur de hachage, la deuxième configuration étant différente de la première configuration et définissant des deuxièmes positions de pixels à hacher ; et - la vérification, par le dispositif de traitement (106), de l’intégrité du flux vidéo sur la base d’une première comparaison de la première valeur de hachage avec l’autre première valeur de hachage et d’une deuxième comparaison de la deuxième valeur de hachage avec l’autre deuxième valeur de hachage. Procédé selon la revendication 13, comprenant en outre : - la détermination, par le dispositif de traitement (106), des premières et deuxièmes positions de pixels à hacher en fonction d’une séquence aléatoire générée à partir d’une graine ; et - la transmission, par le dispositif de traitement (106), de la graine au capteur d’image (106). Procédé selon la revendication 13 ou 14, comprenant en outre, si la première valeur de hachage ne correspond pas à l’autre première valeur de hachage, ou la deuxième valeur de hachage ne correspond pas à l’autre deuxième valeur de hachage, la désactivation du capteur d’image (102). Capteur d’image comprenant : une matrice de pixels (107) configurée pour capturer des images ; un premier dispositif de traitement (108) configuré pour recevoir des images capturées par la matrice de pixels (107), pour générer un flux vidéo comprenant au moins une première image et au moins une deuxième image, et pour transmettre le flux vidéo vers un deuxième dispositif (106), chaque image étant un agencement de pixels à des positions de pixels correspondantes, chaque pixel étant associés à une ou plusieurs données de pixels ; un circuit de hachage configuré pour : - hacher une partie de la première image, sur la base d’une première configuration de hachage, pour générer une première valeur de hachage et transmettre la première valeur de hachage au deuxième dispositif (106), la première configuration définissant des premières positions de pixels à hacher ; et - hacher une partie de la deuxième image, sur la base d’une deuxième configuration de hachage, pour générer une deuxième valeur de hachage et transmettre la deuxième valeur de hachage au deuxième dispositif (106), la deuxième configuration étant différente de la première configuration et définissant des deuxièmes positions de pixels à hacher. Dispositif de traitement configuré pour : - recevoir un flux vidéo comprenant des première et deuxième images, chaque image étant un agencement de pixels à des positions de pixels correspondantes, chaque pixel étant associé à une ou plusieurs données de pixels ; - recevoir une première valeur de hachage associée avec la première image et une deuxième valeur de hachage associée avec la deuxième image ; - hacher une partie de la première image sur la base d’une première configuration de hachage pour générer une autre première valeur de hachage, la première configuration définissant des premières positions de pixels à hacher ; - hacher une partie de la deuxième image, sur la base d’une deuxième configuration de hachage, pour générer une autre deuxième valeur de hachage, la deuxième configuration étant différente de la première configuration et définissant des deuxièmes positions de pixels à hacher ; et - vérifier l’intégrité du flux vidéo sur la base d’une première comparaison de la première valeur de hachage avec l’autre première valeur de hachage et d’une deuxième comparaison de la deuxième valeur de hachage avec l’autre deuxième valeur de hachage. Dispositif comprenant le capteur d’image de la revendication 16 relié au dispositif de traitement de la revendication 17 par un ou plusieurs bus de communication.