Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Tokens / EncryptedKeyIdentifierClause.cs / 1 / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DesignBindingPropertyDescriptor.cs
- FixedStringLookup.cs
- MetadataArtifactLoaderResource.cs
- TransactionManager.cs
- EmbeddedObject.cs
- Operators.cs
- RuntimeResourceSet.cs
- XamlBrushSerializer.cs
- DataPagerCommandEventArgs.cs
- ContextMenu.cs
- SyntaxCheck.cs
- SByteConverter.cs
- CollaborationHelperFunctions.cs
- login.cs
- CanonicalizationDriver.cs
- Debug.cs
- HashCodeCombiner.cs
- UnitySerializationHolder.cs
- AVElementHelper.cs
- WindowsAltTab.cs
- DeferredReference.cs
- PerformanceCounter.cs
- RequestQueryParser.cs
- InstanceOwnerException.cs
- SqlDependencyListener.cs
- SHA384.cs
- OneToOneMappingSerializer.cs
- TimeSpanStorage.cs
- XpsViewerException.cs
- HttpSessionStateBase.cs
- Italic.cs
- DrawingBrush.cs
- FileLoadException.cs
- XmlSchemaAttributeGroupRef.cs
- BamlResourceDeserializer.cs
- SaveFileDialog.cs
- Size.cs
- CompilerTypeWithParams.cs
- EditorPart.cs
- XsdValidatingReader.cs
- SpinWait.cs
- ProxyGenerator.cs
- XamlStyleSerializer.cs
- Convert.cs
- PolyLineSegment.cs
- XmlSchemaRedefine.cs
- EastAsianLunisolarCalendar.cs
- SendMessageChannelCache.cs
- RightsManagementLicense.cs
- EnumUnknown.cs
- Reference.cs
- ArithmeticException.cs
- AttributeEmitter.cs
- TokenizerHelper.cs
- HttpRuntimeSection.cs
- PageThemeParser.cs
- MatchAttribute.cs
- QueryCacheKey.cs
- NavigatorOutput.cs
- FlowLayoutSettings.cs
- ProfilePropertyNameValidator.cs
- PathFigureCollectionValueSerializer.cs
- SmtpException.cs
- WebPartEditVerb.cs
- IdnMapping.cs
- XmlBaseWriter.cs
- OracleInfoMessageEventArgs.cs
- TagMapInfo.cs
- SqlDataSourceQuery.cs
- ExpressionPrinter.cs
- HttpCookiesSection.cs
- ProcessStartInfo.cs
- CounterSampleCalculator.cs
- TypeGenericEnumerableViewSchema.cs
- QilScopedVisitor.cs
- BuilderInfo.cs
- FileVersionInfo.cs
- XmlWrappingReader.cs
- XmlC14NWriter.cs
- ParallelDesigner.cs
- DBCommand.cs
- SoapException.cs
- EventSchemaTraceListener.cs
- X509PeerCertificateAuthenticationElement.cs
- ContentPropertyAttribute.cs
- TypeConstant.cs
- WindowsListView.cs
- InstancePersistenceCommandException.cs
- PropertyKey.cs
- InputScopeAttribute.cs
- KnownTypeAttribute.cs
- ImageListUtils.cs
- CheckBox.cs
- MenuItemAutomationPeer.cs
- EqualityComparer.cs
- OleDbMetaDataFactory.cs
- WindowsRegion.cs
- TemplateKey.cs
- ApplicationFileParser.cs
- XmlNodeChangedEventArgs.cs