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
- TemplateControl.cs
- FunctionDescription.cs
- DbDataSourceEnumerator.cs
- RelationshipNavigation.cs
- ReferenceEqualityComparer.cs
- UrlMappingsModule.cs
- RegexGroupCollection.cs
- RTLAwareMessageBox.cs
- Freezable.cs
- PartialList.cs
- DelegatingTypeDescriptionProvider.cs
- NumericPagerField.cs
- RuntimeConfigLKG.cs
- ProbeMatches11.cs
- TextSelectionProcessor.cs
- CodeSnippetTypeMember.cs
- ProxyHelper.cs
- SharedConnectionWorkflowTransactionService.cs
- AssociationTypeEmitter.cs
- SystemSounds.cs
- DataGridViewCellFormattingEventArgs.cs
- CroppedBitmap.cs
- CompareValidator.cs
- Stroke2.cs
- HandlerBase.cs
- NodeCounter.cs
- WSSecurityOneDotZeroReceiveSecurityHeader.cs
- TimeoutTimer.cs
- TagNameToTypeMapper.cs
- TraceRecord.cs
- SerializerProvider.cs
- FullTextLine.cs
- NonClientArea.cs
- DynamicDiscoSearcher.cs
- DatePickerTextBox.cs
- TemplateColumn.cs
- EntityDataSourceColumn.cs
- WindowsFormsHostPropertyMap.cs
- Tokenizer.cs
- SqlProviderManifest.cs
- SecurityResources.cs
- WindowsTokenRoleProvider.cs
- LinqDataSourceValidationException.cs
- DataServiceHostFactory.cs
- SequentialActivityDesigner.cs
- HttpNamespaceReservationInstallComponent.cs
- DataBoundControlDesigner.cs
- ExpandoClass.cs
- OrderPreservingPipeliningSpoolingTask.cs
- BitmapEffectDrawingContextState.cs
- ObjectItemLoadingSessionData.cs
- EntityDataSourceValidationException.cs
- SqlFlattener.cs
- PaperSource.cs
- SmtpCommands.cs
- SmiEventStream.cs
- DictionaryCustomTypeDescriptor.cs
- ServicePoint.cs
- TemplatePartAttribute.cs
- Publisher.cs
- DataGridViewEditingControlShowingEventArgs.cs
- TryCatch.cs
- mda.cs
- _HTTPDateParse.cs
- StorageMappingItemCollection.cs
- DoubleCollectionValueSerializer.cs
- LifetimeServices.cs
- XmlSchemaSet.cs
- DnsEndpointIdentity.cs
- CombinedGeometry.cs
- AutomationPatternInfo.cs
- ActivityExecutionWorkItem.cs
- Image.cs
- FixedPageProcessor.cs
- FaultContractInfo.cs
- Vector3DAnimation.cs
- RegisteredExpandoAttribute.cs
- ScriptResourceInfo.cs
- NoResizeHandleGlyph.cs
- FixedLineResult.cs
- FrugalList.cs
- CancelEventArgs.cs
- Part.cs
- PerformanceCountersElement.cs
- XMLUtil.cs
- CoreSwitches.cs
- ProfileSection.cs
- AmbiguousMatchException.cs
- EntityUtil.cs
- XhtmlBasicCommandAdapter.cs
- MultipleViewPattern.cs
- HybridDictionary.cs
- Asn1Utilities.cs
- HtmlInputFile.cs
- ToolStripDropDownMenu.cs
- ScrollContentPresenter.cs
- MarkupCompiler.cs
- StrokeFIndices.cs
- UserNameSecurityToken.cs
- Documentation.cs