hotchpotch/wikipedia-multilingual-ir-pairs huggingface dataset:
파일 시스템 수준 암호화 암호화가 포함된 범용 파일 시스템
암호화 파일 시스템이나 전체 디스크 암호화와 달리, 파일 시스템 수준 암호화를 포함하는 범용 파일 시스템은 일반적으로 디렉터리 구조, 파일 이름, 크기 또는 수정 타임스탬프와 같은 파일 시스템 메타데이터를 암호화하지 않는다. 이는 메타데이터 자체가 기밀로 유지되어야 하는 경우 문제가 될 수 있다. 다시 말해, 파일이 식별 가능한 파일 이름으로 저장되면 물리적 디스크에 접근할 수 있는 사람은 누구나 문서의 내용은 알 수 없지만, 어떤 문서가 디스크에 저장되어 있는지 알 수 있다.
이에 대한 한 가지 예외는 ZFS 파일 시스템에 추가되는 암호화 지원이다. 파일 이름, 소유권, ACL, 확장 속성과 같은 파일 시스템 메타데이터는 모두 디스크에 암호화되어 저장된다. 스토리지 풀과 관련된 ZFS 메타데이터는 평문으로 저장되므로, 어떤 파일 시스템(데이터 세트)이 풀에 사용 가능한지, 그 중 어떤 것이 암호화되어 있는지 결정할 수 있다. 저장된 파일 및 디렉터리의 내용은 암호화된 상태로 유지된다.
또 다른 예외는 EncFS를 대체하는 CryFS이다.
파일 시스템 수준 암호화 암호화 파일 시스템
암호화 파일 시스템은 암호화와 보안을 염두에 두고 특별히 설계된 (범용이 아닌) 파일 시스템이다. 이들은 일반적으로 메타데이터를 포함하여 포함된 모든 데이터를 암호화한다. 이러한 파일 시스템은 디스크상의 형식과 자체적인 블록 할당을 구현하는 대신, 기존 파일 시스템 위에 계층화되는 경우가 많다. 예를 들어, 호스트 파일 시스템의 디렉터리에 상주한다. 이러한 파일 시스템 중 다수는 부인 가능 암호화, 암호학적으로 안전한 읽기 전용 파일 시스템 권한, 키 또는 사용자에 따라 달라지는 디렉터리 구조의 다양한 보기와 같은 고급 기능도 제공한다.
암호화 파일 시스템의 한 가지 용도는 기존 파일 시스템의 일부가 '클라우드 스토리지'와 동기화될 때이다. 이러한 경우 암호화 파일 시스템이 '스택'되어 데이터 기밀성을 보호하는 데 도움이 될 수 있다.
데이터 중복 제거
컴퓨팅에서 데이터 중복 제거(data deduplication)는 반복되는 데이터의 중복 복사본을 제거하는 기술이다. 이 기술의 성공적인 구현은 저장 장치 활용도를 높여, 저장 용량 요구 사항을 충족하는 데 필요한 전체 저장 매체 양을 줄임으로써 CAPEX를 낮출 수 있다. 또한 네트워크 데이터 전송에 적용하여 전송해야 하는 바이트 수를 줄일 수도 있다.
중복 제거 과정은 고유하고 연속적인 데이터 블록인 데이터 '덩어리'(바이트 패턴이라고도 함)를 비교하는 것을 필요로 한다. 이 덩어리들은 분석 과정에서 식별되고 저장되며, 기존 데이터 내의 다른 덩어리들과 비교된다. 일치하는 부분이 발견될 때마다 중복되는 덩어리는 저장된 덩어리를 가리키는 작은 참조로 대체된다. 동일한 바이트 패턴이 수십, 수백, 심지어 수천 번 발생할 수 있다는 점을 감안할 때(일치 빈도는 덩어리 크기에 따라 다름), 저장되거나 전송되어야 하는 데이터 양을 크게 줄일 수 있다.
데이터 중복 제거
관련 기술로는 단일 인스턴스 (데이터) 저장소가 있는데, 이는 파일 전체 수준에서 여러 복사본의 콘텐츠를 단일 공유 복사본으로 대체하는 것이다. 다른 형태의 데이터 압축 및 중복 제거와 결합하는 것이 가능하지만, 데이터 중복 제거의 새로운 접근 방식(세그먼트 또는 서브 블록 수준에서 작동할 수 있음)과는 구별된다.
중복 제거는 LZ77 및 LZ78과 같은 데이터 압축 알고리즘과는 다르다. 압축 알고리즘이 개별 파일 내의 중복 데이터를 식별하고 이 중복 데이터를 더 효율적으로 인코딩하는 반면, 중복 제거의 목적은 대량의 데이터를 검사하고 동일한 파일 전체 또는 파일의 큰 섹션과 같은 큰 부분을 식별하여 공유 복사본으로 대체하는 것이다.
데이터 중복 제거 작동 원리
예를 들어, 일반적인 전자우편 시스템에는 동일한 1 MB(메가바이트) 파일 첨부 파일 100개가 포함될 수 있다. 전자우편 플랫폼이 백업될 때마다 첨부 파일의 100개 인스턴스가 모두 저장되어 100MB의 저장 공간이 필요하다. 데이터 중복 제거를 사용하면 첨부 파일의 인스턴스 하나만 실제로 저장되며, 이후 인스턴스는 저장된 복사본을 참조하여 약 100:1의 중복 제거 비율을 갖는다. 중복 제거는 추가 저장 공간 절약을 위해 데이터 압축과 함께 사용되는 경우가 많다. 중복 제거는 먼저 반복되는 데이터의 큰 덩어리를 제거하는 데 사용된 다음, 압축은 저장된 각 덩어리를 효율적으로 인코딩하는 데 사용된다.
컴퓨터 코드에서 중복 제거는 예를 들어 정보를 변수에 저장하여 개별적으로 작성할 필요 없이 중앙 참조된 위치에서 한 번에 모두 변경할 수 있도록 하는 방식으로 수행된다. 예를 들어 CSS 클래스 및 이름 지정된 참조가 미디어위키에 있다.
데이터 중복 제거 장점
저장 장치 기반 데이터 중복 제거는 주어진 파일 집합에 필요한 저장 공간의 양을 줄인다. 이는 매우 유사하거나 심지어 동일한 데이터의 여러 복사본이 단일 디스크에 저장되는 응용 프로그램에서 가장 효과적이다. 데이터 손실에 대비하여 정기적으로 수행되는 데이터 백업의 경우, 주어진 백업의 대부분의 데이터는 이전 백업과 비교하여 변경되지 않은 상태로 유지된다. 일반적인 백업 시스템은 변경되지 않은 파일을 생략하거나 (하드 링크를 통해 연결하거나) 파일 간의 차이점을 저장하여 이를 활용하려고 한다. 그러나 두 접근 방식 모두 모든 중복성을 포착하지는 못한다. 하드 링크는 이메일 데이터베이스와 같이 약간만 변경된 큰 파일에는 도움이 되지 않는다. 차이점은 단일 파일의 인접한 버전에서만 중복성을 찾는다(삭제되었다가 나중에 다시 추가된 섹션이나 여러 문서에 포함된 로고 이미지를 고려해보라).
데이터 중복 제거 장점
인라인 네트워크 데이터 중복 제거는 종점 간에 전송되어야 하는 바이트 수를 줄이는 데 사용되며, 이는 필요한 대역폭 양을 줄일 수 있다.(자세한 내용은 WAN 최적화를 참조)
가상 서버와 가상 데스크톱은 중복 제거의 이점을 얻는다. 각 가상 머신에 대한 명목상 별도의 시스템 파일을 단일 저장 공간으로 통합할 수 있기 때문이다. 동시에, 주어진 가상 머신이 파일을 사용자 지정하는 경우, 중복 제거는 다른 가상 머신의 파일을 변경하지 않는다. 이는 하드 링크 또는 공유 디스크와 같은 대안이 제공하지 않는 것이다. 가상 환경을 백업하거나 중복 복사본을 만드는 것도 유사하게 개선된다.
데이터 중복 제거 분류
중복 제거는 데이터가 흐르는 동안 "인라인"으로 발생하거나, 데이터가 기록된 후 "후처리" 방식으로 발생할 수 있다.
후처리 중복 제거의 경우, 새 데이터는 먼저 저장 장치에 저장되고, 나중에 프로세스가 데이터를 분석하여 중복을 찾는다. 이점은 데이터를 저장하기 전에 해시 계산 및 조회가 완료될 때까지 기다릴 필요가 없으므로 저장 성능이 저하되지 않는다는 것이다. 정책 기반 작업을 제공하는 구현은 사용자에게 "활성" 파일에 대한 최적화를 연기하거나 유형 및 위치에 따라 파일을 처리할 수 있는 기능을 제공할 수 있다. 한 가지 잠재적인 단점은 중복 데이터가 짧은 시간 동안 불필요하게 저장될 수 있다는 것인데, 이는 시스템이 거의 용량에 도달했을 때 문제가 될 수 있다.
또는 중복 제거 해시 계산은 인라인으로 수행될 수 있다. 즉, 데이터가 대상 장치에 들어올 때 동기화된다. 저장 시스템이 이미 저장한 블록을 식별하면 전체 새 블록 대신 기존 블록에 대한 참조만 저장된다.
데이터 중복 제거 분류
인라인 중복 제거의 장점은 중복 데이터가 저장되거나 전송되지 않으므로 저장 공간 및 네트워크 트래픽이 적게 필요하다는 것이다. 단점은 해시 계산이 계산 비용이 많이 들 수 있으므로 저장 처리량이 감소할 수 있다는 것이다. 그러나 인라인 중복 제거를 사용하는 일부 공급업체는 높은 속도로 인라인 중복 제거를 수행하는 장비를 시연했다.
후처리 및 인라인 중복 제거 방법은 종종 격렬하게 논의된다.
SNIA 사전은 두 가지 방법을 식별한다.
데이터 중복 제거 방법을 분류하는 또 다른 방법은 발생 위치에 따라 분류하는 것이다. 데이터가 생성되는 위치에 가까운 곳에서 발생하는 중복 제거를 "소스 중복 제거"라고 한다. 데이터가 저장되는 위치에 가까운 곳에서 발생하는 중복 제거를 "타겟 중복 제거"라고 한다.
데이터 중복 제거 분류
소스 중복 제거는 데이터 소스에서 데이터가 중복 제거되도록 보장한다. 이는 일반적으로 파일 시스템 내에서 직접 발생한다. 파일 시스템은 주기적으로 새 파일을 스캔하여 해시를 생성하고 기존 파일의 해시와 비교한다. 동일한 해시를 가진 파일이 발견되면 파일 복사본은 제거되고 새 파일은 이전 파일을 가리킨다. 그러나 하드 링크와 달리 중복 파일은 별개의 엔티티로 간주되며, 중복 파일 중 하나가 나중에 수정되면 카피 온 라이트라는 시스템을 사용하여 변경된 파일 또는 블록의 복사본이 생성된다. 중복 제거 프로세스는 사용자 및 백업 응용 프로그램에 투명하다. 중복 제거된 파일 시스템을 백업하면 종종 중복이 발생하여 백업이 원본 데이터보다 커진다.
데이터 중복 제거 분류
소스 중복 제거는 복사 작업에 대해 명시적으로 선언될 수 있는데, 이는 복사된 데이터가 중복 제거되어야 한다는 것을 알기 위해 계산이 필요 없기 때문이다. 이는 파일 시스템에서 리링크(reflink) (리눅스) 또는 클론파일(clonefile) (맥 OS)이라는 새로운 형태의 "링크"로 이어진다. 여기서 하나 이상의 아이노드 (파일 정보 항목)가 데이터의 일부 또는 전부를 공유하게 된다. 이는 아이노드 수준에서 작동하는 하드 링크와 파일명 수준에서 작동하는 심볼릭 링크와 유사하게 명명되었다. 개별 엔트리는 복사본 변경 시 다른 복사본에 영향을 미치지 않는 비앨리어싱 카피 온 라이트 동작을 가진다. 마이크로소프트의 ReFS도 이 작업을 지원한다.
타겟 중복 제거는 데이터가 생성되지 않은 위치에서 중복을 제거하는 프로세스이다. 예를 들어 SAN/NAS에 연결된 서버가 있는데, SAN/NAS는 서버의 대상이 될 것이다(타겟 중복 제거). 서버는 어떠한 중복 제거도 인식하지 못하며, 서버는 데이터 생성 지점이기도 하다. 두 번째 예는 백업이다. 일반적으로 이는 데이터 저장소 또는 가상 테이프 라이브러리와 같은 백업 저장소가 된다.
데이터 중복 제거 분류
데이터 중복 제거 구현의 가장 일반적인 형태 중 하나는 데이터 덩어리를 비교하여 중복을 감지하는 방식으로 작동한다. 이를 위해 각 데이터 덩어리에는 소프트웨어에 의해 계산되는 식별자가 할당되며, 일반적으로 암호화 해시 함수를 사용한다. 많은 구현에서 식별자가 동일하면 데이터가 동일하다고 가정하지만, 비둘기집 원리 때문에 모든 경우에 사실일 수는 없다. 다른 구현에서는 동일한 식별자를 가진 두 데이터 블록이 동일하다고 가정하지 않고 실제로 동일한 식별자를 가진 데이터가 동일한지 확인한다. 소프트웨어가 주어진 식별자가 중복 제거 네임스페이스에 이미 존재한다고 가정하거나 실제로 두 데이터 블록의 식별을 확인하는 경우(구현에 따라 다름), 해당 중복 덩어리를 링크로 대체한다.
데이터가 중복 제거된 후, 파일을 다시 읽을 때 링크가 발견될 때마다 시스템은 해당 링크를 참조된 데이터 덩어리로 간단히 대체한다. 중복 제거 프로세스는 최종 사용자 및 애플리케이션에 투명하도록 의도되었다.
상업용 중복 제거 구현은 덩어리 나누기 방법 및 아키텍처에 따라 다르다.
데이터 중복 제거 분류
덩어리 나누기: 일부 시스템에서는 덩어리가 물리적 계층 제약(예: WAFL의 4KB 블록 크기)에 의해 정의된다. 일부 시스템에서는 전체 파일만 비교하는데, 이를 단일 인스턴스 저장소 또는 SIS라고 한다. 덩어리 나누기의 가장 지능적인 (그러나 CPU 집약적인) 방법은 일반적으로 슬라이딩 블록(Sliding-block)으로 간주되며, 콘텐츠 정의 덩어리 나누기라고도 한다. 슬라이딩 블록에서는 파일 스트림을 따라 창을 이동하여 더 자연스럽게 발생하는 내부 파일 경계를 찾는다.
클라이언트 백업 중복 제거: 이것은 중복 제거 해시 계산이 원본(클라이언트) 머신에서 처음 생성되는 프로세스이다. 대상 장치에 이미 있는 파일과 동일한 해시를 가진 파일은 전송되지 않으며, 대상 장치는 중복된 데이터를 참조하기 위한 적절한 내부 링크를 생성한다. 이점은 데이터가 네트워크를 통해 불필요하게 전송되는 것을 방지하여 트래픽 부하를 줄인다는 것이다.
주 저장소 및 보조 저장소: 정의상 주 저장소 시스템은 가능한 가장 낮은 비용보다는 최적의 성능을 위해 설계되었다. 이러한 시스템의 설계 기준은 다른 고려 사항을 희생하여 성능을 높이는 것이다. 또한 주 저장소 시스템은 성능에 부정적인 영향을 미 미칠 수 있는 모든 작업에 대해 훨씬 덜 허용적이다. 또한 정의상 보조 저장소 시스템은 주로 중복되거나 보조 데이터 사본을 포함한다. 이러한 데이터 사본은 일반적으로 실제 생산 작업에 사용되지 않으므로 효율성 향상을 위해 일부 성능 저하를 더 허용한다.
현재까지 데이터 중복 제거는 주로 보조 저장소 시스템에 사용되었다. 그 이유는 두 가지이다. 첫째, 데이터 중복 제거는 중복 데이터를 검색하고 제거하는 데 오버헤드가 필요하다. 주 저장소 시스템에서는 이 오버헤드가 성능에 영향을 미 미칠 수 있다. 중복 제거가 보조 데이터에 적용되는 두 번째 이유는 보조 데이터가 중복 데이터가 더 많은 경향이 있기 때문이다. 특히 백업 응용 프로그램은 시간이 지남에 따라 상당한 양의 중복 데이터를 생성하는 경우가 많다.
데이터 중복 제거는 시스템 설계가 상당한 오버헤드를 요구하지 않거나 성능에 영향을 미 미치지 않는 일부 경우에 주 저장소와 함께 성공적으로 배포되었다.
데이터 중복 제거 단일 인스턴스 저장소
단일 인스턴스 저장소 (SIS)는 시스템이 콘텐츠 객체의 여러 복사본을 가져와 단일 공유 복사본으로 대체하는 기능이다. 이는 데이터 중복을 제거하고 효율성을 높이는 수단이다. SIS는 파일 시스템, 전자우편 서버 소프트웨어, 자료 백업 및 기타 저장소 관련 컴퓨터 소프트웨어에 자주 구현된다. 단일 인스턴스 저장소는 데이터 중복 제거의 간단한 변형이다. 데이터 중복 제거는 세그먼트 또는 서브 블록 수준에서 작동할 수 있지만, 단일 인스턴스 저장소는 객체 수준에서 작동하여 전체 파일 또는 전자우편 메시지와 같은 객체의 중복 복사본을 제거한다.
단일 인스턴스 저장소는 다른 데이터 중복 또는 데이터 압축 방법과 함께 사용(또는 계층화)하여 복잡성을 증가시키고 (일부 경우) 저장 공간 요구 사항을 약간 증가시키는 대신 성능을 향상시킬 수 있다.
데이터 중복 제거 단점 및 우려 사항
데이터 중복 제거를 위한 한 가지 방법은 암호화 해시 함수를 사용하여 데이터의 중복 세그먼트를 식별하는 방식에 의존한다. 두 개의 다른 정보 조각이 동일한 해시 값을 생성하는 경우, 이를 해시 충돌이라고 한다. 충돌의 확률은 주로 해시 길이에 따라 달라진다( 생일 공격 참조). 따라서 해시 충돌이 발생하고 데이터의 차이 여부를 확인하기 위한 추가 검증 수단이 사용되지 않으면 데이터 손상이 발생할 수 있다는 우려가 제기된다. 인라인 및 후처리 아키텍처 모두 데이터 무결성을 보장하기 위해 원본 데이터의 비트별 검증을 제공할 수 있다. 사용되는 해시 함수에는 SHA-1, SHA-256 등과 같은 표준이 포함된다.
데이터 중복 제거 단점 및 우려 사항
이 프로세스의 계산 자원 집약성은 데이터 중복 제거의 단점이 될 수 있다. 성능을 향상시키기 위해 일부 시스템은 약한 해시와 강력한 해시를 모두 활용한다. 약한 해시는 계산 속도가 훨씬 빠르지만 해시 충돌 위험이 더 크다. 약한 해시를 활용하는 시스템은 나중에 강력한 해시를 계산하고 이를 사용하여 실제로 동일한 데이터인지 여부를 결정하는 요소로 사용한다. 해시 값을 계산하고 조회하는 데 관련된 시스템 오버헤드는 주로 중복 제거 워크플로의 기능이다. 파일 재구성은 이 처리를 필요로 하지 않으며 데이터 덩어리 재조립과 관련된 점진적인 성능 저하는 애플리케이션 성능에 영향을 미칠 가능성이 낮다.
또 다른 우려는 압축과 암호화의 상호 작용이다. 암호화의 목표는 데이터에서 식별 가능한 패턴을 제거하는 것이다. 따라서 암호화된 데이터는 기본 데이터가 중복되더라도 중복 제거할 수 없다.
데이터 중복 제거의 단점은 아니지만, 중복 제거된 대규모 데이터 저장소에 불충분한 보안 및 접근 유효성 검사 절차가 사용될 때 데이터 유출이 발생한 사례가 있다. 일부 시스템에서는 클라우드 저장소와 마찬가지로 공격자가 원하는 데이터의 해시 값을 알거나 추측하여 다른 사람이 소유한 데이터를 검색할 수 있다.
데이터 중복 제거 구현
중복 제거는 ZFS 또는 Write Anywhere File Layout과 같은 일부 파일 시스템 및 다양한 디스크 배열 모델에서 구현된다. 이는 윈도우 서버의 NTFS 및 ReFS에서 사용 가능한 서비스이다.
DES-X
암호학에서 DES-X 또는 DESX는 DES (데이터 암호화 표준) 대칭 키 블록 암호의 변형으로, 무차별 대입 공격의 복잡성을 증가시키기 위한 것이다. 복잡성을 증가시키는 데 사용되는 기술을 키 화이트닝이라고 부른다.
원래 DES 알고리즘은 1976년에 56비트 키 크기: 256개의 키 가능성으로 명시되었다. 당시에는 exhaustive search가 대규모 정부, 특히 미국의 미국 국가안보국 (NSA)의 능력 범위 내에 있을 수 있다는 비판이 있었다. 알고리즘을 크게 변경하지 않고 DES의 키 크기를 늘리는 한 가지 방법은 1984년 5월 로널드 리베스트가 제안한 DES-X였다.
이 알고리즘은 1980년대 후반부터 RSA 시큐리티의 BSAFE 암호화 라이브러리에 포함되었다.
DES-X는 DES를 적용하기 전에 추가 64비트 키 (K1)를 평문에 XOR하고, 암호화 후에 또 다른 64비트 키 (K2)를 XOR하여 DES를 확장한다.
이로 인해 키 크기는 56 + (2 × 64) = 184비트로 증가한다.
DES-X
그러나 유효 키 크기(보안)는 56+64−1−lb(M) = 119 − lb(M) = 약 119비트로만 증가하는데, 여기서 M은 공격자가 얻을 수 있는 선택 평문/암호문 쌍의 수이며, lb는 이진 로그를 나타낸다. 더욱이, 232.5개의 알려진 평문과 고급 슬라이드 공격을 사용하면 유효 키 크기는 88비트로 떨어진다.
DES-X는 또한 차분 공격과 선형 공격에 대한 DES의 강도를 증가시키지만, 개선 효과는 무차별 대입 공격의 경우보다 훨씬 작다. 차분 암호 해독은 261개의 선택 평문(DES의 경우 247)이 필요하고, 선형 암호 해독은 260개의 알려진 평문(DES의 경우 243 또는 독립적인 하위 키를 가진 DES의 경우 261)이 필요할 것으로 추정된다. 264개의 평문(이 경우 알려진 또는 선택된 것이 동일함)이 있으면 DES (또는 64비트 블록 크기를 가진 다른 모든 블록 암호)는 전체 암호의 코드북을 사용할 수 있게 되므로 완전히 깨진다.
차분 및 선형 공격에도 불구하고, 현재 DES-X에 대한 최상의 공격은 비류코프-바그너가 발견한 알려진 평문 슬라이드 공격이다. 이 공격은 232.5개의 알려진 평문과 287.5의 분석 시간을 필요로 한다. 게다가 이 공격은 동일한 데이터 복잡성과 295의 오프라인 시간 복잡성을 가진 암호문 전용 공격으로 쉽게 전환될 수 있다.
DES-X 각주
Kilian, Joe; Rogaway, Phillip (1996). 〈How to Protect DES Against Exhaustive Key Search〉. 《Advances in Cryptology — CRYPTO '96》. Lecture Notes in Computer Science 1109. 252–267쪽. doi:10.1007/3-540-68697-5_20. ISBN 978-3-540-61512-5.
키 화이트닝
암호학에서 키 화이트닝(key whitening)은 반복 블록 암호의 보안을 강화하기 위한 기술이다. 데이터와 키의 일부를 결합하는 단계로 구성된다.
키 화이트닝 상세
키 화이트닝의 가장 일반적인 형태는 XOR을 사용하여 암호화의 첫 라운드 전과 마지막 라운드 후에 적용하는 Xor–encrypt–xor – 이다.
키 화이트닝의 한 형태를 사용한 최초의 블록 암호는 DES-X로, DES의 일반적인 56비트 키 외에 두 개의 추가 64비트 키를 화이트닝에 사용한다. 이는 무차별 대입 공격의 복잡성을 증가시켜 알고리즘의 큰 변경 없이 키의 유효 크기를 늘리려는 의도이다. DES-X의 발명가인 로널드 리베스트는 이 기술을 화이트닝이라고 명명했다.
암호 FEAL (이어서 Khufu 및 Khafre)은 암호의 나머지 부분에 사용된 것과 동일한 키의 일부를 사용하여 키 화이트닝을 도입했다. 이는 무차별 대입 공격에 대한 추가적인 보호를 제공하지 않지만 다른 공격을 더 어렵게 만들 수 있다. 파이스텔 암호 또는 유사한 알고리즘에서 키 화이트닝은 첫 번째 및 마지막 라운드 함수의 특정 입력을 숨김으로써 보안을 강화할 수 있다. 특히, 중간자 공격에 취약하지 않다. 이러한 형태의 키 화이트닝은 AES, MARS, RC6, 투피시를 포함한 많은 후속 블록 암호의 특징으로 채택되었다.
쇼유타이
쇼유타이(醤油鯛)는 간장과 같은 액체 조미료를 담는 작은 물고기 모양의 용기이다. 1950년대 일본에서 처음 생산되었으며, 원래는 참돔 모양이었다. 21세기 들어 사용이 줄었지만, 여전히 벤또와 스시 용기, 기내식에 사용되고 있다.
간장 물고기는 일본 요리가 일본 밖에서 인기를 얻으면서 사용이 확산되었다. 2025년, 플라스틱 오염 문제를 해결하기 위한 노력의 일환으로 호주의 사우스오스트레일리아주는 전 세계에서 처음으로 간장 물고기 사용을 금지했다.
쇼유타이 역사
간장 물고기는 1950년대 오사카부에 본사를 둔 제조업체인 아사히 소교(旭創業)의 설립자 와타나베 테루오에 의해 발명되었다. 이러한 유형의 용기는 문자 그대로 "간장 참돔"을 의미하는 shoyu-tai (醤油鯛, shōyu-dai)라고도 불리는데, 이는 1950년대에 원래 폴리에틸렌 용기가 생산된 모양 때문이다. 21세기 들어 사용이 줄었지만, 여전히 벤또 도시락, 스시 롤 용기, 기내식에 사용되고 있다.
일본 요리가 다른 나라에서 인기를 얻으면서 간장 물고기의 사용도 함께 확산되었다. 2014년, 미국 텍사스에 본사를 둔 리틀 소야가 생산한 간장 물고기는 미국 항공 우주국 우주 발사를 통해 국제우주정거장으로 운반될 예정이었다.
쇼유타이 레크리에이션 약물 사용
영국 자선단체 GMFA의 2015년 공중 보건 캠페인인 굿 쳄스(Good Chems)는 약물 과다 복용을 예방하기 위한 다른 방법들 중에서도 레크리에이션 약물의 안전한 복용량을 측정하기 위해 간장 물고기 사용을 권장했다. 특히 GHB를 사용하는 게이 남성에게 권장되었는데, 일반적인 간장 물고기는 3 밀리리터 (0.11 imp fl oz; 0.10 US fl oz)의 용량을 가지고 있으며, GHB의 권장 안전 복용량은 이의 정확히 절반이다. 2017년, 시드니 모닝 헤럴드는 멜버른 나이트클럽에서 때때로 이 용기에 담겨 불법적으로 사용되는 1,4-부탄다이올에 대해 보도했다.
쇼유타이 환경 문제
플라스틱 오염 문제를 해결하기 위한 노력의 일환으로 2025년에 호주 사우스오스트레일리아주에서 간장 물고기 및 직사각형 간장 용기 등 특정 플라스틱의 판매 및 유통이 금지되었다. 부주지사 수잔 클로즈에 따르면, 간장 물고기는 "쉽게 떨어지고, 날아가거나, 배수구로 씻겨 들어가며" "분류 기계에 잡히기에는 너무 작아 종종 매립되거나 환경에 떠도는 플라스틱이 되기 때문에" 다른 조미료 용기들 중에서도 특별히 금지되었다.
확장 부트 레코드
확장 부트 레코드(extended boot record, EBR), 또는 확장 파티션 부트 레코드(extended partition boot record, EPBR),은 일반적인 DOS 디스크 드라이브 파티션 시스템에서 논리 파티션에 대한 설명자이다. 이 시스템에서 마스터 부트 레코드 (MBR)의 파티션 레코드 엔트리 중 하나(그리고 오직 하나)가 확장 파티션으로 지정되면, 해당 파티션은 여러 개의 논리 파티션으로 세분될 수 있다. 이 확장 파티션의 실제 구조는 확장 파티션 내에 위치한 하나 이상의 EBR에 의해 설명된다. 첫 번째(그리고 때로는 유일한) EBR은 항상 확장 파티션의 첫 번째 섹터에 위치한다.
단일 MBR 내의 파티션 테이블에 의해 모두 설명되어 그 수가 제한되는 주 파티션과 달리, 각 EBR은 자신이 설명하는 논리 파티션 앞에 위치한다. 다른 논리 파티션이 뒤따르면, 첫 번째 EBR에는 다음 EBR을 가리키는 엔트리가 포함된다. 따라서 여러 EBR이 연결 리스트를 형성한다. 이는 확장 파티션 내에 형성될 수 있는 논리 드라이브의 수가 주어진 확장 파티션의 사용 가능한 디스크 공간 양에 의해서만 제한됨을 의미한다.
확장 부트 레코드
윈도우 XP 버전까지는 확장 파티션 내의 논리 파티션이 "드라이브 지오메트리" 또는 "CHS"라는 규칙에 따라 정렬되었지만, 윈도우 비스타부터는 1-MiB 경계에 맞춰 정렬된다. 이러한 정렬 방식의 차이 때문에 XP의 논리 디스크 관리자 (디스크 관리)는 이러한 확장 파티션을 경고 없이 삭제할 수 있다.
확장 부트 레코드 EBR 구조 및 값
EBR은 기본적으로 MBR과 동일한 구조를 가지지만, 섹터 끝에 필수적인 부트 레코드 시그니처(또는 매직 넘버) 0xAA55가 있는 것 외에 파티션 테이블의 첫 두 엔트리만 사용되어야 한다. 이 2바이트 시그니처는 디스크 편집기에서 0x55가 먼저, 0xAA가 나중에 나타나는데, 이는 IBM 호환 PC가 리틀 엔디언 순서로 십육진법 단어를 저장하기 때문이다(아래 표 참조).
OS/2 운영 체제 및 일부 초기 파티션 매직 버전과 함께 제공되는 IBM 부트 관리자는 각 EBR 섹터에 최소 9바이트 엔트리(오프셋 0x18A부터 시작)를 추가한다. 이 엔트리는 플래그 값 바이트(파티션이 IBM 부트 관리자 메뉴에 있는지 여부를 나타냄)와 메뉴에 사용될 이름인 8바이트 ASCII 문자열로 구성된다. 파티션이 부트 메뉴에 포함되지 않은 경우(예: 데이터 전용 파티션), 플래그 바이트는 0이며, 이 경우 다음 8바이트 필드에는 해당 파티션의 시작 섹터 번호(십육진법)의 ASCII 표현이 포함될 수 있다.
확장 부트 레코드 EBR 구조 및 값
확장 파티션의 파티션 타입은 0x05 (CHS 주소 지정) 또는 0x0F (LBA 주소 지정)이다.
DR-DOS 6.0 이상은 다른 운영 체제에서는 보이지 않는 0xC5를 사용하는 보안 확장 파티션을 지원한다. 7.03을 포함한 DR-DOS의 비 LBA 지원 버전은 0x0F 파티션 타입을 인식하지 못하고 다른 운영 체제는 0xC5 타입을 인식하지 못하기 때문에, 이를 활용하여 DR-DOS에서 디스크의 처음 8GB까지 공간을 점유하고(보안 또는 비보안 파티션의 논리 드라이브용으로), 여전히 0x0F를 사용하여 충돌 없이 LBA 지원 운영 체제용으로 디스크의 나머지 부분을 할당할 수 있다.
확장 부트 레코드 EBR 구조 및 값
마찬가지로 리눅스는 타입 0x85를 사용하는 두 번째 확장 파티션 체인 개념을 지원한다. 이 타입은 단일 체인만 지원하는 다른 운영 체제에서는 숨겨져 있다(알려지지 않음). EBR을 포함할 수 있는 다른 확장 파티션 타입에는 의도적으로 숨겨진 타입 0x15, 0x1F, 0x91 및 0x9B, 접근이 제한된 타입 0x5E 및 0x5F, 그리고 보안 타입 0xCF 및 0xD5가 있다. 그러나 이들은 해당 운영 체제 및 도구에만 사적인 것으로 간주되어야 하며, 다른 방식으로 마운트되어서는 안 된다.
확장 부트 레코드 EBR 구조 및 값
파티션의 CHS 주소는 (가상) 디스크 지오메트리에 대한 지식 없이는 해석하기 어렵다. CHS에서 LBA로의 변환은 헤드 수와 트랙당 섹터 수에 기반하기 때문이다. 그러나 주어진 LBA 시작 주소와 섹터 단위의 파티션 크기는 가능한 경우 주어진 CHS 주소와 일치하는 디스크 지오메트리를 계산할 수 있게 한다. 24비트 CHS 주소 지정은 항상 트랙당 최대 63개 섹터(1...63)에 6비트를 사용하고, INT 13H 디스크 접근은 일반적으로 최대 256개 헤드(0...255)에 8비트를 사용하여 최대 1024개 실린더(0...1023)에 10비트를 남긴다. ATA CHS 주소는 항상 최대 16개 헤드(0...15)에 4비트를 사용하며, 이는 ATA-5 24비트 CHS 주소 변환에서 최대 16,383개 실린더({{{1}}})에 14비트를 남긴다.
확장 부트 레코드 EBR 구조 및 값
다음은 EBR의 파티션 테이블 엔트리의 4바이트 필드에서 발견되는 값(위 표 참조)에만 적용되는 일반적인 규칙이다. 이 값들은 생성 또는 변경에 사용된 파티션 도구에 따라 달라지며, 사실 확장 파티션 체계를 사용하는 대부분의 운영 체제(마이크로소프트 MS-DOS 및 윈도우, 리눅스 포함)는 다른 EBR 섹터를 가리키는 엔트리의 "파티션 크기" 값을 무시한다. 한 가지 예외는 리눅스 운영 체제의 경우 이 값이 1 이상이어야 한다는 것이다.
EBR 파티션 테이블의 첫 번째 엔트리는 해당 EBR에 속하는 논리 파티션을 가리킨다.
시작 섹터 = 이 EBR 섹터와 논리 파티션의 첫 번째 섹터 사이의 상대적 오프셋
참고: 이는 종종 동일한 하드 디스크의 각 EBR에 대해 동일한 값이며, 일반적으로 윈도우 XP 또는 이전 버전에서는 63이다.
섹터 수 = 이 논리 파티션의 총 섹터 수
참고: EBR과 논리 드라이브 사이에 사용되지 않는 섹터는 논리 드라이브의 일부로 간주되지 않는다.
EBR 파티션 테이블의 두 번째 엔트리는 확장 파티션의 마지막 EBR인 경우 0바이트를 포함한다. 그렇지 않으면 EBR 체인의 다음 EBR을 가리킨다.
확장 부트 레코드 EBR 구조 및 값
파티션 타입 코드 = 0x05 (CHS 주소 지정) 또는 0x0F (LBA 주소 지정).
즉, 파티션이 유효한 파티션 타입을 가져야 하는 것처럼 EBR도 유효한 파티션 타입을 가져야 한다.
시작 섹터 = 확장 파티션 내 다음 EBR의 상대 주소
즉: 시작 섹터 = 다음 EBR의 LBA 주소 빼기 확장 파티션의 첫 번째 EBR의 LBA 주소
섹터 수 = 다음 논리 파티션의 총 섹터 수이지만, 다음 EBR 섹터부터 카운트가 시작된다.
참고: EBR 파티션 테이블의 첫 번째 엔트리와 달리, 이 섹터 수는 다음 논리 파티션의 EBR 섹터와 그 외 사용되지 않는 트랙의 다른 섹터를 포함한다. (아래 다이어그램 1과 2를 비교해 보자.)
설명:
위 다이어그램은 축척에 맞지 않는다. 각 "EBR"과 논리 "파티션" 사이의 얇은 흰색 선은 일반적으로 63개 섹터 길이의 사용되지 않는 영역의 나머지 부분을 나타낸다. 여기에는 단일 EBR 섹터(매우 과장된 크기로 표시됨)가 포함된다.
일부 시스템에서는 논리 파티션의 끝과 다음 EBR 사이에, 또는 마지막 논리 파티션과 전체 확장 파티션 자체의 끝 사이에 큰 사용되지 않는 공간이 존재할 수 있다(이전에 생성된 논리 파티션이 삭제되거나 크기가 조정된(축소된) 경우).
위에 표시된 EBR과 파티션의 인터리빙은 일반적이지만 필수는 아니다. 두 개 이상의 연속적인 EBR 뒤에 두 개 이상의 파티션 데이터 영역이 오는 것도 유효하다.
리눅스 및 유사 운영 체제는 IDE 하드 디스크를 첫 번째 하드 디스크에 대해 /dev/hda, 두 번째 하드 디스크에 대해 /dev/hdb 등으로 지정한다. 마찬가지로 SCSI 및 이후 커널에서는 IDE 및 SATA 하드 디스크도 첫 번째 디스크에 대해 /dev/sda 등으로 식별한다.
마스터 부트 레코드에 정의된 최대 4개의 파티션은 /dev/hda에 대해 /dev/hda1 ... /dev/hda4로 지정된다. 이 체계에서 다섯 번째 파티션, 예를 들어 /dev/hda5는 첫 번째 논리 드라이브에 해당한다. 여섯 번째 파티션 /dev/hda6은 두 번째 논리 드라이브에 해당하며, 다시 말해 확장 파티션 컨테이너는 계산되지 않는다. MBR에 정의된 가장 바깥쪽 확장 파티션(/dev/hda1 ... /dev/hda4 중 하나)만이 이 체계에서 이름을 가진다.
장치 파일 § 명명 규칙 문서에 이 부분의 추가 정보가 있습니다.
확장 부트 레코드 예시
이는 6,000개 섹터와 3개의 논리 파티션을 가진 확장 파티션을 보여준다.
참고: 3MB에 불과한 작은 확장 파티션이나 트랙당 20개 섹터를 가진 하드 드라이브는 현실적이지 않지만, 이 예시를 더 읽기 쉽게 만들기 위해 이러한 값들이 선택되었다.
다음 명령줄 도구의 출력은 두 개의 논리 드라이브가 있는 디스크의 레이아웃을 보여준다. FAT 및 NTFS 파티션에 대한 세부 정보는 생략되었으며, 리눅스로 주석 처리된 줄은 확장 파일 시스템이 있는 /dev/hda6이다. /dev/hda5의 시작 부분은 관련 운영 체제인 PC DOS 7, 윈도우 NT, 데비안이 간격을 두어 확장 파티션 정렬을 고집하지 않음을 보여준다.
다른 예시는 "리눅스 파티션 HOWTO"를 참조한다.
볼륨 부트 레코드
볼륨 부트 레코드(volume boot record, VBR, 볼륨 부트 섹터, 파티션 부트 레코드 또는 파티션 부트 섹터는 IBM PC에서 도입된 부트 섹터의 한 유형이다. 이는 하드 디스크와 같이 분할된 데이터 기억 장치나 플로피 디스크와 같이 분할되지 않은 장치에서 발견될 수 있으며, 장치의 다른 부분에 저장된 컴퓨터 프로그램 (대개 운영체제이지만 반드시 그런 것은 아님)을 부트스트랩하기 위한 기계어 코드를 포함한다. 분할되지 않은 저장 장치에서는 장치의 첫 번째 섹터이며, 분할된 장치에서는 장치 내 개별 파티션의 첫 번째 디스크 섹터로, 전체 장치의 첫 번째 섹터는 파티션 테이블을 포함하는 마스터 부트 레코드 (MBR)이다.
볼륨 부트 레코드의 코드는 기기의 펌웨어에 의해 직접 호출되거나, 마스터 부트 레코드 또는 부트 관리자의 코드에 의해 간접적으로 호출된다. MBR과 VBR의 코드는 본질적으로 동일한 방식으로 로드된다.
볼륨 부트 레코드
부트 관리자를 통해 VBR을 호출하는 것을 체인 로딩이라고 한다. NTLDR (윈도우 XP 및 윈도우 서버 2003을 포함한 마이크로소프트의 윈도우 NT 기반 운영체제 모든 릴리스의 부트 로더)과 같은 일부 듀얼 부트 시스템은 개별 운영체제가 단일 파티션의 VBR에 설치하는 부트스트랩 코드의 복사본을 디스크 파일에 저장하고, 부트 로더가 사용자에게 부트스트랩할 운영체제를 물어본 후 관련 VBR 내용을 파일에서 로드한다. 윈도우 비스타, 윈도우 서버 2008 및 최신 버전에서는 NTLDR이 교체되었으며, 부트 로더 기능은 두 개의 새로운 구성 요소인 WINLOAD.EXE와 윈도우 비스타 시작 프로세스에 의해 제공된다.
FAT12 (DOS 1.x 제외), FAT16, FAT32, HPFS 및 NTFS와 같은 파일 시스템에서 VBR은 파일 시스템의 주요 디스크 내 데이터 구조의 위치와 레이아웃을 지정하는 BIOS 매개변수 블록 (BPB)도 포함한다. (FAT VBR의 섹터 레이아웃, 다양한 FAT BPB 버전 및 그 항목에 대한 자세한 설명은 FAT 문서에서 찾을 수 있다.)
볼륨 부트 레코드 기술적 세부 사항
부트 섹터에 x86 CPU용 IBM PC 호환기종 부트 로더의 존재는 512바이트 이상의 섹터 크기에 대해 부트 섹터 서명(고정 오프셋 +1FEh의 55h와 +1FFh의 AAh)이라고 불리는 2바이트 16진수 시퀀스로 관례상 표시된다. 512바이트 섹터의 경우, 부트 섹터 서명은 섹터의 끝을 나타내기도 한다. 더 작거나 큰 섹터의 VBR도 실제 섹터 크기의 끝에 서명을 표시할 수 있지만, 여기에 설명된 의미는 +1FEh의 16비트 서명에만 적용된다.
볼륨 부트 레코드 기술적 세부 사항
이 서명은 설령 운영 체제를 실제로 로드할 수 없더라도 안전하게 실행될 수 있는 최소한의 더미 부트 로더의 존재를 나타낸다. 이는 (특정) 파일 시스템이나 운영 체제의 존재를 나타내는 것은 아니지만, 3.3 이전의 일부 구형 DOS 버전은 FAT 형식 미디어를 감지하는 과정에서 이 서명에 의존했다 (최신 버전은 그렇지 않다). 다른 플랫폼이나 CPU용 부트 코드는 이 서명을 사용해서는 안 된다. 왜냐하면 BIOS가 유효한 실행 코드를 포함하고 있다고 가정하고 부트 섹터에 실행을 전달할 때 충돌이 발생할 수 있기 때문이다. 이는 FAT12/FAT16 미디어가 매우 오래된 DOS 버전에서도 사용되어야 할 경우, 운영 체제를 포함하지 않거나 다른 플랫폼에서만 부팅 가능하도록 의도된 경우에도 서명을 유지해야 함을 의미한다. 결과적으로 최소한 x86 호환 (더미) 로더도 포함해야 한다 (비교를 위해, Atari ST 및 MSX-DOS의 FAT 예시 참조). 그럼에도 불구하고, 다른 플랫폼용 일부 미디어는 x86 호환 더미 로더 없이도 서명을 잘못 포함하여, 실제로는 검사가 100% 신뢰할 수 없다.
볼륨 부트 레코드 기술적 세부 사항
이 서명은 (최소한) IBM PC/AT 이후의 대부분의 시스템 BIOS에 의해 검사된다 (그러나 원래 IBM PC 및 일부 다른 기계에서는 검사되지 않는다). 더욱이, 대부분의 MBR 부트 로더도 부트 섹터에 제어를 넘기기 전에 이를 확인한다. 일부 BIOS (IBM PC/AT와 같은)는 고정 디스크/이동식 드라이브에 대해서만 검사를 수행하며, 플로피 및 슈퍼플로피의 경우 부트 섹터가 유효한 것으로 간주되기 위해 06h보다 크거나 같은 바이트로 시작하고 처음 9개의 워드가 동일한 값을 포함하지 않는 것으로 충분하며, 플로피에서 55h, AAh에 대한 명시적인 테스트를 피한다. 구형 부트 섹터 (즉, 매우 오래된 CP/M-86 및 DOS 미디어)는 성공적으로 부팅될 수 있음에도 불구하고 때때로 이 서명을 포함하지 않으므로, 일부 환경에서는 이 검사를 비활성화할 수 있다. 이는 플로피가 512바이트보다 작은 섹터 크기를 사용하도록 포맷될 수 있다는 사실도 반영한다.
볼륨 부트 레코드 기술적 세부 사항
BIOS 또는 MBR 코드가 유효한 부트 섹터를 감지하지 못하여 부트 섹터 코드로 실행을 전달할 수 없으면, 다음 부트 장치를 시도한다. 모두 실패하면 일반적으로 오류 메시지를 표시하고 INT 18h를 호출한다. 이는 ROM에 있는 선택적 상주 소프트웨어 (ROM BASIC)를 시작하거나, 네트워크를 통해 원격 부팅을 시도하거나, 사용자 확인 후 INT 19h를 통해 시스템을 재부팅하거나, 다음 전원 켤 때까지 시스템이 부트스트랩 프로세스를 중단하게 한다.
10진수 오프셋 72에서 79까지, NTFS PBR은 파티션 UUID 볼륨 ID 일련 번호를 포함한다.
볼륨 부트 레코드 기술적 세부 사항
VBR의 부트 코드는 BIOS가 데이터 구조 및 인터럽트를 설정하고 하드웨어를 초기화했다고 가정할 수 있다. 코드는 안정적인 작동을 위해 32KB 이상의 메모리가 있다고 가정해서는 안 된다. 더 많은 메모리가 필요한 경우 INT 12h를 통해 쿼리해야 한다. 다른 선행 부트 코드 (예: BIOS 확장 오버레이, 암호화 시스템 또는 원격 부트스트랩 로더)가 메모리의 다른 곳에도 존재할 수 있기 때문이다 (그리고 일반적으로 INT 12h 메모리를 그에 따라 줄여서 부트 섹터에서 자신을 숨기므로 MBR 및 VBR의 작업에 의해 덮어쓰여지지 않는다). BIOS 부트 사양은 64KB의 메모리를 허용하며 MBR 및 VBR을 위한 메모리 공간으로 0000h:7C00h부터 0000h:FFFFh를 명시적으로 권장한다. 부트 코드는 원래 인텔 8088 또는 8086 (원래 PC에서 사용됨)보다 더 나은 CPU를 가정해서는 안 되며, 하드웨어의 정확한 상태, 인터럽트 시스템 (인터럽트가 활성화 또는 비활성화될 수 있음) 또는 스택의 위치 및 크기에 대해 가정해서는 안 된다. 원래 IBM BIOS는 DS, ES, SS CPU 레지스터를 세그먼트 0000h로 초기화하고 초기 스택을 SS:SP = 0000h:0400h에 유지하지만, 모든 BIOS 및 MBR 코드가 이 규칙을 따르지 않으므로 이것에 의존해서는 안 된다. 아래에 언급되지 않은 레지스터는 초기화되지 않은 것으로 처리해야 한다. 직접적인 하드웨어 액세스는 일반적으로 허용되지 않는다. 디스크 매개변수 테이블 (DPT/FDPB)은 일반적으로 메모리의 0000h:0078h에 이미 설정되어 있지만, VBR은 INT 1Eh 벡터가 가리키는 DPT를 이 위치로 이동 (및 수정)해야 한다 (INT 1Eh는 인터럽트가 아니라 DPT에 대한 원거리 포인터이다).
볼륨 부트 레코드 기술적 세부 사항
일부 조건은 제어된 환경에서 완화될 수 있다. 예를 들어, 오늘날 일부 부트 로더는 정상 작동 시 (더 많은 메모리를 쿼리하지 않고) 128KB까지의 메모리를 사용할 수 있다고 가정하며, LBA 액세스를 사용하는 일부 부트 로더는 최소한 인텔 80188 또는 80186 CPU를 가정한다.
VBR은 메모리 위치 0000h:7C00h에 로드되며, 이전 부트스트랩 로더 (즉, 일반적으로 BIOS 또는 MBR이지만, 다른 부트 로더일 수도 있음)가 CPU의 리얼 모드에서 0000h:7C00h로 점프하여 실행을 전달할 때 다음 CPU 레지스터가 설정된다.
일부 Compaq BIOS는 07C0h:0000h를 대신 잘못 사용한다. 이는 리얼 모드 메모리에서 동일한 위치로 해석되지만, 비표준이며 피해야 한다. 특정 레지스터 값에 의존하거나 재배치 가능하도록 작성되지 않은 VBR 코드가 그렇지 않으면 작동하지 않을 수 있기 때문이다.
볼륨 부트 레코드 기술적 세부 사항
DL = 부트 드라이브 장치 (플로피 / 슈퍼플로피: 00h = 첫 번째, 01h = 두 번째, ..., 7Eh; 고정 디스크 / 이동식 드라이브: 80h = 첫 번째, 81h = 두 번째, ..., FEh; 값 7Fh 및 FFh는 ROM / 원격 드라이브용으로 예약되어 있으며 디스크에서 사용해서는 안 된다). DL은 IBM BIOS뿐만 아니라 대부분의 다른 BIOS에서도 지원된다. Toshiba T1000 BIOS는 이를 제대로 지원하지 않는 것으로 알려져 있으며, 일부 구형 Wyse 286 BIOS는 하드 디스크에 대해 2보다 크거나 같은 DL 값을 사용한다. 슈퍼플로피로 구성된 USB 스틱은 일반적으로 DL = 00h 또는 01h를 할당받지만, 일부 드문 BIOS는 이동식 드라이브로 구성된 USB 스틱도 DL = 80h를 사용하는 대신 DL = 01h로 잘못 표시한다. 전통적으로 부팅 시 BIOS에 의해 00h 및 80h 값만 전달되었으며, 많은 부트 섹터는 어쨌든 고정된 값으로 작동하도록 하드웨어적으로 연결되어 있었다. 플러그 앤 플레이 BIOS 사양 및 BIOS 부트 사양 (BBS)은 다른 장치도 부팅 가능하게 한다. 후자는 MBR 및 VBR 코드가 내부적으로 하드웨어적으로 연결된 기본값 대신 DL을 사용할 것을 권장한다. (참고. MS-DOS/PC DOS 및 OS/2 VBR은 제공된 DL 값을 무시하고 대신 확장 BIOS 매개변수 블록 (EBPB)의 오프셋 +19h에 저장된 값 또는 DOS 버전 3.2에서 3.31까지의 섹터 오프셋 +1FDh에 저장된 값을 검색한다. DR-DOS의 일부 버전은 7.02부터 DL을 사용한다. DR-DOS 7.07 VBR은 기본적으로 DL을 사용하고 BPB 값을 무시하지만, SYS /O[:nnn]을 사용하여 BPB 값을 사용하는 이전 동작을 다시 호출하거나 특정 부트 드라이브 장치 nnn을 저장하도록 강제할 수 있다. FAT32 볼륨에서 프리도스는 DL 값을 활용하며, FAT12/FAT16 볼륨에서는 BPB 값이 FFh로 설정된 경우에만 그렇게 한다.)
볼륨 부트 레코드 기술적 세부 사항
플러그 앤 플레이 BIOS 또는 BBS 지원이 있는 시스템은 DL 외에 PnP 데이터에 대한 포인터를 제공한다.
이 정보는 부트 로더(MBR 또는 VBR)가 BIOS 또는 메모리에 상주하는 PnP/BBS 오버레이와 적극적으로 상호 작용하여 부팅 순서 등을 구성할 수 있도록 하지만, 대부분의 표준 MBR 및 VBR은 이 정보를 무시한다. 이상적으로는 ES:DI가 전달되지만, PnP 지원 운영 체제는 일반적으로 나중에 PnP BIOS 진입점을 검색하는 대체 방법도 가지고 있으므로 대부분의 운영 체제는 이에 의존하지 않는다. ES:DI의 정보는 힌트로 사용될 수 있다. PnP BIOS 사양에 따르면 "$PnP" 설치 확인 구조는 시스템 메모리 F0000h부터 FFFFFh까지 16바이트 경계마다 ASCII 문자열 $PnP의 서명을 검색하여 찾을 수 있다.
분할된 미디어의 경우, VBR이 BIOS가 아닌 MBR (또는 다른 부트 로더)에 의해 시작될 때, 많은 구현은 DL (그리고 때로는 DH 및 ES:DI도) 외에 추가 정보를 VBR에 전달한다.
볼륨 부트 레코드 기술적 세부 사항
DS:SI = 활성화된 VBR에 해당하는 16바이트 MBR 파티션 테이블 항목 (재배치된 MBR 내)을 가리킨다. PC-MOS 5.1은 파티션 테이블에 부팅 가능 플래그가 설정된 파티션이 없을 때 부팅하기 위해 이에 의존한다. LOADER와 함께, 멀티유저 도스 및 REAL/32 부트 섹터는 부트 파일 (LOADER.SYS)을 찾을 수 없을 때 활성 파티션의 부트 섹터 (또는 디스크의 고정 위치에 있는 IBMBIO.LDR과 같은 다른 부트스트랩 로더)를 찾기 위해 이를 사용한다. PTS-DOS 6.5 및 S/DOS 1.0은 고급 활성 파티션 (AAP) 기능과 함께 이를 사용한다. LOADER 및 AAP 지원 외에도, DR-DOS 7.07은 이 기능을 사용하여 듀얼 CHS/LBA VBR 코드를 사용할 때 필요한 INT 13h 액세스 방법을 결정할 수 있다. OS/2, MS-DOS (7.0 이전), PC DOS (7.10까지), 및 윈도우 NT (대략 2007년까지)에 의해 설치된 MBR 코드는 이러한 시스템이 이를 사용하지 않음에도 불구하고 동일한 인터페이스를 제공한다. Windows NT 6.0 (및 이후 버전)에 의해 설치된 MBR은 다른 레지스터를 사용하므로 더 이상 이러한 확장과 호환되지 않는다. 일부 확장은 16바이트 파티션 테이블 항목 자체에만 의존하지만, 다른 확장은 전체 4개 (또는 5개 항목) 파티션 테이블도 존재해야 할 수 있다.
볼륨 부트 레코드 기술적 세부 사항
DR-DOS 7.07에서는 MBR에서 선택적으로 확장 인터페이스를 사용하고 LOADER와 함께 사용할 수 있다.
GUID 파티션 테이블 (GPT)과 함께, 향상된 디스크 드라이브 사양 (EDD) 4 하이브리드 MBR 제안은 MBR-VBR 인터페이스에 대한 또 다른 확장을 권장한다.
DS:SI = 16바이트 더미 MBR 파티션 테이블 항목 (오프셋 +0h의 부트 플래그와 오프셋 +4h의 파티션 타입을 제외한 모든 비트가 설정됨)과 추가 데이터로 구성된 하이브리드 MBR 핸드오버 구조를 가리킨다. 이는 16바이트 파티션 항목만 필요하고 전체 파티션 테이블이 필요하지 않은 경우 위의 오래된 DS:SI 확장과 부분적으로 호환된다.
저온 다결정 실리콘
저온 다결정 실리콘(low-temperature polycrystalline silicon, LTPS)은 상대적으로 낮은 온도(약 650 °C 이하)에서 합성된 다결정 실리콘이다. LTPS는 변형을 유발하는 고온에 노출되는 것을 방지하기 위해 대형 유리 패널을 사용하기 때문에 디스플레이 산업에 중요하다. 특히, 박막 트랜지스터 (LTPS-TFT)에 다결정 실리콘을 사용하는 것은 평면 액정 디스플레이 또는 이미지 센서와 같은 전자 장치의 대규모 생산에 큰 잠재력을 가지고 있다.
LTPS는 기존 방법(900 °C 이상)에 비해 약 650 °C 이하에서 합성된 다결정 실리콘이다.
저온 다결정 실리콘 다결정 실리콘의 개발
다결정 실리콘(p-Si)은 많은 결정체, 즉 고도로 정돈된 결정 격자의 입자로 구성된 순수하고 전도성 있는 형태의 원소이다. 1984년, 연구에 따르면 비정질 실리콘(a-Si)은 안정적인 구조와 낮은 표면 거칠기를 가진 p-Si 박막을 형성하는 데 탁월한 전구체임을 보여주었다. 실리콘 박막은 표면 거칠기를 최소화하기 위해 저압 화학기상증착(LPCVD)으로 합성된다. 먼저, 비정질 실리콘은 560–640 °C에서 증착된다. 그런 다음 950–1000 °C에서 열처리(재결정화)된다. 결정을 직접 증착하는 대신 비정질 실리콘 박막으로 시작하면 우수한 구조와 원하는 매끄러움을 가진 제품이 생산된다. 1988년, 연구자들은 어닐링 중 온도를 더욱 낮추고 고급 플라즈마 강화 화학 기상 증착(PECVD)을 사용하면 훨씬 더 높은 수준의 전도성을 얻을 수 있음을 발견했다. 이러한 기술은 마이크로일렉트로닉스, 태양광 발전 및 디스플레이 향상 산업에 깊은 영향을 미쳤다.
저온 다결정 실리콘 액정 디스플레이에 사용
비정질 실리콘 TFT는 복잡한 고전류 드라이버 회로로 조립될 수 있기 때문에 액정 디스플레이(LCD) 평면 패널에 널리 사용되어 왔다. 비정질 실리콘-TFT 전극은 LCD에서 결정의 정렬을 구동한다. LTPS-TFT의 발전은 더 높은 장치 해상도, 낮은 합성 온도 및 필수 기판 가격 인하와 같은 많은 이점을 가질 수 있다. 그러나 LTPS-TFT는 몇 가지 단점도 가지고 있다. 예를 들어, 기존 a-Si 장치의 TFT 면적은 커서 조리개 비율(불투명 TFT에 의해 차단되지 않고 빛을 통과시키는 면적의 양)이 작다. 서로 다른 조리개 비율의 비호환성으로 인해 LTPS 기반 복잡한 회로 및 드라이버가 a-Si 재료에 통합되는 것을 방지한다. 또한, LTPS의 품질은 트랜지스터를 켤 때 온도가 증가하여 재료의 Si-H 결합을 파괴함으로써 박막을 열화시키기 때문에 시간이 지남에 따라 감소한다. 이로 인해 장치는 드레인 항복 및 전류 누설로 고통받게 된다. 특히 열을 잘 발산하지 못하는 작고 얇은 트랜지스터에서 두드러진다.