무선 보안-어떻게 우리가 작동

당신은 아마 이미 유선 동등한 개인 정보 보호(우리)는 스니핑 공격으로부터 무선 연결을 확보하기 위해 회사에 의해 사용됩니다 알고. 당신은 아마 또한 매우 안전하지 않은 것을 들었습니다. 이 2 파트 시리즈의 첫 번째 부분에서 나는 웹의 내부 동작을 설명하고 다음 달에 왜 안전하지 않은지를 설명 할 것입니다.

당신은 아마 이미 알다시피 유선 동등한 개인 정보 보호(웹 사이트)스니핑 공격으로부터 무선 연결을 확보하기 위해 회사에 의해 사용된다. 당신은 아마 또한 매우 안전하지 않은 것을 들었습니다. 이 2 파트 시리즈의 첫 번째 부분에서 나는 웹의 내부 동작을 설명하고 다음 달에 왜 안전하지 않은지를 설명 할 것입니다.

정통 사용자,밥은 매일 자신의 지메일 계정을 확인하기 위해 자신의 노트북을 사용합니다. 그는 자신의 노트북에 무선 카드를 가지고있어 길 건너편의 무선 액세스 지점을 자동으로 감지합니다. 그는 왑에 연결되면 그는 가서 자신의 이메일을 확인할 수 있습니다. 앨리스는 인터넷에 액세스하기 위해 인터넷 서비스 제공 업체를 지불하고 싶지 않은 비열한 사용자입니다. 그러나 그녀는 길 건너편에있는 인터넷 서비스 제공 업체가 누구나 인터넷에 연결하고 액세스 할 수있는 액세스 지점을 가지고 있음을 알고 있습니다. 그녀는 그녀의 노트북에 연결 하 고 곧 인터넷에서 음악을 다운로드. 사용자가 리소스를 사용하기 전에 자신을 인증하고 앨리스를 차단하고 밥을 허용하도록 설계되었습니다. 이 작업을 수행하는 방법을 보자. 정보 패킷이 액세스 포인트 또는 무선 네트워크 카드에서 전송될 때 암호화하는 알고리즘을 사용합니다. 액세스 포인트가 사용자의 네트워크 카드에서 보낸 패킷을 수신하자마자 암호를 해독합니다.

데이터의 각 바이트는 다른 패킷 키를 사용하여 암호화됩니다. 이 해커가이 패킷 키를 해독 관리 않는 경우 유출되는 유일한 정보는 해당 패킷에 포함 된 것을 보장합니다.

실제 암호화 논리는 매우 간단합니다. 일반 텍스트는 무한히 긴 키 스트림을 사용합니다. 이 보안은 키 스트림에서 파생된 패킷 키의 비밀에서 비롯됩니다.

패킷 키는 무엇입니까?

패킷 키는 사전 공유 암호,상태 배열 및 초기화 벡터(4)를 결합하여 형성된다.

사전 공유 암호:전송되는 각 패킷에 대해 모든 사용자가 동일한 사전 공유 암호를 사용합니다.

상태 배열:키 스트림을 구성하기 위해 스크램블 한 다음 사용되는 일련의 숫자입니다.

초기화 벡터(4):4 는 컴퓨터에 의해 생성된 3 바이트 난수이다. 암호문 앞에 추가되거나 암호문에 추가되어 암호문을 해독하기 전에 4 를 떼어내는 수신자에게 보내집니다.

키 스케줄링 알고리즘: 이 상태 배열은 이제 두 번째 단계에서 입력으로 사용됩니다.

의사 랜덤 생성 알고리즘:이 프로세스로부터의 상태 배열은 여기서 최종 키 스트림을 생성하는 데 사용된다. 생성 된 키 스트림의 각 바이트는 해당 일반 텍스트 바이트로 지정되어 원하는 암호 텍스트를 생성합니다.

키 스케줄링 알고리즘

4 는 사전 공유 암호의 상태 배열 및 속성을 사용하여 계산됩니다. 이 작업은 알고리즘에 사용할 인덱스와 동일한 값 배열을 만들어 수행됩니다. 기본적으로 인덱스는 256 입니다. 이 경우 암호는 암호가 아닌 암호가 아닌 암호입니다. 이 값을 사용하여 최종 키 스트림을 생성하는 알고리즘은 아래에 설명되어 있습니다.

초기화:

For i=0 ... index-1
S=i
J=0

스크램블링:

For i=0 ... index-1
J = j + state + K
Swap(state , state)

루프는 먼저 0 에서 인덱스-1 로 실행되어 0 에서 인덱스까지의 값으로 상태 배열을 초기화합니다. 예를 들어. 인덱스=4 인 경우 상태 배열은 0 에서 3 까지의 값으로 채워집니다. 따라서 배열 값은 다음과 같습니다:

s=0 s=1 s=2 s=3 

