30、软件水印与心脏病预测的技术探索

软件水印与心脏病预测的技术探索

软件水印技术

常见软件水印方法

  • 基于路径的水印方法 :选择源代码中的分支来嵌入水印。运行程序时使用秘密输入,追踪基本块的执行。利用中国剩余定理将水印拆分为两部分,并通过块密码处理。根据密钥将水印代码作为分支嵌入源程序。提取时,使用秘密输入运行程序并分析分支以恢复水印。
  • 基于函数依赖的水印方法 :将水印编码在函数序列中,修改源代码中的函数顺序来嵌入水印,适用于 C、C++ 程序。选择独立函数,根据水印位添加虚假函数调用。
  • 基于哈希函数的水印方法 :构造包含水印的特殊哈希函数并嵌入源代码。先使用中国剩余定理将水印编码为不同单元,运行代码获取常量序列,构造四参数哈希函数并转换为代码嵌入。提取时通过秘密输入追踪函数调用,从返回值计算水印,但存在哈希函数易被识别的缺点。
  • 基于支持向量机的水印方法 :使用支持向量机(SVM)进行非隐形水印嵌入,将水印信息作为知识嵌入训练好的 SVM 中,添加到源代码的候选条件语句中。SVM 的部分输出位包含水印信息,通过动态分析工具在运行时提取。
  • Xmark 水印方法 :一种动态软件水印方案,利用 Collatz 猜想在程序的条件构造中嵌入水印,通过循环插桩和分支追踪来提取水印。

相关背景知识

  • Collatz 猜想 :对于任何正整数 n,定
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值