开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 5734|回复: 156
收起左侧

[易源码分享] 【动态加密】易语言与c/c++通用的动态加解密 ,纯源码

  [复制链接]
结帖率:100% (1/1)
发表于 2024-11-16 15:53:02 | 显示全部楼层 |阅读模式   山东省青岛市
分享源码
界面截图:
是否带模块: -
备注说明: -
原作者: 7ian  ,原帖地址:易语言动态加解密  


https://bbs.125.la/forum.php?mod=viewthread&tid=14729117



因一个项目要用到与c++的通讯,就比照这个写了个c++的加密, 稍微修改一下,也支持c语言的 加密与解密 。生成的密文是动态的。


c的动态加密解密:
QQ截图20241116154340.png


c++的动态加密解密 :



在易语言中加密得到的字节集可以放在c、c++中直接解密 , 条件是层级 、密码 要设置相同。

源码下载:

c 与易语言通用的加密.zip (49.99 KB, 下载次数: 147, 售价: 1 枚 精币)
QQ截图20241116154409.png

评分

参与人数 29好评 +2 精币 +30 收起 理由
ma4747 + 1 感谢分享,很给力!~
光影魔术 + 1 + 1 开源精神必须支持~
vcx + 1 感谢分享,很给力!~
罗大大 + 1 感谢分享,很给力!~
pj小黑屋 + 1 感谢分享,很给力!~
bear22 + 1 感谢分享,很给力!~
望尘莫及 + 1 感谢分享,很给力!~
黯丄辶 + 1 感谢分享,很给力!~
风雨3137 + 1 感谢分享,很给力!~
sundanming + 1 感谢分享,很给力!~
ewake + 1 感谢分享,很给力!~
Zźh926 + 1 感谢分享,很给力!~
ican8 + 1 感谢分享,很给力!~
hackjoe + 1 感谢分享,很给力!~
jc520hll + 1 感谢分享,很给力!~
坤坤大魔王 + 1 感谢分享,很给力!~
xhping + 1 感谢分享,很给力!~
mandxy + 1 感谢分享,很给力!~
t176 + 1 感谢分享,很给力!~
kyo9766 + 1 感谢分享,很给力!~
huangdi9569 + 1 感谢分享,很给力!~
zjbin1989 + 1 感谢分享,很给力!~
booms + 1 感谢分享,很给力!~
文西哥 + 1 感谢分享,很给力!~
扶南 + 1 感谢分享,很给力!~
qiyuer + 1 感谢分享,很给力!~
聿聿 + 1 感谢分享,很给力!~
huangdi956 + 1 感谢分享,很给力!~
inat + 1 + 2 感谢分享,很给力!~

查看全部评分


本帖被以下淘专辑推荐:

签到天数: 5 天

发表于 2025-3-25 23:06:33 | 显示全部楼层   江苏省徐州市
关注我,随时获取最新帖子
回复 支持 反对

使用道具 举报

结帖率:67% (4/6)

签到天数: 3 天

发表于 2025-2-3 16:00:46 | 显示全部楼层   广东省茂名市
开源精神必须支持~
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 1 天

发表于 2025-1-29 22:22:33 | 显示全部楼层   福建省莆田市
学习一下吧
回复 支持 反对

使用道具 举报

结帖率:67% (4/6)

签到天数: 3 天

发表于 2025-1-26 14:54:47 | 显示全部楼层   广东省茂名市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2025-1-4 16:29:08 | 显示全部楼层   湖北省黄石市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

签到天数: 6 天

发表于 2025-1-1 15:06:15 | 显示全部楼层   山东省青岛市
开源精神必须支持,大家一起努力~
回复 支持 反对

使用道具 举报

结帖率:90% (66/73)

签到天数: 2 天

发表于 2025-1-1 15:01:38 | 显示全部楼层   江苏省苏州市
能加上时间校验就好了,就死5秒过期机制
回复 支持 反对

使用道具 举报

签到天数: 2 天

发表于 2024-12-15 03:07:18 | 显示全部楼层   湖北省武汉市
这是stl版本的,纯字节集的:

std::vector<unsigned char> endecode( const std::vector<unsigned char> & data, const std::vector<unsigned char> & key, char level, std::vector<unsigned char> rand )
{
        if ( key.empty() ) return std::vector<unsigned char>();
        std::vector<unsigned char> result( data.size(), 0 );
        for ( size_t i = 0; i < data.size(); i++ ) {

                result [ i ] = ( data [ i ] ^ key [ ( ( i + 1 ) % key.size() ) ] ) ^ rand [ ( i + 1 ) % level ];
        }
        return result;
}

std::vector<unsigned char> encode( const std::vector<unsigned char> & data, const std::vector<unsigned char> & key, char level ) {
        if ( level == 0 ) level = 1;
        auto len = data.size() - level;
        if ( !len ) return std::vector<unsigned char>();
        std::vector<unsigned char> _you( data.end() - len, data.end() );
        std::vector<unsigned char> _zuo( data.begin(), data.begin() + level );

        return endecode( _you, key, level, _zuo );
}

std::vector<unsigned char> decode( const std::vector<unsigned char> & data, const std::vector<unsigned char> & key, char level )
{
        if( data.empty()) return std::vector<unsigned char>();
        if ( level == 0 ) level = 1;
        std::vector<unsigned char> random( level, 0 );
        std::vector<unsigned char> result;
        std::srand( static_cast< unsigned int >( std::time( nullptr ) ) );
        for ( int i = 0; i < level; ++i ) {
                random [ i ] = std::rand() % 256;
        }
        auto code = endecode( data, key, level, random );
        if ( code.empty() ) return result;

        result.insert( result.end(), random.begin(), random.end() );
        result.insert( result.end(), code.begin(), code.end() );
        return result;
}

int main()
{
        std::vector<unsigned char> fff  = { 'w','r','n','m','s',',','b' ,'!','\0' };
        std::vector<unsigned char> keys = { 'k','e','y','s' };

        auto de = decode( fff, keys, 3 );
        auto en = encode( de, keys, 3 );

        std::cout << en.data() << std::endl;

        return 0;
}
回复 支持 反对

使用道具 举报

签到天数: 2 天

发表于 2024-12-14 11:16:24 | 显示全部楼层   湖北省武汉市
我来抄一下...
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

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

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

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