<57696E646F7773C8AFB0E6BFA1BCADC0C7204F70656E53534CBCB3C4A12E687770>

Similar documents
Windows + Cygwin + NS-2

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc

ISP and CodeVisionAVR C Compiler.hwp

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

슬라이드 1

untitled

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

!K_InDesginCS_NFH

PowerPoint 프레젠테이션

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

슬라이드 1

슬라이드 1

윈도우시스템프로그래밍

Install stm32cubemx and st-link utility

슬라이드 1

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

BMP 파일 처리

Windows 8에서 BioStar 1 설치하기

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

Microsoft PowerPoint - Install Guide[ ].ppt [호환 모드]

Microsoft PowerPoint - chap12-고급기능.pptx

JDK이클립스

Microsoft PowerPoint - [Practice #1] APM InstalI.ppt

Chapter 1

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

/chroot/lib/ /chroot/etc/

슬라이드 1

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63132B0AD20B5BFC0FB20B8DEB8F0B8AEC7D2B4E7>

리눅스설치가이드 3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2.

5-03-Â÷¼¼´ëÀ¥Iš

ICAS CADWorx SPLM License 평가판설치가이드

<41736D6C6F D20B9AEBCADBEE7BDC42E687770>

Open GL

<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4>

윈도우시스템프로그래밍

금오공대 컴퓨터공학전공 강의자료

WebPACK 및 ModelSim 사용법.hwp

Microsoft PowerPoint - lecture2-opengl.ppt [호환 모드]

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

Microsoft PowerPoint - chap08-1 [호환 모드]

1. 도구개요 CppUnit Testing 소개 CppUnit 는 C++ 용 testing Framework 로 Java 의 JUnit 을 C++ 로구현 C++ 언어에서사용할수있도록개발된 Open Source 프로젝트로, source code 의특정 Module 이의도

Microsoft PowerPoint - additional01.ppt [호환 모드]

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3

Office 365 사용자 가이드

PowerPoint 프레젠테이션

KARAAUTO_4¿ù.qxd-ÀÌÆå.ps, page Normalize

Microsoft PowerPoint - [2009] 02.pptx

슬라이드 1

Microsoft PowerPoint - 08-C-App-19-Quick-Preprocessor

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

제목

기존에 Windchill Program 이 설치된 Home Directory 를 선택해준다. 프로그램설치후설치내역을확인해보면 Adobe Acrobat 6.0 Support 내역을확인할수 있다.

텀블러514

CODESYS 런타임 설치과정

Mango-AM335x LCD Type 커널 Module Parameter에서 변경하기

< 목차 > Ⅰ. 개요 3 Ⅱ. 실시간스팸차단리스트 (RBL) ( 간편설정 ) 4 1. 메일서버 (Exchange Server 2007) 설정변경 4 2. 스팸차단테스트 10

untitled

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

슬라이드 1

2014밝고고운동요부르기-수정3

2005프로그램표지

Contributors: Myung Su Seok and SeokJae Yoo Last Update: 09/25/ Introduction 2015년 8월현재전자기학분야에서가장많이쓰이고있는 simulation software는다음과같은알고리즘을사용하고있다.

Microsoft Word - CooCox

02 C h a p t e r Java

PowerPoint 프레젠테이션

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070>


Snort Install Manual Ad2m VMware libnet tar.gz DebianOS libpcap tar.gz Putty snort tar.gz WinSCP snort rules 1. 첫번째로네트워크설정 1) ifconf

chapter1,2.doc

C 언어 프로그래밊 과제 풀이

4S 1차년도 평가 발표자료

Microsoft Word - Armjtag_문서1.doc

Microsoft PowerPoint - chap13-입출력라이브러리.pptx

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

Title Here

SPECweb Install

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

Microsoft PowerPoint - chap10-함수의활용.pptx

마스터노드세팅하기 마스터노드를세팅하는것은리눅스와블록체인기술에대한기본적인이해가필요합니다. 아래설명을충분히이해하신후실행하시길바랍니다. 또한, 잘못된설치로인한지갑분실사고가발생하지않도록주의하시기바랍니다. 시작하기전에본가이드는마스터노드를처음세팅한다고가정하고작성되었습니다. 필요한

03_queue

Studuino소프트웨어 설치

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

untitled

표준프레임워크 Nexus 및 CI 환경구축가이드 Version 3.8 Page 1

Chap 6: Graphs

Microsoft Word - building the win32 shellcode 01.doc

PowerPoint 프레젠테이션

1 장 C 언어복습 표준입출력배열포인터배열과포인터함수 const와포인터구조체컴파일러사용방법 C++ 프로그래밍입문

Microsoft PowerPoint - AME_InstallRoutine_ver8.ppt

슬라이드 1

1. 도구개요 STAF Testing 소개 각테스트대상분산환경에데몬을사용하여테스트대상프로그램을통해테스트를수행하고, 통합하며자동화하는 프레임워크 주요기능 테스트통합및자동화 카테고리 Testing 세부카테고리테스트설계및실행 커버리지 Test Integration / Aut

PowerPoint 프레젠테이션

