Skip to content

Revoke cozies should include pub and/or key as best practice. #37

Description

@zamicol

See Cyphrme/Cyphr#115 (comment)

If a revoke coz does not include pub, parties cannot verify the revoke unless the public key has been previously disclosed. Systems may have to look up the public key by tmb, but if this isn't available there's no way to verify the rvk.

This ends up with the funny situation that clients may be given valid revokes that they cannot verify.

Including pub solves this problem, but it raises another. There is the funny situation where not all private keys may derive the public key, so a white hat may not have pub or be able to derive it. Coz requires that pub is derivable from prv, but prv itself might be a "seed" and not the actual private key. A white hat may only have the actual private key and not the public key. So requiring pub on a revoke may not be possible.

With all this in mind, it's probably best practice to include pub, but with the knowledge that it may not be possible. Someone signing the revoke has done their due diligence and that's the best they can do.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions