Merge pull request #5719 from annando/notices-yeah
[friendica.git/.git] / mod / modexp.php
1 <?php
2
3 use Friendica\App;
4 use Friendica\Database\DBA;
5
6 function modexp_init(App $a) {
7
8         if($a->argc != 2)
9                 killme();
10
11         $nick = $a->argv[1];
12         $r = q("SELECT `spubkey` FROM `user` WHERE `nickname` = '%s' LIMIT 1",
13                         DBA::escape($nick)
14         );
15
16         if (! DBA::isResult($r)) {
17                 killme();
18         }
19
20         $lines = explode("\n",$r[0]['spubkey']);
21         unset($lines[0]);
22         unset($lines[count($lines)]);
23         $x = base64_decode(implode('',$lines));
24
25         $r = ASN_BASE::parseASNString($x);
26
27         $m = $r[0]->asnData[1]->asnData[0]->asnData[0]->asnData;
28         $e = $r[0]->asnData[1]->asnData[0]->asnData[1]->asnData;
29
30         header("Content-type: application/magic-public-key");
31         echo 'RSA' . '.' . $m . '.' . $e ;
32
33         killme();
34
35 }
36