중국시가넷 - 개인 서명 - 파일을 암호화하는 방법을 누가 압니까?
파일을 암호화하는 방법을 누가 압니까?
보안은 컴퓨터 산업의 영원한 주제일 수 있다. 2004 년부터 2005 년까지 산둥 대학 왕소운 교수가 MD5 를 해독해 SHA- 1 의 안전강도를 낮춰 눈길을 끌었다. 그리고 인터넷 기술이 발달하고 보급됨에 따라, 사람들의 인터넷 안전 의식이 갈수록 강해지고 있다. 따라서 암호화와 보안의 기초를 소개하고, 이에 대해 더 정확하게 이해하고 파악하며, 자신의 중요한 데이터를 더욱 안전하게 보호할 수 있도록 하겠습니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 암호화명언)
이 글은 암호학의 기초를 중점적으로 소개한다. 이 기사는 점진적으로 수정되어 완벽하다. 안전에 대한 의문과 의문점이 있는 친구가 있으면 질문을 환영합니다. 우리는 그들이 답을 찾고, 이 문장 내용을 풍부하게 하여 더 많은 사람들을 도울 수 있도록 최선을 다할 것이다. 이 글에서 만약 문제와 착오가 있다면, 여러분의 비판과 시정을 환영합니다.
1. 준비하고 일을 시작하세요.
암호학의 방법은 우리에게서 그리 멀지 않다. 그 응용은 매우 광범위해서, 우리는 매일 컴퓨터를 사용할 때도 자주 사용하지만, 단지 우리가 그다지 중시하지 않을 뿐이다. 예를 들어, Windows 를 시작할 때 암호를 입력해야 합니다. 암호는 암호화되어 시스템에 저장됩니다. 우리가 인터넷에 접속할 때, 일부 사이트는 우리가 보안 연결을 설정해야 하는데, 이것도 비밀번호 알고리즘에 의해 지원된다. IE 브라우저에서 도구를 보세요-> 인터넷 옵션-> 콘텐츠-> 인증, 당신은 암호학이 이미 무대 뒤에서 묵묵히 우리를 위해 일하고 있다는 것을 알게 될 것입니다.
많은 암호화 알고리즘이 있습니다. 대칭 알고리즘, 비대칭 알고리즘, 메시지 요약 알고리즘 등을 포함합니다. 대칭 암호화 알고리즘에는 DES 와 AES 가 포함됩니다. 비대칭 암호화 알고리즘에는 RSA, DSA, 타원 곡선 알고리즘 등이 포함됩니다.
다음으로, 기본 개념을 하나씩 설명하고 주요 암호 보안 기술에 대한 간단한 소개를 하겠습니다.
2. 단순 비밀번호
"천왕거지 도움 우디, 보탑진 하요요 ..." 영화 속 토비들이 신호를 교환하는 장면을 보셨을 겁니다. 사실 토비의 입에서' 검은 말' 이 가장 간단한 비밀번호다. 다만 이 비밀번호는 너무 간단해서 암호학자의 분석을 견디지 못하고 쉽게 해독할 수 있다.
시저 암호
이것은 율리우스 카이사르가 전쟁에서 행군할 때 통신에 사용했던 고대의 암호화 방법으로, 이름을 따서 붙여졌다. (윌리엄 셰익스피어, 율리우스 카이사르, 전쟁, 전쟁, 전쟁, 전쟁, 전쟁, 전쟁, 전쟁) 그 원리는 매우 간단하지만, 실제로는 단일 글자의 대체이다. 간단한 예를 들어보죠. "이것은 카이사르 비밀번호입니다." Caesar 암호로 암호화하면 문자열이 "Vjkuku Ecuct EQFG" 로 바뀝니다. 암호화가 "안전한" 것처럼 보입니다. 하지만 이 난제의 각 글자를 알파벳에서 두 자리 앞으로 이동하는 글자로 바꿔볼 수 있습니다 ... 아, 결과가 나왔어요.
시저 암호의 알파벳 매핑:
A b c d e f g h I ... x y z
중국 영어 학습 네트워크
4.rot 13
ROT 13 은 네트워크에서 흔히 볼 수 있는 간단한' 암호화' 방법입니다. 알파벳의 N-Z 를 A-M 문자로, A-M 문자를 N-Z 문자로 바꿉니다. 그 원리는 카이사르 비밀번호와 매우 비슷하다. 카이사르의 암호는 2 자리, ROT 13 은 13 자리 이동했다. ROT 13 은 일반적으로 e-메일을 직접 식별하고 읽지 않거나 일치하는 프로그램이 일반적인 방식으로 직접 찾지 않도록 하는 간단한 수단입니다.
"V Ybir lbh!" 와 같이 이 문장은 실제로 "나는 너를 사랑해! 클릭합니다 。
ROT 13 서신 대응:
A b c d e f g h I ... x y z
N o p q r s t u v ... k l m.
알겠어요? "암호 해독" 은 다음과 같습니다.
Jrypbxr GB jjj.syntjner.arg
5. 제한된 비밀번호
위에서 논의한' 암호화' 는 간단하다. 컴퓨터의 도움 없이 수동으로 해독할 수 있을 정도로 간단하다. 내 3 살짜리 여동생이 너의 파일 J 를 훔쳐보는 것을 막을 수 있을 정도로 간단하다.
우리는 이러한 알고리즘을 더 복잡하게 만들고, 더 많은 변환, 더 많은 교차 및 확산을 도입할 수 있습니다 ... 이것은 해독하기가 더 어려울 수 있습니다. 그러나 이를 바탕으로 아무리 복잡하더라도' 암호 제한' 범주에서 벗어날 수 없다. "제한된 암호" 란 알고리즘의 보안이 알고리즘의 기밀성을 기반으로 한다는 것입니다. 일단 알고리즘이 누설되면 암호화된 내용은 완전히 안전하지 않다. 앞서 논의한 알고리즘에는 이런 특징이 있습니다.
알고리즘 누출 문제는 이러한 알고리즘의 적용 범위를 크게 제한한다. 기본적으로 지금은 아무도 사용하지 않습니다.
현대 암호학의 시작: 키와 알고리즘의 분리.
제한된 비밀번호가 알고리즘을 누설하면 모든 암호화된 내용이 백주 대낮에 노출된다. 이렇게 중요한 정보를 보호하는 것은 매우 위험하다. 따라서 암호학자들은 알고리즘과 키 분리에 대한 생각을 제시했다. 이것은 암호학의 이정표이다.
이 아이디어는 암호의 보안이 알고리즘이 아닌 키에 달려 있다는 것입니다. 각 메시지는 하나의 키로 암호화됩니다. 키가 유출되지 않는 한 메시지는 안전합니다. 알고리즘이 공개되더라도 메시지의 보안을 위협하지 않습니다. 3DES, AES AES 와 같은 현대의 암호 알고리즘은 모두 이 범주에 속한다. 나중에 이러한 알고리즘에 대해 간단히 설명하겠습니다.
일반적으로 절대적인 정보 보안 개념이 없다는 것을 명확히하십시오.
현대 암호학과 정보 보안 기술을 소개하기 전에 암호학에 언급된 정보 보안은 일반적으로 절대적인 것이 아니라 상대적 범주라는 개념을 명확히 할 필요가 있다.
한 암호학자는 당신의 정보가 절대적으로 안전하기를 원한다면, 당신의 기밀 정보를 금고에 적어서 금고를 용접하고 태평양의 알려지지 않은 구석에 구멍을 파면 절대 안전에 가까워질 것이라고 논평한 적이 있다. (윌리엄 셰익스피어, 햄릿, 안전명언) (윌리엄 셰익스피어, 윈스턴, 안전명언) 그러나 이런 안전은 쓸모가 없다. 정보가 필요한 사람에게 정보를 얻을 수 없기 때문이다. 따라서이 "보안" 은 쓸모가 없습니다. 사실, 이것은 "정보 보안" 이라고 부를 수 없으며 "정보 은닉" 이라고 부르는 것이 더 적절할 수 있습니다.
우리가 말하는 정보 보안은 귀중한 정보 보안입니다. 이런 안전은 상대적으로 안전하다.
그러나' 상대적 안전' 은 안전하지 않다는 뜻은 아니다. 우리가 일상생활에서 사용하는 자물쇠는 사실 비교적 안전하다. 사실 암호 알고리즘의 보안 강도는 일반 잠금보다 몇 배나 높다.
8. 상대 보안
수학자 클로드 E 사농 (Claude E.Shanon) 이 창립한 정보론에서 엄격한 수학적 방법으로 한 번에 하나의 비밀을 제외한 모든 암호 알고리즘이 이론적으로 해독될 수 있다는 결론을 증명했다. 현재와 과거, 알려진 것과 알려지지 않은 것을 포함한 이러한 암호 알고리즘은 아무리 복잡하고 진보해도 강력한 컴퓨터와 충분한 암호문만 있으면 해독될 수 있다.
그러면 문제가 생깁니다. 이런 상황에서 비밀번호는 무슨 소용이 있습니까?
그래서 상대적 안전에 대해 토론해야 한다.
앞서 언급했듯이, 모든 비밀번호는 이론적으로 해독할 수 있다. 그러나, 당신이 충분히 강력한 컴퓨터를 가지고 있을 때만 그것을 해독할 수 있다. 사실 이렇게 강한 컴퓨터는 없을 것 같다. 가장 강력한 컴퓨터로 알고리즘을 해독하는 데 수백 년이 걸린다면, 이론적으로 해독할 수 있다 해도 실제로는 실용적 가치가 있다.
따라서 상대적 보안의 개념을 이렇게 이해할 수 있습니다. 정보가 기밀로 유지되어야 하는 경우 10 년, 해독하는 데 20 년이 걸린다면 이 정보는 안전합니다. 그렇지 않으면 안전하지 않습니다.
현실에서 얻을 수 있는 컴퓨팅 능력은 어느 정도 경제 비용에 비례한다. 따라서 안전도 경제적 관점에서 측정할 수 있다. 정보의 가치가 백만 위안이고 10 만원이 있어야 한 대의 컴퓨터를 해독할 수 있을 정도로 강하면 안전하다. 그러나 정보의 가치가 654.38+00 만원이고 654.38+00 만원으로 충분한 컴퓨팅 능력을 얻을 수 있다면 안전하지 않다.
9. 한 번에 하나의 비밀
위에서 언급한 바와 같이, 한 번에 한 가지 비밀을 제외하고는 다른 암호도 이론적으로 해독할 수 있다. 그럼 한 번에 하나의 비밀이란 무엇일까요? 한 번에 하나의 비밀은 모든 암호화가 다른 키를 사용한다는 것을 의미합니다 (쓸데없는 말, 아무것도 없는 것처럼). 엄밀히 말하면, 다음 조건을 만족하는 비밀번호가 진정한 일일밀이다.
A. 키는 무작위로 생성되며 실제 난수 여야 하며 의사 난수가 아니어야 합니다.
B. 키는 재사용할 수 없습니다.
키의 유효 길이는 암호문의 길이보다 작지 않습니다.
한 번에 하나의 비밀은 가장 안전한 암호화 알고리즘입니다. 일단 쌍방이 안전하게 키를 교환한 후에 정보를 교환하는 과정은 안전하다. 이런 알고리즘은 이미 고도의 기밀이 필요한 상황에 적용되었다. 미국과 구소련의 핫라인과 구소련의 간첩은 모두 한 번에 하나의 비밀스러운 방식으로 암호화되었다고 한다. 슈퍼컴퓨터가 아무리 강력해도 슈퍼컴퓨터가 얼마나 오래 일하든, 얼마나 많은 사람, 어떤 방법, 기술, 얼마나 많은 컴퓨팅 능력을 사용하든, 일회용 암호화된 정보를 해독할 수 없다. 당신이 그 시대로 돌아가지 않는 한, 그가 사용한 암호본 (즉, 키) 을 얻을 수 없다. 구소련 스파이의 비밀 비밀 암호화된 메시지는 영구적인 수수께끼가 될 것이다.
10. 대칭 알고리즘의 개념
대칭 알고리즘이란 암호화 및 암호 해독 프로세스에서 동일한 키를 사용하는 것입니다. DES, 3DES, AES 등의 알고리즘은 모두 대칭 알고리즘입니다. 다음은 이러한 대표적인 알고리즘에 대해 하나씩 설명합니다.
1 1.DES 알고리즘
DES (데이터 암호화 표준) 는 고전적인 대칭 알고리즘입니다. 패킷 길이는 64 비트이고 사용되는 키는 64 비트이며 유효한 키 길이는 56 비트 (패리티용 8 비트) 입니다. 이는 1970 년대 IBM 이 개발한 것으로 정부의 암호화 표준 심사를 거쳐 6 월1976165438+10 월 미국 정부에 의해 채택된 뒤 미국 국가표준국과 미국에 의해 채택됐다
이 기술의 알고리즘은 개방되어 각 업종에 광범위하게 적용된다. DES 알고리즘은 20 년 이상 발표되었습니다. 컴퓨터 기능이 급속히 발전함에 따라 DES 의 56 비트 키 길이가 다소 짧습니다. 지금, 궁핍한 방법으로 그것을 공격하는 것은 가능하다. 하지만 그 밖에도, 우리는 DES 를 해독할 수 있는 효과적인 방법을 찾지 못했다.
DES 알고리즘의 데이터 흐름도는 다음 그림과 같습니다.
12. 트리플 DES
DES 알고리즘은 이제 유효한 키가 56 비트밖에 없기 때문에 충분한 보안을 제공할 수 없습니다. 그래서 나중에 삼중 DES (또는 3DES) 를 제시했는데, 이 방법의 강도는 1 12 비트와 비슷하다.
이 방법은 두 개의 키를 사용하여 일반 텍스트에 대해 세 가지 작업을 수행합니다. 두 개의 키를 K 1 및 K2 로 설정합니다. 알고리즘 단계는 다음과 같습니다.
1. 키 K 1 을 사용하는 DES 암호화.
2. K2 를 사용하여 단계 1 의 결과를 해독합니다.
3. 키 K 1 을 사용하여 2 단계의 결과를 DES 암호화합니다.
13.AES 알고리즘
1997 1 10 월, NIST (national standards and technology institute) 가 새로운 암호화 알고리즘 모집을 발표했습니다. 2000 년 6 월 2 일, 10, 벨기에 디자이너 존 다이먼과 빈센트 리먼이 디자인한 Rijndael 알고리즘이 결국 승리를 거두었습니다. 뛰어난 성능과 공격력으로 차세대 암호화 표준인 AES (고급 암호화 표준) 가 되었습니다.
Rijndael 암호화:
Rijndael 은 상태에 대한 반복 전환을 포함하는 키 반복 그룹 암호입니다. 휠 수 Nr 의 값은 그룹화 및 키 길이에 따라 다릅니다. AES 의 경우 키 길이가 128 비트이면 NR =10; 을 눌러 섹션을 인쇄할 수도 있습니다 키 길이가 192 비트인 경우 NR =12; 을 눌러 섹션을 인쇄할 수도 있습니다 키 길이가 256 비트인 경우 Nr = 14 입니다.
Rijndael 알고리즘의 암호화 프로세스는 그림 1 에 나와 있습니다. 여기에는 AddRoundKey, Nr- 1 라운드 변환, FinalRound 변환 등의 초기 키 추가가 포함됩니다.
Round 변환은 bytes, ShiftRows, MixColumns, AddRoundKey 의 네 단계로 구성됩니다. 마지막 라운드는 이전 Nr-1 회전과 약간 다르며 MixColumns 단계는 생략되었습니다.
단계 하위 바이트는 Rijndael 알고리즘의 유일한 비선형 변환입니다.
Step ShiftRows 는 서로 다른 오프셋에 따라 시프트 상태의 행을 순환하는 바이트 회전입니다. I 행 j 비트의 바이트를 위치 (j -Ci)mod Nb 로 이동합니다. 이동 오프셋 Ci 의 값은 Nb 의 값에 따라 달라집니다. 여기서 Nb 는 패킷 길이 /32 이고 AES 의 경우 NB 는 고정 길이 4 입니다.
Step MixColumns 는 상태의 모든 열에서 작동하는 대체 알고리즘입니다.
키 추가 AddRoundKey 는 순환 키를 사용하여 상태를 xor 연산합니다. 순환 키는 키 배열 체계 [1] 를 통해 암호화 키에서 내보내집니다. 순환 키의 길이는 패킷 길이와 같습니다.
Rijndael 암호 해독:
Rijndael 암호 해독 알고리즘에는 두 가지 형태가 있습니다. 하나는 steps InsubBytes, InvShiftRows, InvMixColumns 및 AddRoundKey 의 역연산을 사용하여 데이터를 직접 해독하는 직접 암호 해독 알고리즘입니다.
다른 하나는 그림 2 와 같이 구현 원리인 동등한 암호 해독 알고리즘입니다. 동등한 암호 해독 알고리즘은 좋은 작업 순서를 효과적으로 실현하는 데 도움이 된다.
14. 비대칭 알고리즘의 개념
비대칭 알고리즘이란 암호화 및 암호 해독이 동일한 키를 사용하지 않는다는 것입니다.
비대칭 알고리즘의 키는 일반적으로 "공개 키" 와 "개인 키" (또는 "공개 키" 와 "개인 키") 라는 두 부분으로 나뉩니다. 공개 키와 개인 키 사이에는 수학적 관계가 있으므로 공개 키로 암호화된 데이터는 해당 개인 키로만 해독할 수 있고 개인 키로 암호화된 데이터는 해당 공개 키로만 해독할 수 있습니다. 그러나 공개 키에서 개인 키를 도출하는 것은 매우 어렵다. (이론적으로는 추론할 수 있지만 실제로는 이렇게 강력한 컴퓨팅 능력을 찾을 수 없다.)
RSA, DSA 및 기타 알고리즘은 비대칭 알고리즘에 속합니다.
15.RSA 알고리즘
RSA 알고리즘은 암호화와 디지털 서명에 모두 사용할 수 있는 최초의 알고리즘이며 쉽게 이해하고 조작할 수 있습니다. RSA 는 가장 널리 연구되는 공개 키 알고리즘입니다. 1978 에서 제기된 지 거의 30 년이 되었다. 각종 공격의 시련을 거쳐 점차 사람들에게 받아들여졌다. 현재 최고의 공개 키 체계 중 하나로 널리 알려져 있습니다. 일반적으로 RSA 해독의 난이도는 많은 수의 분해의 난이도와 같다고 생각한다. 이 알고리즘은 론 리스터, 아디 사모어, 레너드 아드먼이라는 세 명의 발명가의 이름을 따서 명명되었다.
RSA 알고리즘의 원리:
1, 키 쌍 생성:
두 개의 큰 소수 p 와 q 계산 선택: n = p * q
그런 다음 e 와 (p- 1) * (q- 1) 가 서로 소수가 되도록 암호화 키 e 를 임의로 선택합니다. 마지막으로 다음을 사용합니다
유클리드 알고리즘은 다음 요구 사항을 충족하기 위해 암호 해독 키 d 를 계산합니다
E * d =1(mod (p-1) * (q-1))
여기서 n 과 d 는 상호 물질입니다. 디지털 e 와 n 은 공개 키이고 d 는 개인 키입니다. P 와 Q 두 개의 소수는 더 이상 필요하지 않습니다. 버려야 합니다. 그래서 아무도 모릅니다.
2. 암호화
정보 M (바이너리 표현) 을 암호화할 때 먼저 M 을 길이가 같은 블록 m 1, m2, ..., mi, 블록 길이 S 로 나눕니다. 여기서 2 s
Ci = mi^e (현대)
3.[ 통신] 암호 해독
암호 해독시 다음 계산이 수행됩니다.
Mi = ci^d (현대)
16. 해시 알고리즘
해시 알고리즘 (단방향 해시 함수, 해시 함수, 해시 알고리즘, 해시 알고리즘 또는 메시지 다이제스트 알고리즘이라고도 함) 입니다. 데이터에 단방향 수학 함수를 적용하여 모든 길이의 데이터를 고정 길이의 되돌릴 수 없는 데이터로 변환합니다. 이 데이터 부분을 메시지 요약이라고도 합니다. 예를 들어 해시 알고리즘을 몇 메가바이트 파일에 적용하면 128 비트 메시지 요약을 얻을 수 있습니다. 메시지 요약은 원본 데이터의 특성을 나타냅니다. 원본 데이터가 변경되면 재생성된 메시지 다이제스트도 변경되며, 원본 데이터가 거의 변경되지 않아도 메시지 다이제스트가 크게 변경될 수 있습니다. 따라서 메시지 다이제스트 알고리즘은 데이터가 변조되었는지 여부를 민감하게 감지할 수 있습니다. 메시지 다이제스트 알고리즘은 다른 알고리즘과 결합하여 데이터 무결성을 보호하는 데 사용할 수 있습니다.
좋은 단방향 해시 함수는 다음과 같은 특징을 가져야 합니다.
단방향 계산 1): m 과 h 를 지정하면 H = H (m) 를 쉽게 구할 수 있지만, 반대로 h 와 h 를 지정하면 M = H- 1 (h) 를 계산할 수 없습니다
2) 약한 충돌 자유도: 주어진 m, 다른 정보 M' 을 찾고 h(M')= h(M) 를 만족시키는 것은 계산에서 불가능합니다.
3) 강한 충돌 자유도: 다른 정보 M 과 M' 을 찾으려면 h(M')= h(M) 를 만족시키는 것은 계산에서 불가능하다.
단방향 해시 함수는 해시 함수를 사용하여 데이터의 해시 값을 생성하고 저장한 다음 나중에 매번 동일한 해시 함수를 사용하여 데이터를 해시하는 방식으로 사용됩니다. 얻은 값이 저장된 해시 값과 같으면 데이터가 수정되지 않았거나 (데이터 무결성 확인) 해시가 두 번 있는 원본 데이터가 동일한 것으로 간주됩니다 (암호 확인).
일반적인 해시 함수로는 MD5, SHA- 1, HMAC, 고스트 등이 있습니다. 단방향 해시 함수는 데이터 무결성 확인, 암호 테이블 암호화, 디지털 서명, 인증 등 암호화만 필요하고 암호 해독은 필요 없는 경우에 주로 사용됩니다.
17. MD5 및 sha 정보-1등
2004 년 산둥 대학의 왕소운 교수가 MD5 알고리즘을 해독해 암호학계에 큰 파장을 일으켰다.
MD5 의 전체 이름은 Message-Digest Algorithm 5 로, MIT 컴퓨터과학연구소와 RSA 데이터안전회사의 로널드 L 리웨스트가 90 년대 초 개발한 MD2, MD3, MD4 가 개발했다.
2004 년 8 월 17 일 미국 캘리포니아 산타바바라에서 열린 Crypto'2004 는 해시 함수에 대한 세 가지 특집 보고서를 마련했다. 세계적으로 유명한 암호학자 Eli Biham 과 Antoine Joux 가 SHA- 1 을 분석하고 SHA-0 의 충돌을 준 후, 산둥 대학 왕소운 교수는 MD5 디코딩, HAVAL- 128 왕소운 교수의 보고서는 청중들 사이에서 센세이션을 불러일으켜 참석 전문가들의 칭찬을 받았다.
얼마 지나지 않아 암호학자 렌스텔라는 왕소운에서 제공한 MD5 충돌을 이용하여 X.509 표준에 맞는 디지털 인증서를 위조하여 MD5 의 디코딩이 이론적 디코딩의 결과일 뿐만 아니라 실제 공격으로 이어질 수 있다는 것을 보여 주었습니다. MD5 의 탈퇴가 임박했습니다.
보안 해시 알고리즘 1(SHA- 1) 은 NSA 에서 설계하고 NIST 에서 FIPS 를 해시 데이터의 표준으로 포함합니다. 160 비트의 해시를 생성할 수 있습니다. SHA- 1 은 디지털 서명을 만드는 데 일반적으로 사용되는 단방향 해시 알고리즘입니다.
MD5 가 왕소운으로 대표되는 중국 전문가들에 의해 해독된 후에도 세계암호학계는 여전히 SHA- 1 이 안전하다고 생각한다. 2005 년 2 월 7 일, 미국 국립표준기술연구소는 SHA- 1 이 깨지지 않았고, 곧 무너질 것이라고 의심할 충분한 이유도 없다고 성명을 발표했다. 불과 일주일 후, 왕소운은 SHA- 1 알고리즘이 한 쌍의 충돌을 찾는 복잡성은 암호학자들이 과거에 생각했던 2.80 이 아니라 2.69 라고 발표했다.
어떻게 이 결과를 이해할 수 있을까요? 많은 보도에서 산둥 대학 홈페이지를 포함해 SHA 1 이 끊어졌다고 합니다. 금이 간 등등. 작가는 이런 견해에 대해 유보의견을 가지고 있다. 왕소운 교수의 논문을 인용하다.
"SHA0 의 경우 이 공격은 매우 효과적이며 2 39 회 이하의 해시 연산에서 실제 충돌을 찾을 수 있습니다. 우리는 또한 SHA 1 약화를 58 단계로 공격하여 2 33 회 이하의 해시 연산에서 실제 충돌을 발견했다. "
"SHA0 및 58 단계 SHA 1 은 80 단계 전체 SHA 1 의 간소화된 버전으로 새로운 접근 방식의 효율성을 검증합니다. 또한 우리의 분석에 따르면 SHA 1 70 단계로 줄어든 충돌 복잡성은 2 50 번의 해시 연산입니다. 이 추정치에 따르면 현재 수퍼컴퓨터에서 70 단계 SHA 1 의 실제 충돌을 찾을 것으로 예상됩니다. "
따라서 엄밀히 말하면, 이 결과는 깨진 SHA 1 계산을 2000 회 줄였다는 것을 이해해야 한다. 경우에 따라 SHA 1 이 안전하지 않은 가장자리에 있는 것 같습니다.
MD5 가 무너졌습니다. SHA 1 덜 안전합니다. 이제 SHA-256 과 SHA-5 12 와 같은 알고리즘을 사용할 수 있는 것 같습니다. 암호학자들도 새로운 해시 알고리즘을 연구하고 있다.
18. 디지털 이름 인식
암호학은 정보의 암호화 및 암호 해독을 제공할 뿐만 아니라, 정보 출처를 식별하고, 정보의 무결성과 부인할 수 없는 기능을 제공하며, 이 세 가지 기능은 모두 디지털 서명 기술과 결합되어 구현됩니다.
간단히 말해서, 디지털 서명의 원리는 비대칭 알고리즘의 개인 키로 암호화된 내용은 해당 공개 키로만 해독할 수 있다는 것을 이해할 수 있다. 개인키는 공개되지 않습니다. 따라서 누군가의 공개 키로 정보를 해독할 수 있다면 그 사람의 개인 키로 암호화해야 합니다. 그것은 진짜 서명처럼 위조하기 어렵다.
실제 응용 프로그램에서 디지털 서명 프로세스는 일반적으로 다음과 같이 수행됩니다.
전송할 일반 텍스트를 함수 연산을 통해 메시지 요약으로 변환하고 (다른 일반 텍스트는 다른 메시지 요약에 해당), 메시지 요약은 개인 키로 암호화된 후 일반 텍스트와 함께 수신자에게 전송됩니다. 수신자는 발신자의 공개 키로 메시지 요약을 해독한 다음 수락된 일반 텍스트로 생성된 새 메시지 요약을 발신자의 메시지 요약과 비교합니다. 비교 결과는 일반 텍스트가 예상 발신자에서 나온 것이며 해시가 변경되지 않았음을 일관되게 보여 줍니다. 일관성이 없는 경우 일반 텍스트가 변조되었거나 예상 발신자가 아님을 나타냅니다.
19. 디지털 인증서
온라인 전자 거래 및 지불의 안전을 보장하고 거래 및 지불 과정에서 사기를 방지하기 위해서는 인터넷에 신뢰 메커니즘을 구축해야 합니다. 이를 위해서는 전자상거래에 참여하는 매매 쌍방이 모두 합법적인 신분을 가지고 있어야 하며, 인터넷에서 효과적이고 정확한 검증을 받을 수 있어야 한다. 디지털 인증서는 권위 있는 전자 문서이다. 인터넷에서 자신의 신분을 확인할 수 있는 방법을 제공합니다. 일상생활에서 운전자의 운전면허증이나 신분증과 비슷합니다. 그것은 권위 기관인 ——CA 인증서 인증 센터에서 발급한 것으로, 사람들이 인터넷 통신에서 서로를 식별하는 데 사용할 수 있다. 물론 디지털 인증서 인증 과정에서 CA 는 권위 있고 공정하며 신뢰할 수 있는 제 3 자로서 중요한 역할을 합니다.
디지털 인증서를 발급하는 과정은 일반적으로 사용자가 먼저 자신의 키 쌍을 생성하고 공개 키와 일부 개인 ID 정보를 인증 센터로 전송하는 프로세스입니다. 인증이 완료되면 인증 센터는 요청이 실제로 사용자에 의해 전송되었는지 확인하는 데 필요한 몇 가지 단계를 수행합니다. 그런 다음 인증 센터는 사용자의 개인 정보, 공개 키 정보 및 인증 센터의 서명 정보가 포함된 디지털 인증서를 사용자에게 발급합니다. 사용자는 자신의 디지털 인증서를 사용하여 다양한 관련 활동을 수행할 수 있습니다. 디지털 인증서는 독립 인증 기관에서 발급합니다. 디지털 인증서는 다르며 각 인증서는 서로 다른 수준의 신뢰성을 제공할 수 있습니다. 인증 기관으로부터 자신의 디지털 인증서를 받을 수 있습니다.
인터넷의 보급에 따라 각종 전자상거래 활동과 전자정무활동이 급속히 발전하면서 디지털 인증서는 이미 각 분야에 광범위하게 적용되었다. 현재 보안 이메일 전송, 보안 웹 사이트 액세스, 온라인 입찰, 온라인 서명, 온라인 주문, 보안 온라인 파일 전송, 온라인 지불, 온라인 세금, 온라인 주식 거래, 온라인 쇼핑 및 온라인 통관 등이 주로 포함됩니다.
20. 캐나다
CA 는 Certification Authority 의 약어입니다. CA 센터는 디지털 인증서 인증 센터라고도 합니다. CA 센터는 전자 거래에서 신뢰할 수 있는 제 3 자로서 전자 상거래 환경의 모든 개체에 디지털 인증서를 발급하여 신원의 신뢰성을 증명하고 거래의 인증서를 검사 및 관리합니다. 디지털 인증서 사용자는 자신의 공개 키/개인 키 쌍을 가지고 있습니다. 인증서에는 인증서 주체의 ID 정보, 공개 키 데이터, 인증 기관의 이름 등이 포함됩니다. 인증 기관은 인증서 주체가 합법적으로 등록된 엔티티임을 확인한 후 위 정보에 디지털 서명을 하여 인증서를 형성합니다. 공개 키 인증서 시스템에서 공개 키 사용자가 이미 CA 에 등록된 다른 사용자의 공개 키가 필요한 경우 해당 사용자에게 직접 인증서를 요청하고 CA 의 공개 키로 암호를 해독하여 인증된 공개 키를 얻을 수 있습니다. 인증서에 CA 의 서명 구현 인증이 있기 때문에 공격자는 CA 의 서명 키가 없으므로 합법적인 인증서를 위조하여 공개 키 인증을 달성하기 어렵습니다. 디지털 인증서 인증 센터는 전체 온라인 전자 거래 보안의 핵심 부분이며 전자 거래 신뢰의 기초입니다. 그는 모든 법적 등록 사용자의 신뢰를 받는 권위 있고 신뢰할 수 있는 공정한 제 3 자 기관이어야 합니다.
CA 의 핵심 기능은 디지털 인증서를 게시하고 관리하는 것입니다. 일반적으로 CA 인증 센터의 기능은 주로 인증서 발급, 인증서 업데이트, 인증서 취소 및 인증서 인증입니다. 구체적인 설명은 다음과 같습니다.
(1) 사용자 디지털 인증서 확인 요청을 받습니다.
(2) 사용자의 디지털 인증서 신청, 즉 인증서 승인을 수락할지 여부를 결정합니다.
(3) 신청자에게 디지털 인증서를 발급 (또는 거부) 합니다.
(4) 사용자의 디지털 인증서 업데이트 요청을 수신 및 처리합니다.
(5) 사용자 디지털 인증서 수신 조회 및 취소
(6) 인증서의 유효 기간.
(7) 디지털 인증서 보관.
(8) 키 아카이빙.
(9) 과거 데이터 아카이빙.
2 1. 이메일 암호화 프로그램
PGP 는 상당히 좋은 프라이버시의 약자이다. PGP 는 원래 Phil Zimmermann 이 199 1 에 쓴 프로그램의 이름이었다. 이 프로그램은 나중에 MIT, ViaCrypt, PGP Inc 에서 유지 관리하고 발표했습니다. 현재 PGP 는 인터넷 연합사 (NAI) 에서 상용 소프트웨어로 판매하고 있습니다. 또한 PGP 는 네트워크 표준의 이름 (RFC 2440: 개방형 PGP 메시지 형식) 입니다. 여기서는 RFC 표준인 PGP 에 대해 주로 논의합니다.
PGP 는 e-메일 및 기타 정보를 안전하게 보호하는 RSA 및 기타 암호화 알고리즘을 기반으로 하는 시스템입니다. 권한 없는 사람이 읽을 수 없도록 이메일의 기밀성을 유지하는 데 사용할 수 있으며, 수신자가 자신이 보낸 것인지 확인할 수 있도록 이메일에 디지털 서명을 할 수도 있습니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 남녀명언) 그것은 당신이 만난 적이 없는 사람과 안전하게 교류할 수 있게 해 주며, 어떤 비밀 채널도 사전에 키를 전달할 필요가 없다.
암호화 방법은 앞서 논의한 알고리즘을 사용합니다. 키 관리는 다른 시스템과 다릅니다.
성숙한 암호화 시스템에는 검증된 키 관리 메커니즘이 있어야 합니다. 공개 키 시스템은 기존 암호화 시스템 키 배포 프로세스의 기밀성 단점을 해결하기 위해 만들어졌습니다. 예를 들어 사이버 해커가 자주 사용하는 수단 중 하나는' 감청' 이다. 인터넷을 통해 키를 전송하면 너무 위험하다. PGP 의 경우 공개 키가 공개되어야 하므로 차단 방지 문제는 없습니다. 그러나 공개 키 게시에는 공개 키 변조와 같은 보안 문제가 남아 있는데, 이는 공개 키 암호 시스템의 가장 큰 취약점일 수 있습니다. 사용자는 사용자의 공개 키가 편지를 받아야 하는 사람에게 속하는지 확인해야 합니다.
예를 들어 이 문제를 설명하겠습니다. 사용자 A 와 사용자 B 의 통신을 예로 들어 보겠습니다. 이제 사용자 A 가 사용자 B 에게 편지를 보내려면 먼저 사용자 A 가 사용자 B 의 공개 키를 받아야 한다고 가정합니다. 사용자 A 는 BBS 에서 다운로드하거나 다른 방법으로 받아서 암호화된 편지를 B 로 보냈지만, 사용자 A 와 B 는 다른 사용자 C 가 BBS 나 네트워크에 잠입했다는 것을 모르고 사용자 B 의 공개 키를 가로채거나 가로채고, 자신의 PGP 시스템에서 사용자 B 의 공개 키를 사용자 B 의 이름으로 생성된 키 쌍의 공개 키로 교체하고, BBS 에 배치하거나 직접 사용자 B 로 대체한' 공개 키' 를 전송합니다. 실제로 사용자 B 로 위장한 사용자 C 가 생성한 또 다른 공개 키입니다. 아무도 의심하지 않지만, 이렇게 하면 사용자 B 가 사용자 A 의 편지를 받으면 자신의 개인 키로 암호를 해독할 수 없게 됩니다. 설상가상으로 사용자 C 는 사용자 B 의 서명을 위조하여 사용자 A 또는 다른 사람에게 편지를 보낼 수 있습니다. 사용자 A 의 공개 키는 위조되고 사용자 A 는 사용자 B 의 편지라고 생각하기 때문입니다.
이를 방지하는 가장 좋은 방법은 다른 사람에게 공개 키를 변조할 수 있는 기회를 피하는 것이지만, 그렇게 하는 것은 매우 어렵다. 한 가지 방법은 사용자 B 로부터 직접 공개 키를 얻는 것이지만, 그가 멀리 떨어져 있거나 제때에 연락할 수 없는 상황에서는 불가능하다.
그러나 PGP 는 공개 키 도입 메커니즘을 제시하여 이 문제를 해결했다. 아이디어는 다음과 같습니다. 사용자 A 와 사용자 B 가 친구 D 를 가지고 있고 D 가 그의 손에 있는 B 의 공개 키가 정확하다는 것을 알고 있다면. 이렇게 하면 D 는 사용자 A 와 사용자 B 사이의 공증인이 되고, 사용자 B 는 다른 사람이 그의 공개 키를 조작하지 못하도록 D 가 서명한 공개 키를 BBS 에 업로드하여 사용자가 얻을 수 있도록 한다. 사용자 A 가 사용자 B 의 공개 키를 얻으려면 먼저 D 의 공개 키를 가져와서 BBS 를 해독하거나 인터넷에서 D 가 서명한 B 의 공개 키를 얻어야 합니다. 이는 이중 보험과 같습니다. BBS 관리자라도 사용자가 발견하지 않고 변조하는 것은 일반적으로 불가능합니다. 공용 채널에서 공개 키를 전송하는 안전한 방법입니다.
말하자면, 어떤 사람들은 단지 하나의 서명으로 공증하는 것이 좀 작다고 생각할지도 모른다. 물론, PGP 는 이를 고려하여 다른 사람이 서명한 자신의 공개 키를 수집하여 공공장소에 전송하여 대부분의 사람들이 그 중 하나 이상을 알 수 있도록 함으로써 사용자의 공개 키를 간접적으로 인증합니다. 같은 사용자가 공개 키에 서명한 후 해당 사용자를 통해 다른 친구의 인증을 받을 수 있도록 친구에게 다시 보내야 합니다. 좀 재미있어요. 현실 사회에서 사람과 사람 사이의 교류처럼. PGP 는 친구의 소개에 따라 사용자가 받은 공개 키를 사용자가 참조하고 자신의 신뢰 수준을 결정할 수 있도록 신뢰 수준으로 자동 나눕니다. 또한 인증 전송에 따라 감소하는 여러 수준의 공개 키를 전달할 수 있는 기능을 누군가에게 지정할 수 있습니다.
D 또는 다른 서명된 친구의 공개 키를 안전하게 얻으려면 어떻게 해야 합니까? 사용자 A 가 받은 D 또는 다른 서명된 친구의 공개 키도 가짜일 수 있지만, 이를 위해서는 이 사용자 C 가 여러분 세 명 또는 많은 사람들과 잘 알고 있어야 합니다. 이 가능성은 크지 않으며 장기 계획이 필요합니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 친구명언) 물론, 이 점을 꼭 추궁해야 한다면, 그것은 모두가 보편적으로 신뢰하는 조직이 이 역할을 맡는 것이다. 그는 인증 기관이라고 불리며, 그가 서명한 모든 공개 키는 사실로 간주되기 때문에 모든 사람은 그의 공개 키만 있으면 된다. 이 사람의 공개 키를 인증하는 것은 매우 편리하다. 그가 이런 서비스를 광범위하게 제공하기 때문에 그의 공개 키를 위조하는 것은 매우 어렵다. 그의 공개 키가 널리 퍼지기 때문이다. 이러한 "권한" 은 비개인 통제 조직이나 정부 기관에 적용됩니다. 이것이 바로 앞서 논의한 CA 입니다.
22. 디지털 봉투
디지털 봉투는 대칭 알고리즘, 비대칭 알고리즘, 메시지 다이제스트 알고리즘 및 디지털 서명을 결합한 메시지 암호화 메커니즘입니다. 왜 이런 메커니즘을 도입해야 하는가? 그 이유는 다음과 같습니다.
1, 대칭 알고리즘이 비교적 빠르며, 일반적으로 동등한 안전 강도의 비대칭 알고리즘보다 3 단계 정도 빠릅니다. 그러나 대칭 알고리즘은 통신을 하기 전에 보안 채널을 통해 키를 교환해야 합니다 (또는 키를 협상하거나 사전에 키를 합의해야 함).
2. 비대칭 알고리즘은 속도가 느리지만 통신 쌍방이 사전에 키에 동의할 필요가 없다는 장점이 있습니다.
- 관련 기사
- China Tobacco의 신청 확약서는 자필로 작성할 수 없나요?
- 유림의 별명은 무엇입니까?
- 중국 인민보험회사는 전자보증서에 서명할 필요가 없다.
- 대출 계약서에 서명할 때 주의해야 할 8 시
- 대나무 장대 짚신이 말보다 가벼우니, 누가 두려워하겠는가, 한차례의 연우가 한평생 있을 것이다. 미안, 무슨 뜻이야
- 조용한 성격 서명과 영어 번역이 필요합니다.
- 내 고객을 위해 크리스마스 카드에 서명해야 합니까?
- 위킨스가 NBA 에서 가장 특별한 장원수라고 말하는 이유는 무엇입니까?
- Win8 드라이버 강제 서명을 비활성화하려면 어떻게 합니까? 그림과 같이 내 컴퓨터에는 이 옵션이 없습니다. 너하고 달라?
- 유명인에 대한 짧은 성어 이야기.