Next Article in Journal
QuoTa: An Online Quality-Aware Incentive Mechanism for Fast Federated Learning
Previous Article in Journal
Optimal Allocation of Distributed Generations and Capacitor Banks in Distribution Systems Using Arithmetic Optimization Algorithm
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Redactable Blockchain Scheme Supporting Quantum-Resistance and Trapdoor Updates

1
College of Information and Intelligence, Hunan Agricultural University, Changsha 410128, China
2
School of Information Science and Engineering, Hunan Women’s University, Changsha 410004, China
*
Authors to whom correspondence should be addressed.
Appl. Sci. 2024, 14(2), 832; https://doi.org/10.3390/app14020832
Submission received: 21 December 2023 / Revised: 14 January 2024 / Accepted: 16 January 2024 / Published: 18 January 2024
(This article belongs to the Section Electrical, Electronics and Communications Engineering)

Abstract

:
Applying chameleon hash functions to redactable blockchains is still challenging work. Most redactable blockchain solutions using this technique have potential problems, such as too weak decentralization performance and trapdoors with exposure risks. In addition, quantum computing also threatens the security of blockchain systems. The above two issues imply that the development of redactable blockchains is still constrained, and that quantum-resistance will be requirements for blockchain applications. Therefore, we constructed a chameleon hash function over lattices while utilizing a hierarchical identity mechanism to manage trapdoors and assign edit permissions. This variant of the chameleon hash function can support trapdoor updates and quantum-resistant performance, namely a hierarchical identity-based chameleon hash with revocable subkey (HIBCH-RS). We demonstrated the safety performance of HIBCH-RS by defining its safety concepts of collision resistance. Our HIBCH-RS scheme provides a solution for implementing a redactable blockchain with identity encryption and post-quantum cryptography. Finally, this quantum-resistant redactable blockchain was implemented on the Hyperledger Fabric blockchain platform.

1. Introduction

Blockchain technology has significantly and extensively revolutionized diverse sectors such as healthcare, insurance, supply chain management, and food safety, among others in recent years [1]. However, it is imperative to acknowledge that despite its vast potential, this emerging technology is still in its early stages of development, particularly concerning the prominent challenges currently being unveiled. For instance, because of persistent attacks and disruptions, an extensive volume of illicit information and redundant data have accumulated within the blockchain system. The bitcoin network has experienced multiple hard forks due to the implementation of new rules, incompatible upgrades, and rollback to fraudulent behaviors [2]. Similarly, numerous other blockchain systems may conceal vulnerabilities within smart contract modules [3], consensus protocols [4], and others. These vulnerabilities pose significant threats to the security and privacy of the blockchain system. Recent years have revealed that the inherent immutability of blockchain has led to escalating system storage costs and diminishing performance [5]. Hence, there is an urgent need for a technology that can solve the above problems.
Diverse initiatives have emerged to enhance blockchain systems, including blockchain pruning [6,7], integration with IPFS technology [8,9], blockchain sharding techniques, and multi-chain architectures [10,11]. Among these approaches, redactable blockchain stands out, seeking to bolster blockchain’s storage efficiency and security at both the underlying structure and legal levels. Redactable blockchain refers to a system that, by introducing specific mechanisms, allows data already recorded on the chain to be modified or deleted while maintaining overall data consistency and security. Although this redactable approach sparks controversy as it compromises the tamper-resistant feature, its practical utility for blockchains is undeniable because (1) redactable technology empowers blockchains to swiftly restore their original states after an attack, (2) helps avert the exposure of blockchain users’ private information, (3) deletes unlawful data stored within the blockchain, and (4) enables blockchain to be downsized efficiently.
The redactable concept holds promise as a valuable feature catering to the evolving landscape of blockchain applications.

1.1. Problem and Motivation

The implementation of redactable blockchain allows for the modification or removal of specific data entries within the ledger when encountering illegal data, privacy breaches, and other situations. On the other hand, some application scenarios require frequent data modification, such as mobile networks [12], medical applications [13], and so on.
Second, we review the key issues that need to be taken care of in the design of redactable schemes, mainly including:
  • How to balance variability and security;
  • How to balance decentralization and assigning edit permissions;
  • How to consider the compatibility between variability and existing blockchain systems.
Nonetheless, designing a redactable scheme that meets all these requirements simultaneously is a huge challenge, and few existing schemes can accommodate all requirements. Therefore, we focus on some work to balance the above issues.
Furthermore, the emergence of quantum computing poses a distinct threat to conventional public key cryptosystems and hash algorithms, consequently impacting blockchain security. In the realm of post-quantum encryption techniques for blockchain applications, lattice ciphers have emerged as a mature and efficient cryptographic solution, as demonstrate in [14]. The work of [15] designed quantum-resistant redactable blockchain schemes using latticed cryptography which provide insights into the realization of more secure redactable technologies. Nevertheless, existing lattice-based redactable blockchain is rare and there is no solution realistically deployed in blockchain for experimentation. For example, Wu’s work proposes schemes only to implement chameleon hash functions combined with blockchain, and has no practical application [15].
Chameleon hashing enables physical modifications to the blockchain, but the key problem is that it can lead to trapdoor exposure. Therefore, to protect against trapdoor exposure, Ateniese et al. proposed to manage trapdoor exposure by using the secret sharing and the multiparty computation (MPC) protocol [16]. However, trapdoor sharing potentially results in reduced efficiency.
The hierarchical identity structure combined with blockchain can provide strong support in data management and user verification [17,18]. Therefore, this structure is consistent with the goals of our work. In the existing hierarchical identity cryptographic structure, we have the problem of parent nodes forging the identity of child nodes as well as a linear or even exponential growth of the delegated key dimension.
Based on the abovementioned issues, to harmonize key management and chameleon hash function functionality while mitigating concerns such as key exposure, we propose the development of a chameleon hash function grounded in hierarchical identity. Our objective is to construct a redactable scheme characterized by compatibility, quantum resistance, and updatable trapdoor functionality, all the while adhering to the decentralized attributes intrinsic to blockchain technology.

1.2. Related Work

This section outlines recent research in the field, focusing on two distinct editing techniques: those utilizing chameleon hashing and those abstaining from its use.
Chameleon Hashing. Ateniese et al. are the trailblazers in the exploration of redactable blockchains. Their approach involved substituting the hash algorithm G used in bitcoin with an enhanced chameleon hash, which leveraged the MPC protocol to distribute trapdoors to a trusted subset capable of managing these trapdoors effectively [16]. Collaborating with Accenture, the authors further demonstrated the practical application of their concept on the Hyperledger Fabric platform. This pioneering research has aroused the research interest of many scholars, and based on the problems it exposed, there have been various kinds of research in recent years on the design of chameleon hash functions for security construction, trapdoor restriction, editing permissions restriction, data management, and consistency, respectively.
In the realm of chameleon hash algorithms, several issues have garnered attention. To address efficiency and instantiation challenges, Khalili et al. introduced a chameleon hash for chosen-ciphertext attack (CCA) secure encryption of a random field R [19]. Responding to similar concerns, Derler et al. introduced the concept of stronger full collision-resistance (F-CollRes) and developed a black box structure employing simulation-sound extractable non-interactive zero-knowledge proof (SSE-NIZK) through the utilization of a chameleon hash [20]. Building upon these developments, ref. [21] focused on constructing an identity-based chameleon hash (IBCH). Subsequently, a hierarchical identity-based chameleon hash (HIBCH) was proposed in [22], but these two schemes are more specifically applicable to hash signatures.
Regarding trapdoor and edit permission management, Derler et al. proposed policy-based chameleon hashing (PCH) by integrating attribute-based encryption (CP-ABE) and temporary trapdoors [23]. This redactable scheme combines keys and attributes and restricts edit permissions by formulating attribute policies. Nonetheless, its reliance on a fully trusted central authority creates a centrality problem. Therefore, Ma et al. proposed a chameleon hash structure based on multi-authority decentralization (DPCH) [24], which effectively prevents conspiracy attacks, in contrast to [23].
Wei et al.’s chameleon hash scheme with a changeable trapdoor (CHCT) enables the updating of trapdoors after computing hash collisions [25]. Recently, Jia et al. introduced the concept of stateful chameleon hashing with revocable subkeys, constructed a redactable blockchain with a black box structure, supported full supervision, and allowed user data self-management [26]. Drawing inspiration from this work, our study also incorporates data self-management. Furthermore, addressing concerns about inconsistency, Jia et al. took a step forward by designing an RSA-based accumulator structure aimed at consistency verification [27]. In addition, they devised edit chains, linking edit histories to counter traceability issues within the system.
In recent years, post-quantum encryption technology has been gradually maturing and standardizing. Wu et al. applied a lattice-based chameleon hash function in the context of editable blockchains, introducing the concept of quantum resistance [15]. Meanwhile, Peng et al. devised a more comprehensive lattice-based blockchain editing scheme [28]. However, the former primarily focuses on the construction of the chameleon hash and introduces key sharing, while the latter requires further refinement in its scheme design.
Non-Chameleon Hashing. Puddu et al. proposed an extended redactable model for single-chain transactions based on consensus control, in which editing operations are reached by sending mutating transactions or extending things and specifying the active transaction in this structure [29]. Nevertheless, these mutable transactions merely serve to logically identify valid transactions, while the encrypted error messages remain physically preserved. Marsalek et al. introduced the concept of a correction chain for the storage of rectified data [30]. Similarly, Deuber et al. proposed the double hash chain model and employed it to maintain a copy of the Merkle tree root [31]. The above two double-hash chain patterns use a voting mechanism to realize the coding and thus require many voting cycles.
We list several typical redactable schemes in Table 1 to highlight their modeling features. Compared to existing work, this paper not only focuses on granularity and security, but also adds work on data management and the question of how to assign editing permissions.

1.3. Contributions

For this paper, we separately worked on security, decentralized features, and compatibility to achieve a redactable blockchain with quantum-resistant and revocable subkey capabilities. The specific contributions of the scheme are delineated as follows:
  • Hierarchical identity-based chameleon hash: To regulate edit permissions and facilitate trapdoor management, this paper employed hierarchical identity for the decentralized delegation of trapdoors. Simultaneously, we introduced the concept of a slave key algorithm within hierarchical identity to avoid parent nodes that can deduce child nodes’ keys and the key dimensions increasing during the key delegation process. This integration imparted the revocable subkey mechanism’s delegation attributes.
  • Redactable scheme with quantum resistance and revocability: We used a lattice-based cryptographic scheme to support more secure editing operations. In the redactable scheme, we also implemented the method of withdrawing the edit operation by saving the edit history.
  • Private data were edited and managed by the individual user: We cryptographically verified private data to protect the security and privacy of the redactable blockchain.
  • Addressing consistency, traceability, and accountability problems: In Section 4, we present three algorithms to illustrate how to achieve consistency, traceability, and accountability. For this, we advocate caching modify transactions with consensus authority nodes before their final commitment. The block number recording the edit history is stored in the redactable transaction to prove whether the transaction was modified. Demonstrating the viability of our redactable scheme, we opted for the Hyperledger Fabric platform, a widely embraced federated blockchain solution, to implement the scheme.
Therefore, It is a novel work to use a hierarchical identity structure to manage the trapdoor of chameleon hashing. However, in this paper, through analysis and design, we have circumvented its drawbacks and realized the possibility of combining hierarchical identity structure with chameleon hashing.
Secondly, chameleon hash functions based on post-quantum cryptography for resisting quantum attacks are a novel work in recent years, and few schemes can demonstrate their performance through experiments. However, this paper not only reports a real-world deployment with Hyperledger Fabric but also provides concrete performance data.

2. Preliminaries

Lattices are geometric objects that can be graphically described as an infinite, regular set of intersections of an n-dimensional lattice [32]. Ajtai investigated certain difficult problems with lattices and proposed how to construct hard-to-break cryptographic functions in cryptography [33].
The description of the symbols and abbreviations appearing in this paper are shown in Table 2.

2.1. Concepts of Lattices

A lattice is defined as a discrete additive subgroup on  R m  and is usually represented by a line combination of a set of linearly independent vectors. The  q -ary integer lattice defined on  Z q . is given as:  Λ B = x Z n : B x = 0   mod q , Λ u B = x Z n : B x = u   mod q , u Z q m ,  where the matrix  B = b 1 , , b n R m × n  is called basis of the lattice.
The norm of matrix  B  is denoted as the maximum norm of the column vector, i.e.,  B = m a x i b i  (in addition,   stands for infinite norm). The singular value of matrix  B  is denoted as the maximum norm on the unit vector u, i.e.,  s 1 B = m a x u B u .
Definition 1
(Learning with errors (LWE) [34]). LWE is a class of problems solving learning with error parity. For a positive integer n and a sufficiently large integer q, then an instance of the LWE problem  Z q , n , χ L W E  is to find the vector  s Z q n   s . t .   A Z m × n ,   A s A s + e β , β > 0  being the upper limit of the error, and  s Z q n  is the unknown vector in the LWE. Vector  e  comes from the noise distribution  χ .
Definition 2
(Inhomogeneous small integer solution (ISIS)). ISIS is the problem of solving the short vector on a lattice. Let  n ,   m , q  be positive integers. Given a uniform random matrix  A Z q n × m  and a random vector  u Z q n . If we find a vector  v Z q m  satisfying  A v = u   mod   q  and  v β , we have solved an  I S I S q , m , β -instance problem.
Gaussian sampling over lattices is proved to be a simple and effective tool for analyzing lattice complexity problems [35].
Definition 3
(Discrete Gaussian distribution).  ρ s , c x  denotes a Gaussian function centered at  c  with  s  as the Gaussian parameter. Then,  x Λ , ρ s , c x = e x p ( π x c 2 / s 2 )  denote the Gaussian function on the lattice, and the Gaussian distribution on the lattice is denoted as  x Λ ,   D Λ , s , c   x = ρ s , c x ρ s , c Λ ,   ρ s , c Λ = x Λ ρ s , c ( x ) .
In this paper, we use the Gaussian sampling lemma shown in Lemma 1.
Lemma 1.
Let  y R χ m , x R χ d Z m . Then, the length of the product of the error  y  and the vector satisfies  d T y     d q α ω l o g m + d m / 2  with negligible probability. Then,  x q α ω l o g m + 1 / 2  with negligible probability.
This paper combines the trapdoor generation algorithm  T r a p G e n , Gaussian sampling algorithm  S a m p l e D ,  and trapdoor delegation algorithm  D e l t r a p  in [36], and the  F R D  encoding in [37].
Definition 4.
T r a p G e n : For  n 1 , q > 2 , there is an efficient randomized algorithm that generates matrix  A Z q n × m ¯  and G-trapdoor  R Z n k × w  from distribution  D Z , ω log n  with invertible tag  H Z q n × n  satisfying  A R I w = H G   m o d   q .
Definition 5.
S a m p l e D : There is a  E Z m ¯ × n ¯  that samples from a probabilistic polynomial time (PPT) algorithm  S a m p l e D ( R , A , H , U , σ )  satisfying  A E = U   mod   q  with Gaussian parameter  σ , and  E σ m  with an overwhelming probability.
Definition 6.
D e l T r a p : A PPT algorithm  D e l T r a p ( A , H , R , σ d )  delegates its trapdoor key for sub-members and generates a new trapdoor key  R  satisfying  A R I w = H G .
Definition 7.
FRD encoding: Let the node ID of hierarchy  k ( k 0 )  be a k-dimensional vector, which we denote by  i d l = ( d 1 , d 2 , , d l ) . When  l = 0 , ID is the primary node. An efficient FRD coding algorithm exists to map the identity ID to a matrix, i.e.,  H f r d : I D Z k Z q n × n .

2.2. Hierarchical Identity-Based Chameleon Hashing

Ateniese et al. designed a chameleon hash function based on identity encryption [21]. In IBCH, the trusted authority can extract a new secret key or trapdoor secret for an identity ID using a deterministic algorithm. As an extension of IBCH, HIBCH organizes identities into hierarchies, and keys are delegated between them.
Definition 8.
The HIBCH scheme is generally defined as the following set of algorithms:
Algorithm  S e t u p  generates the public parameter  p p  and the master key  m k  for the input security parameter  λ . Typically, the algorithm is run by private key generator (PKG).
Algorithm  E x t r a c t  outputs the trapdoor or secret key for the user of an identity ID with the secret key of the ID’s parent.
Algorithm  H a s h  encrypts the message  m  using the public parameter  p p  and an identity ID. It randomly chooses parameter  r  and outputs a hash value of  m .
Algorithm  F o r g e  looks for collisions of hash values for a new message  m . Usually, the algorithm takes the hash value, an identity ID, and its key of the original message  m  as inputs, and outputs a new parameter  r .
Definition 9.
Enhanced collision resistance. A secure chameleon hash algorithm is enhanced collision resistance (CR) when challenger  A  holds that  P r [ E x p t A , C H C R n , q , I D = 1 ] n e g l ( n ) . The  E x p t A , C H C R n  is the experiment depicted below:
Run  P P , M K S e t u p 1 n , q , Q ;
Run  A S I D ,   S I D S l a v e K e y 1 n , q , I D ;
Run  F I D , R I D , E I D D e l K e y A S I D ,   S I D , I D ;
Run  M , r , h , M , r A Q P P , I D F o r g e P P ;
If  C H P P , M r = C H P P , M r M M h Q : return 1; otherwise: return 0.
The  Q P P . I D F o r g e h , M , r , M  is defined as follows:
If  C H P P , M | r h : return  ;
If  C H P P , M | r = h :
Run  r F o r g e ( F I D , R I D , E I D , M , h )
If  r = : return  ;
Q Q { M , M } ;
return  r .

3. Hierarchical Identity-Based Chameleon Hash with Revocable Subkey

The hierarchical identity-based chameleon hash with revocable subkey (HIBCH-RS) model extends the IBCH model, introducing a hierarchical structure of user identities. In this section, we give a formal definition of the lattice-based HIBCH-RS scheme. Then, we analyze its correctness and security.
At level  l , let  i d l = ( d 1 , d 2 , , d l )  represent the identity of a specific user while its parent node’s identity is represented by  i d l 1 = d 1 , d 2 , , d l 1  or  i d l * . This ensures that the composition of the vector serves as a prefix to the IDs of its child nodes. To satisfy the massive user base in the blockchain, we can even assume that there is no upper bound on  l .
In the traditional hierarchical identity encryption scheme, the parent node generates the trapdoor information of the child node and hence the problem of the parent node forging the identity of the child node occurs. This scheme is only applicable for mutual communication between nodes. In contrast, in a redactable blockchain, the trapdoor between nodes should be confidential and independent and at the same time constrained. Based on the above description, this paper realized this secure key delegation method by adding a slave key algorithm. When a user with delegation rights assigns a key, executing the SlaveKey algorithm generates a slave key pair for the subordinate user. This slave key pair is then employed to generate the key pair for the subordinate user. This procedure ensures that the keys between the user and the sub-user remain confidential. Additionally, the user can utilize the slave key pair to recover, update, and disable the trapdoors of sub-user. In the event of key abuse, the system can execute the Update algorithm to regenerate a new key.
Eventually, the HIBCH-RS model consists of the following six algorithms: initial algorithm Setup, slave key algorithm SlaveKey, delegated algorithm DelKey, i.e., extracting the algorithm in HIBCH, key updating algorithm Update, chameleon hash algorithm CH, and collision-finding algorithm Forge.

