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
- Deserializer.cs
- ObjectAnimationUsingKeyFrames.cs
- AsnEncodedData.cs
- CloseCryptoHandleRequest.cs
- NullableFloatMinMaxAggregationOperator.cs
- HelpKeywordAttribute.cs
- CustomTypeDescriptor.cs
- HtmlSelect.cs
- KeyPullup.cs
- WmlLabelAdapter.cs
- DataFieldConverter.cs
- XmlReflectionImporter.cs
- ListSourceHelper.cs
- ExpressionVisitor.cs
- CookieHandler.cs
- ResourcesChangeInfo.cs
- SpecularMaterial.cs
- GridViewCancelEditEventArgs.cs
- MetadataItemEmitter.cs
- CloseCollectionAsyncResult.cs
- ServiceContractViewControl.Designer.cs
- EncoderFallback.cs
- GenericArgumentsUpdater.cs
- CustomWebEventKey.cs
- ListCollectionView.cs
- PageAdapter.cs
- MeasureItemEvent.cs
- DataView.cs
- Roles.cs
- ConfigsHelper.cs
- HttpProfileGroupBase.cs
- updateconfighost.cs
- DataGridViewRowEventArgs.cs
- DropShadowBitmapEffect.cs
- DurableInstancingOptions.cs
- ResourceReader.cs
- returneventsaver.cs
- PathFigure.cs
- XmlWriterTraceListener.cs
- PathFigureCollection.cs
- XmlDictionaryReader.cs
- MailSettingsSection.cs
- GroupBoxDesigner.cs
- DataViewManagerListItemTypeDescriptor.cs
- SurrogateEncoder.cs
- PermissionSetTriple.cs
- Screen.cs
- OleDbConnectionFactory.cs
- MethodToken.cs
- DesignerWithHeader.cs
- CookieParameter.cs
- ContainerVisual.cs
- ExceptionHelpers.cs
- List.cs
- BaseHashHelper.cs
- ReadWriteObjectLock.cs
- Int32Storage.cs
- XmlAttributeOverrides.cs
- OutputCacheModule.cs
- DbLambda.cs
- DataGridViewAccessibleObject.cs
- HtmlShimManager.cs
- ExtendedProtectionPolicy.cs
- BuildManagerHost.cs
- HttpGetProtocolReflector.cs
- WindowsSysHeader.cs
- XmlCompatibilityReader.cs
- WebBrowserDocumentCompletedEventHandler.cs
- DetailsViewRow.cs
- RepeaterItemEventArgs.cs
- StreamSecurityUpgradeAcceptorBase.cs
- SafeTimerHandle.cs
- DiagnosticsElement.cs
- ExtensionWindowResizeGrip.cs
- ContainerSelectorGlyph.cs
- AssociationSet.cs
- DetailsViewUpdateEventArgs.cs
- EventTask.cs
- Types.cs
- DeclarativeCatalogPart.cs
- DataKey.cs
- XamlParser.cs
- TreeNode.cs
- ContainerCodeDomSerializer.cs
- Parameter.cs
- CookieProtection.cs
- TraceInternal.cs
- FloaterBaseParaClient.cs
- SchemaTableOptionalColumn.cs
- MenuItemStyleCollection.cs
- EntityDataSourceDataSelectionPanel.designer.cs
- FixedSOMContainer.cs
- ContextBase.cs
- HttpProfileBase.cs
- TextEditorSelection.cs
- _TransmitFileOverlappedAsyncResult.cs
- XhtmlConformanceSection.cs
- CompositeScriptReference.cs
- BehaviorEditorPart.cs
- RegistrationServices.cs