SwarmShield is an enterprise-grade security system for swarm-based multi-agent communications, providing military-grade encryption, secure conversation management, and comprehensive audit capabilities.
-
Multi-Layer Encryption
- AES-256-GCM encryption
- SHA-512 hashing
- HMAC authentication
- Automatic key rotation
-
Secure Conversation Management
- Encrypted persistent storage
- Thread-safe operations
- Conversation history tracking
- Comprehensive audit logs
-
Enterprise Features
- Role-based access control
- Automated backups
- Detailed analytics
- Secure exports
pip install swarm-shield
# Usage Example
from loguru import logger
from swarm_shield.main import EncryptionStrength, SwarmShield
if __name__ == "__main__":
try:
# Initialize SwarmShield
shield = SwarmShield(encryption_strength=EncryptionStrength.MAXIMUM)
# Create a conversation
conversation_id = shield.create_conversation("Test Chat")
# protect message
shield.protect_message("agent_name", "We generated 3000000k this month ")
# Add messages
shield.add_message(conversation_id, "Agent1", "Hello, Agent2!")
shield.add_message(conversation_id, "Agent2", "Hi Agent1, how are you?")
# Get message history
print("\nConversation History:")
for agent, message, timestamp in shield.get_messages(conversation_id):
print(f"{timestamp} - {agent}: {message}")
# Get conversation overview
summary = shield.get_conversation_summary(conversation_id)
print(f"Messages: {summary['message_count']}")
print(f"Participants: {summary['agents']}")
# Export conversation
shield.export_conversation(conversation_id, format="json", path="chat.json")
# Backup all conversations
backup_path = shield.backup_conversations()
# Get agent activity stats
stats = shield.get_agent_stats("Agent1")
print(f"Total messages: {stats['total_messages']}")
print(f"Active in {stats['conversations']} conversations")
# Delete conversation
shield.delete_conversation(conversation_id)
except Exception as e:
logger.error(f"Example failed: {e}")
raise
# Standard: AES-256
shield = SwarmShield(encryption_strength=EncryptionStrength.STANDARD)
# Enhanced: AES-256 + SHA-512
shield = SwarmShield(encryption_strength=EncryptionStrength.ENHANCED)
# Maximum: AES-256 + SHA-512 + HMAC
shield = SwarmShield(encryption_strength=EncryptionStrength.MAXIMUM)
- Automatic key rotation
- Secure key storage
- Key versioning
- Cryptographic separation
- End-to-end encryption
- Message integrity verification
- Replay attack prevention
- Forward secrecy
# Search conversations
results = shield.query_conversations(
agent_name="Agent1",
text="mission",
start_date=datetime(2025, 1, 1),
limit=10
)
# Export conversations
shield.export_conversation(
conversation_id,
format="json",
path="mission_logs.json"
)
# Create backups
backup_path = shield.backup_conversations()
# Get agent statistics
stats = shield.get_agent_stats("Agent1")
print(f"Total messages: {stats['total_messages']}")
print(f"Active in {stats['conversations']} conversations")
# Get conversation summary
summary = shield.get_conversation_summary(conversation_id)
print(f"Participants: {summary['agents']}")
print(f"Message count: {summary['message_count']}")
-
Key Rotation
- Set appropriate rotation intervals
- Implement backup procedures
- Monitor rotation events
-
Storage
- Use secure storage paths
- Implement backup strategy
- Monitor storage usage
-
Logging
- Configure appropriate log levels
- Secure log storage
- Regular log analysis
-
Error Handling
- Implement proper error recovery
- Monitor error rates
- Set up alerts
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create your feature branch
- Submit a pull request
For security issues, please email security@swarms.ai rather than using issues.
Run the comprehensive test suite:
python3 tests.py
- Documentation: https://swarms.ai/docs
- Issues: GitHub Issues
- Discord: Join our community
- Email: support@swarms.ai
MIT License - see LICENSE for details.
SwarmShield is created and maintained by Kye Gomez and the team at Swarms.AI.
Made with β€οΈ by Swarms.AI