<nopad> |
macOS Ventura의 FileVault 설정 창 |
1. 개요
FileVault로 Mac에 있는 데이터 보호하기macOS에서 FileVault를 사용한 볼륨 암호화
FileVault는 macOS의 내장 디스크 암호화 솔루션이다.
OS 버전과 하드웨어 사양에 따라 기능이 다르다. Apple T2 칩 이전 모델에서 FileVault는 암호화 옵션이고, Apple Silicon Mac과 T2 칩이 장착된 Intel Mac에서 FileVault는 추가적인 보안 기능이다.
2. 역사와 특징
Mac OS X Panther (10.3)에서 처음으로 도입되었다. 이 때는 디스크 전체가 아니라, 홈 디렉터리만 암호화했다. 이후 Mac OS X Lion (10.7)에서 디스크 전체를 암호화할 수 있게 바뀌었다.FileVault가 암호화하는 것은 macOS가 설치된 "시동 디스크"이다. 처음 Mac을 구매했을 때는 내장 디스크가 곧 시동 디스크이므로, 기본적으로는 디스크 전체 암호화이다. 하지만 Mac의 파티션을 나누거나 APFS 도입 이후 추가된 볼륨을 사용할 경우, 디스크 전체가 암호화되는 것은 아니다. 예를 들어 파티션 1, 파티션 2, 외장 하드 드라이브가 있고, FileVault를 켠 OS가 파티션 1에 설치되어 있을 경우, 파티션 2와 외장 하드 드라이브는 암호화되지 않는다. 만약 이 상태에서 외장 하드 드라이브에 설치된 macOS로 시동하여 FileVault를 켜면, 외장 하드 드라이브만 암호화된다.
암호화에는 256비트 키를 이용한 XTS-AES-256을[1] 사용하며, 다른 알고리즘으로 변경할 수는 없다. 시스템을 암호화할 때 복구 키를 iCloud에 저장하거나 로컬 복구 키를 만들어 쓸 수도 있다. 로컬 복구 키는 /dev/random에서 뽑아와 만드는데, FileVault를 껐다 켜지 않는 이상 변경되지 않는다.[2] Apple의 난수생성 보안은 일단 2012년의 분석에서 안전하다는 평을 받았다. 만약 로컬 복구 키를 잃어버렸다면 Apple조차도 키를 찾아낼 수가 없으니 주의해서 보관해야 한다.
BitLocker와 같이 AES-NI 가속을 사용하여 암호화하지만, 모든 파일을 몽땅 다 암호화하고 입출력할 때마다 복호화 / 암호화를 반복하느라 약 20% 정도의 속도 저하가 일어난다. APFS는 HFS+와 달리 암호화를 염두에 두고 만든 포맷이라 암호화 속도가 향상되었다. 기존 HFS+는 CoreStorage의 추가적인 시스템을 통해 암호화를 진행했는데, APFS는 그럴 필요가 없어진 것이다. Apple T2 칩이 탑재된 모델들은 암호화를 T2 칩이 전담하기 때문에 속도 저하가 일어나지 않는다. Apple Silicon 모델들도 마찬가지로 칩 내부의 보조 프로세서들이 암호화를 담당하므로 속도 저하가 없다.
Apple T2 칩이 탑재된 Mac과 Apple Silicon Mac에 Secure Enclave가 추가되며 FileVault 사양은 크게 바뀐다. 해당 모델부터는 FileVault 활성화 여부와 상관없이 내장 디스크는 항상 암호화된다. 그러나 FileVault가 꺼진 상태에서는 Mac이 시동되자마자 복호화가 시작되지만, FileVault를 켜면 recoveryOS를 통해 특수 모드로 시동된 후, 로그인 암호를 입력하기 전까지는 내장 디스크에 전원이 들어오지 않은 것처럼 암호화를 유지한다.[3] Apple M1 칩 이전 모델은 XTS-AES-128을 사용했다.
그래서인지 macOS 초기 설정에서 FileVault 활성화가 기본 권장 사항으로 표시된다. Apple T2 칩이 장착된 인텔 Mac과 Apple Silicon Mac에서 활성화가 권장된다.
3. 외장 드라이브 암호화
앞서 언급한 바와 같이 Mac에 연결된 다른 저장 장치는 FileVault가 적용되지 않는다. Mac에서는 외장 드라이브에 대해 암호화라는 용어만 사용한다. Secure Enclave도 외장 드라이브를 암호화할 때는 개입하지 않는다.설정에 앞서 몇 가지 주의점이 있다.
- macOS Big Sur 이후부터는 APFS만 암호화를 지원한다. APFS는 Windows, Android, macOS High Sierra 이전 버전을 구동하는 구형 Mac과는 호환되지 않는다.
- 내장 디스크와 달리 Secure Enclave가 따로 작업을 담당하지 않으므로, 외장 저장장치의 읽기/쓰기 성능이 저하될 수 있다.
- 당연하지만 암호를 분실하면 저장장치에 있는 데이터에 접근할 수 없게 된다.
Mac에서 외장 드라이브를 암호화하는 데에는 크게 두 가지 방법이 있는데, 우클릭 메뉴나 디스크 유틸리티에서 할 수 있다.
방법 1
주의: 해당 방법은 HFS+를 APFS로 변환한다.
- Finder 사이드바나 데스크탑의 드라이브 아이콘을 우클릭 또는 Control+좌클릭한다.
- 암호화를 선택한다.
- 창에서 암호를 입력하고, “디스크 암호화”를 누른다.
- 암호화가 시작된다. 소요 시간은 데이터 크기에 따라 다르다.
방법 2
주의: 해당 방법은 저장장치를 포맷한다.
- 디스크 유틸리티에서 암호화하고 싶은 외장 장치나 볼륨을 선택하고 지우기를 선택한다.
- 아래 설계 메뉴에서 GUID 파티션 맵을 선택한다.
- 포맷 메뉴에서 APFS (암호화됨)이나 APFS(대소문자 구분, 암호화됨)을 선택한다.
Time Machine용 드라이브를 암호화하고 싶다면, Time Machine 드라이브 선택 창에서 백업 암호화를 선택하면 된다.
Windows와 macOS 간 호환성이 중요하다면 VeraCrypt 등의 서드파티 암호화 솔루션을 사용해야 한다. 완제품형 외장 하드디스크, 외장 SSD의 경우 하드웨어 암호화를 지원하는 경우가 있으니, 제품에서 해당 기능을 지원하는지 확인하고 제조사에서 지원 해당 외장 저장장치를 지원하는 앱을 받아서 잠금을 활성화하면 된다. 다만 이러면 iOS 장치와의 호환이 곤란할 수 있다.
4. 문제점
4.1. 2008~2012년형 Mac Pro 사용 불가 문제
macOS Mojave 이후 버전이 설치된 2008~2012년형 1세대 Mac Pro에서 FileVault를 끄면 다시 켤 수가 없다.다행히도 우회해서 켜는 것이 가능하다. 2가지 방법이 있는데 첫 번째는 FileVault가 암호화하는 부분만 꺼내와 수정한 후 외부에서 실행시켜 바로 암호화 절차를 시작하는 것이고[4], 두 번째는 시스템 무결성 보호를 끄고 시스템 환경설정 자체를 Hex 에디터 등으로 수정해서 FileVault 암호화를 진행하는 것이다. 전자의 경우 시스템에 따라 복구 키를 보여주지 않으므로, 자신이 복구 키를 반드시 알아야 하는 경우에는 후자의 방법을 사용하는 것이 낫다.
macOS Mojave부터는 NVIDIA 웹 드라이버도 사라지고, FileVault도 끄고 쓰거나 이런 식으로 우회해야 하기에 1세대 Mac Pro 사용자들은 macOS High Sierra에 머무는 경향이 있다.
4.2. 부팅 중 블루투스 연결 문제
FileVault가 켜진 상태에서는 로그인 전까지 블루투스가 동작하지 않는 문제가 있다. 해외에서도 동일한 증상을 겪는 사례가 많은 모양. #이 때문에 서드파티 블루투스 키보드로는 Mac 시동 직후 로그인을 할 수 없는 사태가 발생하기도 한다. 로지텍에서는 macOS Monterey (12.3) 기준으로 해결된 문제라고 설명하나 #, macOS Sonoma에서도 여전히 발생한다.
Magic Keyboard를 사용하거나 유선 키보드, Wi-Fi 연결을 하는[5] 무선 키보드 또는 로지텍의 Logi Bolt 리시버 같은 USB 동글[6]로 연결하는 수밖에 없다.
Magic Trackpad, Magic Keyboard[7], Apple Wireless Keyboard[8] 등은 시동음이 들린 후에 각 제품의 아무 버튼을 한 번 누르면 불이 들어오면서 1~2초쯤 후부터 부팅 중에도 사용이 가능하다.[9] 다만 마지막 시스템 종료를 할 때에 비정상 종료(전원 버튼을 길게 눌러서 하는 강제 종료 등)가 있었다면 연결되지 않을 수 있다.
5. 관련 문서
[1]
출처
Apple 공식 문서의 데이터 보호 개요
[2]
중고로 Mac을 구입했는데 기관이나 학교 등에서 사용한 경우, FileVault 복구 키를 일괄적으로 설정하기도 한다. 이러면 나중에 구입한 사람은 FileVault를 켤 때 복구 키가 보여지는 대신 기관에서 설정했다고 하면서 복구 키를 보여주지 않는다. 진행하지 말고 취소를 누른 다음, /Library/Keychains/ 경로에 가서 FileVaultMaster.cer 파일과 FileVaultMaster.keychain 파일을 삭제 및 휴지통 비우기 해주고 다시 FileVault를 키면 정상적으로 개인 복구 키를 볼 수 있다.
[3]
출처
'느려지지 않을까?' 신형 맥의 '파일볼트+T2 칩' 작동 방식의 이해
[4]
즉, 시스템 자체를 수정하진 않는다.
[5]
본체 직접 연결이 아니고 USB 동글과의 연결이 블루투스가 아닌 Wi-Fi인 제품을 말한다.
[6]
단, 블루투스 동글은 일반적인 블루투스 연결과 동일하므로 의미 없다.
[7]
과거 흔히 "매직 키보드 2"로 잘못 불리던 그 제품이다.
[8]
과거 흔히 "매직 키보드 1"로 잘못 불리던 그 제품이다.
[9]
각종 시동 조합 키를 누르려고 하는데 너무 빨리 로그인 화면으로 넘어가는 경우, 정상 부팅 후에 터미널에서 sudo nvram -d EFIBluetoothDelay 를 입력해서(관리자 비밀번호 입력칸은 커서가 없어서 무반응으로 보이나, 그냥 입력 후에 리턴 키를 누르면 된다.) 부팅 중 블루투스 인식 딜레이 시간을 초기화한다. 그 후 재부팅을 해서 한 번 더 정상 부팅을 한 후에, 다시 재부팅을 해서 시동 조합 키를 시도하면 FileVault 작동 시 보이는 로그인 화면 이전에
아무 키를 눌러 블루투스 키보드를 인식시키고 다시 조합 키를 누를 시간이 확보된 것을 확인할 수 있다.