Rapport de vérification de l’inaltérabilité des données

Les administrations fiscales de certains pays exigent que les entreprises prouvent que leurs écritures comptables enregistrées sont inaltérables, ce qui signifie qu’une fois une écriture sécurisée, elle ne peut plus être modifiée.

Pour ce faire, Odoo crée une empreinte unique pour chaque écriture sécurisée grâce à l”algorithme SHA-256. Cette empreinte est appelée un hash. Le hash est généré en prenant les données essentielles d’une écriture (les valeurs des champs name, date, journal_id, company_id, debit, credit, account_id et partner_id), en les concaténant et en les saisissant dans la fonction de hachage SHA-256, qui génère ensuite une chaîne de caractères de taille fixe (256 bits). La fonction de hachage est déterministe (la même entrée crée toujours la même sortie) : toute modification mineure des données d’origine changerait complètement le hash résultant. Par conséquent, l’algorithme SHA-256 est souvent utilisé, entre autres, à des fins de vérification de l’intégrité des données.

De plus, le hash de l’écriture précédente est toujours ajouté à l’écriture suivante pour former une chaîne de hash. Cela permet de garantir qu’une nouvelle écriture n’est pas ajoutée après coup entre deux écritures sécurisées, car cela briserait la chaîne de hash.

Note

Les hachages générés par l’algorithme SHA-256 ne sont théoriquement pas uniques, car il existe un nombre fini de valeurs possibles. Toutefois, ce nombre est exceptionnellement élevé : 2²⁵⁶, ce qui est beaucoup plus grand que le nombre d’atomes dans l’univers connu. C’est la raison pour laquelle les hachages sont considérés comme uniques dans la pratique.

Fonctionnalités d’inaltérabilité

Les fonctionnalités d’inaltérabilité peuvent être activées en activant l’option sécuriser les écritures enregistrées avec hash sur n’importe quel journal ou en utilisant l”assistant de sécurisation des écritures.

  • Deux indicateurs sont ajoutés à la vue formulaire de la pièce comptable. Ils indiquent si l’écriture est sécurisée ou non.

    • Un ou (icône de cadenas) à côté de l’état Lettré.

    • Une case à cocher Sécurisé dans l’onglet Autres infos.

  • Un filtre Non sécurisé est disponible sur les vues liste des pièces comptables et des écritures comptables. Il peut être utilisé pour trouver les pièces comptables lettrées qui ne sont pas encore sécurisées.

  • L’option d’ouvrir l”assistant de sécurisation des écritures est affichée dans le menu Comptabilité.

Sécuriser les écritures enregistrées avec hash

Pour activer la fonction de hachage sur un journal spécifique, aller à Comptabilité ‣ Configuration ‣ Journaux. Ouvrir un journal de ventes, d’achats ou d’opérations diverses, aller à l’onglet Paramètres avancés et activer Sécuriser les écritures enregistrées avec hash. Les journaux pour lesquels la fonctionnalité est activée sont appelés « restreints ».

Pour calculer le hash d’une écriture, Odoo récupère les écritures prédécesseurs de la chaîne (c’est-à-dire les écritures ayant le même préfixe de séquence) et les hache de manière continue depuis la dernière écriture hachée jusqu’à la nouvelle écriture à hacher.

Avertissement

Une fois qu’une écriture est enregistrée dans un journal restreint, la fonctionnalité ne peut plus être désactivée, ni aucune écriture sécurisée modifiée.

Assistant pour sécuriser les écritures

Il est également possible d’utiliser l’assistant Sécuriser les écritures pour sécuriser toutes les écritures comptables, dans tous les journaux, jusqu’à une date spécifique.

Note

L’assistant fonctionne indépendamment des paramètres du journal et des types de journaux.

Pour l’ouvrir, activer le mode développeur, aller dans Comptabilité ‣ Comptabilité, et cliquer sur Sécuriser les écritures. Si les fonctionnalités d’inalterabilité sont activées, il est également visible en dehors du mode debug.

Pour sécuriser des écritures, sélectionner une date jusqu’à laquelle toutes les écritures doivent être sécurisées et appuyer sur Sécuriser les écritures.

Avertissement

Après avoir sécurisé les écritures, il n’est plus possible de les modifier.

Note

Il peut arriver que des écritures postérieures à la date sélectionnée soient sécurisées. Ceci est possible car la chaîne de hachage correspond au préfixe de séquence, ordonné par numéro de séquence.

Télécharger le rapport

Pour télécharger le rapport de vérification de l’inaltérabilité des données, allez à Comptabilité ‣ Configuration ‣ Paramètres ‣ Analyse et cliquez sur Télécharger le rapport de vérification de l’inaltérabilité des données.

La première section du rapport est un aperçu de tous les préfixes de séquence de journal contenant des écritures hachées. Dans la colonne Restreint, il est possible de voir si un journal a l’option sécuriser les écritures comptabilisées avec hachage activée (V) ou non (X). La colonne Vérifier indique si toutes les écritures sont correctement hachées.

Configuration du rapport pour deux journaux

La deuxième section donne un résultat plus détaillé de la vérification de la cohérence des données pour chaque préfixe de séquence de journal haché. Il est possible de visualiser la première écriture hachée et son hachage correspondant, ainsi que la dernière écriture hachée et son hachage correspondant.

Rapport de contrôle de cohérence des données pour un journal