암호 시스템에 대한 공격

광고

현재 시대에는 사업뿐만 아니라 인간 생활의 거의 모든 측면이 정보에 의해 주도됩니다. 따라서,그것은 공격과 같은 악의적인 활동에서 유용한 정보를 보호 하기 위해 필수적 되고있다. 정보가 일반적으로 받는 공격 유형을 고려해 보겠습니다.

공격은 일반적으로 공격자가 수행하는 작업에 따라 분류됩니다. 따라서 공격은 수동 또는 능동 일 수 있습니다.

수동 공격

수동 공격의 주요 목표는 정보에 대한 무단 액세스를 얻는 것입니다. 예를 들어,통신 채널의 가로 채기 및 도청과 같은 작업은 수동적 공격으로 간주 될 수 있습니다.

이러한 행동은 정보에 영향을 미치지 않으며 통신 채널을 방해하지 않기 때문에 본질적으로 수동적입니다. 수동적 공격은 종종 정보를 훔치는 것으로 간주됩니다. 물리적 상품을 훔치고 정보를 훔치는 유일한 차이점은 데이터 도용은 여전히 소유자가 해당 데이터를 소유하게한다는 것입니다. 정보 도용이 소유자에 의해 들키지 수 있으므로 수동 정보 공격은 따라서,상품을 훔치는 것보다 더 위험하다.

수동 공격

능동 공격

능동 공격은 정보에 대한 몇 가지 프로세스를 수행하여 어떤 방식으로 정보를 변경하는 것을 포함한다. 예를 들어,

  • 무단 방식으로 정보를 수정합니다.

  • 의도하지 않거나 무단 정보 전송을 시작합니다.

  • 정보와 연관된 발신자 이름 또는 타임스탬프와 같은 인증 데이터의 변경

  • 데이터의 무단 삭제.

  • 합법적 인 사용자를위한 정보에 대한 액세스 거부(서비스 거부).

활성 공격

암호화는 위에서 설명한 대부분의 공격을 방지 할 수있는 암호 시스템을 구현하기위한 많은 도구와 기술을 제공합니다.

공격자의 가정

이러한 시스템을 파괴하기 위해 사용되는 공격의 유형에 따라 암호 시스템 주변의 일반적인 환경을 보자−

암호 시스템 주변 환경

암호 시스템에 대한 가능한 공격을 고려하면서 암호 시스템 환경을 알아야합니다. 환경에 대한 공격자의 가정과 지식은 그의 능력을 결정합니다.

암호화에서 보안 환경 및 공격자의 기능에 대해 다음 세 가지 가정이 이루어집니다.

암호화 체계의 세부 사항

암호화 시스템의 설계는 다음 두 가지 암호화 알고리즘을 기반으로합니다−

  • 공개 알고리즘-이 옵션을 사용하면 알고리즘의 모든 세부 사항이 공개 도메인에 있으며 모든 사람에게 알려져 있습니다.

  • 독점 알고리즘-알고리즘의 세부 사항은 시스템 설계자와 사용자 만 알 수 있습니다.

독점 알고리즘의 경우 보안은 모호함을 통해 보장됩니다. 개인 알고리즘은 사내에서 개발되기 때문에 가장 강력한 알고리즘이 아닐 수 있으며 약점에 대해 광범위하게 조사되지 않을 수 있습니다.

둘째,폐쇄 된 그룹 간의 통신 만 허용합니다. 따라서 그들은 사람들이 알려진 또는 알 수없는 엔티티의 큰 숫자와 통신 현대 통신에 적합하지 않습니다. 또한,케르크호프의 원칙에 따라,알고리즘은 암호화의 강도가 키에 누워 공개하는 것이 바람직하다.

따라서 보안 환경에 대한 첫 번째 가정은 암호화 알고리즘이 공격자에게 알려져 있다는 것입니다.

암호문의 가용성

