Pikcio’s Replicant protocol for asynchronous exchanges on P2P networks

PikcioChain
PikcioChain
Published in
4 min readJan 21, 2019

--

The Pikcio network integrates an innovative protocol for asynchronous exchanges called “Replicants”. This system is developed exclusively by Pikcio and offers a whole new range of possibilities for P2P communication. Today we want to explain, why the replicants protocol is a big deal and will revolutionize P2P communication as we know it.

What are replicants and how do they work?

A) Better message retrieval

Replicants are contacts selected by a user to store messages intended for them when they are absent or offline. Much like Pikcio’s Matryoshka routing system, the Replicant system is based on trust.

A common scenario is when user A wants to send a message to user B but user B is offline. In peer-to-peer networks, the message cannot be delivered. Thanks to the Replicant system, the message is sent from node A to node C, user B’s contact and replicant. When B is back online, all his contacts (including his replicants) are informed. Once notified of his return, replicants can deliver all the messages received in his absence.

The Replicant protocol thus increases the message retrieval rate upon an online user’s return.

This means that User A and User B don’t have to be online at the same time to establish a P2P transfer connection between them. This used to be, for the longest time, the core principle of P2P connections.

B) Configurable delivery

A user’s replicants are integrated within his own public identity in the DHT (Distributed Hash Table), the Pikcio network’s decentralized directory. A contact that has been selected as a user’s replicant can accept or reject this function. If he/she accepts it, the DHTs are updated according to this status and the user’s contacts are informed of this choice.

All messages sent from the Pikcio network include the constraint “is replicated”. The constraint indicates whether or not the message should be replicated in case it could not be delivered directly. When a replicant receives a message on behalf of one of his contacts, he keeps the envelope, allowing him to know whom to forward this message to.

So no one has to be a replicant for someone else, it’s an opt-in functionality, allowing for maximum control.

C) Message Integrity

The entire content of this message is encrypted with the public key of the final recipient, i.e. the contact of the replicant. The content of the message is also signed with the private key of the sender; therefore, the replicant can in no way have access to the content of the message or alter the content and therefore the integrity of the message without it being detected by the recipient. The Replicant protocol, coupled with the Kademlia and Matryoshka protocols, is a truly innovative solution. It ensures the continued ability of users, to receive messages, during their absence on the network.

Being sure to keep the integrity of the message intact, while at the same time having it channeled via replicants to allow for a higher delivery success rate, is an enormous improvement over all current forms of P2P.

Why are Replicants relevant?

Of course asynchronous exchanges already exist and have for a long time (e.g. e-mails, Facebook messenger…). If user A wants to get a message through to user B, A needs to send a message to a server that will store the message before transmitting it to its intended recipient. But this sort of centralized way of delivering messages poses security and confidentiality issues that the Pikcio peer-to-peer network is able to bypass.

In comparison to these centralized ways of message delivery, P2P networks are more secure but at the same time there are obvious constraints. Both users need to be online simultaneously in order to communicate. This is very restrictive and consequently hinders productivity and user experience for obvious reasons.

Pikcio’s Replicant protocol truly combines the best aspects of both worlds while at the same time it’s not adapting any of their weaknesses. Pikcio users benefit from the flexibility of being able to communicate, despite the recipient being offline like in centralized ways of communication while they benefit from the privacy and confidentiality of P2P networks at the same time.

--

--