Skip to content

Add a way to disable or report weak ciphers, hashes and keys. #1281

@ni4

Description

@ni4

Description

While this is certainly needed, there is no good way to report signature or encryption as weak for now, or to disable certain hashes and ciphers (like MD5, IDEA).

However, we still need to support these to be able to verify/decrypt old messages.

I see the following way of implementing this:

  • adding FFI functions rnp_add_weak_cipher("IDEA"), rnp_add_weak_hash("MD5"), rnp_add_weak_key("DSA", 512), etc.
  • adding FFI function like rnp_signature_get_weaknesses(sig, char **weak) which will report weak elements (hash, key, algorithm).
  • adding special signature verification result RNP_SIGNATURE_WEAK
  • adding function like rnp_op_verify_get_weaknesses(op, char **weak).

Some of weak cases could be predefined, like usage of non-MDC encrypted data, non-iterated S2K, whatever else.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    TRIAGE

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions