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
- FunctionMappingTranslator.cs
- Trigger.cs
- CodeEventReferenceExpression.cs
- ThemeDirectoryCompiler.cs
- InsufficientMemoryException.cs
- BCryptSafeHandles.cs
- TypeInitializationException.cs
- EllipticalNodeOperations.cs
- BaseTemplateParser.cs
- HttpsHostedTransportConfiguration.cs
- DataControlButton.cs
- ExceptionNotification.cs
- SortQueryOperator.cs
- CdpEqualityComparer.cs
- StartFileNameEditor.cs
- File.cs
- PageSetupDialog.cs
- TreeView.cs
- ProviderIncompatibleException.cs
- InputProcessorProfiles.cs
- SafeSecurityHandles.cs
- NestedContainer.cs
- FileSystemInfo.cs
- BaseParagraph.cs
- TextDecorationUnitValidation.cs
- Site.cs
- XmlJsonWriter.cs
- RelOps.cs
- HelpKeywordAttribute.cs
- TypeHelpers.cs
- PlatformCulture.cs
- shaperfactoryquerycacheentry.cs
- HttpInputStream.cs
- FocusManager.cs
- BuildProvider.cs
- AuthenticationException.cs
- Preprocessor.cs
- StoreContentChangedEventArgs.cs
- CompensationHandlingFilter.cs
- NativeRightsManagementAPIsStructures.cs
- HTTPNotFoundHandler.cs
- ExtenderProvidedPropertyAttribute.cs
- FileFormatException.cs
- DebugView.cs
- HwndSourceKeyboardInputSite.cs
- ContextMenu.cs
- ShaderRenderModeValidation.cs
- ListCollectionView.cs
- SchemaTableColumn.cs
- SoapExtension.cs
- DtdParser.cs
- Base64Encoder.cs
- XsltCompileContext.cs
- TableItemPatternIdentifiers.cs
- StagingAreaInputItem.cs
- SynchronizationLockException.cs
- RtfToXamlLexer.cs
- MemberAccessException.cs
- NonSerializedAttribute.cs
- BulletedList.cs
- ModelTypeConverter.cs
- TextOnlyOutput.cs
- NamespaceMapping.cs
- Stackframe.cs
- DecoderFallback.cs
- ObjectCloneHelper.cs
- HealthMonitoringSectionHelper.cs
- XmlIlGenerator.cs
- PageEventArgs.cs
- SoapDocumentMethodAttribute.cs
- KeyedQueue.cs
- SiteMapProvider.cs
- ClientSettingsProvider.cs
- DrawingContextDrawingContextWalker.cs
- AstTree.cs
- TypeBuilder.cs
- TypeFieldSchema.cs
- UriTemplateMatchException.cs
- ProjectionPlanCompiler.cs
- FilterQuery.cs
- BooleanAnimationBase.cs
- EncodingInfo.cs
- RegexTree.cs
- EdmSchemaError.cs
- TCPClient.cs
- OwnerDrawPropertyBag.cs
- ManagedIStream.cs
- UnmanagedMemoryAccessor.cs
- FileUtil.cs
- LogArchiveSnapshot.cs
- DataGridColumnHeader.cs
- RequestCacheValidator.cs
- ToolStripSeparatorRenderEventArgs.cs
- PlatformNotSupportedException.cs
- MDIWindowDialog.cs
- BoolExpressionVisitors.cs
- ProtocolsConfiguration.cs
- DataMemberConverter.cs
- ContextProperty.cs
- SkewTransform.cs