Crypto-entity gives a possibility to encrypt some data inside a specific record.
It will be used to hide data of living people in future because of ex. law. In that case
someone will be still able to maintain own tree and even make it public without sharing
sensitive data.
Changes:
CryptoEntity
is extendingBaseEntity
and adds a crypto support- Possibility to keep a part of data decrypted in YAML. Ex. first letter of name:
@Property()
@Decrypted<string>(GetFirstChar)
middlename!: string;
- Inside this PR
KeyProvider
has been introduced to Gitisto and its responsibility is to provide
a key based on key name in extras.
Example data:
entityName: PersonEntity
version: 1
extras:
encryption:
keyName: jord
iv: 9c0bd3d7a3bc9aa2816c24d4156f9398
data:
surname: J
encryptedData:
surname: e58ca90b132caed4d135f2f0094a18b3