| name | security-encryption |
| description | Game server security including encryption, anti-cheat, and secure communication |
| sasmp_version | 1.3.0 |
| version | 2.0.0 |
| bonded_agent | 01-game-server-architect |
| bond_type | SECONDARY_BOND |
| parameters | {"required":["security_layer"],"optional":["encryption_algorithm","key_rotation_hours"],"validation":{"security_layer":{"type":"string","enum":["transport","application","data_at_rest"]},"encryption_algorithm":{"type":"string","enum":["aes_256_gcm","chacha20_poly1305","rsa_4096"],"default":"aes_256_gcm"},"key_rotation_hours":{"type":"integer","min":1,"max":720,"default":24}}} |
| retry_config | {"max_attempts":1,"fallback":"reject_connection"} |
| observability | {"logging":{"level":"warn","fields":["event_type","source_ip","threat_level"]},"metrics":[{"name":"security_violations_total","type":"counter"},{"name":"encryption_operations_duration_us","type":"histogram"},{"name":"blocked_connections_total","type":"counter"},{"name":"rate_limit_hits","type":"counter"}]} |
Security & Encryption for Game Servers
Implement secure game server architecture with encryption and anti-cheat measures.
Security Layers
[Client] ← TLS 1.3 → [Load Balancer] ← mTLS → [Game Server]
↓
[Encrypted State]
Transport Security
TLS/SSL Configuration
#include <openssl/ssl.h>
SSL_CTX* createSecureContext() {
SSL_CTX* ctx = SSL_CTX_new(TLS_server_method());
SSL_CTX_set_min_proto_version(ctx, TLS1_3_VERSION);
SSL_CTX_set_max_proto_version(ctx, TLS1_3_VERSION);
SSL_CTX_use_certificate_file(ctx, "server.crt", SSL_FILETYPE_PEM);
SSL_CTX_use_PrivateKey_file(ctx, "server.key", SSL_FILETYPE_PEM);
SSL_CTX_set_ciphersuites(ctx,
"TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256");
SSL_CTX_set_session_cache_mode(ctx, SSL_SESS_CACHE_SERVER);
return ctx;
}
DTLS for UDP Game Traffic
SSL_CTX* createDTLSContext() {
SSL_CTX* ctx = SSL_CTX_new(DTLS_server_method());
SSL_CTX_set_min_proto_version(ctx, DTLS1_2_VERSION);
SSL_CTX_set_cookie_generate_cb(ctx, generateCookie);
SSL_CTX_set_cookie_verify_cb(ctx, verifyCookie);
return ctx;
}
Server Authority Model