|
|
我在这楼统一回复吧。
火绒的病毒记录(特征的集合)不是和病毒样本一一对应的(抛开碰撞的问题,md5,sha1,sha256这类哈希才是和样本一一对应),事实上火绒一条病毒记录能对应的样本数多到你无法想象,这也是为什么火绒病毒库那么小,具体统计数据和技术相关介绍可以参见火绒反病毒引擎技术白皮书。
正是因为病毒记录和样本的不唯一对应关系,所以当病毒记录调整后,并不能直接通过文件哈希预判之前不报毒的样本是否会被报毒(解决漏杀),同样也不能通过文件哈希预判之前报毒的样本是否不再报毒了(解决误报)。所以缓存失效的机制是必须的,然而其实这个失效并不是全部,这涉及具体实现细节了,我在这没法细说。但由于目前火绒病毒库升级通常所有的库都会升,所以给人的直观感觉是一升级缓存就完全失效了。
这个“现象”后面我们会通过调整升级策略来改善。当然,我们也一直在努力优化一扫的效率,但之前我们也多次说明了,火绒引擎的整个查毒流程其实异常复杂,包括特征扫描、动态行为扫描、通用脱壳、脚本虚拟化等等,这是一种通过时间(细粒度拆解扫带来的计算量)换空间(病毒库大小),所以效率低于纯哈希引擎是必然的,但我们不会放弃优化,争取更好的用户体验。 |
评分
-
查看全部评分
|