콘텐츠로 이동

본인 확인 서비스

Hive SDK는 본인 확인 서비스를 통해 성인 인증과 보호자 동의 기능을 제공합니다.

성인 인증

게임 등급 분류가 청소년 이용불가인 게임은 19세 미만의 미성년자는 이용할 수 없도록 제한되어야 합니다. Hive는 휴대폰 본인 인증을 통해 성인 여부 확인 후에만 게임 접속이 가능하도록 성인 인증 기능을 제공합니다. 성인 인증의 유효 기간은 1년이며, 이후에는 자동으로 재인증 절차가 진행됩니다.

성인 인증 기능은 따로 코드 구현을 할 필요가 없고 Hive 콘솔 설정만으로 사용할 수 있습니다. Hive 콘솔에서 성인 인증을 사용하도록 설정하면, 로그인 과정에서 성인 인증을 수행합니다.

Warning

성인 인증은 대한민국에서 주민등록번호 또는 외국인 등록번호를 보유했고 본인 명의 휴대폰을 가진 유저만 받을 수 있습니다.

성인 인증 실패 시 응답

미성년자가 성인 인증을 시도해 성인 인증에 실패하면 ResultAPI.CANCELED(-6)와 ResultAPI.Code.AgeLimit(-1200067), "Failed due to age restriction." 응답을 받습니다. 게임사에서는 이 응답을 토대로 게임 내 미성년 유저에게 원하는 방식으로 안내할 수 있습니다.

DI 해시값 획득

성인 인증 완료 후, AuthV4.getHashedDi 메서드를 사용하면 성인 인증된 유저를 식별할 수 있는 DI(Duplicated Joining Verification Information) 해시값을 얻습니다. DI를 해시한 이유는 보안 때문이며 게임사는 이 해시값을 그대로 사용해도 됩니다. 이 DI 해시값은 로그인 후 PlayerID에 연동되므로, 해시값을 성인 인증된 유저 식별자로 사용할 수 있습니다. 다음은 PlayerID에 연동된 DI 해시값을 얻는 예제 코드입니다.

API Reference: hive.AuthV4.getHashedDi

using hive;    
AuthV4.getHashedDi((ResultAPI result, String hashedDi) => {    
    if (result.isSuccess()) {    
        // API call successful 
    } else {
        // NEED_INITIALIZE setup 전 호출
        // INVALID_SESSION signIn 전 호출
        // DEVELOPER_ERROR, CommonLibraryMissing 성인 인증 라이브러리 참조 실패
    }
});
#include "HiveAuthV4.h"

FHiveAuthV4::getHashedDi(FHiveAuthV4OnHashedDiDelegate::CreateLambda([this](const FHiveResultAPI& Result, FString& hashedDi) {
    if (Result.IsSuccess()) {
        // API 호출 성공
    } else {
        // NEED_INITIALIZE setup 전 호출
        // INVALID_SESSION signIn 전 호출
        // DEVELOPER_ERROR, CommonLibraryMissing 성인 인증 라이브러리 참조 실패
    }
}));

API Reference: AuthV4::getHashedDi

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
using namespace std;    
using namespace hive;    
AuthV4::getHashedDi([=](ResultAPI result, string hashedDi) {    
    if (result.isSuccess()) {    
        // API call successful    
    } else {
        // NEED_INITIALIZE setup 전 호출
        // INVALID_SESSION signIn 전 호출
        // DEVELOPER_ERROR, CommonLibraryMissing 성인 인증 라이브러리 참조 실패
    }   
});

API Reference: AuthV4.getHashedDi

import com.hive.AuthV4    
import com.hive.ResultAPI    

AuthV4.getHashedDi(object : AuthV4.AuthV4GetHashedDiListener {    
    override fun onAuthV4GetHashedDi(result: ResultAPI, hashedDi: String?) {    
        if (result.isSuccess) {    
            // API call successful    
        } else {
            // NEED_INITIALIZE setup 전 호출
            // INVALID_SESSION signIn 전 호출
            // DEVELOPER_ERROR, CommonLibraryMissing 성인 인증 라이브러리 참조 실패
        } 
    }    
})

API Reference: AuthV4.getHashedDi

import com.hive.AuthV4;    
import com.hive.ResultAPI;    

AuthV4.getHashedDi(result, hashedDi -> {    
    if (result.isSuccess()) {    
        // API call successful    
    } else {
        // NEED_INITIALIZE setup 전 호출
        // INVALID_SESSION signIn 전 호출
        // DEVELOPER_ERROR, CommonLibraryMissing 성인 인증 라이브러리 참조 실패
    }
});

API Reference: AuthV4Interface.getHashedDi

import HIVEService

AuthV4Interface.getHashedDi() { result, hashedDi in    
    if result.isSuccess() {    
        // API call successful    
    } else {
        // NEED_INITIALIZE setup 전 호출
        // INVALID_SESSION signIn 전 호출
        // DEVELOPER_ERROR, CommonLibraryMissing 성인 인증 라이브러리 참조 실패
    }
}

API Reference: HIVEAuthV4:getHashedDi

#import <HIVEService/HIVEService-Swift.h>

[HIVEAuthV4 getHashedDi: ^(HIVEResultAPI *result, NSString *> *hashedDi) {    
    if ([result isSuccess]) {    
        // API call successful    
    } else {
        // NEED_INITIALIZE setup 전 호출
        // INVALID_SESSION signIn 전 호출
        // DEVELOPER_ERROR, CommonLibraryMissing 성인 인증 라이브러리 참조 실패
    }
}];

보호자 동의

청소년이 게임을 이용할 경우 청소년보호법에 따라 19세 미만은 보호자 동의가 있어야 가입 및 이용이 가능합니다. Hive SDK는 PC 게임 가입 시 휴대폰 본인 확인을 통해 청소년일 경우 보호자 동의를 받을 수 있는 기능을 제공합니다. 또한 CS 대응이나 보호자에게 게임 이용 내역을 제공하는 상황에도 원활히 처리할 수 있도록, 청소년의 생년월일과 보호자 이메일 주소를 앱에 전달합니다.

보호자 동의 정보를 가져오려면 보호자 동의 완료 후 getParentalConsentInfo() 메소드를 호출해야 합니다. getParentalConsentInfo 메소드는 보호자 동의 시 전달된 유저(미성년자)의 생년월일과 보호자의 이메일 주소를 전달합니다.

보호자 동의 정보를 가져오는 예제 코드는 아래와 같습니다.

API Reference: hive.AuthV4.getParentalConsentInfo

using hive;    

    AuthV4.ParentalConsentInfo parentalConsentInfo = AuthV4.getParentalConsentInfo();    
#include "HiveAuthV4.h"

TOptional<FHiveParentalConsentInfo> ParentalConsentInfo = FHiveAuthV4::GetParentalConsentInfo();

API Reference: AuthV4::getParentalConsentInfo

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    

    AuthV4::ParentalConsentInfo parentalConsentInfo = AuthV4::getParentalConsentInfo();