기술 포스트
텍스트를 출력하는 칩카드 리더기
이전 포스트에서 저희 Augusta (사진 참조)를 소개한 바 있으며, QuickChip 및 M/Chip Fast를 탑재한 Augusta가 특허 출원 중이라는 점도 언급했습니다. 그런데 왜일까요? 왜 특허를 출원했을까요? 대체 어떤 부분이 특허를 받을 만한 걸까요? QuickChip은 공개 도메인 아닌가요? (실제로 그렇습니다. Visa는 특허 출원을 검토했지만 결국 하지 않기로 결정했습니다.) 그렇다면 QuickChip 및 M/Chip Fast를 탑재한 Augusta의 무엇이 그토록 혁신적이라는 걸까요?
한마디로 요약하자면, 여기서 가장 핵심적인 혁신은 Augusta가 시중에서 유일하게 키보드 모드만으로 EMV 거래를 완전히 처리할 수 있는 칩카드 리더기 라는 점입니다. 즉, 리더기에서 문자 데이터를 직접 읽어오는 가상 단말기 앱과 같은 브라우저 기반 애플리케이션에도 손쉽게 적용할 수 있습니다.
다시 말해, 칩카드 — 그리고 일반 ASCII 데이터를 반환받을 수 있습니다.
이것은 매우 중요한 의미를 지닙니다.
완전히 키보드 모드로 작동하는 MagStripe 리더는 어렵지 않게 찾을 수 있습니다. 여기서 말하는 리더의 종류는 이렇습니다. 장치를 노트북이나 태블릿에 연결하고 카드를 스와이프하면, 커서가 위치한 화면 어디에나 트랙 데이터가 마법처럼 나타나는 방식입니다. 이것이 바로 키보드 모드입니다. 이 방식이 작동하는 이유는 카드 리더가 직렬 장치임에도 불구하고 호스트 컴퓨터를 속여 마치 실제 키보드인 것처럼 인식하게 만들기 때문입니다!
그러나 칩 카드 리더는 이야기가 다릅니다.
대부분의 칩 카드 리더는 작동하기 위해 전용 소프트웨어가 필요합니다. 호스트 애플리케이션이 카드의 칩과 직접 통신해야 하기 때문입니다(바로 그것이 핵심이죠!). 그런데 칩은 오직 이진수(바이너리)만 이해합니다. 실제로 호스트 앱과 칩 간의 통신은 암호그램, 특수 핸드셰이크, 이벤트 알림 등을 포함하는 상당히 저수준의 복잡한 과정이며, "카드를 제거해 주세요"라는 안내가 나오기까지 호스트 컴퓨터를 10~20초 동안 붙잡아두게 됩니다.
Augusta가 등장하기 전까지, 칩 카드와의 통신은 호스트 컴퓨터(또는 전자 금전 등록기)에서 극도로 복잡하고 연산 집약적인 소프트웨어를 필요로 하는 매우 까다로운 작업이었습니다. Augusta를 사용하면 카드 데이터를 추출하기 위한 별도의 소프트웨어가 필요하지 않습니다. 카드를 삽입(딥)하면 리더가 프로그래머의 별도 개입 없이 ASCII 키스트로크 데이터를 자동으로 출력하며, 이 데이터는 텍스트를 처리할 수 있는 모든 앱에서 바로 활용할 수 있습니다. 실제로 Windows 컴퓨터에서 메모장을 열고, Augusta를 USB 포트에 연결한 다음 카드를 삽입하면, 칩 카드 데이터가 텍스트 형태로 메모장에 나타나는 것을 직접 확인할 수 있습니다. 이것이 Augusta를 차별화하는 핵심이며, 특허를 받을 수 있는 기술이고, 현재 시장 어디에서도 찾아볼 수 없는 기능입니다.
데이터는 어떤 형태일까요? 아시다시피(혹은 모르실 수도 있지만), EMV 거래는 TLV 데이터를 생성합니다. TLV는 Tag(태그), Length(길이), Value(값)를 의미하며, 데이터를 쉽게 파싱할 수 있는 형식으로 표현하는 방법입니다. 예를 들어, 카드를 삽입한 후 Augusta에서 반환되는 TLV 중 하나는 5F 24 03 18 01 31과 같은 형태일 수 있습니다. "5F24" 부분이 태그로, EMVCo에서 정의한 유효 기간(Expiration Date)의 표준 산업 태그입니다. 태그 뒤의 '03'은 길이를 나타내며, 데이터가 3바이트임을 의미합니다. 데이터 바이트는 18 01 31로, 카드 유효 기간(YY-MM-DD)이 2018년 1월 31일임을 나타냅니다.
Augusta를 사용하면 EMV 거래 결과로 TLV 데이터를 포함한 텍스트 스트림이 생성됩니다. 정확한 데이터는 상황에 따라 달라지지만, 대부분의 경우 약 40개의 TLV가 반환됩니다. 여기에는 영수증 출력에 필요한 정보(예: 태그 DFEF5D의 마스킹된 트랙 데이터, 태그 5F24의 유효 기간, 태그 5F20의 카드 소지자 이름 등)와 함께 암호화된 PAN(태그 5A), 암호그램 정보 데이터(9F27) 등 다양한 정보가 포함됩니다. 실제 데이터 블록은 다음과 같은 형태입니다(명확성을 위해 바이트 값 사이에 공백을 삽입하였으며, 태그는 파란색, 길이는 주황색, 데이터는 갈색으로 표시됩니다).
DF EE 25 02 00 02 DF EE 26 02 20 00 DF EE 12 0A 62 99 49 00 00 00 00 00 00 63 DF EF 5D 10 51 28 CC CC CC CC 28 77 D1 80 16 22 CC CC CC CC 57 18 03 8C CC 33 FB 1D 32 99 5F B6 F8 65 EA FE 54 69 90 55 A6 BC 18 A2 0D 50 DF EF 5B 08 51 28 CC CC CC CC 28 77 5A 10 44 B6 48 D3 53 D0 4B E1 DB DB B7 56 5D 4F D0 21 5F 20 1A 2F 43 48 49 50 20 54 45 53 54 20 43 41 52 44 20 20 20 20 20 20 20 20 20 20 20 5F 24 03 18 01 31 5F 25 03 15 01 01 5F 28 02 08 40 5F 2A 02 08 40 5F 2D 02 65 6E 5F 34 01 00 5F 57 01 00 50 10 44 65 62 69 74 20 4D 61 73 74 65 72 43 61 72 64 4F 07 A0 00 00 00 04 10 10 82 02 39 00 84 07 A0 00 00 00 04 10 10 8C 21 9F 02 06 9F 03 06 9F 1A 02 95 05 5F 2A 02 9A 03 9C 01 9F 37 04 9F 35 01 9F 45 02 9F 4C 08 9F 34 03 8D 0C 91 0A 8A 02 95 05 9F 37 04 9F 4C 08 8E 12 00 00 00 00 00 00 00 00 42 03 44 03 41 03 1E 03 1F 03 9C 01 00 9F 02 06 00 00 00 00 00 00 9F 03 06 00 00 00 00 00 00 9F 10 12 01 10 20 00 05 62 04 00 00 00 00 00 00 00 00 00 00 FF 9F 13 00 9F 20 00 9F 26 08 D2 EC AA C1 36 04 A7 22 9F 27 01 00 9F 34 03 1E 03 00 9F 36 02 01 A9 9F 37 04 9A 4D 21 88 9F 38 00 9F 39 01 07 9F 4D 00 9F 4F 00 95 05 04 00 00 00 00 9B 02 E8 00 8A 02 5A 33 99 00 9F 5B 00
가상 단말기 앱은 이 데이터를 적절히 필터링하여 일부는 화면에 표시하고, 나머지는 처리를 위해 게이트웨이 또는 백엔드로 전송합니다.
대부분의 칩 카드 리더기를 사용하는 개발자들은 트랜잭션의 정확한 시점에 필요한 TLV 데이터를 획득하기 위해 상당한 수고를 들여야 합니다. 그러나 Augusta를 사용하면 필요한 모든 데이터가 하나의 문자 스트림으로 한꺼번에 제공됩니다. 일반적인 JavaScript 키 입력 이벤트 핸들러만으로 웹 페이지에서 데이터를 바로 받아 원하는 방식으로 처리할 수 있습니다. USB 연결을 열 필요도 없고(드라이버가 필요 없는 리더기입니다!), 펌웨어 명령을 실행할 필요도 없으며, 카드와의 복잡한 상호작용을 조율할 필요도 없습니다. Augusta의 인증된 L2 Common Kernel이 모든 복잡한 처리를 대신 수행한 후, 트랜잭션 종료 시 데이터를 한꺼번에 전달합니다. 이것이 바로 Quick Chip과 M/Chip Fast가 가능하게 하는 방식입니다. 이는 개발자 측의 작업 부담이 거의 없는 EMV 처리 방식입니다. (물론 약간의 과장이 있습니다. 소소한 작업은 필요합니다. 하지만 일반적인 EMV에 비하면 비교할 수 없을 만큼 간단합니다!)
가맹점 입장에서는 그야말로 꿈같은 솔루션입니다. Augusta를 연결하고 웹 브라우저를 실행하기만 하면 바로 사용할 준비가 완료됩니다. 별도의 소프트웨어 설치가 필요하지 않습니다.
결제 앱 개발자, 시스템 통합업체, ISV, 또는 가상 단말기 전문가로서 EMV를 빠르게 도입해야 한다면, ID TECH의 특허 출원 중인 Augusta보다 더 쉽고 빠른 시작 방법은 없습니다. 복잡한 핸드셰이크 없이 키보드 장치로 간편하게 EMV를 구현하는 가장 쉬운 방법입니다.
더 자세한 내용이 궁금하신가요? 모든 기술적 세부 사항을 담은 백서를 무료로 즉시 다운로드하실 수 있습니다(별도 등록 불필요). 여기. 또는 아래 번호로 전화하셔서 데모 장치를 요청하세요:
1-800-984-1010
물론, Augusta는 AES 또는 TDES 암호화(또는 암호화 없음!), 혹은 FPE를 DUKPT 키 관리 방식과 함께 지원합니다. 원하신다면 SRED 버전도 있습니다. 또한 저희 짧은 동영상도 꼭 확인해 보세요! 그리고 Knowledge Base에서 Augusta 관련 다운로드 자료도 모두 살펴보세요.
