문제

가능한 중복:

  1. PHP로 신용카드 정보를 수집하고 저장하는 모범 사례
  2. 신용카드 정보 저장
  3. 신용카드 정보 저장

전자상거래 사이트에 신용카드 번호를 저장해야 합니다.전체 신용카드 번호를 저장할 생각은 없습니다. 이는 매우 위험할 수 있기 때문입니다.나중에 카드를 발급한 금융기관을 확인할 수 있도록 처음 5자리 이상을 저장하고 싶습니다.이상적으로는 향후 상호 참조 등을 돕기 위해 가능한 한 많은 신용 번호를 저장하고 싶습니다.

몇 개의 숫자와 어떤 특정 숫자를 안전하게 저장할 수 있나요?

예를 들어, 나는 이것이 충분히 안전하지 않을 것이라고 생각합니다:

5555 5555 555* 4444

빠진 숫자를 계산할 수 있기 때문입니다.

마찬가지로, 이는 안전하지만 유용하지는 않습니다.

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

부분 학점 번호를 저장하는 데 널리 사용되는 패턴이 있습니까?

도움이 되었습니까?

해결책

지불 카드 데이터 보안 표준에는 카드 소지자 데이터를 처리하는 경우 PCI DSS의 제약(매우 포괄적이고 준수하기 어려운)이 적용된다고 명시되어 있습니다.카드 번호의 일부를 저장하고 표준을 처리할 필요가 없다면 다음 사항을 확인해야 합니다. 처음 6자리와 마지막 4자리 숫자를 초과하면 안 됩니다.;b) 귀하는 이보다 더 많은 것을 저장, 처리 또는 전송하지 않습니다.이는 데이터가 컨트롤에 입력되기 전에 잘림이 수행되어야 함을 의미합니다.

전자상거래 사이트에 대해 말씀하시는 것을 보면 조만간 PCI DSS를 처리해야 할 것 같습니다(전체 PAN을 사용하지 않으면 거래를 처리할 수 없기 때문입니다).그렇다면 현실적으로 PAN의 처음 6자리와 마지막 4자리 이상을 저장하지 않아야 합니다.그러면 표준은 이 데이터에 대해 '관심'하지 않으며 귀하는 적합하다고 판단되는 어떤 형식으로든 이를 저장할 수 있습니다.예를 들어 처음 7자리를 저장하면 표준의 요구 사항 3이 시작됩니다(그리고 암호화의 키 관리를 실제로 이해해야 합니다).

이것이 유용하기를 바랍니다.

다른 팁

2013년 3월 편집:
매우 적절한 리소스는 다음과 같습니다. PCI 보안 표준 위원회, 는 2006년 5대 글로벌 신용 카드 브랜드(AmEx, Visa, MasterCard, JCB International 및 Discovery)가 설립한 조직이자 결제 카드 산업(PCI)의 보안 문제에 대한 사실상의 권위자입니다.
이 조직은 특히 다음을 출판합니다. PCI 데이터 보안 표준, 현재 전체 또는 부분 신용 카드 번호 관리와 같은 문제를 다루는 버전 2.0 버전입니다.이 문서는 무료로 사용할 수 있지만 간단한 등록과 라이센스 조건 승인이 필요합니다.

다음은 원본입니다. c.2009년 답변, 대부분 정확하지만 출처가 확실하지 않음.
일반적인 관행(합법적인지 아닌지는 모르겠습니다)은 다음과 같습니다. 마지막 4자리를 저장하세요, 이는 고객이 특정 거래에 어떤 신용카드가 사용되었는지 확인하는 데 도움이 될 수 있기 때문입니다.

악의적인 사람이 전체 숫자를 추측할 확률을 크게 높이지 않고도 다음과 같은 작업을 수행할 수 있습니다. 처음 4자리를 저장하세요질문에 언급된 바와 같이 카드를 발급한 금융 기관의 대표자입니다.

이 8자리보다 더 많은 숫자를 저장하지 마십시오. 그렇지 않으면 LUHN-10 체크섬, 전체 숫자를 더 그럴듯하게 추측할 수 있도록 충분한 정보를 제공할 수 있습니다(주어진 기간 동안 특정 발급자가 사용한 시리즈의 통찰이 있더라도 여전히 상대적으로 어려운 경우에는 주의해야 합니다...)

이 모든 것을 기술적으로나 법적으로 더 안전하게 만들기 위해 다음을 고려할 수 있습니다. 고객이 명시적으로 허용한 경우에만 해당 정보를 저장합니다..또한 이 정보를 다음과 같이 마스킹하는 것도 고려해야 합니다. 데이터베이스에 저장하기 위한 간단한 해시.

또한 특정 거래 후에 저장할 수 있거나 저장해야 하는 것은 다음과 같습니다. 거래 ID 거래가 제출될 때 신용카드 처리업체가 제공합니다.이 ID는 특정 거래에 문제가 있을 경우 필요한 대부분(모두?)의 정보를 찾을 수 있는 키입니다.이러한 유형의 정보는 일반적으로 처리 회사가 관리하는 보안 웹 사이트에서 쿼리할 수 있으며, 저장을 고려하는 경우 카드 유형(Amex, Visa...)별로 그룹화를 포함할 수 있는 일부 집계 보고서도 함께 제공됩니다. 처음 4개.

전체 신용 카드 번호를 저장할 필요가 없다면 왜 저장해야합니까? 카드를 발행 한 금융 기관을 저장하려면 카드를 발행 한 금융 기관을 저장하지 않겠습니까?

허용 된 패턴은 전혀 저장하지 않습니다.

특정 관할 구역에서는 법을 저장하여 법을 위반할 수 있습니다.

대신 신용 카드 번호의 일방 통행 (따라서 복귀 할 수없는) 해시를 저장할 수 있습니다.

신용 카드 회사는 이에 대한 표준을 가지고 있습니다. 이 표준에 순종 할 지불 프로세서의 서비스 조건에 어딘가에 묻혀있을 것입니다. 질문에 답변합니다. 표준을 찾을 수 있습니다 여기

특정 질문은 PCI/DSS 문서의 SEC 3.3에서 답변됩니다. 처음 6 개와 마지막 4 개는 디스플레이를 위해 최대입니다. 고객 (종이?) 영수증은 더 제한적입니다. 합법적 인 사람들은 알아야 할 사람들은 전체 카드 데이터를 볼 수 있습니다.

제 권장 사항은 판매자에게 연락하여 어떤 옵션을 사용할 수 있는지 확인하는 것이 좋습니다. 다수의 최신 트랜잭션 게이트웨이에는 민감한 정보가 제공 업체에 저장되는 "Vault"기능이 있으며 청구하거나 계정 정보를 확인하려면 토큰 번호로 고객을 참조하십시오.

동일한 라인을 따라 거래 특정 토큰을 사용하여 제공자 시스템에 저장된 필요한 데이터를 참조하는 데 사용될 수 있습니다.

그러나 PCI DSS를 읽고 이해하는 것의 중요성을 충분히 강조 할 수 없습니다. 단순히 보안 스토리지를 펀칭하는 것은 PCI 준수 요구 사항에 따라 마술처럼 관찰되지 않습니다 !! 시스템이 전체 카드 데이터를 터치하지 않을 때만 가능합니다.

캐나다에서는 일반적인 방법은 신용 카드를 식별하기 위해 첫 4 자리 (금융 기관을 식별)와 4 자리를 저장하는 것입니다.

그러나 당신이 법을 어 기지 않았는지 확인하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top