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
- UpdateManifestForBrowserApplication.cs
- _BufferOffsetSize.cs
- TimeSpan.cs
- DesignerDataParameter.cs
- DmlSqlGenerator.cs
- StretchValidation.cs
- RadioButtonPopupAdapter.cs
- _TimerThread.cs
- CharUnicodeInfo.cs
- LinkedResourceCollection.cs
- MetadataArtifactLoader.cs
- Int16.cs
- ContextStaticAttribute.cs
- RNGCryptoServiceProvider.cs
- TextFragmentEngine.cs
- DynamicValidatorEventArgs.cs
- WaitingCursor.cs
- NullableDecimalAverageAggregationOperator.cs
- XmlValidatingReader.cs
- DataGridViewComboBoxColumnDesigner.cs
- TextComposition.cs
- AutomationAttributeInfo.cs
- ParameterRetriever.cs
- Label.cs
- DatagridviewDisplayedBandsData.cs
- DBSqlParserColumnCollection.cs
- PropertyManager.cs
- FormViewCommandEventArgs.cs
- AssemblyAttributesGoHere.cs
- DependencyObjectCodeDomSerializer.cs
- Geometry.cs
- WebPartsSection.cs
- PasswordTextNavigator.cs
- DbCommandTree.cs
- XPathParser.cs
- ExceptionValidationRule.cs
- CookieHandler.cs
- CountdownEvent.cs
- CodeTypeMemberCollection.cs
- GenericPrincipal.cs
- RequestCachePolicy.cs
- WindowsListViewItemStartMenu.cs
- ServiceAppDomainAssociationProvider.cs
- DataTableExtensions.cs
- AvtEvent.cs
- LoadedOrUnloadedOperation.cs
- Deserializer.cs
- CqlErrorHelper.cs
- DecodeHelper.cs
- Rules.cs
- AuthenticatedStream.cs
- Attributes.cs
- IisTraceListener.cs
- FormsAuthenticationTicket.cs
- GroupBoxAutomationPeer.cs
- LoginDesignerUtil.cs
- httpapplicationstate.cs
- QueryRelOp.cs
- Axis.cs
- cryptoapiTransform.cs
- LineServices.cs
- PrePrepareMethodAttribute.cs
- TextServicesContext.cs
- PanelStyle.cs
- AppDomainManager.cs
- TreeBuilder.cs
- WinInet.cs
- DataGridViewRowCollection.cs
- DetailsViewUpdatedEventArgs.cs
- TemplateParser.cs
- ControlBuilder.cs
- ListViewInsertionMark.cs
- MachineKeyConverter.cs
- BinaryWriter.cs
- XmlDataSourceView.cs
- BamlBinaryWriter.cs
- TableAutomationPeer.cs
- AssemblyBuilder.cs
- ExpressionBuilder.cs
- XmlQualifiedNameTest.cs
- CodeTypeConstructor.cs
- DataGridViewToolTip.cs
- PeerCredential.cs
- ParameterToken.cs
- SqlTopReducer.cs
- ViewGenResults.cs
- IdentifierCollection.cs
- WebEventTraceProvider.cs
- SchemaMapping.cs
- BStrWrapper.cs
- VectorAnimationUsingKeyFrames.cs
- State.cs
- BinHexEncoder.cs
- SQLSingleStorage.cs
- RowSpanVector.cs
- DecoderBestFitFallback.cs
- PropertyOverridesDialog.cs
- XmlSchemaInferenceException.cs
- HebrewNumber.cs
- Lazy.cs