Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ClipboardData.cs
- InfoCardRSACryptoProvider.cs
- BitmapEffectGeneralTransform.cs
- SimpleFileLog.cs
- TextChangedEventArgs.cs
- X509ChainElement.cs
- CommandValueSerializer.cs
- Types.cs
- SoapException.cs
- QueryTreeBuilder.cs
- ZipIOCentralDirectoryFileHeader.cs
- SharedStatics.cs
- CodeDelegateCreateExpression.cs
- SplashScreen.cs
- WebBrowserEvent.cs
- CodeStatementCollection.cs
- GeneratedContractType.cs
- shaperfactory.cs
- PackageProperties.cs
- X509CertificateCollection.cs
- Win32SafeHandles.cs
- AuthenticationModuleElementCollection.cs
- ExceptionHandlerDesigner.cs
- BindingMemberInfo.cs
- AnnotationResourceCollection.cs
- complextypematerializer.cs
- VectorConverter.cs
- JsonServiceDocumentSerializer.cs
- XmlSchemaSimpleTypeList.cs
- VoiceChangeEventArgs.cs
- TransformConverter.cs
- X509DefaultServiceCertificateElement.cs
- IdlingCommunicationPool.cs
- WebPartVerb.cs
- Image.cs
- Message.cs
- ThaiBuddhistCalendar.cs
- UserMapPath.cs
- ConstrainedDataObject.cs
- SqlBuilder.cs
- DataConnectionHelper.cs
- AccessibilityApplicationManager.cs
- ResolveNameEventArgs.cs
- RuntimeHelpers.cs
- SerializationAttributes.cs
- errorpatternmatcher.cs
- SecurityManager.cs
- StyleXamlTreeBuilder.cs
- FileInfo.cs
- FontWeights.cs
- QfeChecker.cs
- SqlNodeAnnotations.cs
- UseLicense.cs
- BindingContext.cs
- CodeMemberMethod.cs
- SimpleBitVector32.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- FactoryMaker.cs
- Token.cs
- ZoneMembershipCondition.cs
- TreeChangeInfo.cs
- DbMetaDataFactory.cs
- OneOfScalarConst.cs
- CreateParams.cs
- CornerRadiusConverter.cs
- ScriptServiceAttribute.cs
- ClientFormsIdentity.cs
- Point4DConverter.cs
- RenderCapability.cs
- FormDesigner.cs
- OutputCacheSettings.cs
- PenThreadWorker.cs
- DocobjHost.cs
- GridView.cs
- SystemTcpStatistics.cs
- PersonalizationProviderCollection.cs
- _ListenerResponseStream.cs
- AuthStoreRoleProvider.cs
- webbrowsersite.cs
- ExclusiveHandle.cs
- DataServiceHostFactory.cs
- LongPath.cs
- dataobject.cs
- GeometryHitTestResult.cs
- RawUIStateInputReport.cs
- Track.cs
- XmlNamespaceManager.cs
- BuiltInExpr.cs
- GridPatternIdentifiers.cs
- DirectionalLight.cs
- RoleGroupCollection.cs
- ExpressionConverter.cs
- CounterCreationData.cs
- RunInstallerAttribute.cs
- RecordManager.cs
- TaiwanCalendar.cs
- BindingOperations.cs
- MappingItemCollection.cs
- URLAttribute.cs
- FilteredDataSetHelper.cs