3、传感器与检测技术:光敏传感器检测开盖、压力传感器检测拆解、电容传感器检测接近

大家好,我是老周。今天咱们聊聊篡改检测里最基础也最关键的环节——传感器选型与部署。

你想想看,一个设备被物理入侵,无非就几种情况:被人打开了外壳、被人拆解了内部结构、或者有人靠得很近准备动手。针对这三种场景,我们有三员大将:光敏传感器、压力传感器、电容传感器。它们各司其职,配合好了,基本能覆盖90%以上的物理攻击场景。

我个人习惯把这三类传感器称为“物理入侵三件套”。下面我一个一个拆开讲。

3.1 光敏传感器:专治“开盖即死”

光敏传感器的工作原理很简单——它检测环境光强度的变化。设备正常工作时,外壳是封闭的,内部是一个暗室。一旦有人打开外壳,外部光线涌入,光敏元件输出的电压或电流就会发生突变。

我在项目中遇到过一种情况:客户要求设备被打开后必须在100毫秒内触发数据擦除。当时选用的光敏传感器响应时间只有20毫秒,完全够用。但有个坑——环境光补偿。如果设备本身有指示灯或者屏幕,这些光源会干扰光敏传感器的判断。

避坑指南:我曾经在一个智能门锁项目里吃过亏。光敏传感器装在PCB边缘,结果设备自带的LED指示灯刚好照到它。白天正常,晚上指示灯一亮,传感器误报“开盖”。后来我加了一个遮光罩,问题才解决。

光敏传感器的选型参数,我列个表供你参考:

参数 推荐值 说明
响应时间 < 50 ms 越快越好,防止攻击者在触发前完成操作
暗电流 < 100 nA 越小越好,避免暗室状态下误触发
光谱范围 400-700 nm 覆盖可见光即可,红外部分容易受热源干扰
工作温度 -40°C ~ 85°C 工业级标准,消费级可放宽
部署技巧:光敏传感器不要只装一个。我建议在PCB的四个角落各装一个,然后用“与逻辑”判断——只有两个以上传感器同时触发,才判定为开盖。这样可以有效防止灰尘、小虫等偶然遮挡导致的误报。

3.2 压力传感器:专治“暴力拆解”

压力传感器检测的是物理接触力。当有人试图撬开外壳、拧松螺丝、或者用工具插入缝隙时,压力传感器会捕捉到微小的形变或压力变化。

说白了,光敏传感器防的是“光明正大”的开盖,压力传感器防的是“偷偷摸摸”的拆解。有些攻击者会先贴黑胶带挡住光,再慢慢撬外壳。这时候光敏传感器就失效了,但压力传感器依然能工作。

我记得有一次做工业网关的安全加固,客户要求检测螺丝被拧松的动作。我们选用了薄膜压力传感器,贴在螺丝孔下方。螺丝拧紧时,传感器受到持续压力;一旦螺丝松动,压力值下降,系统立刻触发报警。

关键点:压力传感器的阈值设置非常讲究。设得太高,小力度拆解检测不到;设得太低,运输过程中的振动就会误报。我一般建议先做100次“正常操作”和“攻击操作”的样本采集,然后用统计方法确定阈值。

压力传感器的常见类型对比:

类型 精度 成本 适用场景
薄膜压力传感器 中等 低 螺丝孔、外壳卡扣
压电传感器 高 中 冲击检测、暴力拆解
应变片 极高 高 精密设备、防篡改封装

3.3 电容传感器:专治“悄悄靠近”

电容传感器检测的是物体靠近时引起的电容变化。它不需要物理接触,就能感知到几厘米到几十厘米范围内的人体或金属物体。

你想想看,有些攻击者不会直接开盖,而是先用金属探针靠近设备,尝试探测内部信号。这时候光敏和压力传感器都无能为力,但电容传感器可以提前预警。

我在一个金融终端项目里用过电容传感器。设备外壳是塑料的,我们在外壳内侧贴了一层电容感应膜。当有人把手伸向设备时,电容值变化,系统在攻击者碰到外壳之前就进入了“警戒模式”——降低功耗、关闭调试接口、加密通信。

注意:电容传感器对环境湿度非常敏感。我曾经在南方雨季遇到过误报率飙升的情况。后来在传感器表面涂了一层防潮涂层,并在软件里加了“湿度补偿算法”,才把误报率降下来。

电容传感器的部署要点:

  • 感应距离:一般设置为5-10厘米,太远容易误报,太近失去预警意义
  • 屏蔽设计:传感器背面要做接地屏蔽,防止内部电路干扰
  • 多通道融合:建议用2-3个电容传感器组成阵列,通过差分检测提高抗干扰能力

3.4 三种传感器的协同工作

单独使用任何一种传感器都有局限性。真正的安全设计,是把它们组合起来,形成一个“纵深防御”体系。

下面这张图是我常用的传感器协同检测流程:

传感器协同检测流程图 传感器协同检测流程 设备正常运行 光敏传感器检测 压力传感器检测 电容传感器检测 任一传感器触发? 否 是 触发篡改响应机制 说明:三种传感器并行工作,任一触发即进入响应流程,实现“一触即发”的安全防护

从这张图你可以看到,三种传感器是并行工作的。只要任何一个传感器被触发,系统就会进入篡改响应流程。这种设计的好处是——攻击者必须同时绕过三种检测手段,才能成功入侵。难度呈指数级上升。

实战建议:我个人习惯在传感器数据采集层加一个“去抖滤波”环节。比如光敏传感器连续采样3次,都超过阈值,才判定为开盖。这样可以过滤掉闪电、手电筒扫过等偶然干扰。去抖时间一般设为10-50毫秒,既不影响响应速度,又能大幅降低误报。

3.5 传感器部署的物理安全

最后说一个容易被忽略的点——传感器本身也要防篡改。如果攻击者能轻易拆掉或者短路传感器,那再好的检测算法也没用。

我见过一个产品,光敏传感器直接焊在PCB表面,没有点胶固定。攻击者用镊子一夹就下来了。后来我要求所有传感器必须用底部填充胶加固,并且走线要埋在PCB内层,不能从表层直接引出。

嗯,这里要注意:传感器的供电和信号线最好加上防短路保护。我曾经遇到过攻击者用导电胶水短路传感器引脚,让传感器永远输出“正常”信号。后来我们在每个传感器引脚上串联了一个100欧姆的限流电阻,短路时电流会触发过流保护,系统同样能检测到异常。