Я думаю, что можно использовать
Enum.GetNames(Suit)
Я не знаю, как конкретно работает .net framework (вопрос, вероятно, должен был быть помечен .net), но по вашему вопросу похоже, что он реализует криптографию с открытым / закрытым ключом, просто используя AES для его симметричного компонента.
Обычным способом шифрования с открытым ключом является
Причина, по которой симметричные алгоритмы предпочтительны для самих данных, заключается в том, что асимметричные очень медленные.
Учитывая, что они не могли проверить безопасность (все, что у них действительно было, так это отсутствие перерывов для нескольких кандидатов),Причина выбора Rijndael для AES была (в основном) связана с производительностью.