Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Mohamed G. Gouda is active.

Publication


Featured researches published by Mohamed G. Gouda.


acm special interest group on data communication | 1998

Secure group communications using key graphs

Chung Kei Wong; Mohamed G. Gouda; Simon S. Lam

Many emerging applications (e.g., teleconference, real-time information services, pay per view, distributed interactive simulation, and collaborative work) are based upon a group communications model, i.e., they require packet delivery from one or more authorized senders to a very large number of authorized receivers. As a result, securing group communications (i.e., providing confidentiality, integrity, and authenticity of messages delivered between group members) will become a critical networking issue.In this paper, we present a novel solution to the scalability problem of group/multicast key management. We formalize the notion of a secure group as a triple (U,K,R) where U denotes a set of users, K a set of keys held by the users, and R a user-key relation. We then introduce key graphs to specify secure groups. For a special class of key graphs, we present three strategies for securely distributing rekey messages after a join/leave, and specify protocols for joining and leaving a secure group. The rekeying strategies and join/leave protocols are implemented in a prototype group key server we have built. We present measurement results from experiments and discuss performance comparisons. We show that our group key management service, using any of the three rekeying strategies, is scalable to large groups with frequent joins and leaves. In particular, the average measured processing time per join/leave increases linearly with the logarithm of group size.


embedded and real-time computing systems and applications | 2005

ExScal: elements of an extreme scale wireless sensor network

Anish Arora; Rajiv Ramnath; Emre Ertin; Prasun Sinha; Sandip Bapat; Vinayak Naik; Vinodkrishnan Kulathumani; Hongwei Zhang; Hui Cao; Mukundan Sridharan; Santosh Kumar; Nick Seddon; Christopher J. Anderson; Ted Herman; Nishank Trivedi; Mikhail Nesterenko; Romil Shah; S. Kulkami; M. Aramugam; Limin Wang; Mohamed G. Gouda; Young-ri Choi; David E. Culler; Prabal Dutta; Cory Sharp; Gilman Tolle; Mike Grimmer; Bill Ferriera; Ken Parker

Project ExScal (for extreme scale) fielded a 1000+ node wireless sensor network and a 200+ node peer-to-peer ad hoc network of 802.11 devices in a 13km by 300m remote area in Florida, USA during December 2004. In comparison with previous deployments, the ExScal application is relatively complex and its networks are the largest ones of either type fielded to date. In this paper, we overview the key requirements of ExScal, the corresponding design of the hardware/software platform and application, and some results of our experiments.


international world wide web conferences | 2001

Batch rekeying for secure group communications

Xiaozhou Steve Li; Yang Richard Yang; Mohamed G. Gouda; Simon S. Lam

Many emerging web and Internet applications are based on a group communications model. Thus, securing group communications is an important Internet design issue. The key graph approach has been proposed for group key management. Key tree and key star are two important types of key graphs. Previous work has been focused on individual rekeying, i.e., rekeying after each join or leave request. In this paper, we first identify two problems with individual rekeying: inefficiency and an out-of-sync problem between keys and data. We then propose the use of periodic batch rekeying which can improve efficiency and alleviate the out-of-sync problem. We devise a marking algorithm to process a batch of join and leave requests. We then analyze the key server’s processing cost for batch rekeying. Our results show that batch rekeying, compared to individual rekeying, saves server cost substantially. We also show that when the number of requests in a batch is not large, the best key tree degree is four; otherwise, key star (a special key tree with root degree equal to group size) outperforms small-degree key trees.


IEEE Transactions on Software Engineering | 1993

Closure and convergence: a foundation of fault-tolerant computing

Anish Arora; Mohamed G. Gouda

The authors formally define what it means for a system to tolerate a class of faults. The definition consists of two conditions. The first is that if a fault occurs when the system state is within the set of legal states, the resulting state is within some larger set and, if faults continue to occur, the system state remains within that larger set (closure). The second is that if faults stop occurring, the system eventually reaches a state within the legal set (convergence). The applicability of the definition for specifying and verifying the fault-tolerance properties of a variety of digital and computer systems is demonstrated. Using the definition, the authors obtain a simple classification of fault-tolerant systems. Methods for the systematic design of such systems are discussed. >


international conference on distributed computing systems | 2004

Firewall design: consistency, completeness, and compactness

Mohamed G. Gouda; Xiang-yang Alex Liu

A firewall is often placed at the entrance of each private network in the Internet. The function of a firewall is to examine each packet that passes through the entrance and decide whether to accept the packet and allow it to proceed or to discard the packet. A firewall is usually designed as a sequence of rules. To make a decision concerning some packets, the firewall rules are compared, one by one, with the packet until one rule is found to be satisfied by the packet: this rule determines the fate of the packet. We present the first ever method for designing the sequence of rules in a firewall to be consistent, complete, and compact. Consistency means that the rules are ordered correctly, completeness means that every packet satisfies at least one rule in the firewall, and compactness means that the firewall has no redundant rules. Our method starts by designing a firewall decision diagram (FDD, for short) whose consistency and completeness can be checked systematically (by an algorithm). We then apply a sequence of five algorithms to this FDD to generate, reduce and simplify the target firewall rules while maintaining the consistency and completeness of the original FDD.


Computer Networks | 2007

Structured firewall design

Mohamed G. Gouda; Alex X. Liu

A firewall is a security guard placed at the point of entry between a private network and the outside Internet such that all incoming and outgoing packets have to pass through it. The function of a firewall is to examine every incoming or outgoing packet and decide whether to accept or discard it. This function is conventionally specified by a sequence of rules, where rules often conflict. To resolve conflicts, the decision for each packet is the decision of the first rule that the packet matches. The current practice of designing a firewall directly as a sequence of rules suffers from three types of major problems: (1) the consistency problem, which means that it is difficult to order the rules correctly; (2) the completeness problem, which means that it is difficult to ensure thorough consideration for all types of traffic; (3) the compactness problem, which means that it is difficult to keep the number of rules small (because some rules may be redundant and some rules may be combined into one rule). To achieve consistency, completeness, and compactness, we propose a new method called structured firewall design, which consists of two steps. First, one designs a firewall using a firewall decision diagram instead of a sequence of often conflicting rules. Second, a program converts the firewall decision diagram into a compact, yet functionally equivalent, sequence of rules. This method addresses the consistency problem because a firewall decision diagram is conflict-free. It addresses the completeness problem because the syntactic requirements of a firewall decision diagram force the designer to consider all types of traffic. It also addresses the compactness problem because in the second step we use two algorithms (namely FDD reduction and FDD marking) to combine rules together, and one algorithm (namely firewall compaction) to remove redundant rules. Moreover, the techniques and algorithms presented in this paper are extensible to other rule-based systems such as IPsec rules.


IEEE Transactions on Computers | 1989

Token systems that self-stabilize

Geoffrey Brown; Mohamed G. Gouda; Chuan-lin Wu

Presents a novel class of mutual exclusion systems, in which processes circulate one token, and each process enters its critical section when it receives the token. Each system in the class is self-stabilizing; i.e. it it starts at any state, possibly one where many tokens exist in the system, it is guaranteed to converge to a good state where exactly one token exists in the system. The systems are better than previous systems in that their state transitions are noninterfering; i.e., if any state transition is enabled at any instant, then it will continue to be enabled until it is executed. This makes the systems easier to implement as delay-insensitive circuits. >


IEEE Transactions on Parallel and Distributed Systems | 2008

Diverse Firewall Design

Alex X. Liu; Mohamed G. Gouda

Firewalls are the mainstay of enterprise security and the most widely adopted technology for protecting private networks. An error in a firewall policy either creates security holes that will allow malicious traffic to sneak into a private network or blocks legitimate traffic and disrupts normal business processes, which in turn could lead to irreparable, if not tragic, consequences. It has been observed that most firewall policies on the Internet are poorly designed and have many errors. Therefore, how to design firewall policies correctly is an important issue. In this paper, we propose the method of diverse firewall design, which consists of three phases: a design phase, a comparison phase, and a resolution phase. In the design phase, the same requirement specification of a firewall policy is given to multiple teams who proceed independently to design different versions of the firewall policy. In the comparison phase, the resulting multiple versions are compared with each other to detect all functional discrepancies between them. In the resolution phase, all discrepancies are resolved and a firewall that is agreed upon by all teams is generated.


Lecture Notes in Computer Science | 2005

Complete redundancy detection in firewalls

Alex X. Liu; Mohamed G. Gouda

Firewalls are safety-critical systems that secure most private networks. The function of a firewall is to examine each incoming and outgoing packet and decide whether to accept or to discard the packet. This decision is made according to a sequence of rules, where some rules may be redundant. Redundant rules significantly degrade the performance of firewalls. Previous work detects only two special types of redundant rules. In this paper, we solve the problem of how to detect all redundant rules. First, we give a necessary and sufficient condition for identifying all redundant rules. Based on this condition, we categorize redundant rules into upward redundant rules and downward redundant rules. Second, we present methods for detecting the two types of redundant rules respectively. Our methods make use of a tree representation of firewalls, which is called firewall decision trees.


IEEE Transactions on Communications | 1984

Protocol Validation by Maximal Progress State Exploration

Mohamed G. Gouda; Yao-Tin Yu

We discuss an efficient variation of state exploration for two communicating finite state machines. In particular, we propose to divide the task of generating all reachable states into two independent subtasks. In each subtask, only the states reachable by forcing maximal progress for one machine are generated. Since the two subtasks are completely independent, and since in most instances the time and storage requirements for each subtask are less than those for the original task, maximal Progress state exploration can save time and/or storage over conventional state exploration.

Collaboration


Dive into the Mohamed G. Gouda's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Hrishikesh B. Acharya

University of Texas at Austin

View shared research outputs
Top Co-Authors

Avatar

Jorge Arturo Cobb

University of Texas at Dallas

View shared research outputs
Top Co-Authors

Avatar

Alex X. Liu

Michigan State University

View shared research outputs
Top Co-Authors

Avatar

Young-ri Choi

Ulsan National Institute of Science and Technology

View shared research outputs
Top Co-Authors

Avatar

Chin-Tser Huang

University of South Carolina

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Yao-Tin Yu

University of Texas at Austin

View shared research outputs
Top Co-Authors

Avatar

Louis E. Rosier

University of Texas at Austin

View shared research outputs
Researchain Logo
Decentralizing Knowledge