SSD 드라이브의 전체 디스크 암호화로 수명이 단축됩니까?


55

나는 것이다 가정 전체 디스크 암호화 배포 추가 쓰기를 컴퓨터가 부팅 될 때마다 소개하고 종료 것이다. SSD (Solid State Disk)는 오류 발생 전 쓰기에 대한 평균 용량이 더 낮은 것으로 간주되는 경우 전체 디스크 암호화 솔루션이 디스크의 배포 수명을 단축 할 수 있습니까?

내 가정이 틀렸다면 이것이 요점이라고 생각합니다. 미리 감사드립니다.



1
@JarrodRoberson이 질문을 의미합니까? superuser.com/questions/39719/… 어느 쪽이든, 관련 질문은 모두 열등한 답변을 가지므로, 나는 그 질문에 속하지 않습니다.
Ivo Flipse

@IvoFlipse 핵심 I 중복 상태로 플래그 질문 "...이 효율적으로 완전히 사용 상태로 드라이브를 넣어 것인가 ? 방법이 효과는 드라이브의웨어 레벨링과 성능을 것입니다 ..." 이 정확히입니다 같은 질문.

답변:


49

암호화는 어댑터로 생각하십시오. 데이터는 읽히기 전에 기록되거나 디코딩되기 전에 단순히 인코딩된다. 유일한 차이점은 키가 암호화 / 암호 해독에 사용될 특정 지점 (일반적으로 드라이브 / 드라이버가 초기화 될 때)에 전달된다는 것입니다.

다음은 기본 패턴을 보여주기 위해 함께 던진 (거친) 그래픽입니다.

전체 드라이브 암호화를 보여주는 회로도

보다시피, 암호화 모듈은 데이터가 플래터에 기록되기 전에 데이터를 암호화하고 해독이 수행 된 프로세스로 전송되기 전에 해독하기 때문에 추가 읽기 또는 쓰기를 수행 할 필요가 없습니다.

암호화 모듈의 실제 위치는 다를 수 있습니다. 소프트웨어 드라이버이거나 시스템의 컨트롤러 (예 : 컨트롤러, BIOS, TPM 모듈) 또는 드라이브 자체의 하드웨어 모듈 일 수 있습니다. 어쨌든 모듈은 파일 작업을 수행하는 소프트웨어와 드라이브 플래터의 실제 데이터 사이에 "와이어 중간"에 있습니다.


24
이 답변은 논리적으로 잘못되었습니다! OS가 한 번에 몇 개의 블록을 암호화하는지에 달려 있습니다. 한 번에 4K를 암호화 한 다음 바이트를 간단히 수정하면 SSD에 8512 바이트 블록에 대한 쓰기가 발생하지만 암호화가 없으면 OS (잘 최적화 된 경우)는 1512 바이트 블록에 쓰기 만하면됩니다. 따라서 암호화는 8 배의 디스크 쓰기에 추가됩니다. 실제로 OS는 암호화에 적합한 블록 크기를 선택할 수 있지만,이 문제를 해결하지는 않으며 이에 대한 어떠한 주장도하지 않습니다. 따라서 실제로이 대답은 정확 할 수 있지만 논리적으로는 잘못되었습니다. 적어도 불완전합니다.
icando

21
@icando, 그것은 일반적인 단순화입니다. 게다가, 당신이 말하는 것은 스트림 암호 입니다. 가장 일반적이고 인기있는 전체 디스크 암호화 프로그램 인 TrueCrypt블록 암호를 사용합니다 . 제대로 설계되지 않았거나 이러한 종류의 영향을 미치는 스트림 암호를 사용하는 전체 디스크 암호화 시스템을 지적 할 수 있다면 그렇게하십시오. 그러면 행복하게 대답하겠습니다.
Synetech

1
암호화 모듈이 드라이브 자체에있는 경우 SSD의 특성을 고려할 수 있습니다 (그렇지 않으면 제조가 바보이며 환불을 원함). 모듈이 BIOS에 있으면 필요한 경우 더 나은 알고리즘을 포함하도록 쉽게 업데이트 할 수 있습니다.
Synetech

