-
Notifications
You must be signed in to change notification settings - Fork 53
Split formating of a ed25519 dict from key generation. #452
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
Conversation
bf1e4f2
to
57608a4
Compare
So the core design idea here is that in future all keys should support importing from existing key material? or maybe just some keys where it's more likely people would want to re-use keys? does Is it important that new method is in |
As much of widespread ones (not the custom ones used in the software used by 1 person only, but the ones used in well-known tools like openssl, openssh, minisign, signify, OpenPGP (already here) and so on) as contributors had taken effort to implement importing. Not being able to use existing keys is a major issue. In real world different places that can be used as roots of trust use different key serializations. For example GitHub allows to bind the SSH keys for signing to accounts, so it can be used as a root of trust, I can imagine an app fetching a SSH public key from a GH account and using it to verify the snapshot and timestamp roles in TUF for the packages originating from that GitHub account. The next milestone should be supporting formats of signatures used by other libs and tools. Also I think that
I think it should be public within
No, it's not important, in fact I'm surprised that there are any methods dealing with certain key types within |
I think the way that happens is that developers add those methods there, just like you are doing now :) My question in other words is why can't this function be a private one in ed25519_keys, and ed25519_keys.generate_public_and_private() calls it? This way you would get the reusability inside ed25519_keys but the public API does not grow. |
Well, it can, but it will require large enough refactoring of the lib ( |
57608a4
to
7f15570
Compare
This PR seems to be mainly motivated by #451. I suggest to defer merging until we have a clearer vision about the key import API. See #451 (comment). Regarding your statement above that maintainers "just do the things the way that will be OK for them to land into master immediately.", I'd like to point out that maintainers need to go through the same process as any other contributors, which includes describing the reason for the patch and their design decisions, as well as a review by another maintainer. |
It is.
I know. But at least the maintainer, who has created an own PR, won't block its landing, because the fact of him sending the PR means he is likely OK with it.
OK. |
7f15570
to
ff7423b
Compare
Worked around by carrying qn impl in https://github.com/KOLANICH/securesystemslib_KOLANICH.py |
40a6276
to
2a1e67e
Compare
2a1e67e
to
0ad2f7e
Compare
This patch is also part of #451. Let's discuss how to proceed with SSH keys there: #451 (comment) |
Description of the changes being introduced by the pull request:
This PR just splits a securesystemslib key dict generation from key generation for ed25519 keys into a separate function. This is needed to allow code reuse when importing ed25519 keys.
Please verify and check that the pull request fulfils the following requirements: