암호화 알고리즘 매개변수. 암호화

다양한 암호화 방법 중에서 다음과 같은 주요 방법을 구별할 수 있습니다.

대체 또는 대체 알고리즘 - 소스 텍스트의 문자는 이 암호의 키가 될 사전 결정된 체계에 따라 다른(또는 동일한) 알파벳의 문자로 대체됩니다. 이와 별도로 이 방법은 암호화 강도가 매우 낮기 때문에 현대 암호화 시스템에서는 실제로 사용되지 않습니다.

재배열 알고리즘 - 원본 텍스트의 문자가 비밀 키인 특정 원칙에 따라 교체됩니다. 순열 알고리즘 자체는 암호화 강도가 낮지만 많은 현대 암호화 시스템의 요소로 포함됩니다.

감마 알고리즘 - 소스 텍스트의 문자가 특정 무작위 시퀀스의 문자에 추가됩니다. 가장 일반적인 예는 "username.pwl" 파일의 암호화입니다. 여기서 Microsoft Windows 95 운영 체제는 특정 사용자의 네트워크 리소스에 대한 비밀번호(NT 서버에 로그인하기 위한 비밀번호, DialUp 인터넷 액세스를 위한 비밀번호 등)를 저장합니다. . 사용자가 Windows 95에 로그인할 때 암호를 입력하면 네트워크 암호를 암호화하는 데 사용되는 RC4 암호화 알고리즘을 사용하여 감마(항상 동일함)가 생성됩니다. 이 경우 암호 선택이 간단한 이유는 Windows가 항상 동일한 색 구성표를 선호하기 때문입니다.

특정 공식에 따른 원본 텍스트의 복잡한 수학적 변환을 기반으로 하는 알고리즘입니다. 그들 중 다수는 미해결 수학 문제를 사용합니다. 예를 들어, 인터넷에서 널리 사용되는 RSA 암호화 알고리즘은 소수의 속성을 기반으로 합니다.

결합된 방법. 두 가지 이상의 방법을 사용하여 원본 텍스트를 순차적으로 암호화합니다.

암호화 알고리즘

암호화 데이터 보호 방법을 자세히 살펴보겠습니다.

1. 대체(대체) 알고리즘

2. 순열 알고리즘

3. 감마 알고리즘

4. 복잡한 수학적 변환을 기반으로 한 알고리즘

5. 결합된 암호화 방법

이전에는 "순수한 형태"의 알고리즘 1-4가 사용되었으며 오늘날에는 거의 모든, 심지어 가장 복잡한 암호화 프로그램에도 내장되어 있습니다. 고려된 각 방법은 고유한 암호화 정보 보호 방법을 구현하며 고유한 장점과 단점이 있지만 공통적입니다. 가장 중요한특징은 내구성이다. 이는 암호화된 텍스트의 최소량을 의미하며, 이에 대한 통계 분석을 통해 원본 텍스트를 공개할 수 있습니다. 따라서 암호의 강도에 따라 하나의 키를 사용하여 암호화되는 최대 허용 정보량을 결정할 수 있습니다. 특정 개발에 사용할 암호화 알고리즘을 선택할 때 그 강점은 결정 요인 중 하나입니다.

모든 최신 암호 시스템은 전체 키 공간에 대한 철저한 검색보다 더 효율적인 방법으로 암호를 해독할 수 있는 방법이 없도록 설계되었습니다. 가능한 모든 키 값에 대해 이러한 암호의 강도는 사용된 키의 크기에 따라 결정됩니다.

위에서 논의한 암호화 방법의 강도를 추정해 보겠습니다. 단일 알파벳 대체는 사용 시 소스 텍스트의 모든 통계 패턴이 보존되기 때문에 가장 강력한 암호입니다. 이미 20-30자 길이의 이러한 패턴은 일반적으로 소스 텍스트를 열 수 있을 정도로 나타납니다. 따라서 이러한 암호화는 비밀번호, 짧은 신호 메시지 및 개별 문자를 암호화하는 데에만 적합한 것으로 간주됩니다.

간단한 다중 알파벳 대체(유사한 시스템에서 Viginère 테이블을 사용한 대체가 고려됨)의 안정성은 20n으로 추정됩니다. 여기서 n은 대체에 사용되는 서로 다른 알파벳의 수입니다. Viginère 표를 사용할 때 다양한 알파벳 수는 키워드의 문자 수에 따라 결정됩니다. 다중 알파벳 대체의 복잡성이 증가하면 안정성이 크게 향상됩니다.

색역의 내구성은 긴 색역 기간에 의해 고유하게 결정됩니다. 현재 무한 감마의 사용이 현실화되고 있으며 이를 사용하면 이론적으로 암호문의 강도도 무한해질 것입니다.

많은 양의 정보를 안정적으로 닫으려면 감마와 복잡한 순열 및 대체가 가장 적합하다는 점을 알 수 있습니다.

결합된 암호화 방법을 사용하는 경우 암호화 강도는 개별 방법의 강도를 곱한 것과 같습니다. 따라서 조합암호는 가장 안전한 암호폐쇄 방법이다. 현재 알려진 모든 암호화 장치의 작동 기반으로 사용된 것은 바로 이 방법이었습니다.

DES 알고리즘은 20여년 전에 승인되었지만 이 기간 동안 컴퓨터는 컴퓨팅 속도에서 놀라운 도약을 이루었고 이제는 가능한 모든 키 옵션을 완전히 검색하여 이 알고리즘을 깨는 것이 그리 어렵지 않습니다(그리고 DES는 8개만 사용). bytes), 최근에는 완전히 불가능해 보였습니다.

GOST 28147-89는 소련 정보국에 의해 개발되었으며 DES보다 10년 더 젊습니다. 개발 과정에서 이 GOST가 오늘날에도 여전히 관련이 있을 정도로 안전 여유가 구축되었습니다.

고려되는 암호화 강도 값은 잠재적인 값입니다. 암호화 보안 조치 사용에 대한 규칙을 엄격하게 준수하여 구현될 수 있습니다. 이러한 규칙의 주요 내용은 키를 비밀로 유지하고, 중복을 제거하고(즉, 동일한 키를 사용하여 동일한 텍스트를 다시 암호화하고) 키를 자주 변경하는 것입니다.

결론

따라서 본 연구에서는 현재 가장 널리 사용되는 암호화 정보 보호 방법과 그 구현 방법에 대한 검토가 이루어졌습니다. 특정 시스템에 대한 선택은 특정 보호 방법의 강점과 약점에 대한 심층 분석을 기반으로 해야 합니다. 일반적으로 특정 보호 시스템의 정당한 선택은 일부 효율성 기준을 기반으로 해야 합니다. 불행하게도 암호화 시스템의 효율성을 평가하는 데 적합한 방법은 아직 개발되지 않았습니다.

이러한 효율성에 대한 가장 간단한 기준은 키를 공개할 확률 또는 키 집합(M)의 위력입니다. 본질적으로 이는 암호화 강도와 동일합니다. 수치적으로 추정하려면 모든 키를 시도하여 암호를 푸는 복잡성을 사용할 수도 있습니다. 그러나 이 기준은 암호 시스템에 대한 다른 중요한 요구 사항을 고려하지 않습니다.

· 정보의 구조 분석에 따른 정보 공개 또는 의미 있는 수정이 불가능하며,

· 사용되는 보안 프로토콜의 완벽성,

· 사용되는 핵심 정보의 최소량,

· 구현의 복잡성(기계 작동 수) 최소화, 비용

· 고효율.

따라서 이러한 요소를 고려한 일부 통합 지표를 사용하는 것이 바람직합니다. 그러나 어떤 경우에도 선택된 암호화 방법 세트는 편의성, 유연성 및 사용 효율성을 모두 결합해야 할 뿐만 아니라 시스템에서 순환하는 정보를 공격자로부터 안전하게 보호해야 합니다.


실용적인 부분:

연습 1.

1) X 필드를 완료하여 입력합니다.

1.1 첫 번째 값을 수동으로 설정

1.2 편집->채우기-> 수행

2) g = 함수의 값 필드를 채웁니다.

그림 1.1 – 함수 g(x)의 공식

2.1) 함수의 값을 계산합니다

3) 그래프 작성

3.1) 함수 g의 값을 가진 셀 선택

3.2) 차트 마법사 선택

그림 1.2 – 차트 마법사 - 그래프

다음 -> 행

그림 1.3 – 차트 마법사 – 축 레이블

X축 값 선택

엔터 키를 치시오

3.3) 그래프에 이름을 붙이세요

3.4) 그래프 수식이 있는 셀을 선택합니다.

3.6) 탭 -> 그리드 선을 선택하고 설정합니다.

X 중간 라인, Y 메인 라인 ->다음

3.7) 기존 시트에 함수 그래프 배치 -> (완료)

4) 결과적으로 우리는 (그림 1.4)

그림 1.4 – 함수 g(x)의 그래프

1.2.

1) 테이블 필드에서 미래 그래프의 기능을 정의합니다.

그림 1.5 - 미래 그래프의 기능 서명

2) 다음을 수행하여 X 필드를 채웁니다.

2.1 첫 번째 값을 수동으로 설정

2.2 x [-2;2]에서 편집->채우기->진행(열, 산술, 단계, 한계 값 기준)을 수행합니다.

3) y=2sin( x) – 3cos( x), z = cos²(2 x) – 2sin( x) 함수의 값을 계산합니다.


그림 1.6 – 함수 y(x) 및 z(x)에 대한 공식

4) 그래프 작성

4.1 함수 y 및 z 값이 있는 셀 선택

차트 마법사 선택

그림 1.7 - 차트 마법사 - 그래프

X축 값 선택

엔터 키를 치시오

4.2) 그래프에 이름을 붙이세요

4.3) 그래프 수식이 있는 셀 선택

Enter 키를 누른 다음 두 번째 행에서도 동일한 작업을 수행합니다.

4.5) 탭 -> 그리드 선을 선택하고 설정합니다.

X 중간 라인, Y 메인 라인 ->다음

4.6) 기존 시트에 함수 그래프 배치 -> (완료)

5) 결과적으로 우리는 (그림 1.8)

그림 1.8 – 함수 y(x)와 z(x)의 그래프

작업 2.

· '인사부' 목록 작성

그림 2.1 “인사부” 목록

· 정렬

그림 2.2 – 이름 필드별 정렬

결과적으로 우리는 (그림 2.3)

그림 2.3 – 정렬된 테이블 "인사부"

·
자동 필터를 사용하여 정보 검색(이름이 문자로 시작하는 남성에 대한 정보 얻기) 편지,후원 – "Ivanovich", 급여 포함 샐러리);

그림 2.4 - 자동 필터

· 고급필터를 이용한 정보검색(부서에서 정보찾기) 부서 1늙은 나이1그리고 나이2, 그리고 부서의 여성들에 대해 부서 2늙은 나이3);

1) 고급 필터 1의 기준을 입력합니다.

결과적으로 우리는 (그림 2.5)

그림 2.5 - 고급 필터 1

2) 고급 필터 2의 기준을 입력합니다.

결과적으로 우리는 (그림 2.6)

그림 2.6 - 고급 필터 2

· 요약(각 부서의 직원 수와 평균 연령 결정)

그림 2.7 - 결과

DMIN 함수 - 지정된 조건을 만족하는 목록이나 데이터베이스의 레코드 필드(열)에서 가장 작은 숫자를 반환합니다.

그림 2.8 - DMIN 함수를 사용한 목록 분석

작업 3.

두 개의 관련 테이블 만들기 세션(그림 3.2) 및 재학생(그림 3.4)

그림 3.1 - 테이블 생성자 세션

그림 3.2- 표 세션

그림 3.3 - 테이블 생성자 재학생


그림 3.4 – 표 재학생

1) 테이블 사용 재학생, 1-E-1, 1-E-2, 1-E-3 그룹에 속한 학생의 이름과 성을 데이터베이스에서 하나씩 선택하는 세 가지 쿼리를 만듭니다.

그림 3.5 - 쿼리 생성자 1.1


그림 3.7 - 요청 1.2 생성자

그림 3.9 – 요청 생성자 1.3

2) 테이블 사용 재학생,데이터베이스에서 여자의 성과 이름, 남자의 성과 이름을 번갈아 선택하는 두 개의 쿼리를 만듭니다.

그림 3.11 - 쿼리 생성자 2.1

그림 3.13 - 요청 빌더 2.2

3) 나는 테이블을 사용한다 재학생,그룹 1-E-2의 여성과 그룹 1-E-1의 남성의 성과 이름이 데이터베이스에서 교대로 선택되는 두 개의 쿼리를 만듭니다.

그림 3.15 - 쿼리 생성자 3.1

그림 3.17 - 생성자 - 3.2

4) 연결 테이블 사용 재학생그리고 세션,그룹 1-E-2에 속한 학생들의 성, 이름, 기록 번호 및 수학 성적을 데이터베이스에서 선택하는 쿼리를 만듭니다.

그림 3.19 - 쿼리 5 생성자

5) 연결 테이블 사용 재학생그리고 세션,데이터베이스에서 그룹 1-E-2 학생(남자)의 성, 이름, 기록 번호 및 철학 등급을 선택하는 쿼리를 만듭니다.

그림 3.21 - 쿼리 생성자 8

6) 연결 테이블 사용 재학생그리고 세션,철학에서 "만족"(3) 성적을 받은 학생의 성, 이름, 성적표 번호를 데이터베이스에서 선택하는 쿼리를 만듭니다.

그림 3.23 - 쿼리 생성자 10

7) 연결 테이블 사용 재학생그리고 세션,철학과 수학이라는 두 과목에서 동시에 "우수"(4) 등급을 받은 학생의 성, 이름, 성적표 번호를 데이터베이스에서 선택하는 쿼리를 만듭니다.

그림 3.25 - 쿼리 생성자 14

8) 연결 테이블 사용 재학생그리고 세션,두 과목(수학 또는 컴퓨터 과학) 중 하나에서 "불만족"(2) 성적을 받은 학생의 성, 이름 및 성적표 번호를 데이터베이스에서 선택하는 쿼리를 만듭니다.

그림 3.27 - 쿼리 생성자 18

9) 연결 테이블 사용 재학생그리고 세션,모든 과목에서 "우수" 성적(4)을 받은 학생의 성, 이름, 성적표 번호를 데이터베이스에서 선택하는 쿼리를 만듭니다.

그림 3.29 - 요청 생성자 22

10) 테이블 사용하기 세션,이름으로 쿼리 만들기 평균 점수네 가지 시험에 합격한 결과를 바탕으로 각 학생의 평균 점수를 계산합니다. 요청에는 다음 필드가 포함되어야 합니다. 기록부, 나중에 여러 테이블을 연결하는 데 사용됩니다.

그림 3.31 - 세션 테이블 생성자

11) 연결 테이블 사용 재학생, 세션그리고 요청 평균 점수, 데이터베이스에서 평균 점수가 3.25인 학생의 성, 이름, 기록 번호, 그룹 번호를 선택하는 쿼리를 만듭니다.

그림 3.33 - 요청 25 생성자

12) 연결 테이블 사용 재학생, 세션그리고 요청 평균 점수, 데이터베이스에서 학생 Ivanov의 수학 성적, 평균 점수 및 그룹 번호를 선택하는 쿼리를 만듭니다.

그림 3.35 - 요청 빌더 29

13) 연결 테이블 사용 재학생, 세션그리고 요청 평균 점수, 평균 점수가 3.75 미만인 학생의 성과 이름을 데이터베이스에서 선택하는 쿼리를 만듭니다.

그림 3.37 – 요청 생성자 33

14) 테이블 사용하기 재학생, 그녀의 후원자가 Viktorovna라는 것이 알려진 경우 학생의 성, 이름 및 기록 번호를 결정하십시오.

그림 3.39 - 쿼리 생성자 35

작업 4.

숫자를 10진수 체계에서 다른 밑수 체계로 변환하려면 다음을 수행하십시오.

a) 숫자의 정수 부분을 변환하려면 전체를 시스템의 밑수로 나누어 나머지를 고정합니다. 부분몫이 0이 아닌 경우 계속해서 전체로 나눕니다. 0과 같으면 나머지는 역순으로 기록됩니다.

b) 숫자의 분수 부분을 변환하려면 결과 제품의 전체 부분을 고정하면서 숫자 체계의 밑수를 곱합니다. 전체 부분은 추가 곱셈에 참여하지 않습니다. 곱셈의 소수 부분이 0이 될 때까지 또는 지정된 계산 정확도가 될 때까지 곱셈이 수행됩니다.

c) 답은 번역된 정수와 숫자의 번역된 분수 부분을 더하여 작성됩니다.

49812,22₁₀ = 1100001010010100,001₂ 49812,22₁₀ = 141224,160₈

0,
0,

49812.22₁₀ = С294, 385₁₆

0,

작업 5.

숫자를 다른 밑수 체계에서 십진수 체계로 변환하려면 변환되는 숫자의 각 계수에 이 계수에 해당하는 정도만큼 체계의 밑수를 곱하고 얻은 결과를 합산합니다.

가) 10101001.11001₂ = 1*2^7+1*2^5+1*2^3+1*2^0+1*2^(-1)+1*2^(-2)+1* 2 (-5)= 169,78125₁₀

2진수를 8진수로 변환하려면 주어진 2진수를 소수점 오른쪽과 왼쪽에 있는 3중화음(3자리)으로 나누고 각 3중화음을 해당 8진수 코드로 나타내야 합니다. 트라이어드로 분할하는 것이 불가능할 경우 정수의 왼쪽에 0을 추가하고 숫자의 소수 부분의 오른쪽에 0을 추가하는 것이 허용됩니다. 역변환의 경우, 8진수의 각 자릿수는 해당하는 2진 코드의 3인조로 표시됩니다.

표 5.1 - 숫자 변환

십진수 체계 이진수 시스템 8진수 체계 16진수 체계
트라이어드(0-7) 사분면체(0-15)
이자형
에프

나) 674.7₈ = 110111100.111₂=1*2^2+1*2^3+1*2^4+1*2^5+1*2^7+1*2^8+1*2^ (- 1) +1*2^(-2) +1*2^(-3)= 443,875₁₀

110 111 100. 111₂

나) EDF,51₁₆ = 111011011111,01010001₂=1*2^0+1*2^1+1*2^2+1*2^3+1*2^4+1*2^6+ +1*2 ^7+1*2^9+ +1*2^10+1*2^11+1*2^(-2) 1*2^(-4) 1*2^(-8)= 3807,31640625₁₀

1110 1101 1111 . 0101 0001₂

작업 6.

이진법에서 숫자를 추가하는 기본은 한 자리 이진수를 추가하는 테이블입니다.

0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10
다중 비트 이진수의 추가는 낮은 차수에서 높은 차수로의 가능한 전송을 고려하여 이 표에 따라 수행됩니다. 다른 위치 번호 시스템과 마찬가지로 8진수 시스템에는 추가되는 두 숫자와 관련된 동일한 순서로 숫자를 추가하는 규칙으로 표시되는 자체 숫자 추가 규칙이 있습니다. 이러한 규칙은 표 6.1에서 확인할 수 있습니다. 특정 숫자의 일부 숫자를 추가할 때 나타나는 이월은 "↶" 기호로 표시됩니다.
표 6.1 - 8번째 숫자 체계의 덧셈
+
↶0
↶0 ↶1
↶0 ↶1 ↶2
↶0 ↶1 ↶2 ↶3
↶0 ↶1 ↶2 ↶3 ↶4
↶0 ↶1 ↶2 ↶3 ↶4 ↶5
↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6

이 숫자의 동일한 숫자에 있는 두 개의 16진수 숫자를 더하는 규칙은 표 6.2에서 볼 수 있습니다. 주어진 숫자의 일부 숫자를 추가할 때 발생하는 전송은 "↶" 기호로 표시됩니다.

6 8 5 , 3 2 2 A ₁₆ + 1 0 1 0 1 0 0 1 0 , 1 0 2 + 4 7 7 , 6₈

D A 4 8 5 , 4 4 6 0 ₁₆ 1 1 0 0 0 0 1 1 0 , 1 1 0 1 0₂6 5 1 , 5 6₈

D A B 0 A , 7 6 8 A₁₆ 1 0 1 1 0 1 1 0 0 1 , 0 1 0 1 02 1 3 5 1 .3 6₈

표 6.2 - 16번째 숫자 체계의 덧셈

+ 이자형 에프
이자형 에프
이자형 에프 ↶0
이자형 에프 ↶0 ↶1
이자형 에프 ↶0 ↶1 ↶2
이자형 에프 ↶0 ↶1 ↶2 ↶3
이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4
이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5
이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6
이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7
이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8
이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9
이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶아
이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶아 ↶B
이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶아 ↶B ↶C
이자형 이자형 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶아 ↶B ↶C ↶D
에프 에프 ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶아 ↶B ↶C ↶D ↶E

작업 7.

