# A Blockchain Protocol for Authenticating Space Communications between Satellites Constellations
## 4 Proof of Space Transactions Protocol  
Proof of Space Transactions (PoST) is a novel proposed blockchain protocol that can be utilized to verify space digital tokens (SDTs) within/between satellite constellations. PoST methodology requires representing each satellite within a constellation with a private key and a piece of cryptographic evidence for authenticating a specific SDT. When a new SDT is triggered between two satellites, the source of a transaction has to share the cryptographic evidence of this transaction with the rest of the satellites constellation to confirm the validity of the triggered SDT. In addition, the target satellite requests the Nonce code of the last block of the Blockchain. Once the target satellite confirms the Nonce code, a new block is added to the blockchain. Figure 2 explains how the PoST protocol verifies and authenticates an SDT that has been exchanged between two satellites within the same constellation through eight steps. Step 1: Satellite A creates a new transaction (i.e., SDT) with satellite B. Step 2: Satellite B asks for the cryptographic evidence (i.e., proof) associated with the issued SDT  
Step 3: Satellite A replies with the SDT proof to satellite B  
Step 4: Proof of Space Transactions (PoST) protocol is automatically called to verify the validity of the conducted transaction between satellites A, and B  
Step 5: Satellite B asks the nonce code of the last block in the Blockchain to establish the new connection with satellite A  
Step 6: Satellite A sends the required nonce code to satellite B  
Step 7: A new valid transaction is conducted between satellites A and B  
Step 8: The details of the new transaction between satellites A, and B are stored in a new block, then added to the Blockchain. Figure 1: Modeling space digital tokens using Blockchain. Algorithm 1 specifies how the proposed Blockchain protocol, PoST can implement the previous eight steps to verify the created SDTs (i.e., satellite transactions) between two satellites within the same constellation as a smart contract. ```
Input: Satellite Constellation S = (S1, S2, S3,..., Sn) Input: Space Digital Tokens: SDT = (SDT1, SDT2,..., SDTn) Output: Blockchain + new Block Procedure: PoT for authenticating two satellites in the same constellations For all transactions in SDT S1 = Create (SDT1,S2). S2 = Ask (SDT1,Crypto evidence). S1 = Send (SDT1,Crypto evidence). Verify (SDT1, S3, S4,..., Sn) IF (SDT1 is valid) S2 = Ask (last block's Nonce code). S1 = Send (last block's Nonce code) Comnet (S1,S2) New block = Add (SDTi) Blockchain = Blockchain + New block Else Reject (SDT1) End Procedure
```  
**Algorithm 1**PoST for authenticating two satellites in **the same** constellations  
Algorithm 1: PoST for authenticating two satellites in **the same** constellations  
Figure 2: Proof of Space Transactions (PoST) protocol: Authenticating SDTs between two satellites within the same satellites constellation. On the other hand, Figure 3 depicts the authentication methodology of PoST between two satellites in different constellations through nine steps. It is similar to the verification method of a transaction between two satellites in a single constellation, but there are two pieces of crypto pieces of evidence are required here to establish a valid transaction between two satellites in different constellations:  
1. Satellite \(B\) asks for the cryptographic evidence from satellite \(A\) that proves the validity of the constellation which follow the same Blockchain protocol
2. Satellite \(B\) asks for the cryptographic evidence from satellite \(A\) that proves the validity of the issued SDT between satellites \(A\), and \(B\)  
When satellite \(A\) responds with the two required cryptographic pieces of evidence, steps 4-8 that implement the verification methodology of PoST protocol between two satellites in a single constellation are performed in the same way to verify a transaction between two satellites in two different constellations.