Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / Cryptography / RSAPKCS1KeyExchangeDeformatter.cs / 1 / RSAPKCS1KeyExchangeDeformatter.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== namespace System.Security.Cryptography { [System.Runtime.InteropServices.ComVisible(true)] public class RSAPKCS1KeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter { RSA _rsaKey; RandomNumberGenerator RngValue; // Constructors public RSAPKCS1KeyExchangeDeformatter() {} public RSAPKCS1KeyExchangeDeformatter(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } // // public properties // public RandomNumberGenerator RNG { get { return RngValue; } set { RngValue = value; } } public override String Parameters { get { return null; } set { ;} } // // public methods // public override byte[] DecryptKeyExchange(byte[] rgbIn) { if (_rsaKey == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingKey")); byte[] rgbOut; if (_rsaKey is RSACryptoServiceProvider) { rgbOut = ((RSACryptoServiceProvider) _rsaKey).Decrypt(rgbIn, false); } else { int i; byte[] rgb; rgb = _rsaKey.DecryptValue(rgbIn); // // Expected format is: // 00 || 02 || PS || 00 || D // where PS does not contain any zeros. // for (i = 2; i= rgb.Length) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_PKCS1Decoding")); i++; // Skip over the zero rgbOut = new byte[rgb.Length - i]; Buffer.InternalBlockCopy(rgb, i, rgbOut, 0, rgbOut.Length); } return rgbOut; } public override void SetKey(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Triangle.cs
- ApplicationTrust.cs
- Border.cs
- XmlSchemaDatatype.cs
- FontFamily.cs
- ImageMapEventArgs.cs
- ObjectKeyFrameCollection.cs
- DataRecordObjectView.cs
- RewritingPass.cs
- HelpKeywordAttribute.cs
- Style.cs
- EncoderExceptionFallback.cs
- AdornerDecorator.cs
- Trace.cs
- LogReserveAndAppendState.cs
- DataBindEngine.cs
- LogStream.cs
- DiscoveryMessageProperty.cs
- InternalControlCollection.cs
- sortedlist.cs
- IriParsingElement.cs
- File.cs
- XmlSchemaChoice.cs
- odbcmetadatacollectionnames.cs
- ExpandableObjectConverter.cs
- ReaderWriterLock.cs
- ObjectListField.cs
- ObjectQuery_EntitySqlExtensions.cs
- SelectionService.cs
- WebHttpSecurityModeHelper.cs
- ReadOnlyDataSource.cs
- XsltConvert.cs
- TreeNodeBindingCollection.cs
- SQLRoleProvider.cs
- nulltextnavigator.cs
- DropSource.cs
- TraceContext.cs
- ArgumentException.cs
- ComponentDispatcherThread.cs
- ValidationError.cs
- OleDbParameter.cs
- Stack.cs
- Wildcard.cs
- TemplateEditingService.cs
- glyphs.cs
- SamlAdvice.cs
- Int16AnimationUsingKeyFrames.cs
- CqlErrorHelper.cs
- QilUnary.cs
- HttpProxyTransportBindingElement.cs
- InternalTypeHelper.cs
- Version.cs
- MatchingStyle.cs
- Pens.cs
- _TLSstream.cs
- AsymmetricAlgorithm.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- FileLevelControlBuilderAttribute.cs
- ComEventsSink.cs
- SqlUtil.cs
- PresentationTraceSources.cs
- parserscommon.cs
- XmlWellformedWriter.cs
- DisposableCollectionWrapper.cs
- SafeBitVector32.cs
- OutputScopeManager.cs
- SafeProcessHandle.cs
- WindowsListViewItemCheckBox.cs
- SafeTokenHandle.cs
- CodeTryCatchFinallyStatement.cs
- RelativeSource.cs
- GenericsInstances.cs
- WebControl.cs
- DataGridViewControlCollection.cs
- RegexGroupCollection.cs
- PreProcessInputEventArgs.cs
- BitmapEditor.cs
- XmlSecureResolver.cs
- SqlUtil.cs
- SessionEndingEventArgs.cs
- CompoundFileIOPermission.cs
- ContainerSelectorActiveEvent.cs
- DataExpression.cs
- SQLCharsStorage.cs
- Camera.cs
- Style.cs
- PreservationFileWriter.cs
- InputLangChangeEvent.cs
- Simplifier.cs
- ApplyTemplatesAction.cs
- RoamingStoreFileUtility.cs
- DoubleLink.cs
- DocumentScope.cs
- SafeFileHandle.cs
- Parallel.cs
- _NestedSingleAsyncResult.cs
- ServiceContractDetailViewControl.cs
- ClientRuntimeConfig.cs
- ReadOnlyDataSourceView.cs
- PolyQuadraticBezierSegmentFigureLogic.cs