값 제이 0 으로 설정됩니다. 그런 다음 다른 루프가 시작됩니다. 루프를 통과할 때마다 제이가 계산되고 상태로 유지된 배열 값이 상태로 유지된 값에 대해 스왑됩니다. 의사 난수 생성 알고리즘은 임의의 숫자 시퀀스를 생성하는 알고리즘이다. 이 값은 상태 배열을 기반으로 합니다. 이 방법은 다음과 같습니다.

초기화:

I=0 j=0 index=4 

생성 알고리즘

I=(i+1) mod index
J=(j+state) mod index
Swap(state, state)
Z=state + statemod index]

스트리밍 값은 패킷의 각 바이트에 대한 알고리즘을 반복하여 생성됩니다. 변수 나는 과 제이 0 으로 초기화됩니다. 각 패킷에 대해 제이 값이 계산되고,상태로 유지된 배열 값이 상태로 유지된 값으로 교환됩니다. 그런 다음 출력 지 각 패킷에 대해 계산됩니다. 이 과정의 끝에 우리는 스트림이 있습니다.

그 다음,상대방에게 전송되는 암호문을 생성하기 위해 일반 텍스트로 스트림이 지정된다.

예제

위의 개념을 예제 형식으로 설명해 보겠습니다. 암호화할 일반 텍스트는 테스트입니다. 여기에 사용되는 암호는 6258 입니다. 변수의 초기 값은 다음과 같습니다:

i=0 j=0 password=6258 pass length=4 index=4 

우리가 얻는 알고리즘에 따라:

단계-1

State array: State=0 State=1 State=2 State=3
Password: K=6 K=2 K=5 K=8
j = + K] mod 4 = 6 mod 4 = 2
Swap(State , State) = Swap(0,2)
State=2 State=1 State=0 State=3

단계-2

i=1 j=2
State array: State=2 State=1 State=0 State=3
Password: K=6 K=2 K=5 K=8
j = + K] mod 4 = 5 mod 4 = 1
Swap(State, State) = Swap(1,0)
State=2 State=0 State=1 State=3

단계 3

i=2 j=1
State array: State=2 State=0 State=1 State=3
Password: K=6 K=2 K=5 K=8
j = + K]mod 4 = 7 mod 4 = 3
Swap(State, State) = Swap(1,3)
State=2 State=0 State=3 State=1

단계 4

i=3 j=3
State array: State=2 State=0 State=3 State=1
Password: K=6 K=2 K=5 K=8
j = +K]mod 4 = 12 mod 4 = 0
Swap(State, State) = Swap(1,2)
State=1 State=0 State=3 State=2
Final State Array: State=1 State=0 State=3 State=2

이 절차를 수행하려면 먼저 사용 권한을 할당 받아야 합니다. 절차는 다음과 같습니다:

Initially i=0 j=0
K=6 K=2 K=5 K=8

첫 번째 루프:

State=1 State=0 State=3 State=2
i=1 j=0+State=0+0=0
Swap(State, State) = Swap(0,1)
State=0 State=1 State=3 State=2
z = State + State mod 4] = State = 1
z1 = 00000001

두 번째 루프:

State=0 State=1 State=3 State=2
i=2 j=0+State=3
Swap(State, State) = Swap(3,2)
State=0 State=1 State=2 State=3
z = State + State mod 4] = State = 1
z2 = 00000001

세 번째 루프:

State=0 State=1 State=2 State=3
i=3 j=3+State=6 mod 4 = 2
Swap(State,State) = Swap(3,2)
State=0 State=1 State=3 State=2
z = State + State] mod 4 = State = 1
z3=00000001

네 번째 루프:

State=0 State=1 State=3 State=2
i=4 j=2+State=2+State = 2+State = 2
Swap(State,State) = Swap(State,State) = Swap(0,3)
State=3 State=1 State=0 State=2
z4 = State + State] = State +
State] = State = 2
z4=00000010

출력 지 1-지 4 각 루프의 끝 부분에는 우리의 경우 테스트 인 일반 텍스트의 각 문자의 아스키와 함께 있어야합니다. 따라서 일반 텍스트 테스트의 암호 텍스트는 다음과 같습니다:

T xor z1 = 01010100 xor 00000001 = 01010101 = U
E xor z2 = 01000101 xor 00000001 = 01000100 = D
S xor z3 = 01010011 xor 00000001 = 01010010 = R
T xor z4 = 01010100 xor 00000010 = 01010110 = U

이 단어 검색 게임(일명 단어 찾기)37 개 언어로 퍼즐의 수천이있다!

이 기사는 웹브라우저에서 암호화가 이루어지는 정확한 절차에 대한 소개일 뿐이다. 다음 부분에서 우리는 당신의 마음에 맨 위의 질문을 다룰 것입니다:”왜 우리는 불안합니까? 사용 시 어떤 위험에 노출되나요?”

답글 남기기

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