AesEncryptionEnvelope

Overview

AES Envelope is an encryption envelope that is shipped with the RemObjects.SDK package. It uses AES encryption to encrypt and decrypt messages using an encryption key that is generated based on Password property.

Envelopes are a mechanism that allows applications to modify data packets right before they are sent over the network or immediately before or after they were received. Envelopes can work with any message type, although don't conform to SOAP or XML-RPC standards (for obvious reasons).

Envelopes can be added to the message's property envelopes.

Note that envelopes added to the message's envelopes collection can be enabled or disabled using the enabled property. Even if an envelope's enabled property is set to false, the appropiate envelope type needed to process incoming messages will be used.

You can see an extensive sample of AES Envelope usage in the RemObject.SDK MegaDemo sample. In the Delphi sample usage, AES Envelope is triggered by the 'Use message envelopes' checkbox and in .NET by the 'Use AES Encryption Envelope' checkbox.

Location


 

constructor

Creates a new instance of AesEncryptionEnvelope.

 

constructor

 

AesEncryptionEnvelope()

 

Sub New()

constructor (String)  protected    (declared in MessageEnvelope)

 

constructor(envelopeMarker: String)

 

AesEncryptionEnvelope(String envelopeMarker)

 

Sub New(envelopeMarker As String)

Parameters:

  • envelopeMarker:

constructor (String)

 

constructor(password: String)

 

AesEncryptionEnvelope(String password)

 

Sub New(password As String)

Parameters:

  • password:

AfterEnvelopeProcessed    (declared in MessageEnvelope)

This event is raised after the message data is processed. MessageEnvelopeProcessedEventArgs will hold the data that specifies which envelope was used, which stream contains the message data and which actions were applied.

 

event AfterEnvelopeProcessed: EventHandler<MessageEnvelopeProcessedEventArgs>;

 

delegate EventHandler<MessageEnvelopeProcessedEventArgs> AfterEnvelopeProcessed()

 

Event AfterEnvelopeProcessed As EventHandler<MessageEnvelopeProcessedEventArgs>

BeforeEnvelopeProcessed    (declared in MessageEnvelope)

This event is raised before the message data is processed. MessageEnvelopeProcessedEventArgs will hold the data that specifies which envelope was used, which stream contains the message data and which actions were applied.

 

event BeforeEnvelopeProcessed: EventHandler<MessageEnvelopeProcessedEventArgs>;

 

delegate EventHandler<MessageEnvelopeProcessedEventArgs> BeforeEnvelopeProcessed()

 

Event BeforeEnvelopeProcessed As EventHandler<MessageEnvelopeProcessedEventArgs>

DefaultEnvelopeMarker

This marker is used by Remoting SDK to determine which envelope from the Message.Envelopes collection should be used to process incoming messages. For obvious reasons, each envelope ancestor provides a unique DefaultEnvelopeMarker.

For AesEncryptionEnvelope, the value of this property is AES.

 

property DefaultEnvelopeMarker: String read;

 

String DefaultEnvelopeMarker { get; }

 

ReadOnly Property DefaultEnvelopeMarker() As String

EnvelopeMarker    (declared in MessageEnvelope)

This marker is used when an incoming data stream is processed to determine which envelope from the Message.Envelopes collection should be used to process the data.

 

property EnvelopeMarker: String read write;

 

String EnvelopeMarker { get; set; }

 

Property EnvelopeMarker() As String

Password

The password used by the envelope to encrypt and decrypt data. This property can be set at any time - there is no need to restart the server or to reconnect to it to change the AES password.

 

property Password: String read write;

 

String Password { get; set; }

 

Property Password() As String

TriggerAfterEnvelopeProcessed  protected    (declared in MessageEnvelope)

 

method TriggerAfterEnvelopeProcessed(stream: Stream; action: MessageEnvelopeAction)

 

void TriggerAfterEnvelopeProcessed(Stream stream, MessageEnvelopeAction action)

 

Sub TriggerAfterEnvelopeProcessed(stream As Stream, action As MessageEnvelopeAction)

Parameters:

  • stream:
  • action:

TriggerBeforeEnvelopeProcessed  protected    (declared in MessageEnvelope)

 

method TriggerBeforeEnvelopeProcessed(stream: Stream; action: MessageEnvelopeAction)

 

void TriggerBeforeEnvelopeProcessed(Stream stream, MessageEnvelopeAction action)

 

Sub TriggerBeforeEnvelopeProcessed(stream As Stream, action As MessageEnvelopeAction)

Parameters:

  • stream:
  • action:

Unwrap    (declared in MessageEnvelope)

 

method Unwrap(stream: Stream): Stream

 

Stream Unwrap(Stream stream)

 

Function Unwrap(stream As Stream) As Stream

Parameters:

  • stream:

Wrap    (declared in MessageEnvelope)

 

method Wrap(message: Message; stream: Stream): Stream

 

Stream Wrap(Message message, Stream stream)

 

Function Wrap(message As Message, stream As Stream) As Stream

Parameters:

  • message:
  • stream:

 

DefaultEnvelopeMarker

This marker is used by Remoting SDK to determine which envelope from the Message.Envelopes collection should be used to process incoming messages. For obvious reasons, each envelope ancestor provides a unique DefaultEnvelopeMarker.

For AesEncryptionEnvelope, the value of this property is AES.

 

property DefaultEnvelopeMarker: String read;

 

String DefaultEnvelopeMarker { get; }

 

ReadOnly Property DefaultEnvelopeMarker() As String

EnvelopeMarker    (declared in MessageEnvelope)

This marker is used when an incoming data stream is processed to determine which envelope from the Message.Envelopes collection should be used to process the data.

 

property EnvelopeMarker: String read write;

 

String EnvelopeMarker { get; set; }

 

Property EnvelopeMarker() As String

Password

The password used by the envelope to encrypt and decrypt data. This property can be set at any time - there is no need to restart the server or to reconnect to it to change the AES password.

 

property Password: String read write;

 

String Password { get; set; }

 

Property Password() As String

 

constructor

Creates a new instance of AesEncryptionEnvelope.

 

constructor

 

AesEncryptionEnvelope()

 

Sub New()

constructor (String)  protected    (declared in MessageEnvelope)

 

constructor(envelopeMarker: String)

 

AesEncryptionEnvelope(String envelopeMarker)

 

Sub New(envelopeMarker As String)

Parameters:

  • envelopeMarker:

constructor (String)

 

constructor(password: String)

 

AesEncryptionEnvelope(String password)

 

Sub New(password As String)

Parameters:

  • password:

TriggerAfterEnvelopeProcessed  protected    (declared in MessageEnvelope)

 

method TriggerAfterEnvelopeProcessed(stream: Stream; action: MessageEnvelopeAction)

 

void TriggerAfterEnvelopeProcessed(Stream stream, MessageEnvelopeAction action)

 

Sub TriggerAfterEnvelopeProcessed(stream As Stream, action As MessageEnvelopeAction)

Parameters:

  • stream:
  • action:

TriggerBeforeEnvelopeProcessed  protected    (declared in MessageEnvelope)

 

method TriggerBeforeEnvelopeProcessed(stream: Stream; action: MessageEnvelopeAction)

 

void TriggerBeforeEnvelopeProcessed(Stream stream, MessageEnvelopeAction action)

 

Sub TriggerBeforeEnvelopeProcessed(stream As Stream, action As MessageEnvelopeAction)

Parameters:

  • stream:
  • action:

Unwrap    (declared in MessageEnvelope)

 

method Unwrap(stream: Stream): Stream

 

Stream Unwrap(Stream stream)

 

Function Unwrap(stream As Stream) As Stream

Parameters:

  • stream:

Wrap    (declared in MessageEnvelope)

 

method Wrap(message: Message; stream: Stream): Stream

 

Stream Wrap(Message message, Stream stream)

 

Function Wrap(message As Message, stream As Stream) As Stream

Parameters:

  • message:
  • stream:

 

AfterEnvelopeProcessed    (declared in MessageEnvelope)

This event is raised after the message data is processed. MessageEnvelopeProcessedEventArgs will hold the data that specifies which envelope was used, which stream contains the message data and which actions were applied.

 

event AfterEnvelopeProcessed: EventHandler<MessageEnvelopeProcessedEventArgs>;

 

delegate EventHandler<MessageEnvelopeProcessedEventArgs> AfterEnvelopeProcessed()

 

Event AfterEnvelopeProcessed As EventHandler<MessageEnvelopeProcessedEventArgs>

BeforeEnvelopeProcessed    (declared in MessageEnvelope)

This event is raised before the message data is processed. MessageEnvelopeProcessedEventArgs will hold the data that specifies which envelope was used, which stream contains the message data and which actions were applied.

 

event BeforeEnvelopeProcessed: EventHandler<MessageEnvelopeProcessedEventArgs>;

 

delegate EventHandler<MessageEnvelopeProcessedEventArgs> BeforeEnvelopeProcessed()

 

Event BeforeEnvelopeProcessed As EventHandler<MessageEnvelopeProcessedEventArgs>