54 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
| # Registration Number Format
 | |
| 
 | |
| ## Secure Registration Number Generation
 | |
| 
 | |
| The system automatically generates a unique 12-character registration number for each announcement with enhanced security to prevent easy guessing.
 | |
| 
 | |
| ### Format Structure:
 | |
| 
 | |
| ```
 | |
| ENV + XXXXXXXXX
 | |
| ```
 | |
| 
 | |
| Where:
 | |
| 
 | |
| -   **ENV** = Environmental document prefix (3 characters)
 | |
| -   **XXXXXXXXX** = 9 secure random alphanumeric characters (excluding similar-looking characters)
 | |
| 
 | |
| ### Character Pool:
 | |
| 
 | |
| -   Uses: `23456789ABCDEFGHJKLMNPQRSTUVWXYZ`
 | |
| -   Excludes: `0, 1, I, O` (to prevent confusion)
 | |
| -   No lowercase letters (for consistency)
 | |
| 
 | |
| ### Examples:
 | |
| 
 | |
| -   **ENV4B7X9K2MQ** - Secure random generation
 | |
| -   **ENVH3K8P5W7R** - Another secure random generation
 | |
| -   **ENV9F2N6Y4MP** - Each number is unpredictable
 | |
| 
 | |
| ### Security Features:
 | |
| 
 | |
| 1. **Cryptographic Hash** - Uses SHA-256 for randomness
 | |
| 2. **Timestamp Seed** - Includes microtime for uniqueness
 | |
| 3. **Unpredictable** - No date/time patterns visible
 | |
| 4. **No Sequential** - Cannot guess next number
 | |
| 5. **Character Filtering** - Excludes confusing characters
 | |
| 
 | |
| ### Technical Implementation:
 | |
| 
 | |
| -   Generated using cryptographic hash functions
 | |
| -   Seeds include timestamp + microtime + random integers
 | |
| -   Character pool designed to avoid visual confusion
 | |
| -   Multiple entropy sources for maximum security
 | |
| -   Still maintains 12-character length requirement
 | |
| 
 | |
| ### Usage:
 | |
| 
 | |
| 1. Number is automatically generated when form is submitted
 | |
| 2. Field is completely hidden from users (no manual interaction)
 | |
| 3. System validates uniqueness before saving to database
 | |
| 4. Success message shows the final registration number
 | |
| 5. Each generation is completely unpredictable and secure
 | |
| 6. No user interface for regeneration (fully automated)
 |