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
- ConfigurationElementProperty.cs
- NativeCppClassAttribute.cs
- DockEditor.cs
- PriorityRange.cs
- FieldToken.cs
- DataSourceXmlSerializationAttribute.cs
- FormsAuthenticationTicket.cs
- StringPropertyBuilder.cs
- SynchronizationLockException.cs
- ExtensionSimplifierMarkupObject.cs
- Lasso.cs
- ComNativeDescriptor.cs
- IntegerValidatorAttribute.cs
- SqlUdtInfo.cs
- BoolExpressionVisitors.cs
- DataTableMapping.cs
- MarshalDirectiveException.cs
- ReadingWritingEntityEventArgs.cs
- ToolStripDropDownButton.cs
- NavigatingCancelEventArgs.cs
- Viewport2DVisual3D.cs
- SqlInternalConnectionSmi.cs
- HTMLTagNameToTypeMapper.cs
- X509CertificateClaimSet.cs
- CodeAttributeDeclarationCollection.cs
- StreamWriter.cs
- RelOps.cs
- PatternMatcher.cs
- XmlNamedNodeMap.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- RuntimeDelegateArgument.cs
- XmlSchemaComplexContentRestriction.cs
- SessionParameter.cs
- DBSqlParser.cs
- SettingsPropertyValue.cs
- Solver.cs
- Rect3D.cs
- MessageBox.cs
- Dictionary.cs
- ObjectToIdCache.cs
- ConfigXmlCDataSection.cs
- HttpListenerResponse.cs
- ClientSideQueueItem.cs
- FileChangesMonitor.cs
- ChannelTerminatedException.cs
- ByteStreamMessageEncoderFactory.cs
- BufferManager.cs
- IdnElement.cs
- SourceFileInfo.cs
- DbProviderFactoriesConfigurationHandler.cs
- SpellerInterop.cs
- Single.cs
- ShaperBuffers.cs
- XomlCompilerHelpers.cs
- UnmanagedBitmapWrapper.cs
- PtsPage.cs
- DefaultPrintController.cs
- ReaderWriterLockWrapper.cs
- ToolboxCategory.cs
- ConversionValidationRule.cs
- Win32MouseDevice.cs
- ListViewUpdatedEventArgs.cs
- SqlRetyper.cs
- _RegBlobWebProxyDataBuilder.cs
- _NetRes.cs
- CodeDOMUtility.cs
- ContextInformation.cs
- ListBoxItemWrapperAutomationPeer.cs
- RTLAwareMessageBox.cs
- ConnectionPoolManager.cs
- ByteKeyFrameCollection.cs
- ChannelFactoryRefCache.cs
- TypeConverterHelper.cs
- _TimerThread.cs
- ActivationWorker.cs
- _UriTypeConverter.cs
- ScriptControlManager.cs
- XamlWriter.cs
- SerializableAuthorizationContext.cs
- SiblingIterators.cs
- ControllableStoryboardAction.cs
- TdsParserStateObject.cs
- UInt32Converter.cs
- ActivityIdHeader.cs
- LinkUtilities.cs
- PropertyEmitterBase.cs
- CharUnicodeInfo.cs
- DesignerSelectionListAdapter.cs
- InvokeBase.cs
- CultureTableRecord.cs
- XmlTextWriter.cs
- StaticDataManager.cs
- OdbcCommand.cs
- Tuple.cs
- Command.cs
- BitmapInitialize.cs
- printdlgexmarshaler.cs
- Composition.cs
- GridProviderWrapper.cs
- DBConnectionString.cs