본 번역은 검증되지 않았습니다. AIP를 통해 영문원문으로부터 번역되었습니다.

시작하기

이 가이드는 다음 섹션을 포함합니다:

Cipher 채널 생성

Cipher 채널을 생성할 때 먼저 암호화 알고리즘을 선택한 후 비밀을 생성해야 합니다. 새로운 Cipher 채널을 생성하는 방법은 두 가지가 있습니다:

옵션 1: 플랫폼 파일 시스템을 통해 Cipher 채널 생성

선택한 프로젝트로 이동하여 + New > Cipher Channel을 선택하여 새로운 Cipher 채널을 생성합니다. 원하는 알고리즘을 선택합니다; 암호화된 값에 대해 조인을 수행하려면 AES SIV를 권장합니다.

채널 액션

Foundry 파일 시스템에서 Cipher 채널을 생성할 수 없는 경우, Palantir 담당자에게 도움을 요청하세요.

옵션 2: Cipher 애플리케이션을 통해 Cipher 채널 생성

패널의 왼쪽에서 Platform Apps > Data Governance 아래에서 Cipher를 찾아 옵션 1과 동일한 지침을 따릅니다.

채널 대화상자

암호화 알고리즘 선택 방법

화면 가이드는 원하는 프로토콜로 Cipher 채널을 생성하는 과정을 안내합니다. 다음은 유즈케이스에 맞는 구성을 선택하는 데 도움이 될 수 있는 추가 세부사항입니다:

  • 알고리즘: Cipher는 현재 다음 알고리즘을 지원합니다:
    • 텍스트 기반: AES_GCM_SIV 확률적 암호화 알고리즘, AES_SIV 결정적 암호화 알고리즘, SHA-256 해싱 알고리즘(페퍼 포함), SHA-512 해싱 알고리즘(페퍼 포함).
    • 이미지 기반: Visual Obfuscation Image Scrambling.

해싱과 암호화의 주요 차이점은 암호화된 값은 사용자가 적절한 권한을 가지고 있을 경우 복호화할 수 있지만, 해시된 값은 암호화 작업을 통해 비식별화되거나 재식별될 수 없다는 것입니다. 유즈케이스가 재식별을 필요로 한다면 암호화를 사용하는 것을 권장합니다.

확률적 암호화와 결정적 암호화의 주요 차이점은 다음과 같습니다:

  • 확률적 암호화: 동일한 입력은 항상 다른 결과물을 생성합니다.
  • 결정적 암호화: 동일한 입력은 항상 동일한 결과물을 생성합니다.
  • 해싱: 항상 결정적입니다.

Visual Obfuscation Image Scrambling 알고리즘은 결정적이며 되돌릴 수 있습니다.

결정적 알고리즘과 확률적 알고리즘을 선택할 때 고려해야 할 사항은 다음과 같습니다:

  • 암호화된 데이터에서 조인이나 집계를 수행해야 하는 경우, 결정적 알고리즘이 필요합니다.
  • 암호화하려는 데이터가 낮은 카디널리티를 가지거나 잘 알려진 통계적 분포를 가지는 경우, 암호화된 데이터에 대한 사전 공격이나 통계적 공격의 위험을 제한하기 위해 확률적 알고리즘을 선택할 수 있습니다.

암호 시스템 키 구성 방법

화면 가이드는 암호 시스템을 구성하는 과정을 안내합니다. 이전에 선택한 암호화 알고리즘에 따라 민감한 데이터를 보호하기 위한 다양한 비밀 형식을 선택할 수 있습니다.

  • 비밀:
    • 암호화: 비밀에서 키를 파생할 수 있는 두 가지 키 검색 방법이 있습니다:
      • 키 파생 스트레칭(권장): Cipher 서비스는 전통적으로 키를 강화하는 방법을 적용하여 비밀에서 키를 파생합니다. 키 버튼을 클릭하여 무작위로 비밀을 생성할 수 있습니다.
      • 단일 키: 이 방법론은 파생 함수를 포함하지 않습니다. 이미 잘 설계된 AES_SIV 키를 키 자체로 사용하려는 경우 이 방법을 사용하는 것을 권장합니다. 이는 길이 64의 base64로 인코딩된 문자열로 입력해야 합니다.
    • 해싱: 해시 비밀 생성:
      • 터미널에서 명령을 실행하여 직접 해시 비밀을 생성하는 것을 권장합니다(최소 14자 및 무작위 생성).
      • 또는 키 버튼을 클릭하여 무작위로 비밀을 생성할 수 있습니다.
    • Visual Obfuscation: 이미지 스크램블링 시드:
      • 이미지의 픽셀을 재배치하고 수정하는 시퀀스를 생성하는 데 사용될 긴 무작위 숫자를 제공합니다.

Create cipher channel을 클릭하면 Cipher 채널 생성 프로세스가 완료됩니다.

라이선스 발급

Cipher 라이선스를 발급하려면, Cipher 채널로 이동하여 Create New Cipher License 버튼을 클릭하세요.

Cipher 라이선스 발급

Cipher 라이선스가 허용하는 작업에 대한 액세스를 사용자에게 부여하려면, 라이선스에 대한 보기 액세스를 부여하세요.

세 가지 유형의 라이선스 중에서 선택할 수 있습니다:

Operational User LicenseData Manager LicenseAdmin License
셀 수준에서 감사 가능
속도 제한을 강제할 수 있음
전체 열을 암호화/복호화하는 데 사용됨
암호화 키에 대한 액세스를 효과적으로 부여함⚠️
사용 가능
오브젝트 레이어 (Workshop, Object Explorer, ...)
Functions (see bypassing Checkpoints)
Pipeline Builder
Contour
코드 작성

