Appearance
PC/Mobile 샘플 이용 방법
샘플 페이지를 이용해서 Push 또는 QR 방식으로 모바일 신분증 인증을 테스트할 수 있어요.
1. Push 검증

VC 선택 - 인증방식 - 제출정보선택- ※ 등록된 서비스코드가 1개일 경우 선택할 필요 없음

활용 앱 선택
PUSH 선택
이름 / 전화번호 입력
서비스 이용 동의
- 서비스 이용약관: 필수항목, 수정불가
- 기타 항목은 기관별 동의 범위에 맞게 수정
- pcView.js:
<dl class="agree-popup"> - mobileView.js:
<dl class="agree-popup-layout">
- pcView.js:
인증 요청 (
/push/startAPI)
java
@PostMapping(value = "/push/start")
public MipApiDataVO pushStart(@RequestBody T540VO t540) throws SpException {
T540VO data = webService.pushStart(t540);
MipApiDataVO mipApiData = new MipApiDataVO();
mipApiData.setResult(true);
mipApiData.setData(Base64Util.encode(ConfigBean.gson.toJson(data)));
return mipApiData;
}- 요청 VO:
T540VO - 응답 VO:
MipApiDataVO
- 인증 결과 확인 (
/crtfc/cmplAPI)
java
@Override
public void crtfcCmpl(String trxcode) throws SpException {
TrxInfoVO trxInfo = trxInfoService.getTrxInfo(trxcode);
if (TrxStsCodeEnum.VERIFY_COM.getVal().equals(trxInfo.getTrxStsCode())) {
VP vp = ConfigBean.gson.fromJson(trxInfo.getVp(), VP.class);
VCVerifyProfileResult profile = new VCVerifyProfileResult();
profile.setEncryptType(vp.getEncryptType());
profile.setKeyType(vp.getKeyType());
profile.setType(vp.getType());
profile.setData(vp.getData());
profile.setAuthType(vp.getAuthType());
profile.setDid(vp.getDid());
profile.setNonce(vp.getNonce());
String vpData = verifyManager.getVPData(profile);
List<Unprotected> privacyList = verifyManager.getPrivacy(vpData);
LOGGER.debug("privacyList size : {}", privacyList.size());
// 사용자 정보 활용 로직 구현
} else {
throw new SpException(MipErrorEnum.SP_MSG_SEQ_ERROR, trxcode);
}
}2. QR 검증

VC선택-인증방식-제출정보선택- ※ 등록된 서비스코드가 1개일 경우 선택할 필요 없음

서비스 이용 동의 (개인정보 동의 커스터마이징 가능)
QR 요청 (
/qr/startAPI)
java
@PostMapping(value = "/qr/start")
public MipApiDataVO qrStart(@RequestBody T510VO t510) throws SpException {
T510VO data = webService.qrMpmStart(t510);
MipApiDataVO mipApiData = new MipApiDataVO();
mipApiData.setResult(true);
mipApiData.setData(Base64Util.encode(ConfigBean.gson.toJson(data)));
return mipApiData;
}- 요청 VO:
T510VO - 응답 VO:
MipApiDataVO
- 인증 결과 확인 (
/crtfc/cmplAPI 사용, Push와 동일)
java
@Override
public void crtfcCmpl(String trxcode) throws SpException {
TrxInfoVO trxInfo = trxInfoService.getTrxInfo(trxcode);
if (TrxStsCodeEnum.VERIFY_COM.getVal().equals(trxInfo.getTrxStsCode())) {
VP vp = ConfigBean.gson.fromJson(trxInfo.getVp(), VP.class);
VCVerifyProfileResult profile = new VCVerifyProfileResult();
profile.setEncryptType(vp.getEncryptType());
profile.setKeyType(vp.getKeyType());
profile.setType(vp.getType());
profile.setData(vp.getData());
profile.setAuthType(vp.getAuthType());
profile.setDid(vp.getDid());
profile.setNonce(vp.getNonce());
String vpData = verifyManager.getVPData(profile);
List<Unprotected> privacyList = verifyManager.getPrivacy(vpData);
LOGGER.debug("privacyList size : {}", privacyList.size());
// 사용자 정보 활용 로직 구현
} else {
throw new SpException(MipErrorEnum.SP_MSG_SEQ_ERROR, trxcode);
}
}VP복호화와 개인정보 추출은 Push, QR 모두 동일한 방식으로 수행해요.- 복호화된 데이터는 서비스 시스템에 전달하거나 사용자 세션에 반영해서 인증 결과로 활용할 수 있어요.