gpt4 book ai didi

c# - 创建一个简单的不可否认/欺诈证明系统

转载 作者:太空狗 更新时间:2023-10-30 01:11:11 24 4
gpt4 key购买 nike

如果我想创建一个简单的欺诈证明和不可抵赖系统,我应该考虑哪些关键特性?对于这个问题,我主要关注数据库行的完整性。这不是安全许可问题。

以足球数据库为例,我要实现的一些关键特性是:

  1. 防止 DBA 使用传统 SQL 修改行数据。例如,如果数据库行已经存储了 2:1 作为结果,如果 DBA 将结果更改为 2:3,我们应该能够检测到修改。所有更改都应通过主应用程序完成。

  2. 防止将一行数据复制到另一行使用后端更改。我们应该能够检测到欺诈变化。

我是否应该考虑任何其他问题或功能来使我的系统更能防止欺诈?我应该了解哪些最佳实践?任何指针将不胜感激。

非常感谢。

最佳答案

创建一个列,它是其他列的加密签名。只要 ID 包含在签名计算中,就不能复制行,因为 ID 会更改。如果不重新计算散列,则无法执行任何修改,因此 DBA 的更改也将被检测到。

请注意,这并没有解决 DBA 删除 行的问题 - 它只是验证每个单独的行都经过了适当的业务逻辑。您可能会为整个表格包含一个签名,但这开始变得相当沉重!

当然,在某些时候您需要一个 secret - 签名 key 的私有(private)部分。您的代码将需要访问它...并且编写该代码的人可以包括一个后门以通过电子邮件将私钥等通过电子邮件发送给自己。迟早您必须信任某人 , 我猜测。 (当然,您可以应用来自不同团队的多个签名 - 因此这些团队必须相互勾结才能伪造任何东西。)

关于c# - 创建一个简单的不可否认/欺诈证明系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3174020/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com