우리는 일반 텍스트가 암호문으로 암호화되면,이 전송을 위해 안전하지 않은 공개 채널(예:이메일)에 넣어 것을 알고있다. 따라서 공격자는 분명히 암호 시스템에 의해 생성 된 암호문에 액세스 할 수 있다고 가정 할 수 있습니다.

일반 텍스트와 암호문의 가용성

이 가정은 다른 가정만큼 명확하지 않습니다. 그러나 공격자가 일반 텍스트 및 해당 암호문에 액세스 할 수있는 상황이있을 수 있습니다. 이러한 가능한 상황은 다음과 같습니다−

  • 공격자는 보낸 사람이 자신이 선택한 일반 텍스트를 변환하도록 영향을 미치고 암호문을 얻습니다.

  • 수신자는 실수로 공격자에게 일반 텍스트를 누설 할 수 있습니다. 공격자는 열린 채널에서 수집 한 해당 암호문에 액세스 할 수 있습니다.

  • 공개 키 암호 시스템에서 암호화 키는 공개 도메인에 있으며 잠재적인 공격자에게 알려져 있습니다. 이 키를 사용하여 해당 일반 텍스트 및 암호문 쌍을 생성 할 수 있습니다.

암호화 공격

공격자의 기본 의도는 암호 시스템을 깨고 암호문에서 일반 텍스트를 찾는 것입니다. 일반 텍스트를 얻으려면 공격자는 알고리즘이 이미 공개 도메인에 있기 때문에 비밀 암호 해독 키만 찾아야합니다.

따라서 그는 암호 시스템에 사용되는 비밀 키를 찾는 데 최대한의 노력을 기울입니다. 공격자가 키를 확인할 수 있게 되면 공격된 시스템은 손상되거나 손상된 것으로 간주됩니다.

