2012-01-27 4 views
3

this Wikipedia article on cipher modes과 내가 ECB에 대해 들었던 다른 사항들에 따르면, 암호화 된 데이터에 대한 정보가 누출 될 수 있습니다. 이 ECB를 사용하는 지금까지 허용 또는 유리ECB 암호 모드를 사용하는 것이 좋습니다.

이다 : 그러나 ECB 활용 '그물에 거기 밖으로 많은 예 아직 없습니다?

데이터가 매우 작고 (한 블록) 의 소금 과 IV 을 사용하고 있다면 괜찮습니까? 그렇다면 사용을 중지 할 때 임계 값은 어디에 있습니까?

+1

내 질문 : 왜 더 많은 노력을 필요로하지 않는 우수한 암호 모드가있을 때 사용합니까? –

+0

좋은 지적. 내가 가진 한 가지 생각은 ECB가 단순함으로 인해 다른 암호 모드보다 훨씬 빠를 수도 있다는 것입니다. 그러나 이러한 유형의 속도가 필요하고 한 블록 크기보다 작거나 같은 데이터를 사용하는 경우는 거의 없습니다. –

+1

실적은 유효한 질문입니다. 내 답변은 보안이 여분의 CPU 사이클을 소비하는 데 가치가 있으며 최신 CPU는 일반적으로 환경에서 가장 강력한 구성 요소 중 하나이며 이와 같은 값 비싼 계산을 처리 할 수 ​​있다는 것입니다. 당신의 질문에 +1, 거기에 ECB를 사용하여 여전히 코드 샘플이 있기 때문에. –

답변

7

데이터가 매우 작고 (한 블록) 염분과 IV를 모두 사용한다면 괜찮습니까? 그렇다면

는 어디에 사용을 중단 임계 값인가?

두 블록. ECB를 사용하는 실질적인 이유는 없지만 블록 암호를 사용하는 간단한 예제이기 때문에 존재하는 유일한 이유입니다.

+4

데이터가 어떤 방식으로도 관련이없는 한 여러 개의 블록이 유효합니다 (예 : 비밀 키와 같은 랜덤 화 된 데이터. ECB는 문자열에 절대로 사용해서는 안됩니다. –

+0

@owlstead 좋은 지적입니다. – Jarred

+0

이 답변은 잘못되었습니다.ECB는 동일한 키를 사용하여 둘 이상의 메시지를 암호화하는 경우 단일 블록 메시지에서도 사용하기에 안전하지 않습니다. 암호 텍스트는 어떤 메시지 쌍이 동일한 지 보여줍니다. 이는 다른 스키마에 의해 피할 수있는 바람직하지 않은 누출입니다. ECB는 소금이나 IV를 허용하지 않으므로 여기서 "예"라는 대답이 무엇을 말하는지 전혀 알지 못합니다. 불가능하다고 대답하고 있습니다. 간단한 답은 ECB를 사용하지 않는 것입니다. 적절한 인증 된 암호화 모드 사용 –

8

crypto에 문의하는 것이 좋지만 어쨌든 대답하겠습니다. ECB blockcipher는 임의의 일반 텍스트 블록 사이에 링크가없는 무작위 데이터에 사용하는 것이 가장 좋습니다. 실제로는 추가적인 데이터 및 문제없이 무작위로 설정된 비밀 키만이이 법안에 부합합니다. 단일 블록 ECB는 단일 블록 CBC와 동일하며 IV가 고정되어 있습니다. 다른 데이터를 위해 키를 재사용하지 않는 한 괜찮습니다. 대부분의 경우 CBC 또는 GCM에 대한 비용 만 지불하면됩니다.

관련 문제