Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / GenerateDerivedKeyRequest.cs / 1 / GenerateDerivedKeyRequest.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.InfoCards { using System; using System.Collections; using System.Diagnostics; using System.Security.Principal; using System.Runtime.InteropServices; using System.Text; using System.IO; internal class GenerateDerivedKeyRequest : ClientRequest { // // in // int m_sessionId; byte[] m_label; byte[] m_nonce; int m_derivedKeyLength; int m_offset; string m_derivationAlgUri; // // out // byte[ ] m_key; // // Summary // Constructs GenerateDerivedKeyRequest class // // Arguments: // callingProcess - The process in which the caller originated. // callingIdentity - The WindowsIdentity of the caller // rpcHandle - The handle of the native RPC request // inArgs - The stream to read input data from // outArgs - The stream to write output data to // public GenerateDerivedKeyRequest( Process callingProcess, WindowsIdentity callingIdentity, IntPtr rpcHandle, Stream inArgs, Stream outArgs ) : base( callingProcess, callingIdentity, rpcHandle, inArgs, outArgs ) { m_key = null; } protected override void OnMarshalInArgs() { BinaryReader breader = new InfoCardBinaryReader( InArgs, Encoding.Unicode ); m_sessionId = breader.ReadInt32(); int length = breader.ReadInt32(); m_label = breader.ReadBytes( length ); length = breader.ReadInt32(); m_nonce = breader.ReadBytes( length ); m_derivedKeyLength = breader.ReadInt32(); m_offset = breader.ReadInt32(); m_derivationAlgUri = Utility.DeserializeString( breader ); } protected override void OnProcess() { SymmetricCryptoSession session = ( SymmetricCryptoSession )CryptoSession.Find( m_sessionId, ( uint ) CallerPid, RequestorIdentity.User ); m_key = session.GenerateDerivedKey( m_derivationAlgUri, m_label, m_nonce, m_derivedKeyLength, m_offset ); } protected override void OnMarshalOutArgs() { BinaryWriter bwriter = new BinaryWriter( OutArgs, Encoding.Unicode ); bwriter.Write( m_key.Length ); bwriter.Write( m_key ); } } } // 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
- __FastResourceComparer.cs
- ZoneMembershipCondition.cs
- StylusPointCollection.cs
- BaseProcessor.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- RowSpanVector.cs
- UTF8Encoding.cs
- FieldAccessException.cs
- _AutoWebProxyScriptEngine.cs
- DefaultBindingPropertyAttribute.cs
- FixedTextContainer.cs
- XmlWellformedWriter.cs
- ProfileManager.cs
- DataGridColumnFloatingHeader.cs
- StylusPointDescription.cs
- EventData.cs
- OdbcHandle.cs
- CodePageUtils.cs
- WindowsFont.cs
- ScalarRestriction.cs
- ConfigurationSectionHelper.cs
- SplashScreenNativeMethods.cs
- CodePageUtils.cs
- RightsManagementPermission.cs
- Mapping.cs
- ParamArrayAttribute.cs
- ValidationHelpers.cs
- ThreadAttributes.cs
- ObjectDataSourceFilteringEventArgs.cs
- HttpProfileBase.cs
- MessageQueuePermissionEntryCollection.cs
- UnsafeNativeMethods.cs
- TextDecorationUnitValidation.cs
- PlainXmlWriter.cs
- PageStatePersister.cs
- IndexingContentUnit.cs
- Converter.cs
- ImmutableObjectAttribute.cs
- TitleStyle.cs
- RuntimeConfigurationRecord.cs
- EntityClientCacheKey.cs
- CodeSubDirectoriesCollection.cs
- DataGridHeadersVisibilityToVisibilityConverter.cs
- XmlDataProvider.cs
- ConnectionStringSettingsCollection.cs
- configsystem.cs
- ReadOnlyPermissionSet.cs
- ReadOnlyObservableCollection.cs
- UserPersonalizationStateInfo.cs
- DefaultValueTypeConverter.cs
- ContentAlignmentEditor.cs
- SmtpLoginAuthenticationModule.cs
- Int32CollectionValueSerializer.cs
- WebAdminConfigurationHelper.cs
- FixedDocumentPaginator.cs
- AppSettingsExpressionBuilder.cs
- Overlapped.cs
- PropertiesTab.cs
- TextSchema.cs
- TypeDescriptor.cs
- CodeMemberEvent.cs
- CellTreeNode.cs
- UniformGrid.cs
- DockPattern.cs
- ShaperBuffers.cs
- SqlInternalConnectionTds.cs
- ReadOnlyAttribute.cs
- SqlInternalConnectionTds.cs
- DbDeleteCommandTree.cs
- ToolStripSettings.cs
- LicenseContext.cs
- TableRowCollection.cs
- DrawingImage.cs
- Translator.cs
- BaseParaClient.cs
- DateTime.cs
- HtmlInputText.cs
- ApplicationHost.cs
- oledbconnectionstring.cs
- MainMenu.cs
- BrowserCapabilitiesCodeGenerator.cs
- ConnectionPoint.cs
- MaskInputRejectedEventArgs.cs
- TextEndOfSegment.cs
- DNS.cs
- TemplateControlParser.cs
- DataStreamFromComStream.cs
- ExecutionEngineException.cs
- TreeView.cs
- CLRBindingWorker.cs
- ListViewItem.cs
- ICspAsymmetricAlgorithm.cs
- DependencyObject.cs
- RelOps.cs
- RepeaterItemCollection.cs
- TransactedReceiveScope.cs
- SQLMoneyStorage.cs
- KeyedCollection.cs
- SQLByte.cs
- AttachedAnnotationChangedEventArgs.cs