본문 바로가기

Tech

[OpenSSL] 시작 - VS2017에 세팅하기

OpenSSL은 잘 알려진 SSL/TLS 라이브러리인데 이 안에 여러가지 암호화 모듈이 내장되어 있다.

앞으로 이 모듈을 사용하기 위한 방법을 한글로 포스팅할 것이다.

 

그전에 먼저 OpenSSL 개발환경을 세팅하기로 하자.

OpenSSL은 소스가 공개되어 있지만 이것을 직접 컴파일해서 사용하는 것은 번거로운 일이다.

그래서 여러 사이트에서 각자만의 OpenSSL prebuild를 제공한다.

 

자기 개발환경, MinGW냐 Visual Studio냐 등등에 따라서 세팅방법이 달라지는데 여기서는 VS2017 기준으로 하겠다.

VS2017의 설치는 너무 기본적인 것이므로 포스팅을 생략한다.

 

 

여기서 다운받자. ==> 추천하는 OpenSSL 라이브러리 다운로드 사이트

 

 

 

 

각 VisualStudio 버전별로 Arch별로 빌드 타입별로 잘 정리되어 있다. 그래서 추천한다.

 

 

 

압축을 풀면 lib뿐만 아니라 include 할 헤더까지 다 포함되어 있다!

압축을 특정 경로에 잘 풀어놓고 그대로 세팅하면 되도록 되어 있다.

 

 

 

 

Visual Studio 에서 임의의 프로젝트를 만들어보자.

프로젝트 타입은 Console Application으로 한다.

 

 

 

프로젝트를 생성한 이유는 비쥬얼 스튜디오가 어느 시점부터 프로젝트별 세팅을 하도록 바뀌었기 때문이다.

예전에는 전역적인 라이브러리 세팅이 가능했었다.

그리고 지금 생성한 프로젝트는 다음포스팅에서 발행할 ECDSA 적용 코드를 검증하는 데 사용할 것이다.

 

 

 

 

 

생성된 프로젝트를 x64 arch로 바꾸고 프로젝트의 속성->VC++ 디렉토리를 세팅한다.

 

 

굵은 글씨를 참고하여 OpenSSL 라이브러리를 세팅하자.

실행 가능 디렉터리는 설정 안해도 된다.

 

 

그리고 설정을 확인하는 코드를 작성하여 프로그램이 돌아가는지 확인해보자.

 

 

 

빨간 라인이 추가된 부분이고 컴파일해보면 빌드 성공 메시지가 나온다.

이것으로 프로젝트 세팅은 완료.

 

 

실행해보면 dll을 못찾는 에러가 난다.

 

현재 프로젝트 속성이 Debug 모드이므로 Debug 실행 폴더에 위와 같이 OpenSSL의 DLL을 넣어준다.

 

이제 에러없이 실행되는 것을 볼 수 있다.

이 상태를 기준으로 다음포스팅에서는 ECDSA의 sign과 verify를 진행해 볼 것이다.

 

 

참고 : 라이브러리와 DLL의 네이밍에 규칙이 있다. MDd 가 붙어있는데 Multithread, DLL, debug 란 뜻이다.

'Tech' 카테고리의 다른 글

[OpenSSL] 인증서 생성과 GitHub 업로드  (0) 2018.08.03
[OpenSSL] ECDSA Sign 과 Verify  (0) 2018.08.02
[기초] 자바 웹프로그래밍에서 오류 쉽게 찾는 법.  (0) 2018.07.31
EPD 와 OTC 방법론  (0) 2018.07.31
코드 정리 #8  (0) 2018.07.29