키워드 [Programming][VC++][Security][open ssl]
http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=51&MAEULNo=20&no=7598&ref=7598


윈도에서 OpenSSL을 사용할경우 인증서를 익스포트 시켜서
PEM 파일로 변환한 후 로드하는 과정이 필요하죠.

보통 제어판에서 인증서를 열어가지고 마우스로 콕콕 찍어서..
프라이빗 키 설정한 후 익스포트 하여 사용하곤 하는데..

귀찬죠.. 가끔 까먹기도 하죠.. 설명할라믄 메뉴얼 작성해야죠.. -_-
윈도 크립토 API를 사용하여 간단하게 샘플을 만들어 보았습니다.

//////////////////////////////////////////////////////////
#include <windows.h>
#include <wincrypt.h>
#include <cryptuiapi.h>
 
class CCertToPFX 
{
public:
    CCertToPFX();
    virtual ~CCertToPFX();
 
    void SetStoreName(CHAR* name);
    void SetCertName(CHAR* name);
    void SetSaveName(CHAR* name);
    void SetPrivatePassword(CHAR* name);
 
    BOOL Export();
 
    DWORD GetLastError();
 
protected:
    HCERTSTORE  m_hCertStore;       
    HCERTSTORE  m_hCertTemp;       
    CHAR        m_pszStoreName[256];
    CHAR        m_pszCertName[256];
    CHAR        m_pszSaveName[MAX_PATH];
    CHAR        m_pszPrivatePass[256];
    DWORD       m_dwLastError;
};


샘플 코드는 아래와 같습니다.
////////////////////////////////////////////////////
    CCertToPFX con;
    con.SetStoreName("MY");
    con.SetCertName("my_ssl");
    con.SetSaveName("C:\\test.pfx");
    con.SetPrivatePassword("my_password");
 
    if(!con.Export())
        con.GetLastError();

사용자 삽입 이미지

 
아.. 이뿐 딸래미 벌써 커서 돌이넹..
지금은 2돌이 됐지만.. 아직까지 저 모습이 눈에 선하다.. ^^;

그저께 딸래미가 말했다..
아빠 시져..
아들래미가 말했다.
아빠 집에 돈 없으면 회사가서 돈 가져와 -_-

(헉.. 사진이 용량이 쫌 돼네..늦어도 어쩔 수 없당.ㅋ~)


사용자 삽입 이미지
태어난지 100일 된 울 딸래미 + 태어난지 3년 쫌 넘은 울 아들래미.. ^^
둘다 넘 이뿌당..

저넘들이 벌써 커서 아빠시로.. 엄마미워.. -_-;;;
그래도 사랑스러운 아가들이당.. ^^

먼가를 설치하고 나서 mscorsve.exe란 놈이 남아 몇분동안 CPU를 100% 가까이 먹구 있는 경우가 있다.
이는 마이크로소프트에서 제공하는 .NET 어셈블러를 컴파일하는 과정으로써 단 한번 백그라운드 작업으로
수행되며 그 이후에는 사라진다.

새로운 프로그램이나 최신 드라이버로 업데이트 하거나 할 경우만 잠간 한번 보이는 것으로써
바이러스인지 의심할 필요는 없다. 보통 2-3개가 떠서 무자게 오래 돈다 -_- 내 컴이 느려서..
보통 2-10분 사이에 종료된다.
윈도우 XP 사용자들 부터 볼 수 있는 놈으로 IME에서 고급 사용자 입력을 지원한다.
고급이라고 해봤자 거의 쓸일이 없고, 특히나 VC++ 툴을 사용하는 개발자들에게 스레드 디버깅시
데드락과 같은 저주받은 상황을 만드는 주범으로 알려져 있다.

고급기능이라고 하는 것은 한글 입력, 필기 입력, 음성인식.. 등등.. 몇가지 지원하지만
실제로 사용되는 일은 거의 없다. 그냥 꺼버리는 것이 속편하다.
http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=51&MAEULNO=20&no=7621&page=1

요 에러는 새로운 플랫폼SDK가 VC 6.0을 지원하지 않아 발생하는 에러이다.
Platform SDK 2005년 4월 버전부터 전혀 6.0을 고려하지 않기 때문에, 우짤 수 없다.

머 VC2003이나 VC2005를 설치하고, 플랫폼SDK를 삭제하는 하나의 방법과
플랫폼 SDK의 uuid.lib를 삭제하거나 uuid.was_a_lib 로 이름을 일단 바까놓으면 문제없다.
위 메시지가 하단 상태창에 나타나면서 시간이 쫌 지난후에 웹페이지가 열리는 현상.
가뜩이나 느린 인터넷에서 사람 속을 뒤집어 놓는 메시지이다... -_-;;;

외부로 연결되는 프록시 서버의 자동 검출 기능인데, 프록시 서버에 대한 개념을 알 필요가 전혀 없는
일반 유저들에게는 애물단지 옵션이다.

메뉴 -> 도구 -> 인터넷 옵션 -> 연결 -> LAN 설정
자동으로 설정 검색의 첵크 박스에서 첵크를 제거하면 된다.

ATI 그래픽 카드를 사용하는 사용자들이라면 당연히 떠있어야할 드라이버 파일이다.
만약  ATI를 사용하지 않는데 떠있다면 바이러스나 스파이웨어로 의심해도 됩니다.

보통 2개가 떠있는데, 하나는 시스템 계정으로 디바이스 드라이버를 로딩하여 관리하고
사용자 계정으로 떠잇는건 인터페이스와 환경 설정등과 같은 것을 관리한다네요.

구글링을 해본 결과 프로그램이 문제를 일으키지 않는 이상 죽이는 것은 권장되지 않습니다.

svchost -> Service Host
윈도우에서 제공하는 시스템 파일로, dll 형식으로 실행되는 서비스를 그룹으로 관리해주는 프로세스이다.
보통 서너개 이상떠있는 경우가 많다.

가끔 가다보면 svchost 중에 하나가 CPU를 100% 잡아 먹는 경우가 있는데..
똑같은 이름으로 떠 있으므로 어떤 서비스를 중지해야 정상으로 돌아 올지 알수가 없다.
이럴 경우는 다음과 같은 팁을 사용하자.

1. cmd.exe를 띠운다.
2. tasklist /svc를 입력한다.
그러면 콘솔 화면상에 프로세스 목록이 쭉 나오고, svc로 시작되는건 상세 정보가 나온다.
거기서 이름을 잘 찾아서 제어판 서비스 관리자에서 죽여본다.

1. regedit.exe를 연다.

2. 아래 키를 찾아 간다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

3. 쓰잘대기 없는 목록을 하나씩 찾아서 지운다.

// 이거 지운다고 해서 문제되는건 없는데.. 정상적인걸 지우면 언인스톨이 않될 수도 있다.
// 이걸 정리해 두면 프로그램 추가/삭제의 로딩 속도가 빨라진다.

+ Recent posts