开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 245|回复: 9
收起左侧

[易语言] PHP RC4加密

[复制链接]
结帖率:78% (7/9)
发表于 2024-10-28 18:17:04 | 显示全部楼层 |阅读模式   广东省佛山市
100精币
有没有  能和这个平台 互转的 php加密代码
http://www.sailtool.com/rc4encrypt/
https://www.ccava.net/toolbox/rc4.html


回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:100% (4/4)

签到天数: 15 天

发表于 2024-10-28 18:18:55 | 显示全部楼层   广东省广州市
啥意思?自己搞个网站内核是引用那两个网站的?
回复

使用道具 举报

结帖率:78% (7/9)

签到天数: 3 天

 楼主| 发表于 2024-10-28 18:42:38 | 显示全部楼层   广东省佛山市
忆泪 发表于 2024-10-28 18:18
啥意思?自己搞个网站内核是引用那两个网站的?

不是     需要php rc4加解密源码
回复

使用道具 举报

签到天数: 5 天

发表于 2024-10-28 18:51:57 | 显示全部楼层   河北省保定市
RC4加解密 不都是通用的一种加密方法吗
回复

使用道具 举报

结帖率:78% (7/9)

签到天数: 3 天

 楼主| 发表于 2024-10-28 18:56:42 | 显示全部楼层   广东省佛山市
努力的小菜鸟 发表于 2024-10-28 18:51
RC4加解密 不都是通用的一种加密方法吗

那你这边  搞一个 和以上网站能互相加解密的 rc4加密源码
回复

使用道具 举报

结帖率:100% (2/2)

签到天数: 21 天

发表于 2024-10-28 19:07:59 | 显示全部楼层   四川省绵阳市

phpseclib库
composer require phpseclib/phpseclib

[PHP] 纯文本查看 复制代码
// 引入phpseclib库
require 'vendor/autoload.php';

use phpseclib\Crypt\RC4;

class RatchetChat {
    private static $key = 'your_secret_key';

    public static function encrypt($plaintext) {
        $rc4 = new RC4(self::$key, true); // 第二个参数表示初始化向量
        return base64_encode($rc4->encrypt($plaintext));
    }

    public static function decrypt($ciphertext) {
        $rc4 = new RC4(self::$key, true);
        $plaintext = $rc4->decrypt(base64_decode($ciphertext));
        return $plaintext;
    }
}

// 加密
$original_message = "Hello, World!";
$ciphertext = RatchetChat::encrypt($original_message);
echo "Encrypted: " . $ciphertext . "\n";

// 解密
$decrypted_message = RatchetChat::decrypt($ciphertext);
echo "Decrypted: " . $decrypted_message . "\n";

回复

使用道具 举报

结帖率:78% (7/9)

签到天数: 3 天

 楼主| 发表于 2024-10-28 19:17:54 | 显示全部楼层   广东省佛山市
钥匙key 发表于 2024-10-28 19:07
用phpseclib库
composer require phpseclib/phpseclib

require 'vendor/autoload.php';
这个文件在哪?
回复

使用道具 举报

结帖率:100% (10/10)
发表于 2024-10-29 21:07:48 | 显示全部楼层   山西省太原市
https://bbs.125.la/forum.php?mod ... 5&highlight=RC4 你是指易语言的RC4解密和你网站的解密对不上?
回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 2 天

发表于 2024-10-30 00:16:47 | 显示全部楼层   吉林省四平市
[PHP] 纯文本查看 复制代码
<?php
// 加载OpenSSL库函数
if (!extension_loaded('openssl')) {
    die('OpenSSL PHP 扩展未安装');
}

// RC4 加密函数
function rc4EncryptWithSalt($key, $plaintext) {
    // 生成盐值
    $salt = openssl_random_pseudo_bytes(8);
    
    // 生成密钥的派生键
    $salted = '';
    $dx = '';
    while (strlen($salted) < 48) {
        $dx = md5($dx . $key . $salt, true);
        $salted .= $dx;
    }
    $key = substr($salted, 0, 32);

    // 使用 RC4 加密
    $encrypted_data = openssl_encrypt($plaintext, 'rc4', $key, OPENSSL_RAW_DATA);
    
    // 返回带有 "Salted__" 前缀和盐值的结果
    return base64_encode("Salted__" . $salt . $encrypted_data);
}

