Is there a way to setup a hierarchical encryption using public key encryption ?
Let's say a higher level user can decrypt messages encrypted by lower level users. Is it something possible ? I guess it is only possible to do with hierarchical key management, like the higher level users have access to the lower level user's keys.
Any other option to do something like this ?
Gabor ForgacsGabor Forgacs
30011 gold badge55 silver badges1515 bronze badges
1 Answer
What I'd propose is, to some extent, an extension of your hierarchical key management idea.
Here's the core idea:We use a cryptographically-strong random secret to encrypt the file symetrically (public-key-encryption of large datasets is actually quite slow, so most software like GPG uses a symmetric block cipher to encrypt the data, then they public-key-encrypt the random secret.). The random secret itself is encrypted with the key of each user that is allowed to access the data.
This scheme is similar to when you send a PGP message to multiple receivers. It's quite simple, but the problem is you have to update any encrypted data if users are added, modified or removed. Generally you can introduce intermediary keys to counteract this effect.
In order to address these issues, cryptographers invented HIBE (Hierarchical Identity-Based Encryption). If you want to use this in a real application, please don't build the crypto stack yourself, but use proven, peer-reviewed algorithms.
Uli KöhlerUli Köhler
9,01788 gold badges4141 silver badges9595 bronze badges
Got a question that you canât ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.
Not the answer you're looking for? Browse other questions tagged encryptionrsapublic-key-encryption or ask your own question.
ID-based encryption, or identity-based encryption (IBE), is an important primitive of ID-based cryptography. As such it is a type of public-key encryption in which the public key of a user is some unique information about the identity of the user (e.g. a user's email address). This means that a sender who has access to the public parameters of the system can encrypt a message using e.g. the text-value of the receiver's name or email address as a key. The receiver obtains its decryption key from a central authority, which needs to be trusted as it generates secret keys for every user.
ID-based encryption was proposed by Adi Shamir in 1984.[1] He was however only able to give an instantiation of identity-based signatures. Identity-based encryption remained an open problem for many years.
The pairing-based BonehâFranklin scheme[2] and Cocks's encryption scheme[3] based on quadratic residues both solved the IBE problem in 2001.
Usage[edit]
Identity-based systems allow any party to generate a public key from a known identity value such as an ASCII string. A trusted third party, called the Private Key Generator (PKG), generates the corresponding private keys. To operate, the PKG first publishes a master public key, and retains the corresponding master private key (referred to as master key). Given the master public key, any party can compute a public key corresponding to the identity by combining the master public key with the identity value. To obtain a corresponding private key, the party authorized to use the identity ID contacts the PKG, which uses the master private key to generate the private key for identity ID.
As a result, parties may encrypt messages (or verify signatures) with no prior distribution of keys between individual participants. This is extremely useful in cases where pre-distribution of authenticated keys is inconvenient or infeasible due to technical restraints. However, to decrypt or sign messages, the authorized user must obtain the appropriate private key from the PKG. A caveat of this approach is that the PKG must be highly trusted, as it is capable of generating any user's private key and may therefore decrypt (or sign) messages without authorization. Because any user's private key can be generated through the use of the third party's secret, this system has inherent key escrow. A number of variant systems have been proposed which remove the escrow including certificate-based encryption,[4]secure key issuing cryptography[5] and certificateless cryptography.[6]
The steps involved are depicted in this diagram:
ID Based Encryption: Offline and Online Steps
Protocol framework[edit]
Dan Boneh and Matthew K. Franklin defined a set of four algorithms that form a complete IBE system:
Correctness constraint[edit]
In order for the whole system to work, one has to postulate that:
Oki b4525 mfp driver win7. Where to buy. Where to buy. Drivers & Utilities: Select Your Product Product Detail. Since Microsoft ended support for Windows XP, OKI no longer guarantee the use of OKI products under unsupported OS. Please refer to OS compatibility if you can not find your printer driver.
âmâM,IDâ{0,1}â:Decrypt(Extract(P,Km,ID),P,Encrypt(P,m,ID))=m{displaystyle forall min {mathcal {M}},IDin left{0,1right}^{*}:Decryptleft(Extractleft({mathcal {P}},K_{m},IDright),{mathcal {P}},Encryptleft({mathcal {P}},m,IDright)right)=m}
Encryption schemes[edit]
The most efficient identity-based encryption schemes are currently based on bilinear pairings on elliptic curves, such as the Weil or Tate pairings. The first of these schemes was developed by Dan Boneh and Matthew K. Franklin (2001), and performs probabilistic encryption of arbitrary ciphertexts using an Elgamal-like approach. Though the Boneh-Franklin scheme is provably secure, the security proof rests on relatively new assumptions about the hardness of problems in certain elliptic curve groups.
Another approach to identity-based encryption was proposed by Clifford Cocks in 2001. The Cocks IBE scheme is based on well-studied assumptions (the quadratic residuosity assumption) but encrypts messages one bit at a time with a high degree of ciphertext expansion. Thus it is highly inefficient and impractical for sending all but the shortest messages, such as a session key for use with a symmetric cipher.
In my opinion, this mod is a must have no matter what point of the game youâre currently at! Fallout 4 spring in the commonwealth of america.
A third approach to IBE is through the use of lattices.
Identity-based encryption algorithms[edit]
The following lists practical identity-based encryption algorithms
All these algorithms have security proofs.
Advantages[edit]
One of the major advantages of any identity-based encryption scheme is that if there are only a finite number of users, after all users have been issued with keys the third party's secret can be destroyed. This can take place because this system assumes that, once issued, keys are always valid (as this basic system lacks a method of key revocation). The majority of derivatives of this system which have key revocation lose this advantage.
Moreover, as public keys are derived from identifiers, IBE eliminates the need for a public key distribution infrastructure. The authenticity of the public keys is guaranteed implicitly as long as the transport of the private keys to the corresponding user is kept secure (authenticity, integrity, confidentiality).
Apart from these aspects, IBE offers interesting features emanating from the possibility to encode additional information into the identifier. For instance, a sender might specify an expiration date for a message. He appends this timestamp to the actual recipient's identity (possibly using some binary format like X.509). When the receiver contacts the PKG to retrieve the private key for this public key, the PKG can evaluate the identifier and decline the extraction if the expiration date has passed. Generally, embedding data in the ID corresponds to opening an additional channel between sender and PKG with authenticity guaranteed through the dependency of the private key on the identifier.
Drawbacks[edit]
See also[edit]References[edit]
Hierarchical Identity Based Encryption With Polynomially Many LevelsExternal links[edit]
Identity Based Authentication
Retrieved from 'https://en.wikipedia.org/w/index.php?title=ID-based_encryption&oldid=878485718'
Comments are closed.
|
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |