CN113162907A - Attribute-based access control method and system based on block chain - Google Patents
Attribute-based access control method and system based on block chain Download PDFInfo
- Publication number
- CN113162907A CN113162907A CN202110230381.2A CN202110230381A CN113162907A CN 113162907 A CN113162907 A CN 113162907A CN 202110230381 A CN202110230381 A CN 202110230381A CN 113162907 A CN113162907 A CN 113162907A
- Authority
- CN
- China
- Prior art keywords
- attribute
- data
- access control
- transaction
- attributes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000009826 distribution Methods 0.000 claims abstract description 9
- 230000003993 interaction Effects 0.000 claims abstract description 9
- 238000013475 authorization Methods 0.000 claims description 18
- 230000006870 function Effects 0.000 claims description 13
- 230000008859 change Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 description 13
- 238000003860 storage Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000005336 cracking Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
The invention belongs to the technical field of information, and discloses an attribute-based access control method and system based on a block chain, wherein the attribute-based access control method comprises the following steps: each device is described by attributes defined in the system, and an attribute authority can distribute corresponding attributes for the devices according to the identity or the capability of the devices; while using the blockchain to record the distribution of attributes; a public and credible distributed account book for recording attribute transaction is maintained between attribute authorities; two parties participating in data interaction can complete the access control function only by performing some simple signature and hash operations. The attribute-based access control system comprises: intelligent Internet of things equipment; the attribute authority is an authorizer of the attribute; and (5) block chains. The invention can ensure the legal access and the data safety and avoid data leakage; the invention has strong flexibility of access control and strong expandability; meanwhile, the invention can save cost.
Description
Technical Field
The invention belongs to the technical field of information, and particularly relates to an attribute base access control method and system based on a block chain.
Background
At present, the rapid increase of the number of devices in the internet of things brings new security risks and challenges to the internet of things system. Because the internet of things devices are widely distributed, strict security control is difficult to implement on the internet of things devices, and the internet of things devices are extremely vulnerable to various malicious attacks from the outside. Internet of things devices typically store a lot of valuable and sensitive data, so it is essential to protect internet of things devices from unauthorized access, as this often results in serious data leakage. As is well known, access control is one of the important techniques for securing data. Conventional access control techniques, such as autonomous access control (DAC), identity-based access control (IBAC), are not suitable for application in internet of things systems. Because of the large device cardinality in the internet of things, the large number of unknown identities makes it almost impossible for internet of things systems to build Access Control Lists (ACLs) for everyone. Another common technique forces access control (MAC) to be performed, usually under the control of a central administrator, which makes the system a single point of failure problem. Since the devices of the internet of things are widely distributed and may belong to different management organizations due to different positions or functions, a centralized access control mode is not suitable for the internet of things system.
Blockchains are another popular technology of interest to technology macros and enterprises. The essence of the method is that the method is an open and transparent distributed ledger, and the transaction between two parties is recorded efficiently in a verifiable mode. Once the data is uplinked, it cannot be tampered with unless a new consensus can be achieved between the nodes. The combination of the internet of things technology and the block chain technology is a trend with great development prospect, and the overall cost of the internet of things system is expected to be reduced while the safety is ensured. The blockchain can help the internet of things to establish a distributed, trusted and publicly verifiable database, so that billions of connectable devices can realize distributed trust through the blockchain.
The existing common access control methods mainly include the following methods: (1) access control is performed by using simple identity authentication methods such as a one-time password and a login password, and under the condition, an attacker can acquire corresponding authority of the platform by adopting brute force cracking or vulnerability attack and the like, so that data leakage is caused. (2) Authorization is implemented using a centralized authority and based on OAuth protocol. There is a lot of literature showing that it is almost impossible to run all OAuth logic in resource constrained devices, because the communication and computational overhead of OAuth protocols are too high for them. (3) Role-based access control (RBAC), a commonly used method for granting access rights to authorized users, grants users specific rights based on their role in the system. However, this approach is not suitable for internet of things systems, mainly because this type of access control is not flexible and scalable, and once assigned a role, can only access data in a fixed manner.
Through the above analysis, the problems and defects of the prior art are as follows:
(1) in the prior art, access control is performed by using simple identity authentication methods such as a one-time password and a login password, and under the condition, an attacker can acquire corresponding authority of a platform in modes such as brute force cracking or vulnerability attack, so that data leakage is caused.
(2) In resource-constrained devices, all OAuth logic cannot be run because the communication overhead and the computation overhead of the OAuth protocol are too high.
(3) The use of role-based access control in the prior art is not suitable for internet of things systems, mainly because this type of access control is not flexible enough and scalable and once assigned a role, can only access data in a fixed manner.
The difficulty in solving the above problems and defects is: the quantity and the scale of the equipment of the Internet of things are large, and the distribution range is wide, so that the interaction between the equipment is more complicated under the influence of different safety requirements and strategies. The internet of things has various types of equipment and different operating environments, and a set of general security strategy or model is difficult to develop to ensure the security of the network. The internet of things equipment generally has limited computing power and energy supply, and many traditional and mature security algorithms or protocols cannot be effectively applied to the internet of things equipment due to high computing overhead. Traditional internet of things systems require a centralized data center to collect, process and store data, which makes the data face serious privacy and security challenges. The centralized structure exposes the system to the risk of single point failure, and the data owner loses direct control over the data because the data is stored in the data center and not locally at the user end.
The significance of solving the problems and the defects is as follows: by solving the problems, the reliability of data storage of the Internet of things and the safety of data sharing can be improved to a certain degree, and the development of the Internet of things industry can be greatly promoted.
Disclosure of Invention
Aiming at the problems in the prior art, the invention provides an attribute-based access control method and system based on a block chain.
The invention is realized in such a way that a block chain-based attribute-based access control method comprises the following steps:
step one, each device is described by attributes defined in the system, and an attribute authority can distribute corresponding attributes for the devices according to the identity or the capability of the devices; while using the blockchain to record the distribution of attributes;
the attribute authority need only manage all the attributes defined in the system and distribute the attribute private key to the users having the corresponding attributes. This approach can effectively simplify access management, since the number of attributes is much less than the number of users in the system, which can greatly improve the efficiency and performance of the system.
Step two, a public and credible distributed account book for recording attribute transaction is maintained between attribute authorities;
the essence of the block chain is that a publicly verifiable distributed shared database is maintained collectively by means of decentralization and distrust, and data on the chain is effectively guaranteed to be not falsified and forged through various cryptographic algorithms, so that the problem of single-point failure of a traditional Internet of things access control scheme can be solved by means of the block chain, and the reliability of data storage in the Internet of things system is improved.
And step three, the two parties participating in the data interaction can complete the access control function only by performing some simple signature and hash operations.
The scheme provided by the invention only enables two communication parties to perform some simple signature and hash operations, so that the scheme provided by the invention can meet the requirements of insufficient computing capacity and energy supply of equipment in the Internet of things.
Further, in the first step, only the attribute set matched with the access policy is owned, and the access right is owned.
Further, in the second step, once recorded, the data in the block cannot be tampered, and anyone queries the record on the blockchain when needed.
Another object of the present invention is to provide an attribute-based access control system for implementing the block chain-based attribute-based access control method, the attribute-based access control system comprising:
the intelligent Internet of things equipment is responsible for collecting, processing and sharing data in the Internet of things system; the verification of the transaction is not participated, and only the reading authority of the block chain is possessed;
the attribute authority is an attribute authorizer and is also a manager of the block chain; each device needs to complete registration in an attribute authority before entering the system;
the block chain is a string of blocks connected by a hash function; each block contains two parts: a block head and a block body.
Further, the intelligent internet of things device does not participate in verification of the transaction, and the reading right of the block chain is specifically as follows:
obtaining access authorization of a data owner before sharing data, and proving the required permission for the data owner by using the attribute authorized by an attribute authorization mechanism;
the data owner allows the data consumer to access the data only if the attributes the data consumer has satisfy the access policy requirements set by the data owner.
Further, the attribute authority firstly distributes a pair of public and private keys for each managed device based on identity cryptography, and the public and private keys are used for performing mutual authentication and key agreement with other devices;
then, according to the identity, the characteristic or the role of each device, the device is authorized with proper attributes; the authorization of the attribute is recorded in a blockchain in a transaction form and serves as a consensus node of a alliance chain, an attribute authority puts the transaction into a transaction pool of the attribute authority after the transaction is generated, and the transaction is written into the blockchain after the attribute authority agrees with other attribute authorities;
once successfully logged, the data cannot be tampered unless a new consensus is reached between the consensus nodes; the consensus node can become a Byzantine node due to various malicious attacks, the proposed scheme allows a maximum of (n-1)/3 nodes to be Byzantine nodes, n being the total number of attribute authorities; each attribute authority has a pair of public and private keys, the public key is used for generating own address, the private key is used for signing the transaction, and each attribute authority keeps the private key properly.
Further, all transaction information contained in the block forms a block body, and a block head contains a hash value of a previous block head, a timestamp and a Merkle root of transaction data;
the blocks are connected in sequence to finally form a chain; the Merkle root is used for efficiently verifying the integrity of transaction data; the time stamp is used for displaying the time of block generation and ensuring that the blocks can be arranged in time sequence; the hash value of the last chunk header contains all the information associated with the chunk, ensuring the integrity of the chunk data.
Further, if some transaction data in the previous block is maliciously tampered, the Merkle root of the transaction data in the block will also change, thereby causing the hash value of the block head to change; the change is iteratively expanded to all subsequent blocks, and finally a cross chain is formed;
each block of zones is formed by attribute transactions packaged by the verifier from the transaction pool, one attribute transaction represents the authorization of the attribute authorization mechanism to the attribute, and the attribute is assigned to the target address.
By combining all the technical schemes, the invention has the advantages and positive effects that: the invention provides a new access control scheme based on attributes for an Internet of things system. The system no longer needs to create Access Control Lists (ACLs) or assign roles for each user. Each device may be described by attributes defined in the system for which the attribute authority will distribute the corresponding attributes according to their identity or capabilities. Only the set of attributes matching the access policy is owned for access rights. While the distribution of attributes is recorded using blockchains. The attribute authorities commonly maintain a public and credible distributed ledger recording attribute transactions. Once recorded, the data in the block cannot be tampered with, and anyone can query the records on the blockchain as needed. And moreover, the calculation of an access control protocol in the specific construction of the scheme is simplified, and both parties participating in data interaction can complete the access control function only by performing some simple signature and hash operations, so that the scheme is more suitable for equipment with limited computing capacity and energy supply in an Internet of things system. The invention can ensure the legal access and the data safety and avoid data leakage; the invention has strong flexibility of access control and strong expandability; meanwhile, the invention can save cost.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the embodiments of the present application will be briefly described below, and it is obvious that the drawings described below are only some embodiments of the present application, and it is obvious for those skilled in the art that other drawings can be obtained from the drawings without creative efforts.
Fig. 1 is a flowchart of an attribute-based access control method based on a block chain according to an embodiment of the present invention.
Fig. 2 is a schematic structural diagram of an attribute-based access control system according to an embodiment of the present invention.
Fig. 3 is a schematic diagram of a working process of a PBFT protocol according to an embodiment of the present invention.
Fig. 4 is a schematic diagram of an access control protocol implementation procedure between Alice and Bob according to an embodiment of the present invention.
In the figure: 1. intelligent Internet of things equipment; 2. an attribute authority; 3. and (5) block chains.
Fig. 5 is a graph illustrating the average analysis results of thirty experiments provided by the embodiment of the present invention.
Fig. 6 is a schematic diagram illustrating the storage overhead of the access policy set by the device in the system according to the complexity and the fine granularity of the access policy, and is proportional to the number of attributes involved in the access policy.
Fig. 7 is a schematic diagram of the storage overhead of the session key provided by the embodiment of the present invention being proportional to the number of communication participants.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail with reference to the following embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
In view of the problems in the prior art, the present invention provides a block chain-based attribute-based access control method and system, which are described in detail below with reference to the accompanying drawings.
As shown in fig. 1, a method for controlling access to a property base based on a block chain according to an embodiment of the present invention includes:
s101: each device is described by attributes defined in the system, and an attribute authority can distribute corresponding attributes for the devices according to the identity or the capability of the devices; while the distribution of attributes is recorded using blockchains.
S102: the attribute authorities commonly maintain a public and credible distributed ledger recording attribute transactions.
S103: two parties participating in data interaction can complete the access control function only by performing some simple signature and hash operations.
Those skilled in the art can also implement the method by using other steps, and the method for controlling access based on a block chain according to the present invention shown in fig. 1 is only one specific embodiment.
In S101, only the attribute set matching the access policy is owned, and the access right is owned.
In S102, once recorded, the data in the block cannot be tampered, and anyone can query the record on the block chain as needed.
As shown in fig. 2, an attribute-based access control system provided in an embodiment of the present invention includes:
the intelligent Internet of things equipment 1 is responsible for collecting, processing and sharing data in the Internet of things system. The verification of the transaction is not participated, and only the read authority of the block chain is possessed. In order to ensure legitimate access and security of data, data consumers need to obtain access authorization from the data owner before sharing the data. The data consumer uses the attributes authorized by the attribute authority to prove to the data owner the required rights of ownership. The data owner allows the data consumer to access the data only if the attributes the data consumer owns satisfy the access policy requirements set by the data owner. Data consumers are not trusted because they would be in tandem with each other, driven by the benefits, when they do not each have a set of attributes that satisfy the access policy set by the data owner, and may even attempt to maliciously tamper with the data on the blockchain or interfere with the process of the attribute authority reaching consensus.
The attribute authority 2 is the authority of the attribute and is also the manager of the blockchain. Each device needs to complete registration with the attribute authority before entering the system. The attribute authority firstly distributes a pair of public and private keys for each managed device based on identity cryptography, and the public and private keys are used for mutual authentication and key agreement with other devices. Each device would then be authorized with the appropriate attributes based on its identity, characteristics, or role. The authorization of the attribute is recorded in the blockchain in the form of transaction, and is used as a consensus node of the alliance chain, the attribute authority firstly puts the transaction into a transaction pool after the transaction is generated, and the transaction is written into the blockchain after the agreement is achieved with other attribute authorities. Once successfully logged, the data cannot be tampered with unless a new consensus is reached between the consensus nodes. The consensus node may become a byzantine node due to various malicious attacks, and the proposed scheme allows a maximum of (n-1)/3 nodes to be the byzantine node, with n being the total number of attribute authorities. Each attribute authority has a pair of public and private keys. The public key is used to generate its own address and the private key is used to sign the transaction. Each attribute authority keeps the private key properly, and no one can forge the label.
A chain of blocks 3 may be defined as a chain of blocks connected by a hash function. Each block contains two parts: a block head and a block body. All transaction information contained in the tile constitutes the tile body. The chunk header contains the hash value of the last chunk header, the timestamp, and the Merkle root of the transaction data. These blocks are connected in sequence, eventually forming a chain. The Merkle root is used to efficiently verify the integrity of transaction data. The time stamp is used to display the time of block generation and to ensure that the blocks are arranged in time sequence. The hash value of the last chunk header contains all the information associated with the chunk and is used to ensure the integrity of the chunk data. If some transaction data in the previous block is maliciously tampered, the Merkle root of the transaction data in the block will also be changed, thereby causing the hash value of the block head to change. This change will iteratively expand to all subsequent blocks, eventually forming a cross-chain. However, this new chain is not a consensus that all federation nodes have previously reached, so the cross-chain is not recognized. Therefore, the special structure of the block chain makes the block chain resistant to data tampering. In the scheme, each zone block is formed by attribute transactions packaged by the verifier from a transaction pool. An attribute transaction represents the authorization of the attribute by an attribute authority, assigning the attribute to the target address.
The technical solution of the present invention is further described with reference to the following specific examples.
A new access control scheme based on attributes is provided for the Internet of things system. The system no longer needs to create Access Control Lists (ACLs) or assign roles for each user. Each device may be described by attributes defined in the system for which the attribute authority will distribute the corresponding attributes according to their identity or capabilities. Only the set of attributes matching the access policy is owned for access rights. While the distribution of attributes is recorded using blockchains. The attribute authorities commonly maintain a public and credible distributed ledger recording attribute transactions. Once recorded, the data in the block cannot be tampered with, and anyone can query the records on the blockchain as needed. And moreover, the calculation of an access control protocol in the specific construction of the scheme is simplified, and both parties participating in data interaction can complete the access control function only by performing some simple signature and hash operations, so that the scheme is more suitable for equipment with limited computing capacity and energy supply in an Internet of things system.
The following entities are mainly involved in the present embodiment: attribute authority, block chain, intelligent thing networking equipment.
And the intelligent Internet of things equipment is responsible for collecting, processing and sharing data in the Internet of things system. The verification of the transaction is not participated, and only the read authority of the block chain is possessed. In order to ensure legitimate access and security of data, data consumers need to obtain access authorization from the data owner before sharing the data. The data consumer uses the attributes authorized by the attribute authority to prove to the data owner the required rights of ownership. The data owner allows the data consumer to access the data only if the attributes the data consumer owns satisfy the access policy requirements set by the data owner. Data consumers are not trusted because they would be in tandem with each other, driven by the benefits, when they do not each have a set of attributes that satisfy the access policy set by the data owner, and may even attempt to maliciously tamper with the data on the blockchain or interfere with the process of the attribute authority reaching consensus.
The attribute authority is the authority of the attribute and is also the manager of the blockchain. Each device needs to complete registration with the attribute authority before entering the system. The attribute authority firstly distributes a pair of public and private keys for each managed device based on identity cryptography, and the public and private keys are used for mutual authentication and key agreement with other devices. Each device would then be authorized with the appropriate attributes based on its identity, characteristics, or role. The authorization of the attributes will be recorded in the blockchain in the form of a transaction. As a consensus node of the federation chain, the attribute authority first puts the transaction into its own transaction pool after the transaction is generated, and the transaction is written into the blockchain after the agreement with other attribute authorities is achieved. Once successfully logged, the data cannot be tampered with unless a new consensus is reached between the consensus nodes. The consensus node may become a byzantine node due to various malicious attacks, and the proposed scheme allows a maximum of (n-1)/3 nodes to be the byzantine node, with n being the total number of attribute authorities. Each attribute authority has a pair of public and private keys. The public key is used to generate its own address and the private key is used to sign the transaction. Each attribute authority keeps the private key properly, and no one can forge the label.
Blockchain a blockchain may be defined as a chain of blocks connected by a hash function. Each block contains two parts: a block head and a block body. All transaction information contained in the tile constitutes the tile body. The chunk header contains the hash value of the last chunk header, the timestamp, and the Merkle root of the transaction data. These blocks are connected in sequence, eventually forming a chain. The Merkle root is used to efficiently verify the integrity of transaction data. The time stamp is used to display the time of block generation and to ensure that the blocks are arranged in time sequence. The hash value of the last chunk header contains all the information associated with the chunk and is used to ensure the integrity of the chunk data. If some transaction data in the previous block is maliciously tampered, the Merkle root of the transaction data in the block will also be changed, thereby causing the hash value of the block head to change. This change will iteratively expand to all subsequent blocks, eventually forming a cross-chain. However, this new chain is not a consensus that all federation nodes have previously reached, so the cross-chain is not recognized. Therefore, the special structure of the block chain makes the block chain resistant to data tampering. In the scheme, each zone block is formed by attribute transactions packaged by the verifier from a transaction pool. An attribute transaction represents the authorization of the attribute by an attribute authority, assigning the attribute to the target address.
The specific implementation process of the embodiment is as follows:
1. system initialization
Let λ be the safety parameter of the system. The system initialization algorithm takes the safety parameter lambda as input and outputs the global parameter of the system. The devices in the system share an elliptic curve defined over a finite field gf (p), G being the base point of the elliptic curve with the first order r, the system defines two hash functions,attribute authority shares a master private key SKMSKThe main private key is secretly stored by the attribute authority, and the corresponding main public key PKMPK=SKMSKG is then disclosed to all devices in the system.
2. Device registration
Each device in the system has a unique ID as its distinguishable identification. When a device registers with the system, an attribute authority to which the device belongs generates an identity private key for the device based on its identity ID using the master private key.
3. Address generation
Each device in the system may apply for attribute i from an attribute authority via a self-generated address and its identity ID. To generate an address, the device first randomly selectsAs a key SKiTherefore kG is the corresponding public key PKi. To generate an address corresponding to a public key, a device may pair PKsiThe | ID (II here denotes concatenation) is hashed and then the hash value is encoded by Base58Check encoding. Thus, the address is:
Address=Base58Check[H2(PKi||ID)]
4. attribute application
Each attribute authority has a pair of public and private keys. The public key is used for generating the address AA of the user, and the private key is used for signing the generated attribute transaction. When the device applies for the attribute, the attribute authority to which the device belongs can verify whether the applicant should have the attribute i of the application. If the device is authenticated, the attribute authority will generate an attribute transaction:the attribute authority will then sign the hash of the attribute transaction and the timestamp, i.e., the attribute authority will sign the hashAnd finally, the attribute authority packages the attribute transaction, the signature information and the time stamp together and puts the attribute transaction, the signature information and the time stamp into a transaction pool of the attribute authority.
These federation nodes will periodically pick a block creator. It is the responsibility of packing the transactions in the transaction pool into a block and broadcasting it to other federation nodes to reach consensus. The block creator will sort the transactions according to the time stamp and calculate the Merkle root for the selected attribute transaction. The chunk header contains the chunk header hash value of the last chunk, the timestamp generated by that chunk, and the Merkle root.
The block creator broadcasts this new block to other federation nodes using the PBFT protocol (the PBFT protocol working as shown in the figure below). In the preparation phase, each of the remaining federation nodes will verify the validity of the new chunk and broadcast it to others in the same manner. Once the 2f identical blocks are received, they will broadcast an acknowledgement to others in the preparation phase. If a node receives 2f +1 acknowledgements, it will append the new block to the end of the chain of blocks.
5. Access control
To share data between two devices, one being the data owner Bob and the other being the data consumer Alice, Bob needs to exercise access control over his data to prevent unauthorized devices from accessing his data. Only when the attribute set owned by Alice meets the access policy set by Bob, Alice can obtain the right to access Bob data. The access control protocol between Alice and Bob performs as shown in fig. 4:
alice uses its identity information to initiate a communication request to Bob, and then both use its identity information ID with the standard base AliceAA communication request is initiated to Bob and both generate a session key K using standard identity-based authentication and key agreement protocols. Their subsequent communication generates a session key K from the authentication and key agreement protocol with identity. Their subsequent communications are encrypted by the session key K based on a symmetric key algorithm. For convenience of description, the present invention will omit the symmetric encryption process of the information exchange process described below.
Bob returns a random number N e to Z to AlicerAnd Bob's own access policy P that indicates which property sets the device owns to obtain access authorization to its data.
And according to the attribute owned by the Alice, selecting an attribute subset meeting the access policy of the Bob. The attributes in the attribute subset are all distributed to addresses submitted by Alice by an attribute authority in the attribute application stage. And the Alice signs the random number N by using the private key corresponding to each address. Alice selects a subset of the attributes that satisfy the access policy set by Bob, along with the signature and public key pair corresponding to each attribute in the subset of attributesSent to Bob together.
PK submitted by Bob to Alice firsti||IDACarrying out hash operation and obtaining the hashThe value is encoded by Base58Check to get the corresponding address. Bob then queries the blockchain for the latest record for that address, and if the address was indeed distributed by the attribute authority for attribute i, then Bob reuses Alice's submitted public key PKiVerifying signaturesWhether valid or not:
if all is true, it is stated that Alice does have ownership of the address, and the address is distributed by the Attribute Authority with the attributes that Alice claims. Finally, Bob verifies whether the attribute set submitted by Alice is sufficient for the access policy set by Alice.
If Alice owns a set of attributes that satisfy Bob's access policy, then Bob will allow Alice to access its data. The data sharing process is also encrypted and protected by the session key K negotiated in the first step.
The technical effects of the present invention will be described in detail with reference to experiments.
The experimental environment is a machine which is loaded with Intel Pentium G620CPU, 2.60GHz and 2GB RAM and runs a Ubuntu Linux16.04LTS system. The scheme is based on a PBC library (version 0.5.14), and a supersingular curve y2 in a 512-bit finite field is selected to be a 160-bit elliptic curve group in x3+ x, so that 80-bit safety is realized. The experimental results are the average of thirty experiments. The analysis results are shown in FIG. 5.
As can be seen from fig. 5, signing the random number selected by Bob using the corresponding private key is a major computational overhead for Alice. The private key corresponds to an attribute that matches Bob's access policy. Therefore, as the number of attributes increases, the computational overhead also increases, and the two are in direct proportion. For Bob, in addition to verifying the signature provided by Alice, he needs to hash and encode each Alice submitted PK pair with Alice's ID to get the address to which the attribute was issued by the attribute authority. It is clear that Bob's computational overhead is also proportional to the number of attributes in the set of attributes that Alice satisfies her access policy. A C + + implementation of a high quality Elliptic Curve Digital Signature Algorithm (ECDSA) typically takes 2.87ms to compute a NIST256P signature once, and 6.34ms to verify the signature. The confidentiality and authenticity of the communication between Alice and Bob is guaranteed by the AES-128 algorithm. As can be seen from fig. 5, although Bob's computational overhead is higher than Alice's computational overhead as the number of attributes increases, the actual computational overhead is also reasonable and acceptable for these internet of things devices. That is, the attribute-based access control scheme using the blockchain of the present invention can be effectively applied in the context of the internet of things.
Results of the experiment
In the scheme of the invention, HyperledgerFabric is selected as a platform for constructing the block chain. It adopts modular architecture, provides high confidentiality, elasticity, flexibility and expandability. The invention operates the scheme on a desktop computer with a Ubuntu Linux16.04LTS system, wherein the desktop computer has an Intel Pentium G620CPU, a memory of 2.60GHz and a memory of 1 GB.
Storage overhead
As is well known, most devices in the internet of things are resource-constrained, so memory overhead is an important factor that must be considered. The internet of things devices do not have much storage space to allocate to additional data, other than the valuable data that must be stored. Therefore, the invention analyzes the storage overhead of the proposed scheme and explains the rationality of the scheme. The internet of things device mainly needs to store three additional data, namely global parameters, session keys and access policies.
Global parameters
All entities in the system of the internet of things share a same set of global parameters. It specifies the security parameters, the elliptic curve, the hash function involved, the public key of the attribute authority and the public key of each device. With these parameters, the attribute-based access control scheme of the present invention can be properly implemented. After the system is initialized, the size of the global parameter is fixed, and the storage overhead of the global parameter is obviously acceptable for the resource-limited devices in the internet of things.
Access policy
The storage overhead of the access policy set by the devices in the system depends on their complexity and fine granularity, and is proportional to the number of attributes involved in the access policy, as shown in fig. 6. It is clear from the figure that even if the number of attributes involved in the access policy set by the device is as high as 50, the storage overhead occupied by the access policy is only about 500 bytes. This is because attributes are actually numbers or words that describe the characteristics of a certain device. In the standard character encoding for electronic communications each number or letter takes only 1 byte. It is clear that the storage overhead of the access policy is reasonable and acceptable.
Session key
In the access control scheme of the present invention, two parties of communication need to authenticate each other first, and then negotiate a session key for subsequent interaction. In order not to renegotiate each time, they may assign a time limit to the negotiated session key and retain the session key for a period of time. The session key may be generated by any standard identity-based authentication and key agreement protocol. For example, the present invention uses an identity-based encryption algorithm to generate a 128-bit session key and uses AES-128 to secure subsequent communications. The storage overhead of the session key is proportional to the number of communicating participants. As shown in fig. 7, this portion of the storage overhead is almost negligible.
And (4) safety certification:
in order to be able to implement access control correctly, the proposed scheme must be resistant to collusion attacks. Sometimes some devices that do not have the attribute set that satisfies the access policy may be driven by interest to communicate with each other, so that they can jointly complete the authentication with the target device to obtain their data. This clearly defeats the purpose of implementing access control to ensure secure communication. Suppose Bob sets its own access policy X (Y V), which means that only devices with both attributes X and Y, or X and Z, can obtain access to Bob's data. Suppose Alice has only attribute X and Eve has only attribute Y. Obviously, if Alice is joined with Eve, then they will have a set of attributes that satisfy Bob's access policy. Since there is no global ID to bind all properties belonging to a user, Bob has difficulty distinguishing whether the properties submitted by the user are all owned by the same person. However, in the solution of the present invention, in order to obtain the address where the attribute i submitted by Alice is located, Bob needs to perform a hash operation on the public key submitted by Alice together with his identity ID _ a (a is a subscript), and encode the obtained hash value by Base58Check to the address, that is:
Address=Base58Check[H2(PKi||IDA)]
although Eve can give Alice its own attribute Y to complete collusion attack, which includes an address containing attribute Y, the address corresponding to the public key and the signature for the random number, the distinction of the identity information ID cannot be changed. If Alice shows the address of the attribute Y, the public key corresponding to the address and the signature of the attribute Y to Bob according to the protocol requirement, Bob finds the address:
Base58Check[H2(PKY||IDA)]
not equal to the address where the attribute Y submitted by Alice resides:
Base58Check[H2(PKY||IDE)]
in this way, Bob can discover that Alice and Eve are implementing collusion attacks and terminate the authentication with Alice. Therefore, the access control scheme of the present invention is effective against collusion attacks.
It should be noted that the embodiments of the present invention can be realized by hardware, software, or a combination of software and hardware. The hardware portion may be implemented using dedicated logic; the software portions may be stored in a memory and executed by a suitable instruction execution system, such as a microprocessor or specially designed hardware. Those skilled in the art will appreciate that the apparatus and methods described above may be implemented using computer executable instructions and/or embodied in processor control code, such code being provided on a carrier medium such as a disk, CD-or DVD-ROM, programmable memory such as read only memory (firmware), or a data carrier such as an optical or electronic signal carrier, for example. The apparatus and its modules of the present invention may be implemented by hardware circuits such as very large scale integrated circuits or gate arrays, semiconductors such as logic chips, transistors, or programmable hardware devices such as field programmable gate arrays, programmable logic devices, etc., or by software executed by various types of processors, or by a combination of hardware circuits and software, e.g., firmware.
The above description is only for the purpose of illustrating the present invention and the appended claims are not to be construed as limiting the scope of the invention, which is intended to cover all modifications, equivalents and improvements that are within the spirit and scope of the invention as defined by the appended claims.
Claims (10)
1. A block chain-based attribute-based access control method is characterized by comprising the following steps:
each device is described by attributes defined in the system, and an attribute authority can distribute corresponding attributes for the devices according to the identity or the capability of the devices; while using the blockchain to record the distribution of attributes;
a public and credible distributed account book for recording attribute transaction is maintained between attribute authorities;
two parties participating in data interaction can complete the access control function only by performing some simple signature and hash operations.
2. The blockchain-based attribute-based access control method of claim 1, wherein each device is described by attributes defined in the system, for which an attribute authority distributes corresponding attributes according to its identity or capabilities; and meanwhile, the distribution of the block chain for recording the attributes only has the access right if the attribute set matched with the access strategy is owned.
3. The blockchain-based attribute-based access control method of claim 1, wherein in the distributed ledger that commonly maintains a publicly trusted record "attribute transaction" between the attribute authorities, once recorded, the data in the block cannot be tampered with, and anyone queries the record on the blockchain when needed.
4. A computer device, characterized in that the computer device comprises a memory and a processor, the memory storing a computer program which, when executed by the processor, causes the processor to carry out the steps of:
each device is described by attributes defined in the system, and an attribute authority can distribute corresponding attributes for the devices according to the identity or the capability of the devices; while using the blockchain to record the distribution of attributes;
a public and credible distributed account book for recording attribute transaction is maintained between attribute authorities;
two parties participating in data interaction can complete the access control function only by performing some simple signature and hash operations.
5. An information data processing terminal, characterized in that the information data processing terminal is used for implementing the block chain-based attribute-based access control method of any one of claims 1 to 3.
6. An attribute-based access control system for implementing the block-chain-based attribute-based access control method according to any one of claims 1 to 3, wherein the attribute-based access control system comprises:
the intelligent Internet of things equipment is responsible for collecting, processing and sharing data in the Internet of things system; the verification of the transaction is not participated, and only the reading authority of the block chain is possessed;
the attribute authority is an attribute authorizer and is also a manager of the block chain; each device needs to complete registration in an attribute authority before entering the system;
the block chain is a string of blocks connected by a hash function; each block contains two parts: a block head and a block body.
7. The attribute-based access control system of claim 6, wherein the smart internet of things device does not participate in verification of transactions, and the read right of owning the blockchain specifically is:
obtaining access authorization of a data owner before sharing data, and proving the required permission for the data owner by using the attribute authorized by an attribute authorization mechanism;
the data owner allows the data consumer to access the data only if the attributes the data consumer has satisfy the access policy requirements set by the data owner.
8. The attribute-based access control system of claim 6, wherein the attribute authority first distributes a pair of public and private keys for each managed device based on identity cryptography for mutual authentication and key agreement with other devices;
then, according to the identity, the characteristic or the role of each device, the device is authorized with proper attributes; the authorization of the attribute is recorded in a blockchain in a transaction form and serves as a consensus node of a alliance chain, an attribute authority puts the transaction into a transaction pool of the attribute authority after the transaction is generated, and the transaction is written into the blockchain after the attribute authority agrees with other attribute authorities;
once successfully logged, the data cannot be tampered unless a new consensus is reached between the consensus nodes; the consensus node can become a Byzantine node due to various malicious attacks, the proposed scheme allows a maximum of (n-1)/3 nodes to be Byzantine nodes, n being the total number of attribute authorities; each attribute authority has a pair of public and private keys, the public key is used for generating own address, the private key is used for signing the transaction, and each attribute authority keeps the private key properly.
9. The attribute-based access control system of claim 6, wherein all transaction information contained in the tile constitutes a tile body, a tile header containing a hash value of a previous tile header, a timestamp, and a Merkle root of the transaction data;
the blocks are connected in sequence to finally form a chain; the Merkle root is used for efficiently verifying the integrity of transaction data; the time stamp is used for displaying the time of block generation and ensuring that the blocks can be arranged in time sequence; the hash value of the last chunk header contains all the information associated with the chunk, ensuring the integrity of the chunk data.
10. The attribute-based access control system of claim 9, wherein if some transaction data in the previous block is tampered with maliciously, the Merkle root of the transaction data in the block will also change, thereby causing the hash value of the block header to change; the change is iteratively expanded to all subsequent blocks, and finally a cross chain is formed;
each block of zones is formed by attribute transactions packaged by the verifier from the transaction pool, one attribute transaction represents the authorization of the attribute authorization mechanism to the attribute, and the attribute is assigned to the target address.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110230381.2A CN113162907A (en) | 2021-03-02 | 2021-03-02 | Attribute-based access control method and system based on block chain |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110230381.2A CN113162907A (en) | 2021-03-02 | 2021-03-02 | Attribute-based access control method and system based on block chain |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113162907A true CN113162907A (en) | 2021-07-23 |
Family
ID=76883780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110230381.2A Pending CN113162907A (en) | 2021-03-02 | 2021-03-02 | Attribute-based access control method and system based on block chain |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113162907A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113836222A (en) * | 2021-08-24 | 2021-12-24 | 北京理工大学 | Access control method of concealable strategy and attribute based on block chain |
CN114745201A (en) * | 2022-05-07 | 2022-07-12 | 北京航空航天大学 | Data access privacy protection system and method based on block chain and attribute encryption |
CN115529136A (en) * | 2022-08-16 | 2022-12-27 | 云南师范大学 | Lightweight block chain design method facing Internet of things and based on attribute access control |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108810073A (en) * | 2018-04-05 | 2018-11-13 | 西安电子科技大学 | A kind of Internet of Things multiple domain access control system and method based on block chain |
-
2021
- 2021-03-02 CN CN202110230381.2A patent/CN113162907A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108810073A (en) * | 2018-04-05 | 2018-11-13 | 西安电子科技大学 | A kind of Internet of Things multiple domain access control system and method based on block chain |
Non-Patent Citations (1)
Title |
---|
SHENG DING等: "《A Novel Attribute-Based Access Control Scheme Using Blockchain for IoT》", 《IEEE》, 18 March 2019 (2019-03-18), pages 3 - 4 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113836222A (en) * | 2021-08-24 | 2021-12-24 | 北京理工大学 | Access control method of concealable strategy and attribute based on block chain |
CN114745201A (en) * | 2022-05-07 | 2022-07-12 | 北京航空航天大学 | Data access privacy protection system and method based on block chain and attribute encryption |
CN115529136A (en) * | 2022-08-16 | 2022-12-27 | 云南师范大学 | Lightweight block chain design method facing Internet of things and based on attribute access control |
CN115529136B (en) * | 2022-08-16 | 2024-02-23 | 云南师范大学 | Internet of things-oriented lightweight blockchain design method based on attribute access control |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109768988B (en) | Decentralized Internet of things security authentication system, equipment registration and identity authentication method | |
AU2003202511B2 (en) | Methods for authenticating potential members invited to join a group | |
CN108768652B (en) | Coalition block chain bottom layer encryption method capable of resisting quantum attack | |
CN110959163B (en) | Computer-implemented system and method for enabling secure storage of large blockchains on multiple storage nodes | |
KR102179497B1 (en) | System for Data Storing and Managing based on Multi-cloud and Driving method thereof | |
CN112953727A (en) | Internet of things-oriented equipment anonymous identity authentication method and system | |
CN113162907A (en) | Attribute-based access control method and system based on block chain | |
Satapathy et al. | A secure framework for communication in internet of things application using hyperledger based blockchain | |
CN113761582B (en) | Group signature-based supervision blockchain transaction privacy protection method and system | |
WO2007103906A2 (en) | Secure data transmission using undiscoverable or black data | |
KR20200080441A (en) | Distributed device authentication protocol in internet of things blockchain environment | |
CN114036539A (en) | Safety auditable Internet of things data sharing system and method based on block chain | |
Win et al. | Privacy enabled digital rights management without trusted third party assumption | |
Xu et al. | An efficient blockchain‐based privacy‐preserving scheme with attribute and homomorphic encryption | |
Yang et al. | Accelerating decentralized and partial-privacy data access for VANET via online/offline functional encryption | |
Mao et al. | BTAA: Blockchain and TEE-Assisted Authentication for IoT Systems | |
Li et al. | Smart Contract‐Based Cross‐Domain Authentication and Key Agreement System for Heterogeneous Wireless Networks | |
CN115834047A (en) | Continuous trusted data sharing method based on block chain | |
Tiwari et al. | ACDAS: Authenticated controlled data access and sharing scheme for cloud storage | |
Guo et al. | Using blockchain to control access to cloud data | |
Khashan et al. | Blockchain-Based Decentralized Authentication Model for IoT-Based E-Learning and Educational Environments. | |
Kara et al. | VoIPChain: A decentralized identity authentication in Voice over IP using Blockchain | |
Liou et al. | T-auth: A novel authentication mechanism for the IoT based on smart contracts and PUFs | |
CN116015669A (en) | Block chain-based cross-domain collaborative authentication method for Internet of things | |
Nait-Hamoud et al. | Certificateless Public Key Systems Aggregation: An enabling technique for 5G multi-domain security management and delegation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210723 |