// RC4 解密函数
function rc4DecryptWithSalt($key, $encryptedText) {
    // Base64 解码
    $data = base64_decode($encryptedText);

    // 检查是否包含正确的 "Salted__" 前缀
    $salted = substr($data, 0, 8);
    if ($salted !== "Salted__") {
        die("Invalid encrypted text format.");
    }

    // 提取盐值
    $salt = substr($data, 8, 8);
    $encrypted_data = substr($data, 16);

    // 生成密钥的派生键
    $salted = '';
    $dx = '';
    while (strlen($salted) < 48) {
        $dx = md5($dx . $key . $salt, true);
        $salted .= $dx;
    }
    $key = substr($salted, 0, 32);

    // 使用 RC4 解密
    $decrypted_data = openssl_decrypt($encrypted_data, 'rc4', $key, OPENSSL_RAW_DATA);
    return $decrypted_data;
}

// 测试加密和解密
$key = '121';
$plaintext = 'Hello, World!';

$js_text = 'U2FsdGVkX191Ooi18dexQGmIqGJBLczSzX5uKGQ=';//js端的加密结果
// 加密
$encryptedText = rc4EncryptWithSalt($key, $plaintext);
echo "Encrypted Text: " . $encryptedText . "\n";

// 解密
$decryptedText = rc4DecryptWithSalt($key, $js_text);
echo "Decrypted Text: " . $decryptedText . "\n";

经过测试,应该是符合你的要求了
回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 2 天

发表于 2024-10-30 00:20:07 | 显示全部楼层   吉林省四平市
[PHP] 纯文本查看 复制代码
<?php
// 加载OpenSSL库函数
if (!extension_loaded('openssl')) {
    die('OpenSSL PHP 扩展未安装');
}

// RC4 加密函数
function rc4EncryptWithSalt($key, $plaintext) {
    // 生成盐值
    $salt = openssl_random_pseudo_bytes(8);
    
    // 生成密钥的派生键
    $salted = '';
    $dx = '';
    while (strlen($salted) < 48) {
        $dx = md5($dx . $key . $salt, true);
        $salted .= $dx;
    }
    $key = substr($salted, 0, 32);

    // 使用 RC4 加密
    $encrypted_data = openssl_encrypt($plaintext, 'rc4', $key, OPENSSL_RAW_DATA);
    
    // 返回带有 "Salted__" 前缀和盐值的结果
    return base64_encode("Salted__" . $salt . $encrypted_data);
}

// RC4 解密函数
function rc4DecryptWithSalt($key, $encryptedText) {
    // Base64 解码
    $data = base64_decode($encryptedText);

    // 检查是否包含正确的 "Salted__" 前缀
    $salted = substr($data, 0, 8);
    if ($salted !== "Salted__") {
        die("Invalid encrypted text format.");
    }

    // 提取盐值
    $salt = substr($data, 8, 8);
    $encrypted_data = substr($data, 16);

    // 生成密钥的派生键
    $salted = '';
    $dx = '';
    while (strlen($salted) < 48) {
        $dx = md5($dx . $key . $salt, true);
        $salted .= $dx;
    }
    $key = substr($salted, 0, 32);

    // 使用 RC4 解密
    $decrypted_data = openssl_decrypt($encrypted_data, 'rc4', $key, OPENSSL_RAW_DATA);
    return $decrypted_data;
}

// 测试加密和解密
$key = '121';
$plaintext = 'Hello, World!';

$js_text = 'U2FsdGVkX191Ooi18dexQGmIqGJBLczSzX5uKGQ=';//js端的加密结果
// 加密
$encryptedText = rc4EncryptWithSalt($key, $plaintext);
echo "Encrypted Text: " . $encryptedText . "\n";

// 解密
$decryptedText = rc4DecryptWithSalt($key, $js_text);
echo "Decrypted Text: " . $decryptedText . "\n";

经过测试,应该是符合你的要求了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表