Я пытаюсь реализовать шифрование для своей службы WCF. Я знаю, что у меня есть несколько вариантов сделать это. Они мне неинтересны. Я хотел бы использовать пароль для восстановления повторяемых ключей RSA. Эти ключи затем будут использоваться для обмена ключами AES, которые будут использоваться для шифрования фактических передаваемых данных.
Думаю, для этого мне нужна специальная привязка. Мне также было бы интересно попробовать просто добавить свой собственный элемент привязки к привязке NetTCP. Кто-нибудь пробовал либо настроить существующую привязку, либо создать полностью настраиваемую привязку?
Обновление 1
Я бы действительно принял любое участие в создании пользовательских привязок. Я могу получить часть шифрования и работать оттуда.
Обновление2
У меня есть привязка клиента и настраиваемый элемент привязки. Прямо сейчас я реализую переопределение для MessageEncoder.WriteMessage. Мне нужно знать, куда идет это сообщение, чтобы я мог использовать правильный ключ шифрования. Кажется, я не могу получить доступ к этому адресу назначения.





Вот несколько ссылок для вас:
Пользовательские привязки из документации MSDN
Блог Кирка Эванса: WCF и пользовательские привязки
Обычно вы делаете что-то вроде этого:
<?xml version = "1.0" encoding = "utf-8" ?>
<configuration>
<system.serviceModel>
<bindings>
<customBinding>
<binding name = "NetHttpBinding">
<reliableSession />
<compositeDuplex />
<oneWay />
<binaryMessageEncoding />
<httpTransport />
</binding>
</customBinding>
</bindings>
<services>
<service name = "MyService">
<endpoint
address = "http://localhost:8001/myService/"
binding = "customBinding"
bindingConfiguration = "NetHttpBinding"
contract = "MyServiceContract"
name = "HttpBinding" />
</service>
</services>
</system.serviceModel>
</configuration>
Эта первая ссылка должна вам больше всего помочь. Удачи!