Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / EnvelopedSignatureTransform.cs / 1305376 / EnvelopedSignatureTransform.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.Xml; using System.Security.Cryptography; sealed class EnvelopedSignatureTransform : Transform { string prefix = XmlSignatureStrings.Prefix; public EnvelopedSignatureTransform() { } public override string Algorithm { get { return XD.XmlSignatureDictionary.EnvelopedSignature.Value; } } public override object Process(object input, SignatureResourcePool resourcePool, DictionaryManager dictionaryManager) { XmlTokenStream tokenStream = input as XmlTokenStream; if (tokenStream != null) { tokenStream.SetElementExclusion(XmlSignatureStrings.Signature, XmlSignatureStrings.Namespace); return tokenStream; } throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedInputTypeForTransform, input.GetType()))); } // this transform is not allowed as the last one in a chain public override byte[] ProcessAndDigest(object input, SignatureResourcePool resourcePool, string digestAlgorithm, DictionaryManager dictionaryManager) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedLastTransform))); } public override void ReadFrom(XmlDictionaryReader reader, DictionaryManager dictionaryManager) { reader.MoveToContent(); string algorithm = XmlHelper.ReadEmptyElementAndRequiredAttribute(reader, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace, dictionaryManager.XmlSignatureDictionary.Algorithm, out this.prefix); if (algorithm != this.Algorithm) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new CryptographicException(SR.GetString(SR.AlgorithmMismatchForTransform))); } } public override void WriteTo(XmlDictionaryWriter writer, DictionaryManager dictionaryManager) { writer.WriteStartElement(this.prefix, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace); writer.WriteAttributeString(dictionaryManager.XmlSignatureDictionary.Algorithm, null, this.Algorithm); writer.WriteEndElement(); // Transform } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.Xml; using System.Security.Cryptography; sealed class EnvelopedSignatureTransform : Transform { string prefix = XmlSignatureStrings.Prefix; public EnvelopedSignatureTransform() { } public override string Algorithm { get { return XD.XmlSignatureDictionary.EnvelopedSignature.Value; } } public override object Process(object input, SignatureResourcePool resourcePool, DictionaryManager dictionaryManager) { XmlTokenStream tokenStream = input as XmlTokenStream; if (tokenStream != null) { tokenStream.SetElementExclusion(XmlSignatureStrings.Signature, XmlSignatureStrings.Namespace); return tokenStream; } throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedInputTypeForTransform, input.GetType()))); } // this transform is not allowed as the last one in a chain public override byte[] ProcessAndDigest(object input, SignatureResourcePool resourcePool, string digestAlgorithm, DictionaryManager dictionaryManager) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedLastTransform))); } public override void ReadFrom(XmlDictionaryReader reader, DictionaryManager dictionaryManager) { reader.MoveToContent(); string algorithm = XmlHelper.ReadEmptyElementAndRequiredAttribute(reader, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace, dictionaryManager.XmlSignatureDictionary.Algorithm, out this.prefix); if (algorithm != this.Algorithm) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new CryptographicException(SR.GetString(SR.AlgorithmMismatchForTransform))); } } public override void WriteTo(XmlDictionaryWriter writer, DictionaryManager dictionaryManager) { writer.WriteStartElement(this.prefix, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace); writer.WriteAttributeString(dictionaryManager.XmlSignatureDictionary.Algorithm, null, this.Algorithm); writer.WriteEndElement(); // Transform } } } // 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
- DatatypeImplementation.cs
- OutputCacheSettingsSection.cs
- SafeSecurityHelper.cs
- ImageList.cs
- TableStyle.cs
- HttpModuleCollection.cs
- SmtpDigestAuthenticationModule.cs
- MethodSet.cs
- StyleHelper.cs
- DataGridViewColumnHeaderCell.cs
- Stack.cs
- ProcessInfo.cs
- ProfileInfo.cs
- OdbcFactory.cs
- Mappings.cs
- NetCodeGroup.cs
- ResetableIterator.cs
- validationstate.cs
- VideoDrawing.cs
- ProcessMonitor.cs
- TableAutomationPeer.cs
- CultureSpecificStringDictionary.cs
- VarRemapper.cs
- TargetInvocationException.cs
- SmiGettersStream.cs
- MetafileHeader.cs
- MeshGeometry3D.cs
- InternalConfigRoot.cs
- PerformanceCounterPermission.cs
- ExportOptions.cs
- DataPager.cs
- TreeNodeCollectionEditorDialog.cs
- CompilerResults.cs
- _NetRes.cs
- CatalogZoneBase.cs
- XmlIlVisitor.cs
- NodeFunctions.cs
- SqlDataSourceParameterParser.cs
- ConfigXmlCDataSection.cs
- DoubleAnimationClockResource.cs
- ListViewSelectEventArgs.cs
- DTCTransactionManager.cs
- ValidationErrorCollection.cs
- RuntimeConfigurationRecord.cs
- ZipIORawDataFileBlock.cs
- ItemCollection.cs
- WebPartEditorApplyVerb.cs
- RadioButtonRenderer.cs
- AssemblyResourceLoader.cs
- Range.cs
- CapabilitiesAssignment.cs
- NumericUpDown.cs
- SmtpReplyReader.cs
- InputProcessorProfilesLoader.cs
- UserPreferenceChangingEventArgs.cs
- DbConnectionPoolGroupProviderInfo.cs
- ScrollItemPattern.cs
- ExecutionScope.cs
- PathStreamGeometryContext.cs
- FilteredDataSetHelper.cs
- SHA512Managed.cs
- WebPartDisplayModeEventArgs.cs
- QueryOptionExpression.cs
- FileUpload.cs
- PageCatalogPartDesigner.cs
- SqlMultiplexer.cs
- RunClient.cs
- ChannelTraceRecord.cs
- ObjectListCommand.cs
- DateTimeStorage.cs
- SqlConnectionStringBuilder.cs
- Oid.cs
- DataGridCaption.cs
- InfoCardRSAPKCS1SignatureDeformatter.cs
- MatrixTransform3D.cs
- Win32NamedPipes.cs
- DriveNotFoundException.cs
- BitmapSourceSafeMILHandle.cs
- ConstructorExpr.cs
- DependencyPropertyDescriptor.cs
- _CommandStream.cs
- RelationshipSet.cs
- WebBrowserHelper.cs
- MetadataElement.cs
- DBCSCodePageEncoding.cs
- ScrollContentPresenter.cs
- UnsafeNativeMethods.cs
- SqlDesignerDataSourceView.cs
- SingleKeyFrameCollection.cs
- HwndSubclass.cs
- TextTreeNode.cs
- SafeReversePInvokeHandle.cs
- TypeUsage.cs
- XamlVector3DCollectionSerializer.cs
- OAVariantLib.cs
- DataGridViewColumnHeaderCell.cs
- GC.cs
- ExpressionNormalizer.cs
- StatusBarItem.cs
- Wizard.cs