LogoLogo
Go to Syntho.AI
French (AI Translated)
French (AI Translated)
  • Welcome to Syntho
  • Vue d'ensemble
    • About Syntho
    • Get started
      • Introduction to data generation methods
      • Use Case: AI-generated synthetic data
      • Use Case: AI-generated synthetic time series data
      • Use Case: Database de-identification
    • Frequently asked questions
  • Setup Workspaces
    • View workspaces
    • Create a workspace
      • Connect to a database
        • PostgreSQL
        • MySQL / MariaDB
        • Oracle
        • Microsoft SQL Server
        • DB2
        • Databricks
        • Hive
        • SAP Sybase
        • Azure Data Lake Storage (ADLS)
        • Amazon Simple Storage Service (S3)
    • Edit a workspace
    • Delete a workspace
    • Share a workspace
    • Transfer workspace ownership
  • Configurer une tâche de génération de données
    • Configure table settings
    • Configure column settings
      • AI-powered generation
        • Sequence model
          • Prepare your sequence data
      • Mockers
        • Consistent mapping
        • Supported languages
      • Duplicate
      • Exclude
      • Hashing
      • Calculated columns
      • Primary Key / Foreign Key
    • Manage personally identifiable information (PII)
      • Discover and de-identify PII columns
        • Identify PII columns manually
        • Automatic PII discovery with PII scanner
      • Remove columns from PII list
      • Automatic PII discovery and de-identification in free text columns
      • Supported PII & PHI entities
    • Manage foreign keys
      • Foreign key inheritance
      • Add virtual foreign keys
        • Add virtual foreign keys
        • Use foreign key scanner
        • Import foreign keys via JSON
        • Export foreign keys via JSON
      • Delete foreign keys
      • Circular foreign key references
    • Validate and Synchronize workspace
    • View and adjust generation settings
    • Table relationships
      • Verify foreign keys
      • Synthesize individual tables with automatic key matching
      • De-identify PII columns
  • Déployer Syntho
    • Introduction
      • Syntho architecture
      • Requirements
        • Requirements for Docker deployments
        • Requirements for Kubernetes deployments
      • Access Docker images
        • Using internet
        • Without internet
    • Deploy Syntho using Docker
      • Preparations
      • Deploy using Docker Compose
      • Run the application
      • Manually saving logs
    • Deploy Syntho using Kubernetes
      • Preparations
      • Deploy Ray using Helm
        • Troubleshooting
      • Deploy Syntho using Helm
      • Validate the deployment
      • Troubleshooting
      • Upgrading the applications
    • Manage users and access
      • Single Sign-On (SSO) in Azure
      • Manage admin users
      • Manage non-admin users
    • Logs and monitoring
  • Sous-ensemble
    • What is subsetting
    • Verify foreign keys
    • Configure subsetting
  • Syntho API
    • Syntho REST API
Powered by GitBook
On this page
  • Default Hashing Approaches by Data Type
  • Considerations

Was this helpful?

  1. Configurer une tâche de génération de données
  2. Configure column settings

Hashing

Syntho beta feature

Actuellement, le hachage n'est disponible que pour les clés, mais il peut désormais être étendu aux colonnes ordinaires. Cette nouvelle fonctionnalité est introduite dans une nouvelle catégorie principale de la méthode de génération. L'approche de hachage par défaut est spécifiée pour chaque type de données, avec des considérations spécifiques pour les clés et les colonnes régulières.

Pour utiliser la nouvelle fonctionnalité de hachage pour les colonnes régulières, procédez comme suit :

  1. Naviguez jusqu'à Column Settings dans l'interface de gestion de votre base de données.

  2. Sous l'onglet Generation Method, sélectionner Hashing pour activer la fonctionnalité de hachage pour la colonne sélectionnée.

  3. Choisissez le type de données approprié pour la colonne et assurez-vous que les paramètres s'alignent sur les approches de hachage par défaut spécifiées ci-dessus :

    • Pour Discrete ValuesL'algorithme de chiffrement Hasty Pudding sera utilisé.

    • Pour Categorical ValuesLe cryptage préservant la transmission (FPE) à l'aide de l'algorithme FF3 sera appliqué.

    • Pour Datetime Valuesun décalage aléatoire sera ajouté.

    • Pour UUIDsles valeurs correspondront systématiquement aux nouveaux UUID.

  4. Enregistrez les paramètres et poursuivez le processus de génération ou de transformation des données.

Default Hashing Approaches by Data Type

  1. Discrete Values:

    • Algorithme : Chiffre Hasty Pudding.

    • Comportement : Une correspondance 1 à 1 est créée entre toutes les valeurs discrètes d'une plage. Cela permet de faire correspondre de manière cohérente les valeurs de la source à de nouvelles valeurs hachées.

    • Plage : La plage de valeurs de repli se situe dans la plage autorisée pour un entier de 32 bits, mais la plage réelle dépend du type de données et de la prise en charge de la base de données.

      • Minimum de repli : -2,147,486,647

      • Maximum de repli : -2 147 486 647 2,147,486,647

    • Limitation : Les nombres négatifs seront toujours convertis en nombres négatifs et les nombres positifs en nombres positifs. Une variable interne code le signe des nombres, en utilisant un bit supplémentaire pour le signe, en prenant la valeur absolue et, après le hachage, en multipliant par -1 si le nombre d'origine était négatif. Notez que 0 n'est jamais haché.

  2. Categorical Values:

    • Algorithme : Forward Preserving Encryption (FPE) utilisant l'algorithme FF3.

    • Référence : [Algorithme FF3] (https://pypi.org/project/ff3/)

    • Note : Le nombre minimum de caractères dépend de la taille de l'alphabet utilisé, ce qui donne généralement un minimum de 4 caractères.

  3. Datetime Values:

    • Méthode : Ajouter un décalage aléatoire à la valeur originale.

  4. UUIDs:

    • Méthode : Faire correspondre de manière cohérente un nouvel UUID.

Considerations

  • Les valeurs de hachage dépendent de la valeur globale de la graine, ce qui signifie qu'elles changeront si la graine est modifiée.

  • Le suréchantillonnage n'est pas autorisé pour le hachage et la duplication lorsqu'il est défini sur une colonne de clés. Cette restriction ne s'applique pas aux colonnes ordinaires.

Ordering and Indexing Considerations

Pour garantir un classement précis, il est essentiel que l'application dispose d'un index ou d'une clé primaire dans la table source. En l'absence de ces éléments, l'application effectue par défaut un tri basé sur la première colonne de la table. Toutefois, si la première colonne contient des valeurs dupliquées, l'ordre ne peut être garanti, car il repose sur l'algorithme de tri de la base de données pour traiter les valeurs dupliquées. L'ajout d'un index à la table source résoudra ce problème.

Il est important de noter que l'utilisation du mappage cohérent dans une table sans clés primaires ou index définis peut donner des résultats inattendus. Dans ce cas, l'application utilise la première colonne pour le tri, qui peut ne pas contenir de valeurs uniques, ce qui conduit à des résultats non déterministes.

En exposant le hachage pour les colonnes régulières, les utilisateurs bénéficient d'une plus grande flexibilité dans le traitement des données, garantissant la cohérence et la sécurité des différents types de données tout en respectant les contraintes et les comportements spécifiés.

PreviousExcludeNextCalculated columns

Last updated 10 months ago

Was this helpful?