Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / SelfIssuedAuthRSACryptoProvider.cs / 1 / SelfIssuedAuthRSACryptoProvider.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- // namespace Microsoft.InfoCards { using System; using System.IdentityModel.Selectors; using System.IdentityModel.Tokens; using System.ServiceModel; using System.ServiceModel.Security; using System.ServiceModel.Security.Tokens; using System.Runtime.InteropServices; using System.Security.Cryptography; using System.IdentityModel; using System.Security.Cryptography.Xml; using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace; using System.Collections.ObjectModel; using System.Collections.Generic; // // Summary: // This class provides indirect access an RSACryptoServiceProvider - this allows us to // protect the private key better // internal class SelfIssuedAuthRSACryptoProvider : RSA { RSACryptoServiceProvider m_rsa; // // Summary: // Given a pointer to a CryptoHandle create a new instance of this class. // public SelfIssuedAuthRSACryptoProvider( RSACryptoServiceProvider rsa ) : base() { m_rsa = rsa; } public override String SignatureAlgorithm { get { return m_rsa.SignatureAlgorithm; } } public override String KeyExchangeAlgorithm { get { return m_rsa.KeyExchangeAlgorithm; } } public bool IsPublicOnly() { return m_rsa.PublicOnly; } public override byte[ ] EncryptValue( byte[ ] rgb ) { throw IDT.ThrowHelperError( new NotSupportedException() ); } public override byte[ ] DecryptValue( byte[ ] rgb ) { throw IDT.ThrowHelperError( new NotSupportedException() ); } public byte[ ] Decrypt( byte[ ] inData, bool fAOEP ) { throw IDT.ThrowHelperError( new NotSupportedException() ); } public byte[ ] Encrypt( byte[ ] inData, bool fAOEP ) { throw IDT.ThrowHelperError( new NotSupportedException() ); } public byte[ ] SignHash( byte[ ] hash, string hashAlgOid ) { IDT.ThrowInvalidArgumentConditional( null == hash || 0 == hash.Length, "hash" ); IDT.ThrowInvalidArgumentConditional( String.IsNullOrEmpty( hashAlgOid ), "hashAlgOid" ); return m_rsa.SignHash( hash, hashAlgOid ); } public bool VerifyHash( byte[ ] hash, string hashAlgOid, byte[ ] sig ) { IDT.ThrowInvalidArgumentConditional( null == hash || 0 == hash.Length, "hash" ); IDT.ThrowInvalidArgumentConditional( String.IsNullOrEmpty( hashAlgOid ), "hashAlgOid" ); IDT.ThrowInvalidArgumentConditional( null == sig || 0 == sig.Length, "sig" ); return m_rsa.VerifyHash( hash, hashAlgOid, sig ); } public override RSAParameters ExportParameters( bool includePrivateParameters ) { throw IDT.ThrowHelperError( new NotSupportedException() ); } public override string ToXmlString( bool includePrivateParameters ) { throw IDT.ThrowHelperError( new NotSupportedException() ); } public override void FromXmlString( string xmlString ) { throw IDT.ThrowHelperError( new NotSupportedException() ); } public override void ImportParameters( System.Security.Cryptography.RSAParameters parameters ) { throw IDT.ThrowHelperError( new NotSupportedException() ); } protected override void Dispose( bool disposing ) { if( null != m_rsa ) { ( ( IDisposable )m_rsa ).Dispose(); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EncodingTable.cs
- MultiBindingExpression.cs
- TranslateTransform3D.cs
- OutputCache.cs
- StorageSetMapping.cs
- Registry.cs
- JoinCqlBlock.cs
- DocumentViewer.cs
- DesignerDataTableBase.cs
- RangeValueProviderWrapper.cs
- ToolStripDropDownClosingEventArgs.cs
- VScrollProperties.cs
- ListBindableAttribute.cs
- Dump.cs
- EditorZoneBase.cs
- VectorCollectionConverter.cs
- PerfProviderCollection.cs
- StyleBamlTreeBuilder.cs
- SqlIdentifier.cs
- NameTable.cs
- XmlDataProvider.cs
- XmlAnyElementAttributes.cs
- DragEvent.cs
- PageAsyncTaskManager.cs
- ContourSegment.cs
- PersonalizableTypeEntry.cs
- DependencyObjectPropertyDescriptor.cs
- ThrowHelper.cs
- MemoryFailPoint.cs
- TogglePattern.cs
- CustomAttribute.cs
- GlyphRunDrawing.cs
- ContentTextAutomationPeer.cs
- ObjectViewFactory.cs
- RawUIStateInputReport.cs
- WpfPayload.cs
- EventProviderWriter.cs
- TraceListeners.cs
- MatrixTransform3D.cs
- CookieParameter.cs
- util.cs
- FontWeight.cs
- ToolStripScrollButton.cs
- PlaceHolder.cs
- TaskFileService.cs
- SmtpNetworkElement.cs
- CodeCommentStatementCollection.cs
- KeyInstance.cs
- CustomActivityDesigner.cs
- CollectionBuilder.cs
- PolicyLevel.cs
- PropertyGroupDescription.cs
- ConstraintEnumerator.cs
- BindingListCollectionView.cs
- SqlRemoveConstantOrderBy.cs
- ConfigurationSectionGroupCollection.cs
- AxHost.cs
- SecurityNegotiationException.cs
- BaseCollection.cs
- SafeViewOfFileHandle.cs
- ParameterCollection.cs
- ArrangedElement.cs
- XhtmlBasicPanelAdapter.cs
- WorkflowInvoker.cs
- StylusEventArgs.cs
- SamlConditions.cs
- IdentityManager.cs
- AlternationConverter.cs
- IteratorFilter.cs
- ReadOnlyObservableCollection.cs
- DataGridViewColumnHeaderCell.cs
- ToolStripDropDownClosedEventArgs.cs
- ReliableInputConnection.cs
- WebBrowserPermission.cs
- InfoCardTraceRecord.cs
- ServiceOperationListItemList.cs
- GridViewColumnHeader.cs
- ToolStripSeparatorRenderEventArgs.cs
- UrlAuthFailedErrorFormatter.cs
- TypeConstant.cs
- SqlDependency.cs
- StreamResourceInfo.cs
- PreloadedPackages.cs
- EmptyQuery.cs
- ReadContentAsBinaryHelper.cs
- PeerToPeerException.cs
- AppDomainShutdownMonitor.cs
- ContentPresenter.cs
- MetadataUtil.cs
- LinearKeyFrames.cs
- OleDbTransaction.cs
- DiffuseMaterial.cs
- DataListItemEventArgs.cs
- CommonProperties.cs
- AssemblyCollection.cs
- DataMemberListEditor.cs
- ObjectSecurity.cs
- ClientType.cs
- Deflater.cs
- DataGridViewRowsRemovedEventArgs.cs