إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

تشفير الصور باستخدام أحد أدوات ImageMagick

تقليص
X
تقليص

  • تشفير الصور باستخدام أحد أدوات ImageMagick

    السلام عليكم و رحمة الله
    مرحبا بأعضاء و وزوار مجتمع لينكس العربي
    =========
    فهدا الموضوع البسيط . سأتطرق لطريقة تشفير الصور أو ترميزها باستخدام أداة convert

    أولا المقصود بالتشفير هو عدم ظهور الصورة بشكل واضح . محتوى الصورة يظهر فقط على شكل بيكسلات عشوائية
    أو
    ما تم الاشارة له بدليل الاداة

    كود:
    man convert | grep encipher
    كود:
    -encipher filename   convert plain pixels to cipher pixels
    ===============
    أولا مثال للصورة الاصلية
    -------------------



    ==============
    يتم التشفير بهدا الشكل . الطريقة الاولى بوضع كلمة سر

    كود:
    echo '12345' > passwd.txt
    هدا فقط لعمل كلمة سر وسط ملف نصي
    ثم
    تطبيق أمر التشفير بهدا الشكل

    كود:
    convert Baie1.jpg -encipher passwd.txt  Baie1.jpg
    بالاول أداة convert ثم اسم الصورة
    بالمثال صورة بصيغة jpg ثم لاحقة encipher المسؤولة عن عمل التشفير . بالمناسبة imagemagick تستخدم تقنية AES .
    بعد دلك اسم الملف النصي الدي يوجد بع كلمة السر . ثم بالاخير اسم الملف المخرج.
    ==================
    النتيجة التي ستظهر

    ========================
    لاعادة الصورة لحالتها الاصلية . نطبق الامر بهدا الشكل

    كود:
    convert Baie1.jpg -decipher passwd.txt  Baie1.jpg
    ما يعني عوض وضع encipher غيرنها الى decipher
    ----------------------------------
    سترجع الصورة لحالتها الاصلية . و لكن صيغ jpg ستعاني من العملية . تأثير على جودة الصورة
    و لهدا دائما من الافضل العمل على نسخ من الصور و ليس الاصلية
    هدا مثال . للضرر الدي سيلحق صيغ jpg
    -----------------------

    =====================
    صيغ png لا تتأثر بشكل كبير من تكرار العملية .
    ===================
    يمكن أيضا عوض استخدام كلمة السر أن نستخدم صورة لتشفير . اي صيغة jpg . png . gif
    مثال
    كود:
    convert Baie1.jpg -encipher bird.png  Baie1.jpg
    --------------------------
    كود:
    convert Baie1.jpg -decipher bird.png  Baie1.jpg
    ================
    فقط معلومة للاضافة . ليست عملية . و لكن يمكن تحسنها باضافات أخرى
    ================
    بأمان الله

      لا يمكن إضافة تعليقات.

    التصانيف

    تقليص

    Latest Articles

    تقليص

    • تجربة تثبيت توزيعة ديبيان بجانب ويندوز بدون usb او cd
      أحمد غريب
      التجربة تمت على VirtualBox النظام ويندوز اكسبي قرص صلب واحد قسمين c و d

      التجربة قسمين القسم الاول تجهيز ملف iso دبيان لعملية الاقلاع لايف من الهاردسك والقسم الثاني عملية الثتبيت تحتاج الى اتصال بالانترنت
      و استخدمت برنامج UltraISO لعمل virtual cd drive لملف iso

      1- نسخ ملف iso دبيان داخل القرص C
      2- تركيب الملف iso كقرص وهمي "mount"
      3- فتح debian-lnstaller loader ثم نكست نكست نكست

      4- حذف كل ما يوجد في ملف grup.cfg موجود في C داخل في مجلد win32-loader

      ثم اضافة مايلي
      كود:
      menuentry 'debian-live-8-amd64-gnome-desktop' {
          set isofile='/debian-live-8.6.0-amd64-gnome-desktop.iso'
          loopback loop $isofile
          linux (loop)/live/vmlinuz boot=live config fromiso=/dev/sda1/$isofile
          initrd (loop)/live/initrd.img
      }
      استبدال initrd.gz موجود في داخل win32-loade التحميل من الرابط
      http://ftp.nl.debian.org/debian/dists/testing/main/installer-amd64/current/images/hd-media/
      بعد ...
      27-11-2016, 03:08 PM
    • عداد الإستغفار
      مبتدى في للينكس
      السلام عليكم ورحمة الله و بركاته

      شرح فكرة السكربت:

      عداد الأستغفار يعمل عند الضغط على أختصار من الكيبورد و عند كل ضغطة يضيف 1 إلى العداد و يظهر إطار صغير في منتصف الشاشة لعرض العدد لمدة ثانية ثم يتم أغلاقه تلقائياً . أذا وصل العداد إلى 100 يرجع إلى الصفر. يتم حفظ العدد في ملف count.txt يتم إنشاءه تلقائياً بواسطة السكربت.


      شرح إعداد السكربت:

      1. قم بفتح مجلد Home وقم بإنشاء مجلد بإسم counter

      2. في داخل المجلد counter قم بإنشاء ملف نصي بإسم Counter.java , ثم قم بنسخ السكربت التالية و ضعه في داخل الملف ثم قم بالحفظ



      :
      package counter; import java.awt.BorderLayout; import java.awt.Event; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.IOException; import java.io.PrintWriter; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JButton; import javax.swing.SwingConstants; public class Counter extends JFrame { private static String fileName = System.getProperty("user.dir") + "/counter/count.txt"; public Counter() { this.setTitle("Counter"); this.setResizable(false); this.setLocationRelativeTo(null); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.pack(); this.setSize(150, 150); this.setVisible(true); } public static void main(String[] args) { Counter obj = new Counter(); int count = 0; try { try { try { String countString = readFile(fileName, StandardCharsets.UTF_8).trim(); count = (int) Integer.parseInt(countString); } catch (Exception e) { outResult(fileName, String.valueOf(count)); } finally { if (count
      ...
      23-11-2016, 02:11 AM
    • سكربت بايثون لتسهيل تثبيت بعض الأشياء في فيدورا
      yucef
      بسم الله الرحمن الرحيم
      السلام عليكم ورحمة الله وبركاته




      قمت بعمل سكربت بايثون لتسهل تثبيت بعض الأشياء لفيدورا ,طريقة تنزيل وتشغيل السكربت مشروحة في هذا الرابط .

      https://github.com/yucefsourani/arfedy

      ...
      23-11-2016, 02:09 AM
    • إعادة تسمية الملفات باستخدام rename
      OtmanGX
      لينكس على السّريع : إعادة تسمية الملفات باستخدام rename


      تذكير بالموضوع السابق : إعادة تسمية الملفات باستخدام mv

      كما في المرة السابقة سنتحدث اليوم عن إعادة تسمية مجموعة من الملفات لكن باستخدام أداة أخرى وهي rename ؛ بحيث أنّنا لن نضطر لاستعمال حلقات التكرار والأمر مشابه نوعا ما لما يقوم به الأمرsed ، لكن الأداة rename تستخدم التعابير النظامية perlexpr لكننا سنذكر فقط التعابير النظامية المشتركة بين الاثنين .
      بعض خصائص الأمر :
      n, –no-act- : يوصى باستخدام هذه الخاصية كثيرا ، فمن خلالها يتم إظهار التغييرات التي ستتم بدون إجراء أي تعديل
      f, –force : الكتابة على الملفات بدون أدنى تحذير
      v, –verbose – : تفعيل وضع verbose ليتم إظهار التغييرات الجارية
      ويكون الشكل العام للأمر كالتالي :

      :
      rename [option] 's/old-name/new-name/' file
      باستبدال file بالملفات التي تود تغيير أسمائها
      كمثال أوّلي مثلا نريد استبدال المسافات الفارغة المتواجدة في أسماء الملفات أو المجلدات بالرمز _ :

      المثال 1 :
      :
      rename 's/ /_/g' *
      g ليتم الاستبدال في أكثر من موضع إن وجد
      الآن سنقوم كالعادة بإنشاء مجلد نقوم فيه بأمثلتنا
      ...
      23-11-2016, 02:05 AM
    • المراقبة العالمية ! Global surveillance
      عبدالرحمـن محمد
      السلام عليكم ورحمة الله

      مقدمة :
      في يونيو 2013، سرَّب إدوارد سنودين، وهو عميل متعاقد مع وكالة الأمن القومي، مستندات تّصِف بريسم "ومجموعة برامج أخري" بأنه برنامج يتيح مراقبة معمقة للاتصالات الحية والمعلومات المخزنة. ويمكن من استهداف أي عميل لشركة منخرطة في برنامج بريسم، في حال كان هذا العميل يسكن خارج الولايات المتحدة، أو كان مواطنًا أمريكيًا له اتصالات تتضمن محتويات وِب خاصة بأشخاص خارج الولايات المتحدة. البيانات التي يقال أن بريسم يمكِّن من الحصول عليها تتضمن، رسائل البريد الإلكتروني، ومحادثات الفيديو والصوت، والصور، والاتصالات الصوتية ببرتوكول الإنترنت، وعمليات نقل الملفات، وإخطارات الولوج وتفاصيل الشبكات الاجتماعية.
      كشفت الوثائق المسرّبة أن NSA كانت قادرة على الدخول مباشرة إلى الخوادم الخاصة لكل من
      ...
      23-11-2016, 02:04 AM
    • اضافة مستخدم لينيكس جديد و استعمال نفس اسم الحساب لMySQL و قاعدة بيانات بإسمه ايضًا.
      superlinux
      طبعًا هذه استعملها لفتح حساب جديد لشخص يريد ان يستعمل مجلده المنزل (او home directory بالانجليزي) لحفظ موقع الويب خاصته. يعني هذه طريقة ارجو تكون خفيفة ظريفة لإدارة الخادم عليكم. و هكذا ابدؤوا بيع المواقع عالسريع.

      انا استعمل دبيان 8.0 جسي هنا.

      قبل أي شيء, لتوظيف المجلدات المنزل كلها لتكون محافظ لصفحات ويب لكل مستخدم. نفعّل الوحدة userdir:
      :
      a2enmod userdir
      بس على شان تفهم كيف تحفظ الامر السابق: a2 = apache2 web server , enmod =enable module
      هناك الكثير من الاوامر تخص خادم الويب اباتشي تبدأ بــ a2 .

      ثم حرر بأي محرر نصي مثل vi او pico ملف اعدادات الاباتشي:

      :
      vi /etc/apache2/apache2.conf
      ضع في آخر سطر في الملف على سطر مستقل لوحده ما يلي:
      :
      UserDir public
      UserDir disable root
      الكلمة public_html هو اسم مجلد موجود في المجلد المنزل مباشرة. بمعنى لو كان عندك اسم مستخدم اسمه saleem (سليم) , لازم سليم يضع موقعه على الخادم داخل مسار القرص /home/saleem/public_html/ . و التعل...
      23-11-2016, 02:03 AM
    يعمل...
    X