Skip to content

Commit

Permalink
make hmac identifable
Browse files Browse the repository at this point in the history
  • Loading branch information
JesusMcCloud committed Jan 26, 2025
1 parent 9217fcb commit 64f7c16
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 10 deletions.
11 changes: 7 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,13 @@

### NEXT
* HMAC Support
* AES Support
* CBC
* CBC-HMAC
* GCM
* Symmetric Encryption
* AES
* GCM
* CBC-HMAC
* CBC
* ECB
* ChaCha-Poly1305
* Moved `HazardousMaterials` annotation from `supreme` to `indispensable`


Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
package at.asitplus.signum.indispensable.mac

import at.asitplus.signum.indispensable.Digest
import at.asitplus.signum.indispensable.asn1.Identifiable
import at.asitplus.signum.indispensable.asn1.KnownOIDs
import at.asitplus.signum.indispensable.asn1.ObjectIdentifier
import at.asitplus.signum.indispensable.misc.BitLength

sealed interface MAC {
Expand All @@ -15,13 +18,14 @@ sealed interface MAC {
/**
* RFC 2104 HMAC
*/
enum class HMAC(val digest: Digest) : MAC {
SHA1(Digest.SHA1),
SHA256(Digest.SHA256),
SHA384(Digest.SHA384),
SHA512(Digest.SHA512);
enum class HMAC(val digest: Digest, override val oid: ObjectIdentifier) : MAC, Identifiable {
SHA1(Digest.SHA1, KnownOIDs.hmacWithSHA1),
SHA256(Digest.SHA256, KnownOIDs.hmacWithSHA256),
SHA384(Digest.SHA384, KnownOIDs.hmacWithSHA384),
SHA512(Digest.SHA512, KnownOIDs.hmacWithSHA512),
;

override fun toString()= "HMAC-$digest"
override fun toString() = "HMAC-$digest"

companion object {
operator fun invoke(digest: Digest) = when (digest) {
Expand Down

0 comments on commit 64f7c16

Please sign in to comment.