# Proxy Re-Encryption Scheme for Decentralized Storage Networks
## 8 Future Work  
In this paper, we proposed the proxy re-encryption for the decentralized storage networks. It is a CCA-secure, collusion-resilience PRE scheme that requires only one key pair. The PRE scheme works under the concept of proof-of-replication, which is the core algorithm of the decentralized storage network, and the proposed scheme is reasonable, fast, and practical. It can be used for mobile and IoT devices. In the future, we will keep working on speeding up the scheme. Furthermore, it is possible to add more features based on the current scheme, e.g., the multiply public keys re-encryption, or the time-limited re-key issuing. To enable searching within PRE is also an interesting topic. Funding acquisition, D.L. ; Supervision, X.H. ; Writing--original draft, J.K.; Writing--review & editing, J.Z. All authors have read and agreed to the published version of the manuscript. This research was funded in part by the XJTLU Key Program Special Fund under grant number KSF-E-05. This work is supported by Research Project Supported by Shanxi Scholarship Council of China 2021-038, and Applied Basic Research Project of Shanxi Province No. 20210302123130, No. 20210302124273. This work was partially supported by the National Natural Science Foundation of China under Grant No. 62002296; the Natural Science Foundation of Jiangsu Province under Grant No. BK20200250; and the XJTLU Key Programme Special Fund under Grant No. KSF-E-54. The authors declare no conflict of interest. The public key is a part of the key pair. The \(pk\) is a big integer internally. The secret key is a part of the key pair. The \(sk\) is a generator of a multiplicative group or the generator point in ECC. The re-key \(rk\) is from the concept of proxy re-encryption, which converts the ciphertext \(c_{A}\) encrypted by [PERSON]'s \(pk_{A}\) to a new ciphertext \(c_{B}\) which can be decrypted with [PERSON]'s \(sk_{B}\). The \(rk_{A\to B}\) is generated under [PERSON]'s permission. It requires [PERSON]'s \(sk_{A}\) and [PERSON]'s \(pk_{B}\) to generate \(rk_{A\to B}\). \(M\)  
is the message space that contains all the combinations of message \(m\). \(m\)  
is the clear message which will be encrypted. It is represented in binary in length \(l\). In our scheme, we have \(m\in\{0,1\}^{l_{0}}\). \(w\)  
is the random bits of length \(l_{1}\) generated when encrypting message \(m\). This provides CPA-level security that the same message will output different ciphertext under multiple times of encryption. \(l\) is the message length in bits. We have \(l=l_{0}+l_{1}\), where \(l_{0}\) is the length of \(m\) and \(l_{1}\) is the length of \(w\). \(c\): the ciphertext. In proxy re-encryption, beside encryption and decryption, the ciphertext \(c_{A}\) can be transfered to another ciphertext \(c_{B}\) with the \(rk_{A\to B}\) under [PERSON](A)'s permission grant. \(d\): integer \(r\). \(d\) is an important value during the calculation which needs to be discarded to keep the ciphertext safe. Otherwise, \(g^{d}\) can be used for decryption without a secret key. \(D\): from \(D\) with \(sk\), and when re-encrypting, \(rk_{A\to B}\) is applied to \(D_{A}\) to obtain \(D_{B}\) as \(D_{B}=D_{A}\cdot rk_{A\to B}\). \(r\): is the second element of the ciphertext. The random \(r\) makes sure the value \(d\) is random. \(E\): is a part of the ciphertext. \(E\) is calculated from \(m\) and \(w\). It is a signature used for satisfying the CCA security. This signature \(E\stackrel{{? }}{{=}}g^{H_{2}(m,w)}\) will be checked after decryption by the user to verify \(m\). \(F\): is a part of the ciphertext. The concatenation of message \(m\) and \(w\) is hidden in \(F\). Value \(g^{d}\) is required for encryption or decryption. \(v\): is a random value used in the [PERSON] signature. It is an internal value, which needs to be discarded to keep the secret key safe in \(s\). \(V\): is a part of the ciphertext. Together with \(s\) and \(pk\), it performs the [PERSON] signature check before re-encryption.