Attribute access control method supporting time-limited access, attribute dynamic management and policy update
By introducing timestamp encoding, chameleon hashing, and recursive attribute sets into the ABE scheme, the security issues of dynamic attribute management and policy updates are solved, time-limited access control and forward and backward security are achieved, and the flexibility and security of the system are improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- YUNNAN NORMAL UNIV
- Filing Date
- 2026-03-04
- Publication Date
- 2026-05-01
AI Technical Summary
Existing attribute-based encryption (ABE) schemes are difficult to implement in dynamic application scenarios, such as flexible addition and removal of attributes, dynamic adjustment of access policies, and time-limited access control of keys. They also lack forward and backward security, especially in terms of flexible adjustment of permissions and control of key expiration.
By introducing timestamp encoding parameters, chameleon hash parameters, and attribute list associated random parameters, a key structure that combines dynamic adjustability and secure verifiability is constructed. Time-limited access is achieved by embedding timestamp encoding, attribute revocation and addition are supported by chameleon hash values, attribute addition is performed using a recursive attribute set structure, and policy updates are achieved through local parameter updates, ensuring forward and backward security.
It achieves forward and backward security for attribute revocation and policy update, ensures forward security for attribute addition, improves system controllability and anti-abuse capability through time-limited access control, reduces computational and communication overhead, and is suitable for various dynamic authorization scenarios.
Smart Images