목 차 1. 드라이버 설치 설치환경 드라이버 설치 시 주의사항 USB 드라이버 파일 Windows XP에서 설치 Windows Vista / Windows 7에서 설치 Windows

PowerPoint 프레젠테이션

Transcription:

Windows 환경에서의 OpenSSL 설치 (Visual Studio 에서 OpenSSL 라이브러리사용하기 ) 문서최초작성일 : 2007-06-21 < Ver 0.1 > 문서작성자 : 정은석이메일주소 : EunSeok.Jeong@Gmail.com 본설치매뉴얼은 Windows 플랫폼상에서 OpenSSL를어떻게설치하고 Visual Studio에서이라이브러리를어떻게사용하는지알려주기위하여작성하였습니다. 혹시틀린내용이있거나도움이될만한내용이있으면언제든지메일을보내주시길바랍니다. ^^ 지금부터는편의상존칭을생략하고적도록하겠습니다. [ 설치과정 ] 본매뉴얼에따라 OpenSSL을설치하기위해서는다음과같은것들을미리준비한다. 1. Windows System : Windows 2000 or Windows XP : 이것은기본적으로이미갖추어진환경이라본다. 2. OpenSSL : OpenSSL ( Version 0.9.8e ) : OpenSSL은 http://www.openssl.org/source/ 이곳에서다운로드받을수있다. 작성시점에서최신버전은 openssl-0.9.8e.tar.gz이다. 3. Perl : ActivePerl ( Version 5.8.8.820 ) : ActivePerl은 http://www.activestate.com/store/activeperl/download/ 이곳에서다운로드받을수있다. 작성시점에서최신버전은 ActivePerl-5.8.8.820이다. 다운로드를위해서는이름과직장명정도의간단한정보입력을요구한다. 4. NASM : NASM ( Version 0.9.8e ) : Free Netwide Assembler NASM은아래경로에서다운로드받을수있다. http://www.kernel.org/pub/software/devel/nasm/binaries/win32/ 작성시점에서최신버전은 nasm-0.98.39-win32.zip 이다. 이매뉴얼의작성시점 (2007년 6월 21일 ) 에가장최신의버전들을이용하여설치하였으나 Major Version Up이아닌이상설치과정에큰차이를보이지는않을것으로생각된다. 위의것들이준비되었다면설치를시작해보자.

[ ActivePerl 의설치과정 ] 1) 다운로드받은설치파일을실행하면다음과같은화면으로설치를시작하게된다. Perl 을설치하는이유는 OpenSSL을설치하기위해서 Perl Interpreter가필요하기때문이다. Next 누름. 2) 어떠한구성요소들을설치할지선택한다. 기본경로는 C: Perl 로되어있는데굳이꼭바꾸겠다면바꾸어도되지만기본값으로그냥두고설치하기를추천한다. Next 누름.

3) Perl을 Path 환경변수에더할것인가그리고 Perl파일의확장자 ( 즉, *.pl과같은 ) 를등록하겠는가를선택하는화면이다. 마찬가지로둘다체크된기본값으로두고 Next 누름. 4) Perl의설치가진행된다. Generating HTML documentation 단계에서시간이좀오래소요되니중지하지말고기다리자.

5) 설치종료. 아래와같은화면이뜨면 Perl의설치가완료된것이다. Release Notes는꼭읽어야하는것은아니다. 본인의선택에따라결정하고 Perl의설치를마친다. 6) Perl이시스템의 Path 환경변수에등록이정상적으로되었는지확인한다. 문제없이설치되었다면 Path 환경변수의제일앞에 C: Perl bin; 과같은내용이추가되었을것이다. 혹시 C: Perl site bin; 과같은내용도추가되었을수도있는데어차피이건 Path 경로이기때문에그냥두어도상관없다. 만약이러한내용이추가되지않았다면꼭추가해주도록한다. 그렇지않으면나중에 OpenSSL을설치할때문제가생기게된다.

[ NASM 의설치과정 ] 1) 어셈블리컴파일러가필요한이유는 OpenSSL의설치시에속도에큰영향을미치는부분을어셈블리로컴파일하기위해서이다. 다들아시다시피성능에큰영향을미치는부분이어셈블리로작성되었을경우얻어지는성능향상은무시하지못할만큼꽤크다. OpenSSL 역시암호화기능으로인해많은연산을요구하므로어셈블리로그런부분을처리하여속도향상을꾀한것같다. 다운로드받은 NASM을적절한경로에풀어주고해당경로를시스템의 Path 환경변수에등록한다. 글쓴이의경우 OpenSSL 설치에필요한것들을 C: OpenSSL_Install이란곳에모아놓고설치하였으므로아래와같은경로를등록하였다. [ OpenSSL의설치과정 ] 여기까지문제없이왔다면 OpenSSL 설치를위한기본적인환경은구축된셈이다. 1) 명령어프롬프트창을하나띄운다.

2) (Configure 과정 ) OpenSSL을적당한경로에압축을풀어놓고해당경로에서다음과같은명령어를수행한다. 명령어 : perl Configure VS-WIN32 3) 위의명령어를수행하여정상적으로처리되면아래그림과같이나올것이다.

