Journal of the Korea Academia-Industrial cooperation Society Vol. 17, No. 7 pp. 319-325, 2016 http://dx.doi.org/10.5762/kais.2016.17.7.319 ISSN 1975-4701 / eissn 2288-4688 김철진인하공업전문대학컴퓨터시스템과 A Reliability Enhancement Technique of Mobile Payment Chul-Jin Kim Dept. of Computer Systems and Engineering, Inha Technical College 요약핀테크의활성화로모바일결제를위한다양한기반서비스들이개발되고있다. 각종결제방식이개발되고, 결제의신뢰성을향상시키기위한인증방식이개발되고있다. 그러나, 모바일간편결제서비스시, 전화번호에의해인증이이루어지므로누출가능성이있어보안이취약하다. 따라서, 본논문에서는전화번호기반의인증과정을개선하기위해모바일디바이스의고유한식별자인디바이스 ID 를활용하여인증과정의신뢰성을높이기위한방안을제안한다. 핵심연구내용은모바일디바이스 ID 를기반으로모바일결제인증을위한아키텍쳐와인증프로세스이다. 모바일결제아키텍쳐는모바일디바이스, 인증서비스, 그리고모바일결제어플리케이션으로구성된다. 모바일디바이스는모바일디바이스 ID 와전화번호로구성하며, 인증서버는인증모듈과암호화모듈로구성된다. 모바일결제서비스는사전인증모듈과복호화모듈로구성된다. 모바일결제서비스의프로세스는모바일디바이스, 인증서버, 그리고모바일결제어플리케이션간에암호화된인증정보 ( 디바이스 ID, 전화번호, 인증번호 ) 에의해처리된다. 모바일디바이스는전화번호와디바이스 ID 를인증서버로전달하며, 인증서버는인증과정과암호화과정을통해사용자를인증한다. 모바일결제어플리케이션은전달받은인증번호에대해복호화를통해사전인증과정을수행한다. 본논문의인증서버의인증과정과모바일결제서비스의사전인증과정을통해기존결제서비스의인증번호누출에의한위험을예방할수있는차별성을제공할것이다. Abstract A variety of services for mobile payments by the activation of FinTech have been developed. Various payment methods were developed, and an authentication method was developed to improve the reliability of the payment. On the other hand, when mobile easy payment services are used, they have weak security because the authentication by phone number. Therefore, this paper proposes a technique for increasing the reliability of the authentication process using the unique device ID of the mobile device to improve the authentication process based on the telephone number. The core research contents are the architecture and process for the authentication of mobile payments based on the mobile device ID. The mobile payment architecture consists of a mobile device, authentication service, and mobile payment application. The mobile device consists of mobile device ID and phone number, and the authentication server consists of authentication module and encryption module. The mobile payment service consists of a pre-authentication module and decryption module. The process of mobile payment service is processed by the encrypted authentication information (device ID, phone number, and authentication number) among mobile devices, authentication server, and mobile payment application. The mobile device sends the telephone number and the device ID to the authentication server and the authentication server authenticates the user through an authentication process and encryption process. The mobile payment application performs the pre-authentication process by decrypting the received authentication number. This paper reports a difference that can prevent the risk of leakage of the authentication number in existing payment services through the authentication process of the authentication server and the pre-authentication process of the mobile payment service of this paper. Keywords : Mobile Payment, Mobile Device ID, Pre-Authentication, Authentication Number * Corresponding Author : Chul-Jin Kim(Inha Technical College) Tel : +82-32-870-2338 email : cjkim@inhatc.ac.kr Received April 25, 2016 Revised (1st May 27, 2016, 2nd June 17, 2016) Accepted July 7, 2016 Published July 31, 2016 319
한국산학기술학회논문지제 17 권제 7 호, 2016 1. 서론모바일전자상거래의활성화로모바일결제가필수적인요소가되었으며이에따라모바일결제의신뢰성에대한요구가증가하고있다. 그러나모바일결제시인증과정에서인증번호의누출이빈번하게발생하고있다. 모바일간편결제 (Mobile Easy Payment) 에서는전화번호관련정보를확인후인증번호를전송하여인증하지만, 이때사용자의전화번호가누출이되면다른모바일디바이스에서인증번호를인터셉트할수있다. 동일전화번호를복사한스마트폰을통해서전화통화나문자를도청할수있으며, 온라인전자거래시에는인증번호를복사한스마트폰에서모바일결제를진행할수있다. 따라서본논문에서는전화번호기반의인증과정을개선하기위해모바일디바이스의고유한식별자인디바이스 ID를활용하여인증과정의신뢰성을높이기위한방안을제안한다. 본논문은다음과같이구성한다. 2장에서는관련연구로서모바일결제시장의주요기술흐름인핀테크서비스기술과현재모바일결제인증과정과문제점을파악한다. 또한관련모바일결제의신뢰성관련연구를분석한다. 3장에서는모바일신뢰성향상기법으로아키텍쳐와인증처리프로세스를제안한다. 4장에서는본논문에서제안한모바일결제의신뢰성향상기법을검증하기위해가상의전자마켓을개발하여인증과정의성공과실패과정을실험한다. 5장에서결론을맺고향후인식기술들과의통합연구를제시한다. 인증과암호화에특화된기술을적용하여기술적차별화를강조하고있다 [2]. 애플페이는 NFC(Near Field Communcation) 기술과지문인식기능을제공하며, 보안강화를위해토큰화 (Tokenization) 기술을적용하고있다 [3]. 삼성페이는 MST(Magnetic Secure Transmission) 기술을기반으로보안강화를위해토큰화기술을반영하였다 [4]. 안드로이드페이는 NFC를통한결제방식으로사용자인증 ( 비밀번호, 지문인식 ) 을통해잠금해제후결제를한다. 애플페이와삼성페이는하드웨어를기반으로 SE(Secure Element) 영역에결제관련정보를암호화하여저장하지만, 구글의안드로이드페이는소프트웨어기반으로 HCE(Host Card Emulation) 에결제정보를저장한다 [5]. 2.2 기존모바일결제보안인증애플페이, 삼성페이, 안드로이드페이, 카카오페이 (Kakao Pay), 케이페이 (Kpay) 등의모바일결제에서는사용자보안인증을위해지문인식기술을사용하고있다 [3,4,5,6,7]. 그러나지문인식또한보안에누출될수있음이확인되었다 [8]. 이에따라다양한인식기술로홍채, 안면, 음성, 정맥, 걸음걸이등다양한생체인식기술이연구되고있으며, 이러한인식기술들이모바일결제의안정성을향상시킬수있을것이다 [2]. 기존모바일간편결제서비스는 Fig. 1에서와같이모바일디바이스에서결제요청을위해인증번호요청시전화번호가인증서버로전송된다. 이경우전화번호누출에의해인증번호가인터셉트될수있으며, 인터셉트된인증번호는악용될수있다. 2. 관련연구 2.1 핀테크서비스핀테크 (FinTech) 서비스는국내외에서애플페이 (Apple Pay), 삼성페이 (Samsung Pay), 카카오페이 (Kakao Pay), 네이버페이 (Naver Pay), 안드로이드페이 (Android Pay), 케이페이 (K Pay) 등다양한모바일결제방식에개발되고있다 [1]. 그러나각결제방식들이시장을점유하기위해표준화되지않은자체적인서비스로개발되어사용자들이해당결제방식모두선택하여사용해야하는불편함이발생하고있다. 그러나결제기술의발전을위한과정일것이다. 각각의결제방식들은보안을위한개인 Fig. 1. Existing Mobile Payment Architecture 320
Fig. 1에대한사례를 Fig. 2에서와같이모바일결제를하려는전화번호 1111 사용자는인증번호를요청을인증서버로요청하게된다. 이경우전화번호 2222 사용자가전화번호를 1111 로인식하게한후인증서버로부터인증번호 785634 를획득하게된다. 결제서비스의종류와국내외모바일결제서비스를비교분석하였다 [10]. 국내모바일결제서비스로신한스마트월렛, 삼성월렛, 하나 N월렛, Q쇼핑모바일체크카드, 엠틱을비교분석하였으며, 국외모바일결제서비스로스퀘어 (Square), 페이팔 (Paypal), 베리폰 (VeriFone), 저미오 (Jumio), 구글월렛 (Google Wallet), 애플아이윌렛 (Apple iwallet) 를비교분석하였다. 이러한모바일결제서비스를분석을통해향후모바일결제서비스시장은전자지갑형태로바뀔것으로분석하였다. 모바일결제서비스의비교및분석연구는본연구에서제안하고자하는모바일결제서비스의보안성을강화하기위한방안에대한기술적인접근이미흡하다. 3. 모바일결제신뢰성향상기법 Fig. 2. Intercept Phone_Number in Existing Mobile Payment 전화번호 1111 사용자는인증번호를획득하지못하게되며결제도진행하지못하게된다. 인증번호를인터셉트한전화번호 2222 사용자는결제서비스를진행하게되며커머스서버로부터결제처리를하게된다. 2.3 모바일간편결제의보안과사용의도에관한연구 [9] 최근금융관련개인정보유출사고가빈번하므로사용자들은편리성보다는보안성을더고려하여결제서비스를선택한다. 이에간편결제의사용자인지를높일수있는방안으로간편결제의보안과사용의도간의관계를연구하였다 [9]. 간편결제의보안과사용의도간의관계를도출하기위해보안성이사용편리성에어떠한영향을미치는지실험하여분석하였다. 간편결제의보안성에대한사용자의사용인식을검증하기위한연구로서본논문에서제시하는모바일결제시보안성을강화하기위한기술적인방안을제시하지는않고있다. 2.4 모바일결제서비스의비교및분석 [10] 모바일결제서비스의비교분석연구에서는모바일 본연구는기존의모바일간편결제서비스의보안이슈를해결하고자모바일디바이스의요소를활용하여모바일결제의신뢰성향상아키텍쳐및인증프로세스를제안한다. 3.1 모바일결제아키텍쳐기존의모바일간편결제가전화번호기반으로인증번호를요청하므로누출의가능성이높아신뢰성이확보되지않았다. 이에본연구에서는생체인식등신뢰성향상을위한기술들과융합하여사용할수있도록모바일디바이스의식별자를활용하는방안을제안한다. Fig. 3. Mobile Payment Architecture based on Mobile Device Identifier 321
한국산학기술학회논문지제 17 권제 7 호, 2016 스에서디바이스 ID와전화번호를인증서비스에전달하며인증서비스에서는해당디바이스 ID와전화번호를기반으로인증번호를획득할수있다. 인증번호는디바이스 ID와함께토큰화하여전달할수있도록암호화한다. 모바일결제어플리케이션에서암호화된토큰을복호화할수있도록복호화모듈과인증모듈을통해인증번호를획득하여인증한다. 이인증과정은사전인증 (Pre-Authentication) 과정으로인증서버에서인증하기위한인증과정전의과정으로인증번호에대한신뢰성을확보할수있다. Fig. 4. Mobile Payment Architecture based on Mobile Device Identifier(Case) 모바일디바이스는유일한식별자인디바이스 ID를보유하고있으며, 어떠한디바이스와도동일하지않은유일한정보이다. Fig. 3에서와같이해당디바이스의식별자정보를인증번호요청시전화번호와함께요청할수있으며, 다른디바이스에서인터셉트하더라도해당인증번호를받은다른디바이스 ID를보유한모바일디바이스는해당인증번호를해석할수없어인증하는데실패한다. Fig. 4에서와같이인증번호를요청하려는모바일결제의디바이스는전화번호와디바이스 ID를인증서버로전송한다. 인증서버는암호화된인증번호와디바이스 ID 를요청디바이스에전송하면현재디바이스의 ID와비교를통해인증번호를제공한다. 이렇게디바이스 ID를통해다른디바이스에서인증번호를획득하지못하도록할수있다. 3.2 모바일결제인증프로세스본연구의모바일결제인증은모바일디바이스 ID와전화번호를기반으로인증서버에서확인후인증번호와디바이스 ID를응답한다. Fig. 6에서와같이인증받으려는모바일디바이스에서는사전인증 (Pre-Authentication) 을수행한다. 사전인증은현재디바이스의디바이스 ID 와전송받은디바이스 ID를비교하여검증한다. 검증이완료되면인증서버로인증을요청하여결제를하려는사용자임을확인한후결제처리한다. 이러한과정에서모바일디바이스관련정보인인증번호와디바이스 ID는암호화하여전송된다. 디바이스 ID를인증번호와재전송하는이유는 Fig. 7 에서와같이본인외의디바이스에서인터셉트할경우인증하는과정에서현재디바이스의디바이스 ID와전송받은디바이스 ID를비교하여누출된정보인지를검증할수있다. 인터셉트하더라도암호화된디바이스 ID 와현재디바이스 ID가일치하지않으므로인증이실패한다. Fig. 5. Authentication Architecture of Mobile Payment 신뢰성향상을위한모바일결제의인증아키텍쳐는 Fig. 5 와같다. 인증번호를요청하기위해모바일디바이 Fig. 6. Authentication Process of Mobile Payment 322
Fig. 7. Reliable Authentication by Pre-Authentication 모바일디바이스에서처리되는사전인증알고리즘은 Fig. 8에서와같이구성하여모바일결제어플리케이션에내장한다. 디바이스에서사전인증을위해인증서버로부터암호화된디바이스 ID(Encrypted_DeviceID) 와인증번호 (Encrypted_Authentication_Number) 를입력받는다. 기존의인증번호만받는것과다르게디바이스 ID와암호화된인증번호를받아네트워크상에서의누출로부터위험을방지한다. 사전인증서비스에서는디바이스 ID와인증번호를복호화하기위해 2단계복호화과정을수행한다. 1차복호화에서는암호화된디바이스 ID를복 Fig. 8. Pre-Authentication Algorithm 호화하며, 2차복호화에서는복호화된디바이스 ID(Decrypted_DeviceID) 를이용하여인증번호를복호화한다. 사전인증의신뢰성을확보하기위해 Fig. 9에서와같이 1차복호화과정에서의복호화된디바이스 ID와현재모바일디바이스로부터추출된디바이스 ID를비교한다. Fig. 9. Pre-Authentication Service Flow for Reliable Authentication 323
한국산학기술학회논문지제 17 권제 7 호, 2016 이과정에의해다른디바이스에서는인증번호를획득하더라도복호화할수없다. Fig. 9의서비스흐름에서와같이다른모바일디바이스에서암호화된디바이스 ID를획득하더라도현재디바이스 ID와일치하지않기때문에사전인증이실패하게된다. 또한복호화과정에서사용된암호화된디바이스 ID와인증번호는한번만사용할수있으므로디바이스비교과정에서실패할경우 2차복호화과정을수행할수없다. Fig. 9에서와같이 1차복호화된디바이스 ID(Decrypted_DeviceID) 와현재모바일디바이스 ID(Device1 ID) 가일치하는경우, 2차복호화과정을통해인증번호 (Decrypted_Authentiaction_Number) 를획득한다. 최종적으로인증번호를사전인증번호로토큰화하여인증서버로전달한다. 지금까지본연구에서는기존누출가능성이있는인증번호의위험성에대해인증번호가누출이되더라도모바일디바이스에서사전인증과정을통해모바일결제의신뢰성을높일수있는방안을제시하였다. 확인하기위해현재모바일디바이스 ID를획득한다 (Fig. 13). 인증서버로부터전달받은디바이스 ID와현재모바일디바이스 ID를비교하여일치하면 Fig. 10과인증번호를복호화하여표시한다. 4. 실험및평가 본사례연구에서는온라인쇼핑몰의모바일결제시, 본연구에서제안한인증기법을적용하여실험한다. 인증처리과정에서현재모바일디바이스 ID를이용하여, 본연구에서제안한인증아키텍쳐가적합함을검증한다. 본사례는인증과정의적합성을검증하는것으로서버에서호출된인증번호와디바이스 ID를획득하여사전인증처리하는과정을개발한다. Fig. 10에서와같이모바일인증을요청하면, 인증서버로부터얻은디바이스 ID와인증번호를이용하여모바일디바이스에설치된어플리케이션내의사전인증처리과정을통해인증번호를성공적으로얻을수있다. 모바일디바이스의사전인증처리는 Fig. 11과같이인증서버에서호출하게되는콜백 (Callback) 함수로서전달되는데이터는암호화된디바이스 ID(encrypted_deviceId) 와인증번호 (encrypted_authentication_number) 이다. 암호화및복호화는 AES(Advanced Encryption Standard)[11] 알고리즘을사용한다 (Fig. 12). 인증서버로부터전달받은디바이스 ID를복호화한후인증번호를복호화하기전에현재모바일디바이스의사용자가요청한인증인지 Fig. 10. Pre-Authentication Success Fig. 11. Pre-Authentication Code 324
Fig. 12. Decryption Code[12] 누출되더라도인증이실패하여결제를진행할수없다. 향후에는이러한모바일인증처리과정과여러생체인식기법과결합하여모바일결제의신뢰성을더욱향상시킬수있는방안을연구한다. References Fig. 13. Code for Getting Current Device ID[13] 인증서버로부터전달받은디바이스 ID와현재모바일디바이스 ID가일치할경우에는인증번호를얻을수있지만, 만약해킹에의해다른디바이스에서인증번호를인터셉트할경우에는 Fig. 11과같이모바일디바이스 ID가일치하지않으면, 인증번호를소멸시키고 Fig. 14와같이에러메시지를표시한다. Fig. 14. Pre-Authentication Fail 본사례연구에서와같이모바일디바이스 ID를통해인증관련정보가누출되더라도기존방식보다안정적이며모바일결제의신뢰성이향상될것이다. 5. 결론본연구에서는모바일간편결제시전화번호누출로인한인증보안의신뢰성을향상시키기위해모바일디바이스 ID 기반으로사전인증처리과정을제안하였다. 사전인증을위해모바일디바이스에서는현재디바이스 ID와인증서버로부터전달받은디바이스 ID를비교하여현재모바일디바이스가인증을요청한것인지확인할수있다. 이러한사전인증알고리즘을통하면정보가 [1] Sung-Tae Moon, Gi-Nam Kim, "FinTech Technology and Security Trend Analysis", Review of Korean Society for Internet Information, p23-32, 2015. [2] Connectinglab, Mobile Trend 2016, Miraebook Publishing Co., 2016. [3] Apple Pay, http://www.apple.com/apple-pay. [4] Samsung Pay, http://www.samsung.com/samsung-pay. [5] Android Pay, https://developers.google.com/android-pay. [6] Kakao Pay, http://www.kakao.com/kakaopay. [7] K-Pay, http://www.inicis.com/kpay. [8] Researchers find a shockingly simple way to hack Samsung s fingerprint scanners, http://bgr.com/2016/03/ 08/samsung-galaxy-s7-galaxy-s6-fingerprint-scanner-hack. [9] Eun Oh, Tae-Sung Kim, "A Study on Security and Use Intention of Easy-to-use Mobile Payment", Proceedings of Symposium of the Korean Institute Of Communication Sciences, p54-55, 2015. [10] Phil-Joo Moon, "The Comparison and Analysis of Mobile Payment Service", Proceedings of the Korea Institute of Electronic Communication Sciences, p485-489, 2013. [11] National Institute of Standards and Technology (NIST), Advanced Encryption Standard(AES), FIPS PUB 197, Nov. 2001. [12] Cryptographic Cipher for encryption and decryption, https://docs.oracle.com/javase/7/docs/api/javax/crypto/cip her.html. [13] TelephonyManager for telephony services on the device, http://developer.android.com/reference/android/telephony/ TelephonyManager.html. 김철진 (Chul-Jin Kim) [ 종신회원 ] 2004 년 2 월 : 숭실대학교대학원컴퓨터학과 ( 공학박사 ) 2004 년 3 월 ~ 2009 년 2 월 : 삼성전자책임연구원 2009 년 3 월 ~ 현재 : 인하공전컴퓨터시스템과부교수 < 관심분야 > 컴포넌트기반개발방법론, 컴포넌트커스터마이제이션, 모바일서비스, 클라우드컴퓨팅 325