Шифрование и подпись - это два разных животных. Triple DES - это метод симметричного ключа (тот же ключ, который используется для шифрования и дешифрования). Цифровые подписи, с другой стороны, используют асимметричные ключи (пара секретный / открытый ключ), где подпись вычисляется с использованием секретного ключа и может быть проверена с использованием открытого ключа. Поэтому, если ваш клиент хочет включить подписи в отправляемый вами XML, он должен предоставить вам свой открытый ключ.
Для шифрования типичным в SAML является использование XMLEncryption, который определяет формат XML для включения информации ключа шифрования и зашифрованных данных в ваши сообщения SAML. Поскольку обмен статическим симметричным ключом проблематичен - если он перехвачен, перехватчик может как зашифровать, так и расшифровать любые сообщения - вместо этого можно использовать динамический симметричный ключ, который генерируется заново для каждого сообщения, зашифровав сообщение ключ, затем зашифруйте этот ключ с помощью открытого ключа из пары секретный / открытый ключ шифрования и отправьте его вместе с сообщением. Зашифрованный симметричный ключ может быть расшифрован только с использованием частной половины пары ключей, использованной для его шифрования.
Таким образом, наиболее существенным отличием здесь является то, что для подписания клиент имеет закрытый ключ и должен поделиться с вами открытым ключом, а для шифрования - личный ключ и общий ключ. с заказчиком.