The RSA public-key cipher was developed by (and named after) Ron Rivest, Adi Shamir, and Leonard Adleman, in the late 1970s. This algorithm is very well known—you can read about its internal details in any book on cryptography.
RSA is used by many CSPs to encrypt and decrypt keys and to generate and verify digital signatures. This algorithm is used when operations are performed by using either the key exchange or digital signature key pair. When using the CryptoAPI, this algorithm cannot be used to encrypt bulk data.
RSA is a variable-key-length cipher. However, when using the CryptoAPI with the Microsoft Base Cryptographic Provider, the key length is hard-coded to 512 bits.