bihui 大佬有话说 :
一段代码转为php有人会吗?rmb
Function EncrypKey (Src:String; Key:String):string;
var
idx :integer;
KeyLen :Integer;
KeyPos :Integer;
offset :Integer;
dest :string;
SrcPos :Integer;
SrcAsc :Integer;
TmpSrcAsc :Integer;
Range :Integer;
begin
KeyLen:=Length(Key);
if KeyLen = 0 then key:=’Think Space’;
KeyPos:=0;
SrcPos:=0;
SrcAsc:=0;
Range:=256;
Randomize;
offset:=Random(Range);
dest:=format(‘%1.2x’,);
for SrcPos := 1 to Length(Src) do
begin
SrcAsc:=(Ord(Src) + offset) MOD 255;
if KeyPos < KeyLen then KeyPos:= KeyPos + 1 else KeyPos:=1;
SrcAsc:= SrcAsc xor Ord(Key);
dest:=dest + format(‘%1.2x’,);
offset:=SrcAsc;
end;
Result:=Dest;
end;
Mr.lin 大佬有话说 :
看到rmb很自信地点进来
看了一眼代码…
关闭页面yc010t
optimism 大佬有话说 :
有大佬会
奧巴马 大佬有话说 :
上古语言呀
bagheera 大佬有话说 :
本帖最后由 bagheera 于 2021-10-18 21:21 编辑
delphi
只改加密吗? 200块
需要解密函数吗? 解密函数100块.
一共,300块
houlai 大佬有话说 :
已经有人报价了,就不参与了
cnly1987 大佬有话说 :
远古dephi代码?
nekolate 大佬有话说 :
代码拿去
红包拿来
yc012tyc012t
<?php
function EncrypKey($Src, $Key=”) {
$KeyLen = strlen($Key);
if ($KeyLen == 0) $Key = ‘Think Space’;
$KeyPos = 0;
try {
$Offset = random_int(0, 255);
} catch (Exception $e) {
$Offset = rand(0, 255);
}
$Dest = sprintf(‘%02X’, $Offset);
for ($SrcPos = 0; $SrcPos < strlen($Src); $SrcPos++) {
$SrcAsc = (ord($Src[$SrcPos]) + $Offset) % 255;
if ($KeyPos < $KeyLen) $KeyPos += 1;
else $KeyPos = 0;
$SrcAsc ^= ord($Key[$KeyPos]);
$Dest .= sprintf(‘%02X’, $SrcAsc);
$Offset = $SrcAsc;
}
return $Dest;
}
function UncrypKey($Src, $Key=”) {
$KeyLen = strlen($Key);
if ($KeyLen == 0) $Key = ‘Think Space’;
$KeyPos = 0;
$SrcPos = 0;
$Offset = hexdec(substr($Src, 0, 2));
$SrcPos = 2;
$Dest = "";
while ($SrcPos < strlen($Src)) {
$SrcAsc = hexdec(substr($Src, $SrcPos, 2));
if ($KeyPos < $KeyLen) $KeyPos += 1;
else $KeyPos = 1;
$TmpSrcAsc = $SrcAsc ^ ord($Key[$KeyPos-1]);
if ($TmpSrcAsc <= $Offset) $TmpSrcAsc += 255 – $Offset;
else$TmpSrcAsc -= $Offset;
$Dest .= chr($TmpSrcAsc);
$Offset = $SrcAsc;
$SrcPos += 2;
}
return $Dest;
}
echo EncrypKey(‘测试’);
echo PHP_EOL;
echo UncrypKey(’00B23C9328834D’);
?>https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif
bihui 大佬有话说 :
本帖最后由 bihui 于 2021-10-19 16:33 编辑
nekolate 大佬有话说 : 2021-10-19 03:08
代码拿去
红包拿来
其实还有个参数的,用起来是这样 EncrypKey(dest1,’222′);dest1是str即待加密的字符,222似乎是一个改变加密的参数。
大哥你这种先给结果的,让我有点吃不消呀。。。。不过非常感谢,pm 我
nekolate 大佬有话说 :
bihui 大佬有话说 : 2021-10-19 16:31
其实还有个参数的,用起来是这样 EncrypKey(dest1,’222′);dest1是str即待加密的字符,222似乎是一个改 …
参数也支持,只不过默认为空
你也可以通过 EncrypKey(‘password’, ‘key’); 这样的方式来使用自定义密钥
解密同样支持https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif