الإخفاءية في الصور والصوت
تضمين البيانات في ملفات الوسائط.
الإخفاءية في الصور والصوت درس مجاني في Cyber Security Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cyber Security Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cyber Security Academy 4 دروس في المجموع.
كيف تخزّن الصور البكسلات
لإخفاء بيانات في صورة، تحتاجون أولًا إلى معرفة كيفية تخزين الصور للألوان. تحتوي البكسلة في صورة RGB على ثلاث قنوات: الأحمر والأخضر والأزرق، وتمثل كل قناة عادةً عددًا من 8 بتات يتراوح بين 0 و255.
لذلك تشغل البكسلة الواحدة ثلاثة بايتات. وتحتوي صورة صغيرة بأبعاد 800x600 على 480,000 بكسلة و1.44 مليون بايت لوني. وهذا التكرار هو ما يستغله الإخفاء؛ فعدد البايتات أكبر بكثير من قدرة العين على تدقيقه.
الفكرة الأساسية هي أن الجهاز البصري البشري لا يستطيع التمييز بين قيمة لونية مقدارها 200 وقيمة مقدارها 201. وفي هذا الفارق غير الملحوظ تختبئ البيانات.
تضمين البت الأقل أهمية
يستبدل تضمين LSB البت الأقل أهمية في كل بايت لوني ببت واحد من السر. وبما أن البت الأدنى لا يغيّر القيمة إلا بمقدار 1، فإن التغيير البصري لا يُرى.
لنفترض إخفاء البت 1 في قناة حمراء قيمتها 200 (ثنائيًا 11001000). يؤدي استبدال البت الأخير بالرقم 1 إلى 11001001 = 201، أي تغيير لا يستطيع الإنسان رؤيته.
وعبر آلاف البكسلات، تعيدون بناء الحمولة بقراءة بتات LSB تلك بالترتيب.
# Embed: keep top 7 bits, set LSB to the secret bit
# value 200 = 1100100 0 -> hide 1 -> 1100100 1 = 201
#
# In Python terms (read-only illustration):
# new_byte = (color_byte & 0xFE) | secret_bit # 0xFE clears the LSBترميز رسالة كاملة
الرسالة سلسلة من البايتات، يتكون كل منها من 8 بتات. ولإخفاء رسالة مع ترويسة تحدد طولها، تُحوَّل الحمولة إلى تدفق من البتات، ثم يُكتب بت واحد في كل قناة لونية.
يخزّن المُضمِّن العملي أيضًا بادئة طول أو تسلسل إنهاء فريدًا حتى يعرف المستخرِج متى يتوقف عن القراءة؛ وإلا فلن يستطيع التمييز بين الحمولة وضوضاء الغلاف.
وهذا بالضبط ما تؤتمته أدوات مثل steghide وzsteg وstegano، وغالبًا ما تضيف طبقة لكلمة مرور وتشفير.
# Embed a secret into a PNG with the open-source 'stegano' tool
stegano-lsb hide -i cover.png -m 'meet at noon' -o stego.png
# steghide with a passphrase (encrypts then embeds)
steghide embed -cf cover.jpg -ef secret.txt -p 'p@ss'اختيار تنسيق الصورة المناسب
للتنسيق أهمية كبيرة بسبب الضغط:
- التنسيقات غير الفقدية (PNG, BMP) تحفظ كل بكسل بدقة تامة. وتبقى بيانات LSB سليمة تمامًا، لذا فهي حوامل مثالية.
- التنسيقات الفقدية (JPEG) تتخلص من التفاصيل الدقيقة أثناء الضغط، مما يدمر بيانات LSB الساذجة.
في JPEG، يجب أن يحدث التضمين في معاملات DCT، أي قيم مجال التردد المستخدمة أثناء الضغط، لا في البكسلات الخام. وتعمل أدوات مثل steghide والأداتين الكلاسيكيتين JSteg/OutGuess في ذلك المجال، لكي تصمد الحمولة أمام خطوة الضغط.
هشاشة LSB الساذج
تضمين LSB الساذج في البكسلات هش. فأي عملية تغيّر قيم البكسلات تدمر البتات المخفية:
- إعادة الحفظ بصيغة JPEG يعيد الضغط الفقدي كتابة البايتات.
- إعادة التحجيم أو الاقتصاص تغيّر إعادة أخذ العينات كل قيمة.
- تعديلات الألوان تغيّر السطوع والتباين.
- التحميل إلى وسائل التواصل الاجتماعي إذ تعيد المنصات ترميز الصور تلقائيًا.
يتعلق ذلك بركن المتانة في المثلث. وإذا كان يجب أن تصمد الحمولة أمام التحرير (مثل علامة مائية)، فضمّنوها في مجال التردد (DCT/DWT)، واقبلوا سعة أقل مقابل ذلك.
زيادة التخفي: التوزيع الذكي
يكتب LSB الساذج في البكسلات بالتسلسل بدءًا من الزاوية العلوية اليسرى، مما ينشئ بصمة إحصائية قابلة للكشف. وتوزع الأساليب الأكثر تخفيًا الحمولة لتفادي التحليل:
- التوزيع شبه العشوائي يهيّئ مفتاح الإخفاء PRNG الذي يختار البكسلات التي تحمل البتات، فيبدو النمط عشوائيًا.
- المناطق كثيرة الضوضاء تضمين البيانات في المناطق ذات النسيج (العشب والشعر) حيث يوجد التباين أصلًا، بدلًا من السماء الملساء.
- التضمين التكيفي تقلل الخوارزميات الحديثة دالة تكلفة قابلية الكشف إلى أدنى حد.
ويعمل مفتاح الإخفاء أيضًا ككلمة مرور؛ فمن دونه لا يستطيع المحلل إعادة بناء ترتيب البتات حتى لو اشتبه في وجود إخفاء.
أساسيات إخفاء البيانات في الصوت
يعمل الصوت وفق المبدأ نفسه الذي تعمل به الصور، لكن في المجال الزمني أو مجال التردد. يخزّن ملف WAV عينات، وهي عادةً أعداد من 16 بت تمثل السعة آلاف المرات في الثانية.
يستبدل تضمين LSB في الصوت البت الأدنى لكل عينة. ويقل تغيير مقداره خطوة واحدة في سعة من 16 بتًا كثيرًا عن عتبة السمع البشري، لذلك يبدو الصوت مطابقًا.
ومع وجود 44,100 عينة في الثانية لكل قناة، يوفر الصوت سعة كبيرة، مع أن التنسيقات الفقدية مثل MP3 تدمر بتات LSB في العينات الخام بالطريقة نفسها التي يدمر بها JPEG بتات LSB في البكسلات.
# Hide a file in a WAV using the open-source steghide
steghide embed -cf song.wav -ef secret.txt -p 'p@ss'
# WAV is lossless (raw PCM samples) - LSB survives.
# MP3 is lossy - embed in the encoded domain or it is destroyed.تقنيات الصوت المتقدمة
إلى جانب LSB، يستخدم إخفاء الصوت حيلًا إدراكية تستند إلى كيفية عمل السمع:
- ترميز الطور يغيّر طور مكونات الصوت؛ فالأذن لا تتحسس الطور المطلق.
- إخفاء الصدى يُدخل أصداء صغيرة غير ملحوظة، ويشفّر تأخيرها البتات.
- الطيف المنتشر ينشر الحمولة عبر نطاق ترددي واسع على شكل ضوضاء منخفضة المستوى، ما يجعلها متينة أمام التحرير.
- إدراج النغمات يخفي البيانات باستخدام نغمات تحجبها أصوات أعلى قريبة (الحجب السمعي النفسي).
تبادل هذه الأساليب السعة مقابل المتانة والتخفي، على غرار أساليب الصور في مجال التردد.
المجال المكاني مقابل مجال التردد
تتمثل الفكرة الموحّدة في الوسائط المختلفة في اختيار المجال:
- المجال المكاني/الزمني يضمّن البيانات مباشرةً في البكسلات أو العينات. وهو بسيط وعالي السعة، لكنه هش أمام الضغط.
- مجال التردد يحوّل الإشارة (DCT لصور JPEG، وDWT للمويجات، وFFT للصوت)، ثم يضمّن البيانات في المعاملات ويعيد تحويلها. وهو أكثر متانة وتخفيًا، لكنه أقل سعة وأكثر تعقيدًا.
القاعدة هي: إذا كان الحامل سيُضغط أو يُعاد تحجيمه أو مشاركته، فضمّنوا البيانات في مجال التردد. أما الحوامل السليمة غير الفقدية، فيكفيها استخدام LSB المكاني.
تخطيط السعة
قدّروا قبل التضمين مقدار البيانات التي يمكنكم إخفاؤها بأمان. ومن الإرشادات المفيدة معدل التضمين، أي عدد البتات المخفية لكل بت من الغلاف.
- بت واحد لكل قناة (LSB كامل) يوفر أقصى سعة، لكنه الأسهل كشفًا.
- المعدلات الجزئية يؤدي استخدام جزء فقط من البكسلات إلى خفض السعة، لكنه يحسن عدم القابلية للملاحظة بدرجة كبيرة.
تحتوي صورة RGB بأبعاد 1920x1080 على نحو 6.2 مليون بايت لوني، أي ما يقارب 777 KB عند استخدام LSB كامل. لكن التضمين المراعي للأمان يستخدم جزءًا من ذلك، لأن ملء كل بتات LSB ينتج شذوذًا إحصائيًا تكشفه أدوات التحليل الإخفائي بسهولة.
# Rough capacity at 1 bit/channel full LSB:
# width x height x channels / 8 bytes
# 1920 x 1080 x 3 / 8 = ~777,600 bytes (~759 KB)
# In practice use a fraction to stay below detection thresholds.خلاصات دفاعية
من منظور المدافع، يوضح لكم فهم التضمين ما ينبغي مراقبته:
- اختلافات التنسيق قد تشير صورة PNG/BMP حيث يُتوقع JPEG إلى اختيار حامل غير فقدي لتضمين LSB.
- شذوذ الحجم يستدعي الملف الأكبر مما يبرره محتواه المرئي الانتباه.
- إعادة الترميز كوسيلة دفاع تدمر المنصات التي تعيد ضغط جميع التحميلات حمولات LSB الساذجة، وهو إجراء تخفيف رخيص.
- التحليل الإحصائي يؤدي تضمين LSB الكامل إلى تسطيح التوزيع الطبيعي لقيم البتات، ويمكن للتحليل الإخفائي كشف ذلك.
تمثل هذه البصمات جسرًا إلى الدرس التالي: كشف البيانات المخفية.
اختبار سريع
اختبروا فهمكم لاختيار التنسيق.
مراجعة: إخفاء البيانات في الصور والصوت
لقد تعلمتم كيف تُضمَّن البيانات فعليًا في ملفات الوسائط.
- تضمين LSB يستبدل البت الأدنى في كل عينة لونية أو صوتية؛ وهو تغيير مقداره خطوة واحدة لا يمكن ملاحظته.
- تحدد بادئة الطول أو علامة الإنهاء موضع انتهاء الحمولة؛ وتؤتمت أدوات مثل steghide وstegano هذه العملية مع تشفير اختياري.
- التنسيقات غير الفقدية (PNG, BMP, WAV) تحفظ بيانات LSB؛ أما التنسيقات الفقدية (JPEG, MP3) فتتطلب تضمينًا في مجال التردد (DCT/echo/spread spectrum).
- يتحسن التخفي باستخدام التوزيع شبه العشوائي والتضمين في المناطق كثيرة الضوضاء والخوارزميات التكيفية التي يضبطها مفتاح الإخفاء.
- يوازن الاختيار بين المجال المكاني ومجال التردد بين السعة والمتانة.
- يراقب المدافعون اختلافات التنسيق وشذوذ الحجم والبصمات الإحصائية، ويستخدمون إعادة الترميز لتدمير الحمولات الساذجة.
بعد ذلك، سنتعلم كشف البيانات المخفية من خلال التحليل الإخفائي.
تعلم Cyber Security Academy مع معلم ذكاء اصطناعي — مجانًا
اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.
- الدورات
- 76
- الدروس
- 303
الأسئلة الشائعة
هل درس «الإخفاءية في الصور والصوت» مجاني؟
نعم — نص درس «الإخفاءية في الصور والصوت» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cyber Security Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Cyber Security Academy 4 دروس في المجموع.
ماذا ستتعلم في «الإخفاءية في الصور والصوت»؟
تضمين البيانات في ملفات الوسائط. تتمرن على Cyber Security Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Cyber Security Academy؟
لا تُشترط خبرة سابقة. Cyber Security Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «الإخفاءية في الصور والصوت»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Cyber Security Academy هذا؟
نعم. كل درس في Cyber Security Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- ما هي الإخفاءية
- الإخفاءية في الصور والصوت
- اكتشاف البيانات المخفية (Steganalysis)
- القنوات الخفية واستخراج البيانات