A Study on zk-SNARK-Based RBAC Scheme in a Cross-Domain Cloud Environment
Abstract
1. Introduction
- Provide the robust role privacy based on zk-SNARK: Existing RBAC research, especially I-RBAC (Identity-Based RBAC), has a problem that exposes the user’s role because it does not provide role privacy. There is a study that provides role privacy in normal RBAC, but it also exposes role intersection to the verifier. In this paper, we integrate zk-SNARK (Zero-Knowledge Succinct Non-interactive ARgument of Knowledge) with a hash chain and apply it in cross-domain RBAC when proving a user’s role. So, the verifier cannot know the role intersection between the user and the verifier. Through this, the proposed cross-domain RBAC can provide robust role privacy.
- Improved zk-SNARK to prevent replay attack: Existing zk-SNARK schemes cannot prevent replay attacks because they consider only a stateless verifier. Because of this, the attacker can pass authentication using previously obtained proofs. In this paper, we improve zk-SNARK using the hash chain. The prover and the verifier share the same hash chain value and use it when the prover proves their role with zk-SNARK. Through this, the proposed RBAC scheme can prevent replay attacks.
- Proposed RBAC customized for cross-domain environment: Existing RBAC research only considers a single domain, so there is a lack of research considering the cross-domain environment. This paper proposes a new cross-domain RBAC that enables interactions between different domains while maintaining an air gap. Each domain does not trust another domain’s request or data. So, if a CDS (Cross-Domain Solution) receives the request or the data, it always verifies its validity.
2. Background
2.1. Bilinear Pairing
- Bilinearity: .
- Non-degeneracy: When , .
- Computability: When , can be computed in polynomial time.
2.2. Identity-Based Cryptography
2.2.1. Identity-Based Encryption
- Step 1.
- A trusted authority () initializes a bilinear group system as follows. and are two distinct elliptic curve groups, and is a multiplicative group. A bilinear map is defined. A large prime q is also chosen.
- Step 2.
- A generator is selected. The master secret key and the corresponding master public key are generated.
- Step 3.
- Hash functions and are defined. The public parameters are published.
- Step 4.
- For a user’s identity , the TA computes , and the private key and securely delivered to the user.
- Step 5.
- The sender computes the receiver’s and selects a random value . Then, is computed.
- Step 6.
- For a message M, the sender computes and constructs the ciphertext to be sent to the receiver.
- Step 7.
- The receiver decrypts the ciphertext by computing .
2.2.2. Identity Based Signature
- Step 1.
- A trusted authority () initializes a bilinear group system as follows. and are two distinct elliptic curve groups, and is a multiplicative group. A bilinear map is defined. A large prime q is also chosen.
- Step 2.
- A generator is selected. The master secret key and the corresponding master public key are generated.
- Step 3.
- Hash functions and are defined. The public parameters are published.
- Step 4.
- For an identity string , the TA first computes . Then, it derives the corresponding signing key and sends it to the user through a secure channel.
- Step 5.
- To sign a message M, the signer selects a random value and computes .
- Step 6.
- The signer then computes and , and generates the signature .
- Step 7.
- The verifier computes and .
- Step 8.
- The verifier checks the validity of the signature by verifying whether .
2.3. Hash Chain
- The hash chain is based on a one-way hash function with collision resistance. Once a value has been revealed, moving backwards to an earlier value is not feasible, and the chain must preserve this property.
- The last element of the chain is published first. The rest of the values are released step by step, depending on when the protocol requires the next value in the sequence.
- A disclosed value is verified by recomputing the remaining hash evaluations until reaching the public reference. If the final result does not match, the verifier rejects it.
- The initial seed is chosen from a large random space. If the seed can be predicted or reconstructed, the chain loses security, so high entropy is required.
3. Technical Foundation for Cross-Domain RBAC
3.1. zk-SNARK
- Zero-knowledge: The proof does not reveal any information other than the fact that the prover knows a valid witness for the statement.
- Succinctness: The proof size is small, and the verification time is short, regardless of the original computational complexity of the statement.
- Non-interactive: The verification is completed by checking a single proof message generated by the prover, without interaction between the prover and the verifier. This is possible through an initial setting called the CRS (Common Reference String).
- Argument of knowledge: A malicious prover cannot generate a valid proof without a valid witness in a computational sense. In other words, generating a valid proof assures that the prover knows a valid witness.
3.1.1. Related Works on zk-SNARK
3.1.2. Hash Chain-Augmented zk-SNARK Protocol
- Trusted Setup
- Step 1.
- TA selects random values and generates . Here,andare generated. The notation and means and , respectively.
- Step 2.
- TA selects a random , computes , and publishes .
- Step 3.
- P computes using its own identity and sends to V via a secure channel. Then, V receives and computes . At the end of this step, P and V share the same initial root for their hash chain.
- Prove
- Step 1.
- If it is the first proof, P sets . Then, P sets and defines . Here, are the public statements, are the witness values held by P, and is the current hash chain value .
- Step 2.
- P selects random values and generates as follows:where the hash chain is bound to the proof by
- Step 3.
- P generates the proof and sends it to V. After sending the proof, P updates the hash chain value as
- Verify
- Step 1.
- V reconstructs the public input vector for the statement and the current hash chain value , and computes the corresponding and . Then, V verifies whether
- Step 2.
- If the verification succeeds, it proves that the prover possesses a valid witness satisfying the statement. Additionally, V updates the hash chain value as
3.1.3. Analysis of zk-SNARK
3.2. RBAC
3.2.1. Identity-Based RBAC
3.2.2. PE-RBAC
4. Proposed RBAC for Cross-Domain Cloud Environments
- The prover and verifier use a communication channel where messages are delivered in the expected order. Each proof is treated as one request, and all messages related to the proof are tied to that request. If a message breaks the order or is duplicated due to network problems, then it is outside the scope of this model and must be handled by the deployment environment.
- The hash chain update is only used for blocking replay attacks. The update follows the next step of the hash value according to the description in Section 3.1.2. Handling parallel proofs or recovery when the process stops is not considered in this paper and should be treated as an implementation issue in the target system.
- The hash value is tied to the public input . Therefore, even if an old hash value is recorded by an attacker, it cannot be reused for another request with a different .
4.1. System Objects
- Cross-domain solution: CDS is a security gateway that processes access policies set by the DA. CDS manages data that is sent to another domain or is received from another domain to maintain the security of the domain. In the proposed scheme, CDS also verifies the hash chain-augmented zk-SNARK proof and updates its local hash chain value.
- Domain administrator: DA is the manager who controls users in its domain. DA issues IBS and IBE keys to users, generates access policies, and sets them in the CDS. Each domain has an independent DA, so domains can keep independent security configurations.
- User: The user belongs to a domain and either requests data from another domain or sends requested data. The user obtains identity-based keys from the DA in the registration phase and, later, proves the possession of a role using the role’s IBS signing key as a witness in the zk-SNARK circuit.
4.2. Threat Model and Formal Security Definition
4.2.1. Adversary Model
- A can store a valid zk-SNARK proof and try to send it again in another session.
- A can observe the exchanged data and message structure and try to guess the role of the user from this information.
- A can change the protocol flow by modifying, inserting, or reordering messages while the protocol is running.
- The trusted authority and the secret keys of legitimate users are not compromised in the basic model, and A cannot obtain these values unless we explicitly describe such a case.
- A does not break the soundness of the zk-SNARK system, the collision resistance of the hash chain, or the unforgeability of the identity-based signature scheme.
4.2.2. Role Privacy
- Step 1.
- The challenger runs the setup algorithm of the proposed scheme and produces all public parameters to A.
- Step 2.
- The adversary A selects a target access policy and two different roles and that are both valid for this policy.
- Step 3.
- The challenger chooses a random bit . Then, the challenger simulates an honest user who has the role and runs the proposed protocol with the CDS. The challenger produces the full protocol transcript T (including the proof and the communication messages) to A.
- Step 4.
- After observing T, the adversary A outputs a guess about whether the user used role or role .
4.2.3. Replay Attack Resistance
- Step 1.
- The challenger runs the setup algorithm of the proposed scheme and executes one honest protocol session between a user and the CDS. In this session, the user sends a valid proof, and the CDS accepts it. The challenger records the full transcript T of this session.
- Step 2.
- The challenger produces the transcript T to the adversary A. After that, A can use T and can also generate new messages.
- Step 3.
- Without the help of the honest user, the adversary A sends messages to the CDS and tries to start a new session.
- Step 4.
- The adversary A succeeds in the replay game if the CDS accepts a request in this new session based only on the old transcript T or on values that were already used in the previous session.
4.2.4. Protection Against Man-in-the-Middle Attacks
- Step 1.
- The challenger runs the setup algorithm of the proposed scheme and provides the public parameters to A.
- Step 2.
- The adversary A can observe all signed messages that are exchanged between the user, the CDS, and the domain administrators. If needed, A may also ask for valid signatures on messages of its choice through a signing oracle.
- Step 3.
- At the end of the game, A outputs a message–signature pair and claims that it is a valid message from a specific honest entity in the system.
- Step 4.
- The adversary A wins this game if the signature is accepted as a valid signature of that honest entity, but the pair was never produced by this honest entity and was never returned by the signing oracle.
4.3. Process of Proposed RBAC Scheme
4.3.1. Setup
- Step 1.
- Each DA generates its parameters. For domain A, selects a prime , elliptic curve groups , a bilinear map , generators , and hash functions
- Step 2.
- chooses the master secret key and computes the master public key .
- Step 3.
- computes the IBS signing key and the IBE decryption key , where and .
- Step 4.
- Public parametersare published. Also, performs the Trusted Setup process described in Section 3.1.2 over and publishes . does the same process in its domain.
4.3.2. Registration
- User Registration
- Step 1.
- User sends identity to and .
- Step 2.
- computes the IBS signing key and the IBE decryption key , where and .
- Step 3.
- sends securely to .
- Step 4.
- and initialize their shared hash chain value according to the hash chain setup described in Section 3.1.2.
- Role Assignment
- Step 1.
- User requests role from .
- Step 2.
- If the request is approved, computes the role signing key and sends it to .
4.3.3. Access Policy Generation
- Step 1.
- defines the policy of its domain. A policy is the set of internal roles that can send data or requests to one external domain. This policy is written as . Also, generates the domain access list , where are domain identifiers.
- Step 2.
- does the same process in its domain.
- Step 3.
- Each DA sets the access policy and to its own CDS.
4.3.4. Cross-Domain Data Request
- (i)
- User-side role proof generation.
- Step 1.
- makes the request . checks the egress policy and obtains the allowed set .
- Step 2.
- finds a role that he owns and that is in . Then, makes the input vector for zk-SNARK.
- is the constant public input.
- are public inputs, which are the hash values of each role: for .
- and are private inputs. We write for a fixed public encoding that maps a group element in to field elements in when it is used as a zk-SNARK witness. Also, is the index of role in and is the scalar representation of .
- Step 3.
- makes the proof components from the vector a:Here, the hash chain is bound to the proof by settingwhere is the public input that represents the current request.
- Step 4.
- makes the proof and generates and .
- Step 5.
- Then, sends to .
- (ii)
- Verification and forwarding by .
- Step 1.
- receives the package and verifies . It makes the public input vector from its own and the chain . Then, it verifies by checking
- Step 2.
- After the verification result is true, and update the hash chain value . Then, makes the sanitized requestsigns it as , and sends to .
- Step 3.
- verifies . Then, it checks its local policy to decide whether the request from domain A is allowed. If the policy denies the request, the process stops at this point.
- (iii)
- Response processing and sanitization by .
- Step 1.
- If the policy allows the request, forwards the request to the data owner .
- Step 2.
- encrypts with and sends the ciphertext to .
- Step 3.
- computes , where f_remove_metadata is a function that removes metadata of .
- Step 4.
- generates a symmetric key and encrypts . Then, it encrypts as .
- Step 5.
- signs and sends to .
- Step 6.
- verifies . If it is valid, it decrypts and obtains .
- Step 7.
- checks for malicious code. If the data is not malicious, it computes and sends it to .
- Step 8.
- Finally, decrypts with and obtains .
5. Analysis of Proposed RBAC
5.1. Robust Role Privacy
5.2. Prevent Replay Attack
5.3. Prevent MitM
5.4. Computational Cost
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Sepúlveda-Rodríguez, L.E.; Garrido, J.L.; Chavarro-Porras, J.C.; Sanabria-Ordonez, J.A.; Candela-Uribe, C.A.; Rodríguez-Domínguez, C.; Guerrero-Contreras, G. Study-based systematic mapping analysis of cloud technologies for leveraging it resource and service management: The case study of the science gateway approach. J. Grid Comput. 2021, 19, 41. [Google Scholar] [CrossRef]
- Lu, J.; Zhang, Y.; Yang, L.; Jin, S. Inter-cloud secure data sharing and its formal verification. Trans. Emerg. Telecommun. Technol. 2021, 33, e4380. [Google Scholar] [CrossRef]
- Farooque, M.; Patidar, K.; Kushwah, R.; Saxena, G. An efficient data security mechanism with data sharing and authentication. ACCENTS Trans. Inf. Secur. 2020, 5, 26–31. [Google Scholar] [CrossRef]
- Masud, M.; Hossain, M.S. Secure data-exchange protocol in a cloud-based collaborative health care environment. Multimed. Tools Appl. 2018, 77, 11121–11135. [Google Scholar] [CrossRef]
- Nguyen, T.D.; Gondree, M.A.; Shifflett, D.J.; Khosalim, J.; Levin, T.; Irvine, C. A cloud-oriented cross-domain security architecture. In Proceedings of the 2010-MILCOM 2010 Military Communications Conference, San Jose, CA, USA, 31 October–3 November; 2010; pp. 441–447. [Google Scholar] [CrossRef][Green Version]
- Aguilera, L.; Jacobson, D. DECA: DoD Enterprise Cloud Architecture Concept for Cloud-Based Cross Domain Solutions. In Proceedings of the 2021 4th Artificial Intelligence and Cloud Computing Conference, Kyoto, Japan, 17–19 December 2021. [Google Scholar] [CrossRef]
- Daughety, N.; Pendleton, M.; Xu, S.; Njilla, L.L.; Franco, J. vCDS: A Virtualized Cross Domain Solution Architecture. In Proceedings of the MILCOM 2021-2021 IEEE Military Communications Conference (MILCOM), San Diego, CA, USA, 29 November–2 December; 2021; pp. 61–68. [Google Scholar] [CrossRef]
- Tinker, C.; Millar, K.; Kaminsky, A.; Kurdziel, M.; Lukowiak, M.; Radziszowski, S. Exploring the Application of Homomorphic Encryption to a Cross Domain Solution. In Proceedings of the MILCOM 2019-2019 IEEE Military Communications Conference (MILCOM), Norfolk, VA, USA, 12–14 November 2019; pp. 1–6. [Google Scholar] [CrossRef]
- Heckman, M.; Schell, R.; Reed, E.E. A multi-level secure file sharing server and its application to a multi-level secure cloud. In Proceedings of the MILCOM 2015-2015 IEEE Military Communications Conference, Tampa, FL, USA, 26–28 October 2015; pp. 1224–1229. [Google Scholar] [CrossRef]
- Arvay, R.J. Safety of Mixed Model Access Control in a Multilevel System. Ph.D. Thesis, Naval Postgraduate School, Monterey, CA, USA, 2014. [Google Scholar]
- Wang, P.B.; Li, K.; Shi, R.H.; Shao, B. VC-DCPS: Verifiable Cross-Domain Data Collection and Privacy-Persevering Sharing Scheme Based on Lattice in Blockchain-Enhanced Smart Grids. IEEE Internet Things J. 2023, 10, 12449–12461. [Google Scholar] [CrossRef]
- Liu, A.; Chen, F. Privacy and Integrity Preserving Computation in Distributed Systems; Michigan State University: East Lansing, MI, USA, 2011; p. 184. [Google Scholar]
- Akuthota, A.K. Role-Based Access Control (RBAC) in Modern Cloud Security Governance: An In-depth Analysis. Int. J. Sci. Res. Comput. Sci. Eng. Inf. Technol. 2025, 11, 45–52. [Google Scholar] [CrossRef]
- Rahman, M.U. Scalable Role-based Access Control Using The EOS Blockchain. arXiv 2020, arXiv:2007.02163. [Google Scholar] [CrossRef]
- Alam, M.; Emmanuel, N.; Khan, T.; Xiang, Y.; Hassan, H. Garbled role-based access control in the cloud. J. Ambient. Intell. Humaniz. Comput. 2018, 9, 1153–1166. [Google Scholar] [CrossRef]
- Zhou, X.; Liu, J.; Liu, W.; Wu, Q. Anonymous role-based access control on e-health records. In Proceedings of the 11th ACM on Asia Conference on Computer and Communications Security, Xi’an, China, 30 May–3 June; 2016; pp. 559–570. [Google Scholar]
- Gu, H.; Gu, D.; Xie, W. Efficient pairing computation on elliptic curves in Hessian form. In Proceedings of the International Conference on Information Security and Cryptology, Athens, Greece, 26–28 July 2010; Springer: Berlin/Heidelberg, Germany, 2010; pp. 169–176. [Google Scholar]
- Boneh, D.; Franklin, M. Identity-based encryption from the Weil pairing. In Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 19–23 August 2001; Springer: Berlin/Heidelberg, Germany, 2001; pp. 213–229. [Google Scholar]
- Kiltz, E.; Neven, G. Identity-based signatures. In Identity-Based Cryptography; IOS Press: Amsterdam, The Netherlands, 2009; pp. 31–44. [Google Scholar]
- Parno, B.; Howell, J.; Gentry, C.; Raykova, M. Pinocchio: Nearly practical verifiable computation. Commun. ACM 2016, 59, 103–112. [Google Scholar] [CrossRef]
- Groth, J. On the size of pairing-based non-interactive arguments. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, Vienna, Austria, 8–12 May 2016; Springer: Berlin/Heidelberg, Germany, 2016; pp. 305–326. [Google Scholar]
- Kim, J.; Lee, J.; Oh, H. Simulation-extractable zk-SNARK with a single verification. IEEE Access 2020, 8, 156569–156581. [Google Scholar] [CrossRef]
- Saxena, U.R.; Alam, T. Role based access control using identity and broadcast based encryption for securing cloud data. J. Comput. Virol. Hacking Tech. 2022, 18, 171–182. [Google Scholar] [CrossRef]
- Sultan, N.H.; Varadharajan, V.; Zhou, L.; Barbhuiya, F.A. A role-based encryption (rbe) scheme for securing outsourced cloud data in a multi-organization context. IEEE Trans. Serv. Comput. 2022, 16, 1647–1661. [Google Scholar] [CrossRef]
- Xu, J.; Yu, Y.; Meng, Q.; Wu, Q.; Zhou, F. Role-based access control model for cloud storage using identity-based cryptosystem. Mob. Netw. Appl. 2021, 26, 1475–1492. [Google Scholar] [CrossRef]
- Zhang, Y.; Chen, L.; Zhu, Y.; Kong, X. Privacy-Enhanced Role-Based Access Control for IoT Systems. IEEE Internet Things J. 2025, 12, 27269–27279. [Google Scholar] [CrossRef]

