Changeset 731


Ignore:
Timestamp:
Oct 16, 2009, 1:02:06 AM (12 years ago)
Author:
kopal
Message:

started creation of SDES Presentation

Location:
trunk/CrypPlugins/SDES
Files:
2 added
2 edited

Legend:

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

    r726 r731  
    2626using System.Windows.Controls;
    2727using Cryptool.PluginBase.Control;
     28using System.Threading;
     29using System.Windows.Threading;
    2830
    2931namespace Cryptool.Plugins.Cryptography.Encryption
     
    4850        private byte[] inputIV;       
    4951        private bool stop = false;
     52        private UserControl presentation = new SDESPresentation();
    5053        private SDESControl controlSlave;
    5154
     
    242245        public UserControl Presentation
    243246        {
    244             get { return null; }
     247            get { return this.presentation; }
    245248        }
    246249
     
    706709        public byte[] encrypt(byte[] plaintext, byte[] key)
    707710        {
     711           
     712            ((SDESPresentation)mSdes.Presentation).Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     713            {
     714                ((SDESPresentation)mSdes.Presentation).key_txt.Text =
     715                Tools.byteArrayToStringWithSpaces(key);               
     716            }
     717            , null);
    708718
    709719            //calculate sub key 1
    710             byte[] key1 = p8(ls_1(p10(key)));
     720            byte[] vp10 = p10(key);           
     721            ((SDESPresentation)mSdes.Presentation).Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     722            {
     723                ((SDESPresentation)mSdes.Presentation).key_txt_p10_input.Text =
     724                Tools.byteArrayToStringWithSpaces(key);
     725                ((SDESPresentation)mSdes.Presentation).key_txt_ls1_input_1.Text =
     726                Tools.byteArrayToStringWithSpaces(vp10);
     727            }
     728            , null);
     729
     730            byte[] vls1 = ls_1(vp10);
     731            ((SDESPresentation)mSdes.Presentation).Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     732            {
     733                ((SDESPresentation)mSdes.Presentation).key_txt_p8_1_input.Text =
     734                Tools.byteArrayToStringWithSpaces(vls1);
     735            }
     736            , null);
     737
     738            byte[] key1 = p8(vls1);
     739            ((SDESPresentation)mSdes.Presentation).Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     740            {
     741                ((SDESPresentation)mSdes.Presentation).key_txt_k1.Text =
     742                Tools.byteArrayToStringWithSpaces(key1);
     743            }
     744            , null);
     745
    711746            //calculate sub key 2
    712             byte[] key2 = p8(ls_1(ls_1(ls_1(p10(key)))));
     747            vls1 = ls_1(vls1);
     748            ((SDESPresentation)mSdes.Presentation).Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     749            {
     750                ((SDESPresentation)mSdes.Presentation).key_txt_p10_copy.Text =
     751                Tools.byteArrayToStringWithSpaces(vp10);
     752                ((SDESPresentation)mSdes.Presentation).key_txt_ls1_2.Text =
     753                Tools.byteArrayToStringWithSpaces(vp10);
     754                ((SDESPresentation)mSdes.Presentation).key_txt_ls1_3.Text =
     755               Tools.byteArrayToStringWithSpaces(vls1);
     756            }
     757            , null);
     758
     759            vls1 = ls_1(vls1);
     760            ((SDESPresentation)mSdes.Presentation).Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     761            {
     762                ((SDESPresentation)mSdes.Presentation).key_txt_p8_2_input.Text =
     763                Tools.byteArrayToStringWithSpaces(vls1);
     764            }
     765           , null);
     766
     767            byte[] key2 = p8(vls1);
     768            ((SDESPresentation)mSdes.Presentation).Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     769            {
     770                ((SDESPresentation)mSdes.Presentation).key_txt_k2.Text =
     771                Tools.byteArrayToStringWithSpaces(key2);
     772            }
     773           , null);
    713774
    714775            // ip_inverse(fk_2(sw(fk_1(ip(plaintext))))) :
     
    11311192    {
    11321193
     1194        /// <summary>
     1195        /// transforms a byte array into a String with spaces after each byte
     1196        /// example:
     1197        ///     1,0 => "1 0"
     1198        /// </summary>
     1199        /// <param name="byt">byt</param>
     1200        /// <returns>s</returns>
     1201        public static String byteArrayToStringWithSpaces(byte[] byt)
     1202        {
     1203            String s = "";
     1204
     1205            foreach (byte b in byt)
     1206            {
     1207                s = s + b + " ";
     1208            }
     1209            return s;
     1210        }
    11331211        ///<summary>
    11341212        ///Converts an byte array to a String
  • trunk/CrypPlugins/SDES/SDES.csproj

    r492 r731  
    8181    <Compile Include="SDESSettings.cs" />
    8282    <Compile Include="Properties\AssemblyInfo.cs" />
     83    <Compile Include="SDESPresentation.xaml.cs">
     84      <DependentUpon>SDESPresentation.xaml</DependentUpon>
     85    </Compile>
    8386  </ItemGroup>
    8487  <ItemGroup>
     
    129132    </Resource>
    130133  </ItemGroup>
     134  <ItemGroup>
     135    <Page Include="SDESPresentation.xaml">
     136      <SubType>Designer</SubType>
     137      <Generator>MSBuild:Compile</Generator>
     138      <CustomToolNamespace>Cryptool.Plugins.Cryptography.Encryption</CustomToolNamespace>
     139    </Page>
     140  </ItemGroup>
    131141  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
    132142  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Note: See TracChangeset for help on using the changeset viewer.