~ubuntu-branches/ubuntu/wily/qca2/wily-proposed

« back to all changes in this revision

Viewing changes to qca/apidocs/html/qca__basic_8h-source.html

  • Committer: Bazaar Package Importer
  • Author(s): Jan Niehusmann
  • Date: 2007-10-27 18:51:54 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20071027185154-4ir9ys3h2q9fofrw
Tags: 2.0.0-2
Upload to unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
 
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3
 
<title>Qt Cryptographic Architecture: qca_basic.h Source File</title>
4
 
<link href="doxygen.css" rel="stylesheet" type="text/css">
5
 
<link href="tabs.css" rel="stylesheet" type="text/css">
6
 
</head><body>
7
 
<!-- Generated by Doxygen 1.4.6 -->
8
 
<div class="tabs">
9
 
  <ul>
10
 
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
11
 
    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
12
 
    <li><a href="annotated.html"><span>Classes</span></a></li>
13
 
    <li id="current"><a href="files.html"><span>Files</span></a></li>
14
 
    <li><a href="dirs.html"><span>Directories</span></a></li>
15
 
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
16
 
    <li><a href="examples.html"><span>Examples</span></a></li>
17
 
  </ul></div>
18
 
<div class="tabs">
19
 
  <ul>
20
 
    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
21
 
    <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
22
 
  </ul></div>
23
 
<div class="nav">
24
 
<a class="el" href="dir_31bb8fc1bcc0c3a059305c11a8e57902.html">include</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_4d15a096d49f5d63dcc84b28b5b30f72.html">QtCrypto</a></div>
25
 
<h1>qca_basic.h</h1><a href="qca__basic_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
26
 
<a name="l00002"></a>00002 <span class="comment"> * qca_basic.h - Qt Cryptographic Architecture</span>
27
 
<a name="l00003"></a>00003 <span class="comment"> * Copyright (C) 2003-2007  Justin Karneges &lt;justin@affinix.com&gt;</span>
28
 
<a name="l00004"></a>00004 <span class="comment"> * Copyright (C) 2004-2006  Brad Hards &lt;bradh@frogmouth.net&gt;</span>
29
 
<a name="l00005"></a>00005 <span class="comment"> *</span>
30
 
<a name="l00006"></a>00006 <span class="comment"> * This library is free software; you can redistribute it and/or</span>
31
 
<a name="l00007"></a>00007 <span class="comment"> * modify it under the terms of the GNU Lesser General Public</span>
32
 
<a name="l00008"></a>00008 <span class="comment"> * License as published by the Free Software Foundation; either</span>
33
 
<a name="l00009"></a>00009 <span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span>
34
 
<a name="l00010"></a>00010 <span class="comment"> *</span>
35
 
<a name="l00011"></a>00011 <span class="comment"> * This library is distributed in the hope that it will be useful,</span>
36
 
<a name="l00012"></a>00012 <span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
37
 
<a name="l00013"></a>00013 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU</span>
38
 
<a name="l00014"></a>00014 <span class="comment"> * Lesser General Public License for more details.</span>
39
 
<a name="l00015"></a>00015 <span class="comment"> *</span>
40
 
<a name="l00016"></a>00016 <span class="comment"> * You should have received a copy of the GNU Lesser General Public</span>
41
 
<a name="l00017"></a>00017 <span class="comment"> * License along with this library; if not, write to the Free Software</span>
42
 
<a name="l00018"></a>00018 <span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA</span>
43
 
<a name="l00019"></a>00019 <span class="comment"> *</span>
44
 
<a name="l00020"></a>00020 <span class="comment"> */</span>
45
 
<a name="l00021"></a>00021 
46
 
<a name="l00032"></a>00032 <span class="preprocessor">#ifndef QCA_BASIC_H</span>
47
 
<a name="l00033"></a>00033 <span class="preprocessor"></span><span class="preprocessor">#define QCA_BASIC_H</span>
48
 
<a name="l00034"></a>00034 <span class="preprocessor"></span>
49
 
<a name="l00035"></a>00035 <span class="preprocessor">#include "<a class="code" href="qca__core_8h.html">qca_core.h</a>"</span>
50
 
