-
Notifications
You must be signed in to change notification settings - Fork 20
Modifications to the enrollment interface for govstack #61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Modifications to the enrollment interface for govstack #61
Conversation
|
The initial proposition included in this PR relied on specific fields added to describe encryption keys, algorithms, etc. This comment is to propose to rely on existing standards for signature and encryption to be more interoperable and reduce development costs. NeedsThe need is to secure the biometric data (and the document data) attached buffer by enforcing:
2 alternatives are proposed:
SolutionsFor signing and encrypting with JWTIt is proposed to rely on the following RFC:
When an image/document is signed:
When an image/document is encrypted:
When an image/document is both signed and encrypted:
This is in application of best practices (see https://crypto.stackexchange.com/questions/5458/should-we-sign-then-encrypt-or-encrypt-then-sign) The jws and jwe tags are optional. Any type of algorithm, headers, keys, etc. is supported as long as it is compliant with RFC 7515 and RFC 7516. Examples: Not signed, not encrypted: Signed, not encrypted: Signed and encrypted: For signing and encrypting with PKCS#7It is proposed to rely on the following RFC:
The buffer attached to the biometricData (resp. documentData) is replaced with a PKCS#7 containing the signature and encryption elements, plus the encrypted image buffer itself. There is no change to the JSON schema of OSIA and the buffer can be validated and encrypted independently from the other data contained in the OSIA JSON. For storage efficiency, the DER format should be preferred over PEM. Global IntegrityFor the global integrity of a list of biometric/document data, it is proposed to add a structure with a signature of all hashes.
For both options, the OSIA JSON schema must be adapted: Example: Open to discussion
|
Regarding the data used to calculate the signature, perhaps we could give the list of fields used to build it so that it is more flexible and generic? |
|
See also PR#79 for the topic of confidentiality and integrity |
Work in progress...