luksDump를 실행할 때 표시되는 LUKS의 에포크는 무엇입니까?

luksDump를 실행할 때 표시되는 LUKS의 에포크는 무엇입니까?

luksDumpLUKS 장치에서 실행 하면 다음과 같은 결과가 나타납니다.

$ sudo cryptsetup luksDump /dev/sda1 
LUKS header information
Version:        2
Epoch:          3
Metadata area:  16384 [bytes]
Keyslots area:  16744448 [bytes]
UUID:           4640c6e4-[…]
Label:          (no label)
Subsystem:      (no subsystem)
Flags:          (no flags)
[…]

Epoch나는 "버전"이 무엇을 의미하는지 정확히 알고 있으며(현재 가장 좋은 것은 v2이므로 이를 목표로 삼아야 함) 3에서 5까지의 값을 보았습니다 .

그러나 Epoch실제로는 무엇을 가리키는가? 나는 어떤 가치를 지향해야 하는가? 거기에 적힌 숫자(보안 측면에서)가 중요합니까? 예를 들어, 아직 Epoch 3이었다면 나쁠까요? 그 시대는 업그레이드될 수 있을까?

온라인으로 검색했어요자주 묻는 질문참고로 epoch거기에는 그 단어가 언급되지 않았습니다.

답변1

LUKS 헤더에서 내용을 변경할 때마다(예: 키 추가 또는 제거 등) 에포크가 증가합니다.

이것LUKS2 커넥터 사양상태:

uint64_t seqid; // sequence ID, increased on update

seqid새 헤더 업데이트가 기록될 때 항상 증가되는 카운터(시퀀스 번호)입니다. 헤더가 더 높음사제드 최신, 복구에 사용됩니다(다른 서열 ID를 가진 기본 헤더와 보조 헤더가 있는 경우 최신 헤더가 자동으로 사용됩니다).

코드 및 기술 문서에서는 이를 "시퀀스 ID"라고 부르지만 최종 사용자에게 표시될 때 "에포크"라는 용어를 사용하는 이유는 여전히 미스터리입니다.

실제로도 마찬가지입니다.아름다운 소스 읽기, seqid를 Epoch로 인쇄합니다.

log_std(cd, "Epoch:         \t%" PRIu64 "\n", hdr->seqid);

너무 길어요.Epoch는 무시해도 됩니다. 특별한 의미가 없는 무해한 카운터입니다.

답변2

동의하지 않습니다. - 답변:너무 길어요.Epoch는 무시해도 됩니다. 특별한 의미가 없는 무해한 카운터입니다.

여기에는 특별한 의미가 있습니다.

컴퓨팅에서 에포크는 컴퓨터가 시스템 시간을 측정하는 날짜와 시간입니다. 대부분의 컴퓨터 시스템은 특정 임의 날짜 및 시간에서 제거된 초 수를 나타내는 숫자로 시간을 결정합니다. 예를 들어 Unix와 POSIX는 1970년 1월 1일 00:00:00 UT(Unix epoch라고 함) 이후 경과된 시간(초)으로 시간을 측정합니다. Windows NT 이상의 NT 시간 에포크는 1601년 1월 1일 0h부터 시작하는 (10^-7)초 간격의 Windows NT 시스템 시간을 나타냅니다.

LUKS의 소스 코드(lib/bitlk/bitlk.c)에 따르면 다음과 같은 상수가 포함되어 있습니다.

#define EPOCH_AS_FILETIME 116444736000000000

날짜 변환기를 사용하세요. 예를 들면 다음과 같습니다.Epoch 및 Unix 타임스탬프 변환 도구, 다음 날짜 및 시간에 대해 이 상수를 생성합니다.

변환기 출력

타임스탬프가 나노초(10억분의 1초) 단위라고 가정합니다. 그리니치 표준시: 1973년 9월 9일 일요일 오후 5:45:36 당신의 시간대: 1973년 9월 9일 일요일 12:45:36 GMT-05:00 DST 비교적: 48년 전


이 상수는 위 날짜를 나노초 단위로 숫자로 표현한 것입니다. Epoch는 거의 항상 비교 테스트, 날짜가 표시된 데이터 세트, 파일, 열 및 기타 다양한 항목을 Epoch와 비교하는 데 사용됩니다. 예:

// Pseudo-code
long (DataSet 1.Date - Epoch) = X, 
long (DataSet 2.Date - Epoch) = Y
// Comparison
If X = Y then
   // Perform items for valid data sets
Else If X != Y then
   // Attempt to repair data sets
Else
  // Perform Error Trapping
End

LUKS의 경우 변경 또는 업데이트 후 암호화 세트의 비트 단위 사본 2개가 일치할 때마다 Epoch 카운터가 1씩 증가합니다. 바라보다LUKS 헤더 정보에 대한 질문. 제가 왜 이 특정 시대를 선택했는지는 말씀드릴 수 없습니다. 단지 재미를 위해서입니다.1973년 9월 9일에 무슨 일이 일어났는가?

관련 정보