实施白名单的正确方法

时间:2019-11-14 13:52:29

标签: corda

我是Corda的新手,并且有一个疑问如何在Corda中正确实施白名单。

让我们假设可替代安全令牌是在Corda上发行的,必须满足某种法规(例如,不允许投资者来自某个国家/地区)。因此,将需要白名单来确保满足所有法规要求。

在专用网络中,我认为不需要实际的白名单,因为运行节点的发行者可以控制允许哪些人加入网络以及哪些人不能加入网络。 但是在公共Corda网络上,可能有许多身份不被允许持有某种类型的令牌,因此需要白名单。

针对此类问题的正确设计选择是什么? 我考虑过要有一个WhitelistState来容纳一组所有列入白名单的投资者。但是,如果我理解正确,那么如果在白名单中添加或删除了新的投资者,则该州的每个参与者(在本例中为发行人和投资者)都必须签署交易,这是不合适的解决方案。

对于如何解决此类问题,我将不胜感激!

1 个答案:

答案 0 :(得分:1)

在示例存储库中查看blacklist项目:
https://github.com/corda/samples/tree/release-V4/blacklist

基本上是他们的工作:
1.在ReachAgreementFlow内,他们向事务添加附件,该附件是一个包含blacklist.txt文件的jar文件。
2.在国家合同AgreementContract(用于验证交易)中,他们提取了罐子并阅读了其中的内容,并确保协议中列出的公司不属于黑名单。