Which Cryptographic Message Standards are recommended to ensure cryptographic agility in the future and good adapotion trough different programming languages (.NET and Go)? (PublicKey with authenticated symetric encryption)
I doesn't want handle to cryptographic primitives myself, but rather I want to handle facade which protects more or less from small mistakes.
I found these different Standards, in which my experience varies:
- PKCS #7 (Old standard, suitable for the future?)
- NaCl crypto_box (Fixed primitives and limited message size)
- JSON Web Encryption (JWE) (JWS is very well established, but not JWE)
- XML Encryption Syntax and Processing Version 1.1 (Large overhead trough use of XML)
Are some worth mentioning missing? Which would be recommend for a future proof application?
Application: is local installed and sends encrypted data over HTTPS with TLS Auth. to a service in the cloud, but data will be encrypted locally on-prem and not in cloud. One message is around 5kb-2MB and around 100-2.000 messeages per day. Crypt primitives should be fast, around ~50ms.