본 발명에서 사용되는 기술적 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 발명에서 사용되는 기술적 용어는 본 발명에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 발명에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.
또한, 본 발명에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 발명에서 "구성된다" 또는 "포함한다" 등의 용어는 발명에 기재된 여러 구성 요소들 또는 여러 단계를 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
또한, 본 발명에서 사용되는 제 1, 제 2 등과 같이 서수를 포함하는 용어는 구성 요소들을 설명하는데 사용될 수 있지만, 구성 요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성 요소는 제 2 구성 요소로 명명될 수 있고, 유사하게 제 2 구성 요소도 제 1 구성 요소로 명명될 수 있다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.
도 1은 본 발명의 실시예에 따른 환자 인증 및 카드 정보를 이용한 전자 결제 시스템(10)의 구성을 나타낸 블록도이다.
도 1에 도시된 바와 같이, 환자 인증 및 카드 정보를 이용한 전자 결제 시스템(10)은 단말(100), 가맹점 단말(200), 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600) 및 카드사 서버(700)로 구성된다. 도 1에 도시된 전자 결제 시스템(10)의 구성 요소 모두가 필수 구성 요소인 것은 아니며, 도 1에 도시된 구성 요소보다 많은 구성 요소에 의해 전자 결제 시스템(10)이 구현될 수도 있고, 그보다 적은 구성 요소에 의해서도 전자 결제 시스템(10)이 구현될 수도 있다.
단말(100)에서 카드 정보, 병록번호 등을 가맹점 단말(200)에 미리 등록하고, 가맹점 단말(200)에서 단말(100)과 관련한 카드 정보의 유효성을 확인한 후, 인증 서버(300)로부터 제공되는 해당 단말(100) 및 가맹점 단말(200)과 관련한 자동 결제 토큰을 저장한다. 이후, 가맹점 단말(200)에 자동 결제가 등록된 단말(100)의 고객이 해당 가맹점 단말(200)에서 진료, 치료 등의 서비스를 제공받은 경우, 가맹점 단말(200)은 해당 단말(200)과 관련하여 미리 저장된 자동 결제 토큰을 통해 승인 서버(500)에 결제를 요청한다. 이후, 승인 서버(500)는 거래 관리 서버(400) 및 승인 서버(500)에 분산하여 저장된 카드 정보를 확인한 후, 확인된 카드 정보를 이용하여 카드사 서버(700)와 연동하여 결제 기능을 수행한다.
단말(100)은 스마트 폰(Smart Phone), 휴대 단말기(Portable Terminal), 이동 단말기(Mobile Terminal), 개인 정보 단말기(Personal Digital Assistant: PDA), PMP(Portable Multimedia Player) 단말기, 텔레매틱스(Telematics) 단말기, 내비게이션(Navigation) 단말기, 개인용 컴퓨터(Personal Computer), 노트북 컴퓨터, 슬레이트 PC(Slate PC), 태블릿 PC(Tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(Wearable Device, 예를 들어, 워치형 단말기(Smartwatch), 글래스형 단말기(Smart Glass), HMD(Head Mounted Display) 등 포함), 와이브로(Wibro) 단말기, IPTV(Internet Protocol Television) 단말기, 스마트 TV, 디지털방송용 단말기, 텔레비전(Television), 3D 텔레비전, 홈 시어터(Home Theater) 시스템, AVN(Audio Video Navigation) 단말기, A/V(Audio/Video) 시스템, 플렉시블 단말기(Flexible Terminal) 등과 같은 다양한 단말기에 적용될 수 있다.
도 2에 도시된 바와 같이, 단말(100)은 통신부(110), 저장부(120), 표시부(130), 음성 출력부(140) 및 제어부(150)로 구성된다. 도 2에 도시된 단말(100)의 구성 요소 모두가 필수 구성 요소인 것은 아니며, 도 2에 도시된 구성 요소보다 많은 구성 요소에 의해 단말(100)이 구현될 수도 있고, 그보다 적은 구성 요소에 의해서도 단말(100)이 구현될 수도 있다.
통신부(110)는 유/무선 통신망을 통해 내부의 임의의 구성 요소 또는 외부의 임의의 적어도 하나의 단말기와 통신 연결한다. 이때, 상기 외부의 임의의 단말기는 가맹점 단말(200), 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동통신사 서버(600), 카드사 서버(700) 등을 포함할 수 있다. 여기서, 무선 인터넷 기술로는 무선랜(Wireless LAN: WLAN), DLNA(Digital Living Network Alliance), 와이브로(Wireless Broadband: Wibro), 와이맥스(World Interoperability for Microwave Access: Wimax), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), IEEE 802.16, 롱 텀 에볼루션(Long Term Evolution: LTE), LTE-A(Long Term Evolution-Advanced), 광대역 무선 이동 통신 서비스(Wireless Mobile Broadband Service: WMBS) 등이 있으며, 통신부(110)는 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 데이터를 송수신하게 된다. 또한, 근거리 통신 기술로는 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association: IrDA), UWB(Ultra Wideband), 지그비(ZigBee), 인접 자장 통신(Near Field Communication: NFC), 초음파 통신(Ultra Sound Communication: USC), 가시광 통신(Visible Light Communication: VLC), 와이 파이(Wi-Fi), 와이 파이 다이렉트(Wi-Fi Direct) 등이 포함될 수 있다. 또한, 유선 통신 기술로는 전력선 통신(Power Line Communication: PLC), USB 통신, 이더넷(Ethernet), 시리얼 통신(serial communication), 광/동축 케이블 등이 포함될 수 있다.
또한, 통신부(110)는 유니버설 시리얼 버스(Universal Serial Bus: USB)를 통해 임의의 단말과 정보를 상호 전송할 수 있다.
또한, 통신부(110)는 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 가맹점 단말(200), 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동통신사 서버(600), 카드사 서버(700) 등과 무선 신호를 송수신한다.
또한, 통신부(110)는 이동 통신사 서버(600)로부터 전송되는 해당 단말(100)의 식별 정보에 대응하는 단말(100)에 인증 번호를 수신하고, 사용자 입력에 따른 인증 번호를 이동 통신사 서버(600)에 전송한다.
저장부(120)(또는 메모리)는 다양한 사용자 인터페이스(User Interface: UI), 그래픽 사용자 인터페이스(Graphic User Interface: GUI) 등을 저장한다.
또한, 저장부(120)는 단말(100)이 동작하는데 필요한 데이터와 프로그램 등을 저장한다.
즉, 저장부(120)는 단말(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션), 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는 무선 통신을 통해 외부 서비스 제공 장치로부터 다운로드 될 수 있다. 또한 이러한 응용 프로그램 중 적어도 일부는 기본적인 기능(예를 들어, 전화 착신, 발신 기능, 메시지 수신, 발신 기능)을 위하여 출고 당시부터 단말(100)에 존재할 수 있다. 한편, 응용 프로그램은 저장부(120)에 저장되고, 단말(100)에 설치되어, 제어부(150)에 의하여 동작(또는 기능)을 수행하도록 구동될 수 있다.
또한, 저장부(120)는 플래시 메모리 타입(Flash Memory Type), 하드 디스크 타입(Hard Disk Type), 멀티미디어 카드 마이크로 타입(Multimedia Card Micro Type), 카드 타입의 메모리(예를 들면, SD 또는 XD 메모리 등), 자기 메모리, 자기 디스크, 광디스크, 램(Random Access Memory: RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory: ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory) 중 적어도 하나의 저장매체를 포함할 수 있다. 또한, 단말(100)은 인터넷(internet)상에서 저장부(120)의 저장 기능을 수행하는 웹 스토리지(web storage)를 운영하거나, 또는 웹 스토리지와 관련되어 동작할 수도 있다.
또한, 저장부(120)는 통신부(110)를 통해 수신된 해당 단말(100)의 식별 정보에 대응하는 단말(100)에 인증 번호 등을 저장한다.
표시부(130)는 제어부(150)의 제어에 의해 저장부(120)에 저장된 사용자 인터페이스 및/또는 그래픽 사용자 인터페이스를 이용하여 다양한 메뉴 화면 등과 같은 다양한 콘텐츠를 표시할 수 있다. 여기서, 표시부(130)에 표시되는 콘텐츠는 다양한 텍스트 또는 이미지 데이터(각종 정보 데이터 포함)와 아이콘, 리스트 메뉴, 콤보 박스 등의 데이터를 포함하는 메뉴 화면 등을 포함한다. 또한, 표시부(130)는 터치 스크린 일 수 있다.
또한, 표시부(130)는 액정 디스플레이(Liquid Crystal Display: LCD), 박막 트랜지스터 액정 디스플레이(Thin Film Transistor-Liquid Crystal Display: TFT LCD), 유기 발광 다이오드(Organic Light-Emitting Diode: OLED), 플렉시블 디스플레이(Flexible Display), 3차원 디스플레이(3D Display), 전자잉크 디스플레이(e-ink display), LED(Light Emitting Diode) 중에서 적어도 하나를 포함할 수 있다.
또한, 표시부(130)는 입체영상을 표시하는 입체 디스플레이부로서 구성될 수 있다.
입체 디스플레이부에는 스테레오스코픽 방식(안경 방식), 오토 스테레오스코픽 방식(무안경 방식), 프로젝션 방식(홀로그래픽 방식) 등의 3차원 디스플레이 방식이 적용될 수 있다.
또한, 표시부(130)는 제어부(150)의 제어에 의해 통신부(110)를 통해 수신된 해당 단말(100)의 식별 정보에 대응하는 단말(100)에 인증 번호 등을 표시한다.
음성 출력부(140)는 제어부(150)에 의해 소정 신호 처리된 신호에 포함된 음성 정보를 출력한다. 여기서, 음성 출력부(140)에는 리시버(receiver), 스피커(speaker), 버저(buzzer) 등이 포함될 수 있다.
또한, 음성 출력부(140)는 제어부(150)에 의해 생성된 안내 음성을 출력한다.
또한, 음성 출력부(140)는 제어부(150)에 의해 통신부(110)를 통해 수신된 당 단말(100)의 식별 정보에 대응하는 단말(100)에 인증 번호에 대응하는 음성 정보를 출력한다.
제어부(150)는 단말(100)의 전반적인 제어 기능을 실행한다. 이때, 상기 제어부는 프로세서(processor) 또는 엔진(engine)일 수 있다.
또한, 제어부(150)는 저장부(120)에 저장된 프로그램 및 데이터를 이용하여 전반적인 제어 기능을 실행한다. 제어부(150)는 RAM, ROM, CPU, GPU, 버스를 포함할 수 있으며, RAM, ROM, CPU, GPU 등은 버스를 통해 서로 연결될 수 있다. CPU는 저장부(120)에 액세스하여, 저장부(120)에 저장된 O/S를 이용하여 부팅을 수행할 수 있으며, 저장부(120)에 저장된 각종 프로그램, 콘텐츠, 데이터 등을 이용하여 다양한 동작을 수행할 수 있다.
또한, 단말(100)에서 가맹점 단말(200)에 회원 등록하고자 하는 경우, 제어부(150)는 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보 등을 통신부(110)를 통해 가맹점 단말(200)에 전송한다. 여기서, 단말(100)의 식별 정보는 MDN(Mobile Directory Number), 모바일 IP, 모바일 MAC, Sim(subscriber identity module: 가입자 식별 모듈) 카드 고유정보, 시리얼번호 등을 포함한다. 또한, 카드 정보는 신용 카드 번호(또는 체크 카드 번호), 유효 기간, 카드 인증값(card authentication value: CAV)(또는 카드 유효성 검증값) 등을 포함한다. 또한, 비밀 번호 정보는 해당 단말(100)과 관련한 PIN 정보(또는 PIN 번호)(personal identification number)를 포함한다.
또한, 제어부(150)는 이동 통신사 서버(600)와의 연동에 의해 본인 인증 절차를 수행한다.
즉, 제어부(150)는 앞서 전송된 단말(100)의 식별 정보 등에 응답하여 이동 통신사 서버(600)로부터 전송되는 인증 번호를 통신부(110)를 통해 수신한다.
또한, 제어부(150)는 수신된 인증 번호를 표시부(130) 및/또는 음성 출력부(140)를 통해 출력한다.
또한, 제어부(150)는 사용자 입력에 따른 인증 번호(예를 들어 표시부(130)에 표시되는 인증 번호를 확인한 사용자가 해당 인증 번호에 대응하는 동일한 인증 번호를 사용자 입력에 따라 입력하는 경우의 해당 인증 번호)를 통신부(110)를 통해 이동 통신사 서버(600)에 전송한다.
또한, 제어부(150)는 이동 통신사 서버(600)에 전송한 인증 번호에 따라 해당 이동 통신사 서버(600)에서의 본인 인증 수행에 따라, 이동 통신사 서버(600)로부터 전송되는 인증 결과를 통신부(110)를 통해 수신한다.
또한, 제어부(150)는 수신된 인증 결과를 표시부(130) 및/또는 음성 출력부(140)를 통해 출력한다. 여기서, 인증 결과는 해당 단말(100)에 대한 본인 인증 실패 정보, 본인 인증 성공 정보 등을 포함한다.
또한, 단말(100)에서 해당 단말(100)의 고객이 치료 중인 의료 기관에서의 자동 결제를 등록하고자 하는 경우, 제어부(150)는 자동 결제 동의 정보, 카드 정보, 비밀 번호 정보, 고객 병록번호, 단말(100)의 식별 정보 등을 통신부(110)를 통해 가맹점 단말(200)에 전송한다. 여기서, 자동 결제 동의 정보는 해당 가맹점 단말(200)과 관련한 의료 기관에 대해서 해당 단말(100)의 사용자가 결제할 금액이 발생하는 경우 해당 결제 금액에 대한 자동 결제에 동의함을 나타내는 정보 등을 포함한다.
또한, 단말(100)에서 특정 진료 항목에 대한 결제 금액과 관련해서 결제를 요청하고자 하는 경우, 제어부(150)는 결제 요청 신호, 단말(100)의 식별 정보 등을 통신부(110)를 통해 가맹점 단말(200)에 전송한다.
또한, 제어부(150)는 인증 서버(300)와의 연동에 의해 본인 인증 기능(또는 본인 인증 절차)를 수행한다.
즉, 제어부(150)는 앞서 전송된 결제 요청 신호 등에 응답하여 인증 서버(300)로부터 전송되는 PIN 정보 입력 요청 정보를 통신부(110)를 통해 수신한다.
또한, 제어부(150)는 사용자 입력에 따른 PIN 정보를 통신부(110)를 통해 인증 서버(300)에 전송한다.
또한, 제어부(150)는 인증 서버(300)에 전송한 PIN 정보에 따라 해당 인증 서버(300)에서의 본인 인증 수행에 따라, 인증 서버(300)로부터 전송되는 인증 결과를 통신부(110)를 통해 수신한다.
또한, 제어부(150)는 수신된 인증 결과를 표시부(130) 및/또는 음성 출력부(140)를 통해 출력한다. 여기서, 인증 결과는 해당 단말(100)에 대한 본인 인증 실패 정보, 본인 인증 성공 정보 등을 포함한다.
또한, 결제 승인 요청 정보에 따라 승인 서버(500)와 카드사 서버(700)의 연동에 의해 단말(100)과 관련한 카드 정보를 이용하여 결제 기능이 수행된 경우, 제어부(150)는 승인 서버(500) 또는 카드사 서버(700)로부터 전송되는 승인 서버(500)와 카드사 서버(700)의 연동에 의해 수행된 결제 기능 수행 결과를 통신부(110)를 통해 수신한다. 여기서, 결제 기능 수행 결과는 진료 항목별 결제 금액, 가맹점 단말(200)의 식별 정보, 가맹점명, 가맹점 연락처, 가맹점 위치 정보, 총 합계 금액, 결제 일자 및 시각 정보, 결제 카드 종류 등을 포함한다.
또한, 가맹점 단말(200)에서의 자동 결제 요청에 따라 승인 서버(500)와 카드사 서버(700)의 연동에 의해 단말(100)과 관련한 카드 정보를 이용하여 자동 결제 기능이 수행된 경우, 제어부(150)는 승인 서버(500) 또는 카드사 서버(700)로부터 전송되는 승인 서버(500)와 카드사 서버(700)의 연동에 의해 수행된 자동 결제에 따른 결제 기능 수행 결과를 통신부(110)를 통해 수신한다.
또한, 제어부(150)는 수신된 결제 기능 수행 결과를 표시부(130) 및/또는 음성 출력부(140)를 통해 출력한다.
또한, 단말(100)은 해당 단말(100)에 연결되는 모든 외부기기와의 인터페이스 역할을 수행하는 인터페이스부(미도시)를 더 포함할 수도 있다. 예를 들면, 인터페이스부는 유/무선 헤드셋 포트(Headset Port), 외부 충전기 포트, 유/무선 데이터 포트, 메모리 카드(Memory Card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트, 오디오 I/O(Input/Output) 포트, 비디오 I/O(Input/Output) 포트, 이어폰 포트 등으로 구성될 수 있다. 여기서, 식별 모듈은 단말(100)의 사용 권한을 인증하기 위한 각종 정보를 저장한 칩으로서, 사용자 인증 모듈(User Identity Module: UIM), 가입자 인증 모듈(Subscriber Identity Module: SIM), 범용 사용자 인증 모듈(Universal Subscriber Identity Module: USIM) 등을 포함할 수 있다. 또한, 식별 모듈이 구비된 장치는 스마트 카드(Smart Card) 형식으로 제작될 수 있다. 따라서, 식별 모듈은 포트를 통하여 단말(100)과 연결될 수 있다. 이와 같은 인터페이스부는 외부 기기로부터 데이터를 수신하거나 전원을 수신하여 단말(100) 내부의 각 구성 요소에 전달하거나 단말(100) 내부의 데이터가 외부 기기로 전송되도록 한다.
또한, 인터페이스부는 단말(100)이 외부 크래들(Cradle)과 연결될 때 크래들로부터의 전원이 해당 단말(100)에 공급되는 통로가 되거나, 사용자에 의해 크래들에서 입력되는 각종 명령 신호가 해당 단말(100)로 전달되는 통로가 될 수 있다. 크래들로부터 입력되는 각종 명령 신호 또는 해당 전원은 단말(100)이 크래들에 정확히 장착되었음을 인지하기 위한 신호로 동작될 수도 있다.
또한, 단말(100)은 사용자에 의한 버튼 조작 또는 임의의 기능 선택에 따른 신호를 수신하거나, 디스플레이되는 화면을 터치/스크롤하는 등의 조작에 의해 생성된 명령 또는 제어 신호를 수신하기 위한 입력부(미도시)를 더 포함할 수도 있다.
입력부는 사용자의 명령, 선택, 데이터, 정보 중에서 적어도 하나를 입력 받기 위한 수단으로서, 숫자 또는 문자 정보를 입력 받고 다양한 기능을 설정하기 위한 다수의 입력키 및 기능키를 포함할 수 있다.
또한, 입력부는 키 패드(Key Pad), 돔 스위치 (Dome Switch), 터치 패드(정압/정전), 터치 스크린(Touch Screen), 조그 휠, 조그 스위치, 조그 셔틀(Jog Shuttle), 마우스(mouse), 스타일러스 펜(Stylus Pen), 터치 펜(Touch Pen) 등의 다양한 장치가 사용될 수 있다. 특히, 표시부가 터치스크린 형태로 형성된 경우, 입력의 기능 중 일부 또는 전부는 표시부를 통해 수행될 수 있다.
또한, 단말(100)의 각각의 구성부(또는 모듈)는 단말(100)의 메모리(또는 저장부) 상에 저장되는 소프트웨어일 수 있다. 메모리는 단말(100)의 내부 메모리 일 수 있으며, 외장형 메모리 또는 다른 형태의 저장 장치일 수 있다. 또한, 메모리는 비휘발성 메모리일 수 있다. 메모리 상에 저장되는 소프트웨어는 실행 시 단말(100)로 하여금 특정 동작을 수행하도록 하는 명령어 세트를 포함할 수 있다.
가맹점 단말(200)은 단말(100), 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600), 카드사 서버(700) 등과 통신한다. 여기서, 가맹점 단말(200)은 카드 정보를 이용하여 결제 기능을 수행하며, 의료 기관(또는 의료 기관 내의 수납시설) 내에 구비(또는 설치/구성)될 수 있다.
또한, 가맹점 단말(200)은 단말(100)에 포함된 통신부(110), 저장부(120), 표시부(130), 음성 출력부(140) 및 제어부(150)에 대한 구성을 포함할 수 있다.
또한, 가맹점 단말(200)은 단말(100)로부터 전송되는 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보 등을 수신한다.
또한, 가맹점 단말(200)은 수신된 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등을 인증 서버(300)에 전송한다. 여기서, 가맹점 단말(200)의 식별 정보는 가맹점 단말(200)과 관련한 고유 아이디 등을 포함한다.
또한, 가맹점 단말(200)은 앞서 전송된 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등에 응답하여 인증 서버(300)로부터 전송되는 인증 결과, 승인 응답 정보 등을 수신한다. 여기서, 인증 결과는 해당 단말(100)에 대한 본인 인증 실패 정보, 본인 인증 성공 정보 등을 포함한다. 또한, 승인 응답 정보는 해당 단말(100)과 관련한 카드 정보가 유효한지 여부를 나타내는 카드 정보 유효 상태 정보 또는 카드 정보 비유효 상태 정보 등을 포함한다.
또한, 가맹점 단말(200)은 수신된 인증 결과, 승인 응답 정보 등을 표시한다.
또한, 가맹점 단말(200)은 단말(100)로부터 전송되는 자동 결제 동의 정보, 카드 정보, 비밀 번호 정보, 고객 병록번호, 단말(100)의 식별 정보 등을 수신한다.
또한, 가맹점 단말(200)은 수신된 자동 결제 동의 정보, 카드 정보, 비밀 번호 정보, 고객 병록번호 등을 근거로 해당 단말(100)에 대한 자동 결제 등록 요청을 인증 서버(300)에 요청한다.
즉, 가맹점 단말(200)은 수신된 자동 결제 동의 정보에 대응하는 고객(또는 단말(100))에 대한 자동 결제 등록 요청 정보를 인증 서버(300)에 전송한다. 여기서, 자동 결제 등록 요청 정보는 자동 결제 동의 정보, 카드 정보, 비밀 번호 정보, 고객 병록번호, 단말(100)의 식별 정보, 가맹점 단말(200)의 식별 정보 등을 포함한다.
또한, 가맹점 단말(200)은 앞서 전송된 자동 결제 등록 요청 정보에 응답하여 인증 서버(300)로부터 전송되는 자동 결제 토큰을 수신한다.
또한, 가맹점 단말(200)은 수신된 자동 결제 토큰, 자동 결제 동의 정보, 고객 병록번호, 단말(100)의 식별 정보 등을 연동하여 저장한다.
또한, 가맹점 단말(200)은 단말(100)로부터 전송되는 결제 요청 신호, 단말(100)의 식별 정보 등을 수신한다.
또한, 가맹점 단말(200)은 수신된 결제 요청 신호를 근거로 인증 서버(300)에 결제 인증 요청 정보를 전송한다. 여기서, 결제 인증 요청 정보는 결제 요청 신호, 단말(100)의 식별 정보, 가맹점 단말(200)의 식별 정보 등을 포함한다.
또한, 가맹점 단말(200)은 앞서 전송된 결제 인증 요청 정보에 응답하여 인증 서버(300)로부터 전송되는 결제 인증 토큰을 수신한다.
또한, 가맹점 단말(200)은 수신된 결제 인증 토큰을 근거로 승인 서버(500)에 결제 승인 요청 정보를 전송한다. 여기서, 결제 승인 요청 정보는 결제 인증 토큰, 진료 항목별 결제 금액, 단말(100)의 식별 정보, 가맹점 단말(200)의 식별 정보, 가맹점명, 가맹점 연락처, 가맹점 위치 정보 등을 포함한다.
또한, 단말(100)과 관련한 고객(또는 환자)이 가맹점 단말(200)과 관련한 의료 기관에서 제공하는 서비스(예를 들어 진료, 치료 등 포함)를 제공받아 결제 항목(또는 결제해야할 금액)이 발생한 경우, 가맹점 단말(200)은 해당 결제 항목에 대응하는 결제 금액에 대해서 해당 고객과 관련하여 미리 저장된 자동 결제 토큰을 근거로 승인 서버(500)에 자동 승인 요청 정보를 전송한다. 여기서, 자동 승인 요청 정보는 해당 단말(100)과 관련한 자동 결제 토큰, 진료 항목별 결제 금액, 단말(100)의 식별 정보, 가맹점 단말(200)의 식별 정보, 가맹점명, 가맹점 연락처, 가맹점 위치 정보 등을 포함한다.
인증 서버(300)는 단말(100), 가맹점 단말(200), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600), 카드사 서버(700) 등과 통신한다.
또한, 인증 서버(300)는 단말(100)에 포함된 통신부(110), 저장부(120), 표시부(130), 음성 출력부(140) 및 제어부(150)에 대한 구성을 포함할 수 있다.
또한, 인증 서버(300)는 가맹점 단말(200)로부터 전송되는 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등을 수신한다.
또한, 인증 서버(300)는 수신된 단말(100)의 식별 정보에 대한 인증을 이동 통신사 서버(600)에 요청한다.
즉, 인증 서버(300)는 수신된 단말(100)의 식별 정보에 대응하는 고객(또는 단말(100))에 대한 인증 요청 정보를 이동 통신사 서버(600)에 전송한다.
또한, 인증 서버(300)는 앞서 전송된 단말(100)의 식별 정보에 대한 인증 요청 정보에 응답하여 이동 통신사 서버(600)로부터 전송되는 인증 결과를 수신한다.
또한, 인증 서버(300)는 수신된 인증 결과를 앞서 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등을 전송한 해당 가맹점 단말(200)에 전송한다.
또한, 인증 서버(300)는 외부 인증 서버(미도시)와 연동하여 해당 단말(100)에 대한 인증 기능을 수행할 수도 있다.
또한, 인증 서버(300)는 인증 결과를 근거로 해당 단말(100)의 식별 정보와 관련한 카드 정보에 대한 유효성 확인을 거래 관리 서버(400)에 요청한다.
즉, 앞서 수신된 인증 결과를 근거로 본인 인증에 성공한 경우, 인증 서버(300)는 해당 단말(100)의 식별 정보와 관련한 카드 정보에 대한 유효성을 확인하기 위해서 해당 단말(100)과 관련한 카드 정보를 포함하는 유효성 확인 요청 정보(또는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보)를 거래 관리 서버(400)에 전송한다.
또한, 인증 서버(300)는 앞서 전송된 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 인증 서버(300)는 수신된 승인 응답 정보를 앞서 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등을 전송한 해당 가맹점 단말(200)에 전송한다.
또한, 인증 서버(300)는 가맹점 단말(200)로부터 전송되는 자동 결제 등록 요청 정보를 수신한다.
또한, 인증 서버(300)는 수신된 자동 결제 등록 요청 정보를 근거로 해당 단말(100)의 식별 정보와 관련한 카드 정보에 대한 유효성 확인을 거래 관리 서버(400)에 요청한다.
즉, 인증 서버(300)는 해당 단말(100)의 식별 정보와 관련한 카드 정보에 대한 유효성을 확인하기 위해서 해당 단말(100)과 관련한 카드 정보를 포함하는 유효성 확인 요청 정보(또는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보)를 거래 관리 서버(400)에 전송한다.
또한, 인증 서버(300)는 앞서 전송된 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 인증 서버(300)는 수신된 승인 응답 정보를 근거로 승인 응답 정보에 카드 정보가 유효한 상태임을 나타낸 정보가 포함된 상태인 경우, 해당 단말(100)(또는 해당 단말(100)의 고객/사용자/환자)과 관련하여 추후 발생할 결제 금액에 대해서 자동 결제를 위한 자동 결제 토큰(또는 해당 단말(100) 및 가맹점 단말(200)과 관련한 자동 결제 토큰)을 가맹점 단말(200)에 전송한다.
또한, 수신된 승인 응답 정보를 근거로 해당 단말(100)과 관련한 카드 정보가 유효한 경우, 인증 서버(300)는 거래 관리 서버(400)와 연동하여 카드 정보 내의 일부(예를 들어 카드 인증값 중 일부)를 암호화하여 저장한다.
즉, 인증 서버(300)는 거래 관리 서버(400)와 연동하여, 거래 관리 서버(400)에 의해 분리된 제 2 파트에 대응하는 제 1-2 카드 인증값을 거래 관리 서버(400)에 의해 생성된 제 1 정보 블록을 이용하여 HSM(hardware security module)을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장한다. 이때, 인증 서버(300)는 제 1-2 카드 인증값을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 생성된 제 1 정보 블록을 이용하여 HSM을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장할 수도 있다.
또한, 인증 서버(300)는 가맹점 단말(200)로부터 전송되는 결제 인증 요청 정보를 수신한다.
또한, 인증 서버(300)는 수신된 결제 인증 요청 정보를 근거로 해당 단말(100)과의 연동에 의해 본인 인증 기능을 수행한다.
즉, 인증 서버(300)는 수신된 결제 인증 요청 정보를 근거로 해당 단말(100)의 식별 정보에 대응하는 단말(100)에 PIN 정보 입력 요청 정보를 전송한다. 또한, 인증 서버(300)는 단말(100)에 전송된 PIN 정보 입력 요청 정보에 응답하여 단말(100)로부터 전송되는 PIN 정보를 수신한다. 또한, 인증 서버(300)는 수신된 PIN 정보와 해당 단말(100)과 관련하여 미리 발급된 PIN 정보를 확인하여 해당 단말(100)에 대한 인증 기능을 수행한다.
또한, 본인 인증 기능 수행 결과를 근거로 본인 인증 기능이 실패한 경우, 인증 서버(300)는 인증 기능이 실패하였음을 나타내는 정보를 단말(100), 가맹점 단말(200)에 전송한다.
또한, 본인 인증 기능 수행 결과를 근거로 본인 인증 기능이 정상적으로 수행된 경우, 인증 서버(300)는 결제 인증 토큰을 가맹점 단말(200)에 전송한다.
또한, 인증 서버(300)는 거래 관리 서버(400)와 연동하여 해당 단말(100)과 관련한 카드 정보의 요청 정보를 근거로 가맹점에 의한 거래 위변조를 막기 위해 거래 연동 일회용 인증 값(또는 거래 인증값)에 대한 검증 절차를 수행한다.
또한, 연동 일회용 인증 값에 대한 검증이 실패한 경우, 인증 서버(300)(또는 거래 관리 서버(400))는 연동 일회용 인증 값에 대한 검증이 실패하였음을 나타내는 정보를 승인 서버(500)에 제공한다.
또한, 연동 일회용 인증 값에 대한 검증이 성공한 경우, 인증 서버(300)는 거래 관리 서버(400)와 연동하여 해당 인증 서버(300)에 분산 저장된 카드 정보를 확인(또는 복호화)한다.
또한, 인증 서버(300)는 확인된(또는 복호화된) 카드 정보를 거래 관리 서버(400)에 제공한다.
또한, 인증 서버(300)는 거래 관리 서버(400)와 연동하여 거래 관리 서버(400)에서 수신된 해당 단말(100)과 관련한 카드 정보의 요청 정보를 근거로 해당 단말(100)에서 미리 자동 결제를 신청(또는 등록)한 가맹점 단말(200)에서 자동 결제를 요청한 상태인지 여부를 검증(또는 판단/확인/식별)하기 위해서, 해당 카드 정보의 요청 정보 내에 포함된 자동 결제 토큰에 대한 검증 절차를 수행한다.
또한, 자동 결제 토큰에 대한 검증이 실패한 경우, 인증 서버(300)(또는 거래 관리 서버(400))는 자동 결제 토큰에 대한 검증이 실패하였음을 나타내는 정보를 승인 서버(500)에 제공한다.
또한, 자동 결제 토큰에 대한 검증이 성공한 경우, 인증 서버(300)는 거래 관리 서버(400)와 연동하여 거래 관리 서버(400)와 연동하여 해당 인증 서버(300)에 분산 저장된 카드 정보를 확인(또는 복호화)한다.
또한, 인증 서버(300)는 확인된(또는 복호화된) 카드 정보를 거래 관리 서버(400)에 제공한다.
거래 관리 서버(400)는 단말(100), 가맹점 단말(200), 인증 서버(300), 승인 서버(500), 이동 통신사 서버(600), 카드사 서버(700) 등과 통신한다.
또한, 거래 관리 서버(400)는 단말(100)에 포함된 통신부(110), 저장부(120), 표시부(130), 음성 출력부(140) 및 제어부(150)에 대한 구성을 포함할 수 있다.
또한, 거래 관리 서버(400)는 인증 서버(300)로부터 전송되는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보를 수신한다.
또한, 거래 관리 서버(400)는 수신된 유효성 확인 요청 정보(또는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보)를 근거로 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인을 위해서 승인 서버(500)에 가승인을 요청한다.
즉, 거래 관리 서버(400)는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인을 위해서 승인 서버(500)에 가승인 요청 정보를 전송한다.
또한, 거래 관리 서버(400)는 앞서 전송된 가승인 요청 정보에 응답하여 승인 서버(500)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 거래 관리 서버(400)는 수신된 승인 응답 정보를 앞서 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보를 전송한 인증 서버(300)에 전송한다.
또한, 수신된 승인 응답 정보를 근거로 해당 단말(100)과 관련한 카드 정보가 유효한 경우, 거래 관리 서버(400)는 카드 정보 내의 카드 번호를 HSM을 통해 하드웨어적으로 암호화하여 저장한다. 이때, 거래 관리 서버(400)는 카드 정보 내의 카드 번호뿐만 아니라, 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호를 함께 암호화하여 저장할 수도 있다.
또한, 거래 관리 서버(400)는 카드 정보 내의 유효 기간을 HSM을 통해 하드웨어적으로 암호화하여 저장한다. 이때, 거래 관리 서버(400)는 카드 정보 내의 유효 기간을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 수신된 비밀 번호 정보를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장할 수도 있다.
또한, 거래 관리 서버(400)는 인증 서버(300)와 연동하여 앞서 수신된 비밀 번호 정보를 근거로 카드 정보 내의 카드 인증값(또는 신용카드 유효성 검증값)을 분산하고, 분산된 카드 인증값을 암호화하여 거래 관리 서버(400)와 인증 서버(300)에 각각 분산 저장한다.
즉, 거래 관리 서버(400)는 카드 인증값을 복수의 파트로 분리하고(또는 나누고), 분리된 제 1 파트에 대응하는 제 1-1 카드 인증값을 앞서 수신된 비밀 번호 정보를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장한다. 이때, 거래 관리 서버(400)는 제 1-1 카드 인증값을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 수신된 비밀 번호 정보를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장할 수도 있다.
또한, 인증 서버(300)는 거래 관리 서버(400)와 연동하여, 분리된 제 2 파트에 대응하는 제 1-2 카드 인증값을 앞서 생성된 제 1 정보 블록을 이용하여 HSM을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장한다. 이때, 인증 서버(300)는 제 1-2 카드 인증값을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 생성된 제 1 정보 블록을 이용하여 HSM을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장할 수도 있다.
또한, 거래 관리 서버(400)는 승인 서버(500)로부터 전송되는 해당 단말(100)과 관련한 카드 정보의 요청 정보를 수신한다.
또한, 거래 관리 서버(400)는 수신된 해당 단말(100)과 관련한 카드 정보의 요청 정보를 근거로 인증 서버(300)와 연동하여 가맹점에 의한 거래 위변조를 막기 위해 거래 연동 일회용 인증 값(또는 거래 인증값)에 대한 검증 절차를 수행한다.
또한, 거래 연동 일회용 인증 값에 대한 검증 절차가 실패한 경우, 거래 관리 서버(400)는 거래 연동 일회용 인증 값에 대한 검증 절차가 실패하였음을 나타내는 정보를 승인 서버(500)에 전송한다.
또한, 거래 연동 일회용 인증 값에 대한 검증 절차가 정상적으로 수행된 경우, 거래 관리 서버(400)는 인증 서버(300)와 연동하여, 거래 관리 서버(400) 및 인증 서버(300)에 분산되어 관리 중인 해당 단말(100)과 관련한 카드 정보를 확인(또는 복호화)하고, 확인된 해당 단말(100)과 관련한 카드 정보를 승인 서버(500)에 전송한다.
또한, 거래 관리 서버(400)는 수신된 해당 단말(100)과 관련한 카드 정보의 요청 정보를 근거로 해당 단말(100)에서 미리 자동 결제를 신청(또는 등록)한 가맹점 단말(200)에서 자동 결제를 요청한 상태인지 여부를 검증(또는 판단/확인/식별)하기 위해서 인증 서버(300)와 연동하여 해당 카드 정보의 요청 정보 내에 포함된 자동 결제 토큰에 대한 검증 절차를 수행한다.
또한, 검증 절차가 정상적으로 수행되지 않은 경우, 거래 관리 서버(400)는 검증 절차가 실패하였음을 나타내는 정보를 승인 서버(500)에 전송한다.
또한, 검증 절차가 정상적으로 수행된 경우, 거래 관리 서버(400)는 인증 서버(300)와 연동하여, 거래 관리 서버(400) 및 인증 서버(300)에 분산되어 관리 중인 해당 단말(100)과 관련한 카드 정보를 확인(또는 복호화)하고, 확인된 해당 단말(100)과 관련한 카드 정보를 승인 서버(500)에 전송한다.
또한, 거래 관리 서버(400)는 이상 거래 탐지 시스템 서버(Fraud Detection System Server)와 연동하여 가맹점 단말(200)에서 요청된 자동 결제 요청이 부정 거래인지 여부를 검증할 수도 있다.
또한, 가맹점 단말(200)에서 요청된 자동 결제 요청이 부정 거래인 경우, 거래 관리 서버(400)는 해당 자동 결제를 취소할 수 있다.
또한, 가맹점 단말(200)에서 요청된 자동 결제 요청이 부정 거래가 아닌 경우, 거래 관리 서버(400)는 정상적으로 자동 결제 기능을 수행할 수 있다.
승인 서버(500)는 단말(100), 가맹점 단말(200), 인증 서버(300), 거래 관리 서버(400), 이동 통신사 서버(600), 카드사 서버(700) 등과 통신한다.
또한, 승인 서버(500)는단말(100)에 포함된 통신부(110), 저장부(120), 표시부(130), 음성 출력부(140) 및 제어부(150)에 대한 구성을 포함할 수 있다.
또한, 승인 서버(500)는 거래 관리 서버(400)로부터 전송되는 가승인 요청 정보를 수신한다.
또한, 승인 서버(500)는 수신된 가승인 요청 정보를 카드사 서버(700)에 전송한다.
또한, 승인 서버(500)는 앞서 전송된 가승인 요청 정보에 응답하여 카드사 서버(700)로부터 전송되는 승인 응답 정보를 수신한다. 여기서, 승인 응답 정보는 해당 단말(100)과 관련한 카드 정보가 유효한지 여부를 나타내는 카드 정보 유효 상태 정보 또는 카드 정보 비유효 상태 정보 등을 포함한다.
또한, 승인 서버(500)는 수신된 승인 응답 정보를 거래 관리 서버(400)에 전송한다.
또한, 승인 서버(500)는 가맹점 단말(200)로부터 전송되는 결제 승인 요청 정보를 수신한다.
또한, 승인 서버(500)는 수신된 결제 승인 요청 정보를 근거로 해당 단말(100)과 관련하여 거래 관리 서버(400)와 인증 서버(300)에 분산 저장된 카드 정보를 요청하기 위해서, 해당 단말(100)과 관련한 카드 정보의 요청 정보(또는 카드 정보 요청 정보)를 거래 관리 서버(400)에 전송한다.
또한, 승인 서버(500)는 앞서 전송된 해당 단말(100)과 관련한 카드 정보의 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 해당 단말(100)과 관련한 카드 정보를 수신한다.
또한, 승인 서버(500)는 수신된 카드 정보, 결제 승인 요청 정보 등을 근거로 카드사 서버(700)와 연동하여 결제 기능을 수행한다.
또한, 승인 서버(500)는 가맹점 단말(200)로부터 전송되는 자동 승인 요청 정보를 수신한다.
또한, 승인 서버(500)는 수신된 자동 승인 요청 정보를 근거로 해당 단말(100)과 관련하여 거래 관리 서버(400)와 인증 서버(300)에 분산 저장된 카드 정보를 요청하기 위해서, 해당 단말(100)과 관련한 카드 정보의 요청 정보(또는 카드 정보 요청 정보)를 거래 관리 서버(400)에 전송한다. 여기서, 카드 정보 요청 정보는 자동 승인 요청 정보 등을 포함한다.
또한, 승인 서버(500)는 앞서 전송된 해당 단말(100)과 관련한 카드 정보의 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 해당 단말(100)과 관련한 카드 정보를 수신한다.
또한, 승인 서버(500)는 수신된 카드 정보, 자동 승인 요청 정보 등을 근거로 카드사 서버(700)와 연동하여 결제 기능을 수행한다.
또한, 승인 서버(500)는 결제 기능 수행 결과를 단말(100)에 제공한다. 여기서, 결제 기능 수행 결과는 진료 항목별 결제 금액, 가맹점 단말(200)의 식별 정보, 가맹점명, 가맹점 연락처, 가맹점 위치 정보, 총 합계 금액, 결제 일자 및 시각 정보, 결제 카드 종류 등을 포함한다.
본 발명의 실시예에서는 인증 서버(300), 거래 관리 서버(400) 및 승인 서버(500)를 분리하여 설명하고 있으나, 해당 인증 서버(300), 거래 관리 서버(400) 및 승인 서버(500)는 하나의 결제 서버(또는 결제 시스템)(미도시)로 구성할 수도 있다.
또한, 인증 서버(300), 거래 관리 서버(400) 및 승인 서버(500)가 하나의 결제 서버 내에서 구성될 경우, 결제 서버는 인증 서버(300)와 거래 관리 서버(400)에 분산되어 저장되는 해당 단말(100)과 관련한 카드 정보를 지속적으로 분산하여 저장할 수 있도록 복수의 데이터베이스(또는 복수의 저장부)(미도시)를 구성하고, 복수의 데이터베이스에 해당 단말(100)과 관련한 카드 정보를 분산하여 저장할 수 있다.
이동 통신사 서버(600)는 단말(100), 가맹점 단말(200), 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 카드사 서버(700) 등과 통신한다.
또한, 이동 통신사 서버(600)는 단말(100)에 포함된 통신부(110), 저장부(120), 표시부(130), 음성 출력부(140) 및 제어부(150)에 대한 구성을 포함할 수 있다.
또한, 이동 통신사 서버(600)는 인증 서버(300)로부터 전송되는 단말(100)의 식별 정보에 대한 인증 요청 정보를 수신한다.
또한, 이동 통신사 서버(600)는 단말(100)과의 연동에 의해 본인 인증 절차를 수행한다.
즉, 이동 통신사 서버(600)는 수신된 단말(100)의 식별 정보에 대한 인증 요청 정보를 근거로 해당 단말(100)의 식별 정보에 대응하는 단말(100)에 인증 번호를 전송한다. 또한, 이동 통신사 서버(600)는 단말(100)에 전송된 인증 번호에 응답하여 단말(100)로부터 전송되는 인증 번호를 수신한다. 또한, 이동 통신사 서버(600)는 수신된 인증 번호와 앞서 단말(100)에 전송된 인증 번호를 확인(또는 비교)하여 해당 단말(100)에 대한 인증 절차를 수행한다.
또한, 이동 통신사 서버(600)는 인증 결과를 인증 서버(300)에 전송한다. 여기서, 인증 결과는 해당 단말(100)에 대한 본인 인증 실패 정보, 본인 인증 성공 정보 등을 포함한다.
카드사 서버(700)는 단말(100), 가맹점 단말(200), 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600) 등과 통신한다.
또한, 카드사 서버(700)는 단말(100)에 포함된 통신부(110), 저장부(120), 표시부(130), 음성 출력부(140) 및 제어부(150)에 대한 구성을 포함할 수 있다.
또한, 카드사 서버(700)는 승인 서버(500)로부터 전송되는 가승인 요청 정보를 수신한다.
또한, 카드사 서버(700)는 해당 가승인 요청 정보에 포함된 카드 정보를 근거로 해당 카드 정보가 유효한지 여부를 나타내는 승인 응답 정보를 생성하고, 생성된 승인 응답 정보를 승인 서버(500)에 전송한다. 여기서, 승인 응답 정보는 해당 단말(100)과 관련한 카드 정보가 유효한지 여부를 나타내는 카드 정보 유효 상태 정보 또는 카드 정보 비유효 상태 정보 등을 포함한다.
또한, 카드사 서버(700)는 승인 서버(500)에서 수신된 카드 정보, 결제 승인 요청 정보 등을 근거로 승인 서버(500)와 연동하여 결제 기능을 수행한다.
또한, 카드사 서버(700)는 승인 서버(500)에서 수신된 카드 정보, 자동 승인 요청 정보 등을 근거로 승인 서버(500)와 연동하여 결제 기능을 수행한다.
또한, 카드사 서버(700)는 결제 기능 수행 결과를 승인 서버(500) 및/또는 단말(100)에 제공한다.
또한, 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600) 및 카드사 서버(700)는 웹 서버, 데이터베이스 서버, 프록시 서버 등의 형태로 구현될 수 있다. 또한, 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600) 및 카드사 서버(700)에는 네트워크 부하 분산 메커니즘, 내지 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600) 및 카드사 서버(700)가 인터넷 또는 다른 네트워크 상에서 동작할 수 있도록 하는 다양한 소프트웨어 중 하나 이상이 설치될 수 있으며, 이를 통해 컴퓨터화된 시스템으로 구현될 수 있다. 또한, 네트워크는 http 네트워크일 수 있으며, 전용 회선(private line), 인트라넷 또는 임의의 다른 네트워크일 수 있다. 나아가, 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600) 및 카드사 서버(700)와, 단말(100) 및/또는 가맹점 단말(200)의 연결은 데이터가 임의의 해커 또는 다른 제3자에 의한 공격을 받지 않도록 보안 네트워크로 연결될 수 있다. 또한, 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600) 및 카드사 서버(700)는 복수의 데이터베이스 서버를 포함할 수 있으며, 이러한 데이터베이스 서버가 분산 데이터베이스 서버 아키텍쳐를 비롯한 임의의 유형의 네트워크 연결을 통해 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600) 및 카드사 서버(700)와 별도로 연결되는 방식으로 구현될 수 있다.
또한, 본 발명에 따른 단말(100), 거래점 단말(200), 인증 서버(300), 거래 관리 서버(400), 승인 서버(500), 이동 통신사 서버(600) 및 카드사 서버(700)에 탑재되는 프로세서는 본 발명에 따른 방법을 실행하기 위한 프로그램 명령을 처리할 수 있다. 일 구현 예에서, 이 프로세서는 싱글 쓰레드(Single-threaded) 프로세서일 수 있으며, 다른 구현 예에서 본 프로세서는 멀티 쓰레드(Multi-threaded) 프로세서일 수 있다. 나아가 본 프로세서는 메모리 혹은 저장 장치 상에 저장된 명령을 처리하는 것이 가능하다.
이와 같이, 의료 기관을 통한 결제를 위해서, 휴대폰 가입 정보를 통해 결제하고자 하는 고객에 대한 본인 인증 과정을 수행하고, 카드 정보를 통해 해당 카드의 유효성을 확인한 후, 유효성이 확인된 카드 정보를 인증 서버와 거래 관리 서버에서 분산하여 저장할 수 있다.
또한, 이와 같이, 의료 기관을 통한 결제를 위해서 본인 인증 및 카드 정보 인증 이후, 단말로부터 결제 요청이 전송되는 경우, 가맹점 단말에서 인증 서버와, 승인 서버와, 거래 관리 서버와, 카드사 서버와의 연동에 의해 결제 기능을 수행할 수 있다.
또한, 이와 같이, 의료 기관을 통한 자동 결제를 위해서 단말로부터 카드 정보, 병원 회원 정보 등이 전송되는 경우, 가맹점 단말에서 인증 서버와, 거래 관리 서버와, 승인 서버와, 카드사 서버와의 연동에 의해, 해당 카드 정보에 대한 유효성을 확인한 후, 유효성이 확인된 경우 인증 서버로부터 제공되는 자동 결제를 위한 토큰을 관리하며, 단말과 관련한 고객에 대한 진료 완료에 의해 결제를 위한 금액이 발생하는 경우 토큰을 근거로 승인을 요청하고, 해당 승인 요청에 따라 자동 결제 기능을 수행할 수 있다.
이하에서는, 본 발명에 따른 환자 인증 및 카드 정보를 이용한 전자 결제 방법을 도 1 내지 도 7을 참조하여 상세히 설명한다.
도 3 내지 도 5는 본 발명의 제 1 실시예에 따른 환자 인증 및 카드 정보를 이용한 전자 결제 방법을 나타낸 흐름도이다.
먼저, 단말(100)에서 가맹점 단말(200)에 회원 등록하고자 하는 경우, 단말(100)은 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보 등을 가맹점 단말(200)에 전송한다. 여기서, 단말(100)의 식별 정보는 MDN, 모바일 IP, 모바일 MAC, Sim 카드 고유정보, 시리얼번호 등을 포함한다. 또한, 카드 정보는 신용 카드 번호(또는 체크 카드 번호), 유효 기간, 카드 인증값(또는 카드 유효성 검증값) 등을 포함한다.
일 예로, 제 1 단말(100)에서 AAA 의료 기관에 구비된 제 1 가맹점 단말(200)에 회원 등록하고자 할 때, 제 1 단말은 제 1 단말의 식별 정보, 제 1 카드 정보(예를 들어 1234-5678-9098-7654의 제 1 카드 번호, 0125의 제 1 유효 기간(2025년 01월), 123의 제 1 카드 인증값 등 포함), 제 1 비밀 번호 정보(예를 들어 제 1 PIN 정보) 등을 제 1 가맹점 단말에 전송한다(S310).
이후, 가맹점 단말(200)은 단말(100)로부터 전송되는 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보 등을 수신한다.
또한, 가맹점 단말(200)은 수신된 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등을 인증 서버(300)에 전송한다. 여기서, 가맹점 단말(200)의 식별 정보는 가맹점 단말(200)과 관련한 고유 아이디 등을 포함한다.
일 예로, 제 1 가맹점 단말은 제 1 단말로부터 전송되는 제 1 단말의 식별 정보, 제 1 카드 정보, 제 1 비밀 번호 정보 등을 수신하고, 수신된 제 1 단말의 식별 정보, 제 1 카드 정보, 제 1 비밀 번호 정보, 제 1 가맹점 단말의 식별 정보(예를 들어 제 1 가맹점 단말에 대응하는 AAA 의료 기관과 관련한 고유 아이디 등 포함) 등을 인증 서버(300)에 전송한다(S320).
이후, 인증 서버(300)는 가맹점 단말(200)로부터 전송되는 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등을 수신한다.
또한, 인증 서버(300)는 수신된 단말(100)의 식별 정보에 대한 인증을 이동 통신사 서버(600)에 요청한다.
즉, 인증 서버(300)는 수신된 단말(100)의 식별 정보에 대응하는 고객(또는 단말(100))에 대한 인증 요청 정보를 이동 통신사 서버(600)에 전송한다.
일 예로, 인증 서버(300)는 제 1 가맹점 단말로부터 전송되는 제 1 단말의 식별 정보, 제 1 카드 정보, 제 1 비밀 번호 정보, 제 1 가맹점 단말의 식별 정보 등을 수신하고, 수신된 제 1 단말의 식별 정보를 근거로 제 1 단말에 대한 인증을 요청하기 위해서 제 1 인증 요청 정보를 이동 통신사 서버(600)에 전송한다(S330).
이후, 이동 통신사 서버(600)는 인증 서버(300)로부터 전송되는 단말(100)의 식별 정보에 대한 인증 요청 정보를 수신한다.
또한, 이동 통신사 서버(600)는 단말(100)과의 연동에 의해 본인 인증 절차를 수행한다.
즉, 이동 통신사 서버(600)는 수신된 단말(100)의 식별 정보에 대한 인증 요청 정보를 근거로 해당 단말(100)의 식별 정보에 대응하는 단말(100)에 인증 번호를 전송하고, 단말(100)에 전송된 인증 번호에 응답하여 단말(100)로부터 전송되는 인증 번호를 수신하고, 수신된 인증 번호와 앞서 단말(100)에 전송된 인증 번호를 확인(또는 비교)하여 해당 단말(100)에 대한 인증 절차를 수행한다.
또한, 이동 통신사 서버(600)는 인증 결과를 인증 서버(300)에 전송한다. 여기서, 인증 결과는 해당 단말(100)에 대한 본인 인증 실패 정보, 본인 인증 성공 정보 등을 포함한다.
일 예로, 이동 통신사 서버(600)는 인증 서버(300)로부터 전송되는 제 1 단말에 대한 제 1 인증 요청 정보를 수신하고, 수신된 제 1 인증 요청 정보를 근거로 제 1 단말과 연동하여 제 1 단말에 대한 인증 절차를 수행한다.
또한, 이동 통신사 서버(600)는 제 1 단말에 대한 제 1 인증 결과(예를 들어 본인 인증 성공 정보 등 포함)를 인증 서버(300)에 전송한다(S340).
이후, 인증 서버(300)는 앞서 전송된 단말(100)의 식별 정보에 대한 인증 요청 정보에 응답하여 이동 통신사 서버(600)로부터 전송되는 인증 결과를 수신한다.
또한, 인증 서버(300)는 수신된 인증 결과를 앞서 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등을 전송한 해당 가맹점 단말(200)에 전송한다.
일 예로, 인증 서버(300)는 앞서 전송된 제 1 인증 요청 정보에 응답하여 이동 통신사 서버(600)로부터 전송되는 제 1 인증 결과(예를 들어 본인 인증 성공 정보 등 포함)를 수신하고, 수신된 제 1 인증 결과를 앞서 제 1 단말의 식별 정보, 제 1 카드 정보 등을 전송한 제 1 가맹점 단말에 전송한다(S350).
이후, 가맹점 단말(200)은 앞서 전송된 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등에 응답하여 인증 서버(300)로부터 전송되는 인증 결과를 수신한다.
또한, 가맹점 단말(200)은 수신된 인증 결과를 표시한다.
일 예로, 제 1 가맹점 단말은 앞서 전송된 제 1 단말의 식별 정보, 제 1 카드 정보, 제 1 비밀 번호 정보, 제 1 가맹점 단말의 식별 정보 등에 응답하여 인증 서버(300)로부터 전송되는 제 1 인증 결과(예를 들어 본인 인증 성공 정보 등 포함)를 수신하고, 수신된 제 1 인증 결과를 출력한다(S360).
또한, 인증 서버(300)는 인증 결과를 근거로 해당 단말(100)의 식별 정보와 관련한 카드 정보에 대한 유효성 확인을 거래 관리 서버(400)에 요청한다.
즉, 앞서 수신된 인증 결과를 근거로 본인 인증에 성공한 경우, 인증 서버(300)는 해당 단말(100)의 식별 정보와 관련한 카드 정보에 대한 유효성을 확인하기 위해서 해당 단말(100)과 관련한 카드 정보를 포함하는 유효성 확인 요청 정보(또는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보)를 거래 관리 서버(400)에 전송한다.
일 예로, 인증 서버(300)에서 이동 통신사 서버(600)로부터 전송되는 제 1 인증 결과(예를 들어 본인 인증 성공 정보 등 포함)를 근거로 해당 제 1 단말에 대한 본인 인증이 성공한 상태일 때, 인증 서버(300)는 제 1 단말과 관련하여 앞서 수신된 제 1 카드 정보에 대한 유효성을 확인하기 위해서 제 1 카드 정보와 관련한 제 1 유효성 확인 요청 정보(예를 들어 제 1 카드 정보 등 포함)를 거래 관리 서버(400)에 전송한다(S370).
이후, 거래 관리 서버(400)는 인증 서버(300)로부터 전송되는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보를 수신한다.
또한, 거래 관리 서버(400)는 수신된 유효성 확인 요청 정보(또는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보)를 근거로 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인을 위해서 승인 서버(500)에 가승인을 요청한다.
즉, 거래 관리 서버(400)는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인을 위해서 승인 서버(500)에 가승인 요청 정보를 전송한다.
일 예로, 거래 관리 서버(400)는 인증 서버(300)로부터 전송되는 제 1 카드 정보와 관련한 제 1 유효성 확인 요청 정보를 수신하고, 제 1 유효성 확인 요청 정보를 근거로 제 1 카드 정보에 대한 유효성 확인을 위해서 승인 서버(500)에 제 1 가승인 요청 정보를 전송한다(S380).
이후, 승인 서버(500)는 거래 관리 서버(400)로부터 전송되는 가승인 요청 정보를 수신한다.
또한, 승인 서버(500)는 수신된 가승인 요청 정보를 카드사 서버(700)에 전송한다.
일 예로, 승인 서버(500)는 거래 관리 서버(400)로부터 전송되는 제 1 가승인 요청 정보를 수신하고, 수신된 제 1 가승인 요청 정보를 해당 제 1 카드 정보와 관련한 카드사 서버(700)에 전송한다(S390).
이후, 카드사 서버(700)는 승인 서버(500)로부터 전송되는 가승인 요청 정보를 수신한다.
또한, 카드사 서버(700)는 해당 가승인 요청 정보에 포함된 카드 정보를 근거로 해당 카드 정보가 유효한지 여부를 나타내는 승인 응답 정보를 생성하고, 생성된 승인 응답 정보를 승인 서버(500)에 전송한다. 여기서, 승인 응답 정보는 해당 단말(100)과 관련한 카드 정보가 유효한지 여부를 나타내는 카드 정보 유효 상태 정보 또는 카드 정보 비유효 상태 정보 등을 포함한다.
일 예로, 카드사 서버(700)는 승인 서버(500)로부터 전송되는 제 1 가승인 요청 정보를 수신하고, 수신된 제 1 가승인 요청 정보에 포함된 제 1 카드 정보가 유효한지 여부를 확인하고, 확인 결과에 따른 제 1 승인 응답 정보(예를 들어 제 1 카드 정보 유효 상태 정보)를 승인 서버(500)에 전송한다(S400).
이후, 승인 서버(500)는 앞서 전송된 가승인 요청 정보에 응답하여 카드사 서버(700)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 승인 서버(500)는 수신된 승인 응답 정보를 거래 관리 서버(400)에 전송한다.
일 예로, 승인 서버(500)는 앞서 전송된 제 1 가승인 요청 정보에 응답하여 카드사 서버(700)로부터 전송되는 제 1 승인 응답 정보(예를 들어 제 1 카드 정보 유효 상태 정보)를 수신하고, 수신된 제 1 승인 응답 정보(예를 들어 제 1 카드 정보 유효 상태 정보)를 해당 제 1 카드 정보에 대한 유효성 확인을 요청한 거래 관리 서버(400)에 전송한다(S410).
이후, 거래 관리 서버(400)는 앞서 전송된 가승인 요청 정보에 응답하여 승인 서버(500)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 거래 관리 서버(400)는 수신된 승인 응답 정보를 앞서 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보를 전송한 인증 서버(300)에 전송한다.
일 예로, 거래 관리 서버(400)는 앞서 전송된 제 1 가승인 요청 정보에 응답하여 승인 서버(500)로부터 전송되는 제 1 승인 응답 정보를 수신하고, 수신된 제 1 승인 응답 정보를 앞서 제 1 유효성 확인 요청 정보를 전송한 인증 서버(300)에 전송한다(S420).
이후, 인증 서버(300)는 앞서 전송된 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 인증 서버(300)는 수신된 승인 응답 정보를 앞서 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등을 전송한 해당 가맹점 단말(200)에 전송한다.
일 예로, 인증 서버(300)는 앞서 전송된 제 1 유효성 확인 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 제 1 승인 응답 정보를 수신하고, 수신된 제 1 승인 응답 정보를 제 1 단말의 식별 정보, 제 1 카드 정보 등을 전송한 제 1 가맹점 단말에 전송한다(S430).
이후, 가맹점 단말(200)은 앞서 전송된 단말(100)의 식별 정보, 카드 정보, 비밀 번호 정보, 가맹점 단말(200)의 식별 정보 등에 응답하여 인증 서버(300)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 가맹점 단말(200)은 수신된 승인 응답 정보를 표시한다.
일 예로, 제 1 가맹점 단말은 앞서 전송된 제 1 단말의 식별 정보, 제 1 카드 정보, 제 1 비밀 번호 정보, 제 1 가맹점 단말의 식별 정보 등에 응답하여 인증 서버(300)로부터 전송되는 제 1 승인 응답 정보(예를 들어 제 1 카드 정보 유효 상태 정보)를 수신하고, 수신된 제 1 승인 응답 정보를 출력한다(S440).
또한, 수신된 승인 응답 정보를 근거로 해당 단말(100)과 관련한 카드 정보가 유효한 경우, 거래 관리 서버(400)는 카드 정보 내의 카드 번호를 HSM을 통해 하드웨어적으로 암호화하여 저장한다. 이때, 거래 관리 서버(400)는 카드 정보 내의 카드 번호뿐만 아니라, 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호를 함께 암호화하여 저장할 수도 있다.
또한, 거래 관리 서버(400)는 카드 정보 내의 유효 기간을 HSM을 통해 하드웨어적으로 암호화하여 저장한다. 이때, 거래 관리 서버(400)는 카드 정보 내의 유효 기간을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 수신된 비밀 번호 정보를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장할 수도 있다.
또한, 거래 관리 서버(400)는 인증 서버(300)와 연동하여 앞서 수신된 비밀 번호 정보를 근거로 카드 정보 내의 카드 인증값(또는 신용카드 유효성 검증값)을 분산하고, 분산된 카드 인증값을 암호화하여 거래 관리 서버(400)와 인증 서버(300)에 각각 분산 저장한다.
즉, 거래 관리 서버(400)는 카드 인증값을 복수의 파트로 분리하고(또는 나누고), 분리된 제 1 파트에 대응하는 제 1-1 카드 인증값을 앞서 수신된 비밀 번호 정보를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장한다. 이때, 거래 관리 서버(400)는 제 1-1 카드 인증값을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 수신된 비밀 번호 정보를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장할 수도 있다.
또한, 인증 서버(300)는 거래 관리 서버(400)와 연동하여, 분리된 제 2 파트에 대응하는 제 1-2 카드 인증값을 앞서 생성된 제 1 정보 블록을 이용하여 HSM을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장한다. 이때, 인증 서버(300)는 제 1-2 카드 인증값을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 생성된 제 1 정보 블록을 이용하여 HSM을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장할 수도 있다.
일 예로, 거래 관리 서버(400)는 앞서 전송된 제 1 가승인 요청 정보에 응답하여 승인 서버(500)로부터 전송되는 제 1 승인 응답 정보(예를 들어 제 1 카드 정보 유효 상태 정보)를 수신한다.
또한, 수신된 제 1 승인 응답 정보(예를 들어 제 1 카드 정보 유효 상태 정보)를 근거로 해당 제 1 단말과 관련한 제 1 카드 정보가 유효한 상태일 때, 거래 관리 서버(400)는 제 1 카드 정보 내의 제 1 카드 번호(예를 들어 1234-5678-9098-7654)를 HSM을 통해 하드웨어적으로 암호화하여 저장한다.
또한, 거래 관리 서버(400)는 제 1 카드 정보 내의 제 1 유효 기간(예를 들어 0125)을 HSM을 통해 하드웨어적으로 암호화하여 저장한다.
또한, 거래 관리 서버(400)는 제 1 카드 정보 내의 제 1 카드 인증값(예를 들어 123)을 제 1 파트(예를 들어 앞 두자리)와 제 2 파트(예를 들어 나머지 한자리)로 분리하고, 분리된 제 1 파트에 대응하는 제 1-1 카드 인증값(예를 들어 12)을 앞서 수신된 제 1 비밀 번호 정보(예를 들어 제 1 PIN 정보)를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장한다.
또한, 인증 서버(300)는 거래 관리 서버(400)와 연동하여, 분리된 제 2 파트에 대응하는 제 1-2 카드 인증값(예를 들어 3)을 앞서 생성된 제 1 정보 블록을 이용하여 HSM을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장한다.
이와 같이, 단말(100)과 관련한 카드 정보가 유효한 것으로 확인된 경우, 카드 정보 내의 카드 번호와 유효 기간과 카드 인증값 중 일부가 거래 관리 서버(400)에 저장되고, 카드 정보 내의 카드 인증값 중 남은 일부가 인증 서버(300)에 분산되어 저장됨에 따라, 고객 정보(예를 들어 카드 정보 등 포함)의 유출에 따른 피해를 방지할 수 있다(S450).
이후, 단말(100)에서 특정 진료 항목에 대한 결제 금액과 관련해서 결제를 요청하고자 하는 경우, 단말(100)은 결제 요청 신호, 단말(100)의 식별 정보 등을 가맹점 단말(200)에 전송한다.
일 예로, 제 1 단말에서 2017년 7월 1일 AAA 의료 기관에서의 엑스레이 촬영 및 초음파 촬영에 따른 제 1 결제 금액과 관련해서 결제를 요청하고자 할 때, 제 1 단말은 제 1 결제 요청 신호, 제 1 단말의 식별 정보 등을 제 1 가맹점 단말에 전송한다(S460).
이후, 가맹점 단말(200)은 단말(100)로부터 전송되는 결제 요청 신호, 단말(100)의 식별 정보 등을 수신한다.
또한, 가맹점 단말(200)은 수신된 결제 요청 신호를 근거로 인증 서버(300)에 결제 인증 요청 정보를 전송한다. 여기서, 결제 인증 요청 정보는 결제 요청 신호, 단말(100)의 식별 정보, 가맹점 단말(200)의 식별 정보 등을 포함한다.
일 예로, 제 1 가맹점 단말은 제 1 단말로부터 전송되는 제 1 결제 요청 신호, 제 1 단말의 식별 정보 등을 수신하고, 수신된 제 1 결제 요청 신호를 근거로 해당 제 1 단말과 관련한 엑스레이 촬영 및 초음파 촬영에 따른 결제 기능 수행을 위한 제 1 결제 인증 요청 정보를 인증 서버(300)에 전송한다(S470).
이후, 인증 서버(300)는 가맹점 단말(200)로부터 전송되는 결제 인증 요청 정보를 수신한다.
또한, 인증 서버(300)는 수신된 결제 인증 요청 정보를 근거로 해당 단말(100)과의 연동에 의해 본인 인증 기능을 수행한다.
즉, 인증 서버(300)는 수신된 결제 인증 요청 정보를 근거로 해당 단말(100)의 식별 정보에 대응하는 단말(100)에 PIN 정보 입력 요청 정보를 전송하고, 단말(100)에 전송된 PIN 정보 입력 요청 정보에 응답하여 단말(100)로부터 전송되는 PIN 정보를 수신하고, 수신된 PIN 정보와 해당 단말(100)과 관련하여 미리 발급된 PIN 정보를 확인하여 해당 단말(100)에 대한 인증 기능을 수행한다.
일 예로, 인증 서버(300)는 제 1 가맹점 단말로부터 전송되는 제 1 결제 인증 요청 정보를 수신하고, 수신된 제 1 결제 인증 요청 정보를 근거로 제 1 단말과 연동하여 제 1 단말에 대한 인증 기능을 수행한다(S480).
이후, 인증 서버(300)는 본인 인증 기능 수행 결과를 근거로 본인 인증 기능이 정상적으로 수행된 경우, 결제 인증 토큰을 가맹점 단말(200)에 전송한다.
일 예로, 제 1 단말에 대한 인증 기능 수행 결과 제 1 단말에 대한 본인 인증 기능이 정상적으로 수행될 때, 인증 서버(300)는 제 1 단말과 관련한 제 1 결제 인증 토큰을 생성하고, 생성된 제 1 결제 인증 토큰을 제 1 가맹점 단말에 전송한다(S490).
이후, 가맹점 단말(200)은 앞서 전송된 결제 인증 요청 정보에 응답하여 인증 서버(300)로부터 전송되는 결제 인증 토큰을 수신한다.
또한, 가맹점 단말(200)은 수신된 결제 인증 토큰을 근거로 승인 서버(500)에 결제 승인 요청 정보를 전송한다. 여기서, 결제 승인 요청 정보는 결제 인증 토큰, 진료 항목별 결제 금액, 단말(100)의 식별 정보, 가맹점 단말(200)의 식별 정보, 가맹점명, 가맹점 연락처, 가맹점 위치 정보 등을 포함한다.
일 예로, 제 1 가맹점 단말은 앞서 전송된 제 1 결제 인증 요청 정보에 응답하여 인증 서버(300)로부터 전송되는 제 1 결제 인증 토큰을 수신한다.
또한, 제 1 가맹점 단말은 제 1 결제 인증 토큰, 제 1 진료 항목별 결제 금액(예를 들어 엑스레이 촬영 2장 5,400원, 초음파 촬영 120,000원 등 포함), 제 1 단말의 식별 정보, 제 1 가맹점 단말의 식별 정보, AAA 의료 기관명, AAA 의료 기관의 연락처, AAA 의료 기관의 위치 정보 등을 포함하는 제 1 결제 승인 요청 정보를 승인 서버(500)에 전송한다(S500).
이후, 승인 서버(500)는 가맹점 단말(200)로부터 전송되는 결제 승인 요청 정보를 수신한다.
또한, 승인 서버(500)는 수신된 결제 승인 요청 정보를 근거로 해당 단말(100)과 관련하여 거래 관리 서버(400)와 인증 서버(300)에 분산 저장된 카드 정보를 요청하기 위해서, 해당 단말(100)과 관련한 카드 정보의 요청 정보(또는 카드 정보 요청 정보)를 거래 관리 서버(400)에 전송한다.
일 예로, 승인 서버(500)는 제 1 가맹점 단말로부터 전송되는 제 1 결제 승인 요청 정보를 수신하고, 수신된 제 1 결제 승인 요청 정보를 근거로 제 1 단말과 관련한 제 1 카드 정보를 요청하는 제 1 카드 정보 요청 정보를 거래 관리 서버(400)에 전송한다(S510).
이후, 거래 관리 서버(400)는 승인 서버(500)로부터 전송되는 해당 단말(100)과 관련한 카드 정보의 요청 정보를 수신한다.
또한, 거래 관리 서버(400)는 수신된 해당 단말(100)과 관련한 카드 정보의 요청 정보를 근거로 인증 서버(300)와 연동하여 가맹점에 의한 거래 위변조를 막기 위해 거래 연동 일회용 인증 값(또는 거래 인증값)에 대한 검증 절차를 수행한다.
일 예로, 거래 관리 서버(400)는 승인 서버(500)로부터 전송되는 제 1 카드 정보 요청 정보를 수신하고, 수신된 제 1 카드 정보 요청 정보를 근거로 인증 서버(300)와 연동하여 거래 연동 일회용 인증 값(또는 거래 인증값)에 대한 검증 절차를 수행한다(S520).
이후, 거래 연동 일회용 인증 값에 대한 검증 절차가 정상적으로 수행된 경우, 거래 관리 서버(400)는 인증 서버(300)와 연동하여, 거래 관리 서버(400) 및 인증 서버(300)에 분산되어 관리 중인 해당 단말(100)과 관련한 카드 정보를 확인(또는 복호화)하고, 확인된 해당 단말(100)과 관련한 카드 정보를 승인 서버(500)에 전송한다.
일 예로, 거래 연동 일회용 인증 값에 대한 검증 절차가 정상적으로 수행될 때, 거래 관리 서버(400)는 거래 관리 서버(400)에 암호화되어 저장된 제 1 카드 번호(예를 들어 1234-5678-9098-7654)를 복호화한다.
또한, 거래 관리 서버(400)는 거래 관리 서버(400)에 암호화되어 저장된 제 1 유효 기간(예를 들어 0125)을 복호화한다.
또한, 거래 관리 서버(400)는 인증 서버(300)와 연동하여, 제 1 정보 블록에 대한 복호화 과정을 통해 제 1-1 카드 인증값(예를 들어 12)을 확인하고, 제 2 정보 블록에 대한 복호화 과정을 통해 제 1-2 카드 인증값(예를 들어 3)을 확인하고, 확인된 제 1-1 카드 인증값과 제 1-2 카드 인증값을 조합하여 제 1 카드 인증값(예를 들어 123)을 확인(또는 생성)한다.
또한, 거래 관리 서버(400)는 확인된(또는 복호화된) 제 1 단말과 관련한 제 1 카드 정보(예를 들어 1234-5678-9098-7654의 제 1 카드 번호, 0125의 제 1 유효 기간(2025년 01월), 123의 제 1 카드 인증값 등 포함)를 승인 서버(500)에 전송한다(S530).
이후, 승인 서버(500)는 앞서 전송된 해당 단말(100)과 관련한 카드 정보의 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 해당 단말(100)과 관련한 카드 정보를 수신한다.
또한, 승인 서버(500)는 수신된 카드 정보, 결제 승인 요청 정보 등을 근거로 카드사 서버(700)와 연동하여 결제 기능을 수행한다.
또한, 승인 서버(500)(또는 카드사 서버(700))는 결제 기능 수행 결과를 단말(100)에 제공한다. 여기서, 결제 기능 수행 결과는 진료 항목별 결제 금액, 가맹점 단말(200)의 식별 정보, 가맹점명, 가맹점 연락처, 가맹점 위치 정보, 총 합계 금액, 결제 일자 및 시각 정보, 결제 카드 종류 등을 포함한다.
일 예로, 승인 서버(500)는 앞서 전송된 제 1 단말과 관련한 제 1 카드 정보를 요청하는 제 1 카드 정보 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 제 1 단말과 관련한 제 1 카드 정보(예를 들어 1234-5678-9098-7654의 제 1 카드 번호, 0125의 제 1 유효 기간(2025년 01월), 123의 제 1 카드 인증값 등 포함)를 수신한다.
또한, 승인 서버(500)는 수신된 제 1 카드 정보, 제 1 결제 승인 요청 정보 등을 근거로 카드사 서버(700)와 연동하여 제 1 단말과 관련한 고객(또는 환자)이 AAA 의료 기관에서 제공받은 엑스레이 촬영과 초음파 촬영에 대한 결제 금액에 대한 결제 기능을 수행한다.
또한, 카드사 서버(700)는 결제 기능 수행 결과를 제 1 단말에 제공한다(S540).
도 6 내지 도 7은 본 발명의 제 2 실시예에 따른 환자 인증 및 카드 정보를 이용한 전자 결제 방법을 나타낸 흐름도이다.
먼저, 단말(100)에서 해당 단말(100)의 고객이 치료 중인 의료 기관에서의 자동 결제를 등록하고자 하는 경우, 단말(100)은 자동 결제 동의 정보, 카드 정보, 비밀 번호 정보, 고객 병록번호, 단말(100)의 식별 정보 등을 가맹점 단말(200)에 전송한다. 여기서, 단말(100)의 식별 정보는 MDN, 모바일 IP, 모바일 MAC, Sim 카드 고유정보, 시리얼번호 등을 포함한다. 또한, 자동 결제 동의 정보는 해당 가맹점 단말(200)과 관련한 의료 기관에 대해서 해당 단말(100)의 사용자가 결제할 금액이 발생하는 경우 해당 결제 금액에 대한 자동 결제에 동의함을 나타내는 정보 등을 포함한다.
일 예로, 제 2 단말(100)에서 BBB 의료 기관에 구비된 제 2 가맹점 단말(200)에 자동 결제를 등록하고자 할 때, 제 2 단말은 제 2 자동 결제 동의 정보, 제 2 카드 정보(예를 들어 9876-5432-1012-3456의 제 2 카드 번호, 0120의 제 2 유효 기간(2020년 01월), 987의 제 2 카드 인증값 등 포함), 제 2 비밀 번호 정보(예를 들어 제 2 PIN 정보), 제 2 고객 병록번호(예를 들어 987-123456), 제 2 단말의 식별 정보 등을 제 2 가맹점 단말에 전송한다(S610).
이후, 가맹점 단말(200)은 단말(100)로부터 전송되는 자동 결제 동의 정보, 카드 정보, 비밀 번호 정보, 고객 병록번호, 단말(100)의 식별 정보 등을 수신한다.
또한, 가맹점 단말(200)은 수신된 자동 결제 동의 정보, 카드 정보, 비밀 번호 정보, 고객 병록번호 등을 근거로 해당 단말(100)에 대한 자동 결제 등록 요청을 인증 서버(300)에 요청한다.
즉, 가맹점 단말(200)은 수신된 자동 결제 동의 정보에 대응하는 고객(또는 단말(100))에 대한 자동 결제 등록 요청 정보를 인증 서버(300)에 전송한다. 여기서, 자동 결제 등록 요청 정보는 자동 결제 동의 정보, 카드 정보, 비밀 번호 정보, 고객 병록번호, 단말(100)의 식별 정보, 가맹점 단말(200)의 식별 정보 등을 포함한다.
일 예로, 제 2 가맹점 단말은 제 2 단말로부터 전송되는 제 2 자동 결제 동의 정보, 제 2 카드 정보, 제 2 비밀 번호 정보, 제 2 고객 병록번호, 제 2 단말의 식별 정보 등을 수신하고, 수신된 제 2 자동 결제 동의 정보, 제 2 카드 정보, 제 2 비밀 번호 정보, 제 2 고객 병록번호, 제 2 단말의 식별 정보 등을 근거로 제 2 가맹점 단말에 제 2 단말의 자동 결제를 등록하기 위해서 제 2 자동 결제 등록 요청 정보를 인증 서버(300)에 전송한다(S620).
이후, 인증 서버(300)는 가맹점 단말(200)로부터 전송되는 자동 결제 등록 요청 정보를 수신한다.
또한, 인증 서버(300)는 수신된 자동 결제 등록 요청 정보를 근거로 해당 단말(100)의 식별 정보와 관련한 카드 정보에 대한 유효성 확인을 거래 관리 서버(400)에 요청한다.
즉, 인증 서버(300)는 해당 단말(100)의 식별 정보와 관련한 카드 정보에 대한 유효성을 확인하기 위해서 해당 단말(100)과 관련한 카드 정보를 포함하는 유효성 확인 요청 정보(또는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보)를 거래 관리 서버(400)에 전송한다.
일 예로, 인증 서버(300)는 제 2 가맹점 단말로부터 전송되는 제 2 자동 결제 등록 요청 정보를 수신하고, 수신된 제 2 자동 결제 등록 요청 정보를 근거로 해당 제 2 자동 결제 등록 요청 정보에 포함된 제 2 카드 정보에 대한 유효성을 확인하기 위해서 제 2 카드 정보와 관련한 제 2 유효성 확인 요청 정보(예를 들어 제 2 카드 정보 등 포함)를 거래 관리 서버(400)에 전송한다(S630).
이후, 거래 관리 서버(400)는 인증 서버(300)로부터 전송되는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보를 수신한다.
또한, 거래 관리 서버(400)는 수신된 유효성 확인 요청 정보(또는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보)를 근거로 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인을 위해서 승인 서버(500)에 가승인을 요청한다.
즉, 거래 관리 서버(400)는 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인을 위해서 승인 서버(500)에 가승인 요청 정보를 전송한다.
일 예로, 거래 관리 서버(400)는 인증 서버(300)로부터 전송되는 제 2 카드 정보와 관련한 제 2 유효성 확인 요청 정보를 수신하고, 제 2 유효성 확인 요청 정보를 근거로 제 2 카드 정보에 대한 유효성 확인을 위해서 승인 서버(500)에 제 2 가승인 요청 정보를 전송한다(S640).
이후, 승인 서버(500)는 거래 관리 서버(400)로부터 전송되는 가승인 요청 정보를 수신한다.
또한, 승인 서버(500)는 수신된 가승인 요청 정보를 카드사 서버(700)에 전송한다.
일 예로, 승인 서버(500)는 거래 관리 서버(400)로부터 전송되는 제 2 가승인 요청 정보를 수신하고, 수신된 제 2 가승인 요청 정보를 해당 제 2 카드 정보와 관련한 카드사 서버(700)에 전송한다(S650).
이후, 카드사 서버(700)는 승인 서버(500)로부터 전송되는 가승인 요청 정보를 수신한다.
또한, 카드사 서버(700)는 해당 가승인 요청 정보에 포함된 카드 정보를 근거로 해당 카드 정보가 유효한지 여부를 나타내는 승인 응답 정보를 생성하고, 생성된 승인 응답 정보를 승인 서버(500)에 전송한다. 여기서, 승인 응답 정보는 해당 단말(100)과 관련한 카드 정보가 유효한지 여부를 나타내는 카드 정보 유효 상태 정보 또는 카드 정보 비유효 상태 정보 등을 포함한다.
일 예로, 카드사 서버(700)는 승인 서버(500)로부터 전송되는 제 2 가승인 요청 정보를 수신하고, 수신된 제 2 가승인 요청 정보에 포함된 제 2 카드 정보가 유효한지 여부를 확인하고, 확인 결과에 따른 제 2 승인 응답 정보(예를 들어 제 2 카드 정보 유효 상태 정보)를 승인 서버(500)에 전송한다(S660).
이후, 승인 서버(500)는 앞서 전송된 가승인 요청 정보에 응답하여 카드사 서버(700)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 승인 서버(500)는 수신된 승인 응답 정보를 거래 관리 서버(400)에 전송한다.
일 예로, 승인 서버(500)는 앞서 전송된 제 2 가승인 요청 정보에 응답하여 카드사 서버(700)로부터 전송되는 제 2 승인 응답 정보(예를 들어 제 2 카드 정보 유효 상태 정보)를 수신하고, 수신된 제 2 승인 응답 정보(예를 들어 제 2 카드 정보 유효 상태 정보)를 해당 제 2 카드 정보에 대한 유효성 확인을 요청한 거래 관리 서버(400)에 전송한다(S670).
이후, 거래 관리 서버(400)는 앞서 전송된 가승인 요청 정보에 응답하여 승인 서버(500)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 거래 관리 서버(400)는 수신된 승인 응답 정보를 앞서 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보를 전송한 인증 서버(300)에 전송한다.
일 예로, 거래 관리 서버(400)는 앞서 전송된 제 2 가승인 요청 정보에 응답하여 승인 서버(500)로부터 전송되는 제 2 승인 응답 정보를 수신하고, 수신된 제 2 승인 응답 정보를 앞서 제 2 유효성 확인 요청 정보를 전송한 인증 서버(300)에 전송한다(S680).
이후, 인증 서버(300)는 앞서 전송된 해당 단말(100)과 관련한 카드 정보에 대한 유효성 확인 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 승인 응답 정보를 수신한다.
또한, 인증 서버(300)는 수신된 승인 응답 정보를 근거로 승인 응답 정보에 카드 정보가 유효한 상태임을 나타낸 정보가 포함된 상태인 경우, 해당 단말(100)(또는 해당 단말(100)의 고객/사용자/환자)과 관련하여 추후 발생할 결제 금액에 대해서 자동 결제를 위한 자동 결제 토큰(또는 해당 단말(100) 및 가맹점 단말(200)과 관련한 자동 결제 토큰)을 가맹점 단말(200)에 전송한다.
일 예로, 인증 서버(300)는 앞서 전송된 제 2 유효성 확인 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 제 2 승인 응답 정보를 수신한다.
또한, 수신된 제 2 승인 응답 정보에 제 2 카드 정보 유효 상태 정보가 포함된 상태일 때, 인증 서버(300)는 제 2 단말에서 등록한 해당 제 2 가맹점 단말을 통해 제 2 단말과 관련한 결제 금액 발생 시 자동 결제를 수행할 수 있도록 제 2 자동 결제 토큰을 생성하고, 생성된 제 2 자동 결제 토큰을 제 2 가맹점 단말에 전송한다(S690).
이후, 가맹점 단말(200)은 앞서 전송된 자동 결제 등록 요청 정보에 응답하여 인증 서버(300)로부터 전송되는 자동 결제 토큰을 수신한다.
또한, 가맹점 단말(200)은 수신된 자동 결제 토큰, 자동 결제 동의 정보, 고객 병록번호, 단말(100)의 식별 정보 등을 연동하여 저장한다.
일 예로, 제 2 가맹점 단말은 앞서 전송된 제 2 자동 결제 등록 요청 정보에 응답하여 인증 서버(300)로부터 전송되는 제 2 자동 결제 토큰을 수신하고, 수신된 제 2 자동 결제 토큰, 제 2 자동 결제 동의 정보, 제 2 고객 병록번호, 제 2 단말의 식별 정보 등을 저장한다(S700).
또한, 수신된 승인 응답 정보를 근거로 해당 단말(100)과 관련한 카드 정보가 유효한 경우, 거래 관리 서버(400)는 카드 정보 내의 카드 번호를 HSM을 통해 하드웨어적으로 암호화하여 저장한다. 이때, 거래 관리 서버(400)는 카드 정보 내의 카드 번호뿐만 아니라, 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호를 함께 암호화하여 저장할 수도 있다.
또한, 거래 관리 서버(400)는 카드 정보 내의 유효 기간을 HSM을 통해 하드웨어적으로 암호화하여 저장한다. 이때, 거래 관리 서버(400)는 카드 정보 내의 유효 기간을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 수신된 비밀 번호 정보를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장할 수도 있다.
또한, 거래 관리 서버(400)는 인증 서버(300)와 연동하여 앞서 수신된 비밀 번호 정보를 근거로 카드 정보 내의 카드 인증값(또는 신용카드 유효성 검증값)을 분산하고, 분산된 카드 인증값을 암호화하여 거래 관리 서버(400)와 인증 서버(300)에 각각 분산 저장한다.
즉, 거래 관리 서버(400)는 카드 인증값을 복수의 파트로 분리하고(또는 나누고), 분리된 제 1 파트에 대응하는 제 1-1 카드 인증값을 앞서 수신된 비밀 번호 정보를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장한다. 이때, 거래 관리 서버(400)는 제 1-1 카드 인증값을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 수신된 비밀 번호 정보를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장할 수도 있다.
또한, 인증 서버(300)는 거래 관리 서버(400)와 연동하여, 분리된 제 2 파트에 대응하는 제 1-2 카드 인증값을 앞서 생성된 제 1 정보 블록을 이용하여 HSM을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장한다. 이때, 인증 서버(300)는 제 1-2 카드 인증값을 가맹점 단말(200)의 식별 정보와 해당 단말(100)과 관련한 고객의 병록번호와 함께 앞서 생성된 제 1 정보 블록을 이용하여 HSM을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장할 수도 있다.
일 예로, 거래 관리 서버(400)는 앞서 전송된 제 2 가승인 요청 정보에 응답하여 승인 서버(500)로부터 전송되는 제 2 승인 응답 정보(예를 들어 제 2 카드 정보 유효 상태 정보)를 수신한다.
또한, 수신된 제 2 승인 응답 정보(예를 들어 제 2 카드 정보 유효 상태 정보)를 근거로 해당 제 2 단말과 관련한 제 2 카드 정보가 유효한 상태일 때, 거래 관리 서버(400)는 제 2 카드 정보 내의 제 2 카드 번호(예를 들어 9876-5432-1012-3456)를 HSM을 통해 하드웨어적으로 암호화하여 저장한다.
또한, 거래 관리 서버(400)는 제 2 카드 정보 내의 제 2 유효 기간(예를 들어 0120)을 HSM을 통해 하드웨어적으로 암호화하여 저장한다.
또한, 거래 관리 서버(400)는 제 2 카드 정보 내의 제 2 카드 인증값(예를 들어 987)을 제 1 파트(예를 들어 앞 두자리)와 제 2 파트(예를 들어 나머지 한자리)로 분리하고, 분리된 제 1 파트에 대응하는 제 2-1 카드 인증값(예를 들어 98)을 앞서 수신된 제 2 비밀 번호 정보(예를 들어 제 2 PIN 정보)를 이용하여 HSM을 기반으로 암호화하여 제 1 정보 블록을 생성하고, 생성된 제 1 정보 블록을 저장한다.
또한, 인증 서버(300)는 거래 관리 서버(400)와 연동하여, 분리된 제 2 파트에 대응하는 제 2-2 카드 인증값(예를 들어 7)을 앞서 생성된 제 1 정보 블록을 이용하여 HSM을 기반으로 암호화하여 제 2 정보 블록을 생성하고, 생성된 제 2 정보 블록을 저장한다.
이와 같이, 단말(100)과 관련한 카드 정보가 유효한 것으로 확인된 경우, 카드 정보 내의 카드 번호와 유효 기간과 카드 인증값 중 일부가 거래 관리 서버(400)에 저장되고, 카드 정보 내의 카드 인증값 중 남은 일부가 인증 서버(300)에 분산되어 저장됨에 따라, 고객 정보(예를 들어 카드 정보 등 포함)의 유출에 따른 피해를 방지할 수 있다(S710).
이후, 단말(100)과 관련한 고객(또는 환자)이 가맹점 단말(200)과 관련한 의료 기관에서 제공하는 서비스(예를 들어 진료, 치료 등 포함)를 제공받아 결제 항목(또는 결제해야할 금액)이 발생한 경우, 가맹점 단말(200)은 해당 결제 항목에 대응하는 결제 금액에 대해서 해당 고객과 관련하여 미리 저장된 자동 결제 토큰을 근거로 승인 서버(500)에 자동 승인 요청 정보를 전송한다. 여기서, 자동 승인 요청 정보는 해당 단말(100)과 관련한 자동 결제 토큰, 진료 항목별 결제 금액, 단말(100)의 식별 정보, 가맹점 단말(200)의 식별 정보, 가맹점명, 가맹점 연락처, 가맹점 위치 정보 등을 포함한다.
일 예로, 제 2 단말의 환자가 2017년 7월 7일 BBB 의료 기관에서의 CT 촬영에 따라 제 2 가맹점 단말에서 제 2 결제 금액과 관련해서 자동 결제를 요청하고자 할 때, 제 2 가맹점 단말은 제 2 단말과 관련한 제 2 자동 결제 토큰, 제 2 진료 항목별 결제 금액(예를 들어 CT 촬영 250,000원 등 포함), 제 2 단말의 식별 정보, 제 2 가맹점 단말의 식별 정보, BBB 의료 기관명, BBB 의료 기관의 연락처, BBB 의료 기관의 위치 정보 등을 포함하는 제 2 자동 승인 요청 정보를 승인 서버(500)에 전송한다(S720).
이후, 승인 서버(500)는 가맹점 단말(200)로부터 전송되는 자동 승인 요청 정보를 수신한다.
또한, 승인 서버(500)는 수신된 자동 승인 요청 정보를 근거로 해당 단말(100)과 관련하여 거래 관리 서버(400)와 인증 서버(300)에 분산 저장된 카드 정보를 요청하기 위해서, 해당 단말(100)과 관련한 카드 정보의 요청 정보(또는 카드 정보 요청 정보)를 거래 관리 서버(400)에 전송한다. 여기서, 카드 정보 요청 정보는 자동 승인 요청 정보 등을 포함한다.
일 예로, 승인 서버(500)는 제 2 가맹점 단말로부터 전송되는 제 2 자동 승인 요청 정보를 수신하고, 수신된 제 2 자동 승인 요청 정보를 근거로 제 2 단말과 관련한 제 2 카드 정보를 요청하는 제 2 카드 정보 요청 정보를 거래 관리 서버(400)에 전송한다(S730).
이후, 거래 관리 서버(400)는 승인 서버(500)로부터 전송되는 해당 단말(100)과 관련한 카드 정보의 요청 정보를 수신한다.
또한, 거래 관리 서버(400)는 수신된 해당 단말(100)과 관련한 카드 정보의 요청 정보를 근거로 해당 단말(100)에서 미리 자동 결제를 신청(또는 등록)한 가맹점 단말(200)에서 자동 결제를 요청한 상태인지 여부를 검증(또는 판단/확인/식별)하기 위해서 인증 서버(300)와 연동하여 해당 카드 정보의 요청 정보 내에 포함된 자동 결제 토큰에 대한 검증 절차를 수행한다.
일 예로, 거래 관리 서버(400)는 승인 서버(500)로부터 전송되는 제 2 카드 정보 요청 정보를 수신하고, 수신된 제 2 카드 정보 요청 정보를 근거로 인증 서버(300)와 연동하여 제 2 카드 정보 요청 정보 내에 포함된 제 2 자동 결제 토큰에 대한 검증 절차를 수행한다(S740).
이후, 검증 절차가 정상적으로 수행된 경우, 거래 관리 서버(400)는 인증 서버(300)와 연동하여, 거래 관리 서버(400) 및 인증 서버(300)에 분산되어 관리 중인 해당 단말(100)과 관련한 카드 정보를 확인(또는 복호화)하고, 확인된 해당 단말(100)과 관련한 카드 정보를 승인 서버(500)에 전송한다.
일 예로, 제 2 자동 결제 토큰에 대한 검증 절차가 정상적으로 수행될 때, 거래 관리 서버(400)는 거래 관리 서버(400)에 암호화되어 저장된 제 2 카드 번호(예를 들어 9876-5432-1012-3456)를 복호화한다.
또한, 거래 관리 서버(400)는 거래 관리 서버(400)에 암호화되어 저장된 제 2 유효 기간(예를 들어 0120)을 복호화한다.
또한, 거래 관리 서버(400)는 인증 서버(300)와 연동하여, 제 1 정보 블록에 대한 복호화 과정을 통해 제 2-1 카드 인증값(예를 들어 98)을 확인하고, 제 2 정보 블록에 대한 복호화 과정을 통해 제 2-2 카드 인증값(예를 들어 7)을 확인하고, 확인된 제 2-1 카드 인증값과 제 2-2 카드 인증값을 조합하여 제 2 카드 인증값(예를 들어 987)을 확인(또는 생성)한다.
또한, 거래 관리 서버(400)는 확인된(또는 복호화된) 제 2 단말과 관련한 제 2 카드 정보(예를 들어 9876-5432-1012-3456의 제 2 카드 번호, 0120의 제 2 유효 기간(2020년 01월), 987의 제 2 카드 인증값 등 포함)를 승인 서버(500)에 전송한다(S750).
이후, 승인 서버(500)는 앞서 전송된 해당 단말(100)과 관련한 카드 정보의 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 해당 단말(100)과 관련한 카드 정보를 수신한다.
또한, 승인 서버(500)는 수신된 카드 정보, 자동 승인 요청 정보 등을 근거로 카드사 서버(700)와 연동하여 결제 기능을 수행한다.
또한, 승인 서버(500)(또는 카드사 서버(700))는 결제 기능 수행 결과를 단말(100)에 제공한다. 여기서, 결제 기능 수행 결과는 진료 항목별 결제 금액, 가맹점 단말(200)의 식별 정보, 가맹점명, 가맹점 연락처, 가맹점 위치 정보, 총 합계 금액, 결제 일자 및 시각 정보, 결제 카드 종류 등을 포함한다.
일 예로, 승인 서버(500)는 앞서 전송된 제 2 단말과 관련한 제 2 카드 정보를 요청하는 제 2 카드 정보 요청 정보에 응답하여 거래 관리 서버(400)로부터 전송되는 제 2 단말과 관련한 제 2 카드 정보(예를 들어 9876-5432-1012-3456의 제 2 카드 번호, 0120의 제 2 유효 기간(2020년 01월), 987의 제 2 카드 인증값 등 포함)를 수신한다.
또한, 승인 서버(500)는 수신된 제 2 카드 정보, 제 2 자동 승인 요청 정보 등을 근거로 카드사 서버(700)와 연동하여 제 2 단말과 관련한 고객(또는 환자)이 BBB 의료 기관에서 제공받은 CT 촬영에 대한 결제 금액에 대한 결제 기능을 수행한다.
또한, 카드사 서버(700)는 결제 기능 수행 결과를 제 2 단말에 제공한다(S760).
본 발명의 실시예에 따른 환자 인증 및 카드 정보를 이용한 전자 결제 시스템은 컴퓨터 프로그램으로 작성 가능하며, 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 해당 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 정보저장매체(computer readable media)에 저장되고, 컴퓨터나 본 발명의 실시예에 따른 단말, 가맹점 단말, 인증 서버, 거래 관리 서버, 승인 서버, 이동 통신사 서버, 카드사 서버 등에 의하여 읽혀지고 실행됨으로써 환자 인증 및 카드 정보를 이용한 전자 결제 시스템을 구현할 수 있다.
정보저장매체는 자기 기록매체, 광 기록매체 등을 포함한다. 본 발명의 실시예에 따른 환자 인증 및 카드 정보를 이용한 전자 결제 시스템을 구현하는 컴퓨터 프로그램은 단말, 가맹점 단말, 인증 서버, 거래 관리 서버, 승인 서버, 이동 통신사 서버, 카드사 서버 등의 내장 메모리에 저장 및 설치될 수 있다. 또는, 본 발명의 실시예에 따른 환자 인증 및 카드 정보를 이용한 전자 결제 시스템을 구현하는 컴퓨터 프로그램을 저장 및 설치한 스마트 카드 등의 외장 메모리가 인터페이스를 통해 환자 인증 및 카드 정보를 이용한 전자 결제 시스템 등에 장착될 수도 있다.
본 발명의 실시예는 앞서 설명된 바와 같이, 의료 기관을 통한 결제를 위해서, 휴대폰 가입 정보를 통해 결제하고자 하는 고객에 대한 본인 인증 과정을 수행하고, 카드 정보를 통해 해당 카드의 유효성을 확인한 후, 유효성이 확인된 카드 정보를 인증 서버와 거래 관리 서버에서 분산하여 저장하여, 고객 정보의 누출을 방지할 수 있다.
또한, 본 발명의 실시예는 앞서 설명된 바와 같이, 의료 기관을 통한 결제를 위해서 본인 인증 및 카드 정보 인증 이후, 단말로부터 결제 요청이 전송되는 경우, 가맹점 단말에서 인증 서버와, 승인 서버와, 거래 관리 서버와, 카드사 서버와의 연동에 의해 결제 기능을 수행하여, 간편 결제를 통해 사용자의 편의성을 향상시키고, 데이터 마이닝 프로세싱을 위해서 필요한 부가 업무 및 각 단계별 데이터 처리 업무 간의 데이터 부정합 문제를 방지할 수 있다.
또한, 본 발명의 실시예는 앞서 설명된 바와 같이, 의료 기관을 통한 자동 결제를 위해서 단말로부터 카드 정보, 병원 회원 정보 등이 전송되는 경우, 가맹점 단말에서 인증 서버와, 거래 관리 서버와, 승인 서버와, 카드사 서버와의 연동에 의해, 해당 카드 정보에 대한 유효성을 확인한 후, 유효성이 확인된 경우 인증 서버로부터 제공되는 자동 결제를 위한 토큰을 관리하며, 단말과 관련한 고객에 대한 진료 완료에 의해 결제를 위한 금액이 발생하는 경우 토큰을 근거로 승인을 요청하고, 해당 승인 요청에 따라 자동 결제 기능을 수행하여, 고객이 소지한 단말에서 미리 자동 결제를 승인한 가맹점 단말에서 결제할 금액이 발생하는 경우 가맹점 단말에 저장된 토큰을 통해 빠르고 편리하게 결제 기능을 수행하여 사용자의 만족도를 높이고, 고객 정보를 보호하며, 반복적으로 사용하는 기능을 모듈화하여 빠른 기능의 적용 및 변경이 용이하게 하고, 데이터 마이닝 프로세스의 반복적인 작업을 자동화하고 효과적으로 그 결과를 빠르게 조회하고 그래픽 사용자 인터페이스를 통해서 가시화하여 직관적으로 마이닝 프로세스를 확인하고 변경할 수 있다.
전술된 내용은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.