Subversion Repositories Applications.framework

Rev

Rev 300 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 300 Rev 302
1
<html>
1
<html>
2
<head>
2
<head>
3
<title>Docs For Class DiffieHellmanUtil</title>
3
<title>Docs For Class DiffieHellmanUtil</title>
4
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
4
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
5
<link rel="stylesheet" type="text/css" href="../media/style.css">
5
<link rel="stylesheet" type="text/css" href="../media/style.css">
6
</head>
6
</head>
7
<body>
7
<body>
8
 
8
 
9
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
10
  <tr>
10
  <tr>
11
    <td class="header_top">Framework</td>
11
    <td class="header_top">Framework</td>
12
  </tr>
12
  </tr>
13
  <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt=""  /></td></tr>
13
  <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt=""  /></td></tr>
14
  <tr>
14
  <tr>
15
    <td class="header_menu">
15
    <td class="header_menu">
16
        
16
        
17
                                    
17
                                    
18
                                                                      		  [ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
18
                                                                      		  [ <a href="../classtrees_Framework.html" class="menu">class tree: Framework</a> ]
19
		  [ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
19
		  [ <a href="../elementindex_Framework.html" class="menu">index: Framework</a> ]
20
		  	    [ <a href="../elementindex.html" class="menu">all elements</a> ]
20
		  	    [ <a href="../elementindex.html" class="menu">all elements</a> ]
21
    </td>
21
    </td>
22
  </tr>
22
  </tr>
23
  <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt=""  /></td></tr>
23
  <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt=""  /></td></tr>
24
</table>
24
</table>
25
 
25
 
26
<table width="100%" border="0" cellpadding="0" cellspacing="0">
26
<table width="100%" border="0" cellpadding="0" cellspacing="0">
27
  <tr valign="top">
27
  <tr valign="top">
28
    <td width="200" class="menu">
28
    <td width="200" class="menu">
29
	<div id="todolist">
29
	<div id="todolist">
30
			<p><a href="../todolist.html">Todo List</a></p>
30
			<p><a href="../todolist.html">Todo List</a></p>
31
	</div>
31
	</div>
32
      <b>Packages:</b><br />
32
      <b>Packages:</b><br />
33
              <a href="../li_Framework.html">Framework</a><br />
33
              <a href="../li_Framework.html">Framework</a><br />
34
              <a href="../li_Utilitaire.html">Utilitaire</a><br />
34
              <a href="../li_Utilitaire.html">Utilitaire</a><br />
35
              <a href="../li_Zend_OpenId.html">Zend_OpenId</a><br />
35
              <a href="../li_Zend_OpenId.html">Zend_OpenId</a><br />
36
            <br /><br />
36
            <br /><br />
37
                        <b>Files:</b><br />
37
                        <b>Files:</b><br />
38
      	  <div class="package">
38
      	  <div class="package">
39
			<a href="../Framework/_Bdd.php.html">		Bdd.php
39
			<a href="../Framework/_Bdd.php.html">		Bdd.php
40
		</a><br>
40
		</a><br>
41
			<a href="../Framework/_Cache.php.html">		Cache.php
41
			<a href="../Framework/_Cache.php.html">		Cache.php
42
		</a><br>
42
		</a><br>
43
			<a href="../Framework/_CacheFichier.php.html">		CacheFichier.php
43
			<a href="../Framework/_CacheFichier.php.html">		CacheFichier.php
44
		</a><br>
44
		</a><br>
45
			<a href="../Framework/_CacheSimple.php.html">		CacheSimple.php
45
			<a href="../Framework/_CacheSimple.php.html">		CacheSimple.php
46
		</a><br>
46
		</a><br>
47
			<a href="../Framework/_CacheSqlite.php.html">		CacheSqlite.php
47
			<a href="../Framework/_CacheSqlite.php.html">		CacheSqlite.php
48
		</a><br>
48
		</a><br>
49
			<a href="../Framework/_Chronometre.php.html">		Chronometre.php
49
			<a href="../Framework/_Chronometre.php.html">		Chronometre.php
50
		</a><br>
50
		</a><br>
51
			<a href="../Framework/_Cli.php.html">		Cli.php
51
			<a href="../Framework/_Cli.php.html">		Cli.php
52
		</a><br>
52
		</a><br>
53
			<a href="../Framework/_Config.php.html">		Config.php
53
			<a href="../Framework/_Config.php.html">		Config.php
54
		</a><br>
54
		</a><br>
55
			<a href="../Framework/_Controleur.php.html">		Controleur.php
55
			<a href="../Framework/_Controleur.php.html">		Controleur.php
56
		</a><br>
56
		</a><br>
57
			<a href="../Framework/_Debug.php.html">		Debug.php
57
			<a href="../Framework/_Debug.php.html">		Debug.php
58
		</a><br>
58
		</a><br>
59
			<a href="../Framework/_utilitaires---DiffieHellmanUtil.php.html">		DiffieHellmanUtil.php
59
			<a href="../Framework/_utilitaires---DiffieHellmanUtil.php.html">		DiffieHellmanUtil.php
60
		</a><br>
60
		</a><br>
61
			<a href="../Framework/_Framework.php.html">		Framework.php
61
			<a href="../Framework/_Framework.php.html">		Framework.php
62
		</a><br>
62
		</a><br>
63
			<a href="../Framework/_GestionnaireException.php.html">		GestionnaireException.php
63
			<a href="../Framework/_GestionnaireException.php.html">		GestionnaireException.php
64
		</a><br>
64
		</a><br>
65
			<a href="../Framework/_I18n.php.html">		I18n.php
65
			<a href="../Framework/_I18n.php.html">		I18n.php
66
		</a><br>
66
		</a><br>
67
			<a href="../Framework/_Log.php.html">		Log.php
67
			<a href="../Framework/_Log.php.html">		Log.php
68
		</a><br>
68
		</a><br>
69
			<a href="../Framework/_OpenIdClient.php.html">		OpenIdClient.php
69
			<a href="../Framework/_OpenIdClient.php.html">		OpenIdClient.php
70
		</a><br>
70
		</a><br>
71
			<a href="../Framework/_Registre.php.html">		Registre.php
71
			<a href="../Framework/_Registre.php.html">		Registre.php
72
		</a><br>
72
		</a><br>
73
			<a href="../Framework/_RestClient.php.html">		RestClient.php
73
			<a href="../Framework/_RestClient.php.html">		RestClient.php
74
		</a><br>
74
		</a><br>
75
			<a href="../Framework/_RestServeur.php.html">		RestServeur.php
75
			<a href="../Framework/_RestServeur.php.html">		RestServeur.php
76
		</a><br>
76
		</a><br>
77
			<a href="../Framework/_RestService.php.html">		RestService.php
77
			<a href="../Framework/_RestService.php.html">		RestService.php
78
		</a><br>
78
		</a><br>
79
			<a href="../Framework/_Script.php.html">		Script.php
79
			<a href="../Framework/_Script.php.html">		Script.php
80
		</a><br>
80
		</a><br>
81
			<a href="../Framework/_SquelettePhp.php.html">		SquelettePhp.php
81
			<a href="../Framework/_SquelettePhp.php.html">		SquelettePhp.php
82
		</a><br>
82
		</a><br>
83
			<a href="../Framework/_Url.php.html">		Url.php
83
			<a href="../Framework/_Url.php.html">		Url.php
84
		</a><br>
84
		</a><br>
85
	  </div><br />
85
	  </div><br />
86
      
86
      
87
      
87
      
88
            <b>Classes:</b><br />
88
            <b>Classes:</b><br />
89
        <div class="package">
89
        <div class="package">
90
		    		<a href="../Framework/Bdd.html">Bdd</a><br />
90
		    		<a href="../Framework/Bdd.html">Bdd</a><br />
91
	    		<a href="../Framework/Cache.html">Cache</a><br />
91
	    		<a href="../Framework/Cache.html">Cache</a><br />
92
	    		<a href="../Framework/CacheFichier.html">CacheFichier</a><br />
92
	    		<a href="../Framework/CacheFichier.html">CacheFichier</a><br />
93
	    		<a href="../Framework/CacheSimple.html">CacheSimple</a><br />
93
	    		<a href="../Framework/CacheSimple.html">CacheSimple</a><br />
94
	    		<a href="../Framework/CacheSqlite.html">CacheSqlite</a><br />
94
	    		<a href="../Framework/CacheSqlite.html">CacheSqlite</a><br />
95
	    		<a href="../Framework/Chronometre.html">Chronometre</a><br />
95
	    		<a href="../Framework/Chronometre.html">Chronometre</a><br />
96
	    		<a href="../Framework/Cli.html">Cli</a><br />
96
	    		<a href="../Framework/Cli.html">Cli</a><br />
97
	    		<a href="../Framework/Config.html">Config</a><br />
97
	    		<a href="../Framework/Config.html">Config</a><br />
98
	    		<a href="../Framework/Controleur.html">Controleur</a><br />
98
	    		<a href="../Framework/Controleur.html">Controleur</a><br />
99
	    		<a href="../Framework/Debug.html">Debug</a><br />
99
	    		<a href="../Framework/Debug.html">Debug</a><br />
100
	    		<a href="../Framework/DiffieHellmanUtil.html">DiffieHellmanUtil</a><br />
100
	    		<a href="../Framework/DiffieHellmanUtil.html">DiffieHellmanUtil</a><br />
101
	    		<a href="../Framework/Framework.html">Framework</a><br />
101
	    		<a href="../Framework/Framework.html">Framework</a><br />
102
	    		<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
102
	    		<a href="../Framework/GestionnaireException.html">GestionnaireException</a><br />
103
	    		<a href="../Framework/I18n.html">I18n</a><br />
103
	    		<a href="../Framework/I18n.html">I18n</a><br />
104
	    		<a href="../Framework/Log.html">Log</a><br />
104
	    		<a href="../Framework/Log.html">Log</a><br />
105
	    		<a href="../Framework/OpenIdClient.html">OpenIdClient</a><br />
105
	    		<a href="../Framework/OpenIdClient.html">OpenIdClient</a><br />
106
	    		<a href="../Framework/Registre.html">Registre</a><br />
106
	    		<a href="../Framework/Registre.html">Registre</a><br />
107
	    		<a href="../Framework/RestClient.html">RestClient</a><br />
107
	    		<a href="../Framework/RestClient.html">RestClient</a><br />
108
	    		<a href="../Framework/RestServeur.html">RestServeur</a><br />
108
	    		<a href="../Framework/RestServeur.html">RestServeur</a><br />
109
	    		<a href="../Framework/RestService.html">RestService</a><br />
109
	    		<a href="../Framework/RestService.html">RestService</a><br />
110
	    		<a href="../Framework/Script.html">Script</a><br />
110
	    		<a href="../Framework/Script.html">Script</a><br />
111
	    		<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
111
	    		<a href="../Framework/SquelettePhp.html">SquelettePhp</a><br />
112
	    		<a href="../Framework/Url.html">Url</a><br />
112
	    		<a href="../Framework/Url.html">Url</a><br />
113
	  </div>
113
	  </div>
114
                </td>
114
                </td>
115
    <td>
115
    <td>
116
      <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
116
      <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
117
 
117
 
118
<h1>Class: DiffieHellmanUtil</h1>
118
<h1>Class: DiffieHellmanUtil</h1>
119
Source Location: /utilitaires/DiffieHellmanUtil.php<br /><br />
119
Source Location: /utilitaires/DiffieHellmanUtil.php<br /><br />
120
 
120
 
121
 
121
 
122
<table width="100%" border="0">
122
<table width="100%" border="0">
123
<tr><td valign="top">
123
<tr><td valign="top">
124
 
124
 
125
<h3><a href="#class_details">Class Overview</a></h3>
125
<h3><a href="#class_details">Class Overview</a></h3>
126
<pre></pre><br />
126
<pre></pre><br />
127
<div class="description">Classe utilitaire proposant des fonctions permettant la réalisation d'un  échange de clé Diffie Hellman</div><br /><br />
127
<div class="description">Classe utilitaire proposant des fonctions permettant la réalisation d'un  échange de clé Diffie Hellman</div><br /><br />
128
 
128
 
129
 
129
 
130
 
130
 
131
 
131
 
132
 
132
 
133
 
133
 
134
        
134
        
135
</td>
135
</td>
136
 
136
 
137
 
137
 
138
<td valign="top">
138
<td valign="top">
139
<h3><a href="#class_consts">Constants</a></h3>
139
<h3><a href="#class_consts">Constants</a></h3>
140
<ul>
140
<ul>
141
    <li><a href="../Framework/DiffieHellmanUtil.html#constDH_G">DH_G</a></li>
141
    <li><a href="../Framework/DiffieHellmanUtil.html#constDH_G">DH_G</a></li>
142
    <li><a href="../Framework/DiffieHellmanUtil.html#constDH_P">DH_P</a></li>
142
    <li><a href="../Framework/DiffieHellmanUtil.html#constDH_P">DH_P</a></li>
143
  </ul>
143
  </ul>
144
</td>
144
</td>
145
 
145
 
146
<td valign="top">
146
<td valign="top">
147
<h3><a href="#class_methods">Methods</a></h3>
147
<h3><a href="#class_methods">Methods</a></h3>
148
<ul>
148
<ul>
149
    <li><a href="../Framework/DiffieHellmanUtil.html#methodbinToBigNum">binToBigNum</a></li>
149
    <li><a href="../Framework/DiffieHellmanUtil.html#methodbinToBigNum">binToBigNum</a></li>
150
    <li><a href="../Framework/DiffieHellmanUtil.html#methodbtwoc">btwoc</a></li>
150
    <li><a href="../Framework/DiffieHellmanUtil.html#methodbtwoc">btwoc</a></li>
151
    <li><a href="../Framework/DiffieHellmanUtil.html#methodcomputeDhSecret">computeDhSecret</a></li>
151
    <li><a href="../Framework/DiffieHellmanUtil.html#methodcomputeDhSecret">computeDhSecret</a></li>
152
    <li><a href="../Framework/DiffieHellmanUtil.html#methodcreateDhKey">createDhKey</a></li>
152
    <li><a href="../Framework/DiffieHellmanUtil.html#methodcreateDhKey">createDhKey</a></li>
153
    <li><a href="../Framework/DiffieHellmanUtil.html#methodgetDhKeyDetails">getDhKeyDetails</a></li>
153
    <li><a href="../Framework/DiffieHellmanUtil.html#methodgetDhKeyDetails">getDhKeyDetails</a></li>
154
    <li><a href="../Framework/DiffieHellmanUtil.html#methodrandomBytes">randomBytes</a></li>
154
    <li><a href="../Framework/DiffieHellmanUtil.html#methodrandomBytes">randomBytes</a></li>
155
    <li><a href="../Framework/DiffieHellmanUtil.html#methodstrlen">strlen</a></li>
155
    <li><a href="../Framework/DiffieHellmanUtil.html#methodstrlen">strlen</a></li>
156
  </ul>
156
  </ul>
157
</td>
157
</td>
158
 
158
 
159
</tr></table>
159
</tr></table>
160
<hr />
160
<hr />
161
 
161
 
162
<table width="100%" border="0"><tr>
162
<table width="100%" border="0"><tr>
163
 
163
 
164
 
164
 
165
 
165
 
166
 
166
 
167
 
167
 
168
 
168
 
169
</tr></table>
169
</tr></table>
170
<hr />
170
<hr />
171
 
171
 
172
<a name="class_details"></a>
172
<a name="class_details"></a>
173
<h3>Class Details</h3>
173
<h3>Class Details</h3>
174
<div class="tags">
174
<div class="tags">
175
[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a17">17</a>]<br />
175
[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a17">17</a>]<br />
176
Classe utilitaire proposant des fonctions permettant la réalisation d'un  échange de clé Diffie Hellman<br /><br /><p>&quot;En cryptographie, l'échange de clés Diffie-Hellman, du nom de ses auteurs   Whitfield Diffie et Martin Hellman, est une méthode par laquelle deux   personnes peuvent se mettre d'accord sur un nombre (qu'ils peuvent utiliser   comme clé pour chiffrer la conversation suivante) sans qu'une troisième   personne appelée Ève puisse découvrir le nombre, même en ayant écouté tous   leurs échanges.&quot;</p><p>Voir http://fr.wikipedia.org/wiki/%C3%89change_de_cl%C3%A9s_Diffie-Hellman</p><br /></div><br /><br />
176
Classe utilitaire proposant des fonctions permettant la réalisation d'un  échange de clé Diffie Hellman<br /><br /><p>&quot;En cryptographie, l'échange de clés Diffie-Hellman, du nom de ses auteurs   Whitfield Diffie et Martin Hellman, est une méthode par laquelle deux   personnes peuvent se mettre d'accord sur un nombre (qu'ils peuvent utiliser   comme clé pour chiffrer la conversation suivante) sans qu'une troisième   personne appelée Ève puisse découvrir le nombre, même en ayant écouté tous   leurs échanges.&quot;</p><p>Voir http://fr.wikipedia.org/wiki/%C3%89change_de_cl%C3%A9s_Diffie-Hellman</p><br /></div><br /><br />
177
<div class="top">[ <a href="#top">Top</a> ]</div><br />
177
<div class="top">[ <a href="#top">Top</a> ]</div><br />
178
 
178
 
179
 
179
 
180
<hr />
180
<hr />
181
<a name="class_methods"></a>
181
<a name="class_methods"></a>
182
<h3>Class Methods</h3>
182
<h3>Class Methods</h3>
183
<div class="tags">
183
<div class="tags">
184
  <hr />
184
  <hr />
185
	<a name="methodcreateDhKey"></a>
185
	<a name="methodcreateDhKey"></a>
186
	<h3>static method createDhKey <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a40">40</a>]</span></h3>
186
	<h3>static method createDhKey <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a40">40</a>]</span></h3>
187
	<div class="function">
187
	<div class="function">
188
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
188
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
189
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
189
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
190
		<code>static mixed createDhKey(
190
		<code>static mixed createDhKey(
191
string
191
string
192
$p, string
192
$p, string
193
$g, [string
193
$g, [string
194
$priv_key = null])</code>
194
$priv_key = null])</code>
195
    </td></tr></table>
195
    </td></tr></table>
196
    </td></tr></table><br />
196
    </td></tr></table><br />
197
	
197
	
198
		Performs the first step of a Diffie-Hellman key exchange by generating<br /><br /><p>private and public DH values based on given prime number $p and  generator $g. Both sides of key exchange MUST have the same prime number  and generator. In this case they will able to create a random shared  secret that is never send from one to the other.</p><br /><br /><br />
198
		Performs the first step of a Diffie-Hellman key exchange by generating<br /><br /><p>private and public DH values based on given prime number $p and  generator $g. Both sides of key exchange MUST have the same prime number  and generator. In this case they will able to create a random shared  secret that is never send from one to the other.</p><br /><br /><br />
199
<h4>Tags:</h4>
199
<h4>Tags:</h4>
200
<div class="tags">
200
<div class="tags">
201
<table border="0" cellspacing="0" cellpadding="0">
201
<table border="0" cellspacing="0" cellpadding="0">
202
  <tr>
202
  <tr>
203
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
203
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
204
  </tr>
204
  </tr>
205
</table>
205
</table>
206
</div>
206
</div>
207
<br /><br />
207
<br /><br />
208
 
208
 
209
	
209
	
210
        <h4>Parameters:</h4>
210
        <h4>Parameters:</h4>
211
    <div class="tags">
211
    <div class="tags">
212
    <table border="0" cellspacing="0" cellpadding="0">
212
    <table border="0" cellspacing="0" cellpadding="0">
213
          <tr>
213
          <tr>
214
        <td class="type">string&nbsp;&nbsp;</td>
214
        <td class="type">string&nbsp;&nbsp;</td>
215
        <td><b>$p</b>&nbsp;&nbsp;</td>
215
        <td><b>$p</b>&nbsp;&nbsp;</td>
216
        <td>prime number in binary representation</td>
216
        <td>prime number in binary representation</td>
217
      </tr>
217
      </tr>
218
          <tr>
218
          <tr>
219
        <td class="type">string&nbsp;&nbsp;</td>
219
        <td class="type">string&nbsp;&nbsp;</td>
220
        <td><b>$g</b>&nbsp;&nbsp;</td>
220
        <td><b>$g</b>&nbsp;&nbsp;</td>
221
        <td>generator in binary representation</td>
221
        <td>generator in binary representation</td>
222
      </tr>
222
      </tr>
223
          <tr>
223
          <tr>
224
        <td class="type">string&nbsp;&nbsp;</td>
224
        <td class="type">string&nbsp;&nbsp;</td>
225
        <td><b>$priv_key</b>&nbsp;&nbsp;</td>
225
        <td><b>$priv_key</b>&nbsp;&nbsp;</td>
226
        <td>private key in binary representation</td>
226
        <td>private key in binary representation</td>
227
      </tr>
227
      </tr>
228
        </table>
228
        </table>
229
    </div><br />
229
    </div><br />
230
        <div class="top">[ <a href="#top">Top</a> ]</div>
230
        <div class="top">[ <a href="#top">Top</a> ]</div>
231
  </div>
231
  </div>
232
  <hr />
232
  <hr />
233
	<a name="methodgetDhKeyDetails"></a>
233
	<a name="methodgetDhKeyDetails"></a>
234
	<h3>static method getDhKeyDetails <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a87">87</a>]</span></h3>
234
	<h3>static method getDhKeyDetails <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a87">87</a>]</span></h3>
235
	<div class="function">
235
	<div class="function">
236
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
236
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
237
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
237
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
238
		<code>static array getDhKeyDetails(
238
		<code>static array getDhKeyDetails(
239
mixed
239
mixed
240
$dh)</code>
240
$dh)</code>
241
    </td></tr></table>
241
    </td></tr></table>
242
    </td></tr></table><br />
242
    </td></tr></table><br />
243
	
243
	
244
		Returns an associative array with Diffie-Hellman key components in  binary representation. The array includes original prime number 'p' and  generator 'g', random private key 'priv_key' and corresponding public  key 'pub_key'.<br /><br /><br /><br />
244
		Returns an associative array with Diffie-Hellman key components in  binary representation. The array includes original prime number 'p' and  generator 'g', random private key 'priv_key' and corresponding public  key 'pub_key'.<br /><br /><br /><br />
245
<h4>Tags:</h4>
245
<h4>Tags:</h4>
246
<div class="tags">
246
<div class="tags">
247
<table border="0" cellspacing="0" cellpadding="0">
247
<table border="0" cellspacing="0" cellpadding="0">
248
  <tr>
248
  <tr>
249
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
249
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
250
  </tr>
250
  </tr>
251
</table>
251
</table>
252
</div>
252
</div>
253
<br /><br />
253
<br /><br />
254
 
254
 
255
	
255
	
256
        <h4>Parameters:</h4>
256
        <h4>Parameters:</h4>
257
    <div class="tags">
257
    <div class="tags">
258
    <table border="0" cellspacing="0" cellpadding="0">
258
    <table border="0" cellspacing="0" cellpadding="0">
259
          <tr>
259
          <tr>
260
        <td class="type">mixed&nbsp;&nbsp;</td>
260
        <td class="type">mixed&nbsp;&nbsp;</td>
261
        <td><b>$dh</b>&nbsp;&nbsp;</td>
261
        <td><b>$dh</b>&nbsp;&nbsp;</td>
262
        <td>Diffie-Hellman key</td>
262
        <td>Diffie-Hellman key</td>
263
      </tr>
263
      </tr>
264
        </table>
264
        </table>
265
    </div><br />
265
    </div><br />
266
        <div class="top">[ <a href="#top">Top</a> ]</div>
266
        <div class="top">[ <a href="#top">Top</a> ]</div>
267
  </div>
267
  </div>
268
  <hr />
268
  <hr />
269
	<a name="methodstrlen"></a>
269
	<a name="methodstrlen"></a>
270
	<h3>static method strlen <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a183">183</a>]</span></h3>
270
	<h3>static method strlen <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a183">183</a>]</span></h3>
271
	<div class="function">
271
	<div class="function">
272
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
272
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
273
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
273
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
274
		<code>static int strlen(
274
		<code>static int strlen(
275
string
275
string
276
$str)</code>
276
$str)</code>
277
    </td></tr></table>
277
    </td></tr></table>
278
    </td></tr></table><br />
278
    </td></tr></table><br />
279
	
279
	
280
		Returns lenght of binary string in bytes<br /><br /><br /><br />
280
		Returns lenght of binary string in bytes<br /><br /><br /><br />
281
<h4>Tags:</h4>
281
<h4>Tags:</h4>
282
<div class="tags">
282
<div class="tags">
283
<table border="0" cellspacing="0" cellpadding="0">
283
<table border="0" cellspacing="0" cellpadding="0">
284
  <tr>
284
  <tr>
285
    <td><b>return:</b>&nbsp;&nbsp;</td><td>the string lenght</td>
285
    <td><b>return:</b>&nbsp;&nbsp;</td><td>the string lenght</td>
286
  </tr>
286
  </tr>
287
  <tr>
287
  <tr>
288
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
288
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
289
  </tr>
289
  </tr>
290
</table>
290
</table>
291
</div>
291
</div>
292
<br /><br />
292
<br /><br />
293
 
293
 
294
	
294
	
295
        <h4>Parameters:</h4>
295
        <h4>Parameters:</h4>
296
    <div class="tags">
296
    <div class="tags">
297
    <table border="0" cellspacing="0" cellpadding="0">
297
    <table border="0" cellspacing="0" cellpadding="0">
298
          <tr>
298
          <tr>
299
        <td class="type">string&nbsp;&nbsp;</td>
299
        <td class="type">string&nbsp;&nbsp;</td>
300
        <td><b>$str</b>&nbsp;&nbsp;</td>
300
        <td><b>$str</b>&nbsp;&nbsp;</td>
301
        <td></td>
301
        <td></td>
302
      </tr>
302
      </tr>
303
        </table>
303
        </table>
304
    </div><br />
304
    </div><br />
305
        <div class="top">[ <a href="#top">Top</a> ]</div>
305
        <div class="top">[ <a href="#top">Top</a> ]</div>
306
  </div>
306
  </div>
307
 
307
 
308
  <hr />
308
  <hr />
309
	<a name="methodbinToBigNum"></a>
309
	<a name="methodbinToBigNum"></a>
310
	<h3>method binToBigNum <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a202">202</a>]</span></h3>
310
	<h3>method binToBigNum <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a202">202</a>]</span></h3>
311
	<div class="function">
311
	<div class="function">
312
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
312
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
313
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
313
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
314
		<code>mixed binToBigNum(
314
		<code>mixed binToBigNum(
315
string
315
string
316
$bin)</code>
316
$bin)</code>
317
    </td></tr></table>
317
    </td></tr></table>
318
    </td></tr></table><br />
318
    </td></tr></table><br />
319
	
319
	
320
		Converts binary representation into ext/gmp or ext/bcmath big integer  representation.<br /><br /><br /><br />
320
		Converts binary representation into ext/gmp or ext/bcmath big integer  representation.<br /><br /><br /><br />
321
<h4>Tags:</h4>
321
<h4>Tags:</h4>
322
<div class="tags">
322
<div class="tags">
323
<table border="0" cellspacing="0" cellpadding="0">
323
<table border="0" cellspacing="0" cellpadding="0">
324
  <tr>
324
  <tr>
325
    <td><b>throws:</b>&nbsp;&nbsp;</td><td>Zend_OpenId_Exception</td>
325
    <td><b>throws:</b>&nbsp;&nbsp;</td><td>Zend_OpenId_Exception</td>
326
  </tr>
326
  </tr>
327
  <tr>
327
  <tr>
328
    <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
328
    <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td>
329
  </tr>
329
  </tr>
330
</table>
330
</table>
331
</div>
331
</div>
332
<br /><br />
332
<br /><br />
333
 
333
 
334
	
334
	
335
        <h4>Parameters:</h4>
335
        <h4>Parameters:</h4>
336
    <div class="tags">
336
    <div class="tags">
337
    <table border="0" cellspacing="0" cellpadding="0">
337
    <table border="0" cellspacing="0" cellpadding="0">
338
          <tr>
338
          <tr>
339
        <td class="type">string&nbsp;&nbsp;</td>
339
        <td class="type">string&nbsp;&nbsp;</td>
340
        <td><b>$bin</b>&nbsp;&nbsp;</td>
340
        <td><b>$bin</b>&nbsp;&nbsp;</td>
341
        <td>binary representation of big number</td>
341
        <td>binary representation of big number</td>
342
      </tr>
342
      </tr>
343
        </table>
343
        </table>
344
    </div><br />
344
    </div><br />
345
        <div class="top">[ <a href="#top">Top</a> ]</div>
345
        <div class="top">[ <a href="#top">Top</a> ]</div>
346
  </div>
346
  </div>
347
  <hr />
347
  <hr />
348
	<a name="methodbtwoc"></a>
348
	<a name="methodbtwoc"></a>
349
	<h3>method btwoc <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a152">152</a>]</span></h3>
349
	<h3>method btwoc <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a152">152</a>]</span></h3>
350
	<div class="function">
350
	<div class="function">
351
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
351
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
352
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
352
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
353
		<code>string btwoc(
353
		<code>string btwoc(
354
string
354
string
355
$str)</code>
355
$str)</code>
356
    </td></tr></table>
356
    </td></tr></table>
357
    </td></tr></table><br />
357
    </td></tr></table><br />
358
	
358
	
359
		Takes an arbitrary precision integer and returns its shortest big-endian  two's complement representation.<br /><br /><p>Arbitrary precision integers MUST be encoded as big-endian signed two's  complement binary strings. Henceforth, &quot;btwoc&quot; is a function that takes  an arbitrary precision integer and returns its shortest big-endian two's  complement representation. All integers that are used with  Diffie-Hellman Key Exchange are positive. This means that the left-most  bit of the two's complement representation MUST be zero. If it is not,  implementations MUST add a zero byte at the front of the string.</p><br /><br /><br />
359
		Takes an arbitrary precision integer and returns its shortest big-endian  two's complement representation.<br /><br /><p>Arbitrary precision integers MUST be encoded as big-endian signed two's  complement binary strings. Henceforth, &quot;btwoc&quot; is a function that takes  an arbitrary precision integer and returns its shortest big-endian two's  complement representation. All integers that are used with  Diffie-Hellman Key Exchange are positive. This means that the left-most  bit of the two's complement representation MUST be zero. If it is not,  implementations MUST add a zero byte at the front of the string.</p><br /><br /><br />
360
<h4>Tags:</h4>
360
<h4>Tags:</h4>
361
<div class="tags">
361
<div class="tags">
362
<table border="0" cellspacing="0" cellpadding="0">
362
<table border="0" cellspacing="0" cellpadding="0">
363
  <tr>
363
  <tr>
364
    <td><b>return:</b>&nbsp;&nbsp;</td><td>big-endian signed representation</td>
364
    <td><b>return:</b>&nbsp;&nbsp;</td><td>big-endian signed representation</td>
365
  </tr>
365
  </tr>
366
  <tr>
366
  <tr>
367
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
367
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
368
  </tr>
368
  </tr>
369
</table>
369
</table>
370
</div>
370
</div>
371
<br /><br />
371
<br /><br />
372
 
372
 
373
	
373
	
374
        <h4>Parameters:</h4>
374
        <h4>Parameters:</h4>
375
    <div class="tags">
375
    <div class="tags">
376
    <table border="0" cellspacing="0" cellpadding="0">
376
    <table border="0" cellspacing="0" cellpadding="0">
377
          <tr>
377
          <tr>
378
        <td class="type">string&nbsp;&nbsp;</td>
378
        <td class="type">string&nbsp;&nbsp;</td>
379
        <td><b>$str</b>&nbsp;&nbsp;</td>
379
        <td><b>$str</b>&nbsp;&nbsp;</td>
380
        <td>binary representation of arbitrary precision integer</td>
380
        <td>binary representation of arbitrary precision integer</td>
381
      </tr>
381
      </tr>
382
        </table>
382
        </table>
383
    </div><br />
383
    </div><br />
384
        <div class="top">[ <a href="#top">Top</a> ]</div>
384
        <div class="top">[ <a href="#top">Top</a> ]</div>
385
  </div>
385
  </div>
386
  <hr />
386
  <hr />
387
	<a name="methodcomputeDhSecret"></a>
387
	<a name="methodcomputeDhSecret"></a>
388
	<h3>method computeDhSecret <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a112">112</a>]</span></h3>
388
	<h3>method computeDhSecret <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a112">112</a>]</span></h3>
389
	<div class="function">
389
	<div class="function">
390
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
390
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
391
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
391
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
392
		<code>string computeDhSecret(
392
		<code>string computeDhSecret(
393
string
393
string
394
$pub_key, mixed
394
$pub_key, mixed
395
$dh)</code>
395
$dh)</code>
396
    </td></tr></table>
396
    </td></tr></table>
397
    </td></tr></table><br />
397
    </td></tr></table><br />
398
	
398
	
399
		Computes the shared secret from the private DH value $dh and the other  party's public value in $pub_key<br /><br /><br /><br />
399
		Computes the shared secret from the private DH value $dh and the other  party's public value in $pub_key<br /><br /><br /><br />
400
<h4>Tags:</h4>
400
<h4>Tags:</h4>
401
<div class="tags">
401
<div class="tags">
402
<table border="0" cellspacing="0" cellpadding="0">
402
<table border="0" cellspacing="0" cellpadding="0">
403
  <tr>
403
  <tr>
404
    <td><b>throws:</b>&nbsp;&nbsp;</td><td>Zend_OpenId_Exception</td>
404
    <td><b>throws:</b>&nbsp;&nbsp;</td><td>Zend_OpenId_Exception</td>
405
  </tr>
405
  </tr>
406
  <tr>
406
  <tr>
407
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
407
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
408
  </tr>
408
  </tr>
409
</table>
409
</table>
410
</div>
410
</div>
411
<br /><br />
411
<br /><br />
412
 
412
 
413
	
413
	
414
        <h4>Parameters:</h4>
414
        <h4>Parameters:</h4>
415
    <div class="tags">
415
    <div class="tags">
416
    <table border="0" cellspacing="0" cellpadding="0">
416
    <table border="0" cellspacing="0" cellpadding="0">
417
          <tr>
417
          <tr>
418
        <td class="type">string&nbsp;&nbsp;</td>
418
        <td class="type">string&nbsp;&nbsp;</td>
419
        <td><b>$pub_key</b>&nbsp;&nbsp;</td>
419
        <td><b>$pub_key</b>&nbsp;&nbsp;</td>
420
        <td>other party's public value</td>
420
        <td>other party's public value</td>
421
      </tr>
421
      </tr>
422
          <tr>
422
          <tr>
423
        <td class="type">mixed&nbsp;&nbsp;</td>
423
        <td class="type">mixed&nbsp;&nbsp;</td>
424
        <td><b>$dh</b>&nbsp;&nbsp;</td>
424
        <td><b>$dh</b>&nbsp;&nbsp;</td>
425
        <td>Diffie-Hellman key</td>
425
        <td>Diffie-Hellman key</td>
426
      </tr>
426
      </tr>
427
        </table>
427
        </table>
428
    </div><br />
428
    </div><br />
429
        <div class="top">[ <a href="#top">Top</a> ]</div>
429
        <div class="top">[ <a href="#top">Top</a> ]</div>
430
  </div>
430
  </div>
431
  <hr />
431
  <hr />
432
	<a name="methodrandomBytes"></a>
432
	<a name="methodrandomBytes"></a>
433
	<h3>method randomBytes <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a168">168</a>]</span></h3>
433
	<h3>method randomBytes <span class="smalllinenumber">[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a168">168</a>]</span></h3>
434
	<div class="function">
434
	<div class="function">
435
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
435
    <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
436
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
436
    <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
437
		<code>string randomBytes(
437
		<code>string randomBytes(
438
integer
438
integer
439
$len)</code>
439
$len)</code>
440
    </td></tr></table>
440
    </td></tr></table>
441
    </td></tr></table><br />
441
    </td></tr></table><br />
442
	
442
	
443
		Produces string of random byte of given length.<br /><br /><br /><br />
443
		Produces string of random byte of given length.<br /><br /><br /><br />
444
<h4>Tags:</h4>
444
<h4>Tags:</h4>
445
<div class="tags">
445
<div class="tags">
446
<table border="0" cellspacing="0" cellpadding="0">
446
<table border="0" cellspacing="0" cellpadding="0">
447
  <tr>
447
  <tr>
448
    <td><b>return:</b>&nbsp;&nbsp;</td><td>RAW random binary string</td>
448
    <td><b>return:</b>&nbsp;&nbsp;</td><td>RAW random binary string</td>
449
  </tr>
449
  </tr>
450
  <tr>
450
  <tr>
451
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
451
    <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
452
  </tr>
452
  </tr>
453
</table>
453
</table>
454
</div>
454
</div>
455
<br /><br />
455
<br /><br />
456
 
456
 
457
	
457
	
458
        <h4>Parameters:</h4>
458
        <h4>Parameters:</h4>
459
    <div class="tags">
459
    <div class="tags">
460
    <table border="0" cellspacing="0" cellpadding="0">
460
    <table border="0" cellspacing="0" cellpadding="0">
461
          <tr>
461
          <tr>
462
        <td class="type">integer&nbsp;&nbsp;</td>
462
        <td class="type">integer&nbsp;&nbsp;</td>
463
        <td><b>$len</b>&nbsp;&nbsp;</td>
463
        <td><b>$len</b>&nbsp;&nbsp;</td>
464
        <td>length of requested string</td>
464
        <td>length of requested string</td>
465
      </tr>
465
      </tr>
466
        </table>
466
        </table>
467
    </div><br />
467
    </div><br />
468
        <div class="top">[ <a href="#top">Top</a> ]</div>
468
        <div class="top">[ <a href="#top">Top</a> ]</div>
469
  </div>
469
  </div>
470
</div><br />
470
</div><br />
471
 
471
 
472
<hr />
472
<hr />
473
<a name="class_consts"></a>
473
<a name="class_consts"></a>
474
<h3>Class Constants</h3>
474
<h3>Class Constants</h3>
475
<div class="tags">
475
<div class="tags">
476
	<a name="constDH_G"></a>
476
	<a name="constDH_G"></a>
477
	<p></p>
477
	<p></p>
478
	<h4>DH_G = <span class="value">&nbsp;'02'</span></h4>
478
	<h4>DH_G = <span class="value">&nbsp;'02'</span></h4>
479
	<p>[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a23">23</a>]</p>
479
	<p>[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a23">23</a>]</p>
480
  
480
  
481
  <br />
481
  <br />
482
	<div class="top">[ <a href="#top">Top</a> ]</div><br />
482
	<div class="top">[ <a href="#top">Top</a> ]</div><br />
483
	<a name="constDH_P"></a>
483
	<a name="constDH_P"></a>
484
	<p></p>
484
	<p></p>
485
	<h4>DH_P = <span class="value">&nbsp;'dcf93a0b883972ec0e19989ac5a2ce310e1d37717e8d9571bb7623731866e61ef75a2e27898b057f9891c2e27a639c3f29b60814581cd3b2ca3986d2683705577d45c2e7e52dc81c7a171876e5cea74b1448bfdfaf18828efd2519f14e45e3826634af1949e5b535cc829a483b8a76223e5d490a257f05bdff16f2fb22c583ab'</span></h4>
485
	<h4>DH_P = <span class="value">&nbsp;'dcf93a0b883972ec0e19989ac5a2ce310e1d37717e8d9571bb7623731866e61ef75a2e27898b057f9891c2e27a639c3f29b60814581cd3b2ca3986d2683705577d45c2e7e52dc81c7a171876e5cea74b1448bfdfaf18828efd2519f14e45e3826634af1949e5b535cc829a483b8a76223e5d490a257f05bdff16f2fb22c583ab'</span></h4>
486
	<p>[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a20">20</a>]</p>
486
	<p>[line <a href="../__filesource/fsource_Framework__utilitairesDiffieHellmanUtil.php.html#a20">20</a>]</p>
487
  
487
  
488
  <br />
488
  <br />
489
	<div class="top">[ <a href="#top">Top</a> ]</div><br />
489
	<div class="top">[ <a href="#top">Top</a> ]</div><br />
490
</div><br />
490
</div><br />
491
 
491
 
492
        <div class="credit">
492
        <div class="credit">
493
		    <hr />
493
		    <hr />
494
		    Documentation generated on Tue, 18 Jan 2011 15:13:42 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
494
		    Documentation generated on Tue, 18 Jan 2011 15:31:16 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.3</a>
495
	      </div>
495
	      </div>
496
      </td></tr></table>
496
      </td></tr></table>
497
    </td>
497
    </td>
498
  </tr>
498
  </tr>
499
</table>
499
</table>
500
 
500
 
501
</body>
501
</body>
502
</html>
502
</html>