1
소프트웨어의 경우 업데이트가 훨씬 쉽습니다. 예를 들어 TrueCrypt 는 SSD 마모 [1] [2] 와 관련하여 업데이트 되었으며 주요 문제는 마모가 아니라 공격에 취약 할 수 있다는 것 입니다.
Synetech

9
전체 디스크 암호화의 우려는 일반적으로 보안상의 이유로 DISCARD / TRIM이 비활성화되어 있다는 것입니다. 모든 SSD 드라이브는 논리적 4kb 블록 크기를 가지며,이 계층 아래의 실제 기본 구현은 대부분의 제조업체에서 비밀로 유지합니다. 8kb 페이지 크기로 표시되는 최신 드라이브를 사용하더라도 펌웨어는 변환을 수행하는 덮개 아래 4kb입니다. 이 중 어느 것도 펌웨어가 쓰기를 연결하여 올바른 작업을 수행하는 것에 대해 걱정할 필요가 없으므로 암호화가 8 배 더 적은 것을 추가한다는 주장 은 암호화 및 파일 시스템 및 펌웨어 쓰기 전략을 무시하는 것입니다.

23

짧은 답변 :
디스크 컨트롤러가 압축을 사용하지 않으면 Synetech의 답변이 정확하며 암호화는 아무 것도 변경하지 않습니다. 컨트롤러가 압축을 사용하는 경우 암호화는 아마도 디스크의 수명을 단축시킵니다 (암호화를 사용하지 않는 동일한 디스크와 비교).

긴 대답 :
일부 SSD 컨트롤러는 실제 플래시 칩에 기록되는 데이터 양을 최소화하고 읽기 성능을 향상시키기 위해 압축을 사용합니다 (SandForce 컨트롤러가 대표적인 예일 수 있습니다). 디스크에 기록 된 데이터를 쉽게 압축 할 수있는 경우에 가장 효과적입니다. 텍스트 파일, 실행 파일, 압축되지 않은 이미지 (예 : BMP) 등은 일반적으로 상당히 많이 압축 될 수 있지만 이미 압축되었거나 암호화 된 파일은 컨트롤러의 압축 알고리즘에 거의 무작위로 표시되므로 압축이 거의 불가능합니다. .

Tom 's Hardware는 http://www.tomshardware.com/reviews/ssd-520-sandforce-review-benchmark,3124-11.html 에서 찾을 수있는 Intel SSD 520에서 정확하게 이것에 대해 좋은 테스트를했습니다
.

기본적으로 수행하는 작업은 완전히 압축 가능한 데이터와 완전히 임의의 데이터를 쓸 때 드라이브의 쓰기 증폭 (플래시에 기록 된 데이터 양과 드라이브로 전송되는 데이터 양의 비율)을 측정하는 것입니다. 완전 임의 데이터의 경우 쓰기 증폭은 2.9 *이므로 디스크에 전송 된 모든 GB 데이터에 대해 2.9GB가 플래시에 기록됩니다. 이 기사에서는 압축을 사용하지 않는 드라이브에서 측정 한 것과 거의 같은 숫자 인 것으로 보입니다. 완전히 압축 가능한 데이터의 경우 비율은 0.17로 상당히 낮습니다.

데이터가 암호화 되지 않는 한 정상적인 사용은 아마도 중간에있을 것입니다 . 이 기사의 수명 예측은 다소 학문적이지만 암호화가 SandForce 컨트롤러가있는 SSD의 수명에 확실히 영향을 줄 수 있음을 보여줍니다. 이 문제를 해결하는 유일한 방법은 압축이 발생한 후 컨트롤러 자체가 암호화를 수행 할 수있는 경우입니다.

*이 기사에서는 왜 2.9가 정상적인 값으로 간주되는지 구체적으로 밝히지 않았으며 실제로 연구하지 않았습니다. 논리적 설명은 대부분의 SSD가 비트 오류가 발생하기 쉬운 MLC NAND를 사용한다는 것입니다. 이를 정정하기 위해 복구 또는 정정이 항상 가능하도록 데이터가 여러 곳에 기록 될 수 있습니다.


암호화 된 데이터는 크지 않고 단지 암호화되어 있으며 암호화로 인해 데이터 크기가 커지지는 않습니다. 2012 년에 누가 자동으로 파일 시스템을 압축합니까?

6
@JarrodRoberson : SandForce SSD 컨트롤러는 데이터를 압축하여 쓰기를 최소화합니다. 다른 예도있을 수 있습니다.
존 Bartholomew

@JohnBartholomew 나는 디스크 컨트롤러보다 먼저 나오는 파일 시스템이라고 말했다. SandForce 압축 방식은 "비 압축 가능"또는 "사전 압축 된"데이터를 감지하고 쓰기를 최소화하려는 시도에서 압축하지 않습니다. 이것은 비밀이므로 우리는 절대 알 수 없습니다. 어느 쪽이든, 더 많은 공간을 차지하지 않고 특정 상황에서 더 많은 시간을 소비합니다.

1
@JarrodRoberson : 요점은 컨트롤러가 모든 것을 압축하려고 시도 하면 디스크에 보내는 모든 데이터가 암호화되면 성능 (시간 공간)이 나빠질 것입니다. 컨트롤러가 데이터를 압축 할 수 없음을 감지하는 데 시간을 낭비하고 디스크에 암호화되지 않은 (따라서 압축 가능한) 데이터를 제공하는 것과 비교하여 공간이 더 나 빠지기 때문에 시간이 더 나빠질 수 있습니다.
John Bartholomew

4
@JarrodRoberson : 적은 쓰기의 이점을 얻지 못하면 OP가 요구 한 것과 정확히 일치하며 암호화 사용의 직접적인 결과입니다.
Leo

6

전체 디스크 암호화는 암호화 계층이 파일 시스템과 함께 저장해야하는 메타 데이터 (무시할 수 있음) 외에 디스크에 기록되는 데이터의 양을 늘리지 않습니다. 4096 바이트를 암호화하면 4096 바이트가 기록됩니다.


1

대답은 "전체 디스크 암호화"의 의미에 따라 다릅니다.

모든 파일과 파일 시스템 메타 데이터가 디스크에서 암호화된다는 것을 의미하는 경우 아니요, SSD 수명에 영향을 미치지 않아야합니다.

그러나보다 전통적인 "미사용 공간을 포함하여 디스크의 전체 내용이 암호화 됨"을 의미한다면 수명이 크게 단축 될 수 있습니다.

SSD 장치는 "마모 레벨링"을 사용하여 장치 전체에 쓰기를 분산하여 몇 개의 섹션이 조기에 마모되지 않도록합니다. 최신 파일 시스템 드라이버는 특정 섹터의 데이터가 더 이상 사용되지 않을 때 ( "삭제") SSD에 구체적으로 알리므로 SSD는 해당 섹터를 다시 0으로 설정하고 모든 섹터를 계속 사용할 수 있기 때문에이를 수행 할 수 있습니다. 다음 쓰기에 가장 적은 양을 사용합니다.

기존의 전체 디스크 암호화 체계에서는 사용 된 섹터가 없습니다. 귀하의 데이터를 포함하지 않는 것은 여전히 ​​암호화되어 있습니다. 이렇게하면 공격자가 디스크의 어떤 부분에 데이터가 있는지, 그리고 어떤 부분이 무작위 노이즈인지 알지 못하므로 암호 해독이 훨씬 어려워집니다.

SSD에서 이러한 시스템을 사용하려면 두 가지 옵션이 있습니다.

  1. 파일 시스템이 폐기를 계속 수행하도록 허용합니다.이 시점에서 데이터가없는 섹터는 비어 있고 공격자는 자신의 데이터에만 집중할 수 있습니다.
  2. 파일 시스템이 폐기를 수행하지 못하게하십시오.이 경우 암호화는 여전히 강력하지만 이제는 상당한웨어 레벨링을 수행 할 수 없으므로 디스크의 가장 많이 사용되는 섹션이 마모되어 잠재적으로 나머지 부분보다 훨씬 앞서게됩니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.