エージェントの使用
    • PDF

    エージェントの使用

    • PDF

    Article Summary

    VPC環境で利用できます。

    クラウドを介さずにローカルで直接キーの作成とデータ暗号化を行う場合、エージェントをダウンロードして使用できます。エージェントを通じてローカルで暗号化したデータは、クラウドにアップロードして演算を行えます。

    エージェントを使用するには、Pythonコマンドに関する諸般の知識が必要です。

    エージェントがサポートされるOSは以下のとおりです。

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

    エージェントを実行しているPCのメモリ(RAM)は少なくとも8 GBを推奨し、メモリが不足するとキーの生成と復号化の操作が正しく行われずに終了することがあります。

    エージェントのインストール

    エージェントをダウンロードしてインストールする方法は以下のとおりです。

    1. NAVERクラウドプラットフォームコンソールのVPC環境でServices > Big Data & Analytics > HEaaN Homomorphic Analytics > KeyまたはDataメニューを順にクリックします。
    2. [エージェントのダウンロード] ボタンをクリックし、使用中のOSに合ったバージョンを選択してダウンロードします。
    3. 以下の命令を実行してインストールしてください。
      pip3 install NPC_HeaanAgent-2.1.0-py3-non-any.whl
      

    エージェントの使用

    インストールが完了したエージェントを使用して、ローカルで同型暗号鍵の作成、データの暗号化と復号化、鍵とデータのアップロードを実行できます。

    同型暗号鍵の生成

    エージェントを使用してローカルでホメオパシーキーを生成するには、以下のコマンドを実行してください。

    python3 -m hkey -o /Users/user/key -p 7
    
    • oオプションでキーを生成するパスを設定します。
    • p オプションに同型暗号キーの Capability を設定します。 そのオプションを選択しないとデフォルトでブートストラップ可能なキーが生成され、7を選択するとブートストラップ不可能なキーが生成されます。
    参考
    • 同型暗号鍵は、暗号鍵、復号鍵、演算鍵の3種類に分けられます。
    • ブートストラップ不可能なキーは、乗算演算の回数が制限されているため、機械学習演算には使用できません。

    同型パスワードキーアップロード

    エージェントを使用してローカルに生成された同型暗号キーをアップロードするには、以下のコマンドを実行してください。

    python3 -m hkey -o /Users/user/key -U -ak Dn391Nasf9 -sk 3KzAKnNOZN152NdZ0M2ALLNVI31
    
    • oオプションで生成したキーパスを設定します。
    • Uオプションでキーをアップロードします。
    • akオプションにNaver Cloud PlatformメンバーアカウントのAccess Key IDを設定します。
    • sk オプションにネイバークラウドプラットフォームのメンバーアカウントのシークレットキーを設定します。
    参考
    • 暗号化キーと操作キーをアップロードし、復号化キーをアップロードしません。
    • すでに同じ名前のキーをアップロードしている場合、アップロードは失敗します。
    • ネイバークラウドプラットフォーム会員アカウントの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オプションを設定する必要はありません。

    データのアップロード

    エージェントを使用してローカルでパスワードをアップロードするには、以下のコマンドを実行してください。

    • o オプションにパスフレーズパスを設定します。
    • Uオプションでパスワードをアップロードします。
    • fn オプションに、ネイバークラウドプラットフォームのコンソールで作成したデータフォルダ名を設定します。
    • akオプションにNaver Cloud PlatformメンバーアカウントのAccess Key IDを設定します。
    • sk オプションにネイバークラウドプラットフォームのメンバーアカウントのシークレットキーを設定します。
    参考
    • すでに同じ名前の暗号文をアップロードしている場合、アップロードは失敗します。
    • データフォルダのリストは、NAVER Cloud Platform Consoleの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.