페이지 선택

시험절차가 익숙치 않는 경우 선행학습으로 NET(pc연습)에서 TCP 통신연습을 참조할 수 있다.

 

TCP SSL/TLS Client 통신연습

TCP Layer 위에 SSL/TLS 보안을 적용하여 기밀이 보장되는 암호화 통신을 연습 한다.

 

 

 

 

 

1.  TCP SSL/TLS Client 명령절차

 

No 절차 명령 및 조작 응답 또는 Event 통지
1 통신모듈을 AP에 접속 AT+WJAP=EDWORKS2,edw12345\r OK
+WEVNET:STATION_UP
2 서버의 IP 주소 확인    예)192.168..0.2
SSL/TLS 보안 설정 및 소켓연결
3 CA Certificate 설정 AT+SSLCERTSET=0\r >
  CA Certificate 입력 (방법은 표 아래 설명참조) 파일지정 또는 입력(아래 설명 참조)  
  인증서 입력완료 문자 전송 (HEX 값) 1A  
4 Client Certificate 설정 AT+SSLCERTSET=1\r >
  Client Certificate 입력 파일지정 또는 입력(아래 설명 참조)  
  인증서 입력완료 문자 전송(HEX 값) 1A OK
5 Client Private Key 설정 AT+SSLCERTSET=2\r >
  Client Private Key 입력 파일지정 또는 입력(아래 설명 참조)  
  암호키 입력완료 문자 전송(HEX 값) 1A OK
       
Newly Add TCP Event 공지 ON AT+CIPEVENT=ON\r  
6  TCP SSL/TLS 서버에, ID=0으로 접속 AT+CIPSTART=0,ssl_client,192.168.0.2,20000\r OK
+CIPEVENT:0,SERVER,CONNECTED
데이터통신
7 커맨드모드에서 데이터 송신 AT+CIPSEND=0,10\r >
  전송할 데이터 입력(1초 이내에 입력) Hi, Server > 12345
OK
Newly Add TCP Event 공지 Off AT+CIPEVENT=OFF\r  
8 데이터모드에서 데이터 송신 AT+CIPSENDRAW\r  
  시리얼포트에서 송신데이터 입력   >Hi, This is transparent mode data
Newly Add

커맨드 모드로 복귀

(0.5초 이내에 +++ 입력)

+++ OK
Newly Add TCP 소켓, ID-0 연결 종료 AT+CIPSTOP=0\r

OK

+CIPEVENT:0,SERVER,CLOSED

 

 

♦ 인증서 입력 방법: Geshe Beacon을 사용하는 경우에는 아래와 같이 입력한다. 인증서 마지막에 “1A”를 입력하는 것을 잊지않도록 한다.

Host MCU에 직접 프로그래밍하거나 기타 Serial 통신 SW를 사용해 인증서를 입력하는 경우 인증서 자체를 Copy하여 문자열로 입력 전송해주도록 한다.

 

 

 

 

 

 

2.  TCP SSL/TLS 서버 실행

 

♦ 윈도우즈 커맨드 창에서 OpenSSL를 이용하여 다음과 같이 서버를 기동한다.

→ OpenSSL/bin>openssl s_server -cert server.crt -key server.key -verify 1 -CAfile ca.crt -accept 443

 

 

 

 

 

 

3.  TCP SSL/TLS 통신 동작확인

 

♦ 명령절차 9번의 실행으로 TCP SSL/TLS 서버에서 아래와 같이 클라이언트가 정상적으로 접속되는 것을 확인할 수 있다.

 

♦ 데이터전송(클라이언트→서버) : 명령절차 10번을 실행한 결과

 

 

 

♦ 데이터전송(서버→클라이언트) : 서버에서 아래와 같이 입력하여 클라이어트로 데이터를 보낸다.

 

 

♦ 데이터전송(서버→클라이언트) : TCP 클라이언트에서 수신한 데이터는 아래와 같다.

 

 

♦ 데이터모드(Transparent)에서도 데이터를 송수신 해보도록 하자.

 

 

 

Viewed Page List