2010-05-24 4 views
4

openssl과 함께 제공되는 암호화 라이브러리를 테스트하려고하는데에서 openssl을 다운로드했으며 각 암호화 유형에 대한 하위 폴더가있는/crypto 폴더가 포함되어 있습니다.C++에서 openssl crypto lib 헤더를 사용하는 방법?

BIO_f_base64를 사용하여 빈 콘솔 앱을 만들고 필요한 항목을 추가하고/bio 및/evp 폴더의 경로를 C++ incl 디렉토리에 추가하고 main/openssl 폴더도 추가했습니다. 나는 다른에 암호화 lib 디렉토리를 사용한다, 그런 파일이나 디렉토리

을하지만 파일이있다 : '하려면 openssl/e_os2.h': 내가 컴파일 할 때

나는 가 열려 있지 파일을 포함 할 수 있습니다 얻을 방법? 사용하는 모든 암호화 하위 폴더가 아닌/openssl 경로 만 추가하면 어떻게 사용할 수 있습니까?

또한 .lib 파일이 없습니다. 어디에서 가져올 수 있습니까?

+0

다운로드 한 OpenSSL 라이브러리에는 모든 헤더가 있지만 Windows에서 마음에 들지 않는 심볼릭 링크로 저장됩니다 (Cygwin에서 처리 할 수 ​​있음). 아래의 사전 빌드 된 라이브러리를 사용하는 것이 좋습니다 (Joe의 답변 참조) –

+0

[EVP Symmetric Encryption and Decryption | C++로 작업 할 때의 몇 가지 트릭은 C++ 프로그램 (https://wiki.openssl.org/index.php/EVP_Symmetric_Encryption_and_Decryption#C.2B.2B_Programs)을 참조하십시오. 동일한 트릭이 [C++에서 2 개의 임의의 크기의 정수를 추가하는 방법] (https://stackoverflow.com/a/45940572/608639)에서 적용되었습니다. – jww

답변

5

원본 릴리스가 아닌 Windows 용으로 작성된 OpenSSL 버전이 필요합니다. .lib 파일과 헤더를위한 멋진 설치 프로그램이있는 here에서 버전을 설치하는 것이 좋습니다. 설치가 완료되면 VS 프로젝트를 적절한 include 경로로 업데이트해야 설치 프로그램이 설치 한 위치에서 헤더를 가져올 수 있습니다. 만약 여러분이 직접 컴파일하려면 창에서

+0

감사합니다. 저 버전을 사용해 주셔서 감사합니다. – peterg

1

, 당신은 실행 수행 할 수 있습니다 :

64 비트의 경우 :

perl Configure VC-WIN64A 
ms\do_win64a.bat 
nmake -k -f ms\ntdll.mak 

32 비트의 경우 :

perl Configure VC-WIN32 
ms\do_nasm.bat 
nmake -k -f ms\ntdll.mak 

가 컴파일되면 소스의 헤더는 inc32 폴더에 있고 libs/dllsout32dll 폴더에 있습니다.

INSTALL 파일에서 훨씬 자세한 정보를 찾을 수 있습니다.

관련 문제