Если вы хотите получить доступ к службам платформы (например, к настройкам доверия системы и доступа к смарт-картам и другим аппаратным криптографическим устройствам, предоставляемым через CryptoAPI), вам следует использовать CAPI или что-то, что поддерживает использование ключей CAPI (System.Security.Cryptography предлагает его по имени но я не знаю много о C # /. NET)
Я не знаю, предоставляет ли BC доступ к ключам CAPI или нет. Если вы предполагаете, что ваше решение понадобится, используйте CAPI. Я предполагаю, что ваше приложение не будет переносимым (из-за c #), поэтому я бы посоветовал вам использовать CAPI (или System.Security.Cryptography, если он опирается на CAPI, что должны делать все API, предоставляемые Microsoft)