사용된 방법론에 따라 암호 시스템에 대한 공격은 다음과 같이 분류됩니다−

  • 암호문 전용 공격(코아)-이 방법에서,공격자는 암호문(들)의 집합에 액세스 할 수 있습니다. 그는 해당 일반 텍스트에 액세스 할 수 없습니다. 코아는 해당 일반 텍스트가 주어진 암호문 집합으로부터 결정될 수 있을 때 성공적이라고 말한다. 경우에 따라 이 공격에서 암호화 키를 확인할 수 있습니다. 현대 암호 시스템은 암호문 전용 공격으로부터 보호됩니다.

  • 알려진 일반 텍스트 공격-이 방법에서 공격자는 암호문의 일부 부분에 대한 일반 텍스트를 알고 있습니다. 작업은 이 정보를 사용하여 나머지 암호문을 해독하는 것입니다. 이것은 키를 결정하거나 다른 방법을 통해 수행 할 수 있습니다. 이 공격의 가장 좋은 예는 블록 암호에 대한 선형 암호 해독입니다.

  • 선택한 일반 텍스트 공격(공인 회계사)-이 방법에서 공격자는 자신이 선택한 텍스트가 암호화되어 있습니다. 그래서 그는 자신이 선택한 암호문-일반 텍스트 쌍을 가지고 있습니다. 이것은 암호화 키를 결정하는 그의 작업을 단순화합니다. 이 공격의 예는 해시 함수뿐만 아니라 블록 암호에 적용되는 차등 암호 해독입니다. 인기 있는 공개 키 암호 시스템,또한 선택-일반 텍스트 공격에 취약 합니다.

  • 사전 공격-이 공격은’사전’을 컴파일 포함 모두 많은 변종을 가지고 있습니다. 이 공격의 가장 간단한 방법으로 공격자는 일정 기간 동안 배운 암호문 및 해당 평문 사전을 작성합니다. 공격자가 암호문을 얻을 때 미래에,그는 해당 일반 텍스트를 찾기 위해 사전을 참조합니다.

  • 무차별 대입 공격-이 방법에서 공격자는 가능한 모든 키를 시도하여 키를 결정하려고합니다. 키가 8 비트 길이 인 경우 가능한 키 수는 28=256 입니다. 공격자는 암호문과 알고리즘을 알고 있으며 이제 암호 해독을 위해 256 개의 모든 키를 하나씩 시도합니다. 키가 긴 경우 공격을 완료하는 데 시간이 매우 높은 것입니다.

  • 생일 공격-이 공격은 무차별 대입 기술의 변형입니다. 그것은 암호화 해시 함수에 대해 사용됩니다. 수업 시간에 학생들이 자신의 생일에 대해 질문 할 때,대답은 가능한 365 날짜 중 하나입니다. 첫 번째 학생의 생년월일이 8 월 3 일이라고 가정 해 봅시다. 다음을 찾기 위해 다음 학생의 생년월일은 3 월,우리가 필요한 문의 1.25*√365≈25 학생입니다.

    마찬가지로 해시 함수가 64 비트 해시 값을 생성하면 가능한 해시 값은 1 입니다. 서로 다른 입력에 대한 함수를 반복적으로 평가함으로써 약 5 개의 임의 입력 후에 동일한 출력을 얻을 것으로 예상됩니다.

    공격자가 동일한 해시 값을 제공하는 두 개의 서로 다른 입력을 찾을 수 있다면 충돌이며 해시 함수가 깨진다고합니다.

  • 중간 공격의 남자(밈)−이 공격의 대상은 주로 통신이 발생하기 전에 키 교환이 관여하는 공개 키 암호 시스템입니다.

    • 호스트는 호스트와 통신하기를 원하므로 공개 키를 요청합니다.

    • 공격자는이 요청을 가로 채고 대신 공개 키를 보냅니다.

    • 따라서 어떤 호스트가 호스트에 전송 되든 공격자는 읽을 수 있습니다.

    • 통신을 유지하기 위해 공격자는 자신의 공개 키로 읽은 후 데이터를 다시 암호화하고 비에 보냅니다.

    • 공격자는 자신의 공개 키를 공개 키로 보냅니다.

  • 사이드 채널 공격−이 유형의 공격은 특정 유형의 암호 시스템 또는 알고리즘에 대한 것이 아닙니다. 대신,암호 시스템의 물리적 구현의 약점을 악용하기 위해 시작됩니다.

  • 타이밍 공격-서로 다른 계산이 프로세서에서 계산하는 데 다른 시간이 걸린다는 사실을 이용합니다. 이러한 타이밍을 측정함으로써 프로세서가 수행하는 특정 계산에 대해 알 수 있습니다. 예를 들어 암호화에 시간이 오래 걸리는 경우 비밀 키가 길다는 것을 나타냅니다.

  • 전력 분석 공격-이러한 공격은 전력 소비량이 기본 계산의 특성에 대한 정보를 얻는 데 사용된다는 점을 제외하고는 타이밍 공격과 유사합니다.

  • 오류 분석 공격-이러한 공격에서는 암호 시스템에서 오류가 유발되고 공격자는 유용한 정보를 얻기 위해 결과 출력을 연구합니다.

공격의 실용성

여기에 설명 된 암호 시스템에 대한 공격은 대부분이 학계에서 온 것처럼 매우 학문적입니다. 사실,많은 학문적 공격은 공격자의 능력뿐만 아니라 환경에 대한 매우 비현실적인 가정을 포함한다. 예를 들어,선택-암호문 공격에서 공격자는 의도적으로 선택된 일반 텍스트-암호문 쌍의 비실용적 인 수를 필요로합니다. 그것은 모두 실용적이지 않을 수 있습니다.

그럼에도 불구하고 공격이 존재한다는 사실은 특히 공격 기술이 개선 될 가능성이있는 경우 우려의 원인이되어야합니다.

광고

답글 남기기

이메일 주소는 공개되지 않습니다.