Electronics & Computer Engineering


Recent Submissions

Now showing 1 - 5 of 75
  • Item
    Reinforcement Authentication Model based on DYMO Routing Protocol for MANET (RAD
    (Al-Quds University, 2020-06-02) Mohammad Rajeh Ali Ayyad; محمد رجا علي عياد
    Mobile Ad hoc network (MANET) is a group of mobile nodes that make together a network, this network doesn’t have a fixed infrastructure or topology. Such networks can work in very tough zones, like crises zones. If one of the mobile nodes must interact with another node within the same transmission range, they can interact directly with each other; on the other hand, if they are in different transmission ranges, the nodes between them must forward the packet to them. Thus, mobile nodes can be act as routers. the nodes in MANET that want to communicate with other nodes will use one of the known routing protocol to find the shortest path between sender and receiver, this shortest path depends on hops count and sequence number for the nodes, the main routing protocols that use this algorithm to select the shortest path of routing are AODV, DYMO and others. Due to the unique structure of MANET, there are many threats that face the packets transmission process, but the known routing protocols haven’t the ability to realize the security threatens for packet transmission process between the source node and the destination node, therefore, new model is proposed to improve the security in MANET. The new model uses encryption and authentication techniques for securing the data, and reinforcement learning for improve the cooperation between nodes in MANET that will increase the performance and the efficiency for the network. The results of the simulation show the improved effectiveness of the proposed model on the MANET activities, while the performance were increased/decreased due to the overheads of the new model شبكة ad hoc المتنقلة (MANET) عبارة عن مجموعة من العقد المتنقلة التي تشكل معاً شبكة، هذه الشبكة لا تمتلك بنية أو طوبولوجية ثابتة. مثل هذه الشبكات ممكن أن تعمل في مناطق صعبة جداً، مثل مناطق الحروب أو المناطق التي لا يمكن للمستخدمين التواصل معاً بشكل مباشر عن طريق اب ا رج الاتصالات. في حال أ ا ردت إحدى العقد المتحركة أن تتواصل مع عقدة أخرى موجودة في نطاق أرسالها فيمكن أن تتواصل معها مباشرة، ولكن إذا كانت العقدة المستقبلة غير موجودة في نطاق إرسال العقدة المرسلة، فان العقد الموجودة بينهما ستقوم بتمرير الحزمة من عقدة الى أخرى، في هذه الحالة ستتصرف العقد البينية كجهاز توجيه. ستقوم العقدة التي تريد الاتصال بعقد أخرى باستخدام أحد بروتوكولات التوجيه المعروفة لإيجاد أقصر طريق بينها و بين العقدة المستقبلة، هذا الطريق الأقصر يعتمد على عدد القف ا زت البينية و رقم تسلسل فريد لكل عقدة، من أهم بروتوكولات التوجيه التي تعتمد على إيجاد الطريق الأقصر هي AODV و DYMO و غيرها. نظ ا رً لطبيعة MANET المميزة فإن هناك العديد من التهديدات التي تواجهها عملية تبادل الحزم، لكن البروتوكولات المعروفة لا تمتلك القدرة على إستيعاب هذه التهديدات الأمنية بين العقدة الم رسلة و العقدة المستقبلة، بسبب ذلك، تم طرح النموذج الجديد لتعزيز الأمان في MANET . النموذج الجديد يستخدم تقنيات التشفير و المصادقة لتأمين حزم المعلومات، كما يستخدم تقنية تعزيز التعلم لتحسين التعاون بين العقد في MANET والتي ستقوم ب زيادة الأداء والفعالية للشبكة. تظهر نتائج المحاكاة بعد إستخدام مؤش ا رت الأداء أن النموذج المقترح قدم دو ا رً كبي ا رً في تحسين فعالية أنشطة MANET .
  • Item
    An Extended Actor-Critic Architecture with Phasic Behavioral Inhibition: The Case of Dopamine-Serotonin Interaction
    (Al-Quds University, 2018-12-15) Aya Hussein Ahmad Mousa; آية حسين أحمد موسى
    The actor-critic architecture based on the temporal difference (TD) algorithms have been playing a critical role in reinforcement learning. The actor represents the policy structure and critic represents the value function. The TD prediction error signal is used as a teaching signal for both the actor and critic modules. Current models of the actor-critic architecture assume that only the unmodified TD signal can serve as a teaching signal for the actor and critic modules. In this thesis, we introduce an extended version of the actor-critic architecture that addresses the effect of two kinds of reinforcement signals; the TD signal and the behavioral inhibition signal. We argue that the role of the behavioral inhibition signal is to produce phasic opposition of the TD signal in order to ascertain the significance learning and fortify consolidation. Based on this logic, we construct a new neurocomputational model of the brain region the basal ganglia. This model addresses the effects of the neurotransmitters dopamine and serotonin in the reinforcement learning process. The dopamine function is represented by a TD prediction error signal, while serotonin is simulated as a behavioral inhibition signal whose role is to phasically inhibit the TD prediction error signal. We utilize major depressive disorder and selective serotonin reuptake inhibitor (SSRI) antidepressants as experimental representations of variable levels of dopamine and serotonin to study their interaction in reinforcement learning. We use three different modeling approaches to simulate experimental reinforcement learning data: (1) TD only model, (2) TD and risk prediction model, and (3) Our proposed TD and behavioral inhibition model. Simulation results show that our proposed model simulated experimental reinforcement learning data from MDD and SSRIs significantly better the other two modeling approaches. This extended actor-critic architecture can have a myriad of applications in robotics as well as neuroscience.
  • Item
    Robust Dynamic Congestion Control Protocol for Mobile Networks (TCP DCM+)
    (Al-Quds University, 2019-12-21) Derar Sameeh Abdel-Aziz Khader; ضرار سميح عبد العزيز خضر
    Data networks are considered as a critical corner of data transmission between the different hosts wherever they exist. In the last few years, the wireless and mobile networks become more important for daily use and are their spread is increasing for personal and commercial use. The main difference between wired and wireless networks is the large number of lost packets during the data transmission. The packet losses are a result of errors on the data transmission channel. These errors are due to external noise, interference and mobility of the wireless devices that results in deep fading. The mentioned problems earlier are the reasons that the throughput of wireless, mobile and mobile adhoc networks is less than wired networks, which does not suffer such problems. Old traditional transmission control protocols like (Standard TCP) behave extremely hard when they detect any data packet losses. They drop the congestion window to the half though the transmission channel capacity is not exhausted. This high drop results in low throughput, hence longer time to finish the transmission. Most traditional TCP protocols lack the use of appropriate techniques to estimate the available channel capacity, which are known as bandwidth estimation (BWE) techniques. In 2004, TCP Westwood+ protocol proposed a technique for estimating the available channel capacity. It uses a first-order low-pass filter to find the available bandwidth. TCP Westwood+ has largely improved the throughput of TCP connections, however, the problem of window drops is still existing, which makes it less appropriate for use in networks, that include mobility, i.e. MANETs. Hence, it is desired to modify the TCP protocol behavior to eliminate these drops, which are the results of congestion events or channel problems. If the congestion events are eliminated, then we can detect the times at which the transmission channel problems occur. The proposed approach in this thesis is called TCP DCM+. It is the abbreviation for “Dynamic Congestion Control for Wireless and Mobile Networks”. The transfer of data with different sizes has been simulated with different packet error rates, which should simulate the existence of wireless channel for large packet error rates (1e-3 to 5e-2). We executed hundreds of simulations for cases with different parameters like error rates, MTU sizes, bandwidth of both bottleneck (link) and destination (access), protocol type and the size of sent data. We found that DCM+ performs better than the other approaches, especially if the error rates are large. We used the usual performance metrics like throughput, average delay and packet losses to measure how well our approach performs. Additionally, we introduced two new metrics to measure the total time needed to finish the transmission, and also to measure the robustness and stability of the transmission. Our conclusion is, that DCM+ is minimizing congestion events, hence, transmits data much faster, shows stable behavior and is highly robust compared with other approaches.
  • Item
    Remote Smart Grid Lab
    (Al-Quds University, 2019-12-22) Mays’a Fahmi Ahmad Abushams; ميساء فهمي احمد ابوشمس
    Getting to access remote facilities anywhere is a new way for teaching and learning. New technology that can help achieving many goals in the research field, it stands up against the impossibility to access labs over the world. This provide a practical approach for limited budget research institutions to provide cost effective research facilities. Online remote lab is a new technology in the learning arena. It can be said that it is the first step in developing the research labs to become accessible worldwide. This thesis aims to make labs remotely accessible for students and researchers even in the developed countries. Through the Internet, it became easy for researches to access the needed facilities for their research. This thesis works on converting smart grid labs by using Raspberry Pi B+ 3 board to become online labs that can be operated from any location. By using JSON programming language and an online website to connect the modules with each other for the chosen experiment, and then observe the results in SCADA. By this way any student at any time can use the lab to implement their experiments and obtaining the results. In the end of establishing a Remote lab using Raspberry Pi B+ 3 board and relay modules, connect them with each other and the lab module, so the user can execute the connection through the web site, and the module will connected to each other according to experiment procedure, each input will be connected to each output through Raspberry Pi B+ 3 board and using the right code to v execute that, solar panel experiment has been chosen for its importance to research area, the experiment has been connected, the SCADA showed the result remotely, through Internet connection. A complete experiment has been connected online remotely with all its components and the result showed remotely also, with minimum hardware and cost.
  • Item
    Distributed Obfuscation Model for Software Protection (DOSP)
    (Al-Quds University, 2022-01-09) Mai Kamel Atef Amro; مي كامل عاطف عمرو
    This study suggests a new Distributed Obfuscation Model for Software Protection (DOSP-AES). DOSP-AES is proposed as a method of protecting software from a reverse engineering analysis. DOSP-AES is made up of software processes that are obfuscated and de-obfuscated.Three levels of obfuscation techniques are used in the obfuscated software process. DOSP-AES is applied to C++, Java, and Android programs. The first level, name obfuscation, involves renaming identifiers and variables with meaningless names and obfuscating them using the AES algorithm with a random key length of 128 bits. Methods for obfuscating code include the renaming and removing process. Removing means removing unnecessary debugging information, methods, comments, and structures from the program. The transformation of a program's variables, constants, class, method names, and other identifiers to prevent attackers from understanding and analyzing it is referred to as renaming. The second level, data obfuscation, proposed concealing data values by changing the statements in which variables are defined and used. DOSP-AES encrypts the values of constants, local and global program variables to complicate reverse engineering and protect sensitive data from disclosure. Data obfuscation with the AES algorithm and a key length of 256 bits. The most important aspect is that DOSP-AES obfuscates each variable differently from the other when it is mentioned on more than one site with the same application; each variable appears in a different form from the other, despite the fact that they are the same variable. The third level, bytecode obfuscation, where bytecode is modified so that after the bytecode is compiled, it contains obscure compilation errors, but the compiled Java program still functions as expected. Java is compiled into bytecode. Decompiling bytecode files is easy because of the names, fields, and methods within them. Obfuscation is one of the major defenses against decompilation. The goal of bytecode obfuscation is to make the decompiled program much harder to understand so that the attacker must spend more time Sand effort on the obscure bytecode. Identifier names of bytecode are replaced with illegal obfuscated identifiers, which cause syntax errors and compilation errors when decompiling. The DOSP-AES algorithm encrypts identifiers and class names in bytecode files with a key length of 192 bits using the AES algorithm. By obfuscating the code on multiple levels, the attacker will have a more difficult time analyzing and analyzing the code. The de-obfuscated process is a client-server model (distributed system), where clients download the obfuscated software and applications that were uploaded to the internet. The client requests the server for the obfuscation key to de-obfuscate the software, then the server complies by sending the secure key (obfuscated key) as one block of 72 bytes. The key is randomly generated using a key generator (keygen) in the Crypto++ simulator. There are three levels of obfuscation in each subkey. The first level (name obfuscation) is de-obfuscated using 16-byte key lengths, the second Level (data obfuscation) is de-obfuscated using 32-byte key lengths, and the third level (bytecode obfuscation) is de-obfuscated using 24-byte key lengths. Thus, the experiment has produced successful and promising results since it is difficult for reverse engineering tools to read and analyze the obfuscated code. Even the revealed code did not perform as well as the original and obfuscated code. في هذا البحث، تم اقتراح نموذج تشفير جديدوهو تقنية التشفير الموزعة لحماية البرمجيات من عمليات الهندسة العكسية والتغيير. تم تطبيق هذه التقنية على برامج C++, java, android. يتكون النموذج المقترح من نظام لتشفير البرمجيات. ويتكون من عملية تشفير على ثلاثة مستويات: المستوى الأول، هو تشفير الاسم البرمجي (name code obfuscation)، ويتضمن هذا المستوى إعادة تسمية المعرفات function, والمتغيرات variable بأسماءغير مفهومة ولا معنى لها، باستخدام خوارزمية معيار التشفير المتقدمAES (Advance Encryption Standard) باستخدام مفتاح عشوائي randomkey طوله 128 بت لتشفيرها. يتضمن تشفير الكود البرمجي استخدام طريقة إعادة التسمية والإزالة. الإزالة تعني حذف المعلومات غير المفيدة، والتعليقات comments التي لن يتم استخدامها في البرنامج. يجعل الحذف من الصعب على المهاجم attacker القراءة والفهم والتحليل. تتضمن إعادة التسمية تحويل أسماء المتغيرات والمعرفات الأخرى من أجل منع القرصنة او فهم البرنامج وتحليله. المستوى الثاني، هو تشفير البيانات (data obfuscation)، يهدف هذا المستوى إلى إخفاء قيم البيانات وحمايتها. حيث يقوم النموذج المقترح بتشفير قيم الثوابت constant ومتغيرات البرامج المحلية والعالمية global /local variables لجعل عملية الهندسة العكسية أكثر تعقيدًا، باستخدام خوارزميةAES بمفتاح طوله 256 بت. ويشفر نفس المتغير كل مره في نفس البرنامج بطريقة مختلفة يظهر فيها خلال الكود. المستوى الثالث، هو تشفير البايت كود (bytecode obfuscation)، هذا المستوى يقوم بتعديل البايت كود. يقوم DOSP-AES بتشفير المعرفات (Identifier)في ملف البايت كود، باستخدام خوارزمية AESبمفتاح طوله 192 بت.وإذا تم محاوله تشغيل البرنامج وفك تشفيره بدون مفتاح فك التشفير، ف ان البرنامج يعطي أخطاء ولن يتم تشغيله.يهدف تشفير البايت كود لجعل البايت كود أكثر غموضاً، وجعل الملف المشفر أكثر صعوبة بالفهم، لذلك يجب على المهاجم أن يقضي المزيد من الوقت والجهد على محاوله فك تشفير البايت كود. يؤدي استخدام مستويات متعددة من التشفير والتعتيم (Obfuscation and encryption) إلى زيادة صعوبة وتعقيد الكود. لذلك، سيستغرق المهاجم وقتًا أطول لتحليل الكود ويصعب تحليله وفهمه. في عملية إلغاء التشفير، يقوم المستخدم بتنزيل التطبيق او البرنامج الذي تم تشفيره ورفعه على الانترنت، لن يستطيع المستخدم القيام بتشغيل التطبيق المشفرأو استخدامه بدون مفتاح فك التشفير، لذلك يجب على المستخدم ان يقوم بطلب مفتاح فك التشفير من الخادم (server). بعد قيام السيرفر بالتأكد من المستخدم (authentication process) من خلال رمز التأكيد الذي يتم ارساله للمستخدم، ومن خلال رقم التطبيق (software ID) ، يقوم السيرفر بفك تشفير التطبيق عن طريق انشاء مفتاح بشكل عشوائي وله 72 بايت، بعد ذلك يتمكن المستخدم من استخدام التطبيق. يتكون مفتاح فك التشفير من ثلاثة أجزاء، كل جزء يختص ب فك تشفير مستوى معين من مستويات التشفير، المستوى الأول وهو تشفير الكود البرمجي (name obfuscation)، يتم فك تشفيره بمفتاح طوله 16 بايت، المستوى الثاني وهو تشفير البيانات (data obfuscation)، يتم فك تشفيره بمفتاح طوله 32بايت، تشفير البايت كود (bytecode obfuscation)، يتم فك تشفيره بمفتاح طوله 24 بايت. من خلال مقارنه نتائج هذا النموذج (DOSP-AES)، مع نتائج برامج التشفير الأخرى، ومع نموذج (DOSP-RSA)، أثبت هذا النموذج فاعليته وقوته ضد هندسه التحليل العكسية (reverse engineering) وغيرها من أدوات تحليل البرامج والتطبيقات. باستخدام هذا النموذج فانه من الصعب على المهاجم (attacker) القيام بتحليل البرامج والتطبيقات.