A robust and secure ATM management system implemented in C
Features • Installation • Usage • Documentation • Contributing
- About
- Features
- System Requirements
- Installation
- Usage
- API Reference
- Contributing
- Security
- License
- Contact
The ATM Management System is an enterprise-grade banking solution that provides secure transaction processing and comprehensive account management capabilities. Built with C, it ensures high performance and reliable operation for banking transactions.
-
User Management
- Secure registration system
- Encrypted authentication
- Profile management
-
Account Operations
- Multi-account support
- Real-time balance updates
- Transaction history
-
Transaction Processing
- Deposits and withdrawals
- Inter-account transfers
- Transaction validation
- Data Protection
- Password encryption
- Secure session management
- Data integrity checks
- Real-time Notifications
- IPC implementation
- Transaction alerts
- Account updates
- GCC Compiler >= 7.0
- Make Build System
- 2GB RAM
- 1GB Storage
- GCC Compiler >= 9.0
- Make Build System
- 4GB RAM
- 5GB Storage
# Clone repository
git clone https://github.com/M-MDI/atm-management.git
# Navigate to directory
cd atm-management
# Install dependencies
make deps
# Build project
make build
# Build image
docker build -t atm-system .
# Run container
docker run -p 8080:8080 atm-system
// Initialize system
ATM_System_Init();
// User login
ATM_Login("username", "password");
// Create account
ATM_CreateAccount(accountDetails);
// Process transaction
ATM_ProcessTransaction(transactionDetails);
{
"system": {
"port": 8080,
"max_connections": 100,
"timeout": 30
},
"security": {
"encryption": "AES-256",
"session_timeout": 3600
}
}
ATM_Status ATM_CreateUser(User* user);
ATM_Status ATM_UpdateUser(User* user);
ATM_Status ATM_DeleteUser(UserID id);
ATM_Status ATM_CreateAccount(Account* account);
ATM_Status ATM_UpdateAccount(Account* account);
ATM_Status ATM_DeleteAccount(AccountID id);
ATM_Status ATM_Deposit(Transaction* txn);
ATM_Status ATM_Withdraw(Transaction* txn);
ATM_Status ATM_Transfer(Transaction* txn);
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit changes (
git commit -m 'Add AmazingFeature'
) - Push to branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Report security vulnerabilities to [email protected]
- Encrypted data storage
- Secure authentication
- Session management
- Audit logging
Distributed under the MIT License. See LICENSE
for more information.
Project Developer: M-MDI
Project Link: https://github.com/M-MDI/atm-management
Made with ❤️ by M-MDI