8진수 덧셈표를 이용하여 뺄셈을 할 수 있습니다. 두 개의 8진수 차이를 계산해야 한다고 가정해 보겠습니다. 테이블의 첫 번째 열에서 찾아보겠습니다. 6.1 감수의 마지막 숫자에 해당하는 숫자, 그리고 그 줄에서 피감의 마지막 숫자를 찾을 수 있습니다. 이는 감수 선과 차이 열의 교차점에 위치합니다. 이렇게 하면 차이의 마지막 숫자를 찾을 수 있습니다. 마찬가지로 차이의 각 숫자가 검색됩니다.

a) _ 2 5 1 5 1 4 , 4 0₈

5 4 2 5 , 5 5

2 4 3 0 6 6 , 6 3₈

b) _1 0 1 1 0 1 1 0 0 0 , 1 0 0 0 0²

1 0 1 0 0 1 0 0 1 , 1 0 0 1 1

1 0 1 1 0 0 1 0 0 1 1 , 0 0 0 0 1₂

c) _E 3 1 6 , 2 5 0₁₆

5 8 8 1 , F D C₁₆

8A 9 4, 2 7 4

작업 8.

이진법에서 숫자를 곱하는 기본은 한 자리 이진수에 대한 곱셈표입니다.

0 0 = 0
0 1 = 0
1 0 = 0
1 1 = 1

다중 비트 이진수의 곱셈은 다음과 같이 수행됩니다.
일반적인 계획에 따라 이 표에 따르면,
십진법에서 사용하는 것입니다.

우리가 이미 본 것처럼 각 위치 번호 체계에는 고유한 곱셈표가 있습니다. 이진수에서는 가장 작으며, 8진수(표 8.1)와 10진수에서는 이미 더 광범위합니다. 우리가 고려한 자주 사용되는 수 체계 중에서 가장 큰 곱셈표는 16진수입니다(표 8.2).

테이블 8.1. – 8차 시스템의 곱셈

×

가) 1 0 1 0 0 12

* 1 1 1 0 1 1

1 0 1 0 0 1 .

1 0 0 1 0 1 1 1 0 0 1 1₂

b) 1 0 1 1 1 0 0²

* 1 1 0 1 1

1 0 1 1 1 0 0 .

1 0 0 1 1 0 1 1 0 1 0 0₂

c) B C D , 5₁₆

*D5A₁₆

9디 9 3 3 이자형 2₁₆


표 8.2 – 16번째 시스템의 곱셈

× 이자형 에프
이자형 에프
이자형 1A 1C 1E
에프 1B 1E 2A 2D
1C 2C 3C
에프 1E 2D 3C 4B
1E 2A 3C 4E 5A
이자형 1C 2A 3층 4D 5B
1B 2D 3층 5A 6C 7E
1E 3C 5A 6E 8C
2C 4D 6E 8층 9A A5
3C 6C 9C A8 B4
1A 4E 5B 8층 9C A9 B6 C3
이자형 이자형 1C 2A 7E 8C 9A A8 B6 C4 D2
에프 에프 1E 2D 3C 4B 5A A5 B4 C3 D2 E1

작업 9.

직접 코드- 컴퓨터 연산에서 고정 소수점 이진수를 표현하는 방법. 다이렉트 코드로 숫자를 쓸 때 가장 중요한 숫자는 기호 숫자. 값이 0이면 숫자는 양수이고, 1이면 음수입니다.

반환 코드- 자연수에 대한 덧셈 연산만을 사용하여 한 숫자에서 다른 숫자를 뺄 수 있는 계산 수학 방법입니다. 양수에 숫자를 쓰면 직접 코드와 일치하고, 음수에 숫자를 쓰면 자릿수를 제외한 모든 숫자가 반대 숫자로 대체됩니다.

추가 코드(영어) 2의 보수, 때때로 2의 보수)은 컴퓨터에서 음의 정수를 나타내는 가장 일반적인 방법입니다. 이를 통해 빼기 연산을 더하기 연산으로 대체하고 부호 있는 숫자와 부호 없는 숫자에 대해 더하기 및 빼기 연산을 동일하게 만들어 컴퓨터 아키텍처를 단순화할 수 있습니다. 양수에 숫자를 쓰면 직접코드와 일치하고, 음수에 숫자를 쓰면 역코드를 얻어 1을 더해 추가코드가 결정된다.

보완 코드에서 숫자를 추가할 때 부호 비트의 결과 1 캐리는 폐기되고, 역방향 코드에서는 코드 합계의 최하위 비트에 추가됩니다.

사칙연산 결과가 음수의 코드인 경우에는 직접코드로 변환해야 합니다. 부호 1을 제외한 모든 숫자의 숫자를 반대의 숫자로 바꾸어 역방향 코드를 직접 코드로 변환합니다. 추가코드는 1을 더해 다이렉트코드로 변환됩니다.

직접 코드:

X=0.10111 1.11110

Y=1.11110 0,10111

역방향 코드:

X=0.10111 0.10111

Y=1.00001 1,00001

1,11000 1,00111

추가 코드:

X=0.10111 0.10111

Y=1.00010 1,00010

1,11001 1,00110

직접 코드:

역방향 코드:

X=0.110110 0.0110110

Y=0.101110 0,0101110

추가 코드:

X=0.110110 0.0110110

Y=0.101110 0,0101110

작업 10.

논리 요소

1. 논리 게이트는 논리 부정을 수행하지 않습니다. 하나의 입력과 하나의 출력이 있습니다. 신호(전압)가 없음을 "0"으로, 신호가 있음을 "1"로 나타냅니다. 출력 신호는 항상 입력 신호와 반대입니다. 이는 입력에 대한 출력 신호의 의존성을 보여주는 진리표에서 볼 수 있습니다.

2. OR 게이트는 논리 덧셈을 수행합니다. 여러 개의 입력과 하나의 출력이 있습니다. 적어도 하나의 입력에 신호가 있으면 출력에 신호가 있게 됩니다.

기호 진리표

3. AND 게이트는 논리적 곱셈을 수행합니다. 모든 입력에 신호가 있는 경우에만 이 논리 요소의 출력에 신호가 있습니다.

기호 진리표

F=(A v B) ʌ (C v D)

표 10.1 – 진리표

(A 대 B) (CvD) F=(A v B) ʌ (C v D)

A논리학의 대수학에는 논리식을 등가적으로 변환할 수 있는 법칙이 많이 있습니다. 이러한 법칙을 반영하는 관계식을 제시해 보겠습니다.

1. 이중 부정의 법칙: (A) = A

이중 부정은 부정을 제거합니다.

2. 여행(교환)법:

논리 덧셈의 경우: A V B = B V A

논리곱의 경우: A&B = B&A

명령문에 대한 연산 결과는 이러한 명령문이 취해진 순서에 의존하지 않습니다.

3. 결합(결합) 법칙:

논리 덧셈의 경우: (A v B) v C = A v (Bv C);

논리 곱셈의 경우: (A&B)&C = A&(B&C).

부호가 동일한 경우에는 괄호를 임의로 배치하거나 모두 생략할 수 있습니다.

4. 분배(분배)법칙:

논리 덧셈의 경우: (A v B)&C = (A&C)v(B&C);

논리 곱셈의 경우: (A&B) v C = (A v C)&(B v C).

괄호에서 일반적인 설명을 꺼내는 규칙을 정의합니다.

5. 일반 역전의 법칙(드 모건의 법칙):

논리 덧셈의 경우: (Av B) = A & B;

논리 곱셈의 경우: (A& B) = A v B;

6. 멱등성의 법칙

논리 덧셈의 경우: A v A = A;

논리 곱셈의 경우: A&A = A.

법은 지수가 없음을 의미합니다.

7. 상수 제거 법칙:

논리 덧셈의 경우: A v 1 = 1, A v 0 = A;

논리 곱셈의 경우: A&1 = A, A&0 = 0.

8. 모순의 법칙: A& A = 0.

모순되는 진술이 동시에 참이라는 것은 불가능합니다.

9. 세 번째 배제의 법칙: A v A = 1.

10. 흡수의 법칙:

논리 덧셈의 경우: A v (A&B) = A;

논리 곱셈의 경우: A&(A v B) = A.

11. 배제의 법칙(접착):

논리 덧셈의 경우: (A&B) v (A &B) = B;

논리 곱셈의 경우: (A v B)&(A v B) = B.

12. 대위법칙(역전 법칙):

(A v B) = (Bv A).

(A→B) = A&B

A&(AvB)= A&B

등가, 함축 또는 이중 부정 기호가 포함되지 않은 경우 수식은 정규 형식을 가지며, 부정 기호는 변수에 대해서만 발견됩니다.


관련 정보.


기본 최신 암호화 방법

다양한 암호화 방법 중에서 다음과 같은 주요 방법을 구별할 수 있습니다.

  • - 대체 또는 대체 알고리즘 - 원본 텍스트의 문자는 이 암호의 키가 될 사전 결정된 체계에 따라 다른(또는 동일한) 알파벳의 문자로 대체됩니다. 이와 별도로 이 방법은 암호화 강도가 매우 낮기 때문에 현대 암호화 시스템에서는 실제로 사용되지 않습니다.
  • - 재배열 알고리즘 - 비밀 키인 특정 원칙에 따라 원본 텍스트의 문자가 교체됩니다. 순열 알고리즘 자체는 암호화 강도가 낮지만 많은 현대 암호화 시스템의 요소로 포함됩니다.
  • - 감마 알고리즘 - 소스 텍스트의 문자가 특정 무작위 시퀀스의 문자에 추가됩니다.
  • - 특정 공식에 따라 원본 텍스트의 복잡한 수학적 변환을 기반으로 하는 알고리즘입니다. 그들 중 다수는 미해결 수학 문제를 사용합니다. 예를 들어, 인터넷에서 널리 사용되는 RSA 암호화 알고리즘은 소수의 속성을 기반으로 합니다.
  • - 결합된 방법. 두 가지 이상의 방법을 사용하여 원본 텍스트를 순차적으로 암호화합니다.

현대 정보 시스템에서 데이터를 보호하는 데 가장 일반적으로 사용되는 복잡한 수학적 변환과 결합된 방법을 기반으로 구축된 알고리즘을 자세히 살펴보겠습니다.

복잡한 수학적 변환을 기반으로 한 알고리즘

RSA 알고리즘

RSA 알고리즘(작성자 Rivest - Shamir - Adleman 성의 첫 글자 뒤)은 소수(및 매우 큰 숫자)의 속성을 기반으로 합니다. 소수는 자신과 1 외에 약수가 없는 숫자입니다. 그리고 서로소(coprime) 수는 1 외에 공약수가 없는 수입니다.

