Changeset 35 for trunk/CrypPlugins/PKCS5


Ignore:
Timestamp:
Nov 20, 2008, 7:31:19 AM (13 years ago)
Author:
Gerhard Junker
Message:

pkcs#5 Adding hash.Length to setting

Location:
trunk/CrypPlugins/PKCS5
Files:
3 edited
2 moved

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/PKCS5/PKCS5.cs

    r30 r35  
    329329            pkcs5Hash.SelectedShaFunction = (PKCS5MaskGenerationMethod.ShaFunction)settings.SHAFunction;
    330330
    331             outputData = pkcs5Hash.GenerateMask(this.key, this.salt, settings.Count, pkcs5Hash.GetHashLength());
     331            outputData = pkcs5Hash.GenerateMask(this.key, this.salt, settings.Count, settings.Length >> 3);
    332332
    333333            NotifyUpdateOutput();
  • trunk/CrypPlugins/PKCS5/PKCS5.csproj

    r25 r35  
    44    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    55    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    6     <ProductVersion>9.0.21022</ProductVersion>
     6    <ProductVersion>9.0.30729</ProductVersion>
    77    <SchemaVersion>2.0</SchemaVersion>
    88    <ProjectGuid>{80200C92-77FC-4508-B520-D51530BE2608}</ProjectGuid>
     
    8181  <ItemGroup>
    8282    <None Include="key.snk" />
    83     <None Include="SubWorkspaces\pkcs5-aes128-cbc-pad-decrypt.sws">
    84     </None>
    85     <None Include="SubWorkspaces\pkcs5-aes128-cbc-pad-encrypt.sws" />
     83    <None Include="SubWorkspaces\pkcs5-aes128-cbc-pad-decrypt.cte" />
     84    <None Include="SubWorkspaces\pkcs5-aes128-cbc-pad-encrypt.cte" />
    8685  </ItemGroup>
    8786  <ItemGroup>
  • trunk/CrypPlugins/PKCS5/PKCS5Settings.cs

    r32 r35  
    2929{
    3030    /// <summary>
    31     ///
     31    /// Settings for PKCS#5 v2
    3232    /// </summary>
    3333    public class PKCS5Settings : ISettings
    3434    {
     35        private bool hasChanges = false;
     36
     37        #region ISettings Member
    3538
    3639
    37         private bool hasChanges = false;
    38 
    39 
    40         private PKCS5MaskGenerationMethod.ShaFunction selectedShaFunction = PKCS5MaskGenerationMethod.ShaFunction.SHA256;
    41        // static string[] menu = Enum.GetNames(typeof(PKCS5MaskGenerationMethod.ShaFunction)).Clone();
    42        
    43         private int count = 1000;
    44 
    45         #region ISettings Member
     40                        /// <summary>
     41                        /// selected internal hash HMAC function
     42                        /// </summary>
     43                          private PKCS5MaskGenerationMethod.ShaFunction selectedShaFunction = PKCS5MaskGenerationMethod.ShaFunction.SHA256;
    4644
    4745        [ContextMenu("SHA Function", "Select the hash function (MD5, SHA1 or one out of the SHA2 family)", 0, DisplayLevel.Beginner, ContextMenuControlType.ComboBox, null, new string[] {"MD5", "SHA1", "SHA256", "SHA384", "SHA512"})]
     
    6159        }
    6260
    63         [TaskPane("Count", "Count - iteration count for Hash function, a value greather 1000 is recommended.", "", 1, false, DisplayLevel.Beginner, ControlType.TextBox, ValidationType.RangeInteger, 1, 9999)]
     61                        /// <summary>
     62                        /// count of hash loops
     63                        /// </summary>
     64                                private int count = 1000;
     65                                [TaskPane("Count", "Count - iteration count for Hash function, a value greather 1000 is recommended.", "", 1, false, DisplayLevel.Beginner, ControlType.TextBox, ValidationType.RangeInteger, 1, 9999)]
    6466        public int Count
    6567        {
     
    7779            }
    7880        }
     81
     82                        /// <summary>
     83                        /// length of calculated hash in bits
     84                        /// </summary>
     85                                private int length = 256;
     86                                [TaskPane("Length", "Hash Length, the hash length in bits, must be a multiple of 8.", "", 2, false, DisplayLevel.Beginner, ControlType.TextBox, ValidationType.RangeInteger, -64, 2048)]
     87                                public int Length
     88                                {
     89                                        get
     90                                        {
     91                                                return length;
     92                                        }
     93                                        set
     94                                        {
     95                                                length = value;
     96                                                if (length < 0) // change from bytes to bits [hack]
     97                                                        length *= -8;
     98                                               
     99                                                while ((length & 0x07) != 0) // go to the next multiple of 8
     100                                                        length++;
     101
     102                                                hasChanges = true;
     103                                                OnPropertyChanged("Settings");
     104                                        }
     105                                }
     106
     107
     108
    79109        /// <summary>
    80110        /// Gets or sets a value indicating whether this instance has changes.
Note: See TracChangeset for help on using the changeset viewer.