36 minutes ago
(This post was last modified: Less than 1 minute ago by NullSablex.)
? pawn-crypto 0.1.0-alpha.1
Criptografia para SA-MP e open.mp, escrita em Rust
Cryptography for SA-MP and open.mp, written in Rust
Download · GitHub · Documentação
Criptografia para SA-MP e open.mp, escrita em Rust
Cryptography for SA-MP and open.mp, written in Rust
Download · GitHub · Documentação
?? Primeira pré-release do pawn-crypto. O mesmo binário funciona como plugin no SA-MP e como componente nativo (ou plugin legado) no open.mp, em Linux e Windows (32 bits).
?? First pre-release of pawn-crypto. One binary works as a SA-MP plugin and as a native (or legacy) open.mp component, on Linux and Windows (32-bit).
✅ O que já é suportado / Supported now
- SHA-224, SHA-256, SHA-384, SHA-512 — ?? hash de dados, saída em hexadecimal / ?? data digests, hex output
- HMAC-SHA-256 e HMAC-SHA-512 — ?? assinar e verificar mensagens com chave, comparação em tempo constante / ?? sign and verify, constant-time comparison
- Argon2id — ?? hash de senhas assíncrono, com salt aleatório e resultado por callback, sem travar o servidor / ?? asynchronous password hashing, random salts, callback results, no server stall
Code:
#include <crypto> // ou <crypto_omp> para Crypto_Sha256(...)
new digest[CRYPTO_SHA256_LENGTH + 1];
crypto_sha256("abc", digest);? O que já testei / What I tested
?? Num open.mp 1.6.7 (Linux), nos modos nativo e legado: todos os exemplos compilam sem aviso, e passaram 87 checks de SHA-2/HMAC e 320 checks de Argon2id — callbacks, senha certa e errada, fila cheia, dois scripts com o mesmo callback, descarregar o script com trabalho pendente.
?? On open.mp 1.6.7 (Linux), native and legacy modes: all examples compile cleanly; 87 SHA-2/HMAC checks and 320 Argon2id checks passed.
?? Argon2id, na prática:
- ?? Usa os parâmetros recomendados pela OWASP: 19 MiB, 2 iterações, 1 via. Por enquanto são fixos — não há native para ajustá-los; o verify aceita hashes com outros parâmetros, dentro de um limite
- ?? Cada hash ou verify levou ~50 ms na minha máquina, em segundo plano; com 2 workers, cerca de 40 logins por segundo
- ?? Confira sempre o status no callback (CRYPTO_PASSWORD_OK) antes de usar o resultado — senão uma falha vira "senha errada"
?? Ainda sem teste: Windows, servidor SA-MP de verdade e carga real com muitos jogadores.
?? Not tested yet: Windows, an actual SA-MP server, real load.
? Quero a opinião de vocês / Feedback wanted
?? O plugin funciona, mas é uma pré-release: preciso de testadores que usem nos próprios servidores e contem como foi. Vale qualquer relato:
- ?? Desempenho — como se comporta no seu servidor, principalmente o Argon2id com vários jogadores logando
- ?? API — nomes, parâmetros e callbacks fazem sentido? Algo incomoda no dia a dia?
- ?? Custo do Argon2id — o padrão atende, ou vocês querem poder ajustar memória e iterações?
- ?? Bugs — qualquer coisa estranha, aqui no tópico ou nas issues
?? It works, but it's a pre-release: I need testers to run it on their own servers and report back — performance (especially Argon2id under load), API ergonomics, bugs, anything.
?? Próximos passos: mais operações virão (como criptografia autenticada e conversões hex/Base64). Se ninguém relatar nada, sigo testando por conta própria e soltando versões novas aos poucos — mas com o retorno de vocês isso anda mais rápido e mais certo.
?? Next steps: more operations are coming (e.g. authenticated encryption, hex/Base64). If no one reports anything, I'll keep testing on my own and releasing new versions gradually — your feedback just makes it faster and better.
?? Projeto independente, sob Apache-2.0. Não é afiliado ao SA-MP nem ao open.mp.
?? Independent project, Apache-2.0. Not affiliated with SA-MP or open.mp.
