让我从一些背景开始。
今天早上,我们的一位用户报告说,Testuff 的安装文件已被 CA 防病毒报告为感染了病毒。确信这是误报,我在网上查看,发现另一个程序 (SpyBot) 的用户报告了同样的问题。
现在,对于实际问题。
假设防病毒软件正在文件中寻找特定的二进制签名,我想在两个文件中找到匹配的序列,并希望找到一种方法来调整设置脚本以防止该序列出现。
我在 Python 中尝试了以下方法,但它已经运行了很长时间,我想知道是否有更好或更快的方法。
from difflib import SequenceMatcher
spybot = open("spybotsd160.exe", "rb").read()
testuff = open("TestuffSetup.exe", "rb").read()
s = SequenceMatcher(None, spybot, testuff)
print s.find_longest_match(0, len(spybot), 0, len(testuff))
有没有更好的 Python 库或其他语言可以做到这一点?也欢迎采用完全不同的方式来解决这个问题。