기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
란 무엇입니까 AWS Encryption SDK?
AWS Encryption SDK 는 모든 사람이 업계 표준 및 모범 사례를 사용하여 데이터를 쉽게 암호화하고 해독할 수 있도록 설계된 클라이언트 측 암호화 라이브러리입니다. 그럼으로써 데이터의 암호화 및 복호화 방법보다 애플리케이션의 핵심 기능에 집중할 수 있습니다. AWS Encryption SDK 는 Apache 2.0 라이선스에 따라 무료로 제공됩니다.
는 다음과 같은 질문에 AWS Encryption SDK 답합니다.
-
어떤 암호화 알고리즘을 사용해야 하나요?
-
이 알고리즘을 어떻게, 어떤 모드에서 사용해야 하나요?
-
암호화 키는 어떻게 생성하나요?
-
암호화 키를 보호하려면 어떻게 해야 하며 어디에 저장해야 하나요?
-
암호화된 데이터를 이동 가능하게 만들려면 어떻게 해야 하나요?
-
의도한 수신자가 내 암호화된 데이터를 읽을 수 있도록 하려면 어떻게 해야 하나요?
-
기록된 시점과 읽은 시점 사이에 내 암호화된 데이터가 수정되지 않도록 하려면 어떻게 해야 하나요?
-
AWS KMS 반환되는 데이터 키를 사용하려면 어떻게 해야 합니까?
를 사용하면 데이터를 보호하는 데 사용할 래핑 키를 결정하는 마스터 키 공급자(Python) 또는 키링(C, C#/., NETJava 및 JavaScript)을 AWS Encryption SDK정의할 수 있습니다. 그런 다음 에서 제공하는 간단한 방법을 사용하여 데이터를 암호화하고 복호화합니다 AWS Encryption SDK. 는 나머지를 AWS Encryption SDK 수행합니다.
이 없으면 애플리케이션의 핵심 기능보다 암호화 솔루션을 구축하는 데 더 많은 노력을 AWS Encryption SDK기울일 수 있습니다. 는 다음 사항을 제공하여 이러한 질문에 AWS Encryption SDK 답합니다.
- 암호화 모범 사례에 따른 기본 구현
-
기본적으로 는 암호화하는 각 데이터 객체에 대해 고유한 데이터 키를 AWS Encryption SDK 생성합니다. 이는 각 암호화 작업에 고유한 데이터 키를 사용하는 암호화 모범 사례를 따릅니다.
는 안전하고 인증된 대칭 키 알고리즘을 사용하여 데이터를 AWS Encryption SDK 암호화합니다. 자세한 내용은 AWS Encryption SDK에서 지원되는 알고리즘 제품군 단원을 참조하십시오.
- 래핑 키를 사용하여 데이터 키를 보호하기 위한 프레임워크
-
는 하나 이상의 래핑 키로 데이터를 암호화하여 데이터를 암호화하는 데이터 키를 AWS Encryption SDK 보호합니다. 둘 이상의 래핑 키로 데이터 키를 암호화하는 프레임워크를 제공하는 는 암호화된 데이터를 휴대 가능하게 만드는 데 AWS Encryption SDK 도움이 됩니다.
예를 들어 AWS KMS key 의 AWS KMS 와 온프레미스 의 키로 데이터를 암호화합니다HSM. 어느 하나의 래핑 키를 사용할 수 없거나 호출자가 두 키를 모두 사용할 권한이 없는 경우 데이터를 복호화하는 데 두 래핑 키 중 어느 것을 사용해도 됩니다.
- 암호화된 데이터와 함께 암호화된 데이터 키를 저장하는 형식 메시지
-
는 암호화된 데이터와 암호화된 데이터 키를 정의된 데이터 형식을 사용하는 암호화된 메시지에 함께 AWS Encryption SDK 저장합니다. 즉, 가 데이터를 암호화하기 때문에 데이터를 암호화하는 데이터 키를 추적하거나 보호할 필요가 없습니다 AWS Encryption SDK .
의 일부 언어 구현에는 가 AWS Encryption SDK 필요하지만 AWS SDK에는 AWS Encryption SDK 가 필요하지 않으며 AWS 서비스에 따라 달라지 AWS 계정 지 않습니다. 를 사용하여 데이터를 보호하려는 AWS 계정 경우에만 AWS KMS keys가 필요합니다.
오픈 소스 리포지토리에서 개발
는 의 오픈 소스 리포지토리에서 개발 AWS Encryption SDK 됩니다 GitHub. 이러한 리포지토리를 사용하여 코드를 보고, 문제를 읽고 제출하고, 언어 구현과 관련된 정보를 찾을 수 있습니다.
AWS Encryption SDK for C — aws-encryption-sdk-c
AWS Encryption SDK for .NET —
aws-encryption-sdk-dafny
리포지토리의 aws-encryption-sdk-net디렉터리입니다. AWS 암호화 CLI - aws-encryption-sdk-cli
AWS Encryption SDK for Java — aws-encryption-sdk-java
AWS Encryption SDK for JavaScript — aws-encryption-sdk-javascript
AWS Encryption SDK for Python — aws-encryption-sdk-python
암호화 라이브러리 및 서비스와의 호환성
AWS Encryption SDK 는 여러 프로그래밍 언어 에서 지원됩니다. 모든 언어 구현은 상호 연동이 가능합니다. 하나의 언어 구현으로 암호화하고 다른 언어 구현으로 복호화할 수 있습니다. 상호 연동성에는 언어 제약 조건이 적용될 수 있습니다. 이 경우 이러한 제약 조건은 언어 구현에 대한 주제에 설명되어 있습니다. 또한 암호화 및 복호화를 수행할 때는 호환되는 키링이나 마스터 키 및 마스터 키 공급자를 사용해야 합니다. 세부 정보는 키링 호환성을 참조하세요.
그러나 는 다른 라이브러리와 상호 운용할 AWS Encryption SDK 수 없습니다. 각 라이브러리는 암호화된 데이터를 다른 형식으로 반환하므로 한 라이브러리로 암호화하고 다른 라이브러리로 복호화할 수 없습니다.
- DynamoDB Encryption Client 및 Amazon S3 클라이언트 측 암호화
는 DynamoDB 암호화 클라이언트 또는 Amazon S3 클라이언트 측 암호화 로 암호화된 데이터를 복호화할 수 AWS Encryption SDK 없습니다. 이러한 라이브러리는 AWS Encryption SDK 반환되는 암호화된 메시지를 복호화할 수 없습니다.
- AWS Key Management Service (AWS KMS)
는 AWS KMS keys 및 데이터 키를 사용하여 다중 리전 KMS 키를 포함한 데이터를 보호할 AWS Encryption SDK 수 있습니다. 예를 들어 에서 하나 이상의 AWS KMS keys 에 따라 데이터를 암호화 AWS Encryption SDK 하도록 를 구성할 수 있습니다 AWS 계정. 그러나 AWS Encryption SDK 를 사용하여 해당 데이터를 복호화해야 합니다.
는 AWS KMS 암호화 또는 ReEncrypt 작업이 반환하는 암호 텍스트를 해독할 수 AWS Encryption SDK 없습니다. 마찬가지로 AWS KMS 복호화 작업은 AWS Encryption SDK 반환되는 암호화된 메시지를 복호화할 수 없습니다.
는 대칭 암호화 KMS 키 만 AWS Encryption SDK 지원합니다. 에서 암호화 또는 서명에는 비대칭 KMS 키를 사용할 수 없습니다 AWS Encryption SDK. 는 AWS Encryption SDK 메시지에 ECDSA 서명하는 알고리즘 제품군에 대한 자체 서명 키를 생성합니다.
지원 및 유지 관리
는 버전 관리 및 수명 주기 단계를 포함하여 및 도구가 사용하는 것과 AWS SDK 동일한 유지 관리 정책을 AWS Encryption SDK 사용합니다. 모범 사례로 프로그래밍 언어에 사용할 수 있는 최신 버전의 AWS Encryption SDK 를 사용하고 새 버전이 출시되면 업그레이드하는 것이 좋습니다. 1.7.x 이전 버전에서 2.0.x 이후 AWS Encryption SDK 버전으로 업그레이드하는 등 버전에 상당한 변경이 필요한 경우 도움이 되는 자세한 지침을 제공합니다.
의 각 프로그래밍 언어 구현 AWS Encryption SDK 은 별도의 오픈 소스 GitHub 리포지토리에서 개발됩니다. 각 버전의 수명 주기 및 지원 단계는 리포지토리마다 다를 수 있습니다. 예를 들어 특정 버전의 는 한 프로그래밍 언어의 일반 가용성(전체 지원) 단계에 있지만 다른 프로그래밍 언어의 end-of-support 단계에 AWS Encryption SDK 있을 수 있습니다. 가능하면 완전히 지원되는 버전을 사용하고 더 이상 지원되지 않는 버전은 피하는 것이 좋습니다.
프로그래밍 언어에 맞는 AWS Encryption SDK 버전의 수명 주기 단계를 찾으려면 각 AWS Encryption SDK 리포지토리의 SUPPORT_POLICY.rst
파일을 참조하세요.
AWS Encryption SDK for C — SUPPORT_POLICY.rst
AWS Encryption SDK 용 .NET — SUPPORT_POLICY.rst
AWS 암호화 CLI- SUPPORT_POLICY.rst
AWS Encryption SDK for Java — SUPPORT_POLICY.rst
AWS Encryption SDK for JavaScript — SUPPORT_POLICY.rst
AWS Encryption SDK for Python — SUPPORT_POLICY.rst
자세한 내용은 의 버전 AWS Encryption SDK AWS SDKs 및 도구 참조 가이드의 및 도구 유지 관리 정책을 참조하세요. AWS SDKs
자세히 알아보기
AWS Encryption SDK 및 클라이언트 측 암호화에 대한 자세한 내용은 다음 소스를 참조하세요.
-
이 에 사용된 용어 및 개념에 대한 도움말은 섹션을 SDK참조하세요의 개념 AWS Encryption SDK.
-
모범 사례 지침은 AWS Encryption SDK의 모범 사례 섹션을 참조하세요.
-
SDK 작동 방식에 대한 자세한 내용은 섹션을 참조하세요SDK 작동 방식.
-
에서 옵션을 구성하는 방법을 보여주는 예제는 섹션을 AWS Encryption SDK참조하세요구성 AWS Encryption SDK.
-
자세한 기술 정보는 AWS Encryption SDK 참조 섹션을 참조하세요.
의 기술 사양은 의 AWS Encryption SDK 사양을
AWS Encryption SDK참조하세요 GitHub. -
사용에 대한 질문에 대한 답변은 AWS Crypto 도구 토론 포럼
을 AWS Encryption SDK읽고 게시하십시오.
다양한 프로그래밍 언어로 를 구현 AWS Encryption SDK 하는 방법에 대한 자세한 내용을 알아봅니다.
-
C : 의 AWS Encryption SDK for C, AWS Encryption SDK C 설명서 및
리aws-encryption-sdk-c 포지토리를 참조하세요 GitHub. -
C#/.NET: AWS Encryption SDK 용.NET 및 의
aws-encryption-sdk-dafny
리포지토리 aws-encryption-sdk-net디렉터리를 참조하세요 GitHub. -
명령줄 인터페이스: AWS Encryption SDK 명령줄 인터페이스, AWS 암호화용 문서 읽기
CLI및 의 aws-encryption-sdk-cli 리포지토리를 참조하세요 GitHub. -
Java : 의 AWS Encryption SDK for Java, Javadoc 및 aws-encryption-sdk-java
리포지토리를 참조하세요 GitHub. AWS Encryption SDK https://aws.github.io/aws-encryption-sdk-java/ JavaScript: 의 AWS Encryption SDK for JavaScript 및 aws-encryption-sdk-javascript
리포지토리를 참조하세요 GitHub. -
Python : AWS Encryption SDK for Python, AWS Encryption SDK Python 설명서 및
의 aws-encryption-sdk-python 리포지토리를 참조하세요 GitHub.
피드백 보내기
우리는 여러분의 의견을 환영합니다. 질문이나 의견이 있거나 보고해야 할 문제가 있는 경우 다음 리소스를 사용하세요.
-
에서 잠재적 보안 취약성이 발견되면 보안 에 AWS Encryption SDK알리십시오. AWS
퍼블릭 GitHub 문제를 생성하지 마세요. -
에 대한 피드백을 제공하려면 사용 중인 프로그래밍 언어에 대한 문제를 GitHub 리포지토리에 AWS Encryption SDK저장합니다.
-
이 문서에 대한 피드백을 제공하려면 이 페이지의 피드백 링크를 사용하세요. 에서 이 설명서의 오픈 소스 리포지토리aws-encryption-sdk-docs
인 에 문제를 제기하거나 기여할 수도 있습니다 GitHub.