먼저, 두 개의 매우 큰 소수를 선택해야 합니다(크고 강력한 키를 구성하려면 큰 소수가 필요합니다. 예를 들어 Unix 프로그램 ssh-keygen은 기본적으로 1024비트 키를 생성합니다). p와 q를 곱한 결과 매개변수 n이 결정됩니다. 그런 다음 임의의 숫자 e가 선택되고 숫자 (n) = (p - 1)*(q - 1)과 상대적으로 소수여야 합니다. 관계가 참인 숫자 d가 발견되었습니다.

(e*d) mod (n) = 1.

Mod는 나눗셈의 나머지입니다. 즉, e에 d를 곱한 후 (n)으로 나눈 나머지는 1이 되어야 합니다. 즉, 숫자 (e*d - 1)과 (n)은 정수로 나누어야 합니다. .

공개키는 e와 n의 쌍이고, 개인키는 d와 n이다. 암호화 시 원본 텍스트는 숫자 계열로 처리되며, n보다 작아야 하는 각 숫자에 대해 연산이 수행됩니다.

C(i) = (M(i) e) mod n. (1)

결과는 암호문을 구성하는 시퀀스 C(i)입니다. 정보의 디코딩은 공식에 따라 발생합니다.

M(i) = (C(i) d) mod n. (2)

보시다시피, 암호 해독에는 비밀 키에 대한 지식이 필요합니다.

작은 숫자를 사용한 예를 살펴보겠습니다. p = 3, q ​​​​= 7이라고 가정합니다. 그런 다음 n = = p*q = 21입니다. e = 5를 선택합니다. 공식 (d*5) mod 12 = 1에서 d = 17을 계산합니다. 따라서 공개 키는 17, 21, 비밀키는 5, 21입니다.

시퀀스 "2345"를 암호화해 보겠습니다.

C1 = 2 17 모드 21 = 11;

C 2 = 3 17 모드 21 = 12;

C3 = 4 17 모드 21 = 16;

C4 = 5 17 모드 21 = 17.

Cryptotext - 11 12 16 17. 해독을 확인해 보겠습니다.

M1 = 11 5 mod 21 = 2;

M 2 = 12 5 mod 21 = 3;

M 3 = 16 5 mod 21 = 4;

M 4 = 17 5 모드 21 = 5;

보시다시피 결과는 원래의 평문과 일치했습니다.

RSA 암호화 시스템은 인터넷에서 널리 사용됩니다. 사용자가 SSL(Secure Socket Layer) 프로토콜을 사용하여 보안 서버에 연결할 때 Secure Socket Layer는 네트워크를 통한 데이터의 안전한 전송을 보장하는 프로토콜입니다. 공개 키 암호화 시스템과 블록 데이터 암호화를 결합합니다. PC에 WebMoney 인증서를 설치하거나 Open SSH 또는 SecureShell을 사용하여 원격 서버에 연결합니다. 대부분은 이러한 모든 프로그램이 RSA 아이디어를 사용하여 공개 키 암호화를 사용한다고 의심하지 않습니다. 연산.

이 시스템이 정말 그렇게 신뢰할 수 있나요?

RSA는 생성된 이후 지속적으로 무차별 대입 공격(무차별 대입 공격)을 당했습니다. 이는 단순히 가능한 모든 키(비밀번호)를 시도하여 수행되는 공격입니다. 두 번째 경우에서는 무차별 공격을 매우 일반적으로 사용합니다. "사전 공격". 1978년에 알고리즘 작성자는 방금 발명한 방법을 사용하여 암호화된 문자열을 제시하는 기사를 발표했습니다. 메시지를 가장 먼저 해독한 사람에게는 100달러의 보상이 주어졌지만 이를 위해서는 129자리 숫자를 두 가지 요소로 나누어야 했습니다. 이것은 RSA를 크랙하는 첫 번째 대회였습니다. 문제는 기사가 나온 지 17년 만에 해결됐다.

RSA의 암호화 강도는 공개 키에서 개인 키를 결정하는 것이 불가능하지는 않더라도 극히 어렵다는 가정에 기반을 두고 있습니다. 이를 위해서는 거대한 정수의 약수가 존재하는 문제를 해결해야했습니다. 지금까지 분석적 방법을 사용하여 이를 해결한 사람은 아무도 없으며 RSA 알고리즘은 무차별 대입을 통해서만 해독할 수 있습니다. 엄밀히 말하면 인수분해 문제가 어렵고, RSA 체계를 깨는 것이 어렵다는 주장도 증명되지 않았다.

