<Type Name="CapiHash" FullName="Mono.Security.Cryptography.CapiHash"> <TypeSignature Language="C#" Value="public class CapiHash : IDisposable" Maintainer="auto" /> <AssemblyInfo> <AssemblyName>Mono.Security.Win32</AssemblyName> <AssemblyPublicKey>[00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00 00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00 79 15 99 77 D2 D0 3A 8E 6B EA 7A 2E 74 E8 D1 AF CC 93 E8 85 19 74 95 2B B4 80 A1 2C 91 34 47 4D 04 06 24 47 C3 7E 0E 68 C0 80 53 6F CF 3C 3F BE 2F F9 C9 79 CE 99 84 75 E5 06 E8 CE 82 DD 5B 0F 35 0D C1 0E 93 BF 2E EE CF 87 4B 24 77 0C 50 81 DB EA 74 47 FD DA FA 27 7B 22 DE 47 D6 FF EA 44 96 74 A4 F9 FC CF 84 D1 50 69 08 93 80 28 4D BD D3 5F 46 CD FF 12 A1 BD 78 E4 EF 00 65 D0 16 DF]</AssemblyPublicKey> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement> <Base> <BaseTypeName>System.Object</BaseTypeName> </Base> <Interfaces> <Interface> <InterfaceName>System.IDisposable</InterfaceName> </Interface> </Interfaces> <Docs> <summary>This class encapsulate the access around the CryptoAPI handles to a hash object (HCRYPTHASH).</summary> <remarks>This class is part of the Mono.Security.Win32.dll assembly. This assembly provides a managed wrapper aound the unmanaged CryptoAPI. As such the assembly will only work on Windows operating system providing CryptoAPI.</remarks> </Docs> <Members> <Member MemberName=".ctor"> <MemberSignature Language="C#" Value="public CapiHash (int hashAlgorithm);" /> <MemberType>Constructor</MemberType> <ReturnValue /> <Parameters> <Parameter Name="hashAlgorithm" Type="System.Int32" /> </Parameters> <Docs> <param name="hashAlgorithm">a <see cref="T:System.Int32" /> representing the CryptoAPI hash implementation to use.</param> <summary>Return a context to do a series of hashing operation with the default Cryptographic Service Provider (CSP).</summary> <remarks>A default <see cref="T:Mono.Security.Cryptography.CapiContext" /> will be created for the hashing operations.</remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> <Member MemberName=".ctor"> <MemberSignature Language="C#" Value="public CapiHash (Mono.Security.Cryptography.CapiContext ctx, int hashAlgorithm);" /> <MemberType>Constructor</MemberType> <ReturnValue /> <Parameters> <Parameter Name="ctx" Type="Mono.Security.Cryptography.CapiContext" /> <Parameter Name="hashAlgorithm" Type="System.Int32" /> </Parameters> <Docs> <param name="ctx">a <see cref="T:Mono.Security.Cryptography.CapiContext" /> representing the Cryptographic Service Provider (CSP) to use.</param> <param name="hashAlgorithm">a <see cref="T:System.Int32" /> representing the CryptoAPI hash implementation to use.</param> <summary>Return a context to do a series of hashing operation with the specified Cryptographic Service Provider (CSP).</summary> <remarks>To be added</remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> <Member MemberName=".ctor"> <MemberSignature Language="C#" Value="public CapiHash (System.Security.Cryptography.CspParameters cspParams, int hashAlgorithm);" /> <MemberType>Constructor</MemberType> <ReturnValue /> <Parameters> <Parameter Name="cspParams" Type="System.Security.Cryptography.CspParameters" /> <Parameter Name="hashAlgorithm" Type="System.Int32" /> </Parameters> <Docs> <param name="cspParams">a <see cref="T:System.Security.Cryptography.CspParameters" /> containing the parameters to create the cryptographic context.</param> <param name="hashAlgorithm">a <see cref="T:System.Int32" /> representing the CryptoAPI hash implementation to use.</param> <summary>Return a context to do a series of hashing operation with a Cryptographic Service Provider (CSP) created with the specifed parameters.</summary> <remarks>A <see cref="T:Mono.Security.Cryptography.CapiContext" /> will be created with the specified <see cref="T:System.Security.Cryptography.CspParameters" /> for the hashing operations.</remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> <Member MemberName="Dispose"> <MemberSignature Language="C#" Value="public void Dispose ();" /> <MemberType>Method</MemberType> <ReturnValue> <ReturnType>System.Void</ReturnType> </ReturnValue> <Parameters /> <Docs> <summary>Release the unmanaged resources held by the class.</summary> <remarks>To be added</remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> <Member MemberName="Finalize"> <MemberSignature Language="C#" Value="~CapiHash ();" /> <MemberType>Method</MemberType> <ReturnValue> <ReturnType>System.Void</ReturnType> </ReturnValue> <Parameters /> <Docs> <summary>To be added</summary> <remarks>To be added</remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> <Member MemberName="Handle"> <MemberSignature Language="C#" Value="public IntPtr Handle { get; }" /> <MemberType>Property</MemberType> <ReturnValue> <ReturnType>System.IntPtr</ReturnType> </ReturnValue> <Parameters /> <Docs> <summary>Return the HCRYPTHASH handle managed by the class.</summary> <value>a <see cref="T:System.IntPtr" /> representing the CryptoAPI HCRYPTHASH handle.</value> <remarks>This property is useful if you need to directly call some unmanaged CryptoAPI functions without managing yourself the hash context. </remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> <Member MemberName="HashCore"> <MemberSignature Language="C#" Value="public void HashCore (byte[] data, int start, int length);" /> <MemberType>Method</MemberType> <ReturnValue> <ReturnType>System.Void</ReturnType> </ReturnValue> <Parameters> <Parameter Name="data" Type="System.Byte[]" /> <Parameter Name="start" Type="System.Int32" /> <Parameter Name="length" Type="System.Int32" /> </Parameters> <Docs> <param name="data">Byte array containing the data to hash.</param> <param name="start">Where in the input buffer to start.</param> <param name="length">Size in bytes of the data in the buffer to hash. </param> <summary>Drives the hashing function.</summary> <remarks>To be added</remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> <Member MemberName="HashFinal"> <MemberSignature Language="C#" Value="public byte[] HashFinal ();" /> <MemberType>Method</MemberType> <ReturnValue> <ReturnType>System.Byte[]</ReturnType> </ReturnValue> <Parameters /> <Docs> <summary>This finalizes the hash. Takes the data from the chaining variables and returns it.</summary> <returns>a <see cref="T:System.Byte[]" /></returns> <remarks>To be added</remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> <Member MemberName="HashSize"> <MemberSignature Language="C#" Value="public int HashSize { get; }" /> <MemberType>Property</MemberType> <ReturnValue> <ReturnType>System.Int32</ReturnType> </ReturnValue> <Parameters /> <Docs> <summary>Returns the size in bits of the hash.</summary> <value>a <see cref="T:System.Int32" /> representing the number of bits in the hash result.</value> <remarks>To be added</remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> <Member MemberName="Initialize"> <MemberSignature Language="C#" Value="public void Initialize (int algo);" /> <MemberType>Method</MemberType> <ReturnValue> <ReturnType>System.Void</ReturnType> </ReturnValue> <Parameters> <Parameter Name="algo" Type="System.Int32" /> </Parameters> <Docs> <param name="algo">a <see cref="T:System.Int32" /> representing the CryptoAPI hash implementation to use. </param> <summary>Resets the class after use.</summary> <remarks> Called automatically after hashing is done.</remarks> </Docs> <AssemblyInfo> <AssemblyVersion>1.0.5000.0</AssemblyVersion> <AssemblyVersion>2.0.0.0</AssemblyVersion> </AssemblyInfo> </Member> </Members> </Type>