开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 176|回复: 2
收起左侧

[易语言] C语言转易语言!

[复制链接]
结帖率:50% (12/24)
发表于 前天 14:45 | 显示全部楼层 |阅读模式   陕西省延安市
10精币
@zainex


encrypted_hex = """4B7472415D595F5472495C7B5D54524158706A6D5D5452415D5452657B5F52415F6452415D504A415D5452415D545241789C8B0D09728C0D898E8C05D3C838B83A3C25CE05531C84FDB08805796579169781D9BE697071F762F72CAF8AC23CAF64D7944A9BDC403BFBDC94C4A08ABC5C0FCFC04A97C49498508F90D8DCC4BC646777471FF7D4F4AC34C73CAFC4543FF7D0DC3C9B00BBB2B0F2B4D888F8D4309B1C4F7F0048613A16"""encrypted_bytes = bytes.fromhex(encrypted_hex.replace(" ", "").replace("\n", ""))2. 核心解密逻辑pythondef decode_6bit(encrypted: bytes) -> bytes:    mask1 = [        0x2A,0xE7,0x18,0x6F,0x63,0x9D,0x48,0xEA,0x39,0xCD,0x38,0xB8,0xA0,0xAB,0xE0,0x10,        0x35,0x99,0x37,0x09,0xC0,0x69,0xB2,0xA4,0x67,0x88,0x50,0x34,0x7F,0xFC,0x0B,0xBE,        0x0C,0x44,0x59,0xB6,0x5B,0x9C,0x65,0xD6,0x94,0xEB,0xC4,0x3B,0x03,0x3C,0xC9,0x3E,        0x6B,0x9A,0xD4,0xF6,0xC3,0x4D,0x11,0x24,0xAA,0xFF,0x4A,0xED,0x95,0x93,0xD9,0x46,        0x5F,0x96,0x87,0x30,0xBA,0xCA,0xCB,0xFA,0x8A,0x1A,0x68,0x5C,0xAC,0x07,0x40,0x60,        0x29,0x70,0x57,0x53,0x41,0x12,0xDE,0x1D,0x64,0x14,0x97,0x72,0xFB,0x8D,0x2B,0x08,        0xCF,0xF4,0x3A,0x00,0xC5,0x91,0x56,0xA9,0x9E,0x71,0xBC,0xA3,0xAF,0xA6,0x55,0xDA,        0x79,0xBB,0x33,0xA5,0x25,0x15,0x7D,0xEE,0xC1,0x2C,0xC7,0xD0,0x19,0xD8,0x5A,0xE8,        0x85,0xFD,0x2F,0x6A,0x78,0x45,0xDB,0xB5,0xF5,0x1E,0x04,0x75,0xB0,0x7A,0x20,0xF2,        0xDF,0xD3,0x83,0xF3,0x54,0x90,0xA2,0xC6,0x0F,0x80,0x36,0x4E,0xC8,0x01,0x82,0x76,        0xA1,0x2E,0x84,0x86,0x0E,0x47,0x8F,0xE1,0xF9,0x7C,0xC2,0x74,0xDC,0x26,0x22,0xCE,        0x2D,0x4F,0xBF,0x0D,0x73,0x27,0x21,0xB3,0x98,0x1F,0x89,0xEC,0xFE,0x52,0x0A,0x8C,        0x9F,0xA8,0xE5,0xE6,0x06,0x8B,0xCC,0xF7,0x5E,0xE3,0x7B,0xD2,0x05,0x49,0x13,0xE9,        0x66,0xB7,0xAD,0xB4,0xF8,0xA7,0x1C,0xF1,0x02,0x7E,0x6E,0x17,0x62,0x4C,0x77,0x8E,        0xDD,0xF0,0x43,0x28,0x6D,0x61,0xB9,0xD7,0xBD,0x3D,0x9B,0x92,0x16,0xEF,0x51,0x23,        0xE2,0xB1,0x81,0x31,0x32,0x58,0xD1,0x5D,0xD5,0x6C,0x4B,0xE4,0xAE,0x42,0x1B,0x3F    ]    mask2 = [0xFC, 0xF8, 0xF0, 0xE0, 0xC0]        result = bytearray()    v5 = 2    v6 = 0    temp = 0        for byte in encrypted:        if byte < 0x3C:            break        byte -= 0x3C                if v6 >= 2:            idx = (( (byte & 0x3F) >> (6 - v5) ) | temp) ^ 0x9E            decoded = mask1[idx] ^ 0x34            result.append(decoded)            v6 = 0            if v5 > 5:                v5 = 2                continue            v5 += 2                temp = mask2[v5 // 2 - 1] & ( (byte << v5) & 0xFF )        v6 += 8 - v5        return bytes(result)3. 运行解密pythondecrypted = decode_6bit(encrypted_bytes)header = decrypted[:36].hex().upper()print("解密头部:", header)输出结果解密头部: 0000000064000000000000000000000000000000015104F1000000004C00000000000000关键步骤验证首字节处理:加密字节 0x4B → 调整后 0x4B - 0x3C = 0x0F计算 temp = 0xF8 & (0x0F << 2) = 0x38后续处理第二个字节 0x74 时触发核心解码逻辑,得到明文首字节 0x00掩码表索引验证:当处理到加密字节 0x74 时:pythonidx = ((0x38 & 0x3F) >> 4 | 0x38) ^ 0x9E = 0x3B ^ 0x9E = 0xA5decoded = mask1[0xA5] ^ 0x34 = 0x34 ^ 0x34 = 0x00     
  
子程序名返回值类型公开备 注
解码1文本型 
参数名类 型参考可空数组备 注
文本文本型
前缀字节集
后缀字节集
变量名类 型静态数组备 注
掩码1字节集 
掩码2字节集 
内容字节集 
整数型 
整数型 
字节字节型 
整数型 
临时整数型 
下标整数型 
结果字节集 
前缀1字节集 
掩码1 = { 42, 231, 24, 111, 99, 157, 72, 234, 57, 205, 56, 184, 160, 171, 224, 16, 53, 153, 55, 9, 192, 105, 178, 164, 103, 136, 80, 52, 127, 252, 11, 190, 12, 68, 89, 182, 91, 156, 101, 214, 148, 235, 196, 59, 3, 60, 201, 62, 107, 154, 212, 246, 195, 77, 17, 36, 170, 255, 74, 237, 149, 147, 217, 70, 95, 150, 135, 48, 186, 202, 203, 250, 138, 26, 104, 92, 172, 7, 64, 96, 41, 112, 87, 83, 65, 18, 222, 29, 100, 20, 151, 114, 251, 141, 43, 8, 207, 244, 58, 0, 197, 145, 86, 169, 158, 113, 188, 163, 175, 166, 85, 218, 121, 187, 51, 165, 37, 21, 125, 238, 193, 44, 199, 208, 25, 216, 90, 232, 133, 253, 47, 106, 120, 69, 219, 181, 245, 30, 4, 117, 176, 122, 32, 242, 223, 211, 131, 243, 84, 144, 162, 198, 15, 128, 54, 78, 200, 1, 130, 118, 161, 46, 132, 134, 14, 71, 143, 225, 249, 124, 194, 116, 220, 38, 34, 206, 45, 79, 191, 13, 115, 39, 33, 179, 152, 31, 137, 236, 254, 82, 10, 140, 159, 168, 229, 230, 6, 139, 204, 247, 94, 227, 123, 210, 5, 73, 19, 233, 102, 183, 173, 180, 248, 167, 28, 241, 2, 126, 110, 23, 98, 76, 119, 142, 221, 240, 67, 40, 109, 97, 185, 215, 189, 61, 155, 146, 22, 239, 81, 35, 226, 177, 129, 49, 50, 88, 209, 93, 213, 108, 75, 228, 174, 66, 27, 63 }
掩码2 = { 252, 248, 240, 224, 192 }
内容 = hex2bin (删全部空 (文本))
量 = 2
计次循环首 (取字节集长度 (内容), 数)
字节 = 内容 []
如果真 (字节 < 十六进制 (“3C”))
跳出循环 ()
字节 = 字节 - 十六进制 (“3C”)
如果真 (值 ≥ 2)
值 = 0
下标 = 位异或 (位或 (右移 (位与 (字节, 十六进制 (“3F”)), 6 - 量), 临时), 十六进制 (“9E”))
结果 = 结果 + 到字节集 (到字节 (位异或 (掩码1 [下标 + 1], 十六进制 (“34”))))
如果真 (量 > 5)
量 = 2
到循环尾 ()
量 = 量 + 2
临时 = 位与 (掩码2 [量 - 2 + 1], 左移 (字节, 量))
值 = 值 + 8 - 量
计次循环尾 ()
前缀1 = 结果
调试输出 (“bin2hex1”, bin2hex (结果))
如果 (取字节集长度 (结果) = 36)
如果真 (是否为空 (前缀))
前缀 = 取字节集左边 (结果, 12)
结果 = 取字节集右边 (内容, 取字节集长度 (内容) - 12)
如果真 (是否为空 (前缀))
前缀 = 取字节集左边 (结果, 36)
结果 = 取字节集右边 (结果, 取字节集长度 (结果) - 36)
如果真 (是否为空 (后缀))
后缀 = 结果
前缀 = 前缀1
调试输出 (“bin2hex2”, bin2hex (结果))
' 调试输出 (“前缀”, 前缀, UTF8到文本 (前缀))
' 调试输出 (“后缀”, 后缀, UTF8到文本 (后缀))
返回 (编码_Utf8到Ansi (结果))
我用这个返回的和上面的c++代码不一致


i支持库列表   支持库注释   
spec特殊功能支持库


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

签到天数: 9 天

 楼主| 发表于 前天 14:49 | 显示全部楼层   陕西省延安市
这是 deepseek的 截图,!!!!!!
2.png
1.png
3.png
回复

使用道具 举报

结帖率:50% (12/24)

签到天数: 9 天

 楼主| 发表于 前天 16:08 | 显示全部楼层   陕西省延安市
别回复了  我搞错了哈啊啊啊啊啊啊啊啊啊啊
回复

使用道具 举报

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

本版积分规则 致发广告者

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

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

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