3.1. Syntax of HIBCH-RS

Trapdoors for chameleon hash functions are usually managed through the key sharing method, but this mechanism requires a lot of interaction time and is less efficient. Therefore, we introduced the mechanism for hierarchical identity management of trapdoors. Trapdoors between users are independent but at the same time controllable. In Figure 1, we show how the chameleon algorithm achieves this property using hierarchical identity.
In Figure 1, the trusted party can be a regulator and performs initialization operations in HIBCH-RS. Subsequently, the trusted party delegates the trapdoor to the node members by generating the slave key, while the node members can repeat the operation of the trusted party to delegate the trapdoor to other nodes. The trusted party public key is used for chameleon hash encryption and the trapdoor information is used to find collisions. In this hierarchical structure, the parent node removes and updates the child node trapdoor information by withdrawing or updating the slave key. This paper introduces a subordinate key between parent and child nodes, unlike the hierarchical identity encryption schemes of [22,37,38,39]. The HIBCH-RS model encompasses six probabilistic polynomial-time (PPT) algorithms: Setup, SlaveKey, DelKey, Update, CH, and Forge.
S e t u p 1 n , q P P , M K : Run by any trusted node, the initialization operation of the model takes as inputs the security parameter  n , the positive integer  q , and outputs the public parameter  P P  and the master key  M K .
S l a v e K e y ( 1 n , q , I D ) ( A S i d l , S i d l ) : Run by  i d l , to obtain the slave key before delegating the trapdoor. The algorithm takes  n , q , I D  as inputs and outputs the salve public key  A S i d l , and slave secret key  S i d l  for  I D .
D e l K e y ( A S i d l * , S i d l * , i d l ) ( F i d l , R i d l , E i d l ) : Run by  i d l  node, use parent node slave key to generate delegated trapdoor, take slave public key  A S i d l * , slave private key  S i d l *  and  i d l  as inputs, output the public key  F i d l , trapdoor  R i d l , and personal key  E i d l .
U p d a t e 1 n , q , i d l , R L ( A S i d l , S i d l , R L ) : Run by the  i d l , this algorithm is run when the user is untrustworthy in the delegate and needs to recycle and update its key. The algorithm takes  n , q , revocation list  R L  and a new random  t a g H l  as inputs. Outputs are a new salve key pair  A S i d l , S i d l  and updated list  R L .
C H ( P P , M ) ( h , r , ( s t r , v e r ) ) : Input the public parameters  P P  and message  M . Compute the hash value of  M . Outputs the hash value  h , the random field  r ,  and the verification pair  ( s t r , v e r ) .
F o r g e ( F i d l , R i d l , E i d l , M , h ) r : Run by  i d l  when there is a need to modify message data to find a collision, this algorithm has as inputs public key  F i d l , trapdoor key  R i d l , personal key  E i d l , message  M ,  and outputs collision  r , and satisfies  C H ( A , M , E ) | r = C H ( F i d l , M , E i d l ) | r , and  M M .
Formally, when  l = 0 A = F i d 0 , we use  F i d 0  instead of  A  in the security proof. Next, we discuss the security requirements of HIBCH-RS.
  • C o r r e c t n e s s .  Formally, if message  M , M  and identity  i d i , it has  Pr E x p t A , H I B C H R S C O R n , q = 1 1 n e g l ( n ) , where the experiment  E x p t A , H I B C H R S C O R  is described as below:
    • Run  ( A , E ) , M K S e t u p 1 n , q ,
    • Run  ( h , r , ( s t r , v e r ) ) C H ( A , E , M )
    • Run  F i d i , R i d i , E i d i D e l K e y A S i d i * , S i d i * , i d i
    • Run  r F o r g e ( F i d i , R i d i , E i d i , M , h )
    • If  C h e c k P P , k e y i d i C H h , M , r , h , M , r = 1 : return 1.
    • The  C h e c k P P , k e y i d i C H  is defined as following:
    • If  C H P P , M | r = h C H k e y i d i , M | r = h h = h M M :
    • return 1; otherwise: return 0.
  • R e v o c a b i l i t y .  For any  i d i , if it satisfies  { F i d i , R i d i , E i d i D e l K e y A S i d i * , S i d i * , i d i | H i , G , F i d i , R i d i , E i d i D e l K e y A S i d i * , S i d i * , i d i | H i , G } F i d i R i d i H i G , and when  ( H i H i )  is invertible,  F i d i = F i d i [ 0 | H G | 0 ] F i d i R i d i ( H i H i ) G . At the same time, the system can still effectively recover, update, or disable disclosed trapdoor keys when malicious users are present. This security requirement proves that the old trapdoor key does not work properly.
  • Resistance to collision forgery under active attacks ( RCF ) . For any PPT adversary  A , if  A d v A , H I B C H R S R C F Pr E x p t A , H I B C H R S R C F n , q = 1 n e g l ( n ) , the chameleon hash algorithm construct of the HIBCH-RS model is collision-resistant under active attacks. The experiment  E x p t A , H I B C H R S R C F  is described as follows:
    • Run  P P , M K S e t u p ( 1 n , q ) Q F o r g e
    • Run  A S i d i * , S i d i * S l a v e K e y 1 n , q , i d i * ;
    • Run  F i d i , R i d i , E i d i D e l K e y A S i d i * , S i d i * , i d i ;
    • Define  k e y i d i : = F i d i , R i d i , E i d i ;
    • Run  ( h * , r * , M * , M * , r * , ( s t r , v e r ) ) A Q F o r g e ( ) ( k e y i d i ) ;
    • Define  H a s h M ( h , r , M ) H a s h M * ( h * , r * , M * ) ;
    • If  r * , C h e c k P P , k e y i d i C H H a s h M , H a s h M * = 1  and  ( h * , M * , ( s t r , v e r ) ) Q F o r g e :
    • return 1; otherwise: return 0.
    • The  Q F o r g e  is defined as follows:
    • If  C h e c k k e y i d i V e r i f y s t r , v e r = 1 , h , M a n d   M Q F o r g e h = h :  run  r F o r g e ( k e y i d i , M , h )
    • if  r : define  Q F o r g e Q F o r g e { ( s t r , v e r , h , M ) , ( s t r , v e r , h , M ) }
    • return  r .
    • The  C h e c k k e y i d i V e r i f y  is defined as follows:
    • If  s t r = , v e r = : return 1.
    • If  s t r , v e r : run  e i d i S a m p l e D ( k e y i d i ) , define  z = s t r e i d i v e r , return 1. otherwise: return 0.
  • Forgery indistinguishability .  For users and messages  M , M  with identity ID, if it holds that  h , r h , r C H A , M , E { h , r h , r C H A , M , E , r F o r g e ( A i d k , R i d k , E i d k , M , h I D , r } , then the construction of HIBCH-RS satisfies forgery indistinguishability.

3.2. Construction of HIBCH-RS

This section shows the detailed construction details of the HIBCH-RS model with updatable subkeys. The concrete implementation of the model contains the following algorithm.
  • S e t u p 1 n , q :  Given a security parameter  n  and any integer  q 2 , let  m ¯ = n k , w = n k , m = m ¯ + w . Run algorithm  T r a p G e n ( 1 n , q ) ( A , R )  such that  A Z q n × m , R Z q m ¯ × w . Generate randomly  U R Z q n × n ,  compute  E S a m p l e D ( R , A , H , U , σ )  such as  A E = U m o d   q . Finally, algorithm output public parameter  P P = A , U , E ,  master key  M K = R .
  • S l a v e K e y 1 n , q , I D :  Randomly sample  V Z q m ¯ × w  from  D Z m ¯ , σ s , and an error  T Z m ¯ × w  from  χ . Compute  S i d l = H f r d ( i d l ) V + T .  Randomly choose  A ¯ S i d l Z q n × m ¯  and H-tag  H l , then  A S i d l = [ A ¯ S i d l | H l G A ¯ S i d l · S i d l ] mod q . Finally, algorithm output  A S i d l  and  S i d l .
  • D e l K e y A S i d l * , S i d l * , i d l :  At level  l i d l = d 1 , d 2 , , d l  is a  l -dimensional vector. Let  K i d = H f r d i d l C m o d   q  where  C  is chosen randomly from  Z q n × w . For tag  H l *  at level  l 1  is generated and sent by  i d l * , and  F i d l = [ A S i d l * | K i d ] Z q n × ( m + w ) . Evaluate  R i d l D e l T r a p ( F i d l , H l * , S i d l * , σ d )  to obtain a trapdoor for  i d l . Generate personal key  E i d l S a m p l e ( R i d l , F i d l , H l , U , σ )  for  i d l . Finally, algorithm output  F i d l , R i d l , a n d   E i d l .
  • U p d a t e ( 1 n , q , R L ) : If the key is found to be exposed or an illegitimate edit request, then the algorithm is executed to update the key for the edit member. The parent node updates a reversible tag  H l  by the algorithm of [32] 6.1. Then, the slave key pair is updated to  S i d l  and  A S i d l = [ A ¯ S i d l | H l G A ¯ S i d l · S i d l ] mod q  and the ID of the revoked key is appended to  R L = { i d i , , i d j , } , so  R L = { i d i , , i d j , i d r } . The algorithm outputs new tag  H l  and  R L  to generate a new key for the user.
  • C H ( A , M , E ) : Input public parameter  P P = ( A , E )  and message  M , compute chameleon hash and verification pair. If a transaction is identified as public-modifiable, then we use PP to calculate the hash value. Let  c = H M M  where  H M : 0,1 * 0,1 m ¯ , sample  r R D Z m ¯ , σ , compute the chameleon hash of message  M  as:  h = A r + E T c   m o d   q s t r = ,   v e r = . If a transaction is identified as belonging to an individual, then we give editing rights to the individual. Suppose this transaction belongs to  i d l , then  i d l  calculates an extra verification pair and fills them into the block. In other words, select randomly  u i d l Z q n , s i d l Z q n   a n d   x R χ , and  m i d = H ( s i d l , I D )   m o d   2 , then  s t r = u i d l T s i d l + x + m i d q / 2 m o d   q v e r = F i d l T s i d l + y   m o d   q   w h e r e   y R χ .  Algorithm output hash value  h , collision string  r ,  and verification pair  ( s t r , v e r ) . We illustrate the operation of the algorithm in Algorithm 1 in a simple code language.
Algorithm 1 Chameleon hash function.
c : H M ( M )  and  r R D Z m ¯ , σ 3
h = A r + E T c mod   q
if  M  is public:
   s t r = , v e r =
else if  M  is private:
  // Hash map of identity ID
   m i d : H ( s i d l )
   u R Z q n s R D Z , σ x R χ y R χ
   s t r = u T s + x + m i d q / 2 m o d   q
   v e r = F i d l T s + y mod   q
return  h , r , ( s t r , v e r )  
  • F o r g e F i d l , R i d l , E i d l , M , h :  Input the public key and the trapdoor key of  i d l , finding the collisions of chameleon hash. For personal data, the ability of  i d l  users to decrypt  s t r  is verified to determine whether they have the permission to edit the private data, and the hash collision is calculated if the verification is passed, and the editing request is rejected if it is not passed.  i d l  provides the decryption key  d i d l S a m p l e D R i d l , F i d l , H l * , u i d l , σ .  Then, compute  z = s t r d i d l T v e r m o d   q . If  z q / 2 < q / 4 a n d   m i d = 1 , output True; otherwise output False. If  z q / 2 > q / 4 a n d   m i d = 0 , output True; otherwise output False. For public transaction data or personal data with successful verification,  i d l  users can easily calculate hash collisions. Let  c = H M ( M ) . Then, sample  r  from  S a m p l e D  such that  F i d l r = h E i d l T c m o d   q . Output the collision  r . We illustrate the operation of the algorithm in Algorithm 2 in a simple code language.
Algorithm 2 Chameleon hash forge function.
If new message  M  is private:
// Decryption key of user ID:  d
   z = s t r d v e r mod q  
if [( z q / 2 > q / 4  and  m i d = 0 )
  or ( z q / 2 < q / 4 ) and  m i d = 1 ]:
  // Hash map of message  M  
   c : H M ( M )
   u = h E i d l T c m o d q
   r S a m p l e D ( R i d l , F i d l , H l , u , σ )  
  return  r .
return  .

3.3. Security Analysis

3.3.1. Parameters

We identify whether a user has the right to edit a particular private transaction by verifying the user’s ability to decrypt it. During the decryption operation by the user at level  l , we have  z = s t r d i d l T v e r = m i d q / 2 + x d i d l T y . By the correctness of  S a m p l e D  we know that  d i d l T < σ m  holds with overwhelming probability. By Lemma 1, we have the error term  x d i d l T y   σ m α q   ω l o g m + α q   ω l o g m . Therefore, when we set the upper limit of the error term to be less than  q / 4 , it means that the decryption algorithm is correct. At this point, we can correctly solve a LWE instance problem.
Micciancio et al. defines the concept of a smoothing parameter as a measure of the Gaussian on the lattice [40]. When the standard deviation of the Gaussian on the lattice distribution is larger than this parameter, the modal lattice points in this distribution are almost close to being uniformly distributed. This paper defines  σ s = r = ω log n   l n ( 2 / ϵ ) / π . By defining random matrices sampled from the 0-sub-Gaussian in [41], we know that  s 1 R σ O m + w  for  M K  and  s 1 ( R i d l ) σ O ( m + w + w )  for the delegation trapdoor. For instance, we set the Gaussian parameter as  σ 7 s 1 R 2 + 1 ω ( l o g n )  and  σ d 5 s 1 ( R ) ω ( l o g n ) . Meanwhile, in this paper, we set the parameters  m = 2 n ψ + 1 ,   q = m 3 ω ( l o g n ) , where the real number  ψ  satisfies  l o g q < n ψ .

3.3.2. Security

Theorem 1
( C o r r e c t n e s s ). The construction of HIBCH-RS meets the requirement of correctness.
Proof. 
For the hash value  h  and identity ID, it is easy to confirm that ID uses the trapdoor information to compute a new  r  from  s a m p l e D ( R I D , F I D , H i , h E I D T c m o d q , σ )  so that  F I D r + E I D T c m o d q = h . So HIBCHRS satisfies correctness. □
Theorem 2
( R e v o c a b i l i t y ). The construction of HIBCH-RS meets the requirement of revocability.
Proof. 
We discuss the revocability of HIBCH-RS in the following two scenarios.
  • In [36],  R  is also a trapdoor for  A = A [ 0 | H G ]  with tag  ( H H )  for any  H , as long as  ( H H )  is invertible modulo q. At this point, the old trapdoor is still available even after updating the public key. However, this useful feature does not apply to HIBCH-RS. To prove the above, we have  F I D = [ A ¯ S I D * | H G A ¯ S I D * · S I D * | K ]  with a tag  H  and ID. From the  D e l K e y  algorithm, we know that  F I D R I D I = H G . We now assume that there is an invertible tag  ( H H )  such that  F I D = F I D [ 0 H G 0 ] . So, if  R  is also a trapdoor  F I D , then  F I D R I D I  should be equal to  ( H H ) G . While currently  H G 0 H G 0 R I D I = H G 0 | H G R I D . However, it is obvious that  0 | H G R I D H G .
  • Any  H F I D R I D I H G .  First of all, we assume  H F I D R I D I = H G . We also know  F I D = [ A S I D * | K I D ] A S I D * R I D = H G K I D . Then,  A S I D * A S I D * R I D = ( H H ) G , so we can derive that  0 H H G R I D = H H G . In other words, we want to confirm a trapdoor  R I D  of the form  [ R I D * Z q m ¯ × w I Z q w × w ] . Since  R I D  is the random vector that came from  s a m p l e D , we can also represent  R I D  as  R I D = [ x 1 x w ] , a form that comes from the definition [36]. We also have  x i = x i * x ~ Z q ( m ¯ × w ) × 1 , x ~  is a vector whose  i t h  row is 1, and the other rows are 0 with the probability of  n e g ( n ) . In this ideal case,  K I D  is constant. However, in practice, when the key pair is updated,  K I D  is a matrix of changes. Therefore, it is possible to forge a  R I D  that satisfies this situation with the probability of  n e g ( n ) .
  • First, when a malicious user exists in a child node, its parent node can disable the child node trapdoor by updating the slave key information as well as the tag information, and at the same time add the child node’s identity to the revocation list and remove its edit permissions. Secondly, if a malicious user delegates illegitimate trapdoor information to other users, we can update its trapdoor information by assigning its child node to other legitimate nodes and then updating its trapdoor information. If a malicious user makes a request to modify other private data or non-editable transactions, the regulator may be able to automatically lock the malicious user’s edit permissions. Furthermore, if a malicious user refuses to cooperate in revoking an insecure trapdoor key, we can add the user to the revocation list, restrict its edit permissions, and then update the trapdoor information. For the above cases, the illegal behavior of malicious users can be fully considered and measures can be taken to ensure the overall security of the system. □
Theorem 3
R e s i s t a n c e   t o   c o l l i s i o n   f o r g e r y   u n d e r   a c t i v e   a t t a c k s . Assume that adversary  A  can make most  Q  adaptation queries. If  A  can break the security of HIBCH-RS by a non-negligible advantage, the detailed proof is as defined by  E x p t A , H I B C H R S R C F n , q  in the following.
Proof. 
First, the challenger  C  initializes set  Q F o r g e . During the phase, the challenger  C  executes the following:
  • Generate  P P , M K H I B C H R S . S e t u p ( 1 n , q ) C .
  • Sample  H l Z q n × n .
  • Generate  A S i d i , S i d i S l a v e K e y 1 n , q , i d i C ,
  • and  F i d i , R i d i , E i d i D e l K e y A S i d i * , S i d i * , i d i C .
  • p p : = P P , H l , F i d i , T I : = ( p p , R i d i , E i d i )  and send  p p  to  A .
  • Second,  A  query:
  • M i , M i M , and  u i d i Z q n × 1 , h i , ( s t r , v e r ) C H A , M i , E | r i .
  • Generate ( M i , M i , h i , r i , ( s t r , v e r ) ).
  • Then, the challenger  C  executes the following:
  • Sample  d i d i S a m p l e D ( R i d i , F i d i , H l , u i d l , σ )
  • if  h , M a n d   M Q F o r g e h h , and  z = s t r d i d i v e r , z > q 4 , return  ;
  • otherwise, continue.
  • Generate  r i F o r g e ( F i d i , R i d i , E i d i , M , h ) ;
  • Send  r i  to  A  and  Q F o r g e Q F o r g e { ( s t r , v e r , h , M ) , ( s t r , v e r , h , M ) } .
  • For the Forgery group  ( h * , r * , M * , M * , r * , ( s t r , v e r ) ) , the challenger  C  calculates:
  • F i d i A r * v = h i E i d i T H ( M * ) u  with  r i σ m , and  M * M * .
  • Finally, if the above condition is satisfied, then return 1.
  • Thus, through the above process, we can calculate  P r [ E x p t A , H I B C H R S R C F n , q = 1 ] . □
Theorem 4
( F o r g e r y   i n d i s t i n g u i s h a b i l i t y ) . By this theorem, we show that the hash distribution  D C H  of a message  M  is statistically close to the distribution  D F o r g e  of a message  M .
Proof. 
First, the  D C H  was defined as below:
D C H : = M , r , h r R D Z m ¯ , σ , c H M M , h = A r + E T c m o d q n , q , P P ,
Next, we defined the  D F o r g e  as:
D F o r g e = M , r ¯ , h r $ R , h C H A , M , E , R i d k D e l K e y A S i d k , S i d k , i d k , r ¯ F o r g e ( A i d k , R i d k , E i d k , M , h ) n , q , I D .
It is known that  r  is indistinguishable from  r ¯  since  r , r ¯  are Gaussian sampling distributions. Therefore, the distribution  D C H D F o r g e ,  which means that they are indistinguishable. □
Based on the analysis, devising an editable scheme grounded in the HIBCH-RS model imparts quantum-resistant characteristics. Concurrently, the security of the editable method is contingent upon the safety of the foundational algorithm.

4. Redactable Programs

This paper is dedicated to the formulation of a redactable blockchain that emphasizes compatibility. In this context, compatibility pertains to the ability of the redactable blockchain structure to integrate with data structure, the consensus protocols, block, and chain structures, and more. Secondly, aiming at the consistency of the block, this paper deals with the edit request through the majority node agreement mechanism. To improve efficiency, multiple edit requests are packaged into a group of requests and sent to verification nodes for approval. Finally, to achieve the traceability and accountability of editing operations, this paper divides blocks into ordinary blocks and redactable blocks. We then trace the history of edits by packaging edit requests into the form of ordinary blocks. Revocable lists are also used to hold users accountable for unreliable or malicious changes.
In this section, we detail how this mechanism is implemented in conjunction with Hyperledger Fabric.

4.1. Editorial Role

Editor: Typically, the editorial member is made up of a group of trusted nodes. Initially, a set of trusted nodes is randomly selected by the regulator among all nodes. Then, the regulator judges the validity and legality of the editing operation to eliminate the malicious modifiers among the editorial members. We can also add new editorial members to the group. Finally, these trusted nodes can obtain the trapdoor in the HIBCH-RS scheme and then make edit requests. The node that is deleted from the editing group uses the Update algorithm to retrieve its trapdoor information and add it to the revocation list.
Edit request handler: This role is typically held by the consensus node. In this article, an edit request can be viewed as a transaction. The difference is that for ordinary transactions, the consensus node is only responsible for packaging blocks, but it needs to be reviewed whether the edit request transaction can be packaged into blocks.
Regulator: Regulator can choose from the full range of nodes. Primarily, the regulator oversees the trapdoor delegation process. Additionally, the regulator exercises control over the consensus authority to prevent inadvertent exposure of conflicting key information.

4.2. Editorial Process

In redactable Hyperledger Fabric, we show the block structure of the major changes as block headers and transactions data. The detailed structure is shown in Figure 2.
As shown in Figure 2, we replace the hash algorithm in the Merkel tree with HIBCH-RS and add key fields for the redacted transaction.  B e r N u m b e r  denotes the editing history block number.
Formally, a redactable block is represented as  R B = < H e a d , T x   l i s t , > , where the block header is abstracted as block number, the hash value of the preceding block and the data hash, denoted as  H e a d = < N u m b e r ,   P r e H a s h , D a t a H a s h > . Meanwhile, the chain structure is delineated as  C = < B 0 , R B 1 , , B i , B e r j , > . In other words, there are three types of blocks in the redactable blockchain proposed in this paper: ordinary non-redactable blocks  B i , redactable blocks  R B j , and blocks that record editing operations  B e r .
Figure 3 depicts the transaction flow for redactable Hyperledger Fabric to perform an edit request. In Fabric, the editing request initiated by the client is first sent to the endorsing nodes for processing. Subsequently, the approved requests are temporarily stored at the consensus nodes, awaiting validation and submission. Distinction arises between the editing procedures for public and personal transaction data. Specifically, in the case of personal transaction data, the modify content (MC) must be maintained as confidential information, thus ensuring data privacy. The validation node is solely responsible for confirming the endorsement strategy and the legitimacy of the modification. Ultimately, the agreed-upon modified transaction is submitted for accurate modification within the blockchain. Therefore, the edit request transaction is compatible with the transaction flow of a normal transaction.
Specifically, we divide the editing process into the following stages:
Creation of an edit request: The process commences with the creation of an edit request by a member who possesses the trapdoor key. This event triggers the generation of a modification transaction (MT). MT comprises two principal components: the modified content (MC) and the key parameter (KP).
  • Modified content (MC): MC encompasses several elements, including the transaction ID (TxID) of the transaction being revised, the hash value of the transaction, the identification of the member initiating the edit request, and the new content. If we would like to delete illegal information, the new content will be defined as empty.
  • Key parameter (KP): The KP encompasses the hash collision  r . Importantly, this component determines the ability to accurately modify the transaction within the block in a physical sense. Notably, the field related to KP remains concealed from all parties until the completion of the request submission process.
By adhering to this structured sequence, the editing process is systematically orchestrated, fostering transparency and control over modifications to blockchain data.
Validation of editing requests:
  • Public transaction data: In scenarios involving public transaction data, the consensus body disseminates MC to a randomly selected subset of n members. These members assess the content and respond with a agree message if they approve. Conversely, a reject message is transmitted if they disagree. The validation process hinges on accumulating a specific number of agree responses, indicating the legitimacy and consistency of the edit request.
  • Personal transaction data: For personal data, which is confidential, nodes have restricted access to MC. Rather, nodes provide feedback solely on whether they consent to the block modification.
Submission of editing requests: The edit request is temporarily stored within the consensus organization. During this period, the user is precluded from submitting multiple edit requests for the same transaction data simultaneously.
Upon approval of the edits, the consensus nodes package the modified transaction (MT) into a block that records editing operations. Finally, the edit block is appended to the blockchain through broadcast, culminating in the formation of the updated chain:  C = < B 0 , B 1 , , B n , B e > .
Withdrawal or deletion of an edit request manifests in the following three scenarios, which transpire prior to the submission of the edit request:
  • The originator of the request initiates a withdrawal. Upon this decision, the consensus body eliminates the edit request from local records.
  • Illegal requests. Before submission, the edit request undergoes verification by the nodes through broadcast. If the edit is determined to be unlawful or if the regulatory entity identifies the modifier’s identity as illicit, or if verification of the personal data modifier’s identity fails, the consensus body eliminates the request from local records. The regulator exercises the authority to decide whether to incorporate the edit requestor’s identity into the revocation list, contingent upon the severity of the violation.
  • If no response is received within a designated timeframe, the edit request is discarded.
By implementing these withdrawal mechanisms, our model ensures effective management of edit requests, safeguarding the integrity and legality of the blockchain’s contents.
We describe this new editing scheme in Algorithm 3, and we also describe the specific mechanism of content consistency in the algorithm.
Algorithm 3 Block redact.
Input: The new content  M , transaction ID of  T x i , redactor identity  I D , and revocation list  R L .
Output: The redacted block  R B i  and block and edit request transaction  B e r .
 Extract block by  T x i , output  R B i = { h e a d e r , T x i } .
 if  H I B C H R S . C H ( F I D , E I D , T x i ) | r i = R B i . H I B C H R S i  then:
r i H I B C H R S . F o r g e ( F I D , R I D , E I D , M , R B i . H I B C H R S i )  
 send  M T i = { r i , M C i = { T x i , R B i . H I B C H R S i , I D , M } }  to nodes 
n : = 0  
 for  r e p l y : = ( r e p l y 1 , r e p l y n )  do:   //consistency
  if  r e p l y = a g r e e  then:
     n = n + 1  
 if  n s u m ( s e n d n o d e s ) / 2  and  I D R L  then:
   B e r i = { h e a d e r , M T i }
   B e r N u m b e r = { B N 1 , , B e i . h e a d e r . N u m b e r }
   T x i = ( r i , s t r , m i d i , M , B e N u m b e r )
   R B i = { h e a d e r , T x i }  
 return  R B i B e r i  

4.3. Accountability and Traceability

Redactable blockchain necessitate ongoing maintenance and security assessments. Hence, this subsection delineates the mechanisms employed to establish accountability and traceability within the blockchain, thereby fortifying the overall security of the system.
In the design detailed in [27], edit operations are parallelized alongside modified blocks, giving rise to an edit chain. However, our approach can align with the pre-established structure and seamlessly integrate with the blockchain system.
In Algorithm 4, we design a traceability scheme for the history of editing operations. In the redactable block structure, a redactable transaction contains a list of edited historical block number transactions ( B e N u m b e r ) associated with it. From the list, we can trace all the actions to the redacted transaction.
Algorithm 4 Trace edit history.
Input: The redacted transaction  T x i .
Output: The edit history list  E H L i .
Extract  B e N u m b e r i = { B N 1 , , B N n }  by  T x i .
for  i ( 1 , , n )  do:
  Extract edit block  B e r i  by  B N i .
   E H L i = { B e r 1 . M T 1 . M , , B e r i . M T i . M }  
return  E H L i  
For accountability, we give details in Algorithms 5 and 6. In Algorithm 5, we mainly implement how to restrict or reclaim the editor’s permission when there is an illegal edit request by adding malicious users to the revocation list.
Algorithm 5 Accountability for edit request.
Input: Illegal edit request  E R i  and revocation list  R L .
Output: The revocation list  R L .
Send  E R i  to verifiers nodes
Receive  r e p l y : = ( r e p l y 1 , r e p l y n )  
if  s u m r e p l y i = r e j e c t > n  do:
   r I D : = E R i . M C . I D
   R L = { R L , r I D }  
  Delete  E R i  
return  R L .
Algorithm 6 implements how to roll back the edit operation. It is important to note that this rollback requires a member with higher privileges to perform and is strictly monitored because it removes the edits that have already been performed.
Algorithm 6 Rollback the edit operation.
Input: The redacted transaction  T x i , the number of rollback times  m ( m n ) , and identity ID.
Output: The rollback block  R B .
Extract  R B  by  T x i ; Extract  B e  by  R B . B e N u m b e r i . B N n m
R B = R B R B . r i = B e i . M T i . r i
R B . T x i = B e i . M T i . M B e N u m b e r i = { B N 1 , , B N n m }
M T i = { r , M C i = { T x i , I D , h , } }  
for  j ( n m + 1 , , n )  do:
  Extract  B e j  by  B N j  
  Delete  B e j . M T i  
return  R B  
Furthermore, our edit cache structure significantly curbs the likelihood of unauthorized edit operations. Recognizing that editing operations may be essential but sporadic within the blockchain ecosystem, preserving the history of such operations does not unduly strain the system. Quite the opposite: it bolsters the legitimacy and security of editing endeavors.
By implementing these measures, our model ensures a robust framework for accountability, traceability, and secure edit operations, thereby enhancing the overall stability and credibility of the blockchain system.

5. Experiments and Results Analysis

In this section, we verify the model and scheme proposed in this paper through two main experiments. First, we demonstrate the performance of the HIBCH-RS model through experiments, and showcase the tangible outcomes of the optimized and innovative methodology proposed in this paper. Then, in a second experiment, we deploy the redactable scheme in Hyperledger Fabric to test performance. In recent years, very few redactable schemes with quantum-resistant properties have been deployed in blockchain systems. Therefore, this article reports the performance of the lattice-based cryptographic redactable scheme.
The experimental procedures were carried out on an Ubuntu 20.04.4 LTS operating system, which is a 64-bit environment. The hardware configuration encompassed an 8-core Intel Core i7-9700 CPU running at 3.00 GHz. The implementation of the HIBCH-RS model was accomplished utilizing Python 3.9.2. Subsequently, the deployable editable solution was executed on the federated Hyperledger Fabric 2.4.1 blockchain framework. The evaluation of blockchain performance was conducted through the utilization of the Hyperledger Caliper Benchmarks.

5.1. Performance of HIBCH-RS

We provide a proof-of-concept of the HIBCH-RS scheme in this subsection and give analytical results experimentally to verify its efficiency and practicality.

5.1.1. Evaluation Time and Size of the Hierarchical Model

From the parameter analysis in Section 3.3.1, we selected four sets of parameters for the experiment in Table 3.
Generally, in the public key model of lattice cryptosystems, n should be greater than 256. In this experiment, to compare the effect of parameter changes on the model as well as to reduce the computing time to improve the efficiency, we select the case where n is 20~80. In Figure 4, we use pg to denote a set of parameters.
In the first experiment, we tested the time and secret key size of the runs of the hierarchical algorithm in the HIBCH-RS model, respectively.
From Figure 4, we can see that the trapdoor delegation algorithm consumes more time and produces larger trapdoor matrix elements as the parameters change. This is because in the algorithm we have used  n k  times the SampleD Gaussian sampling algorithm and the SampleD algorithm performs a complex Gaussian sampling that causes the size of the delegated trapdoor to be linear with the dimensions of the delegated public key [36]. In future experiments, we will look to establish more efficient and stable Gaussian sampling algorithms for improvement. On the other hand, as can be seen in Figure 4, we added the Slavekey algorithm, which runs in much less time than the Setup algorithm. Therefore, the addition of this algorithm does not put too much burden on the system. For the storage expense shown in Figure 4b,c, among the public key of the public parameter PP, master key, and delegated public key, and delegated trapdoor, the trapdoor storage expense is higher because the trapdoor is generated by the DelTrap algorithm, which runs  n k  times the SampleD algorithm.
Next, we observe that some schemes for hierarchical identity encryption are related to the number of layers of delegation, such as schemes with a hierarchical identity-based puncturable encryption model (HIBPE) in [38], and the efficient quantum-safe hierarchical identity-based cryptosystem with traceable identities (AHIBET) in [39].
In Table 4, we list the delegated key sizes for both schemes and HIBCH-RS.
From the experimental results shown in Table 4, the key size of the HIBPE and AHIBET models increases linearly with increasing levels. In our model, due to the introduction of the slave key algorithm, the size of the delegated key can be fixed in a certain dimension.

5.1.2. Comparison of Time to Compute Chameleon Hash and Find Collisions

In a second experiment, we tested the chameleon hashing algorithm of HIBCH-RS. In this experiment, we compare chameleon hash and find hash collision runtimes.
However, we omitted the comparison with the chameleon hash construction scheme from section 4.1 of [15], which exhibits a notably extended duration for finding collisions within a discrete Gaussian distribution.
In Figure 5a, we can see that for chameleon hash encryption of public data, the HIBCH-RS model can have better performance. However, to realize the management of private data, we sacrifice time for the generation of check fields, so the performance of the chameleon hash function is slightly worse than that of [15]. This approach takes extra time but helps improve the overall security and management of the model.
From Figure 5a,b, we can see the time differences in computing the chameleon hash among the three algorithms are relatively minor. This is attributed to the closely matched complexities of the chameleon hash proposed by [15] and the HIBCH-RS model. However, the HIBCH-RS model demonstrates notably enhanced efficiency when it comes to the computation of hash collisions.

5.1.3. Scalability

In this paper, the scalability of HIBCH-RS refers to the fact that the system can still maintain its existing efficiency and correctness in the face of large-scale modification requests, large-scale node users, and complex problems. First, the hierarchical identity structure of HIBCH-RS has controllable time complexity and space complexity in delegating keys, and the system performance will not be dramatically degraded with the growth of data or users. Secondly, in terms of privilege control and access efficiency, the design of the HIBCH-RS model can effectively realize the control of privileges, in that only users with trapdoors can perform editing operations. Meanwhile, the algorithms can be efficiently converted between different layers when performing encryption and collision-finding operations. This scalable performance can be demonstrated in the experiments.

5.2. Performance of HIBCH-RS-Based Redactable Blockchain

The redactable blockchain scheme based HIBCH-RS, as elaborated in Section 4, boasts compatibility across various chain types, including public, alliance, and private chains.
In the context of public chains, the scheme necessitates nearly complete decentralization of delegated keys. At this point, editable nodes are added to the hierarchical identity by application in a decentralized way. To establish this dynamic, a reward and punishment mechanism can be instituted, where nodes that adhere to agreed-upon rules can receive rewards, while those that deviate may face penalties.
Within an alliance chain, the scheme can be overseen by a certificate authority and monitored by the regulator. In a private chain, this delegated management structure can be entrusted to a centralized organization, while concurrently imposing constraints on users possessing edit permissions.
To concretize these concepts, this paper proceeded to implement the redacting scheme using the Fabric platform, which is an alliance chain framework featuring a pluggable mechanism. In this subsection, we elucidated the integration of the editing scheme, ensuring compatibility within the Fabric ecosystem.

Redactable Hyperledger Fabric

Schemes for implementing redactable blockchains based on post-quantum ciphers are in the minority, followed by equally fewer schemes for building editability in practical platforms. Thus, there are almost no practical schemes that we can compare. For the above reasons, in this experiment we demonstrate the performance of this paper’s scheme mainly in terms of the processing efficiency of editable requests, the size of editable blocks, and the throughput of editable requests. The parameter  p g = 60  was chosen for this part of the experiment, and the test was in terms of blocks. The experimental results are shown by Figure 6.
Redactable blocks cost some extra storage due to storing the editing information associated with them, but as can be seen in Figure 6a, this extra cost is small, and in practice, every transaction in the block may not always be allowed to be editable. As a result, block sizes tend to be smaller than shown in the pictures above. Second, in Figure 6b, we show the throughput of edit request processing. The experiment was tested using the caliper tool, and the choice of the number of transactions stored in the block and the number of transactions sent is shown in Table 5.
As can be seen from Figure 6b, the redactable transaction throughput is low compared to the normal transaction throughput, but this is sufficient in a redactable blockchain.
In this paper, in the parameter configuration, the caching time of the edit request was specified as 5 s. Finally, the selected personal and public transaction data were edited and verified. We tested the time of Algorithm 3 and results are displayed in Table 6. When compared to modifying public transaction data, the alteration of private transactions introduced an extra authentication time for the user. Specifically, the time required for editing a block in the quantum-resistant redactable blockchain exceeded 4.66 s, but the maximum time did not exceed 8.29 s.

6. Conclusions

Designing a secure and compatible redactable blockchain protocol is a challenging task. In this paper, we introduce the HIBCH-RS model with subkey updates and trapdoor updates. Using this model, we constructed redactable schemes that excelled in both security and compatibility. The scheme represents a significant innovation and breakthrough compared to many editing techniques that still focus on key sharing. In future work, we will try to incorporate user attributes to enhance the division of edit permissions. In addition, we will improve the efficiency of the algorithm by improving the discrete Gaussian function. In the design of a redactable scheme, we propose to incorporate traceability and accountability. It is worth noting that to enhance the practical applicability of the editing scheme, the design of the scheme should continue to focus on how to apply it in both public and private chain schemes.

Author Contributions

Conceptualization, X.W.; methodology, X.W. and Y.C.; software, X.W. and C.L.; validation, Y.C.; formal analysis, Y.C.; investigation, X.W. and C.L.; resources, X.Z. and K.F.; data curation, X.W.; writing—original draft preparation, X.W.; writing—review and editing, Y.C.; visualization, C.L.; supervision, K.F.; project administration, Y.C.; funding acquisition, X.Z. and K.F. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by “Science Research Excellent Youth Project of Hunan Provincial Department of Education under grant number 23B0906”, “Science Research Excellent Youth Project of Hunan Provincial Department of Education e under grant number 23B0920”, “The Key Research and Development Project of Hunan Province, China, grand number 2023NK2011”, “Scientific Research Fund of Hunan Provincial Education Department, grand number 21A0599” and “Key project of the 14th Five-Year Plan of Education Science of Hunan Province, grand number XJK23AJD016”.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data are contained within the article.

Acknowledgments

This work was supported by the project of “The discipline of business management of provincial-level application characteristics of Hunan Women’s University”.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Al-Jaroodi, J.; Mohamed, N. Blockchain in industries: A survey. IEEE Access 2019, 7, 36500–36515. [Google Scholar] [CrossRef]
  2. Saad, M.; Spaulding, J.; Njilla, L.; Kamhoua, C.; Shetty, S.; Nyang, D.; Mohaisen, D. Exploring the attack surface of blockchain: A comprehensive survey. IEEE Commun. Surv. Tutor. 2020, 22, 1977–2008. [Google Scholar] [CrossRef]
  3. Wang, Y.; He, J.; Zhu, N.; Yi, Y.; Zhang, Q.; Song, H.; Xue, R. Security enhancement technologies for smart contracts in the blockchain: A survey. Trans. Emerg. Telecommun. Technol. 2021, 32, e4341. [Google Scholar] [CrossRef]
  4. Velliangiri, S.; Karthikeyan, P. Blockchain technology: Challenges and security issues in consensus algorithm. In Proceedings of the 2020 International Conference on Computer Communication and Informatics (ICCCI), Coimbatore, India, 22–24 January 2020; pp. 1–8. [Google Scholar]
  5. Chou, I.T.; Su, H.H.; Hsueh, Y.L.; Hsueh, C.W. Bc-store: A scalable design for blockchain storage. In Proceedings of the 2nd International Electronics Communication Conference, Singapore, 8–10 July 2020; pp. 33–38. [Google Scholar]
  6. Chan, W.K.; Chin, J.J.; Goh, V.T. Simple and scalable blockchain with privacy. J. Inf. Secur. Appl. 2021, 58, 102700. [Google Scholar] [CrossRef]
  7. Matzutt, R.; Kalde, B.; Pennekamp, J.; Drichel, A.; Henze, M.; Wehrle, K. How to securely prune bitcoin’s blockchain. In Proceedings of the 2020 IFIP Networking Conference (Networking), Paris, France, 22–26 June 2020; pp. 298–306. [Google Scholar]
  8. Azbeg, K.; Ouchetto, O.; Andaloussi, S.J. BlockMedCare: A healthcare system based on IoT, Blockchain and IPFS for data management security. Egypt. Inform. J. 2022, 23, 329–343. [Google Scholar]
  9. Athanere, S.; Thakur, R. Blockchain based hierarchical semi-decentralized approach using IPFS for secure and efficient data sharing. J. King Saud Univ.-Comput. Inf. Sci. 2022, 34, 1523–1534. [Google Scholar]
  10. Liu, Y.; Liu, J.; Salles, M.A.V.; Zhang, Z.; Li, T.; Hu, B.; Henglein, F.; Lu, R. Building blocks of sharding blockchain systems: Concepts, approaches, and open problems. Comput. Sci. Rev. 2022, 46, 100513. [Google Scholar] [CrossRef]
  11. Kong, X.; Zhang, J.; Wang, H.; Shu, J. Framework of decentralized multi-chain data management for power systems. CSEE J. Power Energy Syst. 2019, 6, 458–468. [Google Scholar]
  12. Xu, J.; Xue, K.; Tian, H.; Hong, J.; Wei, D.S.; Hong, P. An identity management and authentication scheme based on redactable blockchain for mobile networks. IEEE Trans. Veh. Technol. 2020, 69, 6688–6698. [Google Scholar]
  13. Yeh, L.Y.; Hsu, W.H.; Shen, C.Y. GDPR-Compliant Personal Health Record Sharing Mechanism with Redactable Blockchain and Revocable IPFS. IEEE Trans. Dependable Secur. Comput. 2023. [Google Scholar] [CrossRef]
  14. Fernandez-Carames, T.M.; Fraga-Lamas, P. Towards post-quantum blockchain: A review on blockchain cryptography resistant to quantum computing attacks. IEEE Access 2020, 8, 21091–21116. [Google Scholar] [CrossRef]
  15. Wu, C.; Ke, L.; Du, Y. Quantum resistant key-exposure free chameleon hash and applications in redactable blockchain. Inf. Sci. 2021, 548, 438–449. [Google Scholar]
  16. Ateniese, G.; Magri, B.; Venturi, D.; Andrade, E. Redactable blockchain-or-rewriting history in bitcoin and friends. In Proceedings of the 2017 IEEE European Symposium on Security and Privacy (EuroS&P), Paris, France, 26–28 April 2017; pp. 111–126. [Google Scholar]
  17. Wan, Z.; Liu, W.; Cui, H. HIBEChain: A hierarchical identity-based blockchain system for large-scale IoT. IEEE Trans. Dependable Secur. Comput. 2022, 20, 1286–1301. [Google Scholar]
  18. Pavithran, D.; Al-Karaki, J.N.; Shaalan, K. Edge-based blockchain architecture for event-driven IoT using hierarchical identity based encryption. Inf. Process. Manag. 2021, 58, 102528. [Google Scholar]
  19. Khalili, M.; Dakhilalian, M.; Susilo, W. Efficient chameleon hash functions in the enhanced collision resistant model. Inf. Sci. 2020, 510, 155–164. [Google Scholar] [CrossRef]
  20. Derler, D.; Samelin, K.; Slamanig, D. Bringing order to chaos: The case of collision-resistant chameleon-hashes. In Proceedings of the Public-Key Cryptography–PKC 2020: 23rd IACR International Conference on Practice and Theory of Public-Key Cryptography, Edinburgh, UK, 4–7 May 2020; pp. 462–492. [Google Scholar]
  21. Ateniese, G.; de Medeiros, B. Identity-Based Chameleon Hash and Applications. In Financial Cryptography, Proceedings of the 8th International Conference, FC 2004, Key West, FL, USA, 9–12 February 2004; Lecture Notes in Computer Science; Juels, A., Ed.; Springer: Berlin/Heidelberg, Germany, 2004; pp. 164–180. [Google Scholar]
  22. Bao, F.; Deng, R.H.; Ding, X.; Lai, J.; Zhao, Y. Hierarchical identity-based chameleon hash and its applications. In Proceedings of the Applied Cryptography and Network Security: 9th International Conference, Nerja, Spain, 7–10 June 2011; pp. 201–219. [Google Scholar]
  23. Derler, D.; Samelin, K.; Slamanig, D.; Striecks, C. Fine-grained and controlled rewriting in blockchains: Chameleon-hashing gone attribute-based. IACR Cryptol. ePrint Arch. 2019, 2019, 406. [Google Scholar]
  24. Ma, J.; Xu, S.; Ning, J.; Huang, X.; Deng, R.H. Redactable blockchain in decentralized setting. IEEE Trans. Inf. Forensics Secur. 2022, 17, 1227–1242. [Google Scholar] [CrossRef]
  25. Wei, J.; Zhu, Q.; Li, Q.; Nie, L.; Shen, Z.; Choo, K.K.R.; Yu, K. A redactable blockchain framework for secure federated learning in industrial Internet of Things. IEEE Internet Things J. 2022, 9, 17901–17911. [Google Scholar]
  26. Jia, Y.; Sun, S.F.; Zhang, Y.; Liu, Z.; Gu, D. Redactable blockchain supporting supervision and self-management. In Proceedings of the 2021 ACM Asia Conference on Computer and Communications Security, Hong Kong, China, 7–11 June 2021; pp. 844–858. [Google Scholar]
  27. Jia, M.; Chen, J.; He, K.; Du, R.; Zheng, L.; Lai, M.; Wang, D.; Liu, F. Redactable Blockchain from Decentralized Chameleon Hash Functions. IEEE Trans. Inf. Forensics Secur. 2022, 17, 2771–2783. [Google Scholar] [CrossRef]
  28. Peng, C.; Xu, H.; Li, P. Redactable Blockchain Using Lattice-based Chameleon Hash Function. In Proceedings of the 2022 International Conference on Blockchain Technology and Information Security, Huaihua, China, 15–17 July 2022; pp. 94–98. [Google Scholar]
  29. Puddu, I.; Dmitrienko, A.; Capkun, S. μchain: How to Forget without Hard Forks. IACR Cryptol. ePrint Arch. 2017, 2017, 106. [Google Scholar]
  30. Marsalek, A.; Zefferer, T. A correctable public blockchain. In Proceedings of the 2019 18th IEEE International Conference on Trust, Security And Privacy in Computing and Communications/13th IEEE International Conference on Big Data Science and Engineering, Rotorua, New Zealand, 5–8 August 2019; pp. 554–561. [Google Scholar]
  31. Deuber, D.; Magri, B.; Thyagarajan, S.A.K. Redactable blockchain in the permissionless setting. In Proceedings of the 2019 IEEE Symposium on Security and Privacy, San Francisco, CA, USA, 19–23 May 2019; pp. 124–138. [Google Scholar]
  32. Nejatollahi, H.; Dutt, N.; Ray, S.; Regazzoni, F.; Banerjee, I.; Cammarota, R. Post-quantum lattice-based cryptography implementations: A survey. ACM Comput. Surv. 2019, 51, 1–41. [Google Scholar] [CrossRef]
  33. Ajtai, M.; Dwork, C. A public-key cryptosystem with worst-case/average-case equivalence. In Proceedings of the Twenty-Ninth Annual ACM Symposium on Theory of Computing, El Paso, TX, USA, 4–6 May 1997; pp. 284–293. [Google Scholar]
  34. Regev, O. On lattices, learning with errors, random linear codes, and cryptography. J. ACM 2009, 56, 1–40. [Google Scholar]
  35. Gentry, C.; Peikert, C.; Vaikuntanathan, V. Trapdoors for hard lattices and new cryptographic constructions. In Proceedings of the Fortieth Annual ACM Symposium on Theory of Computing, Victoria, BC, Canada, 17–20 May 2008; pp. 197–206. [Google Scholar]
  36. Vershynin, R. Introduction to the non-asymptotic analysis of random matrices. arXiv 2010, arXiv:1011.3027. [Google Scholar]
  37. Micciancio, D.; Peikert, C. Trapdoors for lattices: Simpler, tighter, faster, smaller. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, Cambridge, UK, 15–19 April 2012; Springer: Berlin/Heidelberg, Germany, 2012; pp. 700–718. [Google Scholar]
  38. Agrawal, S.; Boneh, D.; Boyen, X. Efficient lattice (H) IBE in the standard model. In Proceedings of the Advances in Cryptology–EUROCRYPT 2010: 29th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Riviera, French, 30 May–3 June 2010. [Google Scholar]
  39. Dutta, P.; Jiang, M.; Duong, D.H.; Susilo, W.; Fukushima, K.; Kiyomoto, S. Hierarchical identity-based puncturable encryption from lattices with application to forward security. In Proceedings of the 2022 ACM on Asia Conference on Computer and Communications Security, Nagasaki, Japan, 30 May–3 June 2022; pp. 408–422. [Google Scholar]
  40. Van Nguyen, N.A.; Pham, M.T.T. Quantum-safe Anonymous Hierarchical Identity-Based Encryption with Traceable Identities. Comput. Stand. Interfaces 2023, 84, 103695. [Google Scholar] [CrossRef]
  41. Micciancio, D.; Regev, O. Worst-case to average-case reductions based on Gaussian measures. SIAM J. Comput. 2007, 37, 267–302. [Google Scholar]
Figure 1. Delegating trapdoor model of HIBCH-RS.
Figure 1. Delegating trapdoor model of HIBCH-RS.
Applsci 14 00832 g001
Figure 2. The redactable block structure of Hyperledger Fabric.
Figure 2. The redactable block structure of Hyperledger Fabric.
Applsci 14 00832 g002
Figure 3. Modify the transaction flow.
Figure 3. Modify the transaction flow.
Applsci 14 00832 g003
Figure 4. Comparison of running times and size. (a) The run time of HIBCH-RS with update algorithm; (b) the public key size; (c) the private or trapdoor size.
Figure 4. Comparison of running times and size. (a) The run time of HIBCH-RS with update algorithm; (b) the public key size; (c) the private or trapdoor size.
Applsci 14 00832 g004
Figure 5. Comparison of hash running times. (a) The run time of the chameleon hash algorithm in HIBCH-RS scheme; (b) the run time of the forge algorithm in the HIBCH-RS scheme [15].
Figure 5. Comparison of hash running times. (a) The run time of the chameleon hash algorithm in HIBCH-RS scheme; (b) the run time of the forge algorithm in the HIBCH-RS scheme [15].
Applsci 14 00832 g005
Figure 6. Redactable blockchain performance. (a) Comparison of block size, with the difference between the redactable block and the original block structure shown in detail. (b) Showing the performance of transactions per second.
Figure 6. Redactable blockchain performance. (a) Comparison of block size, with the difference between the redactable block and the original block structure shown in detail. (b) Showing the performance of transactions per second.
Applsci 14 00832 g006
Table 1. Comparison of typical redactable blockchain models.
Table 1. Comparison of typical redactable blockchain models.
ModeReferencesGrainSelf
Management
Security Model 4FeaturesEdit Permissions
Non-CH[29]Ts 1Y 2-C 3&T 3Sender/Recipient/User/Smart Contract
CH[16]Bs 1N 2ROM/SMCCentral/Users Set
[26]TsYROMC&R 3&A 3Personal and Regulator
[24]TsNIND-CCAC&A 3Controlled Multiple
Lattice-CH[15]TsNGGM/ROM-Central/Multiple/(Any/Subset)
[28]BsN-CAny
OursTsYROMT&A&C&RMultiple
1 “Ts”: transactions;” Bs”: blocks. 2 “Y”: The realization of self-management was a consideration; “N”: the realization of self-management was not a consideration. 3 “C”: The redactable scheme design paid attention to consistency; “R”: the key has revocability; “A”: the editing scheme can achieve accountability; “T”: the editing scheme achieves traceability. 4 “ROM”: the Random Oracle Model; “SM”: the Standard Model; “IND-CCA”: the indistinguishability under the chosen-ciphertext attack; “GGM”: the Generic Group Model.
Table 2. Description of symbols.
Table 2. Description of symbols.
SymbolsDescription
R A random variable from a certain distribution
λ Security parameter
A The matrix is denoted in bold and capitals
a The vector is denoted in bold and lowercase
A T , a T The transpose of the matrix or vector
n , q Positive integer
Z q The set of integers  0 , , q 1  of modulus  q  
β The upper limit
LWELearning with errors
ISISInhomogeneous small integer solution
i d l The identity of level  l  
i d l 1 , i d l * The parent of identity at level  l  
Table 3. The selected parameter groups.
Table 3. The selected parameter groups.
Parameter Groupnmw
Group 120920460
Group 24020801040
Group 36034801740
Group 48051202560
Table 4. Comparison of delegation key sizes.
Table 4. Comparison of delegation key sizes.
ModelSize (Public Key)Size (Trapdoor)Parameter
HIBCH-RS n × ( m ¯ + 2 w ) ( m ¯ + w ) × w m ¯ = n l o g q
HIBPE n × l * m l + η * + 1 m × l + η + 1 m m = n l o g q
AHIBET n × m + l w m + l w × m + l w w = n l o g q , m w + ω ( l o g n )
l  is level of identity,  l < d , where d is the maximum hierarchical depth.  η  is the number of punctured times.
Table 5. The number of transactions stored in the block and the number of transactions sent.
Table 5. The number of transactions stored in the block and the number of transactions sent.
Exp1Exp2Exp3Exp4Exp5
Transaction per block101002005001000
Send transaction number4004000800020,00040,000
Table 6. Runtimes for different types of data modification.
Table 6. Runtimes for different types of data modification.
Public Transactions DataPrivate Transactions Data
Time(s)4.668.29
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wang, X.; Chen, Y.; Zhu, X.; Li, C.; Fang, K. A Redactable Blockchain Scheme Supporting Quantum-Resistance and Trapdoor Updates. Appl. Sci. 2024, 14, 832. https://doi.org/10.3390/app14020832

AMA Style

Wang X, Chen Y, Zhu X, Li C, Fang K. A Redactable Blockchain Scheme Supporting Quantum-Resistance and Trapdoor Updates. Applied Sciences. 2024; 14(2):832. https://doi.org/10.3390/app14020832

Chicago/Turabian Style

Wang, Xiayu, Yineng Chen, Xinghui Zhu, Cheng Li, and Kui Fang. 2024. "A Redactable Blockchain Scheme Supporting Quantum-Resistance and Trapdoor Updates" Applied Sciences 14, no. 2: 832. https://doi.org/10.3390/app14020832

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop