基于IPFS的OrbitDB和Gun之间有什么区别?

19

我正在寻找一个适用于我的 Dapp 的去中心化数据库。我发现了两个有帮助的解决方案 OrbitdbGun,但是我无法确定它们的主要区别以及哪一个更适合于像社交媒体这样使用 Ethereum 智能合约的应用程序。

1个回答

35
我是gun的作者。我看到OrbitDB在流传(哈,抱歉打了个双关语!)但是我并不是它的专家,无法深入探讨。我会把这个问题留给他们来回答。 :)
看起来OrbitDB也使用CRDTs,这意味着他们可能做得很正确/正确。很少有人使用CRDTs,这很令人悲伤,但这使得GUN非常独特!尽管过去4年我一直在努力向人们宣传他们应该使用CRDTs,但我欢迎它。
也许一个实际回答你的问题的方式,@maroodb,是关于GUN用于社交媒体的用例:
是的,GUN已经被用于P2P社交媒体dApps。你可以:
- 用户帐户系统,包括传统的用户名/密码和密码重置(没有服务器,完全P2P)。 - 发布用户数据,例如推文等,任何其他人都不能篡改(签名加密,但不是私有的)。 - 对用户的私人数据进行加密(密码加密)。 - 两个用户之间的秘密数据,例如私人消息(diffie-hellman)。 - 我们目前正在努力使其更容易进行组读/写数据,虽然这是可能的,但还没有演示。
以下是一些显示演示和其他资源的链接,可能有助于构建您的应用程序:
- P2P安全的概念理解,在1分钟的动画漫画说明中完成 - https://gun.eco/explainers/data/security.html - 如何为P2P Twitter启动用户帐户的简短快速文章 - https://hackernoon.com/so-you-want-to-build-a-p2p-twitter-with-e2e-encryption-f90505b2ff8
  • 一个4分钟、40行代码的交互式编程教程,介绍如何构建超级基础的P2P Twitter - https://scrimba.com/c/c2gBgt4
  • 社交网络想法 - https://d.tube/#!/v/marknadal/lanz4e6z (d.tube本身是一个P2P的youtube)
  • P2P用户账户管理系统 - https://d.tube/#!/v/marknadal/gfqglxvd
  • 75行代码超级基础私信演示 - https://d.tube/#!/v/marknadal/ganoayt8
  • 关于如何使用安全API的文档 - https://gun.eco/docs/SEA
  • 当然,还有一个非常友好的聊天室,其中开源开发者互相帮助构建上述内容,https://github.com/amark/gun! :)

    你需要向OrbitDB询问有关P2P社交网络dApps的示例/用例,也许他们知道Gun有什么不同之处。

    注意:GUN+IPFS适配器即将发布。


    Ethereum很棒,但是如果将其主要实现为以太坊智能合约,则您的社交网络可能无法扩展,这只是一个警告。

    我们建议您使用Ethereum处理用户的任何加密货币支付或交易(而非GUN或Orbit)。

    但我们不建议使用以太坊构建基本的社交网络功能(个人资料信息、帖子、消息等)。

    很可能,你的应用程序中有90%到95%是GUN或Orbit,仅有3%到5%是智能合约。


    谢谢您清晰的回答。我会了解一下OrbitDB,然后选择合适的,或者为什么不两个都使用呢!实际上,我不会将以太坊用作业务逻辑,而只是用于某些用例来验证完整性等。 - maroodb
    2
    我们能在Gun上执行查询吗?它如何持久化数据? - maroodb
    1
    关于那个IPFS适配器有什么新消息吗? - Exo Flame

    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接