암호화 소프트웨어
암호화 소프트웨어는 암호화를 사용하여 디지털 정보에 대한 무단 액세스를 방지하는 소프트웨어다.[1][2] 암호는 인터넷을 통해 다른 컴퓨터로 전송되는 디지털 정보뿐만 아니라 컴퓨터의 디지털 정보를 보호하는 데 사용된다.[3]
분류
암호화를 제공하는 많은 소프트웨어 제품들이 있다. 소프트웨어 암호화는 암호문을 사용하여 내용을 암호문서로 흐리게 한다. 이러한 유형의 소프트웨어를 분류하는 한 가지 방법은 사용되는 암호의 유형이다. 암호는 공개키 암호(일명 비대칭 암호)와 대칭키 암호의 두 가지 범주로 나눌 수 있다.[4] 암호화 소프트웨어는 공개 키 또는 대칭 키 암호화에 기초할 수 있다.
소프트웨어 암호화를 분류하는 또 다른 방법은 그 목적을 분류하는 것이다. 이 접근법을 사용하여 소프트웨어 암호화는 "이동 중인 데이터"를 암호화하는 소프트웨어와 "정지 중인 데이터"를 암호화하는 소프트웨어로 분류될 수 있다. 전송 중인 데이터는 일반적으로 공개 키 암호를 사용하며, 유휴 데이터는 일반적으로 대칭 키 암호를 사용한다.
대칭 키 암호는 스트림 암호와 블록 암호로 더욱 나눌 수 있다. 스트림 암호는 일반적으로 한 번에 비트 또는 바이트의 일반 텍스트를 암호화하며, 오디오 및 비디오 정보와 같은 실시간 통신을 암호화하는 데 가장 일반적으로 사용된다. 키는 키스트림 생성기의 초기 상태를 설정하는 데 사용되며, 그 생성기의 출력은 일반 텍스트를 암호화하는 데 사용된다. 블록 암호 알고리즘은 플레인텍스트를 고정 크기 블록으로 분할하여 한 번에 한 블록씩 암호화한다. 예를 들어, AES는 16바이트 블록을 처리하는 반면, 이전 DES는 8바이트의 암호화된 블록을 처리한다.
정지 상태의 데이터를 전송하는 데이터에 PKI를 사용하는 경우도 잘 알려져 있다.
전송 중인 데이터
전송 중인 데이터는 컴퓨터 네트워크를 통해 전송되는 데이터다. 데이터가 두 엔드포인트 사이에 있는 경우, 모든 기밀 정보는 취약할 수 있다. 페이로드(기밀 정보)는 기밀성, 무결성 및 유효성을 확보하기 위해 암호화될 수 있다.[5]
종종 이동 중인 데이터는 웹사이트를 방문하는 경우와 같이 서로 모르는 두 기업 사이에 있다. 교환할 정보를 확보하기 위해 암호키를 안전하게 공유하고 관계를 구축함에 따라 이를 달성하기 위한 역할, 정책, 절차 등이 개발되었다. PKI(Public Key Infrastructure, PKI)라고 한다. PKI가 보안 연결을 구축하면 대칭 키를 엔드포인트 간에 공유할 수 있다. 대칭 암호는 비대칭 암호보다 훨씬 효율적이기 때문에(CPU 사이클을 적게 사용) 대칭 키가 개인 및 공용 키보다 선호된다.[6][7] 전송 중인 데이터를 암호화하는 방법에는 IPsec, SCP, SFTP, SSH, OpenPGP, HTTPS 등 여러 가지가 있다.
유휴 데이터
유휴 데이터란 영구 스토리지에 저장된 데이터를 말한다. 저장된 데이터는 일반적으로 대칭 키로 암호화된다.
암호화는 스토리지 스택의 다른 계층에 적용될 수 있다. 예를 들어 암호화는 디스크 계층, 파티션이라고 하는 디스크의 하위 집합, 디스크나 파티션이 결합된 볼륨, 파일 시스템의 계층 또는 데이터베이스나 호스트 운영 체제에서 실행되는 다른 애플리케이션과 같은 사용자 공간 애플리케이션 내에서 구성할 수 있다.
전체 디스크 암호화를 사용하면 전체 디스크가 암호화된다(암호화되지 않은 부팅/사전 부트 파티션을 사용하지 않을 때 디스크를 부팅하거나 액세스하는 데 필요한 비트는 제외).[8] 디스크는 여러 개의 파티션으로 분할할 수 있기 때문에 파티션 암호화를 사용하여 개별 디스크 파티션을 암호화할 수 있다.[9] 둘 이상의 파티션을 결합하여 만든 볼륨은 볼륨 암호화를 사용하여 암호화할 수 있다.[10] 또한 하나 이상의 파티션으로 구성된 파일 시스템은 파일 시스템 수준 암호화를 사용하여 암호화될 수 있다. 디렉터리 내의 파일이 암호화될 때 디렉터리를 암호화된다고 한다.[11][12] 파일 암호화는 단일 파일을 암호화한다. 데이터베이스 암호화는 저장될 데이터에 작용하여 암호화되지 않은 정보를 받아들이고 데이터를 암호화한 후에만 영구 저장소에 해당 정보를 기록한다. 암호화가 가능한 테이프 드라이브를 포함하는 다소 모호한 용어인 장치 수준 암호화는 CPU에서 암호화 작업을 오프로드하는 데 사용될 수 있다.
유휴 데이터 전송
안전한 연결을 만들 수 있는 능력 없이 유휴 상태의 데이터를 안전하게 전송할 필요가 있을 때, 이러한 요구를 지원하는 사용자 공간 툴이 개발되었다. 이러한 도구는 자신의 공개 키를 게시하는 수신자와 송신자가 공개 키를 얻을 수 있는 것에 의존한다. 그러면 송신자는 대칭키를 만들어 정보를 암호화할 수 있게 되고, 수신자의 공개키를 이용하여 정보와 대칭키의 전송을 안전하게 보호할 수 있게 된다. 이것은 한 당사자에서 다른 당사자로의 안전한 정보 전송을 가능하게 한다.
아래는 이러한 유형의 암호화를 제공하는 소프트웨어의 몇 가지 예들이다.
- GNU 프라이버시 가드(GnuPG 또는 GPG)
- PGP(Prepy Good Privacy)
퍼포먼스
암호화 소프트웨어의 성능은 CPU 속도에 비례하여 측정된다. 따라서 마이크로프로세서가 처리할 데이터 바이트당 수행하게 될 클럭 사이클 수를 나타내는 바이트당 사이클(때로는 약칭 cpb)은 일반적인 측정 단위다.[13] 바이트당 사이클은 암호함수의 실제 성능을 부분적으로 나타내는 역할을 한다.[14] 애플리케이션은 Microsoft SQL, Oracle, MongoDB와 같은 데이터베이스 애플리케이션을 포함하여 네이티브 암호화라는 자체 암호화를 제공할 수 있으며, 일반적으로 성능을 위해 CPU 사이클을 직접 사용하는 것에 의존한다. 이는 조직 내 데이터가 파트너를 통해 전달되는 속도와 규모에 영향을 미침으로써 보안 강화 및 컴플라이언스 충족의 용이성을 추구하는 기업에서 암호화의 만족도에 영향을 미치는 경우가 많다.[15]
불법 암호화
기본 페이지: 랜섬웨어
암호화는 불법으로 행해질 수 있다. 스캐머는 사용자 파일을 암호화(잠금)하는 랜섬웨어를 사용·확산할 수 있으며, 보통 시간제한으로 파일 암호 해독을 위해 지불하는 몸값(대액)을 요구할 수 있다. 워너크라이 랜섬웨어는 사용자들에게 지불할 수 있는 3일을 주거나, 그렇지 않으면 가격이 두 배로 올라가고, 지불할 수 있는 7일을 주거나, 그들의 파일은 영원히 파괴될 것이다.
참고 항목
참조
- ^ Thakur, Dinesh. "Cryptography - What is Cryptography?".
- ^ "What is encryption? - Definition from WhatIs.com". SearchSecurity. Retrieved 25 April 2017.
- ^ "Why We Encrypt - Schneier on Security".
- ^ Chandra, Sourabh; Paira, Smita; Alam, Sk Safikul; Sanyal, Goutam (Nov 2014). "A comparative survey of Symmetric and Asymmetric Key Cryptography". IEEE.
- ^ "Guide to Cryptography - OWASP".
- ^ Villanueva, John Carl. "Symmetric vs Asymmetric Encryption".
- ^ "Symmetric vs. Asymmetric Encryption - CipherCloud". 4 October 2013. Archived from the original on 15 August 2018. Retrieved 27 March 2017.
- ^ "How Whole Disk Encrypytion Works" (PDF).
- ^ "How to encrypt a single partition in Linux - TechRepublic".
- ^ https://www.jetico.com/web_help/bcve3_enterprise/html/01_introduction/02_what_is_ve.htm 볼륨 암호화
- ^ "How IT Works: Encrypting File System".
- ^ "PDS Software Solutions LLC".
- ^ "Processor allocation".
- ^ "Engineering comparison of SHA-3 candidates".
- ^ "Businesses fail to apply encryption technology effectively". ComputerWeekly.com. Retrieved 2020-04-23.

