15개 숫자 특정공식 따라…마지막 16번째 숫자 산출

# A씨는 인터넷으로 카드 결제를 하다 문득 궁금한 점이 떠올랐다.

결제창에서 카드사를 선택하고 카드번호만 입력했을 뿐인데 카드번호가 잘못됐다며 오류창이 뜬 것이다.

카드 결제 대행업체는 어떻게 이름과 주민등록번호도 없이 카드번호만으로 카드번호의 진위를 확인할 수 있었을까? 

정답은 카드번호 속에 있다.

검증값이라고 불리는 카드번호 맨 뒷번호로 카드번호의 진위를 파악할 수 있다. 


카드번호는 통상 16자리다. 앞의 15개의 숫자를 특정한 공식에 대입해 16번째 자리의 숫자를 산출하게 되는 것이다.

즉 앞에 15개 숫자가 동일한데 마지막 자리만 다른 카드번호는 존재하지 않는다.

인터넷 카드 결제 대행업체에서도 이 검증값을 통해 카드사에 데이터를 전송하기 전 카드번호의 진위 여부를 스스로 판단할 수 있다.

이렇게 일련의 숫자 중 하나를 검증값으로 둬서 위변조를 차단하는 방식은 널리 쓰이고 있다.

주민등록번호도 맨 마지막 숫자가 검증값이다. 은행의 통장 계좌번호도 마찬가지다.

카드번호의 검증값을 구하는 공식은 생각보다 간단하다. ‘1234-5678-9012-3456’이라는 카드번호가 있다고 하자.

홀수번째 숫자 1·3·5·7·9·1·3·5에 2를 곱한다.

5, 7, 9처럼 2를 곱해 두 자리수가 나오면 각 자릿수의 합해 5, 9로 환산한다.

이렇게 해서 나온 숫자를 짝수번째 숫자와 모두 합한다.

‘2+2+6+4+1+6+5+8+9+0+2+2+6+4+1+6’와 같은 방식으로 더해 나온 숫자가 10의 배수여야 한다.

이 카드번호의 경우 64가 나오기 때문에 잘못된 카드번호로 인식된다.


카드 뒷면 서명란에 새겨진 CVV(또는 CVC) 번호도 임의로 숫자가 아니라 검증번호다.

해당 카드번호를 입력하면 반드시 특정한 CVV 번호가 산출돼야 한다.

CVV 번호 산출공식은 보안 문제로 일반에 알려져 있지 않다. 


검증번호 뿐만 아니라 카드번호 16자리에는 모두 나름의 의미가 있다.

제일 첫 번째 숫자는 해외 결제 브랜드를 나타낸다.

4로 시작되는 카드 번호는 비자, 5는 마스터, 3은 JCB나 다이너스, 6은 중국의 은련 카드다.

9는 세계 공통적으로 국내 전용카드에만 사용되는 번호다. 

그 다음 숫자들은 발급 카드사, 개인·법인카드, 회원 등급 등을 나타낸다.


예를 들어 신한카드에서 발급하는 국내 전용 카드의 경우 9410-61은 고객 등급이 실버이고, 9410-62는 골드 등급이다. 

비씨카드에서 발급하는 은행계 카드는 5, 6번째 자리의 숫자가 발급 은행을 나타낸다.

대부분의 비씨카드가 4481(체크카드), 4906(신용카드), 5387, 5388로 시작한다.

그 다음 숫자가 03이면 기업은행, 20이면 우리은행, 23이면 SC제일은행, 27이면 씨티은행에서 발급받은 카드다.


[출처] 이투데이: http://www.etoday.co.kr/news/section/newsview.php?TM=news&SM=0203&idxno=444326#csidx12d414b0eff52ae8cea6d8d3845d83b 



※ 추가

카드번호는 14, 15자리도 있지만 대부분 4자리씩 총 16자리로 구성되어 있고, 카드번호 맨 앞자리는 카드 유형을 나타낸다. 

VISA는 4, Master는 5, 국내 전용은 9로 시작한다.

그 다음 5자리 숫자는 국가, 발행기관(은행`카드사) 등을 나타낸다.

카드번호 앞 6자리 숫자를 통틀어 BIN(Bank Identifier Number) 번호라 부른다.

BIN 번호를 보면 카드회사, 일반`골드`개인`법인 등의 여부를 확인할 수 있다고 한다.

7~15번째 숫자는 카드발급 순서에 따라 부여되는 일련번호다.


그리고 16번째 마지막 숫자는 위조 및 오류를 방지하기 위한 검증번호다.

검증번호를 산출하는 방식은 카드사마다 다를 수 있지만 일반적으로 다음과 같다.

▶1~15자리 숫자에 2와 1을 반복적으로 곱한다(곱한 수가 10을 초과하면 두 숫자를 더한다)

▶곱셈을 해서 각 값을 더한다

▶합을 10으로 나눠 나머지를 구한다

▶10에서 나머지를 빼면 검증번호다.  


카드 뒷면에도 CVV 또는 CVC로 불리는 숫자가 표기돼 있다.

보통 두 개가 있는데 서명란에 1개, 마그네틱 선안에 1개가 기록돼 있다.

서명란에 있는 것은 인터넷으로 물품을 구매할 때 카드 소유 여부를 확인하기 위해 주로 사용된다.

이 밖에 신용카드에는 위`변조를 막기 위한 다양한 방지책들이 들어 있다. 가장 쉽게 발견할 수 있는 것이 홀로그램이다.

비자에는 새, 마스터에는 세계전도가 그려져 있다.  또한 국내 전용카드는 각 카드사의 홀로그램이 새겨져 있다.

마그네틱 선 안에 있는 CVV 값도 해독이 사실상 불가능하기 때문에 카드 위`변조를 방지한다.

최근게시물 보기