에이전트 사용
    • PDF

    에이전트 사용

    • PDF

    기사 요약

    VPC 환경에서 이용 가능합니다.

    클라우드를 통하지 않고 로컬에서 직접 동형암호 키 생성 및 데이터 암호화를 수행하려 할 경우 에이전트를 다운로드하여 사용할 수 있습니다. 에이전트를 통해 로컬에서 암호화한 데이터는 클라우드에 업로드하여 연산할 수 있습니다.

    에이전트를 사용하려면 Python 명령어에 대한 제반 지식이 필요합니다.

    에이전트가 지원되는 OS는 아래와 같습니다.

    • Linux - RHEL/CentOS
    • Linux - Ubuntu
    • Mac OS - x86(intel)/ arm64(m1)
    • Windows

    에이전트를 실행하는 PC의 메모리(RAM)는 최소 8GB 이상을 권장하며 메모리가 부족한 경우 키생성 및 암복호화 연산이 올바르게 수행되지 않고 종료될 수 있습니다.

    에이전트 설치

    에이전트를 다운로드한 후 설치하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Services > Big Data & Analytics > HEaaN Homomorphic Analytics > Key 또는 Data 메뉴를 차례대로 클릭해 주십시오.
    2. [에이전트 다운로드] 버튼을 클릭한 후 다운로드해 주십시오.
    3. 아래 명령어를 실행하여 설치해 주십시오.
    pip3 install NCP_HeaanAgent-2.1.0-py3-none-any.whl
    

    에이전트 사용

    설치가 완료된 에이전트를 사용하여 로컬에서 동형암호 키 생성, 데이터 암호화 및 복호화, 키와 데이터 업로드 작업을 수행할 수 있습니다.

    동형암호 키 생성

    에이전트를 사용하여 로컬에서 동형암호 키를 생성하려면 아래 명령어를 실행해 주십시오

    python3 -m hkey -o /Users/user/key -p 7
    
    • o 옵션에 키를 생성할 경로를 설정합니다.
    • p 옵션에 동형암호 키의 Capability를 설정합니다. 해당 옵션을 선택하지 않으면 디폴트로 부트스트랩 가능한 키가 생성되고, 7을 선택하면 부트스트랩 불가능한 키가 생성됩니다.
    참고
    • 동형암호 키는 암호화 키, 복호화 키, 연산 키 세 종류로 구분됩니다.
    • 부트스트랩 불가능한 키는 곱셈 연산의 횟수가 제한되어 머신러닝 연산에 사용할 수 없습니다.

    동형암호 키 업로드

    에이전트를 사용하여 로컬에서 생성한 동형암호 키를 업로드하려면 아래 명령어를 실행해 주십시오.

    python3 -m hkey -o /Users/user/key -U -ak Dn391Nasf9 -sk 3KzAKnNOZN152NdZ0M2ALLNVI31
    
    • o 옵션에 생성한 키 경로를 설정합니다.
    • U 옵션으로 키를 업로드합니다.
    • ak 옵션에 네이버 클라우드 플랫폼 회원 계정의 Access Key ID를 설정합니다.
    • sk 옵션에 네이버 클라우드 플랫폼 회원 계정의 Secret Key를 설정합니다.
    참고
    • 암호화 키와 연산 키를 업로드하고 복호화 키는 업로드하지 않습니다.
    • 이미 동일한 이름의 키를 업로드했다면 업로드가 실패합니다.
    • 네이버 클라우드 플랫폼 회원 계정의 Access Key ID와 Secret Key는 네이버 클라우드 플랫폼 포털의 마이페이지 > 계정 관리 > 인증키 관리 메뉴에서 확인해 주십시오.

    데이터 암호화

    에이전트를 통해 생성한 동형암호 키를 사용하여 데이터를 암호화하려면 아래 명령어를 실행해 주십시오.

    • 범용 연산을 위한 데이터 암호화
    python3 -m henc -i /Users/user/CSV_sample4.csv -o /Users/user/CSV_sample4 -k /Users/user/key
    
    • 머신러닝 학습을 위한 데이터 암호화
    python3 -m henc -id /Users/user/CSV_sample4.csv -od /Users/user/CSV_sample4 -l label -k /Users/user/key
    
    • 머신러닝 추론을 위한 데이터 암호화
    python3 -m henc -it /Users/user/CSV_sample4.csv -ot /Users/user/CSV_sample4 -l label -k /Users/user/key
    
    • i 옵션에 범용 연산을 위한 데이터 파일의 경로를 설정합니다.
    • id 옵션에 머신러닝 학습을 위한 데이터 파일의 경로를 설정합니다.
    • it 옵션에 머신러닝 추론을 위한 데이터 파일의 경로를 설정합니다.
    • o, -od, -ot 옵션에 암호문이 생성될 경로를 설정합니다.
    • l 옵션에 머신러닝에 사용할 Label 컬럼 이름을 설정합니다.
    • k 옵션에 암호화에 사용될 키의 경로를 설정합니다.
    참고
    • 암호화 가능한 파일의 확장자는 csv, xlsx 입니다.
    • 연산 목적에 맞는 암호화 옵션을 사용해 주십시오.
    • 머신러닝 추론을 위한 데이터 암호화에는 -l 옵션을 설정하지 않아도 됩니다.

    데이터 업로드

    에이전트를 사용하여 로컬에서 암호문을 업로드하려면 아래 명령어를 실행해 주십시오.

    python3 -m henc -o /Users/user/CSV_sample4  -k /Users/user/key -fn samplefolder -U -ak Dn391Nasf9 -sk KzAKnNOZN152NdZ0M2ALLNVI31
    
    • o 옵션에 암호문 경로를 설정합니다.
    • U 옵션으로 암호문을 업로드합니다.
    • fn 옵션에 네이버 클라우드 플랫폼의 콘솔에서 생성한 데이터 폴더 이름을 설정합니다.
    • ak 옵션에 네이버 클라우드 플랫폼 회원 계정의 Access Key ID를 설정합니다.
    • sk 옵션에 네이버 클라우드 플랫폼 회원 계정의 Secret Key를 설정합니다.
    참고
    • 이미 동일한 이름의 암호문을 업로드했다면 업로드가 실패합니다.
    • 데이터 폴더 목록은 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Services > Big Data & Analytics > HEaaN Homomorphic Analytics > Data 메뉴에서 확인해 주십시오.
    • 네이버 클라우드 플랫폼 회원 계정의 Access Key ID와 Secret Key는 네이버 클라우드 플랫폼 포털의 마이페이지 > 계정 관리 > 인증키 관리 메뉴에서 확인해 주십시오.

    데이터 복호화

    에이전트를 통해 생성한 동형암호 키를 사용하여 데이터를 복호화하려면 아래 명령어를 실행해 주십시오.

    python3 -m hdec -i /Users/user/CSV_sample4_enc -o /Users/user/CSV_sample4/dec.csv -k /Users/user/key
    
    • i 옵션에 복호화 대상 암호문의 경로를 설정합니다.
    • o 옵션에 생성될 평문 경로를 설정합니다.
    • k 옵션에 복호화에 사용할 키의 경로를 설정합니다.
    참고
    • 네이버 클라우드 플랫폼 콘솔에서 동형 연산을 수행한 결과 암호문은 tar 확장자로 저장됩니다. tar 파일을 풀어서 복호화 명령어를 실행해 주십시오.

    에이전트 삭제

    에이전트를 삭제하려면 아래 명령어를 실행해 주십시오.

    pip3 uninstall -y  NCP-HeaanAgent
    

    이 문서가 도움이 되었습니까?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.