<?php
// includes/security.php

// 1. مفتاح التشفير السري (غير هذا النص لنص عشوائي طويل ومعقد جداً واحتفظ به سراً)
define('ENCRYPTION_KEY', 'EmiratesClub_Secret_Key_2025_@#$$'); 
define('ENCRYPTION_METHOD', 'AES-256-CBC');

/**
 * دالة لتشفير البيانات (ID) لتحويلها لنص غير مفهوم
 */
function encryptData($data) {
    $key = hash('sha256', ENCRYPTION_KEY);
    $iv = substr(hash('sha256', 'Secret_IV_' . ENCRYPTION_KEY), 0, 16); // Initialization Vector

    $encrypted = openssl_encrypt($data, ENCRYPTION_METHOD, $key, 0, $iv);
    
    // تحويل الرموز لتكون آمنة في الرابط (URL Safe)
    return base64_url_encode($encrypted);
}

/**
 * دالة لفك التشفير (لإعادة النص المشفر إلى رقم ID)
 */
function decryptData($data) {
    $key = hash('sha256', ENCRYPTION_KEY);
    $iv = substr(hash('sha256', 'Secret_IV_' . ENCRYPTION_KEY), 0, 16);
    
    // إرجاع الرموز لأصلها
    $data = base64_url_decode($data);

    return openssl_decrypt($data, ENCRYPTION_METHOD, $key, 0, $iv);
}

// دوال مساعدة لضمان سلامة الرابط
function base64_url_encode($data) {
    return rtrim(strtr(base64_encode($data), '+/', '-_'), '=');
}

function base64_url_decode($data) {
    return base64_decode(str_replace('-_', '+/', $data));
}
?>