CN117353932A - 一种基于p2p的跨平台剪贴数据共享方法 - Google Patents

一种基于p2p的跨平台剪贴数据共享方法 Download PDF

Info

Publication number
CN117353932A
CN117353932A CN202311204878.2A CN202311204878A CN117353932A CN 117353932 A CN117353932 A CN 117353932A CN 202311204878 A CN202311204878 A CN 202311204878A CN 117353932 A CN117353932 A CN 117353932A
Authority
CN
China
Prior art keywords
equipment
connection
group
data sharing
nat
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311204878.2A
Other languages
English (en)
Inventor
马秀丽
王伟兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN202311204878.2A priority Critical patent/CN117353932A/zh
Publication of CN117353932A publication Critical patent/CN117353932A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明特别涉及一种基于P2P的跨平台剪贴数据共享方法。该基于P2P的跨平台剪贴数据共享方法,为P2P双方设备安装证书,生成设备ID;并为设备应用获取设备的读写权限;设备之间实现P2P连接,形成设备组;生成设备组ID,通过设备组ID同步各设备信息;将剪贴内容加密共享给设备组内的设备。该基于P2P的跨平台剪贴数据共享方法,操作简单,实现了跨平台多设备连接,无需注册创建个人账号,利用设备ID进行身份校验,利用设备组的模式管理个人信任的设备,且数据只存储在可信任的设备,无需储存在云端,不存在数据泄漏和安全隐患问题,使得剪贴数据共享更快更安全。

Description

