Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Tokens / EncryptedKeyIdentifierClause.cs / 1305376 / EncryptedKeyIdentifierClause.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.IdentityModel.Tokens
{
using System.Globalization;
sealed public class EncryptedKeyIdentifierClause : BinaryKeyIdentifierClause
{
readonly string carriedKeyName;
readonly string encryptionMethod;
readonly SecurityKeyIdentifier encryptingKeyIdentifier;
public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod)
: this(encryptedKey, encryptionMethod, null)
{
}
public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier)
: this(encryptedKey, encryptionMethod, encryptingKeyIdentifier, null)
{
}
public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier, string carriedKeyName)
: this(encryptedKey, encryptionMethod, encryptingKeyIdentifier, carriedKeyName, true, null, 0)
{
}
public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier, string carriedKeyName, byte[] derivationNonce, int derivationLength)
: this(encryptedKey, encryptionMethod, encryptingKeyIdentifier, carriedKeyName, true, derivationNonce, derivationLength)
{
}
internal EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier, string carriedKeyName, bool cloneBuffer, byte[] derivationNonce, int derivationLength)
: base("http://www.w3.org/2001/04/xmlenc#EncryptedKey", encryptedKey, cloneBuffer, derivationNonce, derivationLength)
{
if (encryptionMethod == null)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("encryptionMethod");
}
this.carriedKeyName = carriedKeyName;
this.encryptionMethod = encryptionMethod;
this.encryptingKeyIdentifier = encryptingKeyIdentifier;
}
public string CarriedKeyName
{
get { return this.carriedKeyName; }
}
public SecurityKeyIdentifier EncryptingKeyIdentifier
{
get { return this.encryptingKeyIdentifier; }
}
public string EncryptionMethod
{
get { return this.encryptionMethod; }
}
public override bool Matches(SecurityKeyIdentifierClause keyIdentifierClause)
{
EncryptedKeyIdentifierClause that = keyIdentifierClause as EncryptedKeyIdentifierClause;
// PreSharp Bug: Parameter 'that' to this public method must be validated: A null-dereference can occur here.
#pragma warning suppress 56506
return ReferenceEquals(this, that) || (that != null && that.Matches(this.GetRawBuffer(), this.encryptionMethod, this.carriedKeyName));
}
public bool Matches(byte[] encryptedKey, string encryptionMethod, string carriedKeyName)
{
return Matches(encryptedKey) && this.encryptionMethod == encryptionMethod && this.carriedKeyName == carriedKeyName;
}
public byte[] GetEncryptedKey()
{
return GetBuffer();
}
public override string ToString()
{
return string.Format(CultureInfo.InvariantCulture, "EncryptedKeyIdentifierClause(EncryptedKey = {0}, Method '{1}')",
Convert.ToBase64String(GetRawBuffer()), this.EncryptionMethod);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.IdentityModel.Tokens
{
using System.Globalization;
sealed public class EncryptedKeyIdentifierClause : BinaryKeyIdentifierClause
{
readonly string carriedKeyName;
readonly string encryptionMethod;
readonly SecurityKeyIdentifier encryptingKeyIdentifier;
public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod)
: this(encryptedKey, encryptionMethod, null)
{
}
public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier)
: this(encryptedKey, encryptionMethod, encryptingKeyIdentifier, null)
{
}
public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier, string carriedKeyName)
: this(encryptedKey, encryptionMethod, encryptingKeyIdentifier, carriedKeyName, true, null, 0)
{
}
public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier, string carriedKeyName, byte[] derivationNonce, int derivationLength)
: this(encryptedKey, encryptionMethod, encryptingKeyIdentifier, carriedKeyName, true, derivationNonce, derivationLength)
{
}
internal EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier, string carriedKeyName, bool cloneBuffer, byte[] derivationNonce, int derivationLength)
: base("http://www.w3.org/2001/04/xmlenc#EncryptedKey", encryptedKey, cloneBuffer, derivationNonce, derivationLength)
{
if (encryptionMethod == null)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("encryptionMethod");
}
this.carriedKeyName = carriedKeyName;
this.encryptionMethod = encryptionMethod;
this.encryptingKeyIdentifier = encryptingKeyIdentifier;
}
public string CarriedKeyName
{
get { return this.carriedKeyName; }
}
public SecurityKeyIdentifier EncryptingKeyIdentifier
{
get { return this.encryptingKeyIdentifier; }
}
public string EncryptionMethod
{
get { return this.encryptionMethod; }
}
public override bool Matches(SecurityKeyIdentifierClause keyIdentifierClause)
{
EncryptedKeyIdentifierClause that = keyIdentifierClause as EncryptedKeyIdentifierClause;
// PreSharp Bug: Parameter 'that' to this public method must be validated: A null-dereference can occur here.
#pragma warning suppress 56506
return ReferenceEquals(this, that) || (that != null && that.Matches(this.GetRawBuffer(), this.encryptionMethod, this.carriedKeyName));
}
public bool Matches(byte[] encryptedKey, string encryptionMethod, string carriedKeyName)
{
return Matches(encryptedKey) && this.encryptionMethod == encryptionMethod && this.carriedKeyName == carriedKeyName;
}
public byte[] GetEncryptedKey()
{
return GetBuffer();
}
public override string ToString()
{
return string.Format(CultureInfo.InvariantCulture, "EncryptedKeyIdentifierClause(EncryptedKey = {0}, Method '{1}')",
Convert.ToBase64String(GetRawBuffer()), this.EncryptionMethod);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HtmlInputControl.cs
- OleDbConnectionFactory.cs
- HttpWebRequestElement.cs
- ScriptResourceAttribute.cs
- recordstatescratchpad.cs
- Point3DAnimation.cs
- PTManager.cs
- PropertyNames.cs
- XMLSyntaxException.cs
- EntityDataSourceView.cs
- FileVersionInfo.cs
- ConfigurationStrings.cs
- HttpCapabilitiesEvaluator.cs
- ParseHttpDate.cs
- AgileSafeNativeMemoryHandle.cs
- XhtmlMobileTextWriter.cs
- DataKeyArray.cs
- Select.cs
- RsaSecurityKey.cs
- UpDownBase.cs
- Thickness.cs
- HttpCachePolicyBase.cs
- ZoomPercentageConverter.cs
- SystemParameters.cs
- DeclarativeCatalogPart.cs
- SqlUnionizer.cs
- xml.cs
- TextEndOfLine.cs
- DataStreams.cs
- HttpListenerElement.cs
- HttpVersion.cs
- IgnoreDeviceFilterElement.cs
- TemplateControlBuildProvider.cs
- WebPartHelpVerb.cs
- ProxyWebPart.cs
- NestedContainer.cs
- InternalEnumValidatorAttribute.cs
- ClientTargetCollection.cs
- PermissionListSet.cs
- Substitution.cs
- VersionPair.cs
- CompiledQuery.cs
- PersonalizationDictionary.cs
- ViewStateException.cs
- CodeDomConfigurationHandler.cs
- ServiceModelConfigurationSectionCollection.cs
- InkCanvasInnerCanvas.cs
- AuthenticationService.cs
- MethodBuilderInstantiation.cs
- CacheModeConverter.cs
- OrElse.cs
- TakeOrSkipWhileQueryOperator.cs
- XmlSignatureProperties.cs
- EditingCommands.cs
- ItemTypeToolStripMenuItem.cs
- DataGridViewColumnCollectionDialog.cs
- ActionItem.cs
- NativeRecognizer.cs
- TextOutput.cs
- MemoryPressure.cs
- ExeConfigurationFileMap.cs
- PartialCachingControl.cs
- LicFileLicenseProvider.cs
- SmiContext.cs
- ProfileSettingsCollection.cs
- SimpleWorkerRequest.cs
- AlgoModule.cs
- UrlMappingsSection.cs
- SyndicationLink.cs
- ExpressionBuilderContext.cs
- MobileTextWriter.cs
- ConfigurationElement.cs
- OuterGlowBitmapEffect.cs
- Config.cs
- BooleanProjectedSlot.cs
- GACMembershipCondition.cs
- FormViewInsertedEventArgs.cs
- RegionData.cs
- MappingException.cs
- PropertyTabChangedEvent.cs
- Module.cs
- PreservationFileReader.cs
- CssStyleCollection.cs
- MessageBox.cs
- System.Data_BID.cs
- SimpleRecyclingCache.cs
- CFGGrammar.cs
- DbConnectionPoolGroup.cs
- smtppermission.cs
- ParserContext.cs
- MenuItemAutomationPeer.cs
- TransformGroup.cs
- SrgsElement.cs
- WhiteSpaceTrimStringConverter.cs
- SessionPageStatePersister.cs
- ObjectSpanRewriter.cs
- CalendarDay.cs
- ChainOfDependencies.cs
- SmtpSection.cs
- DoubleStorage.cs