<a name="l00036"></a>00036 
51
 
<a name="l00037"></a><a class="code" href="namespaceQCA.html">00037</a> <span class="keyword">namespace </span>QCA {
52
 
<a name="l00038"></a>00038 
53
 
<a name="l00052"></a><a class="code" href="classQCA_1_1Random.html">00052</a> <span class="keyword">class </span>QCA_EXPORT Random : <span class="keyword">public</span> <a class="code" href="classQCA_1_1Algorithm.html">Algorithm</a>
54
 
<a name="l00053"></a>00053 {
55
 
<a name="l00054"></a>00054 <span class="keyword">public</span>:
56
 
<a name="l00061"></a>00061         Random(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;provider = <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a>());
57
 
<a name="l00062"></a>00062 
58
 
<a name="l00068"></a>00068         Random(<span class="keyword">const</span> Random &amp;from);
59
 
<a name="l00069"></a>00069 
60
 
<a name="l00070"></a>00070         ~Random();
61
 
<a name="l00071"></a>00071 
62
 
<a name="l00077"></a>00077         Random &amp; operator=(<span class="keyword">const</span> Random &amp;from);
63
 
<a name="l00078"></a>00078 
64
 
<a name="l00087"></a>00087         uchar nextByte();
65
 
<a name="l00088"></a>00088 
66
 
<a name="l00099"></a>00099         <a class="code" href="classQCA_1_1SecureArray.html">SecureArray</a> nextBytes(<span class="keywordtype">int</span> size);
67
 
<a name="l00100"></a>00100 
68
 
<a name="l00112"></a>00112         <span class="keyword">static</span> uchar randomChar();
69
 
<a name="l00113"></a>00113 
70
 
<a name="l00123"></a>00123         <span class="keyword">static</span> <span class="keywordtype">int</span> randomInt();
71
 
<a name="l00124"></a>00124 
72
 
<a name="l00135"></a>00135         <span class="keyword">static</span> <a class="code" href="classQCA_1_1SecureArray.html">SecureArray</a> randomArray(<span class="keywordtype">int</span> size);
73
 
<a name="l00136"></a>00136 
74
 
<a name="l00137"></a>00137 <span class="keyword">private</span>:
75
 
<a name="l00138"></a>00138         <span class="keyword">class </span>Private;
76
 
<a name="l00139"></a>00139         Private *d;
77
 
<a name="l00140"></a>00140 };
78
 
<a name="l00141"></a>00141 
79
 
<a name="l00191"></a><a class="code" href="classQCA_1_1Hash.html">00191</a> <span class="keyword">class </span>QCA_EXPORT Hash : <span class="keyword">public</span> <a class="code" href="classQCA_1_1Algorithm.html">Algorithm</a>, <span class="keyword">public</span> <a class="code" href="classQCA_1_1BufferedComputation.html">BufferedComputation</a>
80
 
<a name="l00192"></a>00192 {
81
 
<a name="l00193"></a>00193 <span class="keyword">public</span>:
82
 
<a name="l00202"></a>00202         <span class="keyword">explicit</span> Hash(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;type, <span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;provider = <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a>());
83
 
<a name="l00208"></a>00208         Hash(<span class="keyword">const</span> Hash &amp;from);
84
 
<a name="l00209"></a>00209 
85
 
<a name="l00210"></a>00210         ~Hash();
86
 
<a name="l00211"></a>00211 
87
 
<a name="l00217"></a>00217         Hash &amp; operator=(<span class="keyword">const</span> Hash &amp;from);
88
 
<a name="l00218"></a>00218 
89
 
<a name="l00222"></a>00222         <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> type() <span class="keyword">const</span>;
90
 
<a name="l00223"></a>00223 
91
 
<a name="l00234"></a>00234         <span class="keyword">virtual</span> <span class="keywordtype">void</span> clear();
92
 
<a name="l00235"></a>00235 
93
 
<a name="l00247"></a>00247         <span class="keyword">virtual</span> <span class="keywordtype">void</span> update(<span class="keyword">const</span> <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> &amp;a);
94
 
<a name="l00248"></a>00248 
95
 
<a name="l00254"></a>00254         <span class="keywordtype">void</span> update(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qbytearray.html">QByteArray</a> &amp;a);
96
 
<a name="l00255"></a>00255 
97
 
<a name="l00270"></a>00270         <span class="keywordtype">void</span> update(<span class="keyword">const</span> <span class="keywordtype">char</span> *data, <span class="keywordtype">int</span> len = -1);
98
 
<a name="l00271"></a>00271 
99
 
<a name="l00294"></a>00294         <span class="keywordtype">void</span> update(<a class="codeRef" doxygen="qt.tag:" href="qiodevice.html">QIODevice</a> *file);
100
 
<a name="l00295"></a>00295 
101
 
<a name="l00309"></a>00309         <span class="keyword">virtual</span> <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> <span class="keyword">final</span>();
102
 
<a name="l00310"></a>00310 
103
 
<a name="l00331"></a>00331         <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> hash(<span class="keyword">const</span> <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> &amp;array);
104
 
<a name="l00332"></a>00332 
105
 
<a name="l00347"></a>00347         <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> hashToString(<span class="keyword">const</span> <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> &amp;array);
106
 
<a name="l00348"></a>00348 
107
 
<a name="l00349"></a>00349 <span class="keyword">private</span>:
108
 
<a name="l00350"></a>00350         <span class="keyword">class </span>Private;
109
 
<a name="l00351"></a>00351         Private *d;
110
 
<a name="l00352"></a>00352 };
111
 
<a name="l00353"></a>00353 
112
 
<a name="l00525"></a><a class="code" href="classQCA_1_1Cipher.html">00525</a> <span class="keyword">class </span>QCA_EXPORT Cipher : <span class="keyword">public</span> <a class="code" href="classQCA_1_1Algorithm.html">Algorithm</a>, <span class="keyword">public</span> <a class="code" href="classQCA_1_1Filter.html">Filter</a>
113
 
<a name="l00526"></a>00526 {
114
 
<a name="l00527"></a>00527 <span class="keyword">public</span>:
115
 
<a name="l00531"></a><a class="code" href="classQCA_1_1Cipher.html#55df34874dc7565d7de238d2d742d66b">00531</a>         <span class="keyword">enum</span> <a class="code" href="classQCA_1_1Cipher.html#55df34874dc7565d7de238d2d742d66b">Mode</a>
116
 
<a name="l00532"></a>00532         {
117
 
<a name="l00533"></a>00533                 CBC, 
118
 
<a name="l00534"></a>00534                 CFB, 
119
 
<a name="l00535"></a>00535                 ECB, 
120
 
<a name="l00536"></a><a class="code" href="classQCA_1_1Cipher.html#55df34874dc7565d7de238d2d742d66b3cf1ddcbb9543e64c9b70bdf75d2da20">00536</a>                 OFB  
121
 
<a name="l00537"></a>00537         };
122
 
<a name="l00538"></a>00538 
123
 
<a name="l00542"></a><a class="code" href="classQCA_1_1Cipher.html#eafc444370fbd6d1457580da2f00c52b">00542</a>         <span class="keyword">enum</span> <a class="code" href="classQCA_1_1Cipher.html#eafc444370fbd6d1457580da2f00c52b">Padding</a>
124
 
<a name="l00543"></a>00543         {
125
 
<a name="l00544"></a>00544                 DefaultPadding, 
126
 
<a name="l00545"></a>00545                 NoPadding,      
127
 
<a name="l00546"></a><a class="code" href="classQCA_1_1Cipher.html#eafc444370fbd6d1457580da2f00c52bef40f7173d895c7ae1a32625cd3eef3b">00546</a>                 PKCS7           
128
 
<a name="l00547"></a>00547         };
129
 
<a name="l00548"></a>00548 
130
 
<a name="l00565"></a>00565         Cipher(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;type, Mode mode, Padding pad = DefaultPadding,
131
 
<a name="l00566"></a>00566                 <a class="code" href="namespaceQCA.html#8e5d1994b00ea69c9a598f93cd0990ce">Direction</a> dir = <a class="code" href="namespaceQCA.html#8e5d1994b00ea69c9a598f93cd0990ce7d1fca4b5ac95d3b9422a305814c067a">Encode</a>, <span class="keyword">const</span> <a class="code" href="classQCA_1_1SymmetricKey.html">SymmetricKey</a> &amp;key = <a class="code" href="classQCA_1_1SymmetricKey.html">SymmetricKey</a>(), 
132
 
<a name="l00567"></a>00567                 <span class="keyword">const</span> <a class="code" href="classQCA_1_1InitializationVector.html">InitializationVector</a> &amp;iv = <a class="code" href="classQCA_1_1InitializationVector.html">InitializationVector</a>(),
133
 
<a name="l00568"></a>00568                 <span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;provider = <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a>());
134
 
<a name="l00569"></a>00569 
135
 
<a name="l00573"></a>00573         Cipher(<span class="keyword">const</span> Cipher &amp;from);
136
 
<a name="l00574"></a>00574         ~Cipher();
137
 
<a name="l00575"></a>00575 
138
 
<a name="l00581"></a>00581         Cipher &amp; operator=(<span class="keyword">const</span> Cipher &amp;from);
139
 
<a name="l00582"></a>00582 
140
 
<a name="l00586"></a>00586         <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> type() <span class="keyword">const</span>;
141
 
<a name="l00587"></a>00587 
142
 
<a name="l00591"></a>00591         Mode mode() <span class="keyword">const</span>;
143
 
<a name="l00592"></a>00592 
144
 
<a name="l00596"></a>00596         Padding padding() <span class="keyword">const</span>;
145
 
<a name="l00597"></a>00597 
146
 
<a name="l00601"></a>00601         <a class="code" href="namespaceQCA.html#8e5d1994b00ea69c9a598f93cd0990ce">Direction</a> direction() <span class="keyword">const</span>;
147
 
<a name="l00602"></a>00602 
148
 
<a name="l00606"></a>00606         <a class="code" href="classQCA_1_1KeyLength.html">KeyLength</a> keyLength() <span class="keyword">const</span>;
149
 
<a name="l00607"></a>00607 
150
 
<a name="l00614"></a>00614         <span class="keywordtype">bool</span> validKeyLength(<span class="keywordtype">int</span> n) <span class="keyword">const</span>;
151
 
<a name="l00615"></a>00615 
152
 
<a name="l00619"></a>00619         <span class="keywordtype">int</span> blockSize() <span class="keyword">const</span>;
153
 
<a name="l00620"></a>00620 
154
 
<a name="l00624"></a>00624         <span class="keyword">virtual</span> <span class="keywordtype">void</span> clear();
155
 
<a name="l00625"></a>00625 
156
 
<a name="l00633"></a>00633         <span class="keyword">virtual</span> <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> update(<span class="keyword">const</span> <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> &amp;a);
157
 
<a name="l00634"></a>00634 
158
 
<a name="l00639"></a>00639         <span class="keyword">virtual</span> <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> <span class="keyword">final</span>();
159
 
<a name="l00640"></a>00640 
160
 
<a name="l00646"></a>00646         <span class="keyword">virtual</span> <span class="keywordtype">bool</span> ok() <span class="keyword">const</span>;
161
 
<a name="l00647"></a>00647 
162
 
<a name="l00659"></a>00659         <span class="keywordtype">void</span> setup(<a class="code" href="namespaceQCA.html#8e5d1994b00ea69c9a598f93cd0990ce">Direction</a> dir, <span class="keyword">const</span> <a class="code" href="classQCA_1_1SymmetricKey.html">SymmetricKey</a> &amp;key, <span class="keyword">const</span> <a class="code" href="classQCA_1_1InitializationVector.html">InitializationVector</a> &amp;iv = <a class="code" href="classQCA_1_1InitializationVector.html">InitializationVector</a>());
163
 
<a name="l00660"></a>00660 
164
 
<a name="l00670"></a>00670         <span class="keyword">static</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> withAlgorithms(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;cipherType, Mode modeType, Padding paddingType);
165
 
<a name="l00671"></a>00671 
166
 
<a name="l00672"></a>00672 <span class="keyword">private</span>:
167
 
<a name="l00673"></a>00673         <span class="keyword">class </span>Private;
168
 
<a name="l00674"></a>00674         Private *d;
169
 
<a name="l00675"></a>00675 };
170
 
<a name="l00676"></a>00676 
171
 
<a name="l00695"></a><a class="code" href="classQCA_1_1MessageAuthenticationCode.html">00695</a> <span class="keyword">class </span>QCA_EXPORT MessageAuthenticationCode : <span class="keyword">public</span> <a class="code" href="classQCA_1_1Algorithm.html">Algorithm</a>, <span class="keyword">public</span> <a class="code" href="classQCA_1_1BufferedComputation.html">BufferedComputation</a>
172
 
<a name="l00696"></a>00696 {
173
 
<a name="l00697"></a>00697 <span class="keyword">public</span>:
174
 
<a name="l00707"></a>00707         MessageAuthenticationCode(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;type, <span class="keyword">const</span> <a class="code" href="classQCA_1_1SymmetricKey.html">SymmetricKey</a> &amp;key, <span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;provider = <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a>());
175
 
<a name="l00708"></a>00708 
176
 
<a name="l00712"></a>00712         MessageAuthenticationCode(<span class="keyword">const</span> MessageAuthenticationCode &amp;from);
177
 
<a name="l00713"></a>00713 
178
 
<a name="l00714"></a>00714         ~MessageAuthenticationCode();
179
 
<a name="l00715"></a>00715 
180
 
<a name="l00722"></a>00722         MessageAuthenticationCode &amp; operator=(<span class="keyword">const</span> MessageAuthenticationCode &amp;from);
181
 
<a name="l00723"></a>00723 
182
 
<a name="l00727"></a>00727         <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> type() <span class="keyword">const</span>;
183
 
<a name="l00728"></a>00728 
184
 
<a name="l00732"></a>00732         <a class="code" href="classQCA_1_1KeyLength.html">KeyLength</a> keyLength() <span class="keyword">const</span>;
185
 
<a name="l00733"></a>00733 
186
 
<a name="l00740"></a>00740         <span class="keywordtype">bool</span> validKeyLength(<span class="keywordtype">int</span> n) <span class="keyword">const</span>;
187
 
<a name="l00741"></a>00741 
188
 
<a name="l00754"></a>00754         <span class="keyword">virtual</span> <span class="keywordtype">void</span> clear();
189
 
<a name="l00755"></a>00755 
190
 
<a name="l00763"></a>00763         <span class="keyword">virtual</span> <span class="keywordtype">void</span> update(<span class="keyword">const</span> <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> &amp;array);
191
 
<a name="l00764"></a>00764 
192
 
<a name="l00776"></a>00776         <span class="keyword">virtual</span> <a class="code" href="classQCA_1_1MemoryRegion.html">MemoryRegion</a> <span class="keyword">final</span>();
193
 
<a name="l00777"></a>00777 
194
 
<a name="l00783"></a>00783         <span class="keywordtype">void</span> setup(<span class="keyword">const</span> <a class="code" href="classQCA_1_1SymmetricKey.html">SymmetricKey</a> &amp;key);
195
 
<a name="l00784"></a>00784 
196
 
<a name="l00785"></a>00785 <span class="keyword">private</span>:
197
 
<a name="l00786"></a>00786         <span class="keyword">class </span>Private;
198
 
<a name="l00787"></a>00787         Private *d;
199
 
<a name="l00788"></a>00788 };
200
 
<a name="l00789"></a>00789 
201
 
<a name="l00801"></a><a class="code" href="classQCA_1_1KeyDerivationFunction.html">00801</a> <span class="keyword">class </span>QCA_EXPORT KeyDerivationFunction : <span class="keyword">public</span> <a class="code" href="classQCA_1_1Algorithm.html">Algorithm</a>
202
 
<a name="l00802"></a>00802 {
203
 
<a name="l00803"></a>00803 <span class="keyword">public</span>:
204
 
<a name="l00807"></a>00807         KeyDerivationFunction(<span class="keyword">const</span> KeyDerivationFunction &amp;from);
205
 
<a name="l00808"></a>00808         ~KeyDerivationFunction();
206
 
<a name="l00809"></a>00809 
207
 
<a name="l00816"></a>00816         KeyDerivationFunction &amp; operator=(<span class="keyword">const</span> KeyDerivationFunction &amp;from);
208
 
<a name="l00817"></a>00817 
209
 
<a name="l00830"></a>00830         <a class="code" href="classQCA_1_1SymmetricKey.html">SymmetricKey</a> makeKey(<span class="keyword">const</span> <a class="code" href="classQCA_1_1SecureArray.html">SecureArray</a> &amp;secret, <span class="keyword">const</span> <a class="code" href="classQCA_1_1InitializationVector.html">InitializationVector</a> &amp;salt, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> keyLength, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> iterationCount);
210
 
<a name="l00831"></a>00831 
211
 
<a name="l00839"></a>00839         <span class="keyword">static</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> withAlgorithm(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;kdfType, <span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;algType);
212
 
<a name="l00840"></a>00840 
213
 
<a name="l00841"></a>00841 <span class="keyword">protected</span>:
214
 
<a name="l00845"></a>00845         KeyDerivationFunction(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;type, <span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;provider);
215
 
<a name="l00846"></a>00846 
216
 
<a name="l00847"></a>00847 <span class="keyword">private</span>:
217
 
<a name="l00848"></a>00848         <span class="keyword">class </span>Private;
218
 
<a name="l00849"></a>00849         Private *d;
219
 
<a name="l00850"></a>00850 };
220
 
<a name="l00851"></a>00851 
221
 
<a name="l00860"></a><a class="code" href="classQCA_1_1PBKDF1.html">00860</a> <span class="keyword">class </span>QCA_EXPORT PBKDF1 : <span class="keyword">public</span> KeyDerivationFunction
222
 
<a name="l00861"></a>00861 {
223
 
<a name="l00862"></a>00862 <span class="keyword">public</span>:
224
 
<a name="l00869"></a><a class="code" href="classQCA_1_1PBKDF1.html#883582087ec6c749aa1eb4908078ee3f">00869</a>         <span class="keyword">explicit</span> PBKDF1(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;algorithm = <span class="stringliteral">"sha1"</span>, <span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;provider = <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a>()) : KeyDerivationFunction(withAlgorithm(<span class="stringliteral">"pbkdf1"</span>, algorithm), provider) {}
225
 
<a name="l00870"></a>00870 };
226
 
<a name="l00871"></a>00871 
227
 
<a name="l00880"></a><a class="code" href="classQCA_1_1PBKDF2.html">00880</a> <span class="keyword">class </span>QCA_EXPORT PBKDF2 : <span class="keyword">public</span> KeyDerivationFunction
228
 
<a name="l00881"></a>00881 {
229
 
<a name="l00882"></a>00882 <span class="keyword">public</span>:
230
 
<a name="l00889"></a><a class="code" href="classQCA_1_1PBKDF2.html#9eacafc382edf0739125d5957149d237">00889</a>         <span class="keyword">explicit</span> PBKDF2(<span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;algorithm = <span class="stringliteral">"sha1"</span>, <span class="keyword">const</span> <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a> &amp;provider = <a class="codeRef" doxygen="qt.tag:" href="qstring.html">QString</a>()) : KeyDerivationFunction(withAlgorithm(<span class="stringliteral">"pbkdf2"</span>, algorithm), provider) {}
231
 
<a name="l00890"></a>00890 };
232
 
<a name="l00891"></a>00891 
233
 
<a name="l00892"></a>00892 }
234
 
<a name="l00893"></a>00893 
235
 
<a name="l00894"></a>00894 <span class="preprocessor">#endif</span>
236
 
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Jul 6 13:22:42 2007 for Qt Cryptographic Architecture by&nbsp;
237
 
<a href="http://www.doxygen.org/index.html">
238
 
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6 </small></address>
239
 
</body>
240
 
</html>