Spaces:
Running
Running
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>CUDA Accelerated Bitcoin Mining</title> | |
| <link rel="icon" type="image/x-icon" href="/static/favicon.ico"> | |
| <script src="https://cdn.tailwindcss.com"></script> | |
| <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script> | |
| <script src="https://cdn.jsdelivr.net/npm/animejs/lib/anime.iife.min.js"></script> | |
| <script src="https://unpkg.com/feather-icons"></script> | |
| <style> | |
| .metal-bg { | |
| background: linear-gradient(135deg, #2c3e50 0%, #3498db 100%); | |
| } | |
| .terminal-glow { | |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); | |
| } | |
| .code-font { | |
| font-family: 'Courier New', monospace; | |
| } | |
| </style> | |
| </head> | |
| <body class="metal-bg min-h-screen flex items-center justify-center p-4"> | |
| <div class="bg-gray-900 text-white rounded-2xl shadow-2xl p-8 max-w-md w-full terminal-glow"> | |
| <div class="text-center mb-8"> | |
| <div class="w-16 h-16 bg-blue-500 rounded-full flex items-center justify-center mx-auto mb-4"> | |
| <i data-feather="cpu" class="w-8 h-8 text-white"></i> | |
| </div> | |
| <h1 class="text-3xl font-bold text-blue-400 mb-2">AEGIS-PRIME CUDA Engine</h1> | |
| <p class="text-gray-400 code-font">Direct GPU-accelerated Bitcoin operations</p> | |
| </div> | |
| <div class="space-y-6"> | |
| <div> | |
| <label class="block text-sm font-medium text-blue-300 mb-2">Target Hash160</label> | |
| <input type="text" placeholder="Enter 40-character hash160" class="w-full p-3 bg-gray-800 border border-gray-700 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent code-font" id="targetHash"> | |
| </div> | |
| <div> | |
| <label class="block text-sm font-medium text-blue-300 mb-2">Base Key (32-byte hex)</label> | |
| <input type="text" placeholder="Enter 64-character hex key" class="w-full p-3 bg-gray-800 border border-gray-700 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent code-font" id="baseKey"> | |
| </div> | |
| <div class="grid grid-cols-2 gap-4"> | |
| <div> | |
| <label class="block text-sm font-medium text-blue-300 mb-2">Start Index</label> | |
| <input type="number" value="0" min="0" max="4294967295" class="w-full p-3 bg-gray-800 border border-gray-700 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent code-font" id="startIndex"> | |
| </div> | |
| <div> | |
| <label class="block text-sm font-medium text-blue-300 mb-2">Thread Count</label> | |
| <input type="number" value="256" min="32" max="1024" class="w-full p-3 bg-gray-800 border border-gray-700 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent code-font" id="threadCount"> | |
| </div> | |
| </div> | |
| <div> | |
| <label class="block text-sm font-medium text-blue-300 mb-2">Block Range</label> | |
| <input type="number" value="10000" min="100" max="1000000" class="w-full p-3 bg-gray-800 border border-gray-700 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent code-font" id="blockRange"> | |
| </div> | |
| <button class="w-full bg-blue-600 text-white py-3 px-4 rounded-lg font-medium hover:bg-blue-700 transition-colors duration-200 flex items-center justify-center gap-2 code-font" id="startMining" onclick="executeCUDAMiner()"> | |
| <i data-feather="play" class="w-4 h-4"></i> | |
| Execute CUDA Operations | |
| </button> | |
| </div> | |
| <div class="mt-8 p-4 bg-gray-800 rounded-lg"> | |
| <h3 class="text-blue-400 font-bold mb-2">System Status</h3> | |
| <div class="text-xs text-green-400 code-font"> | |
| <p>> CUDA Runtime: Ready</p> | |
| <p>> Memory Allocation: Optimal</p> | |
| <p>> Cryptographic Libraries: Loaded</p> | |
| <p>> GPU Compute Units: Active</p> | |
| </div> | |
| <div class="mt-8 text-center"> | |
| <a href="index.html" class="text-blue-400 hover:text-blue-300 font-medium inline-flex items-center gap-1 code-font"> | |
| <i data-feather="arrow-left" class="w-4 h-4"></i> | |
| Return to Main Interface | |
| </a> | |
| </div> | |
| </div> | |
| <script> | |
| // Initialize Feather icons | |
| feather.replace(); | |
| // Add animation to the button | |
| document.getElementById('startMining').addEventListener('mouseenter', function() { | |
| anime({ | |
| targets: this, | |
| scale: 1.05, | |
| duration: 200, | |
| easing: 'easeInOutQuad' | |
| }); | |
| }); | |
| document.getElementById('startMining').addEventListener('mouseleave', function() { | |
| anime({ | |
| targets: this, | |
| scale: 1, | |
| duration: 200, | |
| easing: 'easeInOutQuad' | |
| }); | |
| }); | |
| // Direct CUDA Miner Execution | |
| function executeCUDAMiner() { | |
| const targetHash = document.getElementById('targetHash').value; | |
| const baseKey = document.getElementById('baseKey').value; | |
| const startIndex = document.getElementById('startIndex').value; | |
| const threadCount = document.getElementById('threadCount').value; | |
| const blockRange = document.getElementById('blockRange').value; | |
| // Basic validation | |
| if (!targetHash || targetHash.length !== 40) { | |
| alert('Target Hash160 must be exactly 40 characters'); | |
| return; | |
| } | |
| if (!baseKey || baseKey.length !== 64) { | |
| alert('Base Key must be exactly 64 characters'); | |
| return; | |
| } | |
| const requestData = { | |
| target_hash: targetHash, | |
| base_key: baseKey, | |
| start_index: parseInt(startIndex), | |
| thread_count: parseInt(threadCount), | |
| block_range: parseInt(blockRange) | |
| }; | |
| // Execute via CUDA backend | |
| fetch('/api/cuda-miner', { | |
| method: 'POST', | |
| headers: { | |
| 'Content-Type': 'application/json', | |
| 'X-Requested-With': 'XMLHttpRequest' | |
| }) | |
| .then(response => response.json()) | |
| .then(data => { | |
| console.log('CUDA Miner Results:', data); | |
| alert('CUDA Miner executed successfully! Processed ' + data.keys_tested + ' keys. Found ' + data.valid_keys.length + ' valid private keys. Check console for full report.'); | |
| }) | |
| .catch(error => { | |
| console.error('Error:', error); | |
| alert('Execution failed. Check console for details.'); | |
| }); | |
| } | |
| </script> | |
| </body> | |
| </html> |