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
- XmlSchemaObjectCollection.cs
- GenericWebPart.cs
- FacetChecker.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- OleDbRowUpdatedEvent.cs
- MsmqIntegrationElement.cs
- XmlEncodedRawTextWriter.cs
- ListViewItemEventArgs.cs
- PropertyEmitterBase.cs
- TypeConstant.cs
- FrameworkTextComposition.cs
- HtmlInputImage.cs
- DocumentAutomationPeer.cs
- FlowDocumentView.cs
- SqlCacheDependencySection.cs
- HtmlPageAdapter.cs
- SerializationAttributes.cs
- WsatTransactionHeader.cs
- OutputScope.cs
- RegistryDataKey.cs
- KeyProperty.cs
- DigitShape.cs
- EditableRegion.cs
- ContentControl.cs
- DropDownList.cs
- CollectionViewProxy.cs
- MetadataArtifactLoaderCompositeResource.cs
- HScrollBar.cs
- CommonObjectSecurity.cs
- Vector3DValueSerializer.cs
- _TimerThread.cs
- XmlWrappingReader.cs
- XmlRawWriterWrapper.cs
- ScriptingJsonSerializationSection.cs
- ServiceHostFactory.cs
- BooleanStorage.cs
- RevocationPoint.cs
- ScriptResourceAttribute.cs
- SupportingTokenAuthenticatorSpecification.cs
- InputLangChangeRequestEvent.cs
- MutableAssemblyCacheEntry.cs
- XamlFigureLengthSerializer.cs
- DeviceContexts.cs
- Exception.cs
- MSG.cs
- FreezableDefaultValueFactory.cs
- HotSpot.cs
- XmlSchemaInclude.cs
- SiteOfOriginPart.cs
- ReceiveContext.cs
- EventToken.cs
- BuildResultCache.cs
- TextDpi.cs
- EndOfStreamException.cs
- MetadataResolver.cs
- WebResourceAttribute.cs
- MissingMemberException.cs
- processwaithandle.cs
- ClientConfigurationSystem.cs
- TypeHelper.cs
- SerializerDescriptor.cs
- TextElement.cs
- StringPropertyBuilder.cs
- ValidatorCollection.cs
- ScrollData.cs
- MenuItemStyle.cs
- InputScopeNameConverter.cs
- JournalEntryStack.cs
- Rotation3DAnimation.cs
- AccessDataSourceView.cs
- ScrollItemPatternIdentifiers.cs
- SmiEventSink.cs
- UriTemplateLiteralQueryValue.cs
- FloaterParagraph.cs
- GeometryHitTestParameters.cs
- HybridDictionary.cs
- SrgsElementFactoryCompiler.cs
- Soap.cs
- ScriptResourceDefinition.cs
- BrushConverter.cs
- ThousandthOfEmRealDoubles.cs
- MimeBasePart.cs
- ModuleConfigurationInfo.cs
- ItemCollection.cs
- StructuredType.cs
- KeyTime.cs
- XamlClipboardData.cs
- TransportContext.cs
- WindowsFormsHostPropertyMap.cs
- TextSpanModifier.cs
- ThousandthOfEmRealPoints.cs
- BooleanAnimationUsingKeyFrames.cs
- ETagAttribute.cs
- CodeExporter.cs
- HttpStreamXmlDictionaryReader.cs
- StreamWithDictionary.cs
- ResourceDictionaryCollection.cs
- EnumType.cs
- PeerCollaboration.cs
- TypeTypeConverter.cs