-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathconvert.php
More file actions
71 lines (56 loc) · 1.92 KB
/
convert.php
File metadata and controls
71 lines (56 loc) · 1.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<?php
function decode_server_remarks($remark)
{
return base64_decode(strtr($remark, '-_', '+/'));
}
$file = $argv[1];
$file = file_get_contents($file);
$decode_file = base64_decode($file);
$links2arr = explode("\n", $decode_file);
$decode_links = array();
$ss_links = array();
foreach($links2arr as $key => $link) {
if (empty($link)) continue;
// LINK TYPE
if (strpos($link, "_") !== false) {
// SSR LINK DECODE
$link = str_replace("ssr://", "", $link);
$link_part = explode("_", $link);
$d_link = base64_decode($link_part[0]);
$link_parms = explode(":", $d_link);
preg_match("/(?<=(\&remarks\=)).*.(?=(\&group\=))/", base64_decode($link_part[1]) , $link_parms_ssr);
$remark = decode_server_remarks($link_parms_ssr[0]);
$addr = $link_parms[0];
$port = @$link_parms[1];
$encrypt_method = @$link_parms[3];
$password = base64_decode(str_replace("/", "", @$link_parms[5]));
// ENCODE TO SS
$ss_start = "ss://";
$ss_parms = base64_encode($encrypt_method . ":" . $password . "@" . $addr . ":" . $port);
$ss_remark = urlencode($remark);
$ss_link = $ss_start . $ss_parms . "#" . $ss_remark;
array_push($ss_links, $ss_link);
}
else {
// SSR LINK DECODE
$link = str_replace("ssr://", "", $link);
$d_link = base64_decode($link);
$link_parms = explode(":", $d_link);
preg_match("/(?<=(\&remarks\=)).*.(?=(\&group\=))/", $d_link, $link_parms_ssr);
$remark = decode_server_remarks($link_parms_ssr[0]);
$addr = $link_parms[0];
$port = @$link_parms[1];
$encrypt_method = @$link_parms[3];
$password = base64_decode(explode("/?", @$link_parms[5]) [0]);
// ENCODE TO SS
$ss_start = "ss://";
$ss_parms = base64_encode($encrypt_method . ":" . $password . "@" . $addr . ":" . $port);
$ss_remark = urlencode($remark);
$ss_link = $ss_start . $ss_parms . "#" . $ss_remark;
array_push($ss_links, $ss_link);
}
}
echo "PLEASE COPY THEM AND IMPORT : \n \n \n ";
foreach($ss_links as $l) {
echo $l . "\n";
}