RSA 회사(http://www.rsa.ru)는 자체 암호 해독 대회를 정기적으로 개최합니다. 이전 대회에서는 자원봉사자들의 인터넷 커뮤니티인 Distributed.net(http://www.distributed.net) 조직이 우승했습니다.

Distributed.net 회원은 작은 클라이언트 프로그램을 PC에 다운로드합니다. 이 프로그램은 중앙 서버에 연결되어 계산을 위한 데이터 조각을 받습니다. 그런 다음 모든 데이터가 중앙 서버에 업로드되고 클라이언트는 다음 초기 정보 블록을 받습니다. 그리고 이는 모든 조합이 정리될 때까지 발생합니다. 시스템의 참가자인 사용자는 팀으로 뭉쳐지고 사이트는 팀과 국가 모두의 등급을 유지합니다. 예를 들어, RC5-64(64비트 키를 사용하는 RSA 블록 암호) 크래킹 대회에 참여한 Distributed.net은 5년(1,757일) 만에 크래킹에 성공했습니다. 이 기간 동안 327,856명의 사용자가 프로젝트에 참여했으며 15,268 * 10 18개 이상의 핵심 옵션이 정리되었습니다. "어떤 것들은 읽지 않은 채로 두는 것이 낫다"라는 문구가 암호화된 것으로 밝혀졌습니다(유머 없이는 아님). RC5-64 암호에 대한 일반적인 권장 사항은 다음과 같습니다. 알고리즘은 일상적인 요구에 충분히 강력하지만 5년 이상 비밀로 유지되는 데이터를 암호화하는 것은 권장되지 않습니다."

확률적 암호화

공개 키 암호화 시스템의 한 유형은 Shafi Golwasser와 Silvio Minnelli가 개발한 확률적 암호화입니다. 그 본질은 암호화 알고리즘 E를 확률 모델에 종속시키는 것입니다. 이 접근 방식의 장점은 무엇입니까? 예를 들어, RSA 시스템에서 0과 1은 "마스킹"되지 않습니다. 이 문제는 확률적 알고리즘에 의해 성공적으로 해결됩니다. 왜냐하면 일반 텍스트 M을 암호문 C뿐만 아니라 암호문 CM 세트의 일부 요소와 일치시키기 때문입니다. 게다가, 이 세트의 각 요소는 특정 확률로 선택됩니다. 즉, 임의의 일반 텍스트 M에 대해 알고리즘 E의 결과는 확률 변수가 됩니다. 이 경우 정보를 해독하는 것이 불가능해 보일 수도 있지만 전혀 그렇지 않습니다. 복호화를 가능하게 하기 위해서는 서로 다른 평문 M1과 M2에 대해 집합 CM1과 CM2가 교차하지 않는 것이 필요합니다. 또한 확률론적 암호화 알고리즘이 결정론적 암호화 알고리즘보다 더 신뢰할 수 있다고 말하고 싶습니다. 이 분야에서 가장 일반적인 것은 RSA 기능과 El-Gamala 암호화 시스템을 기반으로 하는 확률적 암호화입니다.

결합된 암호화 방법

암호화 시스템의 가장 중요한 요구 사항 중 하나는 높은 암호화 강도입니다. 그러나 암호화 방법에 대해 이를 늘리면 일반적으로 암호화 프로세스 자체가 상당히 복잡해지고 리소스 비용(시간, 하드웨어, 처리량 감소 등)이 증가하고 결과적으로 작동 시간이 늘어납니다. 암호화 시스템.

암호화 강도를 높이는 상당히 효과적인 방법은 여러 가지 암호화 방법을 결합하여 사용하는 것입니다. 두 가지 이상의 방법을 사용하여 원본 텍스트를 순차적으로 암호화합니다.

연구에 따르면 결합된 암호화의 강도는 사용된 방법의 강도를 곱한 것보다 낮지 않습니다.

엄밀히 말하면 모든 암호화 방법과 수량을 결합할 수 있지만 실제로는 다음 조합이 가장 널리 사용됩니다.

치환 + 감마;

재배열 + 감마;

도박 + 도박;

치환 + 순열;

조합 암호의 일반적인 예는 미국 DES(National Data Encryption Standard)입니다.

DES 암호화 표준

1973년에 미국 국립표준국(National Bureau of Standards)은 컴퓨터 데이터 암호화에 대한 표준을 만들기 위한 프로그램을 개발하기 시작했습니다. 1974년 DES(Data Encryption Standard)로 알려진 암호화 알고리즘을 제시한 IBM이 승리한 개발 회사 간의 경쟁이 발표되었습니다.

이 알고리즘에서는 일반 텍스트 블록이라고 하는 입력 64비트 벡터가 이진 56비트 키 K를 사용하여 암호문 블록이라고 하는 출력 64비트 벡터로 변환됩니다. DES 알고리즘의 고유 키 수는 2 56 입니다.

알고리즘은 16개의 유사한 암호화 주기를 통해 구현되며, 여기서 i번째 주기는 키 Ki의 56비트 중 48비트의 알고리즘으로 생성된 샘플인 순환 키 Ki를 사용합니다. i = 1,2,...,16 .

이 알고리즘은 높은 보안을 제공하지만 최근 결과에 따르면 현재 기술을 사용하면 무차별 대입을 통해 평균 3.5시간 내에 비밀 키를 해독할 수 있는 약 100만 달러의 비용이 드는 컴퓨팅 장치를 만들 수 있는 것으로 나타났습니다.

키 크기가 작기 때문에 상업 정보를 폐쇄하기 위해 DES 알고리즘을 사용하기로 결정했습니다. 이러한 조건에서 모든 키를 열거하는 실제 구현은 경제적으로 실현 가능하지 않습니다. 열거 비용이 암호에 의해 숨겨진 정보의 값과 일치하지 않기 때문입니다.

DES 알고리즘은 정보 보안 분야에서 기술적 수단을 광범위하게 생산하고 구현한 첫 번째 예입니다. 미국 국립표준국(National Bureau of Standards)은 특수 테스트 벤치에서 개발 회사가 제안한 DES 알고리즘의 하드웨어 구현을 테스트합니다. 긍정적인 테스트 결과가 나온 후에만 제조업체는 국가 표준국으로부터 제품 판매 권리에 대한 인증서를 받습니다. 현재까지 다양한 요소 기반으로 만들어진 수십 개의 제품이 인증되었습니다.

높은 암호화 속도가 달성되었습니다. 최고 제품에서는 45Mbit/s입니다. 일부 하드웨어 제품의 가격은 100달러 미만입니다.

DES 알고리즘의 주요 적용 영역은 다음과 같습니다.

컴퓨터에 데이터 저장(파일, 비밀번호 암호화)

메시지 인증(메시지와 제어 그룹이 있으면 메시지의 진위 여부를 쉽게 확인할 수 있습니다.

전자 결제 시스템(다양한 고객과의 거래 및 은행 간 거래용)

상업 정보의 전자 교환(구매자, 판매자 및 은행가 간의 데이터 교환은 변경 및 차단으로부터 보호됩니다.

나중에 DES의 수정 사항이 나타났습니다. Triple DES ( "triple DES"- "일반"DES 알고리즘을 사용하여 정보를 세 번 암호화하기 때문에)는 이전 버전의 주요 단점 인 짧은 키에서 벗어났습니다. 여기서는 두 배나 길어요. 그러나 결과적으로 Triple DES는 이전 제품의 또 다른 약점, 즉 암호화를 위한 병렬 컴퓨팅 기능이 부족하고 속도가 낮다는 점을 물려받았습니다.

GOST 28147-89

1989년 소련은 정부 데이터 암호화 표준으로 사용할 블록 암호를 개발했습니다. 개발이 승인되어 GOST 28147-89로 등록되었습니다. 이 알고리즘은 1990년에 소개되었습니다. 그리고 이 암호화 알고리즘의 적용 범위는 아직 명확해지고 있지만, 특히 은행 시스템에서는 구현이 이미 시작되었습니다. 알고리즘은 다소 느리지만 암호화 강도가 매우 높습니다.

일반적으로 GOST 28147-89는 DES와 유사합니다. GOST 알고리즘의 블록 다이어그램은 초기 순열 및 암호화 주기 수(GOST의 경우 32개, DES 알고리즘의 경우 16개)가 없다는 점에서만 DES 알고리즘의 블록 다이어그램과 다릅니다.

GOST 알고리즘 키는 32차원 벡터 X 1, X 2,… X 8로 구성된 배열입니다. i 번째 사이클 Ki의 순환 키는 Xs와 같습니다. 여기서 1에서 32까지의 일련의 값 i는 다음 일련의 값 s에 해당합니다.

1,2,3,4,5,6,7,8,1,2,3,4,5,6,7,8,1,2,3,4,5,6,7,8,8,7,6,5,4,3,2,1.

GOST 암호는 256비트 키를 사용하며 키 공간의 크기는 2,256입니다. 현재 존재하거나 가까운 미래에 구현될 것으로 예상되는 범용 컴퓨터 시스템 중 어느 것도 수백 년 이내에 키를 선택하는 데 사용될 수 없습니다. 러시아 표준은 내구성 측면에서 큰 차이를 두고 설계되었으며 실제 키 크기가 56비트이고 키 공간 볼륨이 2,56에 불과하여 확실히 충분하지 않은 미국 DES 표준보다 훨씬 뛰어납니다. . GOST 암호화 알고리즘 키는 길이가 32바이트(256비트)이고 DES 키보다 4배 더 큽니다. 모든 키를 정렬하는 데 필요한 시간은 4배가 아니라 256 32-8 = 256 24, 즉 천문학적 수치로 환산하면 늘어납니다. 이런 점에서 DES는 실용적인 관심보다는 연구나 과학적 관심에 더 가깝다고 할 수 있습니다.

최신 암호화 알고리즘 사용에 대한 결론

현재 가장 일반적으로 사용되는 세 가지 주요 암호화 표준은 다음과 같습니다.

  • - DES;
  • - GOST 28147-89 - 높은 암호화 강도를 특징으로 하는 국내 방법입니다.
  • - RSA는 암호화와 복호화가 서로 다른 키를 사용하여 수행되는 시스템입니다.

RSA의 단점은 암호화 속도가 다소 느리다는 점이지만, 사용자마다 고유한 비밀키를 기반으로 개인 전자서명을 제공한다. 가장 널리 사용되는 암호화 방법의 특성은 표 1에 나와 있습니다.

표 1 가장 일반적인 암호화 방법의 특성

지식 기반에서 좋은 작업을 보내는 것은 간단합니다. 아래 양식을 사용하세요

연구와 업무에 지식 기반을 활용하는 학생, 대학원생, 젊은 과학자들은 여러분에게 매우 감사할 것입니다.

코스 작업

주제:

데이터 암호화 알고리즘

소개

1. 암호화 알고리즘의 목적과 구조

1.1 암호화 방법 개요

2. 대칭 암호화 알고리즘

2.1 암호화 알고리즘의 구조

3. 대칭암호 알고리즘 적용

결론

서지

소개

정보를 외부인이 읽을 수 없도록 변형하여 보호하는 문제는 예로부터 인간의 마음을 걱정해 왔습니다.

정보 시스템에서 암호화 방법을 사용하는 문제가 현재 특히 중요해지는 이유는 무엇입니까?

오늘날까지 알려진 모든 형태의 상거래는 시장 표시부터 허위 송장 및 위조 통화에 이르기까지 잠재적으로 사기에 취약합니다. 전자상거래 방식도 예외는 아닙니다. 강력한 암호화만이 이러한 형태의 공격을 방지할 수 있습니다.

암호화 없는 전자화폐는 살아남지 못할 것입니다. 인터넷은 점차 정보고속도로로 변모하고 있습니다. 이는 눈사태처럼 인터넷 사용자 수가 지속적으로 증가하고 있기 때문입니다. 일반적인 정보 교환 외에도 비즈니스 관계는 항상 금전적 지불을 수반하는 네트워크에 침투합니다. 다양한 상품과 서비스의 온라인 거래 사례가 많이 있습니다. 이는 구매자가 거대한 카탈로그에서 제품을 선택하고 심지어 이 제품을 검토할 수도 있는 네트워크 기능의 지원을 받는 전통적인 거래입니다(3차원 이미지 전송을 기반으로 하는 서비스가 점점 일반화되고 있습니다). 여행 장소와 서비스 수준에 대한 모든 것을 미리 알아보고, 사진(자연, 레스토랑, 수영장, 객실 가구...)을 보고, 여행을 예약할 수 있는 관광 서비스에 대한 액세스입니다. 항공권. 그러한 예는 꽤 많이 있으며, 그 중 상당수는 금전적 지불과 관련이 있습니다.

신용 카드를 사용한 결제의 경우 단점은 분명합니다. 카드를 받아야하고 (러시아에서는 모든 사람이 카드가 무엇인지 알지 못함) 인터넷상의 모든 사람이 귀하의 신용 카드 코드를 알게되고 사악한 사람들이 알게 될 것이라는 두려움도 있습니다. 계정을 삭제하세요. 실제로 그러한 사기의 가능성은 통화 교환 시 위조 화폐를 받게 되는 것보다 크지 않습니다. 그리고 일반적으로 전자 화폐에는 일반 화폐보다 더 이상 문제가 없습니다. 인터넷에서 결제를 수행하기 위해 여러 결제 시스템이 개발되었습니다. 기존 신용 카드를 교묘하게 사용하거나 순수한 전자 화폐, 즉 계정 상태 기록을 저장하는 보안 파일 시스템에 의존합니다. 전 세계에는 이러한 시스템이 12개 이상 있으며, 러시아에도 여러 개가 있는데, 그 중 가장 일반적인 것이 CyberPlat입니다.

1. 인터넷 결제에는 권한이 없는 사람에게 공개될 수 없는 특별한 정보의 전송이 포함됩니다.

2. 결제 시 모든 행위자(구매자, 판매자, 은행 또는 결제 시스템)가 본인임을 정확히 보장해야 합니다.

이 두 가지 요소는 암호화 없이는 인터넷 결제가 불가능하다는 것을 이해하기에 충분하며 전자 화폐라는 아이디어는 정보의 안정적인 보호와 누구도 거래 참가자를 대체할 수 없다는 보장을 전제로 합니다. 그래서 전자 화폐를 훔칩니다.

새롭고 강력한 컴퓨터, 네트워크 및 중성자 컴퓨팅 기술의 출현으로 최근까지 깨지지 않는 것으로 간주되었던 암호화 시스템의 신뢰성을 떨어뜨리는 것이 가능해졌습니다.

이 모든 것이 연구자들이 새로운 암호 시스템을 만들고 기존 암호 시스템을 신중하게 분석하도록 끊임없이 유도합니다.

정보 보안 보장 문제의 관련성과 중요성은 다음 요소에 기인합니다.

* 현재 정보 보안 도구의 개발 수준 및 속도는 정보 기술 개발 수준 및 속도에 비해 크게 뒤떨어져 있습니다.

* 인간 활동의 다양한 영역에서 사용되는 개인용 컴퓨터의 높은 성장률.

1. 암호화 알고리즘의 목적과 구조

암호화는 정보의 기밀성을 유지하기 위해 가장 널리 사용되는 암호화 방법으로, 무단 액세스로부터 데이터를 보호합니다. 먼저, 암호화정보 보호의 기본적인 방법을 살펴보자. 한마디로, 암호화- 수학적 방법을 사용하는 정보 보안 과학. 암호화와 반대되는 과학도 있으며 보호된 정보를 여는 방법에 전념합니다. 암호해석. 암호학과 암호해독학을 결합한 것을 흔히 '암호분석'이라고 합니다. 암호학. 암호화 방법은 다양한 방식으로 분류될 수 있지만 대부분 해당 암호화 알고리즘에 사용되는 키 수에 따라 구분됩니다(그림 1 참조).

1. 열쇠를 사용하지 않는 Keyless입니다.

2. 단일 키 - 추가 키 매개변수(보통 비밀 키)를 사용합니다.

3. 2개 키, 계산에 비밀 키와 공개 키 두 개를 사용합니다.

쌀. 1. 암호화 알고리즘

1.1 암호화 방법 개요

암호화는 주요 보호 방법입니다. 아래에서 자세히 살펴보겠습니다.

다른 암호화 방법에 대해 몇 마디 말할 가치가 있습니다.

1. 전자 서명은 데이터의 무결성과 작성자를 확인하는 데 사용됩니다. 데이터 무결성은 데이터가 저장 또는 전송 중에 실수로 또는 의도적으로 변경되지 않았음을 의미합니다.

전자 서명 알고리즘은 두 가지 유형의 키를 사용합니다.

o 비밀 키는 전자 서명을 계산하는 데 사용됩니다.

o 공개 키는 이를 확인하는 데 사용됩니다.

암호화된 강력한 전자 서명 알고리즘을 사용하고 비밀 키를 적절하게 저장 및 사용할 때(즉, 소유자 이외의 사람이 키를 사용할 수 없는 경우) 다른 누구도 비밀 키의 정확한 전자 서명을 계산할 수 없습니다. 전자문서.

2. 인증을 사용하면 사용자(또는 원격 컴퓨터)가 실제로 자신이 주장하는 사람인지 확인할 수 있습니다. 가장 간단한 인증 체계는 비밀번호 1입니다. 비밀번호는 비밀번호를 확인할 때 사용자가 제시하는 비밀 요소로 사용됩니다. 이러한 계획은 이를 강화하기 위한 특별한 행정적, 기술적 조치가 적용되지 않으면 취약한 것으로 입증되었습니다. 그리고 암호화 또는 해싱(아래 참조)을 기반으로 매우 강력한 사용자 인증 체계를 구축할 수 있습니다.

3. 다양한 암호화 체크섬 방법이 있습니다.

o 키 및 키 없는 해싱;

o 모방 접두어 계산;

o 메시지 인증 코드 사용.

실제로 이러한 모든 방법은 다양한 방법으로 비밀 키 유무에 관계없이 임의 크기의 데이터로부터 원본 데이터와 고유하게 일치하는 고정 크기의 체크섬을 계산합니다.

이러한 암호화 체크섬은 다양한 정보 보안 방법에 널리 사용됩니다. 예를 들면 다음과 같습니다.

o 전자 서명 사용이 불가능하거나(예: 높은 자원 소비로 인해) 중복되는 경우 데이터의 무결성을 확인합니다.

o 전자 서명 체계 자체에서 일반적으로 "서명"되는 것은 전체 데이터가 아닌 데이터의 해시입니다.

o 다양한 사용자 인증 방식.

4. 난수 및 의사 난수 생성기를 사용하면 특히 암호화에 널리 사용되는 난수 시퀀스를 생성할 수 있습니다.

o 비밀 키를 생성하려면 난수가 필요하며, 이상적으로는 완전히 무작위여야 합니다.

o 난수는 많은 전자 서명 알고리즘에 사용됩니다.

o 난수는 많은 인증 체계에서 사용됩니다.

절대 난수를 얻는 것이 항상 가능한 것은 아닙니다. 이를 위해서는 고품질 하드웨어 생성기가 필요합니다. 그러나 대칭 암호화 알고리즘을 기반으로 하면 고품질 의사 난수 생성기를 구축하는 것이 가능합니다.

2 대칭 암호화 알고리즘

암호화정보는 공개된 정보를 암호화된 정보(가장 흔히 호출되는 암호화된 정보)로 변환하는 것입니다. 암호문또는 암호문), 그 반대. 이 프로세스의 첫 번째 부분은 다음과 같습니다. 암호화, 두번째 - 해독.

암호화를 다음 공식으로 생각할 수 있습니다.

C = E k1(중),어디:

(메시지) - 공개 정보,

와 함께(암호문) - 암호화 결과 얻은 암호문,

이자형(암호화) - 암호화 변환을 수행하는 암호화 기능 ,

k1(키) - 기능 매개변수 이자형, 라고 불리는 열쇠암호화.

GOST 28147-89 표준(국내 대칭 암호화 알고리즘을 정의하는 표준)에서 개념은 열쇠다음과 같이 정의됩니다. "암호 변환 알고리즘의 일부 매개변수에 대한 특정 비밀 상태로, 주어진 알고리즘에 대해 가능한 모든 변환 집합에서 하나의 변환을 선택하도록 보장합니다."

키는 특정 사용자 또는 사용자 그룹에 속할 수 있으며 고유할 수 있습니다. 특정 키를 사용하여 암호화된 정보는 동일한 키 또는 특정 관계에 의해 이와 관련된 키를 통해서만 복호화할 수 있습니다.

암호 해독은 비슷한 방식으로 표현될 수 있습니다.

M" = 디 k2(씨),어디:

중"- 복호화 결과 수신된 메시지,

(암호해독) - 암호해독 기능; 암호화 기능과 마찬가지로 암호문에 대한 암호화 변환을 수행합니다.

k2- 암호 해독 키.

복호화의 결과로 올바른 일반 텍스트(즉, 이전에 암호화된 것과 동일한 텍스트: M" = M)를 얻으려면 다음 조건이 동시에 충족되어야 합니다.

1. 복호화 기능은 암호화 기능과 일치해야 합니다.

2. 해독 키는 암호화 키와 일치해야 합니다.

올바른 키가 누락된 경우 k2원본 메시지 받기 중" = 올바른 기능을 사용하여 불가능한. 여기서 '불가능'이라는 말은 대개 기존 컴퓨팅 자원으로는 실시간 컴퓨팅이 불가능하다는 뜻이다.

암호화 알고리즘은 두 가지 범주로 나눌 수 있습니다(그림 1 참조).

1. 대칭 암호화 알고리즘.

2. 비대칭 암호화 알고리즘.

알고리즘에서 대칭 암호화암호 해독의 경우 일반적으로 암호화와 동일한 키가 사용되거나 간단한 관계로 이와 관련된 키가 사용됩니다. 후자는 특히 현대 암호화 알고리즘에서는 훨씬 덜 일반적입니다. 이러한 키(암호화 및 암호 해독에 공통)는 일반적으로 간단히 호출됩니다. 암호화 키.

안에 비대칭 암호화암호화 키 k1키로 쉽게 계산 k2역계산이 불가능할 정도로요. 예를 들어 주요 관계는 다음과 같습니다.

k1 = 에이k2 모드 p,

여기서 a와 p는 충분히 큰 차원을 갖는 암호화 알고리즘의 매개변수입니다.

이 키 관계는 전자 서명 알고리즘에도 사용됩니다.

암호화 알고리즘의 주요 특징은 암호화 강도, 이는 암호 분석 방법을 통해 공개에 대한 저항을 결정합니다. 일반적으로 이 특성은 암호를 해독하는 데 필요한 시간 간격에 따라 결정됩니다.

대칭형 암호화는 암호화된 정보를 누군가에게 전송할 때 정보를 해독하기 위해 수신자가 미리 키를 받아야 한다는 점에서 덜 편리합니다. 비대칭 암호화에는 공개 키가 네트워크를 통해 자유롭게 전송될 수 있으므로 이러한 문제가 없지만, 특히 공개 키 스푸핑 및 느린 암호화 속도 문제 등 자체적인 문제가 있습니다. 대부분의 경우 비대칭 암호화는 대칭 암호화와 함께 사용되어 대량의 데이터를 암호화하는 대칭 암호화 키를 전송합니다. 그러나 키 저장 및 전송 체계는 별도 기사의 주제입니다. 여기서는 대칭 암호화가 비대칭 암호화보다 훨씬 더 자주 사용된다는 점을 명시하고 나머지 기사에서는 대칭 암호화에만 집중하겠습니다.

대칭 암호화에는 두 가지 유형이 있습니다.

· 암호화 차단- 정보는 고정된 길이(예: 64 또는 128비트)의 블록으로 분할된 후 이 블록을 하나씩 암호화합니다. 더욱이, 서로 다른 암호화 알고리즘 또는 동일한 알고리즘의 서로 다른 작동 모드에서도 블록은 서로 독립적으로 또는 "체인을 사용하여" 암호화될 수 있습니다. 즉, 현재 데이터 블록의 암호화 결과가 이전 블록의 값에 따라 달라지거나 이전 블록을 암호화한 결과.

· 스트림 암호화- 우선 정보를 블록으로 나눌 수 없는 경우에 필요합니다. 예를 들어 특정 데이터 스트림은 블록을 형성하기에 충분한 나머지 데이터를 기다리지 않고 각 문자를 암호화하여 어딘가로 보내야 합니다. 따라서 스트림 암호화 알고리즘은 데이터를 비트 단위로 또는 문자 단위로 암호화합니다. 일부 분류에서는 블록 암호화와 스트림 암호화를 구별하지 않는다는 점은 말할 가치가 있지만 스트림 암호화는 단위 길이 블록의 암호화라는 점을 고려하면 됩니다.

블록 대칭 암호화 알고리즘이 내부에서 어떤 모습인지 살펴보겠습니다.

2.1 암호화 알고리즘의 구조

대부분의 현대 암호화 알고리즘은 매우 유사한 방식으로 작동합니다. 즉, 특정 횟수(라운드)로 반복되는 암호화 키를 사용하여 암호문에 특정 변환이 수행됩니다. 동시에 반복되는 변환 유형에 따라 암호화 알고리즘은 일반적으로 여러 범주로 나뉩니다. 여기에도 다양한 분류가 있는데 그중 하나를 알려 드리겠습니다. 따라서 구조에 따라 암호화 알고리즘은 다음과 같이 분류됩니다.

1. Feistel 네트워크 기반의 알고리즘.

Feistel 네트워크는 처리된 데이터 블록을 여러 하위 블록(대부분 2개)으로 나누는 작업을 포함하며, 그 중 하나는 특정 기능에 의해 처리됩니다. 에프()하나 이상의 다른 하위 블록과 겹칩니다. 그림에서. 그림 2는 Feistel 네트워크를 기반으로 하는 가장 일반적인 알고리즘 구조를 보여줍니다.

쌀. 2. Feistel 네트워크 기반 알고리즘의 구조.

추가 함수 인수 에프(), 그림에 표시되어 있습니다. 2 어떻게 , 라고 불리는 둥근 열쇠. 라운드 키는 키 확장 절차에 따라 암호화 키를 처리한 결과이며, 필요한 수의 키를 얻는 작업입니다. 상대적으로 작은 크기의 초기 암호화 키에서 생성됩니다(현재 대칭 암호화 키의 경우 128비트 크기로 충분하다고 간주됨). 가장 간단한 경우, 키 확장 절차는 단순히 키를 여러 조각으로 분할하여 암호화 라운드에서 교대로 사용됩니다. 훨씬 더 자주, 키 확장 절차는 상당히 복잡하고 키 원래 암호화 키의 대부분 비트 값에 따라 달라집니다.

처리된 서브블록을 처리되지 않은 서브블록에 중첩하는 것은 대부분 논리적 XOR 연산을 사용하여 수행됩니다(그림 2 참조). 여기서는 XOR 대신 모듈로 덧셈을 사용하는 경우가 많습니다. 2 N, 어디 N- 비트 단위의 하위 블록 크기. 오버레이 후 하위 블록이 교체됩니다. 즉, 알고리즘의 다음 라운드에서 데이터의 다른 하위 블록이 처리됩니다.

이러한 암호화 알고리즘 구조는 Lucifer 암호화 알고리즘과 이를 기반으로 개발된 이전(그러나 여전히 널리 사용되는) 미국 암호화 표준인 DES(Data Encryption Standard) 알고리즘의 개발자 중 한 명인 Horst Feistel에서 이름을 따왔습니다. 두 알고리즘 모두 그림 1과 유사한 구조를 가지고 있습니다. 2. Feistel 네트워크를 기반으로 하는 다른 알고리즘 중에서 국내 암호화 표준 GOST 28147-89와 기타 잘 알려진 알고리즘인 RC5, Blowfish, TEA, CAST-128 등을 예로 들 수 있습니다.

대부분의 최신 암호화 알고리즘은 Feistel 네트워크를 기반으로 합니다. 이러한 구조의 많은 장점으로 인해 다음 사항에 주목할 가치가 있습니다.

o Feistel 네트워크를 기반으로 한 알고리즘은 동일한 알고리즘 코드를 암호화 및 복호화에 사용할 수 있는 방식으로 설계할 수 있습니다. 이러한 작업 간의 차이는 키 Ki의 적용 순서에만 있을 수 있습니다. 알고리즘의 이러한 속성은 하드웨어나 리소스가 제한된 플랫폼에서 구현될 때 가장 유용합니다. 이러한 알고리즘의 예는 GOST 28147-89입니다.

o Feistel 네트워크를 기반으로 한 알고리즘이 가장 많이 연구되었습니다. 이러한 알고리즘에 대한 엄청난 양의 암호 분석 연구가 이루어졌으며 이는 알고리즘 개발과 분석 모두에서 의심할 여지 없는 이점입니다.

Feistel 네트워크에는 좀 더 복잡한 구조도 있는데, 그 예가 그림 1에 나와 있습니다. 삼.

쌀. 3. Feistel 네트워크의 구조.

이 구조를 일반화된또는 퍼지는 Feistel 네트워크는 기존 Feistel 네트워크보다 훨씬 덜 자주 사용됩니다. 이러한 Feistel 네트워크의 예로는 RC6 알고리즘이 있습니다.

2. 알고리즘 기반 순열 네트워크 (SP 네트워크- 치환-순열 네트워크).

Feistel 네트워크와 달리 SP 네트워크는 암호화된 블록 전체를 한 라운드에 처리합니다. 데이터 처리는 주로 교체로 이어집니다(예를 들어 입력 값의 조각이 키 값에 따라 달라질 수 있는 교체 테이블에 따라 다른 조각으로 대체되는 경우). ) 및 키에 따른 순열 (간단한 다이어그램이 그림 4에 나와 있습니다.)

쌀. 4. 치환-순열 네트워크.

그러나 이러한 작업은 다른 유형의 암호화 알고리즘에서도 일반적이므로 "대체 순열 네트워크"라는 이름은 매우 임의적이라고 생각합니다.

SP 네트워크는 Feistel 네트워크보다 훨씬 덜 일반적입니다. SP 네트워크의 예로는 Serpent 또는 SAFER+ 알고리즘이 있습니다.

3. 구조를 갖춘 알고리즘 "정사각형"(정사각형).

"정사각형" 구조는 암호화된 데이터 블록을 2차원 바이트 배열 형태로 표현하는 것이 특징입니다. 암호화 변환은 배열의 개별 바이트뿐만 아니라 해당 행이나 열에서도 수행될 수 있습니다.

알고리즘 구조는 공개 경쟁에서 승리한 후 새로운 미국 AES 암호화 표준이 된 Rijndael 알고리즘의 미래 저자인 Vincent Rijmen과 Joan Daemen이 1996년에 개발한 Square 알고리즘에서 이름을 따왔습니다. Rijndael 알고리즘도 Square와 유사한 구조를 가지고 있습니다. 또한 Shark 알고리즘(Ridgeman 및 Damen의 초기 개발)과 Crypton도 그 예로 들 수 있습니다. "정사각형" 구조의 알고리즘의 단점은 지식이 부족하다는 것이며, 이로 인해 Rijndael 알고리즘이 새로운 미국 표준이 되는 것을 막지 못했습니다.

쌀. 5. Rijndael 알고리즘.

그림에서. 그림 5는 Rijndael 알고리즘에 의해 수행되는 데이터 블록에 대한 연산의 예를 보여줍니다.

4. 비표준 구조를 가진 알고리즘, 즉 나열된 유형 중 하나로 분류될 수 없는 알고리즘입니다. 독창성은 무한할 수 있다는 것이 분명하므로 암호화 알고리즘에 대해 가능한 모든 옵션을 분류하는 것은 어렵습니다. 비표준 구조를 가진 알고리즘의 예로는 구조가 독특한 FROG 알고리즘이 있는데, 각 라운드마다 2바이트의 암호화된 데이터가 상당히 복잡한 규칙에 따라 수정됩니다(그림 6 참조).

쌀. 6. 2바이트의 암호화된 데이터 수정.

위에 설명된 구조 사이의 엄격한 경계는 정의되어 있지 않으므로 다양한 전문가가 다양한 유형의 구조로 분류한 알고리즘이 있는 경우가 많습니다. 예를 들어, CAST-256 알고리즘은 저자에 의해 SP 네트워크라고 불리며, 많은 전문가들은 이를 확장된 Feistel 네트워크라고 부릅니다. 또 다른 예는 저자가 Feistel 네트워크라고 불렀으나 전문가들은 비표준 구조를 가진 알고리즘으로 간주하는 HPC 알고리즘입니다.

3. SIM의 응용메트릭 암호화 알고리즘

암호화 알고리즘 대칭 암호화

대칭형 암호화 방법은 높은 수준의 데이터 전송 보안을 보장하기 위해 긴 키를 생성할 필요가 없기 때문에 편리합니다. 이를 통해 대량의 정보를 신속하게 암호화하고 해독할 수 있습니다. 동시에, 정보를 보내는 사람과 받는 사람 모두 동일한 키를 소유하므로 보낸 사람에 대한 인증이 불가능합니다. 또한 대칭 알고리즘을 사용하여 작업을 시작하려면 당사자가 비밀 키를 안전하게 교환해야 하는데, 이는 직접 수행하기 쉽지만 통신 수단을 통해 키를 전송해야 하는 경우 매우 어렵습니다.

대칭암호 알고리즘을 이용한 연산방식은 다음과 같은 단계로 구성된다.

당사자들은 데이터의 암호화 및 복호화와 비밀 키의 기본 생성을 제공하는 소프트웨어를 자신의 컴퓨터에 설치합니다.

비밀 키가 생성되어 정보 교환 참가자 간에 배포됩니다. 때로는 일회용 키 목록이 생성됩니다. 이 경우 각 정보 전송 세션마다 고유 키가 사용됩니다. 이 경우 각 세션이 시작될 때 발신자는 수신자에게 이 메시지에 사용한 키의 일련 번호를 알립니다.

보낸 사람은 대칭 암호화 알고리즘을 구현하는 설치된 소프트웨어를 사용하여 정보를 암호화합니다.

암호화된 정보는 통신 채널을 통해 수신자에게 전송됩니다.

수신자는 발신자와 동일한 키를 사용하여 정보를 해독합니다.

다음은 일부 대칭 암호화 알고리즘의 개요입니다.

DES(데이터 암호화 표준). IBM에서 개발하여 1977년부터 널리 사용되었습니다. 현재는 사용된 키 길이가 가능한 모든 키 값을 철저하게 검색하여 공격에 대한 저항을 보장하기에 충분하지 않기 때문에 다소 구식입니다. 이 알고리즘의 발견은 1977년 이후 큰 도약을 이룬 컴퓨터 기술의 급속한 발전 덕분에 가능해졌습니다.

트리플 DES. 이는 서로 다른 키를 사용하여 3번 암호화하기 위해 DES 알고리즘을 사용하는 DES의 고급 버전입니다. DES보다 해킹에 훨씬 더 강합니다.

Rijndael. 알고리즘은 벨기에에서 개발되었습니다. 길이가 128, 192, 256비트인 키로 작동합니다. 현재 암호화 전문가들은 이에 대해 불만을 제기하지 않고 있습니다.

가다랑어. 이 알고리즘은 미국 국가안보국(National Security Agency)에서 만들어 사용했습니다. 키 길이는 80비트입니다. 정보의 암호화 및 암호 해독은 주기적으로 수행됩니다(32주기).

아이디어. 이 알고리즘은 미국과 여러 유럽 국가에서 특허를 받았습니다. 특허 보유자는 Ascom-Tech입니다. 이 알고리즘은 여러 수학적 연산을 적용하여 정보의 순환 처리(8주기)를 사용합니다.

RC4. 이 알고리즘은 대량의 정보를 빠르게 암호화하기 위해 특별히 설계되었습니다. 필요한 정보 보안 수준에 따라 가변 길이의 키를 사용하며 다른 알고리즘보다 훨씬 빠르게 작동합니다. RC4는 소위 스트림 암호를 나타냅니다.

미국 법률(International Traffic in Arms Peguiation Agreement)에 따라 소프트웨어를 포함한 암호화 장치는 무기 시스템으로 분류됩니다.

따라서 암호화를 사용하는 소프트웨어 제품을 수출할 때는 국무부의 허가가 필요합니다. 실제로 암호화 제품의 수출은 NSA(국가안보국)에 의해 통제됩니다. 미국 정부는 미국 국가 안보에 해를 끼칠 수 있다는 이유로 그러한 라이센스 발급을 매우 꺼립니다. 그러나 Hewlett-Packard는 최근 Ver Secure 암호화 제품군을 영국, 독일, 프랑스, ​​덴마크 및 호주로 수출할 수 있는 허가를 받았습니다. 이제 HP는 절대적으로 신뢰할 수 있는 것으로 간주되는 128비트 Triple DES 암호화 표준을 사용하는 이러한 국가에서 시스템을 운영할 수 있습니다.

결론

특정 IP에 대한 선택은 특정 보호 방법의 강점과 약점에 대한 심층 분석을 기반으로 해야 합니다. 일반적으로 특정 보호 시스템의 정당한 선택은 일부 효율성 기준을 기반으로 해야 합니다. 불행하게도 암호화 시스템의 효율성을 평가하는 데 적합한 방법은 아직 개발되지 않았습니다.

그러한 효율성에 대한 가장 간단한 기준은 키를 공개할 확률이나 키 집합의 힘입니다. 본질적으로 이는 암호화 강도와 동일합니다. 수치적으로 추정하려면 모든 키를 시도하여 암호를 푸는 복잡성을 사용할 수도 있습니다.

그러나 이 기준은 암호 시스템에 대한 다른 중요한 요구 사항을 고려하지 않습니다.

* 구조 분석을 기반으로 한 정보의 공개 또는 의미 있는 수정이 불가능합니다.

* 사용된 보안 프로토콜의 완성도,

* 사용되는 핵심 정보의 최소량,

* 구현의 최소 복잡성 (기계 작동 수), 비용,

* 고효율.

물론 이러한 요소를 고려한 일부 통합 지표를 사용하는 것이 바람직합니다.

비용, 노동 강도 및 주요 정보의 양을 고려하기 위해 특정 지표, 즉 지정된 매개 변수와 암호 키 세트의 힘의 비율을 사용할 수 있습니다.

암호화 시스템을 선택하고 평가할 때 전문가의 판단과 시뮬레이션을 사용하는 것이 더 효과적인 경우가 많습니다.

어떤 경우든 선택된 암호화 방법 세트는 편의성, 유연성 및 사용 효율성뿐만 아니라 정보 시스템에서 순환하는 정보를 공격자로부터 안전하게 보호해야 합니다.

타원 함수는 대칭 암호화 방법이기도 합니다.

타원곡선은 17세기부터 수학자들이 집중적으로 연구해 온 수학적 대상이다. N. Koblitz와 V. Miller는 암호화를 위해 타원 곡선의 추가 점 그룹 속성을 사용하는 공개 키 암호화 보안 시스템을 독립적으로 제안했습니다. 이러한 작업은 타원 곡선 알고리즘을 기반으로 한 암호화의 기초를 형성했습니다.

많은 연구자와 개발자가 ECC 알고리즘의 강도를 테스트했습니다. 오늘날 ECC는 더 짧고 빠른 공개키를 제공하여 다양한 분야에 적용할 수 있는 실용적이고 안전한 기술을 제공하고 있습니다. ECC 알고리즘 기반 암호화를 사용하려면 암호화 보조 프로세서 형태의 추가 하드웨어 지원이 필요하지 않습니다. 이 모든 것을 통해 우리는 이제 공개 키 암호화 시스템을 사용하여 저렴한 스마트 카드를 만들 수 있습니다.

서지

1) Chmora A.L. 현대 응용 암호화. 2판, 지워졌습니다. - M .: Helios ARV, 2004. - 256 페이지: 아픈.

2) A.G. 로스토프체프, N.V. Mikhailova 고전 암호의 암호 분석 방법.