一种基于P2P的跨平台剪贴数据共享方法
技术领域
本发明涉及通信技术领域,特别涉及一种基于P2P的跨平台剪贴数据共享方法。
背景技术
日常生活和工作中,人们身边的电子设备种类和数量越来越多,比如电脑、平板、手机等。在使用中,时常需要将数据从一个设备传递给另一个设备,这时就需要一个通讯应用发送给另一个接收设备,然后在另一个设备接收上复制粘贴,再进行搜索或者编辑等一系列操作。但是,在实际操作过程中,在不同的设备上来回复制粘贴非常的不方便。
现在也有一些共享剪贴板,将剪贴数据存储在云端,接收设备向云端发起请求获取数据。虽然解决了在设备上再次复制粘贴的问题,但依赖云端数据存储,有隐私数据泄露的风险,并且数据同步时会有延时可能。并且在云端和设备之间上传和下载耗时较长,如果网络不好,可能会有出现延迟,或者设备接收不到数据。
另外还有一种解决方案,利用NFC在设备靠近时进行数据交换。但这种方式有很大的局限性,对于没有NFC的设备就无法使用。因此需要一种不依赖云端数据存储,不依赖其他硬件设施的剪贴板数据共享的方法。
基于此,本发明提出了一种基于P2P的跨平台剪贴数据共享方法。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的基于P2P的跨平台剪贴数据共享方法。
本发明是通过如下技术方案实现的:
一种基于P2P的跨平台剪贴数据共享方法,其特征在于:包括以下步骤:
步骤S1、为P2P双方设备,设备A和设备B,安装证书,生成设备ID;
步骤S2、为设备应用获取设备的读写权限;
步骤S3、设备之间实现P2P连接,形成设备组;
步骤S4、生成设备组ID,通过设备组ID同步各设备信息;
步骤S5、将剪贴内容加密共享给设备组内的设备。
所述步骤S1中,具体步骤如下:
步骤S1.1、为P2P双方设备安装应用,作为后续数据共享、安装证书以及设置剪贴板内容的工具,并为用户提供可视化操作界面;
步骤S1.2、设备第一次启动时,创建一个公共/私有密钥对,其中密钥以私钥(key.pem)和自证签名证书(cert.pem)的形式保存,公钥则采用证书作为容器保存;通过计算证书数据的哈希值来编码设备ID;
步骤S1.3、将生成的设备ID展示给另一设备,同时生成二维码,直接复制设备ID或者扫描二维码来获取设备ID。
所述步骤S1.2中,计算证书数据的哈希值SHA-256,并利用Base32编码工具对每个字符进行编码。
所述步骤S3中,具体步骤如下:
步骤S3.1、在设备中添加另一个设备ID后,开始尝试连接到该设备,设备之间连接有三种情况:
设备A和设备B两个设备处在不同的NAT下;
设备A和设备B处在相同的NAT下;
只有一方设备在NAT下;
连接过程中,如果不在NAT下,则设备无需经过NAT的转换;
连接过程,具体步骤如下:
步骤S3.1.1、服务器S启动两个网络侦听,分别为主连接侦听和协助打洞的侦听,设备A和设备B分别与服务器S的主连接保持联系;
步骤S3.1.2、当设备A要与设备B建立连接时,首先在设备B扫描/输入设备A的设备ID,连接服务器S的协助打洞端口,并发送协助连接申请,同时在该协助打洞端口号上启动侦听;
步骤S3.1.3、服务器S的协助打洞连接收到设备B的申请后,通过主连接通知设备A,并将设备B经过NAT-B转换后的公网IP地址和端口信息告诉设备A;
步骤S3.1.4、设备A收到服务器S的连接通知后,首先与服务器S的协助打洞端口连接,使服务器S获取到设备A经过NAT-A转换后的公网IP和端口号;
步骤S3.1.5、设备A尝试与设备B经过NAT-B转换后的公网IP地址和端口进行连接;
步骤S3.1.6、设备A在相同的端口上启动侦听,通过与服务器S的主连接回复消息,服务器S在收到回复消息后将设备A经过NAT-A转换后的公网IP和端口号发送给设备B;
步骤S3.1.7、设备B收到服务器S回复的设备A的公网IP和端口号信息后,开始连接到设备A公网IP和端口号,建立直接的TCP连接,并执行TLS握手,设备A和设备B作为握手一部分,分别提交证书;
步骤S3.2、一方设备获取对方的证书后,通过比对设备ID与证书,对对方设备进行身份校验,若身份匹配成功,则认为对方设备为可信任设备,同意设备连接;若身份匹配失败,则拒绝连接;
连接成功后,设备B生成AES密钥,用设备A发送的证书中的公钥进行加密,并将加密后的AES密钥发送给设备A;设备A收到后用私钥解密,获取AES密钥,双方设备都获得密钥,以便后续实现数据密文传递。
所述步骤S3.1.5中,当路由器将SYN请求包直接丢弃而导致连接失败时,NAT-B纪录此次连接的源地址和端口号;再次申请连接时,设备B就能直接连接到设备A使用的端口号。
当设备A和设备B连接成功,则设备A和设备B形成一个设备组,其他设备再连接设备组中的设备A或设备B时,重复步骤S3.2,获得密钥后,自动加入设备组。
所述步骤S4中,具体步骤如下:
步骤S4.1、设备A和设备B形设备组成后,利用ID生成器NanoID生成一个唯一ID,生成的ID作为设备组ID;
步骤S4.2、通过设备组ID来管理和同步设备之间的信息;当设备组中有新的设备加入时,被连接的设备广播新加入的设备IP和端口,其他设备保存监听到的新的设备IP和端口,并记录在各自的设备列表中,整个设备组的设备信息列表保持同步。
所述步骤S5中,具体步骤如下:
步骤S5.1、设备组中任意设备复制待共享的数据后,复制到该设备的应用中;将复制的数据利用密钥进行AES加密后,发送到设备组中的所有设备;
步骤S5.2、接收设备监听到其他设备发送的加密密文后,收到密文并用密钥进行解密,得到解密数据;
步骤S5.3、将解密数据写入剪贴板,接收设备的应用利用剪贴板读写权限直接进行粘贴,完成剪贴内容共享。
一种基于P2P的跨平台剪贴数据共享设备,其特征在于:包括存储器和处理器;所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序时实现如上所述的方法步骤。
一种可读存储介质,其特征在于:所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法步骤。
本发明的有益效果是:该基于P2P的跨平台剪贴数据共享方法,操作简单,实现了跨平台多设备连接,无需注册创建个人账号,利用设备ID进行身份校验,利用设备组的模式管理个人信任的设备,且数据只存储在可信任的设备,无需储存在云端,不存在数据泄漏和安全隐患问题,使得剪贴数据共享更快更安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1为本发明基于P2P的跨平台剪贴数据共享流程示意图。
附图2为本发明P2P设备连接流程示意图。
附图3为本发明多设备P2P连接形成设备组示意图。
附图4为本发明多方设备密钥交换流程示意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明中的技术方案,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚,完整的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
对等网络(Peer-to-peer简称P2P)是一种在对等者(Peer)之间分配任务和工作负载的分布式应用架构,是对等计算模型在应用层形成的一种组网或网络形式。在P2P网络环境中,彼此连接的多台计算机之间都处于对等的地位。各台计算机有相同的功能,无主从之分,一台计算机既可作为服务器,设定共享资源供网络中其他计算机所使用,又可以作为工作站。一般来说,整个网络不依赖专用的集中服务器,也没有专用的工作站,网络中的每一台计算机既能充当网络服务的请求者,又对其它计算机的请求做出响应,提供资源、服务和内容。
该基于P2P的跨平台剪贴数据共享方法,包括以下步骤:
步骤S1、为P2P双方设备,设备A和设备B,安装证书,生成设备ID;
步骤S2、为设备应用获取设备的读写权限;
步骤S3、设备之间实现P2P连接,形成设备组;
步骤S4、生成设备组ID,通过设备组ID同步各设备信息;
步骤S5、将剪贴内容加密共享给设备组内的设备。
所述步骤S1中,具体步骤如下:
步骤S1.1、为P2P双方设备安装应用,作为后续数据共享、安装证书以及设置剪贴板内容的工具,并为用户提供可视化操作界面;
步骤S1.2、设备第一次启动时,创建一个公共/私有密钥对,其中密钥以私钥(key.pem)和自证签名证书(cert.pem)的形式保存,公钥则采用证书作为容器保存;通过计算证书数据的哈希值来编码设备ID;
关于设备ID,每个设备都由一个设备ID来标识,设备ID用于认证和授权,设备ID也可以理解为“密钥ID”。
所述步骤S1.2中,计算证书数据的哈希值SHA-256,哈希结果是256位的哈希,我们使用base32编码工具进行编码,并利用Base32编码工具对每个字符进行5位编码,所以我们需要256/5=51.2个字符来编码设备ID,实际上这变成了52个字符,但是base32的52个字符将解码为260位,这不是一个字节的整数,所以base32编码工具将填充添加到280位(5位和8位的下一个倍数),所以设备ID是这个格式:
MFZWI3DBON9ITF TMRWGC43ENRQXGZDMMFZWI3DBONSGYYLOPIKH====
去掉填充(====),将设备ID分成四组,并为每组添加检查数字。为了表示目的,设备ID被用破折号分组,得到最终的值:
MFZWI3D-BON9ITF
-YLTMRWG-C43ENR5-QXGZDMM-FZWI3DP-BONSGYY-LOPIKH
为了形成设备ID,需要计算证书数据的SHA-256哈希值(DER形式)。这意味着这个哈希后结果包含证书下的所有信息。
步骤S1.3、将生成的设备ID展示给另一设备,同时生成二维码,直接复制设备ID或者扫描二维码来获取设备ID。
SHA-256碰撞概率非常的低,它生成的哈希值32字节,两个文件的哈希值发生意外碰撞的概率大约是:4.3*10-60。
所述步骤S2中,剪贴板为应用系统的全局功能,并且剪贴板涉及到用户的隐私以及信息安全,根据当前的应用系统要求,应用要控制或获取剪贴板内容,首先要通过用户授权获取剪贴板的读写权限。
所述步骤S3中,具体步骤如下:
步骤S3.1、在设备中添加另一个设备ID后,开始尝试连接到该设备,设备之间连接有三种情况:
设备A和设备B两个设备处在不同的NAT(NetworkAddress Translation,网络地址转换)下;
设备A和设备B处在相同的NAT下;
只有一方设备在NAT下;
连接过程中,如果不在NAT下,则设备无需经过NAT的转换;
连接过程,具体步骤如下:
步骤S3.1.1、服务器S(附图2中AssistantServer)启动两个网络侦听,分别为主连接侦听和协助打洞的侦听,设备A和设备B分别与服务器S的主连接保持联系;
步骤S3.1.2、当设备A要与设备B建立连接时,首先在设备B扫描/输入设备A的设备ID,连接服务器S的协助打洞端口,并发送协助连接申请,同时在该协助打洞端口号上启动侦听;
步骤S3.1.3、服务器S的协助打洞连接收到设备B的申请后,通过主连接通知设备A,并将设备B经过NAT-B转换后的公网IP地址和端口信息告诉设备A;
步骤S3.1.4、设备A收到服务器S的连接通知后,首先与服务器S的协助打洞端口连接,使服务器S获取到设备A经过NAT-A转换后的公网IP和端口号;
步骤S3.1.5、设备A尝试与设备B经过NAT-B转换后的公网IP地址和端口进行连接;
所述步骤S3.1.5中,当路由器将不请自到的SYN请求包直接丢弃而导致连接失败时,NAT-B纪录此次连接的源地址和端口号,为接下来真正的连接做好准备,再次申请连接时,设备B就能直接连接到设备A使用的端口号。
步骤S3.1.6、设备A在相同的端口上启动侦听,设备A在一切准备就绪以后通过与服务器S的主连接回复消息,服务器S在收到回复消息后将设备A经过NAT-A转换后的公网IP和端口号发送给设备B;
步骤S3.1.7、设备B收到服务器S回复的设备A的公网IP和端口号信息后,开始连接到设备A公网IP和端口号,由于在步骤S3.1.5中设备A曾经尝试连接过设备A的公网IP地址和端口,NAT-B纪录了此次连接的信息,所以当设备B主动连接设备A时,NAT-A会认为是合法的SYN数据,并允许通过,从而建立直接的TCP(Transmission Control Protocol,传输控制协议)连接,并执行TLS(Transport Layer Security Protocol,安全传输层协议)握手,设备A和设备B作为握手一部分,分别提交证书;
步骤S3.2、一方设备获取对方的证书后,通过比对设备ID与证书,对对方设备进行身份校验,若身份匹配成功,则认为对方设备为可信任设备,同意设备连接;若身份匹配失败,则拒绝连接;
连接成功后,设备B生成AES(Advanced Encryption Standard,高级加密标准)密钥,用设备A发送的证书中的公钥进行加密,并将加密后的AES密钥发送给设备A;设备A收到后用私钥解密,获取AES密钥,双方设备都获得密钥,以便后续实现数据密文传递。
当设备A和设备B连接成功,则设备A和设备B形成一个设备组,其他设备再连接设备组中的设备A或设备B时,重复步骤S3.2,获得密钥后,自动加入设备组。
所述步骤S4中,具体步骤如下:
步骤S4.1、设备A和设备B形设备组成后,利用ID生成器NanoID生成一个唯一ID,生成的ID作为设备组ID(GroupID);
NanoID是一个轻量、安全的ID生成器,不使用Math.random(),使用了称为统一算法的算法,长度只有21个字符,比常用的UUID更安全、更紧凑、速度更快。
步骤S4.2、通过设备组ID(GroupID)来管理和同步设备之间的信息;当设备组中有新的设备加入时,被连接的设备广播新加入的设备IP和端口,其他设备保存监听到的新的设备IP和端口,并记录在各自的设备列表中,整个设备组的设备信息列表保持同步。
所述步骤S5中,具体步骤如下:
步骤S5.1、设备组中任意设备复制待共享的数据后,复制到该设备的应用中;将复制的数据利用密钥进行AES加密后,发送到设备组中的所有设备;
步骤S5.2、接收设备监听到其他设备发送的加密密文后,收到密文并用密钥进行解密,得到解密数据;
步骤S5.3、将解密数据写入剪贴板,接收设备的应用利用剪贴板读写权限直接进行粘贴,完成跨平台、多设备剪贴内容共享。
该基于P2P的跨平台剪贴数据共享设备,包括存储器和处理器;所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序时实现如上所述的方法步骤。
该可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法步骤。
以上所述的实施例,只是本发明具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

