최성자 *, 강병권 ** The Windows Push Server System with Smart Device Identifying Fingerprints over IEEE 802.15.4 Protocol * Sung-Ja Choi *, Byeong-Gwon Kang ** 요약최근홈네트워크시스템의추세는가정보안기능위주의현실적인시스템을채택하고있으며, 긴급사태알림과방문자확인서비스가제공되고있다. 본논문에서는홈네트워크서비스를제공받지못하는계층을대상으로방문자확인이가능한오픈소스피지컬컴퓨팅플랫폼인아두이노기반의지문인식서버알림시스템을구축하였다. 본시스템에서는홈내부및외부에서방문확인이가능하며, 일정횟수이상의접근시도시푸쉬서버를구축하여스마트다바이스로비인가접근상황을알림으로써저가형의홈접근보안성을제공한다주제어 : 홈네트워크서비스, 지문인식, 실버라이트, 무선통신, XBee Abstract In these days, the trends of home networking system is implementation of easily configured system with home security of emergency alarm and visitor verification services. In this paper, we implemented push server system based on Arduino of open source physical computation platform to verify visitors for the homes without home networking services. In the suggested system, visitor verification is performed in and out of home, and home access security of the system could be constructed with low-cost price by use of windows push server system and smart devices with alarm operation in corresponding to not allowed access trying. Key Words : home networking service, fingerprints, silver light, wireless communication, XBee 1. 서론정보통신기기및서비스보급률상승으로홈네트워크의기반의확산은생활속에밀접하게연계되어있으며, 소비자들은홈제어혹은가정보안등의단순기능위주의서비스를선호하는추세이다. 홈네트워크산업관련업체들은자사의제품을브랜드화하여인지도를확대하는반면, 가전 통신 건설업고유의브랜드를발표하였으며, 표1에서주요업체들의홈네트워크브랜드를기술하였다. 최근들어신규아파트를중심으로홈네트워크시장은확대되어왔으며, 1인가구및부부가구의증가와고령화사 회의도래는주택의편의성 안전성등이더욱강화될것을요구하며, 위급시긴급조치및사용자인증이가능한시스템이필요하다.[1] 본논문에서는인터넷과스마트환경의확대로코쿠닝족과같이집안에서주로생활하며개인생활을중시하면서도홈네트워크서비스를제공받지못하는비지원계층에게실시간으로자택접근에관한안전성제공및사용자인증모니터링이가능한아두이노기반의지문인식서버시스템을제시한다. 본논문의구성은다음과같다. 2절에서는관련기술에대하여살펴보고 3절에서는제안된시스템을기술하며, 4 본연구는순천향대학교학술연구비지원으로수행하였음 ( 과제번호 2012-19970051) * 한남대학교시간강사 ** 순천향대학교정보통신공학과교수 ( 교신저자 ) 논문접수 : 2012년 11월 30일, 1차수정을거쳐, 심사완료 : 2012년 12월 20일 419
디지털정책연구제 10 권제 11 호 (2012.12) 절실험및고찰, 5 절에서는본논문의결론을기술한다. < 표 1> 홈네트워크브랜드 ZigBee, Bluetooth, 홈RF, 무선 1394등의기술들을통해자택내의네트워크를구축하는시스템이다. 무선으로자택환경에대한정보를통신하기위하여 Zgbee의확장버전인 XBee무선통신기술을적용한다. 구분 주파수대역 전송속도 전송거리 용도 WLAN 2.4G/5G 54Mps/ 600Mbps 50 100m 무선인터넷 UWB 3.1G 10.6G 200M/ HD 10m 480Mbps A/V전송 Bluetooth 2.4G 1Mbps 10m 무선헤드셋음성지원 Zigbee 868M/915M/ 가전기기 250kbps 30m 2.4G 제어 RFID < 표 2> 무선홈네트워크기술비교 125k/13.56M/ 400M/900M 30kbps 5m ( 능동형 100m) 물류, 재고관리 2. 관련기술 2.1 Arduino 와지문확인센싱아두이노 (Arduino) 보드는현재전세계에서가장널리사용되고있는오픈소스기반의피지컬컴퓨팅플랫폼으로서, 수많은확장쉴드들과 GPIO 가호환되므로아두이노로개발된상당히많은피지컬컴퓨팅레퍼런스가존재한다. 그림1에서는지문인식서버시스템을구축하기위한관련보드및센서를보여준다.[2] 표2 에서는무선홈네트워크기술을비교하였으며, 가전기기제어에가장많이적용되는 Zigbee 통신의확장버전인그림2 의 XBee 무선통신을본시스템에적용한다. [ 그림 2] Xbee & Xbee USB Dongle [ 그림 1] 아두이노 uno - 지문센서지문인식기술에서사람마다고유의특성차이를나타내는손가락지문의영상정보를획득하는입력영상장치가핵심장비이며, 획득된원시지문영상은지문의특징을추출한후데이터베이스에미리등록되어있는사용자의특징정보와비교, 정합하여본인여부를판단하게된다. 2.2 무선홈네트워크무선홈네트워킹시스템은 IEEE 802.11b/g, UWB, 무선네트워크기술중 XBee-PRO OEM 무선모듈은경제적인가격대와저-전력의무선네트워크의요구를만족하는 ZigBee/ IEEE 802.15.4 호환솔루션을제공한다. 모듈은쉬운사용, 저-전력요구, 기기간중요한데이터의신뢰성있는전송등을제공한다. XBee-PRO 모듈은혁신적인설계를바탕으로표준 ZigBee 모듈보다 2~3배의전송거리를제공한다. XBee-PRO 모듈은 ISM 2.4 GHz 주파수대역에서동작한다. XBee USB Dongle 은시리얼통신프로그램 ( 예 : 하이퍼터미널 ) 의기본세팅만으로고속의무선통신구현이가능하며, 3.3 볼트 /4 라인 (VCC/GND/TX/RX) 만으로어떤 MCU와도모듈통신이가능하다. 또한 AVR/ARM등으로클라이언트를구성한후 windows 환경의컴퓨터와통신환경구축이가능하다. 적용된프로토콜에대하여, 그림3에서는 ZigBee, XBee 무선통신의표준프로토콜인 IEEE 802.15.4 표준 420
인터페이스를가시적으로보여주며프로토콜스택에대하여보여준다.[3],[4] 윈도우즈서버에서는홈네트워크관리정보에대하여실시간으로제공함으로써저가형의보안성이부여된무선홈네트워크관리가가능하다. ZigBee specification Security services Application layer Application objects Z DO Public Interface ZigBee device object Endpoints Endpoint 0 Application support sublayer 3.2 아두이노지문인식서버시스템 3.2.1 XBee 통신 XBee모듈은비동기시리얼포트를통하여호스트와통신한다. 해당모듈은 UART 혹은시리얼디바이스레벨을통해통신한다.[5] Network layer ZDO management CMOS Logic (2.8-3.4 V) CMOS Logic (2.8-3.4 V) DI (data in) DI (data in) IEEE 802.15.4 Medium access control Physical layers Micro controller CTS DO (data out) Xbee Module CTS Xbee Module DO (data out) Micro controller [ 그림 3] IEEE 802.15.4 프로토콜스택 RST RST 3. 본론 3.1 제안플랫폼 무선홈네트워크의저가형서버시스템구축을위하여그림 4에서는본논문에서제안하는시스템플랫폼을제안한다. 무선통신아두이노보드의지문센서통신을 XBee 무선장비와연동하며, 윈도우즈서버의 XBee 모듈을통해지문센서정보를수신한다. 또한, 윈도우즈 C2dm 푸쉬서버를통해대표적인스마트장치인안드로이드폰과통신한다. 적용된플랫품을통해지문센서에등록되지않은비인가접근이시도시위험발생알림메시지가전송된다. 지문센서 ARDUINO XBee XBee Windows C2DM Server DB Smart Device [ 그림 4] 지문인식스마트연동푸쉬서버시스템플랫폼 DI CTS VCC GND DO [ 그림 5] XBee 모듈간의통신 DI DO Processor RF TX RF RX Transmitter Receiver [ 그림 6] XBee 모듈의구성도 RF Switch Antenna Port 한편 XBee 모듈의내부는그림 6과같이구성되어있다. 데이터입력단인 DI로데이터가입력되면입력데이터버퍼인 DI 버퍼에데이터가일시저장되고, RF로전송되기전 RF TX 버퍼에저장되었다가 RF 변조되어송신된다. 반대로수신된데이터는복조되어 RF RX 버퍼에저장되었다가데이터출력단인 DO로출력되기전 DO 버퍼에일시저장된다. 그림 7은 XBee 통신의동작모드를설명한것이다. 장치는대기모드 (Idle mode) 에있다가일정시간아무런이벤트가발생하지않으면수면모드 (Sleep mode) 로들어간다. 대기모드에서명령어발생이필요하면명령어모드 (Command mode) 로전환되고, 송신과수신동작이 421
디지털정책연구제 10 권제 11 호 (2012.12) 필요할경우각각송신모드 (Transmit mode) 와수신모드 (Receiver mode) 로전환되어필요한기능을수행한다. pin #2 : 센서로부터입력 (Green wire) pin #3 : 센서로부터출력 (White wire) Sleep Transmit Idle Command [ 그림 7] 동작모드 Receive 3.2.2 지문인식센서연동실험모듈지문인식센서의기능은다음표와같으며, 지문인식은다음과같이크게두가지과정으로구성되며, 표3에서는적용된지문센서의사양을보여준다. 첫째는, 지문등록 (enrollment) 으로지문센서로부터취득된영상데이터에대해고수준의영상처리과정으로구성된지문인식알고리즘을거쳐서, 각지문별로고유한특징들을추출하여데이터베이스로저장하는과정이다. < 표 3> 지문센서사양 프로세싱 120MHz DSP 지문이미지저장시간 <0.5초 지문창크기 14*18mm 매칭방식 1:1 비교모드 1:N 검색모드 서명파일 256 byte 템플릿파일 512 byte 저장공간 120/375/880 개 보안레벨 5단계 ( 저-고 1,2,3,4,5) 인식에러율 (FAR) 0.001% 검색시간 <1.0초 PC 인터페이스 UART(TTL) 통신속도 9600~11530 bps 동작전원 DC 3.6~6V 소비전류 100ma(Max 150mA) 동작온도 -20~40 C 제품크기 56 x 20 x 21.5 mm 둘째는, 지문인증 (verification) 으로재입력된지문으로부터특징을추출하고, 이를등록된지문과비교하여동일여부를판별하는것이다. 지문인식주요구현부분은다음과같다. 가. 등록과정 (Enroll) 1. Setup - 시리얼지정 - 센서시리얼포트에대한데이터율지정 - 센서패스워드검증 2. Loop - 식별구분 ID 부여 - ID 할당하고지문인식 (getfingerprint(id)) - 지문이미지가져오기 (finger.getimage()) - 이미지변환 (finger.image2tz(1)/finger.image2tz(2)) - 지문모델생성 (finger.createl()) - 지문모델 ID 부여저장 (finger.storel(id)) - 에러처리 나. 식별과정 (Verification) 1. Setup - 시리얼지정 - 센서시리얼포트에대한데이터율지정 - 센서패스워드검증 2. Loop - 지문이미지가져오기 (finger.getimage()) - 이미지변환 (finger.image2tz()) - 지문찾기 (finger.fingerfastsearch()) - 에러처리 3.2.3 윈도우즈서버시스템 가. 데이터수신이벤트핸들러생성 serial.datareceived = new SerialDataReceivedEventHandler(serial_DataReceived); string[] ports = SerialPort.GetPortNames(); foreach (string port in ports) 나. 데이터수신메소드 try { g_srecvdata = serial.readexisting(); //serialport에서즉 시사용할수있는정보를읽어온다. if ((g_srecvdata!= string.empty)) { // 시리얼통신을통해얻은데이터 Set SetText(g_sRecvData); } } catch (TimeoutException) { g_srecvdata = string.empty; // 할당된시간이만료되 었을때빈문자열나타낸다. } 422
다. 윈도우즈푸쉬서버및스마트디바이스연동서버와의스마트연동을위해다양한메시지전송기법이있다. 스마트디바이스단말로알림메시지를보내는기술적인방법은단순 SMS를이용하는알림, 연결을만들어놓은상태에서알림, 구글의푸쉬서비스를 (C2DM) 사용한알림이있다. 최근프로요버전부터사용된푸쉬서비스는효과적으로푸쉬메시지를보내준다. 단말에서서버로연결을유지하고있는상태에서동시에연결을지속적으로유지하기위해연결이끊어졌는지검사하는폴링 (Polling) 메커니즘을구현해야한다. 비인가출입을스마트단말기로상황을전송하기위해푸쉬서비스를적용한다.[6] 4 메시지 ( 링크정보 ) 사용자 email 계정 크롬브라우저 (PC) 5 등록ID 메시지 ( 링크정보 ) 3 등록 ID 등록 ID 2 사용자 email 계정 C2DM Server 안드로이드애플리케이션 1 인증프로세스 - 통신 URL 인증 - 응답상태체크 2 서버인증 - 유효서버인증델리게이터모델링 3 메시지전송 - C2DM 웹요청객체생성 - 질의스트링생성 - 전송필드네임값추가 (" 전송메시지 ", 메시지 ); - 유효서버인증 6 메시지 ( 링크정보 ) 1 송신자 ID ( 개발사 email 계정 ) 애플리케이션 ID [ 그림 8] 푸쉬서버메시지전송플로우 푸쉬메시지전송과정메시지전송과정은다음과같다. 1 미리등록된이메일을이용해등록및등록 ID 수신 2 등록 ID 를어플리케이션서버로전송 3 어플리케이션서버에등록 ID 저장 4 미리등록된이메일과패스워드를이용해인증 5 등록 ID 와 AUTH 토큰을이용해메시지전송 6 요청에대한인증 7 메시지를큐에저장 8 전송경로확인 9 메시지전송 10 큐에저장된메시지삭제 비인가접근알림 3rd party 서버구현 - 바이트유형의스트림생성 - 메시지전송 서버푸쉬적용코드 authresult = CHK_Auth() Dim SEND_URL Dim senehttp str_tb = "registration_id=" & reg_id & "&collapse_key=1&delay_while_idle=1&data.msg=" & r_msg SEND_URL = "http://android.apis.google.com/c2dm/send" Set senehttp = Server.CreateObject("MSXML2.ServerXMLHTTP") senehttp.open "POST",""& SEND_URL &"",false senehttp.setrequestheader "POST", ""& SEND_URL &" HTTP/1.0" senehttp.setrequestheader "Content-Type", "application/x-www-form-urlencoded" senehttp.setrequestheader "Authorization", "GoogleLogin auth=" & authresult 스마트권한설정 <uses-permission android:name="android.permission.receive_boot_co MPLETED" /> <receiver android:name =".BootReceiver"> <intent-filter> <action android:name="android.intent.action.boot_ COMPLETED" /> </intent-filter> </receiver> // poweron시자동실행 4. 실험및고찰 4.1 아두이노보드연동 지문센서가장착된아두이노보드를로컬환경에서시험하는과정을그림 9에서보여주고있다. 등록된지문인식시에성공메시지를보여주며, 지문파일은 XBee를통해서버시스템으로전송된다. [ 그림 9] 지문센서가장착된아두이노보드 423
디지털정책연구제 10 권제 11 호 (2012.12) 4.2 RIA 서버연동전송된지문정보에대하여접근가능한동호수의정보를제공한다. 그림 10에서는접근가능한정보와푸쉬서버가구축된서버시스템을보여준다. 푸쉬서버를통해비인가된접근시푸쉬메시지를스마트디바이스로전송한다. [ 그림 10] RIA 서버연동화면 4.3 스마트확인스마트환경에서접속된서버시스템을확인하는것이가능하며, 그림 11에서는전송된푸쉬메시지를확인할수있다. 능성을제시한것에본논문의의의가있다. 향후연구방향으로는카메라장착을통하여보다더정확한위험발생을고지할수있도록하는것이다. 참고문헌 [1] 정보통신부 한국인터넷정보센터 대한주택공사, 홈네트워크수요조사를통한홈디지털서비스제공방안연구, 2003.11, pp.192 193. [2] Arduino website, http://www.arduino.cc/ [3] IEEE std. 802.15.4-2003: Wireless Medium Access Control (MAC) and Physical Layer (PHY) specifications for Low Rate Wireless Personal Area Networks (LR-WPANs), http://standards.ieee.org/ getieee802/download/802.15.4-2003.pdf [4] V. Georgitzikis, O. Akribopoulos and I. Chatzigiannakis. Controlling Physical Objects via the Internet using the Arduino Platform over 802.15.4 Networks, IEEE LATIN AMERICA TRANSACTIONS, VOL. 10, NO. 3, APRIL 2012 [5] http://www.sparkfun.com/datasheets/wireless/ Zigbee/XBee-Manual.pdf [6] https://developers.google.com/android/c2dm/ (a) 스마트디바이스서버접속 (AVD) 5. 결론 (b) 지문인식위험알림화면 [ 그림 11] 스마트디바이스연동화면 본논문에서는저가형의오픈소스기반의지문센서를활용한무선홈네트워킹의서비스를제안하였다. 본시스템은최신윈도우즈서버와최근발표된 c2dm 푸쉬서비스를적용하여시대적변화에신속히적용된서버시스템을구축하였다. 본논문에서제안한시스템으로최신 SNS 환경에적용가능한저가형서버플랫폼의구축가 최성자 1991년 2월 : 한남대학교컴퓨터공학과 ( 공학사 ) 1997년 2월 : 한남대학교컴퓨터공학과 ( 공학석사 ) 2005년 8월 : 한남대학교컴퓨터공학과 ( 공학박사 ) 1996년 1월 ~ 2000년 9월 : 하이퍼정보통신선임연구원 2001년 1월 ~ 2006년 8월 : IRE Communications 연구개발팀장 2006년 9월 ~ 2008년 2월 : 한남대학교 Bk21사업단정보보안공학지역핵심사업팀연구교수 2006년 9월 ~ 현재 : 한남대학교시간강사 관심분야 : 소프트웨어아키텍쳐, 클라우드, UI/UX E-Mail : irecomm@naver.com 424
강병권 1986년 2월 : 연세대학교전기공학과 ( 공학사 ) 1988년 2월 : 연세대학교전기공학과 ( 공학석사 ) 1993년 2월 : 연세대학교전기공학과 ( 공학박사 ) 1993년 3월 ~ 1997년 8월 : 한국전자통신연구원이동통신기술연구단선임연구원 2005년 8월 ~ 2006년 7월 : 미국조지아공대방문교수 1997년 9월 ~ 현재 : 순천향대학교정보통신공학과교수 관심분야 : RTLS, RFID, 홈네트워킹 E-Mail : bgkang@sch.ac.kr 425