IT 프로그래밍-Server

모바일신분증 연계서비스 연동하기-1

godsangin 2023. 8. 16. 22:02
반응형

안녕하세요.
 
이번에는 행정안전부에서 운영하고 있는 모바일신분증 서비스를 이용하여 우리서비스에서 본인확인 등 여러 수단으로 이용하는 방법에 대해 알아보려 합니다.
 
모바일신분증은 지난 2022년 7월부터 본격적으로 도입되어 현재 금융권, 공공기관 등 다양한 분야에서 인증 및 개인정보 제공수단으로 사용되고 있습니다. 모바일 신분증을 육안으로 확인하는 것도 실물 신분증과 동일한 효력이 있다는 점이 있고, 인증정도의 강화를 위해(금융기관 등) 진위여부를 확인할 수 있도록 신분증 연계시스템을 개발할 수 있는데요. 오늘은 연계시스템 개발을 위한 연계신청 및 블록체인 검증 및 복호화를 위한 DID&Wallet 생성 방법에 대해 알아보도록 하겠습니다.
 
우선 모바일신분증 연계와 관련한 내용은 다음 홈페이지에서 확인하실 수 있는데요.
https://dev.mobileid.go.kr/

index

dev.mobileid.go.kr

위 개발지원센터의 기술지원 - 신청서 다운로드에서 신청서식을 다운받으실 수 있습니다.
 
신청서를 열람해보시면 아시겠지만 다양한 종류의 연계방식이 있는데요. 저의 예제에서는 QR-MPM(매장에서 QR을 표출하고, 고객의 휴대폰으로 QR정보를 촬영하는 방식)을 적용해보도록 하겠습니다.
 
우선 우리기관(기업)에서 모바일신분증 연계서비스를 도입하기 위한 서버정보 및 활용하고자 하는 서비스를 기입하여 신청서를 개발지원센터를 통해 제출하면, 승인 및 개발용 DID 등록 요청 메일이 오게됩니다. 
신청서와 관련한 내용은 신청서식 및 개발지원센터 연락처(042-870-1499)에 문의하여 주시면 될 것 같습니다! ㅎㅎㅎㅎ
 
자, 그러면 개발용 DID를 생성하는 방법에 대해 알아볼까요 ?
개발지원센터의 기술지원 - 활용가이드 다운로드의 SP 서버 Wallet&DID 생성 가이드를 다운로드 받습니다.

가이드 내 필독사항을 꼭 읽어보라고 하여 보니 가이드와는 생성방법이 약간 다른 것으로 보입니다.(가이드는 개정 예정이라고 하네요)
command_sample의 코드를 이용하여 Wallet&DID를 생성합니다.
 
저는 윈도우 명령어를 이용해서 생성해보도록 하겠습니다.
우선 Wallet을 생성합니다.

//password 설정을 별도로 하고 기억해두어야 합니다.
omni-cli.bat keymanager createstore -p
// 여기서 keyid인 omni.sp는 원하는 값으로 설정가능하나
// 나중에 설정파일에 사용되어야 하니 어떻게 설정하였는지 기억해둡니다.
omni-cli.bat keymanager addkey -i omni.sp --keytype 0 -p
// 마찬가지로 omni.sp.rsa도 기억해둡니다.
omni-cli.bat keymanager addkey -i omni.sp.rsa --keytype 1 -p
// 등록현황 확인
omni-cli.bat keymanager list -p

다음으로 DID를 생성합니다.

omni-cli.bat did2 create -i omni.sp --keymethod 3 -s sp.did --controller did:kr:mobileid:3pnuR77qKLZWnu4kaw4qmVtGcoZt -p
omni-cli.bat did2 addkey -i omni.sp.rsa --keymethod 4 -f sp.did -p

자 ! 여기까지 완료하였으면 복호화를 위한 wallet(우리 서버에 둘)와 DID(우리기관정보 및 공개키 등을 모바일신분증 블록체인에 등록) 생성이 완료되었습니다.

이제, sp.did 파일을 개발지원센터 이메일(mid_apply@komsco.com)로 송부하여 블록체인플랫폼에 업로드를 요청합니다.
 
이번시간에는 연계신청 및 wallet&did생성까지 알아봤고, 다음시간에는 DID등록 이후, 개발지원센터에서 제공하는 샘플 라이브러리 및 테스트 앱을 이용하여 연계시스템을 실제로 응용해보는 시간을 가져보도록 하겠습니다.
 
그럼 안녕~