3) A. Salomaa 공개 키 암호화.

4) 게라시멘코 V.A. 자동화된 데이터 처리 시스템의 정보 보호 책. 1.-M.: Energoatomizdat. -2004.-400년대.

5) 그레고리 S. 스미스. 데이터 암호화 프로그램 // PC World -2007. - 아니 3.

6) Rostovtsev A. G., Mikhailova N. V. 고전 암호의 암호 분석 방법. -M .: Nauka, 2005. -208 p.

http://www.allbest.ru/에 게시됨

유사한 문서

    대칭 암호화 알고리즘 출현의 역사. 메시지의 비밀 수준을 보장하는 대칭 키의 역할. 데이터 비트를 변환하는 방법으로서의 확산과 혼동. 암호화 알고리즘 DES 및 IDEA의 주요 장점과 단점.

    실험실 작업, 2013년 3월 18일에 추가됨

    데이터 암호화의 특징, 암호화 목적. 과학으로서의 암호화 개념, 주요 작업. 감마법, 대체 및 순열법 분석. 대칭 개인 키 암호화 방법: 장점과 단점

    코스 작업, 2012년 5월 9일에 추가됨

    고전적인 암호화 방법의 소프트웨어 구현 원리. Vigenère 테이블을 사용한 암호화 방법. 암호화 방법을 포함하는 텍스트 편집기 "메모장"을 만듭니다. 암호화 방법을 위한 언어 알고리즘 및 프로그램.

    코스 작업, 2010년 1월 20일에 추가됨

    암호화의 역사. 암호화 알고리즘 비교, 운영 체제에서의 적용. 맞춤형 암호화 분야의 제품 분석. 타원 곡선 암호화를 활성화하거나 비활성화합니다. 해시 함수를 사용합니다. 전자 서명.

    코스 작업, 2016년 9월 18일에 추가됨

    암호의 출현, 암호학 진화의 역사. 암호화 요구에 맞게 자연 텍스트의 특징에 대한 지식을 적용하는 방법입니다. 자연스러움을 판단하는 기준. 대칭 암호화 알고리즘을 구성하는 방법. 공개키 암호화 시스템.

    초록, 2013년 5월 31일에 추가됨

    암호화 및 암호화. 대칭 및 비대칭 암호화 시스템. 기본적인 최신 암호화 방법. 암호화 알고리즘: 대체(대체), 순열, 감마. 결합된 암호화 방법. 소프트웨어 암호화기.

    초록, 2005년 5월 24일에 추가됨

    현대 정보 기술을 기반으로 암호화 프로세스를 자동화합니다. 암호화 보안 조치. 암호화 키 관리. 대칭 및 비대칭 암호화 알고리즘 비교. 정보 암호화 프로그램.

    과정 작업, 2014년 12월 2일에 추가됨

    대칭 암호화 알고리즘(개인 키 암호화)의 역사입니다. 암호화 알고리즘에 대한 표준입니다. 난수 센서, 키 생성. 관심분야: 암호해독. 전자 서명 시스템. 정보의 역변환.

    요약, 2013년 6월 12일에 추가됨

    암호화 정보 보호의 기본 방법. 숫자 키를 사용한 Caesar 암호화 시스템. 이중 순열 알고리즘과 마방진. 엘 가말 암호화 방식. 키에 의한 단일 순열 방법. RSA 데이터 암호화 암호 시스템.

    실험실 작업, 2014년 2월 20일에 추가됨

    정보 보안의 암호화 방법 개발에 대한 간략한 역사입니다. 대칭 키를 사용한 암호화 및 암호화의 본질입니다. 분석 및 추가 암호화 방법에 대한 설명입니다. 공개 키 암호화 방법 및 디지털 인증서.

