Question

Doublons possibles:

  1. Les meilleures pratiques pour la prise et le stockage de crédit informations sur la carte avec PHP
  2. Enregistrement des détails de carte de crédit
  3. Stockage de carte de crédit d'information

Je dois stocker des numéros de carte de crédit dans un site e-commerce. Je ne veux pas stocker tout le numéro de carte de crédit, car cela serait très risqué. Je voudrais stocker au moins les cinq premiers chiffres afin que je puisse identifier plus tard l'institution financière qui a émis la carte. Idéalement, je voudrais stocker autant du nombre de crédit que je peux en toute sécurité, pour aider tout futur références croisées etc.

Combien de chiffres, et quels chiffres particuliers, puis-je stocker en toute sécurité?

Par exemple, j'imagine que ce ne serait pas assez sûr:

5555 5555 555* 4444

Parce que vous pouvez calculer le chiffre manquant.

De même, ce serait sans danger, mais pas aussi utile:

5555 5*** **** ****

Y at-il un modèle bien accepté pour stocker les numéros de crédit partiel?

Était-ce utile?

La solution

La carte de paiement standard indique que la sécurité des données si vous gérez les données des titulaires de cartes, vous êtes soumis aux contraintes de la norme PCI DSS (ce qui est très complet et un défi pour se conformer). Si vous souhaitez stocker une partie d'un numéro de carte, et ne veulent pas avoir à faire face à la norme, alors vous devez vous assurer que) vous stockez Pas plus que les 6 premiers et 4 derniers chiffres ; b) vous ne stockez jamais, traitent ou transmettent plus que cela. Cela signifie que la troncature doit être effectuée avant que les données entre votre contrôle.

Étant donné que vous parlez d'un site de commerce électronique, je pense que vous aurez à traiter plus tôt ou plus tard PCI DSS (car si vous ne prenez pas plein PANs, vous ne pouvez pas traiter les transactions). De façon réaliste, alors, vous devez éviter de stocker plus que les 6 premiers et 4 derniers chiffres d'un PAN; la norme ne puis pas « soins » au sujet de ces données, et vous pouvez le stocker sous quelque forme que bon vous semble. Si vous stockez, par exemple, les 7 premiers chiffres, puis Exigence 3 des coups de pied standard dans (et vous commencez à avoir à comprendre vraiment la gestion des clés de cryptage).

J'espère que c'est d'utilisation.

Autres conseils

Mars 2013 Modifier :
Une ressource très pertinente est le PCI Security Standards Council , une organisation fondée en 2006 par cinq des plus grandes marques de cartes de crédit global (AMEX, Visa, MasterCard, JCB international et Discovery) et qui est l'autorité de facto sur les questions de sécurité pour l'industrie des cartes de paiement (PCI).
Cette organisation publie notamment le PCI Data Security standard , actuellement dans sa version 2.0 édition qui couvre des questions telles que la gestion des numéros de carte de crédit complète ou partielle. Ce document est disponible, mais si librement nécessite une simple inscription et la reconnaissance des conditions de licence.

Ce qui suit est l'original, c. 2009 réponse, la plupart du temps correct, mais apocryphe .
est de stocker les 4 derniers chiffres , car cela peut être utilisé pour aider la confirmation à la clientèle qui de son / ses cartes de crédit ont été utilisées, une pratique courante (légale ou non, je ne sais pas) pour un particulier transaction.

Sans améliorer de manière significative les chances d'une personne malveillante deviner le numéro complet, on peut stocker les 4 premiers chiffres s qui sont représentatifs de l'institution financière qui a émis la carte, comme mentionné dans la question.

Ne pas, sauf beaucoup plus de chiffres que ces 8 chiffres parce que sinon, compte tenu de la LUHN- 10 checksum , vous pouvez fournir assez d'informations pour faire deviner le numéro complet plus plausible (si elle est encore relativement difficile, même avec un aperçu de la série utilisée par un émetteur donné, dans une période de temps donnée, mais devrait être prudent ...)

Pour tout cela plus sûr, techniquement et juridiquement, vous pouvez envisager uniquement le stockage de ces informations si le client permet explicitement . Vous devriez également considérer masquer cette info avec un hachage simple pour stocker dans la base de données .

En outre, ce que vous pouvez / devez stocker suite à une transaction particulière, est l'ID de transaction fourni par le processeur de carte de crédit, au moment où le transacton est soumis. Cet ID est la clé qui permet de localiser la plupart (tous?) De l'info que vous même avez besoin, y aurait-il un problème avec une transaction donnée. Ce type d'information peut généralement être interrogé à partir d'un site Web sécurisé maintenu par la société de traitement, ainsi que des rapports globaux qui peuvent inclure un regroupement par type de carte (Amex, Visa ...) si c'est la raison pour laquelle vous envisagez de stocker les quatre premiers.

Si vous n'avez pas besoin de stocker tout le numéro de carte de crédit, pourquoi avez-vous besoin de stocker du tout? Si vous souhaitez enregistrer l'institution financière qui a émis la carte, pourquoi ne pas stocker l'institution financière qui a émis la carte?

Le modèle est accepté ne les stocke pas du tout.

Dans certaines juridictions, vous risquez d'enfreindre la loi en les stockant ou une partie d'entre eux.

Vous pouvez à la place, stocker un hachage à sens unique (et donc irrécupérables) du numéro de carte de crédit.

Les sociétés de cartes de crédit ont une norme pour cela. Vous trouverez probablement enterré quelque part dans les conditions de service de votre processeur de paiement que vous obéirez à cette norme. Il répond à vous questions. Vous pouvez trouver la norme

Votre question spécifique de réponse 3.3 s du document PCI / DSS. Six premiers et quatre derniers sont max pour l'affichage. reçus client (papier?) sont plus restrictives. Ceux qui ont un besoin de savoir legitimiate peut voir les données de cartes complètes.

Ma recommandation est de contacter votre fournisseur marchand et voir quelles options sont disponibles pour vous. Un certain nombre de passerelles de transaction modernes ont des caractéristiques de « voûte » où des informations sensibles sont stockées au niveau du fournisseur et vous simplement référence clients par un numéro de jeton quand vous voulez les facturer ou vérifier les informations de compte.

Dans le même ordre des lignes utilisent des jetons spécifiques transaction peuvent être utilisés pour référencer les données nécessaires stockées sur le système de fournisseurs.

Cependant, je ne peux pas insister assez sur l'importance de la lecture et la compréhension de la norme PCI DSS. Il suffit de barques à fond plat stockage sécurisé ne vous obsolve par magie d'être soumis à des exigences de conformité PCI !! Ceci est possible uniquement lorsque votre système ne touche jamais les données de cartes complètes.

Au Canada, la manière habituelle est de stocker les 4 premiers chiffres (pour identifier l'institution financière) et les 4 derniers chiffres pour identifier la carte de crédit.

Mais assurez-vous que vous ne l'avez pas enfreint aucune loi.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top