//----------------------------------------------------------------------- // // Copyright (c) Outercurve Foundation. All rights reserved. // //----------------------------------------------------------------------- namespace DotNetOpenAuth.Messaging.Bindings { using System; using DotNetOpenAuth.Messaging; /// /// The contract a message that has an allowable time window for processing must implement. /// /// /// All replay-protected messages must also be set to expire so the nonces do not have /// to be stored indefinitely. /// internal interface IReplayProtectedProtocolMessage : IExpiringProtocolMessage, IDirectedProtocolMessage { /// /// Gets the context within which the nonce must be unique. /// /// /// The value of this property must be a value assigned by the nonce consumer /// to represent the entity that generated the nonce. The value must never be /// null but may be the empty string. /// This value is treated as case-sensitive. /// string NonceContext { get; } /// /// Gets or sets the nonce that will protect the message from replay attacks. /// string Nonce { get; set; } } }