암호화 알고리즘은 민감한 정보를 권한이 없는 사람이 읽을 수 없도록 변경하는 데 사용됩니다.

최초의 암호는 고대 로마, 고대 이집트, 고대 그리스 시대에 사용되었습니다. 유명한 암호 중 하나는 다음과 같습니다. 카이사르 암호. 이 알고리즘은 다음과 같이 작동했습니다. 각 문자에는 알파벳으로 된 자체 일련 번호가 있으며 $3$ 값을 왼쪽으로 이동했습니다. 오늘날 이러한 알고리즘은 사용 당시 제공했던 보호 기능을 제공하지 않습니다.

오늘날에는 기밀 정보를 안정적으로 보호하는 표준 알고리즘을 포함하여 수많은 암호화 알고리즘이 개발되었습니다.

암호화 알고리즘은 다음과 같이 구분됩니다. 대칭(여기에는 AES, CAST, GOST, DES, Blowfish가 포함됩니다) 및 비대칭(RSA, 엘가말).

대칭 알고리즘

참고 1

대칭 암호화 알고리즘은 동일한 키를 사용하여 정보를 암호화하고 해독합니다.

암호화된 정보를 전송할 때 암호 해독 키도 전송해야 합니다. 이 방식의 약점은 데이터 전송 채널이다. 보호되지 않거나 탭할 수 있는 경우 암호 해독 키가 공격자에게 공개될 수 있습니다.

