다음을 통해 공유


System.Security.Cryptography.RSACryptoServiceProvider 클래스

이 문서에서는 이 API에 대한 참조 설명서에 대한 추가 설명서를 제공합니다.

클래스는 RSACryptoServiceProvider .의 기본 구현입니다 RSA.

Microsoft 고급 암호화 공급자가 설치된 경우 키 크기는 RSACryptoServiceProvider 384비트에서 16384비트까지 8비트 단위로 지원됩니다. Microsoft 기본 암호화 공급자가 설치된 경우 384비트에서 512비트까지 8비트 단위로 키 크기를 지원합니다.

유효한 키 크기는 인스턴스에서 사용하는 CSP(암호화 서비스 공급자)에 RSACryptoServiceProvider 따라 달라집니다. Windows CSP는 Windows 8.1 이전의 Windows 버전에서 384~16384비트 키 크기를 사용하도록 설정하고 Windows 8.1의 경우 키 크기는 512~16384비트입니다. 자세한 내용은 Windows 설명서의 CryptGenKey 함수를 참조하세요.

MICROSOFT CAPI(Cryptographic API)와의 상호 운용

관리되지 않는 CAPI의 RSA 구현과 달리 클래스는 RSACryptoServiceProvider 암호화 후 및 암호 해독 전에 암호화된 바이트 배열의 순서를 반대로 바뀝니다. 기본적으로 클래스에 의해 RSACryptoServiceProvider 암호화된 데이터는 CAPI CryptDecrypt 함수에 의해 해독될 수 없으며 CAPI CryptEncrypt 메서드로 암호화된 데이터는 클래스에서 암호 해독 RSACryptoServiceProvider 할 수 없습니다.

API 간에 상호 운용할 때 역순으로 보정하지 않으면 클래스가 RSACryptoServiceProvider 을 throw합니다 CryptographicException.

CAPI와 상호 운용하려면 암호화된 데이터가 다른 API와 상호 운용되기 전에 암호화된 바이트의 순서를 수동으로 역방향으로 설정해야 합니다. 메서드를 호출 Array.Reverse 하여 관리되는 바이트 배열의 순서를 쉽게 되돌릴 수 있습니다.