In Microsoft cryptographic technologies
지원하는게 많네, 하지만 관심은 CryptoAPI에만 있으니 나머지는 패스
윈도우 어플리케이션에서 인터넷과 같은 보안 사각지대에서 문서나 데이터를 안전하게 주고 받을 수 있도록 하는 목적으로 사용된다. C나 C++을 사용할 수 있어야하고 암호화에 대한 지식이 있으면 편하겠지.
32bit 컴포넌트로, VBScript나 C++ 언어로 애플리케이션 개발에 사용되는 컴포넌트.
OS가 지원하는(명시한) 런타임 환경(스펙)하에서 사용되는 것이 가능합니다.
(CAPICOM is available for use in the operating systems specified in Run-Time Requirements.)
이런 것도 되나.. 흠
웹사이트 설명 :
#include "stdafx.h" #include <iostream> #include <windows.h> using namespace std; #pragma comment(lib, "crypt32.lib") #include <Wincrypt.h> #define MY_ENCODING_TYPE (PKCS_7_ASN_ENCODING | X509_ASN_ENCODING) int main() { //-------------------------------------------------------------------- // 변수를 선언하고 초기화 합니다. HCRYPTPROV hCryptProv; BYTE pbData; //------------------------------------------------------------------- // 암호 제공자의 컨텍스트 핸들을 얻습니다. if(CryptAcquireContext(&hCryptProv, NULL, NULL, PROV_RSA_FULL, 0)) { printf("CryptAcquireContext succeeded. \n"); } else { printf("Error during CryptAcquireContext!\n"); } //-------------------------------------------------------------------- // BYTE 범위내에서 난수를 생성합니다. if(CryptGenRandom(hCryptProv, 1, &pbData)) { printf("Random number is: %d.\n", ((int)pbData) * 100 / 255); } else { printf("Error during CryptGenRandom.\n"); exit(1); } //------------------------------------------------------------------- // 컨텍스트 핸들을 해제합니다. if(hCryptProv) { if (!CryptReleaseContext(hCryptProv, 0)) { printf("Failed CryptReleaseContext\n"); } } return 0; }