비대칭 알고리즘

노트 2

비대칭 알고리즘은 두 개의 키(하나는 암호화용, 다른 하나는 복호화용)를 사용합니다.

각 사용자는 공개 키와 개인 키라는 한 쌍의 키를 가지고 있어야 합니다.

암호화 키

정의 1

암호화 키암호화 알고리즘의 가변 매개변수인 무작위 또는 특별히 생성된 비트 시퀀스입니다.

동일한 알고리즘으로 동일한 데이터를 암호화하지만 다른 키를 사용하면 결과가 다릅니다.

암호화 프로그램(WinRAR, Rohos 등)은 사용자가 지정한 비밀번호로 키를 생성합니다.

암호화 키의 길이는 비트 단위로 다양할 수 있습니다. 키 길이가 길어질수록 암호의 이론적 강도도 높아집니다. 실제로 항상 그런 것은 아닙니다.

암호화 알고리즘 강도

노트 3

암호화 알고리즘은 달리 입증될 때까지 강력한 것으로 간주됩니다.

암호화 알고리즘

AES 알고리즘(Rijndael)현재 미국 연방 암호화 표준입니다. 2001년 상무부의 표준으로 승인되었습니다. 이 표준은 블록 크기가 $128$ 비트인 암호 버전으로 간주됩니다. 벨기에에서 1997년에 개발되었습니다. 가능한 키 크기는 $128, $192 및 $256 비트 키입니다.

알고리즘 GOST 28147-8데이터 암호화 및 데이터 보호에 대한 러시아 연방 표준입니다. $1989에 공식 표준이 되었습니다. $1970년대에 개발되었습니다. 소련 KGB 본부에서. $256$ 비트의 키 크기를 사용합니다.

복어 알고리즘복잡한 키 생성 방식을 사용하므로 무차별 대입으로 알고리즘을 공격하는 것이 훨씬 더 어려워집니다. 키가 자주 변경되는 시스템이나 작은 데이터 볼륨을 암호화하는 경우에는 사용하기에 적합하지 않습니다. 이 알고리즘은 대량의 데이터를 암호화해야 하는 시스템에 가장 적합합니다. 1993년에 개발되었으며 $32$에서 $448$ 비트까지의 키 크기를 사용했습니다.

DES 알고리즘 1977년부터 2001년까지 미국 연방 암호화 표준이었습니다. 연방 표준은 1977년에 채택되었으며 2001년에 새로운 표준이 도입된 후 표준으로서의 지위를 잃었습니다. 1972~1975년에 개발되었습니다. IBM Corporation의 연구소. $56$ 비트 키를 사용합니다.

CAST 알고리즘어떤 면에서는 DES 알고리즘과 유사합니다. $128$ 및 $256$ 비트 키를 사용합니다.