Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / clr / src / BCL / System / Security / Permissions / StrongNamePublicKeyBlob.cs / 1 / StrongNamePublicKeyBlob.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // StrongNamePublicKeyBlob.cs // namespace System.Security.Permissions { using System; using SecurityElement = System.Security.SecurityElement; using System.Security.Util; [System.Runtime.InteropServices.ComVisible(true)] [Serializable] sealed public class StrongNamePublicKeyBlob { internal byte[] PublicKey; internal StrongNamePublicKeyBlob() { } public StrongNamePublicKeyBlob( byte[] publicKey ) { if (publicKey == null) throw new ArgumentNullException( "PublicKey" ); this.PublicKey = new byte[publicKey.Length]; Array.Copy( publicKey, 0, this.PublicKey, 0, publicKey.Length ); } internal StrongNamePublicKeyBlob( String publicKey ) { this.PublicKey = Hex.DecodeHexString( publicKey ); } private static bool CompareArrays( byte[] first, byte[] second ) { if (first.Length != second.Length) { return false; } int count = first.Length; for (int i = 0; i < count; ++i) { if (first[i] != second[i]) return false; } return true; } internal bool Equals( StrongNamePublicKeyBlob blob ) { if (blob == null) return false; else return CompareArrays( this.PublicKey, blob.PublicKey ); } public override bool Equals( Object obj ) { if (obj == null || !(obj is StrongNamePublicKeyBlob)) return false; return this.Equals( (StrongNamePublicKeyBlob)obj ); } static private int GetByteArrayHashCode( byte[] baData ) { if (baData == null) return 0; int accumulator = 0; for (int i = 0; i < baData.Length; ++i) { accumulator = (accumulator << 8) ^ (int)baData[i] ^ (accumulator >> 24); } return accumulator; } public override int GetHashCode() { return GetByteArrayHashCode( PublicKey ); } public override String ToString() { return Hex.EncodeHexString( PublicKey ); } } } // 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
- PartBasedPackageProperties.cs
- XPathAncestorQuery.cs
- ApplicationSecurityInfo.cs
- CqlIdentifiers.cs
- PropertyValueChangedEvent.cs
- BamlReader.cs
- DropDownList.cs
- IncomingWebResponseContext.cs
- StyleCollectionEditor.cs
- RuleSetBrowserDialog.cs
- TreeNodeConverter.cs
- StoryFragments.cs
- DbConnectionHelper.cs
- SettingsAttributeDictionary.cs
- BatchParser.cs
- GridViewColumnHeader.cs
- WebSysDescriptionAttribute.cs
- FixedSOMContainer.cs
- CheckedPointers.cs
- ErrorWrapper.cs
- WorkflowFormatterBehavior.cs
- InvalidPrinterException.cs
- SubpageParaClient.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- XmlSchemaAnyAttribute.cs
- WebPartConnection.cs
- DynamicResourceExtension.cs
- ObjectPersistData.cs
- WebUtil.cs
- ClientSettingsStore.cs
- UriTemplateHelpers.cs
- ReachDocumentReferenceCollectionSerializerAsync.cs
- OrderPreservingPipeliningSpoolingTask.cs
- ResourceBinder.cs
- InstanceDescriptor.cs
- StateMachine.cs
- MonikerHelper.cs
- SettingsSavedEventArgs.cs
- PageHandlerFactory.cs
- DriveInfo.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- wgx_exports.cs
- UrlRoutingHandler.cs
- LinkedResourceCollection.cs
- InArgument.cs
- SystemUnicastIPAddressInformation.cs
- peernodeimplementation.cs
- SHA1Managed.cs
- VirtualDirectoryMappingCollection.cs
- QueueSurrogate.cs
- EventLevel.cs
- CodeArgumentReferenceExpression.cs
- SqlDataSourceEnumerator.cs
- FolderLevelBuildProviderCollection.cs
- DataGridViewRowsRemovedEventArgs.cs
- CodeStatementCollection.cs
- IListConverters.cs
- PackageStore.cs
- AuthenticationServiceManager.cs
- DateTimeFormat.cs
- XmlExpressionDumper.cs
- ViewUtilities.cs
- MachinePropertyVariants.cs
- GPRECTF.cs
- RegistryExceptionHelper.cs
- CqlIdentifiers.cs
- BaseProcessProtocolHandler.cs
- EqualityComparer.cs
- ScriptResourceInfo.cs
- SqlServices.cs
- HwndKeyboardInputProvider.cs
- StaticExtension.cs
- DataGridRow.cs
- MethodResolver.cs
- AvTraceFormat.cs
- RequestTimeoutManager.cs
- HttpListenerPrefixCollection.cs
- HMACSHA512.cs
- KeyConstraint.cs
- InputProcessorProfilesLoader.cs
- XPathSelfQuery.cs
- MultiPropertyDescriptorGridEntry.cs
- HashCryptoHandle.cs
- Button.cs
- WebUtil.cs
- ExtractCollection.cs
- RuleEngine.cs
- MimeParameter.cs
- NullableLongAverageAggregationOperator.cs
- SafeFileMappingHandle.cs
- DtrList.cs
- EditBehavior.cs
- Vector3DCollectionConverter.cs
- PinnedBufferMemoryStream.cs
- ProtocolsConfigurationHandler.cs
- BufferModesCollection.cs
- MemoryRecordBuffer.cs
- DetailsViewPageEventArgs.cs
- SuppressIldasmAttribute.cs
- CancelEventArgs.cs