5 min de lecture
Chiffrement au repos activé par défaut pour toutes les bases de données
Le chiffrement au repos est maintenant activé par défaut pour toutes les bases de données

Le chiffrement au repos (Encryption at Rest) était disponible à la demande via le support depuis quelques mois. Nous avons récemment décidé de l’activer par défaut pour toutes les nouvelles bases de données.
Dans cet article, nous expliquons ce qu’est le chiffrement au repos et pourquoi il est essentiel pour votre activité. Nous verrons également comment nous l’avons implémenté chez Scalingo et pourquoi nous avons choisi de l’activer par défaut pour tous nos clients.
La sécurité des données de vos bases de données est une priorité absolue pour nous. Les accès aux bases sont systématiquement chiffrés via TLS lorsqu’ils proviennent de l’extérieur du datacenter Scalingo, et peuvent également être imposés au sein même de notre infrastructure. Les identifiants d’accès sont générés aléatoirement avec des mots de passe robustes. Les communications entre les membres d’un cluster de bases de données sont elles aussi chiffrées par défaut.
Bien entendu, les sauvegardes sont chiffrées et stockées en externe. De plus, notre fournisseur d’infrastructure garantit contractuellement l’effacement complet des données lors des opérations de maintenance sur les disques.
Le chiffrement au repos vient compléter cet ensemble de mesures comme une protection supplémentaire.
Qu’est-ce que le chiffrement au repos ?
Le chiffrement au repos consiste à chiffrer les données d’une base lorsqu’elles sont stockées sur disque. Lorsqu’il est activé, les données enregistrées sont illisibles pour toute personne ayant un accès physique au support de stockage.
Son objectif est de protéger les données contre un attaquant cherchant à accéder physiquement au matériel. Dans un tel scénario, un disque dur pourrait être compromis lors d’une opération de maintenance, permettant à un tiers de lire les données.
Avec le chiffrement au repos, les données sont chiffrées avant d’être écrites sur le disque. Sans accès aux clés de chiffrement, il devient pratiquement impossible d’en extraire des informations exploitables.
C’est pour cette raison que nous avons développé cette fonctionnalité pour certains de nos clients ayant des exigences de sécurité particulièrement élevées.
Implémentation chez Scalingo
Certains types de bases de données proposent nativement le chiffrement au repos (par exemple PostgreSQL ou MongoDB avec le moteur de stockage WiredTiger). Toutefois, ces solutions sont spécifiques à certaines technologies, alors que notre objectif était de proposer cette fonctionnalité pour toutes les bases de données supportées sur la plateforme.
Nous avons donc choisi de nous appuyer sur une fonctionnalité du noyau Linux permettant de chiffrer les données au niveau du disque : dm-crypt.
Ce sous-système, disponible depuis la version 2.6 de Linux (2003), utilise l’infrastructure device mapper pour exposer des volumes de stockage dont les opérations de lecture et d’écriture sont automatiquement chiffrées et déchiffrées de manière transparente.
Ces volumes sont appelés partitions chiffrées LUKS (Linux Unified Key Setup) et sont généralement manipulés via l’outil en ligne de commande cryptsetup.
Par ailleurs, les processeurs utilisés dans notre infrastructure (Intel Xeon E5) disposent d’instructions matérielles dédiées au chiffrement. Celles-ci sont exploitées automatiquement par Linux afin d’optimiser les performances.
L’algorithme utilisé est aes-xts-plain64, avec une clé de 256 bits et un hachage en SHA-256. Cette méthode est reconnue comme sûre et standard dans l’industrie.
Pour limiter les risques, chaque instance de base de données possède sa propre clé de chiffrement. Ainsi, compromettre une clé ne permet pas d’accéder aux données d’une autre base.
Les clés sont stockées dans une base elle-même chiffrée et protégée par authentification.
Impact sur les performances
Avant de généraliser cette fonctionnalité, il était essentiel de mesurer son impact sur les performances applicatives et sur l’infrastructure. Nous avons mené plusieurs expérimentations afin d’évaluer précisément cet impact.
Expériences bas niveau
Nous avons d’abord mesuré l’impact du chiffrement sur des opérations simples de lecture et d’écriture, sans passer par une base de données.
Pour cela, nous avons utilisé l’outil dd afin de comparer les performances sur des volumes chiffrés et non chiffrés.
Chaque test a été répété 15 fois pour garantir la fiabilité des résultats.
Nous avons observé une différence de performance comprise entre 0 % et 2,8 %. Dans certains cas, les écritures sur volume chiffré étaient même légèrement plus rapides.
Expériences haut niveau
Nous avons ensuite étudié l’impact avec une base de données, afin d’évaluer le comportement en conditions réelles.
Nous avons utilisé MongoDB et PostgreSQL avec les outils YCSB et pgbench, permettant de simuler des charges en lecture seule et en lecture/écriture.
Chaque test a été exécuté 10 fois, sur des sessions d’environ une heure.
Les résultats sont cohérents avec les tests bas niveau : l’écart de performance reste modéré, entre 4 % et 9 %.
Nous avons également mesuré l’impact sur la consommation de ressources.
Seule l’utilisation CPU est légèrement plus élevée, avec une augmentation d’environ 3,7 % lors d’opérations sur des volumes chiffrés.
Conclusion : activation par défaut
L’impact du chiffrement au repos sur les performances reste limité au regard des bénéfices en matière de sécurité et de protection des données.
Nous avons donc décidé de l’activer par défaut pour toutes les nouvelles bases de données.
Ce changement est effectif depuis le 6 janvier 2019.
Pour les bases créées avant cette date, le chiffrement au repos peut être activé à la demande via le chat support intégré au dashboard ou par email à support@scalingo.com.
L’activation nécessite une courte interruption de service, allant de quelques secondes à quelques minutes selon le volume de données.
Photo par Chris Barbalis sur Unsplash

Yann Klis
Yann KLIS a fondé Scalingo en 2015 avec son associé Léo Unbekandt avec la vision de proposer une plateforme cloud d'hébergement web, véritable alternative européenne et souveraine aux géants américains. Aujourd'hui Scalingo héberge plusieurs milliers d'applications web déployées par des clients du monde entier ! L'objectif de Scalingo est de devenir la plateforme cloud de référence pour les développeurs web en Europe. Auparavant, il a fondé Novelys, un studio de développement spécialisé dans la technologie Ruby on Rails.
Restez informé
Recevez des articles et des mises à jour de la plateforme dans votre boîte de réception.
Prêt à déployer en toute confiance ?
Découvrez des déploiements sans temps d'arrêt, une mise à l'échelle automatique intelligente et une infrastructure entièrement gérée. Commencez à déployer vos applications sur Scalingo dès aujourd'hui.
Aucune carte de crédit requise • Déployez en quelques minutes • Annulez à tout moment





