我有一个关于监控软件架构的问题。
想想不同城市的50个不同的地点。假设这些地点是小植物。
在每个位置,大约有50个设备产生少量的数据,这是一个字符串和一个整数计数器。
我需要从设备中获取这些数据,并将它们保存在工厂内的服务器数据库中。
我需要定期地将这些数据从服务器发送到总部进行报告。我不想将数据从工厂实时发送到总部,因为工厂和总部之间的连接可能会中断一天或两天。
假设我们不相信工厂经营者和产品可能被偷。工厂生产了50种产品,但只有40种向总部报告。
基本上,一个字符串和一个整数应该从一个设备,并传送到总部在另一个城市。
我想,有三个地方应该保护数据。
( 1)对于第一条路径,设备将处于除授权人员以外任何人都不能打开的硬情况下。设备上的软件将有一个SHA密钥,它将加密数据并通过串行或以太网发送到服务器。服务器将将加密或解密的数据写入数据库。
2)服务器将由一个硬案例来保护,总部也可以通过远程桌面连接访问服务器。反病毒和防火墙软件将被安装和配置。
3)我应该再次加密服务器上的数据并通过TCP套接字发送数据并在中心解密吗?
发布于 2018-10-16 16:06:07
我将假设设备将传输元组(serial, counter, key, value),其中:
让设备用中心的公钥加密这条大消息(如果你能负担得起每个设备都有一个私钥,也可以添加一个数字签名)。否则,在串行id字段上使用一个固定部分,该字段是随机生成的,第三方不知道)。
工厂服务器只看到加密的消息,所以他不能修改它们。它可以选择错过一些信息,但你会注意到柜台上的空白。或者两周前某台设备停止发送数据。
请注意,我们从“保护三个地方的数据”转到“设备和中心之间的安全”。当然,在与中央服务器连接时,工厂服务器没有理由不能额外地使用https,但是这对于消息本身的机密性来说并不是必要的。
您谈论的是"SHA“,这没有多大意义(SHA用于消息摘要…)。只需使用非对称密码。你的设备可能会使用椭圆曲线密码。
您仍然需要正确处理其他比特,比如使用经过身份验证的加密模式(例如。否则,执行额外检查的攻击者,如果破坏了整个设备,则可以模拟该设备(但只有该设备)。中央服务器应该检查事情是否合理..。但否则,这将为开始工作提供一个良好的基础。
https://security.stackexchange.com/questions/195817
复制相似问题