为了在我的服务器上获得良好的性能,我必须能够存储未经加密的纬度和经度。我的应用程序基于位置搜索,几乎每个查询都需要在位置上进行过滤。 这意味着我必须首先解密每个查询的每一行才能获得正确的行。如果有很多行,这是一个非常大的问题。 这样我就可以保护隐私,我可以存储值lat和lng cutted。 例如:
lat: 52.52835
lng: 13.40547
->
lat: 52.528
lng: 13.405
切割3.十进制即可收到约50x80m的矩形。对于仍然准确的计算,这可能没有问题。 切割2.十进制即可收到约400x700m的矩形。在最坏的情况下,这可以在计算中产生1km的差异。 相反,我可以添加“5”作为3.十进制,以改善计算最多500米差异最差。 在某些情况下,单个房屋可能在整个矩形中,黑客可能会得到这样的确切地址。 为了解决这个问题,我可以存储城市位置,但对于较大的城市,计算将完全无用。
现在您认为如果黑客能够窃取数据并获得未加密的值,那么这是一个问题吗? 其他建议解决这个问题?
编辑: 我也可以尝试操纵每个值,例如一个偏移量,使攻击者更难,但这并不难重新操作。
怎么样与分裂。保存到DB时。在左侧和右侧保存在不同的列中。
另一种意见是如果你必须记住字母数你决定你有多少把钥匙,然后你移动数字。这是只有管理员应该知道的,为什么不通过设置映射到该记录的键值的异常键来管理?没有固定的解决方案。