最近,一个幽灵,Web3的幽灵,在网络游荡,它叫Damus,这玩意诠释了什么叫做病毒式营销,滑稽的是,一个Web3产品却在Web2的产品链上疯狂传销,各方大佬纷纷为其背书,到底发生了什么?Damus的葫芦里,卖的是什么药?

注册和简单实用

很少有什么产品在用户注册环节会有什么噱头,但Damus确实出其不意,它抛开了传统的Web3产品“区块链钱包先行”的策略,直接一键式生成秘钥对,没有了任何门槛,即使是对Web3完全没有任何概念的普通人,也可以直接上手使用,这里我们使用Damus的网页版,直接访问 https://snort.social/login:

点击页面中的Generate Key按钮即可注册。

注册成功后,进入settings,选择profile,账户设置页面。

在这里我们可以像传统的web2.0社交产品一样,填写昵称,上传头像或者banner,以及其他的一些个人资料,总体上乏善可陈,设置完毕后是这样的:

值得一提的是,这里用户的唯一标识是一串公钥(Public Key)地址:npub16mu2qn54ehx3eh04jy5naq72xkhx3wz6shmkmlr35cpjccgyy5ksvm0plu

Damus的用户可以根据公钥地址来选择关注其他用户,也可以进行“发帖”操作,发布的“帖子”会被关注者们看到,玩惯了Twitter的用户对这些都不陌生。

在个人设置页面中:https://snort.social/settings/profile ,有一个很关键的私钥(Private Key),这个东西是唯一能够证明“你是你自己”的凭证,有点像区块链钱包Metamask中的助记词,登录Damus的时候,可以选择使用私钥进行登录。

NOSTR协议

Damus底层基于NOSTR协议,那么什么是NOSTR协议?其实和我们熟识的HTTP协议也差不了太多,也分为两个端,只不过HTTP协议是客户端和服务端,而NOSTR协议则没有服务端,取而代之的是中继端(relay)。

说白了,没有了中心化的服务器端,变成点对点的中继器,这个中继器可以理解为“共产化”的服务器,每个人都可以搭建并且传输数据,如此就形成了一个完全去中心化的社交网络。

好处就是用户不再受中心化服务器的制约,只要中继器存在,就可以发布想要发布的所有信息。

在后台我们也可以自由的设置和添加NOSTR协议的中继器,甚至可以修改读写权限:

数据交换形式则采用websocket + JSON 的方式:

具体的交互数据包括当前用户的档案信息,比如公钥地址、用户头像,用户简介等等,用户发送的信息内容,也就是帖子内容,最后,是用户推送给关注者的中继器地址,例如上文中的wss://relay.snort.social。

一个极端走向另一个极端

NOSTR协议赋予了Damus网络用户极致的“自由”,可是“自由”也是需要付出代价的,那就是负面有害信息的肆意传播和增长,由于任何人都可以运行一个或多个中继器,所以,就很难有人能控制所有的中继器,也就没法针对某些散发有害信息的公钥地址进行限制,这就意味着,没有了任何所谓的“规则”,变成了彻头彻尾的“黑暗森林法则”。

不得不承认,去中心化带来的并非都是美好的事物。它同样刺激了信息操纵和误导我们的判断,从而给去中心化网络带来了诸多问题。这些问题就像顽疾一样,让人们痛苦却无可奈何。我们往往并不清楚自己真正需要的是什么,而这个弱点常常会被利益集团抓住,并加以充分利用。这就是他们的欺骗行为。欺骗行为的不可避免性未必源于那些品质恶劣的人,而是很可能源于去中心化的自然运作。

举个例子,20世纪40、50年代,逐步有医学证据表明吸烟和肺癌之间的关系。但是由烟草公司资助的研究,指出吸烟与癌症之间的关系还没有被证实。哥伦比亚广播公司的电视节目里安排的论战,显得“抽烟导致癌症”和“抽烟不会导致癌症”的证据难分胜负。但美国1964年卫生总署发布报告,明确指出,抽烟有害健康。该报告代表了美国政府的官方立场。1973年,在公共场所吸烟被禁止。为了应对烟草行业联盟“抽烟很潇洒”的诱惑,反烟草运动持续传播“抽烟很愚蠢”这一信念。1964年发布的卫生总署报告在这方面居功至伟,这,就是监管的力量。

结语

成也去中心化,败也去中心化,在去中心化网络中,拿着钓竿坐等鱼上钩的“姜太公”无处不在,根据简单的概率原理,就算我们谨小慎微、如履薄冰,最终,迟早都会被人“钓”到,没有人能够幸免。

基于NOSTR协议的“公有制”版本的Twitter,去中心化社交软件Damus用后感,一个极端走向另一个极端的更多相关文章

  1. 网络编程——基于TCP协议的Socket编程,基于UDP协议的Socket编程

    Socket编程 目前较为流行的网络编程模型是客户机/服务器通信模式 客户进程向服务器进程发出要求某种服务的请求,服务器进程响应该请求.如图所示,通常,一个服务器进程会同时为多个客户端进程服务,图中服 ...

  2. Spring Security 集成 CAS(基于HTTP协议版本)

    Spring Security 集成 CAS(基于HTTP协议版本) 近段时间一直研究Spring Security 集成 CAS,网上资料相关资料也很多,不过大都是基于Https的安全认证;使用ht ...

  3. 基于XMPP协议的手机多方多端即时通讯方案

    一.开发背景 1.国际背景 随着Internet技术的高速发展,即时通信已经成为一种广泛使用的通信方式.1996年Mirabilis公司推出了世界上第一个即时通信系统ICQ,不到10年间,即时通信(I ...

  4. 集成基于OAuth协议的单点登陆

    在之前的一篇文章中,我们已经介绍了如何为一个应用添加对CAS协议的支持,进而使得我们的应用可以与所有基于CAS协议的单点登陆服务通讯.但是现在的单点登陆服务实际上并不全是通过实现CAS协议来完成的.例 ...

  5. 实战录 | 基于openflow协议的抓包分析

    <实战录>导语 云端卫士<实战录>栏目定期会向粉丝朋友们分享一些在开发运维中的经验和技巧,希望对于关注我们的朋友有所裨益.本期分享人为云端卫士安全SDN工程师宋飞虎,将带来基于 ...

  6. 基于MySQL协议的数据库中间层项目Atlas - 360团队

    一.简介 Atlas是由 Qihoo 360公司Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目.它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基础上,修改了 ...

  7. 基于SMB协议的共享文件读写 博客分类: Java

    基于SMB协议的共享文件读写 博客分类: Java   一.SMB协议 SMB协议是基于TCP-NETBIOS下的,一般端口使用为139,445. 服务器信息块(SMB)协议是一种IBM协议,用于在计 ...

  8. Kcptun 是一个非常简单和快速的,基于KCP 协议的UDP 隧道,它可以将TCP 流转换为KCP+UDP 流

    本博客曾经发布了通过 Finalspeed 加速 Shadowsocks 的教程,大家普遍反映能达到一个非常不错的速度.Finalspeed 虽好,就是内存占用稍高,不适合服务器内存本来就小的用户:而 ...

  9. 【转】 基于TFTP协议的远程升级设计

    版权声明:本文为博主原创文章,未经博主允许不得转载.联系邮箱:zhzhchang@126.com 说明:由于CSDN博客编辑器对word格式近乎不支持,因此对表格使用了图片方式(最后一个表格未使用图片 ...

  10. 一个简单的基于HTTP协议的屏幕共享应用

    HTTP协议可以能是应用层协议里使用最广泛并且用途最多样的一个了.我们一般使用HTTP协议来浏览网页,但是HTTP协议还用来做很多其它用途.对开发人员来讲很常见的一种就是用HTTP协议作为各种版本控制 ...

随机推荐

  1. Java多线程的几种创建方式

    方法一:继承Thread类,重写run方法,直接调用start方法开启线程. /** * 继承Thread类,直接调用start方法开启线程. * @author LuRenJia */ public ...

  2. mybatis实现数据行级权限拦截

    最近在做一个测试平台,其中有一个需求是用户只能看到他有权限的项目数据.一开始这个需求只针对用例模块,我直接在sql后面加上了关联项目权限表.后面因为其他模块也需要这个权限判断,故打算把关联sql抽取出 ...

  3. 2022春每日一题:Day 11

    题目:高斯消元法 高斯消元法是一个模板,下面简单介绍其内容以及实现方法. 高斯消元是求一个求多元一次方程组的解的算法. 就是形式如下的关于x1,x2...xn的方程组的解. a11x1 + a12x2 ...

  4. Vue+Go前端后端一体化 企业级微服务网关项目

    Vue+Go前端后端一体化 企业级微服务网关项目(~11) 课程目录: 第1章 拒绝培训机构烂大街项目,冲刺Offer首选[Vue+Go,稀缺组合,赶快上车!]1-1 摒弃千篇一律项目,选我:前后端一 ...

  5. MSP430中断小实验——通过按键改变小灯闪烁频率

    本小实验基于MSP430f5529,不同的型号可能管脚和中断配置有所不同. 实现的功能为: 第一次按下按键后,系统以每 2 秒钟,指示灯暗 1 秒,亮 1 秒的方式闪烁.程序采用默认时钟配置: 第二次 ...

  6. 1、Docker最新入门教程-Docker概述

    1. Docker概述 Docker 是一个用于开发.运输和运行应用程序的开放平台.Docker 使您能够将应用程序与基础架构分开,以便您可以快速交付软件.使用 Docker,您可以像管理应用程序一样 ...

  7. Sqoop的介绍和安装

    sqoop下载地址:https://share.weiyun.com/woVbfnfS 或者 https://archive.apache.org/dist/sqoop/1.99.7/ Sqoop简介 ...

  8. 第五章:matplotlib水印和桑基图

    1.Matplotlib水印 1 import matplotlib.pyplot as plt 2 import numpy as np 3 4 x = np.linspace(0.0,10,40) ...

  9. 【大数据面试】Flink 03-窗口、时间语义和水印、ProcessFunction底层API

    三.窗口 1.窗口的介绍 (1)含义 将无限的流式数据切割为有限块处理,以便于聚合等操作 (2)图解 2.窗口的分类 (1)按性质分 Flink 支持三种划分窗口的方式,time.count和会话窗口 ...

  10. 【每日一题】【哈希表,返回结果的下标】2022年1月18日-NC61 两数之和

    描述给出一个整型数组 numbers 和一个目标值 target,请在数组中找出两个加起来等于目标值的数的下标,返回的下标按升序排列.(注:返回的数组下标从1开始算起) 算法: import java ...