Esempio n. 1
0
        /// <summary>
        /// Encrypts Message. User decides what SecBuffers are used.
        /// </summary>
        /// <param name="securityBuffers">
        /// the security buffer array to encrypt.<para/>
        /// it can contain none or some data security buffer, that are combine to one message to encrypt.<para/>
        /// it can contain none or some token security buffer, in which the signature will be stored.
        /// </param>
        /// <exception cref="ArgumentNullException">the securityBuffers must not be null</exception>
        public override void Encrypt(params SecurityBuffer[] securityBuffers)
        {
            NlmpUtility.UpdateSealingKeyForConnectionlessMode(
                this.client.Context.ClientConfigFlags, this.client.Context.ClientHandle,
                this.client.Context.ClientSealingKey, this.clientSequenceNumber);

            NlmpUtility.GssApiEncrypt(
                this.client.Config.Version,
                this.Context.ClientConfigFlags,
                this.client.Context.ClientHandle,
                this.client.Context.ClientSigningKey,
                ref this.clientSequenceNumber,
                securityBuffers);
        }
Esempio n. 2
0
        /// <summary>
        /// Encrypts Message. User decides what SecBuffers are used.
        /// </summary>
        /// <param name="securityBuffers">
        /// the security buffer array to encrypt.<para/>
        /// it can contain none or some data security buffer, that are combine to one message to encrypt.<para/>
        /// it can contain none or some token security buffer, in which the signature will be stored.
        /// </param>
        /// <exception cref="ArgumentNullException">the securityBuffers must not be null</exception>
        public override void Encrypt(params SecurityBuffer[] securityBuffers)
        {
            NlmpUtility.UpdateSealingKeyForConnectionlessMode(
                this.nlmpServer.Context.NegFlg, this.nlmpServer.Context.ServerHandle,
                this.nlmpServer.Context.ServerSealingKey, this.serverSequenceNumber);

            NlmpUtility.GssApiEncrypt(
                this.version,
                this.nlmpServer.Context.NegFlg,
                this.nlmpServer.Context.ServerHandle,
                this.nlmpServer.Context.ServerSigningKey,
                ref this.serverSequenceNumber,
                securityBuffers);
        }