전체 공개 : 저는 eCryptfs 사용자 공간 유틸리티의 저자이자 현재 관리자입니다.
좋은 질문입니다!
Linux는 대부분의 파일 시스템 (EXT4 포함)의 최대 파일 이름 길이가 255 자이며 최대 경로는 4096 자입니다.
eCryptfs 는 계층 파일 시스템입니다. EXT4와 같은 다른 파일 시스템 위에 쌓이며 실제로 디스크에 데이터를 쓰는 데 사용됩니다. eCryptfs는 항상 파일 내용을 암호화하지만 선택적으로 파일 이름을 암호화하거나 숨길 수 있습니다.
파일 이름이 암호화되지 않은 경우 하위 파일 시스템에 기록 된 파일 이름이 단순히 일치하므로 최대 255 자의 파일 이름을 안전하게 작성하고 내용을 암호화 할 수 있습니다. 공격자는 index.html
또는 의 내용을 읽을 수 없지만 budget.xls
어떤 파일 이름이 있는지 알 수 있습니다. 사용 사례에 따라 민감한 정보가 유출되거나 유출되지 않을 수 있습니다.
파일 이름이 암호화되면 상황이 조금 더 복잡해집니다. eCryptfs는 암호화 된 파일 이름 앞에 암호화 된 파일 이름을 명확하게 식별 할 수 있도록 약간의 데이터를 추가합니다. 또한 암호화 자체는 파일 이름을 "패딩"합니다.
예를 들어 암호화 된 파일이 ~/.bashrc
있습니다. 이 파일 이름은 내 키를 사용하여 다음과 같이 암호화됩니다.
/home/kirkland/.Private/ECRYPTFS_FNEK_ENCRYPTED.dWek2i3.WxXtwxzQdkM23hiYK757lNI7Ydf0xqZ1LpDovrdnruDb1-5l67.EU--
분명히, 7 자 파일 이름은 이제 7 자 이상을 암호화해야합니다. 경험적으로, 143 자보다 긴 문자 파일 이름은 암호화하기 위해> 255자를 요구하기 시작합니다. 따라서 eCryptfs 업스트림 개발자는 일반적으로 파일 이름을 ~ 140 자로 제한하는 것이 좋습니다.
이제 Synology NAS는 eCryptfs와 Linux를 내장하고 사용하여 장치의 데이터를 암호화하고 보호하는 상용 제품입니다. 우리 (eCryptfs의 업스트림 개발자)는 Synology 또는 해당 제품과 아무 관련이 없지만 일반적으로 eCryptfs 가 야생에서 사용되는 것을 기쁘게 생각합니다 . 45 자 추천은 인쇄상의 오류 (140 자 추천) 또는 훨씬 더 보수적 인 추정 인 것 같습니다.