Figure CN121792243B_ABST
Abstract
Description
An attribute access control method that supports time-limited access, dynamic attribute management, and policy updates. Technical Field
[0001] This invention relates to an attribute access control method that supports time-limited access, dynamic attribute management, and policy updates, belonging to the field of information security technology. Background Technology
[0002] With the booming development of the digital economy, especially the widespread application of the Internet of Things and cloud computing, data volume is exploding, the demand for outsourced storage is increasing, and the importance of data privacy and security is becoming increasingly prominent. Attribute-based encryption (ABE), as an important technology for protecting outsourced data security, has been widely used in static environments. However, traditional ABE schemes still have many shortcomings in dynamic application scenarios, especially in terms of attribute updates, access policy updates, and key management flexibility. They struggle to effectively guarantee forward and backward security, and functionally cannot support flexible addition and removal of attributes, dynamic adjustment of access policies, and time-limited access control of keys.
[0003] In outsourced storage and multi-user access environments, key time-limited access mechanisms are crucial for ensuring the dynamic validity of access permissions. By embedding time encoding into keys, time-based access authorization and automatic expiration control can be implemented, thereby reducing management overhead while preventing the misuse of expired keys. However, existing ABE (Automatic Key Validation) schemes mostly focus on static key distribution and lack verifiable control over key expiration, leading to potential risks in situations such as long-term authorization or key leakage.
[0004] Furthermore, traditional ABE (Advanced Environment Optimization) also has shortcomings in dynamic attribute and policy management, particularly in its lack of consideration for forward and backward security. Forward security of attribute revocation means that after an attribute is revoked, a user cannot access data from before the revocation using the revoked attribute; backward security of attribute revocation means that after an attribute is revoked, a user cannot access data from after the revocation using the revoked attribute. Forward security of attribute addition requires that users cannot access data from before the addition using the newly added attribute, even if the newly added attribute meets the access policy requirements. Forward security of policy update means that after a policy update, newly authorized users cannot access data from before the policy update, and users who have lost permissions cannot access data from before the policy update; backward security of policy update means that after a policy update, users who have lost permissions cannot access updated data.
[0005] Currently, research has implemented functions such as attribute revocation, attribute addition, and policy update. For attribute revocation, KEK key encryption of binary key trees and the KUNodes algorithm are commonly used to support efficient revocation. For attribute addition, dynamic addition is achieved by constructing a binary attribute tree and combining it with key issuance, update, and re-encryption mechanisms. For policy updates, plaintext data is often protected through symmetric encryption, combined with an ABE (Automatic Encryption and Re-encryption) mechanism to complete the re-encryption and update of the policy. These technologies provide some support for access control in dynamic environments.
[0006] However, existing attribute revocation schemes generally assume that revocation means a complete loss of access rights, failing to adequately consider the practical need for flexible permission adjustments. For example, in scenarios involving employee promotions or job adjustments within certain organizations, even if a user has some attributes revoked due to the change in position, the system still needs to ensure that they meet existing access control policies within a reasonable scope. This critical requirement is often overlooked in existing schemes. Furthermore, current attribute revocation schemes generally cannot simultaneously guarantee forward and backward security, and attribute addition schemes also fail to achieve forward security. Existing policy update schemes struggle to support the dynamic addition, deletion, and modification of access policies and cannot simultaneously address the requirements of forward and backward security. Most schemes lack key expiration constraints, failing to prevent unauthorized use of expired keys.
[0007] In view of this, the present invention proposes an attribute access control method that supports time-limited access, dynamic attribute management, and policy updates. This method ensures forward and backward security for attribute revocation and policy updates, while achieving forward security for attribute addition and time-sensitive control for key access. It provides dynamic, secure, and scalable enhancements to any attribute-based access control system without altering the traditional encryption framework. Summary of the Invention
[0008] The purpose of this invention is to provide an attribute access control method that supports time-limited access, dynamic attribute management, and policy updates, aiming to solve the technical problems that the technology cannot support flexible addition and removal of attributes, dynamic adjustment of access policies, and time-limited access control of keys.
[0009] To achieve the above objectives, the technical solution of this invention is: an attribute access control method that supports time-limited access, dynamic attribute management, and policy updates. This method can realize dynamic operations of attribute revocation, attribute addition, and policy updates without changing the traditional encryption architecture, and introduces a key time-limited access mechanism to enhance the security and flexibility of the access control system. The specific steps are as follows:
[0010] Step 1: Set up four entities: Attribute Authorization Center, Cloud Server, Data Owner, and Data User. The Attribute Authorization Center generates the system public key and master key.
[0011] Step 2: The attribute authorization center uses the system public key, master key, and data user attribute list, and introduces three types of security parameters to generate data user keys and distribute them to the corresponding data users.
[0012] The first type of security parameter is a timestamp encoding parameter, which is used to implement time-limited access control for data user keys;
[0013] The second type of security parameter is the Chameleon Hash parameter, which is used to support attribute revocation operations. The attribute revocation operation is that when the data user's permissions change or the attribute becomes invalid, the attribute authorization center updates the Chameleon Hash parameter to revoke the data user's permissions.
[0014] The third type of security parameter is a random parameter associated with the attribute list, which is used to uniquely bind the data user's attribute list, thereby supporting the attribute addition operation. The attribute addition operation is that when a data user obtains a new attribute, the attribute authorization center constructs a recursive attribute set based on the attribute timestamp and completes the attribute addition by updating the data user key.
[0015] Step 3: The data owner uses the system public key and access policy to encrypt the plaintext data to obtain intermediate ciphertext. The chameleon hash value is embedded in the intermediate ciphertext, and the intermediate ciphertext is uploaded to the cloud server. The cloud server re-encrypts the intermediate ciphertext to obtain the final ciphertext.
[0016] Step 4: Data users who meet the decryption conditions use their data user keys to perform decryption operations on the final ciphertext to obtain plaintext data; wherein, meeting the decryption conditions means that the data user key is within its validity period, the chameleon hash value in the data user key is consistent with the chameleon hash value embedded in the intermediate ciphertext, and the data user's access rights have not been revoked.
[0017] Optionally, the first type of security parameter is a timestamp encoding parameter, used to implement time-limited access control for data user keys, specifically as follows:
[0018] When generating the data user key, embed the binary 0 encoding set T0 of the registration time, the binary 0 encoding set T1 of the expiration time, and the binary 1 encoding set T2 of the expiration time.
[0019] During decryption, the current time is converted to a 1 code and intersected with the binary 0 code set T1 of the expiration time. If the intersection is empty, the data user key is determined to be within its validity period and access is allowed. If the intersection is not empty, the data user key is determined to have expired and access is not allowed.
[0020] Optionally, when an attribute is revoked and the dynamic access strategy is no longer satisfied, a new chameleon hash value is generated, specifically:
[0021] First, select a security parameter. As input, construct a system that satisfies Two large prime numbers , ,in , Represent any non-zero positive integer, output common parameters ,in, Is the order as Multiplication cyclic group generator;
[0022] Then, select randomly. Calculate parameters Output hash public key Hash private key ;
[0023] Finally, choose the hash public key. Any message , any random number As input, output the chameleon hash value. , Indicates multiplication.
[0024] Optionally, if the dynamic access strategy is still satisfied after an attribute is revoked, a new chameleon hash value consistent with the original attribute set is generated, specifically:
[0025] Enter the hash private key random numbers ,information Breaking news And enable the use of messages and random numbers The generated hash value and the use of new messages and new random numbers The generated hash values are equal, specifically based on get Output a new random number ;
[0026] Using new random numbers Generate a new chameleon hash value that is consistent with the original hash value.
[0027] Optionally, the attribute addition is based on the relationship between the new attribute and the timestamp, and includes two addition methods:
[0028] Method 1: When a new attribute does not require an additional timestamp, or its additional timestamp is the same as the timestamp in the existing attribute set, the new attribute will be directly inserted into the existing attribute set, and the attribute set will be updated by updating the data user key parameter.
[0029] Method 2: When a new attribute needs to be appended with a new timestamp, and this timestamp is inconsistent with the timestamps in the existing attribute set, a recursive attribute set is constructed. Specifically, when a change in the attribute list is detected, the new attribute and its corresponding timestamp are extracted and independently bound to the original attribute set to form a new attribute subset. The binding process is implemented recursively. While keeping the original attribute combination unchanged, an attribute set corresponding one-to-one with its timestamp is generated for each new attribute, and the attribute set is updated by updating the data user key parameter.
[0030] Optionally, obtaining the intermediate ciphertext specifically involves:
[0031] First, randomly select from the cyclic group. ,choose The first 32 bits are used as the symmetric key for the AES algorithm, and the plaintext message is encrypted using AES_ECB mode. The result of symmetric encryption is denoted as ;
[0032] Secondly, use the CP-ABE algorithm for encryption. The data owner uses a preset access policy. ;
[0033] Then, generate a chameleon hash value. And embedded in the ciphertext;
[0034] Finally, output the intermediate ciphertext. ,in, These are parameters used to associate plaintext data. This is a parameter used to associate the public key. This is a parameter used to associate the public key and user attributes. These are parameters used to associate user attributes; the data owner will use the intermediate ciphertext. and access policies Send to the cloud server.
[0035] Optionally, obtaining the final ciphertext specifically involves:
[0036] First, the cloud server receives the access policy. Generate a new access policy Add "less than the predetermined timestamp" using the AND operation;
[0037] Secondly, randomly select from the cyclic group ,choose The first 32 bits are used as the symmetric key for the AES algorithm, and then re-encrypted using AES_ECB mode. The result after re-encryption is denoted as ;
[0038] Then, encrypt using the CP-ABE algorithm. Cloud servers use access policies ;
[0039] Finally, output the final ciphertext. ,in, Yes The new parameters after the update.
[0040] Optionally, the access policy supports dynamic updates. When the access policy changes, only the parameters related to the access policy need to be partially updated to obtain the final ciphertext, specifically:
[0041] The data owner updates the parameters used to associate user attributes and access policies. Generate new parameters ;
[0042] Cloud servers use symmetric keys Decryption get Randomly selected in the cyclic group , and select The first 32 bits are used as the symmetric key for encryption in the AES algorithm. The encrypted result is denoted as ;
[0043] Encryption using the CP-ABE algorithm Then, the new access policy is given through an AND operation. Add "less than the predetermined timestamp" to obtain the final ciphertext after the access policy change.
[0044] The beneficial effects of this invention are:
[0045] (1) The present invention achieves forward and backward security for attribute revocation and policy update, and also achieves forward security for attribute addition, thereby comprehensively preventing unauthorized access by users at different times or in different states;
[0046] (2) This invention achieves time-limited access control of keys through an embedded time coding mechanism, automatically determines the access validity period, and significantly improves the controllability and anti-abuse capability of the system.
[0047] (3) The present invention adopts local parameter update and chameleon hash technology, which eliminates the need for re-encryption or regeneration of global key, significantly reducing system computation and communication overhead and improving practicality;
[0048] (4) This invention does not rely on a specific encryption model and can be seamlessly integrated into the existing ABE architecture. It has good versatility and scalability and is suitable for various dynamic authorization scenarios such as cloud storage, Internet of Things, medical health, and education data management.
[0049] (5) This invention achieves a balance between security and system performance by organically combining time control, recursive attribute set and policy re-encryption mechanism, taking into account dynamism, flexibility and security. Attached Figure Description
[0050] Figure 1 is a flowchart of the steps of the present invention;
[0051] Figure 2 is a graph showing the relationship between the attribute withdrawal time of the present invention and the prior art under different numbers of attributes;
[0052] Figure 3 is a graph showing the relationship between the attribute addition time for different numbers of attributes in the present invention and the prior art.
[0053] Figure 4 is a graph showing the relationship between the update time of the access strategy under different numbers of attributes in this invention. Detailed Implementation
[0054] The present invention will be further described below with reference to the accompanying drawings and specific embodiments.
[0055] Example 1: As shown in Figure 1, an attribute access control method that supports time-limited access, dynamic attribute management, and policy updates includes the following steps:
[0056] Step 1: Set up four entities: Attribute Authorization Center, Cloud Server, Data Owner, and Data User. The Attribute Authorization Center generates the system public key and master key.
[0057] It should be understood that Step 1 of this embodiment aims to establish the operating environment for subsequent key generation and access control, and to prepare a standardized process for existing technologies.
[0058] Step 2: The attribute authorization center uses the system public key, master key, and data user attribute list, and introduces three types of security parameters to generate data user keys and distribute them to the corresponding data users.
[0059] Step 2.1: Randomly select an attribute list from the cyclic group and associate it with random parameters. ;
[0060] Step 2.2: Generate a Chameleon Hash Value Embedded in the key;
[0061] Step 2.3: To ensure timed access to the key, embed the binary 0 encoding set T0 of the registration time, the binary 0 encoding set T1 of the expiration time, and the binary 1 encoding set T2 of the expiration time into the key.
[0062] Alternatively, assuming a user registers on August 26th and the key expires on November 1st, then:
[0063] T0={"011101111","01111","1"};
[0064] T1={"10011001","1001101","100111","101","11"};
[0065] T2={“100110001”,“10011”, “1001”, “1”}.
[0066] Furthermore, to check if the key is valid, the first method simply converts the current time of the key provided by the user into a 1-code, and then finds the intersection with the 0-code of the expiration time, which is T1. If the intersection is empty, the key is valid; if the intersection is not empty, the key has expired, and an updated key is required for decryption. The second method embeds only the 0-code of the expiration time. Only when the intersection of the set of 1-codes for the current time and the set of 0-codes for the expiration time is empty, it means the key is valid and decryption can be performed. This predetermined expiration time enables time-limited access to the key.
[0067] Step 2.4: Set parameters , , , and Embedded in the key, i.e., the key ,in, These are parameters used to associate the master key. This is a parameter used to associate the public key. This is a parameter used to associate user attributes.
[0068] Specifically, among the three types of security parameters, the first type is the timestamp encoding parameter, which is used to implement time-limited access control of data user keys;
[0069] Specifically, when the data user key is generated, a binary 0 encoding set T0 of the registration time, a binary 0 encoding set T1 of the expiration time, and a binary 1 encoding set T2 of the expiration time are embedded.
[0070] During decryption, the current time is converted to a 1 code and intersected with the binary 0 code set T1 of the expiration time. If the intersection is empty, the data user key is determined to be within its validity period and access is allowed. If the intersection is not empty, the data user key is determined to have expired and access is not allowed.
[0071] It is understood that this embodiment uses the timestamp encoding parameter to embed a binary code set of registration time and expiration time into the key, thereby automatically determining the access validity period. When a user initiates an access request, the system matches the binary code of the current time with the time set in the key. If there is an intersection, it indicates that the key has expired, and access is denied; if there is no intersection, access is allowed. This mechanism achieves automatic determination of key validity and access restriction without requiring additional verification steps.
[0072] Specifically, among the three types of security parameters, the second type of security parameter is the Chameleon Hash parameter, which is used to support attribute revocation operations. The attribute revocation operation is that when the data user's permissions change or the attribute becomes invalid, the attribute authorization center updates the Chameleon Hash parameter to revoke the data user's permissions.
[0073] Specifically, the attribute authorization center can assign a unique chameleon hash value to each user, which is associated with the ciphertext and the user's key. When a user's attribute needs to be revoked, the attribute can be revoked by changing the chameleon hash value, rather than directly revoking the key. There are two scenarios when a user's attribute is revoked: first, the access policy is no longer met after the attribute is revoked, meaning the user no longer has access rights; second, the access policy is still met after the attribute is revoked, meaning the user still has access rights.
[0074] Optionally, in the first case: when an attribute is revoked and the dynamic access strategy is no longer satisfied, a new chameleon hash value is generated, specifically as follows:
[0075] First, select a security parameter. As input, construct a system that satisfies Two large prime numbers , ,in , Represent any non-zero positive integer, output common parameters ,in, Is the order as Multiplication cyclic group generator;
[0076] Then, select randomly. Calculate parameters Output hash public key Hash private key ;
[0077] Finally, choose the hash public key. Any message , any random number As input, output the chameleon hash value. , Indicates multiplication.
[0078] Specifically, in this embodiment, we assume the access policy is as follows: It is a "School of Information Science & Master's Student" user attribute. The user's profile was "School of Information Science, Master's Student, Full-time". After removing the "Master's Student" attribute, the user's profile becomes "School of Information Science & Full-time". At this point, the user no longer meets the access policy requirements and does not have access rights. In this case, a new Chameleon hash value is generated directly using the new attribute.
[0079] Optionally, in this embodiment, to avoid directly calculating large number multiplication and reduce computational complexity, a fast exponentiation algorithm is used when generating the chameleon hash value. This algorithm calculates the exponent quickly by splitting the exponent into binary numbers, thus reducing the time complexity from... Down to ,Will Write it in fast exponentiation form ,in, This represents fast exponentiation, which allows for the rapid generation of chameleon hash values.
[0080] Optionally, in the second case: when the attribute is revoked but the dynamic access strategy is still satisfied, a new chameleon hash value consistent with the original attribute set is generated, specifically as follows:
[0081] Enter the hash private key random numbers ,information Breaking news And enable the use of messages and random numbers The generated hash value and the use of new messages and new random numbers The generated hash values are equal, specifically based on get Output a new random number ;
[0082] Using new random numbers Generate a new chameleon hash value that is consistent with the original hash value.
[0083] Specifically, in this embodiment, we assume the access policy is as follows: It is a "School of Information Science & Master's Student" user attribute. The user's attribute is "School of Information Science, Master's Student, Full-time". After removing the "Full-time" attribute, the user's attribute becomes "School of Information Science & Master's Student". At this point, the user still meets the access policy and has the necessary permissions. In this case, a Chameleon Hash value consistent with the original attribute list is generated.
[0084] Furthermore, after determining the attribute revocation execution method in the above two situations, the attribute authorization center executes the attribute revocation: input the attribute to be revoked. The list of new attributes after removing an attribute Output the new chameleon hash value .
[0085] Understandably, in this embodiment, based on the chameleon hash parameter, the attribute authorization center embeds a chameleon hash value into the user key to identify the attribute status. When a revocation operation occurs, the system only needs to update the corresponding hash value to achieve attribute-level secure revocation, without needing to regenerate the global key or re-encrypt the data. This module can simultaneously ensure forward and backward security of attribute revocation: after revocation, the user cannot access the data before or after revocation, thereby effectively preventing abuse of permissions.
[0086] Specifically, among the three types of security parameters, the third type of security parameter is the attribute list association random parameter, which is used to uniquely bind the data user's attribute list, thereby supporting attribute addition operations; the attribute addition operation is that when a data user obtains a new attribute, the attribute authorization center constructs a recursive attribute set based on the attribute timestamp and completes the attribute addition by updating the data user key;
[0087] Optionally, the attribute addition is based on the relationship between the new attribute and the timestamp, and includes two addition methods:
[0088] Method 1: When a new attribute does not require an additional timestamp, or its additional timestamp is the same as the timestamp in the existing attribute set, the new attribute will be directly inserted into the existing attribute set, and the attribute set will be updated by updating the data user key parameter.
[0089] Specifically, in this embodiment, assuming the original attribute list is "123456, School of Information Science and Technology, August 26th", a new attribute "Master's Student" is added. Since the timestamp of the Master's Student attribute is equal to the timestamp of the student ID 123456, the updated attribute list is "123456, School of Information Science and Technology, Master's Student, August 26th". The corresponding expanded user attribute list is "123456, School of Information Science and Technology, Master's Student, TS 011101111, TS 01111, TS 1".
[0090] Method 2: When a new attribute needs to be appended with a new timestamp, and this timestamp is inconsistent with the timestamps in the existing attribute set, a recursive attribute set is constructed. Specifically, when a change in the attribute list is detected, the new attribute and its corresponding timestamp are extracted and independently bound to the original attribute set to form a new attribute subset. The binding process is implemented recursively. While keeping the original attribute combination unchanged, an attribute set corresponding one-to-one with its timestamp is generated for each new attribute, and the attribute set is updated by updating the data user key parameter.
[0091] Specifically, in this embodiment, the second method of addition typically occurs in cases of promotion or concurrent appointment to other positions. Suppose a teacher's attribute list was originally "{1234, School of Information Science, Doctoral Supervisor, August 26}", and on November 1st, they were promoted to Vice Dean. At this time, the attribute list is updated to "{1234, School of Information Science, Doctoral Supervisor, August 26, {Vice Dean, November 1st}}". To prevent data users from combining unnecessary attributes, such as combining the "Vice Dean" attribute with "August 26th", this embodiment uses a recursive attribute set to connect the newly added attribute with the corresponding timestamp. Therefore, the attribute list "{1234, School of Information Science, Doctoral Supervisor, August 26, {Vice Dean, November 1st}}" will be updated to "{{1234, School of Information Science, Doctoral Supervisor, August 26, {1234, School of Information Science, Vice Dean, November 1st}}". Different attribute sets use different timestamps during the key generation process. value.
[0092] Specifically, the Attribute Authorization Center performs attribute addition. You will need to enter a list of the new attributes after adding them. Output the updated key :
[0093] First, randomly select from the cyclic group. ;
[0094] Secondly, update the parameters used for the associated attributes. Generate new parameters ;
[0095] Then, calculate the time TS when the current attribute was added. The current addition time is October 27, 2024, so TS = October 27, 2024. After converting the current time to 1 encoding, TS = {"1001011", "100101", "1001", "1"}.
[0096] Finally, with the remaining components unchanged, the updated key for the critical components is returned. .
[0097] Understandably, this embodiment associates random parameters with the attribute list. When the system needs to add a new attribute for a user, it adopts a recursive attribute set structure, independently binding the new attribute to the timestamp to prevent attribute cross-combination. If the new attribute matches the timestamp of the original set, it is directly inserted; otherwise, the system automatically constructs an isolated bound subset. Attribute addition can be completed by locally updating the key parameters, ensuring that the new attribute is only valid for the data after it is added, thereby achieving forward security for attribute addition.
[0098] It is understandable that in Step 2 of this embodiment, during the key generation stage, the attribute authorization center introduces three types of security parameters on the basis of the traditional key structure, and constructs a key structure that combines dynamic adjustability and security verifiability. This provides basic support for subsequent attribute revocation, attribute addition and time-limited access operations, and can enhance the system's dynamic management and security control capabilities.
[0099] Step 3: The data owner uses the system public key and access policy to encrypt the plaintext data to obtain intermediate ciphertext. The chameleon hash value is embedded in the intermediate ciphertext, and the intermediate ciphertext is uploaded to the cloud server. The cloud server re-encrypts the intermediate ciphertext to obtain the final ciphertext.
[0100] Optionally, obtaining the intermediate ciphertext specifically involves:
[0101] First, randomly select from the cyclic group. ,choose The first 32 bits are used as the symmetric key for the AES algorithm, and the plaintext message is encrypted using AES_ECB mode. The result of symmetric encryption is denoted as ;
[0102] Secondly, use the CP-ABE algorithm for encryption. The data owner uses a preset access policy. ;
[0103] Then, generate a chameleon hash value. And embedded in the ciphertext, where, With the hash value in the key same;
[0104] Finally, output the intermediate ciphertext. ,in, These are parameters used to associate plaintext data. This is a parameter used to associate the public key. This is a parameter used to associate the public key and user attributes. These are parameters used to associate user attributes; the data owner will use the intermediate ciphertext. and access policies Send to the cloud server.
[0105] Optionally, obtaining the final ciphertext specifically involves:
[0106] First, the cloud server receives the access policy. Generate a new access policy Add "less than the predetermined timestamp" using the AND operation;
[0107] Specifically, in this embodiment, the access policy sent by the data owner It is "School of Information Science & Master's Supervisor". Newly generated access policy for the cloud server. The date is "School of Information Science & Master's Supervisor & TS < November 7, 2024". November 7 is a scheduled timestamp, meaning that the encrypted data can only be accessed before November 7.
[0108] Secondly, randomly select from the cyclic group ,choose The first 32 bits are used as the symmetric key for the AES algorithm, and then re-encrypted using AES_ECB mode. The result after re-encryption is denoted as ;
[0109] Then, encrypt using the CP-ABE algorithm. Cloud servers use access policies ;
[0110] Finally, output the final ciphertext. ,in, Yes The new parameters after the update.
[0111] Optionally, the access policy supports dynamic updates. When the access policy changes, only the parameters related to the access policy need to be partially updated to obtain the final ciphertext, specifically:
[0112] The data owner updates the parameters used to associate user attributes and access policies. Generate new parameters ;
[0113] Cloud servers use symmetric keys Decryption get Randomly selected in the cyclic group , and select The first 32 bits are used as the symmetric key for encryption in the AES algorithm. The encrypted result is denoted as ;
[0114] Encryption using the CP-ABE algorithm Then, the new access policy is given through an AND operation. Add "less than the predetermined timestamp" to obtain the final ciphertext after the access policy change.
[0115] It is understood that the access policy involved in this embodiment is adjustable, and the data owner can modify, add to, or delete the access policy as needed. When the access policy changes, it is not necessary to completely re-execute the initial encryption and cloud re-encryption process of the data; only the parameters related to the access policy need to be partially updated, thereby reducing system overhead and improving the flexibility of policy adjustment. Simultaneously, the data owner and the cloud server achieve flexible policy changes by re-encrypting the data and updating the access parameters. After the policy is updated, newly granted or deprived users cannot access the old data, and deprived users cannot access the updated data, thus maintaining data availability while achieving forward and backward security for policy updates.
[0116] It is understood that Step 3 of this embodiment can achieve dynamic updates of the access policy without completely re-encrypting the overall structure of the ciphertext. This mechanism can perform partial updates of the stored ciphertext while maintaining data security and integrity, thereby supporting real-time adjustment and flexible management of access control policies.
[0117] Step 4: Data users who meet the decryption conditions use their data user keys to perform decryption operations on the final ciphertext to obtain plaintext data; wherein, meeting the decryption conditions means that the data user key is within its validity period, the chameleon hash value in the data user key is consistent with the chameleon hash value embedded in the intermediate ciphertext, and the data user's access rights have not been revoked.
[0118] Optionally, this embodiment further introduces dual restrictions of permission validity and time validity on the basis of traditional decryption mechanisms to enhance the system's access security control:
[0119] First, decryption can only be performed when the user's access permissions have not been revoked and the preset access control policy is met;
[0120] Secondly, the system uses the timestamp encoding parameters embedded in the key ( , and Determine if the key is still valid. If the intersection of the current time's "1-encoded set" and the expiration time's "0-encoded set" is empty, the key is still valid; if the intersection is not empty, the key has expired and the decryption request is rejected.
[0121] It is understandable that Step 4 of this embodiment, through the above-mentioned constraints, achieves time-based access control and state-based permission revocation without changing the traditional decryption algorithm structure, thereby significantly improving the dynamic security of the decryption stage while maintaining compatibility.
[0122] To verify the performance advantages of the dynamic attribute access control method proposed in this invention in scenarios of attribute revocation, attribute addition, and policy update, this experiment designed a comparative test with the PAC-FIT and UCAAR-ABE schemes. The aim was to evaluate the time overhead, flexibility, and scalability of different schemes in the process of dynamic attribute management and policy adjustment, and to verify that this invention achieves more efficient performance while ensuring security.
[0123] Specifically, this experimental environment is implemented based on the Charm library, with a group level set to 512 bits. Comparison schemes include PAC-FIT, UCAAR-ABE, and the embodiments of this invention. Comparison metrics include: attribute revocation time overhead, attribute addition operation time overhead, and encryption and re-encryption time during policy update.
[0124] As shown in Figure 2, both the PAC-FIT and UCAAR-ABE schemes require re-encrypting the ciphertext and updating the user key component of the revoked attribute upon attribute revocation. The PAC-FIT scheme re-encrypts the ciphertext and updates the ciphertext component associated with the revoked attribute, while the UCAAR-ABE scheme also needs to update all ciphertext components of the access structure containing the revoked attribute, thus incurring higher overhead than the PAC-FIT scheme. This invention only requires regenerating the chameleon hash value, without re-encrypting the ciphertext. It has low and stable attribute revocation time overhead, while also flexibly considering the satisfaction of access policies after attribute revocation, offering greater flexibility and efficiency.
[0125] As shown in Figure 3, the PAC-FIT and UCAAR-ABE schemes require three steps when adding attributes: key distribution by a key authority, key encryption key update by the attribute authority, and key header re-encryption. The time overhead is essentially the same for both. In contrast, this invention only needs to update the key component corresponding to the newly added attribute and record the current time encoding. Therefore, its time overhead is significantly lower than that of the PAC-FIT and UCAAR-ABE schemes.
[0126] As shown in Figure 4, policy updates include two operations: expansion and contraction. This invention uses three structures—"AND," "OR," and "AND+OR"—for policy testing. In the policy expansion scenario, the initial policy contains 2 attributes, and then 10, 20, 30, 40, and 50 attributes are added sequentially. The ciphertext encryption time (including data user encryption and cloud server re-encryption) is calculated for each structure. As the number of attributes increases, the policy update time gradually increases, but the time overhead for all three structures is relatively low, approximately 80ms after adding 50 attributes. In the policy contraction scenario, the initial policy contains 52 attributes, and then 10, 20, 30, 40, and 50 attributes are gradually reduced, with the ciphertext encryption time calculated using the same three structures. As the number of attributes decreases, the policy update time shortens accordingly, dropping to approximately 11ms after reducing 50 attributes.
[0127] The experimental results above collectively demonstrate that the method of this invention significantly outperforms existing solutions in operations such as attribute revocation, attribute addition, and policy update. By introducing chameleon hashing and time coding mechanisms, lightweight ciphertext-level updates are achieved; and by adjusting the local key component and flexibly expanding and shrinking the policy, the system's high scalability and low-latency response capability are ensured. Without requiring re-encryption of the ciphertext, computational and communication overhead is effectively reduced, verifying the efficiency and practical value of this invention in dynamic access control environments.
[0128] In summary, this invention proposes an attribute access control method that supports time-limited access, dynamic attribute management, and policy updates. This method is compatible with any attribute-based access control system, requires no modification to traditional encryption and decryption processes, and achieves functional enhancement through parameter embedding and modular extension without altering the core key generation, encryption, and decryption algorithms of the original system. Specifically, this invention analyzes and designs specific schemes for flexible attribute revocation and addition, as well as efficient policy updates in a dynamic environment. Time-limited access automatically determines and controls access validity by embedding a binary encoding set of registration time and expiration time into the key. Attribute revocation achieves attribute-level secure revocation by embedding a chameleon hash value into the key and dynamically updating this hash value during revocation operations, thus ensuring forward and backward security of the attribute revocation process. Attribute addition adopts a recursive attribute set structure, independently binding the new attribute to its timestamp to prevent attribute cross-combination, and completing attribute addition through local key parameter updates, ensuring forward security of the addition operation. Policy updates support the addition, deletion, and modification of access policies, achieving dynamic adjustment of policies through policy parameter updates and re-encryption, while ensuring forward and backward security of the policy update process. Meanwhile, this method not only significantly improves the efficiency of access control while ensuring forward and backward security, but also demonstrates superior applicability and high flexibility in dynamic and complex application scenarios such as the Internet of Things. It can provide a unified dynamic expansion capability for existing attribute access control systems, realize time-limited key access, flexible attribute management and adaptive policy updates, thereby significantly improving the security, flexibility and scalability of the system.
[0129] The specific embodiments of the present invention have been described in detail above with reference to the accompanying drawings. However, the present invention is not limited to the above embodiments. Within the scope of knowledge possessed by those skilled in the art, various changes can be made without departing from the spirit of the present invention, and these changes and improvements should also be considered within the scope of protection of the present invention.
Claims
1. An attribute access control method supporting time-limited access, dynamic attribute management, and policy updates, characterized in that, The method includes the following steps: Step 1: Set up four entities: an attribute authorization center, a cloud server, a data owner, and a data user. The attribute authorization center generates a system public key and a master key. Step 2: The attribute authorization center uses the system public key, the master key, and the data user's attribute list, and introduces three types of security parameters to generate a data user key and distribute it to the corresponding data user. The first type of security parameter is a timestamp encoding parameter, used to implement time-limited access control for the data user key. The second type of security parameter is a chameleon hash parameter, used to support attribute revocation operations. The attribute revocation operation occurs when the data user's permissions change or the attribute becomes invalid; the attribute authorization center updates the chameleon hash parameter to revoke the data user's permissions. The third type of security parameter is an attribute list association random parameter, used to uniquely bind the data user's attribute list, thereby supporting attribute addition operations. The attribute addition operation occurs when a data user obtains a new attribute; the attribute authorization center constructs a recursive attribute set based on the attribute timestamp and completes the attribute addition by updating the data user key. Step 3: The data owner uses the system public key and access policy to... The data is encrypted to obtain intermediate ciphertext. A chameleon hash value is embedded in the intermediate ciphertext, and the intermediate ciphertext is uploaded to the cloud server. The cloud server re-encrypts the intermediate ciphertext to obtain the final ciphertext. Step 4: Data users who meet the decryption conditions use their data user keys to perform decryption operations on the final ciphertext to obtain plaintext data. The decryption conditions are that the data user key is within its validity period, the chameleon hash value in the data user key is consistent with the chameleon hash value embedded in the intermediate ciphertext, and the data user's access rights have not been revoked. The attribute addition is based on the relationship between the new attribute and the timestamp, including: when the new attribute does not need to be appended with a timestamp, or its timestamp is the same as the timestamp in the existing attribute set, the new attribute is directly inserted into the existing attribute set, and the attribute set is updated by updating the data user key parameters; when the new attribute needs to be appended with a new timestamp, and the timestamp is inconsistent with the timestamp in the existing attribute set, the new attribute and its corresponding timestamp are extracted. While keeping the original attribute combination unchanged, an attribute subset corresponding to each timestamp is recursively constructed, and the attribute set is updated by updating the data user key parameters.
2. The attribute access control method supporting time-limited access, dynamic attribute management, and policy updates according to claim 1, characterized in that, The first type of security parameter is a timestamp encoding parameter, which is used to implement time-limited access control for data user keys. Specifically, when the data user key is generated, a binary 0 encoding set T0 of the registration time, a binary 0 encoding set T1 of the expiration time, and a binary 1 encoding set T2 of the expiration time are embedded. During decryption, the current time is converted into a 1 encoding and an intersection operation is performed with the binary 0 encoding set T1 of the expiration time. If the intersection is empty, it is determined that the data user key is within the validity period and access is allowed. If the intersection is not empty, it is determined that the data user key has expired and access is not allowed.
3. The attribute access control method supporting time-limited access, dynamic attribute management, and policy updates according to claim 1, characterized in that, When an attribute is revoked and the dynamic access policy is no longer satisfied, a new Chameleon hash value is generated. Specifically, first, a security parameter is selected. As input, construct a system that satisfies Two large prime numbers 、 ,in , Represent any non-zero positive integer, output common parameters ,in, Is the order as Multiplication cyclic group The generator; then, randomly select Calculate parameters Output hash public key Hash private key Finally, select the hash public key. Any message , any random number As input, output the chameleon hash value. , Indicates multiplication.
4. The attribute access control method supporting time-limited access, dynamic attribute management, and policy updates according to claim 3, characterized in that, If the dynamic access policy is still satisfied after an attribute is revoked, a new Chameleon hash value consistent with the original attribute set is generated. Specifically, this involves inputting the hash private key. random numbers ,information Breaking news And enable the use of messages and random numbers The generated hash value and the use of new messages and new random numbers The generated hash values are equal, specifically based on get Output a new random number ; Using new random numbers Generate a new chameleon hash value that is consistent with the original hash value.
5. The attribute access control method supporting time-limited access, dynamic attribute management, and policy updates according to claim 1, characterized in that, The process of obtaining the intermediate ciphertext involves: first, randomly selecting from the cyclic group... ,choose The first 32 bits are used as the symmetric key for the AES algorithm, and the plaintext message is encrypted using AES_ECB mode. The result of symmetric encryption is denoted as Secondly, use the CP-ABE algorithm for encryption. The data owner uses a preset access policy. ; Then, generate a chameleon hash value. And embed it into the ciphertext; finally, output the intermediate ciphertext. ,in, These are parameters used to associate plaintext data. This is a parameter used to associate the public key. This is a parameter used to associate the public key and user attributes. These are parameters used to associate user attributes; the data owner will use the intermediate ciphertext. and access policies Send to the cloud server.
6. The attribute access control method supporting time-limited access, dynamic attribute management, and policy updates according to claim 5, characterized in that, The process of obtaining the final ciphertext specifically involves: First, the cloud server receives the access policy... Generate a new access policy First, add "less than the predetermined timestamp" using the AND operation; second, randomly select from the cyclic group. ,choose The first 32 bits are used as the symmetric key for the AES algorithm, and then re-encrypted using AES_ECB mode. The result after re-encryption is denoted as Then, encrypt using the CP-ABE algorithm. Cloud servers use access policies Finally, output the final ciphertext. ,in, Yes The new parameters after the update.
7. The attribute access control method supporting time-limited access, dynamic attribute management, and policy updates according to claim 6, characterized in that, The access policy supports dynamic updates. When the access policy changes, only the parameters related to the access policy need to be partially updated to obtain the final ciphertext. Specifically, the data owner updates the parameters used to associate user attributes and access policies. Generate new parameters ; Cloud servers use symmetric keys Decryption get Randomly selected in the cyclic group , and select The first 32 bits are used as the symmetric key for encryption in the AES algorithm. The encrypted result is denoted as Encryption using the CP-ABE algorithm Then, the new access policy is given through an AND operation. Add "less than the predetermined timestamp" to obtain the final ciphertext after the access policy change.
Citation Information
Patent Citations
Cloud storage outsourced decryption attribute-based encryption method capable of limiting access times
CN109639677A
Partial strategy hiding access control method and system and wireless communication system
CN111695095A