Enum Class security_level
#include <keychain/defines.hpp>
Namespace: keychain
Description
Security level constraint for a persona
.
Security level is an attribute of persona
that specifies which cryptographic parameters should be used during the creation and extending of the persona
keychains. Based on the security level, the code selects the cryptoscheme, algorithm, and key length with which the private and public application-level keys are generated. The higher the security level, the longer the chosen key length. The lower security levels cause lighter stream ciphers to be chosen.
In an application’s context, in scenarios where the data is more sensitive, and the risks and magnitude of damage is higher, higher security level is recommended. Blockchain transaction fee costs tend to be higher for higher key lengths, in the interest of being cost effective for the end user, we recommend that you chose the lowest security level that provides the security guarantees needed by your application.
Since: v2.0
Enum Class Summary
Enum Constant | Description |
---|---|
Lightweight security level |
|
Low security level |
|
Medium security level |
|
High security level |
|
Ultra security level |
Enum Class Detail
lightweight
The security level best used with data that has transient crypto period on the order of weeks or months or for which a stakeholder incurs very low risk of damage if cryptoanalysis is successful.
low
The security level best used with data that has up to a 2 year crypto period or for which a stakeholder incurs low risk of damage if cryptoanalysis is successful. The low security level is most appropriate for casual every-day consumer chat.
medium
The security level best used with data that has up to a 5 year crypto period or for which a stakeholder incurs moderate risk of damage if cryptoanalysis is successful. The Medium security level is most appropriate for general enterprise applications or sensitive consumer applications.
high
The security level best used with data that has up to a 10 year crypto period or for which a stakeholder incurs high risk of damage if cryptoanalysis is successful. For example, the High level is comparable to the current recommendation for the highest security level in multinational financial institutions and governments.
ultra
The security level best used with data that has 10+ year crypto period or for which a stakeholder incurs very high risk of damage if cryptoanalysis is successful. For example, the Ultra level may be appropriate for medical patient data or top secret classified data where the potential for damage remains high for over 10 years.