Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Authentication 构建一个纯粹的P2P网络系统?_Authentication_Networking_P2p - Fatal编程技术网

Authentication 构建一个纯粹的P2P网络系统?

Authentication 构建一个纯粹的P2P网络系统?,authentication,networking,p2p,Authentication,Networking,P2p,有没有可能构建一个完全基于P2P的网络,而不使用集中式服务器和一种私下验证网络更新的方法 我不是在要求一种方法来编码这个,因为我还不能编码这样的东西,我只是想知道这是否可能,以及最好的方法是什么 下面是我的一些例子: P1以某种方式连接到所有其他对等方,并发现P2 P2拥有更新版本的网络数据,因此P1下载该数据,并发现添加到网络中的新节点;P3 P3希望推动新的网络更新。P3有一种方法来验证他的新更新,并使用它向网络P1和P2发送新更新 P2接收更新,并看到它已通过身份验证。同时,P2有一个更更

有没有可能构建一个完全基于P2P的网络,而不使用集中式服务器和一种私下验证网络更新的方法

我不是在要求一种方法来编码这个,因为我还不能编码这样的东西,我只是想知道这是否可能,以及最好的方法是什么

下面是我的一些例子:

P1以某种方式连接到所有其他对等方,并发现P2

P2拥有更新版本的网络数据,因此P1下载该数据,并发现添加到网络中的新节点;P3

P3希望推动新的网络更新。P3有一种方法来验证他的新更新,并使用它向网络P1和P2发送新更新

P2接收更新,并看到它已通过身份验证。同时,P2有一个更更新的网络版本,并将其推送到P1和P4,使用另一种方式确认更新已通过身份验证

可以通过散列数据并交换数据来检查其他对等网络数据是否是最新的

我目前的问题是,我不确定是否可以在没有中央主机(如bittorrent)和身份验证系统的情况下连接到P2P网络

我只希望具有身份验证密钥(或我将使用的任何密钥)的对等方推送网络更新,让接收方推送它们,而不需要密钥来发送新的更新。 身份验证密钥不能被网络嗅探器窃取,也不能被没有密钥的客户端以任何其他方式检索

这可能吗?如果可能,我应该使用什么概念?
应该不可能通过反向工程或反编译来检索推送未经验证的更新的方法。

是的,它被称为internet:)

您所描述的基本上是一个路由协议。您可能想看看RIP和OSPF,我知道它们都支持身份验证,但我自己没有使用过身份验证。您还可以查看STP(桥接协议),但我认为它没有身份验证


互联网的大部分设计都是点对点的。作为一项军事技术,任何一个节点都可能被摧毁,因此拥有一个单一的中央服务器将是一个弱点。尽管我们更担心的是停电而不是核攻击,但这种理念在今天依然存在。

我刚刚就可行的p2p技术提出了一个答案,并将其用于移动设备上的分散视频应用程序: