2011-05-04 2 views
0

http://msdn.microsoft.com/en-us/library/ff468663(v=vs.85).aspx. 왜 우리는 TCP 페이로드를 암호화하는 대신 전체 패킷을 암호화해야합니까? 또한 시도하고 포함 할 때 sslprovider.h 존재하지 않는 오류가 발생합니다. 나는 nmake를 사용하고 있으며 내 컴퓨터 어디에서나 찾을 수 없습니다.Win32 API가 SslEncryptPacket()을 호출하는 것은 정확히 무엇입니까?

+0

Windows 7에서 작업하고 있습니다. ncrypt.dll이 있습니다. – Bruce

답변

1

실제로는 은 페이로드의 암호화가입니다.

sslprovider.h의 경우 - 최신 버전의 플랫폼 SDK가 있는지 확인하십시오. MSDN에서 말했듯이,이 기능은 비스타와 2008 서버에서만 나타 났으므로 CNG (Vista에서 도입 된 새로운 암호화 API)가 필요합니다. SChannel에는 2000 년 또는 XP 이후에 제공되었던 또 다른 API가 있습니다. WinXP를 지원할 계획이라면보아야 할 것입니다.

+0

EncryptMessage와 같은 다른 기능과 다른 점은 무엇입니까? http://msdn.microsoft.com/en-us/library/aa375378(v=vs.85).aspx – Bruce

+0

@ Bruce 다른 API. EncryptMessage는 SSPI API의 일부입니다. 이전에 CNG를 살펴 봤는데 거기에 SChannel이 있으며 SChannel EncryptMessage 함수도 정의되어 있습니다. http://msdn.microsoft.com/en-us/library/aa375390%28v = VS.85 % 29.aspx. –

관련 문제