Add methods to get key capabilities (#125)
* Add methods to get key capabilities Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Use correct indetity to check for flags Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Fix lint Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Remove CanCertify and update CanSign to use SigningKey Signed-off-by: GitHub <noreply@github.com> * keyring: implement CanSign and CanEncrypt Signed-off-by: GitHub <noreply@github.com> * key/keyring: add tests for key capabilities Signed-off-by: GitHub <noreply@github.com> * Apply suggestions from code review Renames CanSign to CanVerify and adds an extended test for public-only keys to confirm CanVerify is true for them. Co-authored-by: wussler <aron@wussler.it> Co-authored-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: wussler <aron@wussler.it>
This commit is contained in:
parent
80b9a7aca2
commit
3dd1711707
4 changed files with 58 additions and 0 deletions
|
|
@ -410,3 +410,18 @@ func TestToPublic(t *testing.T) {
|
|||
assert.False(t, publicKey.IsPrivate())
|
||||
assert.True(t, privateKey.IsPrivate())
|
||||
}
|
||||
|
||||
func TestKeyCapabilities(t *testing.T) {
|
||||
assert.True(t, keyTestEC.CanVerify())
|
||||
assert.True(t, keyTestEC.CanEncrypt())
|
||||
assert.True(t, keyTestRSA.CanVerify())
|
||||
assert.True(t, keyTestRSA.CanEncrypt())
|
||||
|
||||
publicKey, err := keyTestEC.ToPublic()
|
||||
if err != nil {
|
||||
t.Fatal("Cannot make key public:", err)
|
||||
}
|
||||
|
||||
assert.True(t, publicKey.CanVerify())
|
||||
assert.True(t, publicKey.CanEncrypt())
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue