This documentation is archived and is not being maintained.

Message.DestinationSymmetricKey Property

Gets or sets the symmetric key used to encrypt application-encrypted messages or messages sent to foreign queues.

Namespace:  System.Messaging
Assembly:  System.Messaging (in System.Messaging.dll)

public byte[] DestinationSymmetricKey { get; set; }

Property Value

Type: System.Byte[]
An array of byte values that specifies the destination symmetric key used to encrypt the message. The default is a zero-length array.


The message queue is filtered to ignore the DestinationSymmetricKey property.


The DestinationSymmetricKey is null.

Two scenarios require you to use the DestinationSymmetricKey property. The first is when your application, rather than Message Queuing, encrypts a message. The second is when you send an encrypted message to a queuing system other than Message Queuing.

Before you set this property, you must encrypt the symmetric key with the public key of the receiving queue manager. When you send an application-encrypted message, the receiving queue manager uses the symmetric key to decrypt the message before sending it to its destination queue.

If you send a message to a foreign queue, the message is first received by the appropriate connector application, which forwards the encrypted message with the attached symmetric key to the receiving application. It is then the responsibility of the receiving application to decrypt the message using the symmetric key.

When you set the DestinationSymmetricKey property, you must also set the ConnectorType property. When the message is sent, Message Queuing ignores the DestinationSymmetricKey property if the ConnectorType property is not also set.

The DestinationSymmetricKey property has a maximum array size of 256.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.