4) (Makefile 생성과정 ) 이제다음명령어를수행한다. 명령어 : ms do_nasm 5) (Building 과정 ) 위의명령어를수행하여정상적으로처리되면아래그림과같이나올것이다. 그러면이제다음명령을수행한다. 명령어 : nmake -f ms ntdll.mak

6) 위의명령어를수행하면아래그림과같은내용이쭉나오면서계속컴파일될것이다. 컴파일하는데시간이제법소요된다. 완전히작업이끝날때까지기다리자. 7) 컴파일을모두마치고나면해당경로에서다음과같은명령어를수행하여아래파일들이생성되었는지확인한다. 생성되는파일들은모든 out32dll안에생성된다. dir out32dll *.dll out32dll *.lib 생성되어야하는파일들 : libeay32.dll, ssleay32.dll, libeay32.lib, ssleay32.lib

8) (Test 과정 ) 4개의파일들이생겼다면이제테스트를해본다. 압축푼디렉토리안의 out32dll이라는폴더안으로들어간다. 그리고그안에서다음명령어를실행하여테스트를수행한다. 명령어 :.. ms test 여기서기억해야할것은꼭 out32dll 디렉토리안에들어가서테스트명령을실행해야한다는점이다. 그렇지않고그냥압축푼디렉토리그상태에서명령어를수행하면아래두번째있는그림처럼에러가나며테스트가진행되지않는다.

10) 모든것이정상적으로설치되었다면테스트과정은성공적으로마치고 passed all tests라는문구가나오게된다. 이문구를보았다면 OpenSSL의설치를성공적으로수행한것이다. 축하한다! ^^; [ Visual Studio 에서 OpenSSL 사용하기 ] 1) 이제 OpenSSL은다설치되었기때문에 Visual Studio에서사용하기만하면된다. 우선 OpenSSL을설치하던곳 ( 즉, OpenSSL을압축풀어놓았던곳 ) 의헤더파일들을 Visual Studio의 include 디렉토리안에복사해넣는다. openssl-0.9.8e include 이안에보면 openssl이라는디렉토리가있고그안에보면수십개의헤더파일들이존재한다. 이 openssl 디렉토리를통째로복사하여 C: Program Files Microsoft Visual Studio VC98 Include 이안에넣어준다. 이것을수행하고난뒤의디렉토리구성은다음과같다.

2) Visual Studio를실행하여 Win32 Console Application으로새프로젝트를하나만들어 empty project를연다. 3) 다음과같은소스코드를입력한다. /////////////////////////////////////////////////////////////////////////////////////// #include <stdio.h> #include <openssl/ssl.h> #include <openssl/rand.h> void main() { int i = 0; int isize = 64; unsigned char* ubuff = NULL; ubuff = (unsigned char*)malloc(sizeof(unsigned char) * isize); RAND_screen(); RAND_bytes(uBuff, isize); printf("rand() is... n"); for (i = 0; i < isize; i++) { printf("%d n", (int)ubuff[i]); } delete ubuff; } ///////////////////////////////////////////////////////////////////////////////////////

4) Ctrl+F5를눌러보면컴파일은되는데몇가지 Link관련에러가나는것을확인할수있다. 이것은 OpenSSL 라이브러리를연결하지않아서그런것이다. 5) 아까 OpenSSL 소스파일이있던경로에가서 out32dll안에보면 libeay32.lib, ssleay32.lib, libeay32.dll, ssleay32.dll 이파일들이있는데확장자가 lib인것은정적라이브러리, dll인것은동적라이브러리이다. 테스트를위하여 libeay32.lib, ssleay32.lib 이두파일을복사하여 OpenSSL_Test라고만들었던 Visual Studio 프로젝트디렉토리안에붙여넣는다. 그리고 Visual Studio 메뉴에서 Project -> Settings -> Link -> Object/library modules 란에 libeay32.lib ssleay32.lib를추가로입력해준다.

6) 확인을눌러 Project Settings 창을닫고다시 Ctrl+F5를눌러보자. 에러없이잘수행되는것을확인할수있다. 만약다시에러가난다면프로젝트디렉토리안에 Debug 디렉토리를통째로지운후다시시도해본다. 테스트한소스의내용은 OpenSSL 라이브러리를이용하여 Random Number를출력한것이다. 아래그림처럼랜덤한숫자들이출력된다면성공한것이다. [ 맺음말 ] 여기까지모든과정이문제없이진행되었다면 OpenSSL을성공적으로설치하고 Visual Studio에서이를사용하는가장기본적인방법까지익힌것입니다. 축하합니다 ~! ^^; 이제앞으로남은일은이것들을열심히다루어보고 OpenSSL라이브러리를완전히자기것으로익히는것이겠죠? 앞으로의험난한여정을위해설치매뉴얼은이것으로끝을내도록하겠습니다. 그럼이만 ~ ^^ / ////////////////////////////////////////////////////////////////////////////////////////////////////// 문서최초작성일 : 2007-06-21 < Ver 0.1 > 문서작성자 : 정은석이메일주소 : EunSeok.Jeong@Gmail.com