Я пытаюсь написать код Go из следующего руководства в Java
https://medium.com/@adigunhammedolalekan / create- docker -registry-token-authentication-server-with- go -1ce3aa030c17
Я застрял на следующем
header := token.Header{
Type: "JWT",
SigningAlg: algo,
KeyID: srv.pubKey.KeyID(),
}
Кажется, это что-то особенное c для этой библиотеки и повторно используется в службе реестра docker для проверки правильности ключа, используемого для подписи.
В коде GithUb есть некоторые объяснения, ie
// KeyID returns a distinct identifier which is unique to this Public Key.
// The format generated by this library is a base32 encoding of a 240 bit
// hash of the public key data divided into 12 groups like so:
// ABCD:EFGH:IJKL:MNOP:QRST:UVWX:YZ23:4567:ABCD:EFGH:IJKL:MNOP
KeyID() string
Но у меня нет точного представления о том, как выполнить выше, например, говорится о ha sh, но что за ha sh? Есть ли где-нибудь готовая библиотека для этого?