Amazon Web Services 한국 블로그

AWS Wickr – 엔터프라이즈 기업을 위한 안전한 종단 간 암호화 통신 서비스

저희는 기업과 공공 부문 조직이 보다 안전하게 통신하여 고객이 e-디스커버리(e-Discovery), 증거보존조치(Legal hold) 및 FOIA 요청 등의 감사 및 규제 요구 사항을 충족할 수 있도록 지원하는 종단 간 암호화를 지원하는 엔터프라이즈 통신 서비스인 AWS Wickr를 출시하게 되어 기쁩니다. 많은 기업 커뮤니케이션 도구와 달리 Wickr는 종단 간 암호화 메커니즘을 사용하여 메시지, 파일, 음성 또는 화상 통화를 의도한 수신자만 액세스할 수 있게 합니다.

유연한 관리 제어 기능을 통해 Wickr 관리자는 통신 채널을 쉽게 관리하고 필요한 경우 규제 요구 사항을 충족하도록 정보를 보관할 수 있습니다. 유지하는 정보는 사용자가 선택한 서버에 저장되며 전적으로 사용자가 제어할 수 있습니다.

종단 간 암호화
Wickr는 둘 이상인 통신원 간의 보안 통신을 제공합니다. 이는 시스템이 신뢰성과 기밀성을 제공한다는 것을 의미합니다. 승인되지 않은 당사자는 시스템에 메시지를 삽입할 수 없으며, 의도하지 않은 당사자는 통신원 중 한 명으로부터 정보를 받지 않고는 통신에 액세스하거나 이해할 수 없습니다.

각 메시지에는 고유한 AES 암호화 키와 고유한 ECDH 공개 키가 제공되어 다른 수신자와 키 교환을 협상할 수 있습니다. 메시지 콘텐츠(텍스트, 파일, 오디오 또는 비디오)는 메시지별 AES 키를 사용하여 전송 장치(예: iPhone)에서 암호화됩니다. 메시지별 AES 키는 Diffie-Hellman 타원 곡선 키 교환(EDCH521) 메커니즘을 통해 수신자와 교환됩니다. 이러면 의도된 수신자만 메시지별 AES 키를 사용하여 메시지를 해독할 수 있습니다.

메시지별 키는 키 교환을 수신자 장치에 바인딩하는 키 유도 함수를 통해 전달합니다. 수신자가 나중에 자신의 계정에 장치를 추가하면(예: iPhone 외에 Wickr 계정에 macOS 클라이언트를 추가하는 경우) 새 장치에는 기본적으로 메시지 내역이 표시되지 않습니다. 두 개의 장치가 준비되어 있고 AWS Single Sign-On(SSO)이 구성되어 있는 경우 이전 장치에서 새 장치로 기록을 마이그레이션할 수 있습니다.

아래 다이어그램을 통해 키 교환이 어떻게 작동하는지 고수준에서 설명해 보겠습니다.

wickr 키 교환

Wickr 보안 메시징 프로토콜은 공개 및 문서화되어 있어 커뮤니티에서 이를 검사할 수 있습니다. 보안 메시징 프로토콜을 구현하기 위해 Wickr 클라이언트에서 사용하는 소스 코드는 감사 및 검토가 가능합니다.

Wickr 클라이언트 애플리케이션
Wickr 클라이언트 애플리케이션은 최종 사용자에게 매우 친숙하며 쉽게 시작할 수 있습니다. Windows, macOS, Linux, Android, 및 iOS 장치에서 사용할 수 있습니다. 선호하는 앱 스토어에서 다운로드하고 등록하면 사용자는 대화방을 생성하거나 개별 수신자에게 메시지를 전송할 수 있습니다. 이모티콘을 사용하여 메시지에 반응하고, 파일을 교환하며, 음성 및 영상 통화를 할 수 있습니다.

저는 macOS를 사용하며 주방에서는 iOS로 연결되어 있습니다.

Wickr 문자 메시지 Wickr 영상 통화

Wickr 관리자 기능
이제 Wickr 관리가 통합되어 AWS Management Console에서 사용할 수 있습니다. 익숙한 AWS Identity and Access Management(IAM) 액세스 제어 및 정책을 사용하여 Wickr 관리에 대한 액세스를 제어할 수 있습니다. 모니터링을 위해 AWS Cloud Development Kit(AWS CDK)Amazon CloudWatch와 통합됩니다.

Wickr 관리자는 네트워크를 관리합니다. 네트워크는 Slack 워크스페이스와 유사한 사용자 그룹 및 그에 연관된 구성 정보입니다. 사용자를 수동으로 추가하거나 목록을 가져올 수 있습니다. 대부분의 조직에서는 기존 ID 시스템을 통해 사용자를 페더레이션할 것입니다. Wickr는 모든 OpenID Connect 호환 시스템과 사용자를 페더레이션할 수 있습니다.

Wickr 네트워크는 Wickr 관리자가 메시징, 통화, 보안 및 페더레이션 설정을 관리하도록 보안 그룹을 구성하는 곳이기도 합니다. 또한 Wickr 관리자는 로깅, 데이터 보존 및 봇을 구성할 수 있습니다.

시작하려면 AWS Management Console에서 Wickr를 선택합니다. 그런 다음 네트워크 생성(Create a network)을 선택합니다. 네트워크 이름(Network name)을 입력하고 계속(Continue)을 선택합니다.

AWS Console에서 제공하는 Wickr Wickr - 네트워크 생성

Management Console의 Wickr 페이지에서는 Wickr 네트워크, 다른 Wickr 네트워크와의 사용자 페더레이션 등을 구성할 수 있습니다.

Wickr 콘솔 이 데모에서는 싱글 사인온(SSO)을 사용하지 않습니다. 새 사용자 생성(Create new user)을 선택하여 두 명의 사용자를 수동으로 추가합니다. 추가 후 해당 사용자는 클라이언트 앱으로 연결되는 링크를 포함하는 초대 이메일을 수신합니다. 클라이언트 앱은 사용자에게 처음 사용 시 암호를 정의하도록 요청합니다.

고객 제어형 데이터 보존 및 봇
Wickr를 사용하면 관리자가 규제 요구 사항에 따라 유지 관리해야 하는 정보를 직접 관리하는 안전하고 통제된 데이터 저장소에 선택적으로 보관할 수 있습니다. AWS를 비롯하여 수신자 외에는 누구도 대화나 문서를 해독할 수 있는 키에 액세스할 수 없으므로 조직은 데이터를 완벽하게 제어할 수 있습니다. 공공 부문의 조직이 안전한 협업 요구 사항을 위해 Wickr를 사용할 수 있도록 지원합니다.

데이터 보존은 참가자처럼 대화에 추가된 프로세스로 구현됩니다. 데이터 보존 프로세스는 다른 수신자와 마찬가지로 키 교환에 참여하여 메시지를 해독할 수 있습니다. 데이터 보존 프로세스는 온프레미스, Amazon Elastic Compute Cloud(Amazon EC2) 가상 머신, 또는 원하는 위치 어디에서나 실행할 수 있습니다. 콘솔에서 데이터 보존을 구성하면 Wickr 관리자는 데이터 보존 프로세스를 시작하고 이를 Wickr 네트워크에 등록할 수 있습니다.

Wickr 규정 준수 아키텍처 스키마

데이터 보존 프로세스는 배포가 용이하도록 Docker 컨테이너로 제공됩니다. 이 프로세스는 로컬 또는 원격 파일 시스템, 또는 Amazon Simple Storage Service(S3) 등 원하는 스토리지에 일반 텍스트 메시지를 저장합니다.

이 프로세스를 시도하는 방법은 설명서를 따라 진행할 수 있습니다. Wickr 관리 페이지를 열고 네트워크 설정(Network Settings) 아래의 데이터 보존(Data Retention)을 선택합니다.

Wickr 데이터 보존

docker 명령, 사용자 이름(Username) 및 암호(Password)(이전 스크린 샷에는 표시되지 않음)를 복사합니다. 그런 다음 미리 생성한 Linux EC2 인스턴스에 연결합니다. 데이터 보존을 위한 로컬 디렉터리를 생성하고 컨테이너를 시작합니다.

docker run -v 
       /home/ec2-user/retention_34908291_bot:/tmp/retention_34908291_bot
       --restart on-failure:5 
       --name="retention_34908291_bot"
       -it 
       -e WICKRIO_BOT_NAME='retention_34908291_bot'
       wickr/bot-retention-cloud:5.109.08.03

애플리케이션은 콘솔에서 수집한 사용자 이름과 암호를 입력하라는 메시지를 표시합니다. 프로세스가 시작되면 콘솔로 돌아가 화면 하단의 데이터 보존(Data Retention) 스위치를 활성화합니다.

참고로 이 데모에서는 로컬 파일 시스템에 데이터를 저장하기로 선택했습니다. 실제로는 S3를 사용하여 모든 조직 통신을 안전하게 저장하고, 저장된 데이터를 암호화하며, 이미 마련되어 있는 메커니즘을 사용하여 이 데이터에 대한 액세스를 제어하는 것이 좋겠습니다. 데이터 보존 프로세스는 기본적으로 AWS Secrets Manager 및 S3와의 통합을 지원합니다.

사용자로서 Wickr 방에서 몇 개의 메시지를 교환합니다. 그런 다음 관리자로서 캡처된 데이터를 살펴봅니다. 데이터 보존 프로세스가 메시지와 해당 메타데이터를 JSON 형식으로 캡처한 것을 확인할 수 있습니다.

Wickr 규정 준수 데이터

데이터 보존 기능을 구성할 때 규정 준수 및 보안 책임자는 안전하고 통제된 데이터 저장소에서 통신을 감사 및 검토할 수 있습니다.

보존 봇은 Wickr에서 사용할 수 있는 유일한 봇이 아닙니다. Wickr Broadcast Bot을 사용하면 네트워크의 모든 구성원 또는 특정 보안 그룹에 메시지를 방송할 수 있습니다. 개발자는 Wickr Bots를 사용하여 워크플로를 생성해 채팅 기반 워크플로를 자동화하고 다른 시스템과 통합할 수 있습니다. 마찬가지로 봇은 메시지를 수신하고 이에 따라 조치를 취할 수 있는 대화나 채팅방에 통합된 프로세스입니다. 개발자는 NodeJS으로 봇을 작성합니다. 봇 프로세스들은 모두 네트워크 관리자가 정의한 대로 Wickr 네트워크와 안전하게 통합됩니다. 봇은 일반적으로 원하는 위치에 쉽게 배포할 수 있도록 Docker 컨테이너로 패키징됩니다. 개발자라면 Wickr 봇 개발자 문서에서 자세한 내용을 참고하십시오.

요금 및 가용성
Wickr는 미국 동부(버지니아 북부) AWS 리전에 출시되었습니다.

Wickr는 처음 3개월 동안 보다 안전한 작업 공간을 원하는 개인 및 최대 30명의 사용자로 구성된 팀에게 무료로 제공됩니다. 사용자가 30명 이상인 조직의 경우 사용자 당 월 5USD부터 시작하는 표준 요금제와 사용자 당 월 15USD의 프리미엄 요금제가 제공됩니다. 프리미엄 요금제에는 세분화된 관리 제어, 최대 1년의 클라이언트 측 데이터 만료 타이머, 데이터 보존 및 이디스커버리 등의 기능과 보존 기능이 추가됩니다. 평소처럼 선결제 비용이나 장기 계약은 없습니다. 사용자 당 및 월별로 지불합니다(연간 청구 가능, 문의하기). 자세한 내용은 요금 페이지를 참조하십시오.

오늘 첫 번째 Wickr 네트워크를 만들어 보세요!

— seb