Bernd Wurst commited on 2017-02-18 18:02:07
Zeige 2 geänderte Dateien mit 8 Einfügungen und 6 Löschungen.
| ... | ... |
@@ -186,10 +186,11 @@ function output($arg) |
| 186 | 186 |
} |
| 187 | 187 |
|
| 188 | 188 |
|
| 189 |
-function random_string($nc, $a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789') {
|
|
| 190 |
- $l=strlen($a)-1; $r=''; |
|
| 191 |
- while($nc-->0) $r.=$a{mt_rand(0,$l)};
|
|
| 192 |
- return $r; |
|
| 189 |
+function random_string($num) |
|
| 190 |
+{
|
|
| 191 |
+ // Durch base64 wird der String länger, daher geben wir nur einen Substring zurück. |
|
| 192 |
+ $data = base64_encode(random_bytes($num)); |
|
| 193 |
+ return substr($data, 0, $num); |
|
| 193 | 194 |
} |
| 194 | 195 |
|
| 195 | 196 |
|
| ... | ... |
@@ -240,8 +241,9 @@ function generate_form_token($form_id) |
| 240 | 241 |
DEBUG("Uh? Session not running? Wtf?");
|
| 241 | 242 |
system_failure("Internal error!");
|
| 242 | 243 |
} |
| 243 |
- if (! isset($_SESSION['session_token'])) |
|
| 244 |
+ if (! isset($_SESSION['session_token'])) {
|
|
| 244 | 245 |
$_SESSION['session_token'] = random_string(10); |
| 246 |
+ } |
|
| 245 | 247 |
return hash('sha256', $sessid.$form_id.$_SESSION['session_token']);
|
| 246 | 248 |
} |
| 247 | 249 |
|
| ... | ... |
@@ -135,7 +135,7 @@ output('</table>');
|
| 135 | 135 |
|
| 136 | 136 |
output('<p>Wir behalten uns vor, diese Rechnungsposten mit anderen sinngleichen Posten zusammen zu führen.</p>');
|
| 137 | 137 |
|
| 138 |
-$handle = bin2hex(random_bytes(10)); |
|
| 138 |
+$handle = random_string(10); |
|
| 139 | 139 |
|
| 140 | 140 |
$_SESSION['more_storage_handle'] = $handle; |
| 141 | 141 |
$_SESSION['more_storage_items'] = $items; |
| 142 | 142 |