Шифрование цифровых сигнатур

По умолчанию сообщение подписывается и шифруется, и цифровая подпись шифруется. Этим процессом можно управлять, создавая пользовательскую привязку с экземпляром элемента AsymmetricSecurityBindingElement или SymmetricSecurityBindingElement и затем присваивая свойству MessageProtectionOrder каждого класса значение перечисления MessageProtectionOrder. Значение по умолчанию — SignBeforeEncryptAndEncryptSignature. Этот процесс занимает на 10 - 40 процентов больше времени, чем просто подписывание и шифрование. Однако в случае отключения шифрования подписи злоумышленник может распознать содержимое сообщения. Это обусловлено тем, что элемент подписи содержит хэш-код обычного текста каждой подписанной части сообщения. Например, хотя тело сообщения шифруется по умолчанию, нешифрованная подпись содержит хэш-код тела сообщения. Если сообщение короткое, злоумышленник может определить содержимое. Шифрование подписи уменьшает или исключает эту возможность.

Поэтому отключайте шифрование подписи только при малой важности содержимого и существенном повышении производительности в результате такого отключения, например при передаче больших двоичных файлов, не критичных к нарушениям безопасности.

Отключение цифровой подписи

  1. Создайте CustomBinding. Дополнительные сведения см. в разделе "Практическое руководство. Создание пользовательской привязки с помощью SecurityBindingElement".

  2. Добавьте в коллекцию привязок элемент AsymmetricSecurityBindingElement или SymmetricSecurityBindingElement.

  3. Присвойте свойству AsymmetricSecurityBindingElement.MessageProtectionOrder значение SignBeforeEncrypt или присвойте свойству SymmetricSecurityBindingElement.MessageProtectionOrder значение SignBeforeEncrypt.

Дополнительные сведения о создании пользовательских привязок см. в разделе "Создание пользовательских привязок". Дополнительные сведения о создании пользовательской привязки для определенного режима проверки подлинности см. в разделе "Практическое руководство. Создание securityBindingElement для указанного режима проверки подлинности".

См. также