공개 키 암호화 기술 샘플

업데이트: 2007년 11월

이 샘플에서는 공개 키 암호화를 사용하여 메시지를 교환하는 방법을 보여 줍니다. 이 샘플을 실행하려면 Microsoft Windows 2000 고급 암호화 팩이 필요합니다. 고급 암호화 팩에 대한 자세한 내용을 보고 다운로드하려면 https://www.microsoft.com/korea/windows2000/downloads/recommended/encryption을 참조하십시오.

샘플 사용에 대한 자세한 내용은 다음 항목을 참조하십시오.

Download sample

명령 프롬프트를 사용하여 샘플을 빌드하려면

  1. 명령 프롬프트를 사용하여 PublicKeyCryptography 디렉터리 아래의 언어별 하위 디렉터리 중 하나로 이동합니다. 필요한 설정 및 SDK 명령 프롬프트에 대한 자세한 내용은 방법: 샘플 설정 변경을 참조하십시오.

  2. 선택한 프로그래밍 언어에 따라 msbuild PublicKeyCryptographyCS.sln 또는 msbuild PublicKeyCryptographyVB.sln을 입력합니다. 실행 파일이 기본 \bin 또는 \bin\Debug 디렉터리에 빌드됩니다.

Visual Studio를 사용하여 샘플을 빌드하려면

  1. Windows 탐색기를 열고 PublicKeyCryptography 디렉터리 아래의 언어별 하위 디렉터리 중 하나로 이동합니다.

  2. 선택한 프로그래밍 언어에 따라 Visual Studio 솔루션 파일 PublicKeyCS.sln 또는 PublicKeyVB.sln을 엽니다.

  3. 빌드 메뉴에서 솔루션 빌드를 클릭합니다.

이 샘플을 실행하려면

  1. 명령 프롬프트를 사용하여 빌드된 실행 파일이 포함된 디렉터리로 이동합니다.

  2. PublicKey.exe를 입력합니다.

참고:

이 샘플은 콘솔 응용 프로그램을 빌드합니다. 출력을 보려면 명령 프롬프트를 사용하여 응용 프로그램을 실행해야 합니다.

설명

대칭 알고리즘(RC2)을 사용하여 메시지를 암호화한 다음 비대칭 알고리즘(RSA)을 사용하여 RC2 키를 암호화합니다. 공개 키 알고리즘이라고도 하는 비대칭 암호화 알고리즘을 사용하려면 각 엔터티에서 관련 키 쌍인 개인 키와 공개 키가 유지되어야 합니다. 두 키 모두 엔터티에 대해 고유합니다. 공개 키는 모든 사람들이 사용할 수 있으며 수신기에 보낼 데이터를 인코딩하는 데 사용됩니다. 개인 키는 수신기 내부적으로만 유지되며 수신기의 공개 키를 사용하여 인코딩된 메시지를 디코딩하는 데 사용됩니다.

이 샘플에서는 다음 클래스를 사용합니다.

  • RSACryptoServiceProvider - RSA의 관리되는 구현인 비대칭(공개 키) 알고리즘을 제공합니다. RSA는 암호화된 메시지와 함께 보낼 RC2 키를 암호화하는 데 사용됩니다.

  • RC2CryptoServiceProvider - 메시지 텍스트를 암호화하는 데 사용할 대칭 암호화 알고리즘을 제공합니다.

  • ICryptoTransform - 암호화 변환의 기본 작업을 정의하는인터페이스를 제공합니다.

  • CryptoStream - MemoryStream에 제공되는 데이터를 암호화하는 데 사용할 스트림을 제공합니다.

  • Encoding - 문자열을 바이트 배열로 변환하거나 바이트 배열을 문자열로 변환합니다.

키 쌍 암호화에 대한 자세한 내용은 소스 코드 파일의 주석을 참조하십시오.

참고 항목

기타 리소스

암호화 서비스