Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Tokens / X509ThumbprintKeyIdentifierClause.cs / 1305376 / X509ThumbprintKeyIdentifierClause.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel.Tokens { using System.Globalization; using System.Security.Cryptography.X509Certificates; public class X509ThumbprintKeyIdentifierClause : BinaryKeyIdentifierClause { public X509ThumbprintKeyIdentifierClause(X509Certificate2 certificate) : this(GetHash(certificate), false) { } public X509ThumbprintKeyIdentifierClause(byte[] thumbprint) : this(thumbprint, true) { } internal X509ThumbprintKeyIdentifierClause(byte[] thumbprint, bool cloneBuffer) : base(null, thumbprint, cloneBuffer) { } static byte[] GetHash(X509Certificate2 certificate) { if (certificate == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("certificate"); return certificate.GetCertHash(); } public byte[] GetX509Thumbprint() { return GetBuffer(); } public bool Matches(X509Certificate2 certificate) { if (certificate == null) return false; return Matches(GetHash(certificate)); } public override string ToString() { return string.Format(CultureInfo.InvariantCulture, "X509ThumbprintKeyIdentifierClause(Hash = 0x{0})", ToHexString()); } } } // 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; using System.Security.Cryptography.X509Certificates; public class X509ThumbprintKeyIdentifierClause : BinaryKeyIdentifierClause { public X509ThumbprintKeyIdentifierClause(X509Certificate2 certificate) : this(GetHash(certificate), false) { } public X509ThumbprintKeyIdentifierClause(byte[] thumbprint) : this(thumbprint, true) { } internal X509ThumbprintKeyIdentifierClause(byte[] thumbprint, bool cloneBuffer) : base(null, thumbprint, cloneBuffer) { } static byte[] GetHash(X509Certificate2 certificate) { if (certificate == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("certificate"); return certificate.GetCertHash(); } public byte[] GetX509Thumbprint() { return GetBuffer(); } public bool Matches(X509Certificate2 certificate) { if (certificate == null) return false; return Matches(GetHash(certificate)); } public override string ToString() { return string.Format(CultureInfo.InvariantCulture, "X509ThumbprintKeyIdentifierClause(Hash = 0x{0})", ToHexString()); } } } // 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
- TrustLevelCollection.cs
- SqlDataAdapter.cs
- HyperLinkStyle.cs
- SoapMessage.cs
- DataColumnCollection.cs
- PingReply.cs
- Configuration.cs
- KeyValueConfigurationElement.cs
- IndexedEnumerable.cs
- RouteItem.cs
- XmlArrayItemAttributes.cs
- Popup.cs
- Ipv6Element.cs
- PagesSection.cs
- NameSpaceExtractor.cs
- RootNamespaceAttribute.cs
- _Events.cs
- HttpResponseBase.cs
- GroupBox.cs
- COM2ExtendedTypeConverter.cs
- CellConstantDomain.cs
- VisualStyleElement.cs
- Int32Converter.cs
- ImageConverter.cs
- SspiWrapper.cs
- SimpleNameService.cs
- KerberosTicketHashIdentifierClause.cs
- SafeArrayTypeMismatchException.cs
- DiscoveryVersion.cs
- UIInitializationException.cs
- MsmqIntegrationElement.cs
- PopOutPanel.cs
- HttpHandlersSection.cs
- GifBitmapEncoder.cs
- Enumerable.cs
- OdbcConnectionStringbuilder.cs
- WebColorConverter.cs
- DataGridViewRowPrePaintEventArgs.cs
- ResourceExpressionBuilder.cs
- RedirectionProxy.cs
- Math.cs
- LogEntrySerializer.cs
- BooleanFunctions.cs
- QilValidationVisitor.cs
- IDataContractSurrogate.cs
- ControlTemplate.cs
- StandardRuntimeEnumValidator.cs
- ToolboxItem.cs
- DataBoundControl.cs
- ReadOnlyState.cs
- FacetValueContainer.cs
- MembershipUser.cs
- DeviceSpecificDesigner.cs
- SoundPlayerAction.cs
- PageCodeDomTreeGenerator.cs
- SequentialOutput.cs
- ColumnMapProcessor.cs
- StateFinalizationDesigner.cs
- ParseNumbers.cs
- CheckBoxList.cs
- ArrayConverter.cs
- HwndAppCommandInputProvider.cs
- TraceUtility.cs
- RestHandler.cs
- PriorityQueue.cs
- CultureMapper.cs
- NumberSubstitution.cs
- TextModifierScope.cs
- RemotingService.cs
- EasingKeyFrames.cs
- DbConvert.cs
- ChildTable.cs
- ObjectStateEntryDbDataRecord.cs
- WmlTextBoxAdapter.cs
- ArrayList.cs
- StringKeyFrameCollection.cs
- BaseHashHelper.cs
- COM2IProvidePropertyBuilderHandler.cs
- MethodAccessException.cs
- BinarySerializer.cs
- SerializationObjectManager.cs
- WhitespaceSignificantCollectionAttribute.cs
- Models.cs
- Panel.cs
- TabRenderer.cs
- __ComObject.cs
- UserControl.cs
- Utility.cs
- TextContainer.cs
- DataGridParentRows.cs
- ExtendedProperty.cs
- ConvertEvent.cs
- SymDocumentType.cs
- HtmlTextArea.cs
- StaticExtensionConverter.cs
- InvalidOleVariantTypeException.cs
- ProcessModelInfo.cs
- SoapRpcMethodAttribute.cs
- DiscoveryServiceExtension.cs
- RotateTransform.cs