Operational User License

Operational User License(이전 "Frontend License")는 Foundry 사용자가 개별 값을 암호화하거나 복호화할 수 있도록 합니다.

Operational User Licenses의 두 가지 구성 가능한 권한은 다음과 같습니다:

  • 개별 값의 암호화/해싱: Foundry 애플리케이션을 통한 단일 값 암호화 또는 해싱. 이 작업에 대한 속도 제한 카운터를 설정할 수 있습니다.
  • 개별 값의 복호화: Foundry 애플리케이션을 통한 단일 값 복호화. 이 작업에 대한 속도 제한 카운터를 설정할 수 있습니다. 이 구성은 Workshop 및 Object Explorer와 같은 프론트엔드를 통해 사용자가 특정 암호화된 값을 볼 수 있도록 하는 데 유용할 수 있습니다.

속도 제한은 개인이 구성된 시간 내에 허용되는 단일 값 암호화 작업의 수를 나타내는 선택적 구성입니다. 사용자가 제한을 초과하면 기간이 재설정될 때까지 차단됩니다.

Operational User License를 사용하여 수행된 작업은 완전히 감사 가능합니다.

Checkpoints 우회

라이선스가 checkpoints를 우회할 수 있도록 허용하면, Functions 또는 직접 API 호출과 같이 checkpoints를 표시할 수 없는 곳에서 라이선스를 사용할 수 있습니다. 이 라이선스의 사용은 여전히 셀 수준에서 감사 가능하며 속도 제한됩니다.

Data Manager License

Data Manager License(이전 "High Trust License")는 Foundry 사용자가 Pipeline Builder 및 Contour와 같은 도구를 사용하여 데이터셋의 전체 열을 암호화하거나 복호화할 수 있도록 합니다. 이 구성은 포인트 앤 클릭 도구를 활용하는 사용자뿐만 아니라 엄격한 보안 우려가 있는 사용자에게 유용할 수 있습니다. Pipeline Builder에서 Cipher 사용에 대해 자세히 알아보세요.

Data Manager Licenses의 두 가지 구성 가능한 권한은 다음과 같습니다:

  • 열 수준 암호화/해싱: Pipeline Builder 및 Contour와 같은 도구를 통한 데이터셋 열의 암호화 또는 해싱.
  • 열 수준 복호화: Pipeline Builder 및 Contour와 같은 도구를 통한 데이터셋 열의 복호화.

Admin License

Admin License(이전 "Transforms License")는 Foundry 사용자가 Code Repositories에서 데이터셋의 전체 열을 암호화하거나 복호화할 수 있도록 하며, 암호화 키에 대한 액세스를 부여합니다.

Transforms에서의 작업을 허용하면 사용자가 암호화 키에 대한 액세스를 효과적으로 부여받습니다. 이 라이선스에 대한 액세스는 권한이 상승된 사용자에게만 부여되도록 하세요.

Admin Licenses의 두 가지 구성 가능한 권한은 다음과 같습니다:

  • 암호화/해싱 관리자: Code Repositories에서 데이터셋 열의 암호화 또는 해싱 및 암호화 키 액세스.
  • 복호화 관리자: Code Repositories에서 데이터셋 열의 복호화 및 복호화 키 액세스.

워크스루 가이드

위의 단계에 익숙해지면, 이 튜토리얼을 참조하여 Cipher 애플리케이션을 사용하여 암호화 액션을 수행하는 방법을 안내합니다.

이 튜토리얼은 가상의 직원 데이터를 사용합니다. 이 문서에서 공유된 정보는 이미지 및 동반 데이터셋을 포함하되 이에 국한되지 않는 모든 정보는 가상의 것입니다.

재현 단계

시작하기 전에, 가상의 직원 데이터셋을 다운로드하고 Foundry에 업로드하세요.

  1. **Cipher 채널 생성**을 시작 프로젝트에서 수행합니다.
  2. **Data Manager License 생성**을 암호화 허가와 함께 생성합니다.
  3. Pipeline Builder로 민감한 열 암호화: 새로운 파이프라인을 생성하고 오른쪽 상단에서 + New > Pipeline을 선택하여 직원 데이터셋을 Pipeline Builder로 가져옵니다. 그런 다음, 방금 생성한 Data Manager License를 사용하여 Employee_name 열에 Cipher encrypt 변환을 선택하고 적용합니다. 열이 이제 암호화되어야 합니다. 암호화가 완료되면, 데이터셋과 함께 Object type 파이프라인 결과물을 추가하고 Employee_number를 기본 키 및 제목으로 사용합니다. (Pipeline Builder에 대해 자세히 알아보세요)

Pipeline Builder를 사용하여 열 암호화

  1. 오브젝트 결과물 추가: Pipeline outputs 아래 회전 아이콘에서 Output settings로 이동합니다. Target ontologyOutput folder를 선택하고 저장을 클릭합니다. 이 데이터셋 내의 오브젝트에 액세스하면, 이전에 암호화된 값 세트가 이제 접근 불가능하게 되어 볼 수 없게 됩니다. 다음 단계에서는 이러한 값을 복호화하는 방법에 대한 지침을 제공합니다.

Ciphertext 속성 유형 구성

  1. Operational User License 생성: Cipher 채널로 돌아가서 복호화 허가가 있는 새로운 Operational User License를 생성합니다. 이 라이선스는 오브젝트에 대한 복호화를 수행할 수 있도록 합니다. 위와 동일한 작업을 수행하면 이제 오브젝트의 값을 복호화할 수 있어야 합니다.

Cipher를 사용한 복호화 요청 워크플로우