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
- TableRowCollection.cs
- ParallelRangeManager.cs
- BindingValueChangedEventArgs.cs
- ErrorProvider.cs
- SecurityKeyUsage.cs
- SoundPlayerAction.cs
- CustomMenuItemCollection.cs
- XPathEmptyIterator.cs
- Figure.cs
- errorpatternmatcher.cs
- DoubleLinkListEnumerator.cs
- ValueOfAction.cs
- PolyBezierSegment.cs
- XXXInfos.cs
- CacheMemory.cs
- mediaclock.cs
- ToolStripProgressBar.cs
- GraphicsContainer.cs
- CompilerState.cs
- IisTraceListener.cs
- ServiceConfigurationTraceRecord.cs
- Operators.cs
- PreDigestedSignedInfo.cs
- BindingSource.cs
- Base64Encoder.cs
- WebServiceErrorEvent.cs
- PopupEventArgs.cs
- ContentValidator.cs
- PropertyPath.cs
- FeedUtils.cs
- RegexTypeEditor.cs
- SafeMILHandle.cs
- RefreshEventArgs.cs
- XmlDictionaryString.cs
- ControlParameter.cs
- GroupItemAutomationPeer.cs
- ObjectAnimationBase.cs
- Visitors.cs
- AuthenticatedStream.cs
- DbConnectionOptions.cs
- ClientRuntime.cs
- updateconfighost.cs
- ResourceReferenceExpressionConverter.cs
- SafeHandles.cs
- XPathNodePointer.cs
- DataGridColumnHeader.cs
- GridViewDeletedEventArgs.cs
- LongTypeConverter.cs
- CompositionAdorner.cs
- RegexMatchCollection.cs
- Visual3DCollection.cs
- DataStreams.cs
- TextServicesCompartmentContext.cs
- WindowsAuthenticationEventArgs.cs
- ReturnEventArgs.cs
- DataGridViewSortCompareEventArgs.cs
- TaiwanLunisolarCalendar.cs
- DataStreams.cs
- DiscoveryDocumentSerializer.cs
- AffineTransform3D.cs
- BindStream.cs
- BitmapEffectOutputConnector.cs
- List.cs
- tooltip.cs
- ArgumentFixer.cs
- EntityDataSourceSelectedEventArgs.cs
- TextSelectionHelper.cs
- SoapAttributeAttribute.cs
- SQLDateTime.cs
- ThreadLocal.cs
- CodeMethodInvokeExpression.cs
- EntityKeyElement.cs
- XmlQueryStaticData.cs
- AssemblyAttributesGoHere.cs
- X509Extension.cs
- XPathAncestorQuery.cs
- Version.cs
- HttpRequestCacheValidator.cs
- MarkupCompilePass1.cs
- ViewManager.cs
- ToolBar.cs
- PictureBoxDesigner.cs
- ReadingWritingEntityEventArgs.cs
- EventMappingSettingsCollection.cs
- DetailsViewUpdateEventArgs.cs
- DuplicateWaitObjectException.cs
- PeerNearMe.cs
- SafeNativeMethods.cs
- ColumnResult.cs
- DataGridViewMethods.cs
- CodeTypeReferenceCollection.cs
- DelegatedStream.cs
- PostBackTrigger.cs
- Wildcard.cs
- IPAddress.cs
- ValueUnavailableException.cs
- ShapingEngine.cs
- AssociationType.cs
- RequestCache.cs
- BigIntegerStorage.cs