# Offline Payment of Central Bank Digital Currency Based on a Trusted Platform Module
## 3 Methodology
### Core Features of Proposed Model
Given that JWT supports both public key digital signatures and private claims for specialized applications, itcan be effectively utilized in offline CBDC implementations. While the Header and Signature components conform to the JWT standard, the Payload component requires a new definition specifically designed for offline CBDC applications. The following seven claims have been newly defined, as illustrated in Table 2. It is essential that all of these claims be regarded as mandatory within the context of offline CBDC tokens. The example of JWT for offline CBDC is as follows:  
Header: {\"alg\":\"E5256\",\"typ\":\"JWT\"}  
Payload: {\"cbSta\":\"O2\",\"cbkt\":\"679\",\"cbOwn\":\"WOff1039\",\"cbOtcn\":\"16\",\"cbAmt\":\"$60\", \"cbEds\": \"WOff9120\",\"cbEtcn\":\"981\"}  
Signature (with ECDSA-SHA256 algorithm): {kvwd02 iy9 zqlbwFsnbG4 Gz-aXUJXzV vyQC1 BseLWfrzncHA1 IN32 EZbVBByMAV8 mqHqvwNdGq2 fviT3 GG Q}  
Encoded offline _CBDC JWT_ (base64) = eylhGciOjIFzI1 NiInsIRn5 cH6 IkpXVCJ9.-evljYlN0 YSI6 Ik8 yliWiy2 JSdC16 ljY3 OSIsImNiT3 duIjoiV09 mZjEwMdzkiLCJYk90Y24i OiNilsImNiQ W10 ljojlDYwliwiY2 JFZHMiOjXT2 ZmOTEyMCIsImNiRXRjbikl4 MSJ9 Jxvwd02 iy9 zqlbwFsnbG4 Gz-aXUJXzVvyQC1 BseLWfrzncHA1 IN32 EZBVByM AV8 mqHqvwNdGq2 fviT3G G7 kGQ  
Separation of offline CBDC wallet from online CBDC wallet: Offline wallets are utilized exclusively in scenarios where they are completely offline, and the offline tokens are initially derived from online tokens, as illustrated in Figure 3. Payment tokens that are utilized in online transactions can be transferred to offline environments through established procedures; conversely, offline payment tokens can be converted back into online tokens. It is important to note that while various types of online payment tokens and transactions are prevalent in the real world, this study focuses solely on the payment processes involving tokens within offline wallets, which operate in a completely offline context. Furthermore, the offline tokens examined in this study are not self-generated; rather, they are structured such that one party in the transaction generates and guarantees the token for the other party. And the conversion of online tokens to offline tokens necessitates a procedure that includes a guarantee from a CBDC operator, which will be the subject of future research. \begin{table}
\begin{tabular}{c p{142.3 pt}} \hline \hline
**Private Claims** & **Meaning** \\ \hline \multirow{6}{*}{“cbSta”} & Status of offline CBDC token the values of which are “Tp “, “ON”. \\  & Tp: temporary token, \\  & ON: made in the offline but not yet confirmed in the online. Where “N” is the number of generations of the offline CBDC token. Especially, “O1” is the first offline token generated from online. \\ \hline “cbRt” & Transaction number (R\({}_{\text{T}}\)) of the Offline CBDC. \\ \hline “cbOwn” & Owner ID of Token. Owner ID should be the subject name in the ID certificate. \\ \hline “cbOtcn” & TPM counter number of the Owner offline CBDC wallet. \\ \hline “cbAmt” & Transaction amount \\ \hline “cbEds” & Endorser ID of Token. Endorser ID should be the subject name in the ID certificate. \\ \hline “cbEtcn” & TPM counter number of the Endorser offline CBDC wallet. \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Private claims for offline CBDC. 5. Secure P2P communication: The offline payment mechanism for CBDC should utilize a peer-to-peer (P2P) data exchange mode that relies on short-range wireless communication technologies, such as Bluetooth and NFC. Furthermore, each payment message must be transmitted and received through a secure channel established between offline wallets. However, the process of establishing this secure channel for P2P communication is beyond the scope of the present study. Therefore, it is assumed that CBDC transactions take place over a secure wireless communication network. All short-range communication sessions for offline transactions involving CBDC must be encrypted using a temporarily generated key. 6.