10/17(토) 개발현황 정보

저희 팀은 지정과제로 주어진 '생활관 병사 스마트폰 비대면 반납 앱'을 주제로 프로젝트를 진행하고 있습니다. 그리고 이를 위해서 저를 포함한 IoT분야 참가자 두 명과 App분야 참가자 한 명, 총 세 명이 팀으로 모였습니다.

팀의 구성에서 보이듯이, 저희는 App만을 통해 본 주제를 해결하고자 하지 않습니다. 현재 국군 장병들의 모든 스마트폰에는 '국방모바일보안' 이라는 어플이 깔려있습니다. 카메라 사용을 통제하기 위해 국방부에서 개발하여 배포한 어플인데, 어플에서 요구하는 권한도 많고 제한하는 방식도 섬세하지 않아서 사용자들 사이에 개인정보 유출, 성능 저하 등의 우려와 실제 불편함을 호소하는 목소리가 터져나오고 있습니다.

이에 저희는 App뿐만 아니라 IoT, Web등의 분야를 같이 활용함으로써 본 주제에 대한 깔끔하고 합리적인 해결책을 제안하기 위해 본 프로젝트를 진행하고 있습니다.

아래는 저희 프로젝트의 시스템 구조와 사용 시나리오 입니다.

  1. 어플을 처음 설치하면 병사는 자신의 정보를 입력하고 서버에 전송한다. 서버는 이를 데이터 베이스에 저장하고 seed값을 반환한다. seed값은 모바일 기기에도 저장되어 Time-based OTP 생성을 위해 사용된다.
  2. 병사가 어플에서 반납 버튼을 누르면, 기기에 저장되어 있는 seed값을 기반으로 Time-based OTP를 발급받아 기기 정보와 함께 QRCode로 변환한다.
  3. 반납기에 모바일 기기를 넣으면 반납기의 문이 잠기고 10초 정도 대기한다(Time-based OTP값이 갱신되도록). 반납기는 갱신된 QRCode를 스캔하여 기기 정보, 소속 정보와 TOTP값을 추출한다.
  4. 추출한 Time-based OTP값과 시간 정보를 서버로 보내 해당 Time-based OTP값이 유효한지 서버에서 검증한다.
  5. 값이 검증되었다면 무게, 반납시간을 서버에 전송하여 기록하고 기기 반납을 마무리한다.

현재까지 작업내용

APP(병사)