| Parameter | Description | Parameter | Description |
|---|---|---|---|
| TA | Trusted authority | P | Prover |
| V | Verifier | CRS | Common Reference String |
| Proof | All wire values of the circuit | ||
| Target polynomial | Quotient polynomial | ||
| IR | Initial root | Initial root of identity | |
| Hash chain for identity | p | Prime order of the groups | |
| Source groups of prime order p | Generators of and | ||
| Target group of prime order p | H | Hash function | |
| Left-wire polynomial | Right-wire polynomial | ||
| Output-wire polynomial |
| Pinocchio [20] | Groth16 [21] | Kim et al. [22] | Proposed zk-SNARK | |
|---|---|---|---|---|
| Trusted Setup | O | O | O | O |
| Prove complexity | ||||
| Verification complexity | ||||
| Proof size | , 8 elements | , 3 elements | , 3 elements | , 3 elements |
| Non-malleability | X | X | O | O |
| Prevent replay attack | X | X | X | O |
| Parameter | Description | Parameter | Description |
|---|---|---|---|
| Administrator of domain i | Cross-domain solution of domain i | ||
| User of domain i | Role | ||
| Requested data | Security parameter | ||
| Order of cyclic groups in domain i | ’s master private key | ||
| Cyclic groups in domain i | ’s master public key | ||
| Generators of | Hash functions for domain i | ||
| User’s IBS signing key for identity | User’s IBE decryption key for identity | ||
| User’s IBS signing key for role | One-time symmetric key for secure envelope | ||
| Signing key of | Verification key of | ||
| zk-SNARK Common Reference String | zk-SNARK proof of role possession | ||
| Symmetric encryption function | Symmetric decryption function | ||
| Digital signature generation function | Digital signature verification function | ||
| IBE encryption function | IBE decryption function |
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. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Yoon, S.C.; Lee, D.G.; Kim, S.-H.; Lee, I.-Y. A Study on zk-SNARK-Based RBAC Scheme in a Cross-Domain Cloud Environment. Appl. Sci. 2025, 15, 13095. https://doi.org/10.3390/app152413095
Yoon SC, Lee DG, Kim S-H, Lee I-Y. A Study on zk-SNARK-Based RBAC Scheme in a Cross-Domain Cloud Environment. Applied Sciences. 2025; 15(24):13095. https://doi.org/10.3390/app152413095
Chicago/Turabian StyleYoon, Seong Cheol, Deok Gyu Lee, Su-Hyun Kim, and Im-Yeong Lee. 2025. "A Study on zk-SNARK-Based RBAC Scheme in a Cross-Domain Cloud Environment" Applied Sciences 15, no. 24: 13095. https://doi.org/10.3390/app152413095
APA StyleYoon, S. C., Lee, D. G., Kim, S.-H., & Lee, I.-Y. (2025). A Study on zk-SNARK-Based RBAC Scheme in a Cross-Domain Cloud Environment. Applied Sciences, 15(24), 13095. https://doi.org/10.3390/app152413095