Claims (10)

1.一种基于P2P的跨平台剪贴数据共享方法,其特征在于:包括以下步骤:
步骤S1、为P2P双方设备,设备A和设备B,安装证书,生成设备ID;
步骤S2、为设备应用获取设备的读写权限;
步骤S3、设备之间实现P2P连接,形成设备组;
步骤S4、生成设备组ID,通过设备组ID同步各设备信息;
步骤S5、将剪贴内容加密共享给设备组内的设备。
2.根据权利要求1所述的基于P2P的跨平台剪贴数据共享方法,其特征在于:所述步骤S1中,具体步骤如下:
步骤S1.1、为P2P双方设备安装应用,作为后续数据共享、安装证书以及设置剪贴板内容的工具,并为用户提供可视化操作界面;
步骤S1.2、设备第一次启动时,创建一个公共/私有密钥对,其中密钥以私钥key.pem和自证签名证书cert.pem的形式保存,公钥则采用证书作为容器保存;通过计算证书数据的哈希值来编码设备ID;
步骤S1.3、将生成的设备ID展示给另一设备,同时生成二维码,直接复制设备ID或者扫描二维码来获取设备ID。
3.根据权利要求2所述的基于P2P的跨平台剪贴数据共享方法,其特征在于:所述步骤S1.2中,计算证书数据的哈希值SHA-256,并利用Base32编码工具对每个字符进行编码。
4.根据权利要求2所述的基于P2P的跨平台剪贴数据共享方法,其特征在于:所述步骤S3中,具体步骤如下:
步骤S3.1、在设备中添加另一个设备ID后,开始尝试连接到该设备,设备之间连接有三种情况:
(1)设备A和设备B两个设备处在不同的NAT下;
(2)设备A和设备B处在相同的NAT下;
(3)只有一方设备在NAT下;
连接过程中,如果不在NAT下,则设备无需经过NAT的转换;
连接过程,具体步骤如下:
步骤S3.1.1、服务器S启动两个网络侦听,分别为主连接侦听和协助打洞的侦听,设备A和设备B分别与服务器S的主连接保持联系;
步骤S3.1.2、当设备A要与设备B建立连接时,首先在设备B扫描/输入设备A的设备ID,连接服务器S的协助打洞端口,并发送协助连接申请,同时在该协助打洞端口号上启动侦听;
步骤S3.1.3、服务器S的协助打洞连接收到设备B的申请后,通过主连接通知设备A,并将设备B经过NAT-B转换后的公网IP地址和端口信息告诉设备A;
步骤S3.1.4、设备A收到服务器S的连接通知后,首先与服务器S的协助打洞端口连接,使服务器S获取到设备A经过NAT-A转换后的公网IP和端口号;
步骤S3.1.5、设备A尝试与设备B经过NAT-B转换后的公网IP地址和端口进行连接;
步骤S3.1.6、设备A在相同的端口上启动侦听,通过与服务器S的主连接回复消息,服务器S在收到回复消息后将设备A经过NAT-A转换后的公网IP和端口号发送给设备B;
步骤S3.1.7、设备B收到服务器S回复的设备A的公网IP和端口号信息后,开始连接到设备A公网IP和端口号,建立直接的TCP连接,并执行TLS握手,设备A和设备B作为握手一部分,分别提交证书;
步骤S3.2、一方设备获取对方的证书后,通过比对设备ID与证书,对对方设备进行身份校验,若身份匹配成功,则认为对方设备为可信任设备,同意设备连接;若身份匹配失败,则拒绝连接;
连接成功后,设备B生成AES密钥,用设备A发送的证书中的公钥进行加密,并将加密后的AES密钥发送给设备A;设备A收到后用私钥解密,获取AES密钥,双方设备都获得密钥,以便后续实现数据密文传递。
5.根据权利要求4所述的基于P2P的跨平台剪贴数据共享方法,其特征在于:所述步骤S3.1.5中,当路由器将SYN请求包直接丢弃而导致连接失败时,NAT-B纪录此次连接的源地址和端口号;再次申请连接时,设备B就能直接连接到设备A使用的端口号。
6.根据权利要求4所述的基于P2P的跨平台剪贴数据共享方法,其特征在于:当设备A和设备B连接成功,则设备A和设备B形成一个设备组,其他设备再连接设备组中的设备A或设备B时,重复步骤S3.2,获得密钥后,自动加入设备组。
7.根据权利要求4或6所述的基于P2P的跨平台剪贴数据共享方法,其特征在于:所述步骤S4中,具体步骤如下:
步骤S4.1、设备A和设备B形设备组成后,利用ID生成器NanoID生成一个唯一ID,生成的ID作为设备组ID;
步骤S4.2、通过设备组ID来管理和同步设备之间的信息;当设备组中有新的设备加入时,被连接的设备广播新加入的设备IP和端口,其他设备保存监听到的新的设备IP和端口,并记录在各自的设备列表中,整个设备组的设备信息列表保持同步。
8.根据权利要求4所述的基于P2P的跨平台剪贴数据共享方法,其特征在于:所述步骤S5中,具体步骤如下:
步骤S5.1、设备组中任意设备复制待共享的数据后,复制到该设备的应用中;将复制的数据利用密钥进行AES加密后,发送到设备组中的所有设备;
步骤S5.2、接收设备监听到其他设备发送的加密密文后,收到密文并用密钥进行解密,得到解密数据;
步骤S5.3、将解密数据写入剪贴板,接收设备的应用利用剪贴板读写权限直接进行粘贴,完成剪贴内容共享。
9.一种基于P2P的跨平台剪贴数据共享设备,其特征在于:包括存储器和处理器;所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序时实现如权利要求1至8任意一项所述的方法步骤。
10.一种可读存储介质,其特征在于:所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8任意一项所述的方法步骤。
CN202311204878.2A 2023-09-19 2023-09-19 一种基于p2p的跨平台剪贴数据共享方法 Pending CN117353932A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311204878.2A CN117353932A (zh) 2023-09-19 2023-09-19 一种基于p2p的跨平台剪贴数据共享方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311204878.2A CN117353932A (zh) 2023-09-19 2023-09-19 一种基于p2p的跨平台剪贴数据共享方法

