Cada release de SDK vem com um SHA256SUMS dos arquivos que publicou, assinado com a chave de release da Korzen. Confira primeiro a assinatura, depois o seu download contra as somas.
A chave
A chave pública está em /bot-protection/sdk/signing-key.asc. A mesma chave assina o SDK Java no Maven Central, então o fingerprint dela também pode ser comparado lá, fora deste site.
curl -fsSO https://korzen.dev/bot-protection/sdk/signing-key.asc gpg --show-keys signing-key.asc
As somas
As somas de um release e a assinatura delas estão em /bot-protection/sdk/releases/<sdk>/v<version>/, sendo o SDK node, python, java, go, php ou dotnet. Baixe-as ao lado do arquivo que você confere, verifique a assinatura só com essa chave e depois o arquivo. Para o SDK Node:
V=2.1.0 curl -fsSO https://korzen.dev/bot-protection/sdk/releases/node/v$V/SHA256SUMS curl -fsSO https://korzen.dev/bot-protection/sdk/releases/node/v$V/SHA256SUMS.asc gpg --dearmor --output korzen.gpg signing-key.asc gpgv --keyring ./korzen.gpg SHA256SUMS.asc SHA256SUMS npm pack @korzen/bot-protection@$V sha256sum -c --ignore-missing SHA256SUMS
gpgv precisa dizer "Good signature", e sha256sum precisa dizer OK para o seu arquivo. Qualquer outra resposta quer dizer que o arquivo não é o que a Korzen publicou: não o instale e escreva para nós.
O arquivo de cada SDK
- Node:
npm pack @korzen/bot-protection@<version>, o tarball que o npm serve. - Python:
pip download korzen-bot-protection==<version> --no-deps. - Java: o jar de
dev.korzen:bot-protectionno Maven Central. - Go: o
.zip, o.mode o.infoda versão no proxy Go da Korzen, em/goproxy/; o comando go também os confere no banco de checksums do Go. - PHP: os arquivos que o Composer instalou em
vendor/korzen/bot-protection, que as somas nomeiam empackage/. - .NET: o nuget.org acrescenta a própria assinatura a cada pacote, então o
.nupkgdele é diferente do que as somas cobrem. Confira-o comdotnet nuget verify --all.