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
- RotateTransform3D.cs
- UriScheme.cs
- ImageFormatConverter.cs
- RuntimeEnvironment.cs
- COM2PictureConverter.cs
- _NTAuthentication.cs
- IDReferencePropertyAttribute.cs
- IndentedWriter.cs
- SqlProvider.cs
- HttpCapabilitiesEvaluator.cs
- KeyValueSerializer.cs
- FormsAuthenticationEventArgs.cs
- CallContext.cs
- PreservationFileReader.cs
- ImageIndexConverter.cs
- Page.cs
- EntityStoreSchemaGenerator.cs
- DesignerLoader.cs
- ToolStripScrollButton.cs
- ToolStripRenderEventArgs.cs
- DataPagerFieldCollection.cs
- InternalSafeNativeMethods.cs
- ObjectDataSourceStatusEventArgs.cs
- DirtyTextRange.cs
- DynamicControl.cs
- CreatingCookieEventArgs.cs
- OraclePermission.cs
- ManipulationVelocities.cs
- CustomAttributeSerializer.cs
- Scene3D.cs
- ListCollectionView.cs
- WebPageTraceListener.cs
- ItemMap.cs
- EUCJPEncoding.cs
- RefreshInfo.cs
- XmlSchemaNotation.cs
- AppDomainFactory.cs
- XmlSchemaSimpleType.cs
- DbConnectionHelper.cs
- MemoryRecordBuffer.cs
- SerializationEventsCache.cs
- XsltFunctions.cs
- EncoderNLS.cs
- ComplexPropertyEntry.cs
- ResourceDictionary.cs
- UnsafeNativeMethods.cs
- ItemMap.cs
- CompensateDesigner.cs
- WebColorConverter.cs
- CheckoutException.cs
- TripleDES.cs
- ProfileSettingsCollection.cs
- XmlSchemaGroup.cs
- TypeConverterHelper.cs
- SerializableTypeCodeDomSerializer.cs
- XmlCollation.cs
- XpsS0ValidatingLoader.cs
- Clock.cs
- DataGridViewLayoutData.cs
- TemplateModeChangedEventArgs.cs
- HtmlInputReset.cs
- XmlSortKeyAccumulator.cs
- ToolStripMenuItemCodeDomSerializer.cs
- XmlSerializerAssemblyAttribute.cs
- XmlEventCache.cs
- DecimalConverter.cs
- ContextMenuAutomationPeer.cs
- AuthenticodeSignatureInformation.cs
- SubstitutionDesigner.cs
- ProtocolsSection.cs
- MatrixAnimationUsingKeyFrames.cs
- ProtocolsConfiguration.cs
- StrokeCollectionDefaultValueFactory.cs
- SkewTransform.cs
- XslAstAnalyzer.cs
- DbParameterHelper.cs
- ColumnMapProcessor.cs
- HwndSource.cs
- EventData.cs
- ButtonChrome.cs
- OracleConnectionFactory.cs
- ModelUIElement3D.cs
- MatrixConverter.cs
- DelegatingTypeDescriptionProvider.cs
- EtwTrace.cs
- EventPropertyMap.cs
- LineInfo.cs
- GeometryCollection.cs
- RequestCachePolicy.cs
- CreatingCookieEventArgs.cs
- FrameAutomationPeer.cs
- HandleCollector.cs
- PersistenceTypeAttribute.cs
- RawUIStateInputReport.cs
- ObjectSecurity.cs
- BinaryEditor.cs
- ViewStateException.cs
- PersonalizationProviderCollection.cs
- TreeNodeStyleCollection.cs
- FileSystemWatcher.cs