Publications (1)

Publication Number Publication Date
CN117353932A true CN117353932A (zh) 2024-01-05

Family

ID=89358443

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311204878.2A Pending CN117353932A (zh) 2023-09-19 2023-09-19 一种基于p2p的跨平台剪贴数据共享方法

Country Status (1)

Country Link
CN (1) CN117353932A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114979066A (zh) * 2022-05-10 2022-08-30 民商数字科技(深圳)有限公司 基于证书的设备id生成方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114979066A (zh) * 2022-05-10 2022-08-30 民商数字科技(深圳)有限公司 基于证书的设备id生成方法

Similar Documents

Publication Publication Date Title
US9923877B2 (en) External indexing and search for a secure cloud collaboration system
TWI748853B (zh) 用於基於區塊鏈的系統結合錢包管理系統中的安全多方防遺失儲存及加密金鑰轉移
US8086847B2 (en) Computer program product and computer system for peer-to-peer communications
US8644510B2 (en) Discovery of security associations for key management relying on public keys
JP2020524421A (ja) トラステッド実行環境のための分散型鍵管理
US20150281185A1 (en) Cloud Collaboration System With External Cryptographic Key Management
WO2019178942A1 (zh) 一种进行ssl握手的方法和系统
CN111404950B (zh) 一种基于区块链网络的信息共享方法、装置和相关设备
JP5575922B2 (ja) マルチメディア通信システムにおけるセキュリティ保護された通信のための階層鍵管理
JP2013517688A5 (zh)
CN117353932A (zh) 一种基于p2p的跨平台剪贴数据共享方法
CN114051031B (zh) 基于分布式身份的加密通讯方法、系统、设备及存储介质
US10951407B2 (en) Cryptographic material sharing among entities with no direct trust relationship or connectivity
JP4924943B2 (ja) 認証付鍵交換システム、認証付鍵交換方法およびプログラム
US20060031418A1 (en) Authenticating client-to-client communication
CN115766119A (zh) 通信方法、装置、通信系统及存储介质
CN113918971A (zh) 基于区块链的消息传输方法、装置、设备及可读存储介质
CN114186213A (zh) 基于联邦学习的数据传输方法及装置、设备和介质
Hsu et al. ECDSA Certificate Enrollment and Authentication for SCEP Protocol in Smart Grid PKI
CN111130796B (zh) 即时通信中安全在线云存储方法
US20230041783A1 (en) Provision of digital content via a communication network
CN116566736A (zh) 一种通信代理方法、装置、设备及存储介质
CN116232737A (zh) 点对点分布式数字身份连接建立方法、装置、设备及介质
WO2024020666A1 (en) End to end encryption with roaming capabilities
Othman et al. Secured Federated Data Management in Distributed Mobile Cloud Computing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination