source: trunk/CrypPlugins/PKCS1/Library/Datablock.cs @ 1778

Last change on this file since 1778 was 1778, checked in by schomburg, 11 years ago

renamed some classes for the sake of consistency

File size: 2.2 KB
Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5
6using Org.BouncyCastle.Utilities.Encoders;
7
8namespace PKCS1.Library
9{
10    class Datablock
11    {
12        #region Singleton
13        // Singleton
14        //
15        private static Datablock instance = null;
16
17        public static Datablock getInstance()
18        {
19            if (instance == null) { instance = new Datablock(); }
20            return instance;
21        }
22
23        private Datablock()
24        {
25        }
26        //
27        // end Singleton
28        #endregion
29
30        #region Member
31
32        private HashFunctionIdent m_hashFuncIdent = HashFuncIdentHandler.SHA1; // default SHA-1
33        public HashFunctionIdent HashFunctionIdent
34        {
35            set 
36            { 
37                this.m_hashFuncIdent = (HashFunctionIdent)value;
38                OnRaiseParamChangedEvent(ParameterChangeType.HashfunctionType);
39            }
40            get { return this.m_hashFuncIdent; }
41        }
42
43        protected byte[] m_Message = new byte[0];
44        public byte[] Message
45        {
46            set 
47            {
48                //string tmpString = (string)value;
49                //this.m_Message = Encoding.ASCII.GetBytes(tmpString);
50                this.m_Message = value;
51                OnRaiseParamChangedEvent(ParameterChangeType.Message);
52            }
53            //get { return Encoding.ASCII.GetString(this.m_Message); }
54            get { return this.m_Message; }
55        }
56
57        #endregion
58
59        #region Eventhandling
60
61        public event ParamChanged RaiseParamChangedEvent;
62
63        private void OnRaiseParamChangedEvent( ParameterChangeType type )
64        {
65            if (null != RaiseParamChangedEvent)
66            {
67                RaiseParamChangedEvent(type);               
68            }
69        }
70
71        #endregion
72
73        #region Functions
74
75        public string GetHashDigestToHexString()
76        {
77            byte[] bMessage = this.Message;
78            HashFunctionIdent hashIdent = this.HashFunctionIdent;
79            return Encoding.ASCII.GetString(Hex.Encode(Hashfunction.generateHashDigest(ref bMessage, ref hashIdent)));
80        }
81       
82        #endregion
83    }
84}
Note: See TracBrowser for help on using the repository browser.