security - 保护电子交易免受该交易的参与者之一的更改
问题描述
我需要开发一个系统,允许用户将他们的钱投资于某个项目。系统将所有投资者的资金累积到我的银行账户中。主要要求是保护交易双方(投资者和我)免受阴谋诡计。可以说,爱丽丝向某个项目投资了 1000 美元。然后我决定将 1000 美元改为 900 美元。在这种情况下,爱丽丝必须有可能去生硬并赢得它。
我目前的想法是向爱丽丝发送一个特定文件(一些电子文档),其中包含关于爱丽丝和我之间交易的信息,包括关于 1000 美元的信息。另一方面,Alice 也可以在这个文件中将金额从 1000$ 更改为 1100$。我也必须受到保护。那么,这怎么可能实现呢?
另外我不想使用区块链实现并寻找替代方案。
你能指导我这个主题吗?
解决方案
如果你不想使用区块链,那么唯一的解决方案就是信任第三方。好吧,您只需要相信某人或某事,就可以使整体不可否认。让事情在法庭上站起来比这更复杂。就此事联系律师。
但是,让我们试着草拟一下这一切如何发挥作用。假设您有两方:Alice 和 Bob。Bob 想向 Alice 提供一份工作,然后支付她 1000 美元。爱丽丝喜欢这个提议并用她自己的私钥签名。她将用她的密钥签署的合同发送给 Bob。Bob 用他自己的密钥对其进行签名,然后将合约发回给 Alice。工作原理并没有太大的不同,即现实生活中的真实合同,不是吗?现在爱丽丝完成了她的工作并要求付款。会出什么问题?
好吧,鲍勃可能会试图否认他一开始就提出了这个提议,并声称这是其他人。你如何证明鲍勃提出了这个提议?您需要第三方确认该密钥确实属于 Bob,并且在用于签名时未将其列入黑名单。
这是如何发挥作用的众多场景之一。而且它甚至没有触及检查 Bob 是否能够首先做出并有意识和有意识地决定要约(具有约束力的交易)的表面。
这听起来像是一个需要解决的绝妙问题。玩得开心。
推荐阅读
- python - 为什么numpy不会在非连续数组上短路?
- python - 在 python 函数参数中使用表达式作为关键字
- node.js - 在heroku上找不到mongoose上的模块
- java - 是什么导致这个 ASCII 字符变成问号?
- python - TensorFlow pad 序列特征列
- swift - 如何在父 CALayer 中居中 CALayers
- r - 在 R 闪亮中,如何自动显示行中的图像而不是文本?
- haskell - haskell 教程守卫示例给出了解析错误
- spring-boot - 如何使用@RequestBody 接收包含外键的数据对象?
- node.js - 如何在 nodejs 脚本中发出同步 DNS 请求?