2009-11-02 5 views
2

내 질문에 2 부분이 있습니다. 첫 번째는 "내가 할 수있는 암호화 유형"이고 다른 하나는 "암호화 알고리즘을 발견하자마자"그것을 깨뜨릴 수있는 기회입니다.암호 해독 유형 및 차단 (AES 128?)

그래서 원본 파일과 암호화 된 파일을 얻었고 원본 파일이 변경되면 암호화 된 파일의 동작을 테스트 할 수있었습니다. 내가 찾은 가장 중요한 단서는 다음과 같습니다

  1. 원래의 암호화 된 파일이 동일한 크기가

  2. 암호화 블록 (크기가 0x10으로의 제품 = 128 비트 위치하고 있습니다) 크기가 128 비트 인 것 같습니다. 원본 파일에서 바이트가 변경되면 동일한 128 비트 블록이 암호화 된 파일에서 변경되고 때로는 이전 또는 다음 블록에서 변경됩니다. 그러나 대부분은이 블록에만 시간을 둡니다. 나머지 파일은 전혀 변경되지 않습니다.

  3. 원래 파일 (예 : 16 바이트의 00 값)에 반복되는 섹션이 있지만 암호화 된 파일에서 동일한 128 비트 블록 결과를 가지지는 않습니다. 따라서 두 번째 블록의 00 바이트 중 16 바이트는 다음 블록의 00 바이트보다 암호화 된 결과가 다릅니다.

실마리를 염두에두고 작업하면 어떤 알고리즘 유형이 될 수 있겠습니까? 나는 그것이 AES 128-bit라고 생각하고 있었지만 단서 2 번은 CBC 모드를 제외하고, 단서 3 번은 ECB를 제외했다! 그 사이에 뭔가있는 것처럼 보입니다 ... 다른 모드에서는 AES 128이 될 수 있습니까? 그 밖의 무엇을 생각할 수 있 었는가?

그 행동에 영향을 미칠 수있는 알려진 몇 가지 알고리즘이있는 경우 원본 데이터를 알고 2 파일의 변경 사항에 대한 테스트를 수행 할 수있는 가능성은 무엇입니까? 이 평문 블록이 ECB 모드로 암호화되기 전에 파일의 블록의 위치로부터 파생 된 비표와 약하게 ECB 모드의 변동이 마찬가지로

미리 감사

+2

""원본 파일에서 바이트가 바뀌면 [...} 이전 [...] 블록 [변경]. "두 번 확인 했습니까? 이렇게하면 다른 모드와 다를 수 있습니다. 이제까지 들었습니다. –

+0

다시 확인하려고합니다. 아마도 2 바이트가 2 바이트로 바뀌었기 때문에 가능했기 때문에 다시 시도 할 것입니다. – SVicon

답변

2

에서 들린다.

이 관찰 된 특성을 초래할 것 :

  • 파일 크기의 증가 (그래서 그러므로 어떤의 IV를);
  • 입력의 단일 바이트 변경은 전체 출력 블록에 영향을줍니다.

(넌스는 카운터처럼 간단 할 수 있음).

이 체계는 약합니다. ECB 모드에 대해 작동하는 동일한 종류의 주파수 분석 공격에 취약 할 것입니다. 이것은 더 많은 암호문을 필요로합니다. 또한 수집 한 모든 일반 텍스트/암호문 쌍은 알 수없는 암호문의 동일한 블록 위치에 대해 재사용 할 수 있습니다.

+0

하지만이 방법은 왜 (때로는) 전에 차단되는지 설명하지 못합니다. 또는 수정 된 블록이 변경된 후. 그렇지 않으면 나는 그것 (XEX, LRW, 또는 XTS 모드)과 비슷한 것으로 생각했을 것이다. 그러나이 모드들 중 어느 것도 이웃 수정 속성을 가지고 있지 않다. –

+0

음, OP는 블록 변경에 대해 "어쩌면"말합니다. 그래서 할인되었습니다. 그러나 파일이 블록 크기의 배수가 아닌 세그먼트로 분리 된 경우 실제로는 XTS와 같은 모드에서 암호 텍스트 도용의 영향을받을 수 있습니다. – caf

+0

도움에 감사드립니다. 어쩌면 이것은 CTR보다 의미가 있습니다. 나는 원래, 00 일 것임에 틀림없는 부분을 알고있다. 그래서 나는 이것으로 뭔가를 할 수 있다고 생각한다. (공격은 00 ​​블록이다.) 특정 사항에 대한 제안 사항이 있습니까? – SVicon

관련 문제