Implementing Application and Network Security using Aspectoriented
|
|
|
- Maximillian Willis
- 10 years ago
- Views:
Transcription
1 Application and Network Security using Aspectoriented Programming F.E. Tshivhase 1, H.S. Venter 2, J.H.P. Eloff 3 1 [email protected], 2 [email protected], 3 [email protected] Information and Computer Security Architectures (ICSA) Research Group Department of Computer Science University of Pretoria Pretoria, 0002 South Africa Abstract Network security is very important in modern day technology. Network technology is the most powerful tool that the world uses for communication. Security of software applications that are used to access information can influence security over the network. It is imperative for network designers to make sure that the network is as secure as possible. Software developers also need to embed or implement security in the software applications. Security can be easily implemented in the earlier stages of the software development process, however, some developers usually overlook security functionalities of a system because they believe it is time consuming. Network security issues are discussed to see how program security affects network security. We also focus on the techniques of using aspect-oriented programming to include security after development and, moreover, a way to enforce security awareness for developers during the software development process. The way security is implemented using aspect-oriented programming is also discussed. Aspect-oriented programming is a programming paradigm that aims at reducing the complexity of the program by allowing software developers to add security features after the initial software development phase is finished. Keywords: Network security, aspect-oriented programming, security awareness, software development, code scattering and code tangling. I. INTRODUCTION Computer networks are essential for communication in the times we live in. This is due to the fact that people want flexibility. For instance, a driver wants to still have access to his or her while he or she is in the car, a business analysts may still want access to some news update from the internet while on holiday in a game reserve somewhere. Networks have become sophisticated because many transactions such as e-commerce happen over the internet. People are naturally sensitive to security. We always want to maintain our privacy and make sure that we are safe from security issues like disclosure of one s details while buying online. These issues bring forth a challenge to the network designers to make sure that everything is as secure as possible over the network. There is a close relationship between the security in a software application and network security. A program used to access the network can also contribute on the overall security of the internet. This program could be an internet browser or any other software application. If there is some discrepancy with the software application then the security of the application is already compromised. Having established the relationship of the role that security plays between the network and the software application, we show how designers of applications can deal with the security issues. The rest of the paper deals with implementing security during or after the initial software development phase, because we believe that, since network security is also affected by the application being used, it is necessary to start at the root of the problem: making sure that a software application is secured. During software development, programmers strive to develop a software application that meets the user s requirement and that is secure and reliable. Some developers usually overlook the required security features in software applications because they tend to focus more on customer requirements. Although Aspect-oriented programming (AOP) makes it possible to patch in security after the initial development stage [7], it is just as important to introduce security in the earlier stages of the software development process, as to create a security awareness culture. We see security as an important feature of any system, even though it might not always be explicitly stated by a client as one of the requirements for the system. In this paper, we explain how AOP can be used to increase security awareness amongst developers and some methods of enforcing security awareness among programmers are recommended on application and on network level. The next section of this paper delves into the background of AOP. Section III elaborates on how AOP can be used to implement security solely at the application level. Section IV presents a method that can be used to enforce security awareness among developers at the application level as well as on the network level. The last section concludes the paper and provides some future work. II. THE BACKGROUND OF AOP As mentioned in the introduction, there is a definite relationship on how application security can influence network security. The background in this section focuses on
2 AOP and how it can be used at an application level. Even though research shows that the use of object-oriented programming (OOP) has enhanced software development over the years, somehow developers still find it difficult to express a problem fully into a model that is completely modular and encapsulated [6]. AOP is a programming paradigm that aims at resolving some challenges that OOP could not address effectively. These challenges include code scattering and code tangling. Code scattering happens when the code required to fulfill one concern is spread over the classes required to fulfill another concern. Code tangling has to do with using a single method or class to implement multiple concerns [6]. A concern is the functionality or requirement that is essential in a system and is implemented in a code structure [6]. The aspect-oriented paradigm makes the code to be succinct and easy to reuse. AOP was invented at the Xerox Palo Alto Research Center by Gregor Kiczales and his colleagues [15]. AOP was also designed to encourage modularity of code. Modularity assists with eliminating code tangling and scattering. An application or a program with tangled code and scattered code is difficult to edit and debug. The methodology of breaking a problem into small modules of functionality has been used to solve problems until today [6]. AOP also addresses this problem by making use of aspects and it prevents programmers from making common mistakes like invoking a wrong method. An aspect is a programming construct that resides in its own file. It identifies a point of interest and operations to be applied. Point of interest is a specific part of the program that a specific action must be implemented and operations are the actions that are taken by the aspect code. An aspect is composed with other aspects that address security concerns in this case and it is independent of any programming language [13]. Figure 1 shows an example of an aspect. The aspect in Figure 1 makes it possible to replace all calls to the rand() function call with a secure version of the rand() function. The rand() function is advantageous because its output is completely reproducible. This means that the rand() function can be used again in another class because it is within an aspect that is in a separate file. Aspect secure_random { int secure_rand(void) { //Secure call to random is defined here funccall<int rand(void)> { replace { secure_rand(); Figure 1: Example of an aspect [13] AOP makes programming easy for developers since they do not have to always rewrite the same code for a specific behavior that has already been programmed. Users usually bring more additional concerns for the application during the development process and as a result other concerns can sometimes be easily overlooked. One of the main purposes of AOP is that of specifying the structured transformation on a program. Structured transformation involves inserting or removing code at welldefined points [13]. AOP relies on the features of its host language, which is why the user does not have to learn so many new techniques. There are a number of benefits that results from using the AOP technique. The AOP approach improves performance since the methods or operations are more succinct and programmers spend less time not having to rewrite the same code. It is evident that AOP enables better encapsulation of different procedures and promotes future interoperation [10]. AOP has been around for about a decade now. There have been some security implementations using AOP as will be discussed in the next section. III. HOW SECURITY IS BEING IMPLEMENTED USING AOP Security should be, by default, the de facto standard in any application no matter the language used. For the sake of reuse, maintainability and clarity, security-related elements (pieces of the code) should be abstracted properly in a program. The AOP technique allows programmers to separate security concerns from the code. This enables programmers to just focus on developing the main application and security experts to specify the security properties that need to be present in an application [13]. It has been shown that developers are not very concerned about developing software applications that need to be secured [16]. No modification of the application is required for sources to introduce security when it comes to Aspect-oriented security. Aspect-oriented security is highly flexible and extensible [8]. This is due to the ability of AOP to weave or intertwine the concerns by making use of the aspects. By making use of AOP there are mechanisms of software tempering detection that have been implemented in applications running on un-trusted hosts [5]. An aspectoriented program was used to do self-checking. Selfchecking is a process where a program checks itself to verify that it has not been modified [8]. According to findings from the experiment that was conducted by Bostrom [2]; database encryption can be added after the completion of the system by using AOP. Most security-typed languages have a problem of exposing programmers to the data that is confidential and the data that is public. Full information might not be available during functional design of the system [12]. The other problem is that the programmer is supposed to consider security together with functional requirements.
3 Software development in AOP is applicable to all main pillars of security in computing. These main pillars include authentication, access control, integrity, and it also supports administration and monitoring disciplines [1]. According to Laney et al. [7] security aspects can be used to modularize access control and authentication [4, 9, 11]. Authentication is the process of establishing and verifying the claimed identity of the user. Access control is the prevention of unauthorized use of a resource and it also includes the use of a resource in an unauthorized manner. Although AOP makes it possible for the programmer to incorporate security into a finished program, it is more effective to include security during the development stage. In the next section, we suggest the methodology that can be used to enforce awareness to programmers so that they can include security concerns even while developing the software application. IV. THE METHODOLOGIES FOR ENFORCING SECURITY AWARENESS Computer networks serves to be a platform where applications come together, interact and merge. These applications act as a middle layer between network users and computers. People use software applications i.e. internet web browsers to access the network. It is therefore important to view network security from the application level as well. We focus on two approaches of implementing security using AOP, which include security at the application level and security at the network level. Figure 2 shows how the two approaches can still be further divided into other approaches. Security at the application level can be implemented in two ways. A security checker (explained in detail in subsection A) can be used to implement security from the initial stage of development. Security can also be implemented by just adding a new security module into an existing application using AOP. The idea of implementing security during the development phase will be explained in subsection A. The network is populated by applications that are developed by different designers and developers. Security at network level can also be implemented in two ways. The method of using a security checker and that of adding a new security module afterwards are applied at the network level because the network comprise of applications that are already running security at application level security from the beginning using the securitychecker 1 Add new modules afterwards 2 AOP security at network Level security afterwards using the securitychecker 3 Add new modules afterwards Figure 2: The breakdown of implementing security using AOP The following subsection explains the idea of the security checker. A. security from the beginning using a security checker This subsection deals with implementing security from the beginning of the application development process by using a security-checker class as shown by block 1 in Figure 2. Developers often know beforehand that security is a requirement for a program. However, they often jump right into the development of the functional requirements of a program, only to return after the initial development process is complete and then attempt to implement security requirements. This approach often makes it very difficult to implement security requirements afterwards. There are certain tools that can be used to evaluate the vulnerability status of a system. These tools, however, do not suggest how developers should design and implement the system in a more security-conscious way to avoid the same problem recurring [13]. Despite enormous research efforts and debates, some improvement to security in software applications is still much needed. Due to the fact that programmers may ignore security during the development stage, one can try and conquer the problem by introducing a security class that all programs will inherit from. The class comes with security embedded and it prompts the programmer to include the necessary security features in the program while he/she will be busy programming. We will refer to this class as a security-checker class. This idea was born after looking at numerous security awareness research done in the past [3, 5, 6, 8, 13, 14]. The specific example that we will use to demonstrate the idea is that of a login program. If the programmer is developing a system that involves that kind 4
4 of security (i.e. the logon method), the security class will prompt the user in a form of a compile error to include the logon method after attempting to compile that program. The program might not run until the necessary method is implemented. B. security afterwards This subsection deals with implementing security after the application development process as shown in blocks 2, 3 and 4 of Figure 2. AOP enables a programmer to simply plug in the class and continue enhancing the application by rather dwelling on the functional concerns. The security concern at hand will be implemented automatically and eventually it will become intuitive to the programmer to incorporate security concerns. This approach involves having a module that is coded just specifically for implementing new security modules afterwards as shown in blocks 2 and 3 in Figure 2. The module will be represented in the form of an aspect using AOP. Figure 3 shows an example of the aspect code that is used in the weaving of the program and the security class. The final_class is the main class that is implementing the security class. Define aspect final_class { Class_security s_object = new class_security(); when calling set*(taking one parameter) { s_obect.log( Calling the security method); Figure 3: Code for the aspect used for weaving When the security class is called, it will first execute the defined method in the aspect language. It checks for any method that begins with the word set. In the login/password example, the setpassword method will be called and before it actually executes the statement calling the security method will be displayed as shown in Figure 3. This will help in reminding the programmer on where the program is at that current state. In this example, AOP aids in forcing every call that matches the criteria that has been set on the aspect to include the security class. The methodology that we are introducing here is to improve the awareness of programmers as far as security is concerned. We believe that making the programmer more aware of security will make the issue more intuitive and practical for the programmers. With this idea, we envisage that, programmers will intuitively include security without having to be reminded. The idea of adding new security modules will be addressed in the future work where an actual prototype of all the approaches will be demonstrated. The following section will outline the work that was covered in this paper and remark on the future work. V. CONCLUSION The impact that security on software applications have on the network security makes it to be imperative for the software developers and network designers to make sure that the applications are as stable and secure as possible. Poor security in a system can cause vulnerabilities to arise in the system. Intruders may easily hack into the system by exploiting vulnerabilities. This suggests that programmers must make sure that security is implemented in the software applications that they develop. Programmers should therefore include security features into a program during the development process. AOP minimizes the effort and it saves the user or the developer a great deal of time. Having looked at the security of the software programs, it is clear that AOP makes a huge impact in the modularity process of programming. AOP produces the notion that a developer can simply plug in the security aspect even when the whole software development cycle has completed. The purpose of the paper is based on a way of making programmers more conscious about incorporating security in their programs. As it was suggested in Section IV, programmers need to be reminded by means of having a special class that will check the security implementation in the program that is being developed. If no security has been implemented, a compile error should occur. As this idea is still at a conceptual stage, we aim to do some future work in developing an actual prototype for demonstrating the idea. REFERENCES [1] Bodkin, R Enterprise Security Aspects, AOSD 2004 Workshop, Lancaster, UK, 23 March Available online: dsec/papers.html [2] Bostrom, G Database encryption as an Aspect, AOSD 2004 Workshop, Lancaster, UK, 23 March Available online: dsec/papers.html [3] De Win, B., Vanhaute, B. & De Decker, B Security through aspect oriented programming. In De Decker B., Piessens F., Smits J., & Van Herreweghen E. eds Advances in Network and Distributed Systems Security. IFIP TC11 WG11.4 First Working conference on Network Security Leuven, Belgium November 2001: [4] De Win, B., Joosen, W. and Piessens, F AOSD and Security: a practical assessment. In Workshop on Software Engineering Properties of Languages for Aspect Technologies (SPLAT03): Boston. Available online: t_de_win.pdf
5 [5] Falcarin, P., Baldi, M. and Mazzochi, D Software Tampering Detection using ASPECT- ORIENTED PROGRAMMING and mobile code, AOSD 2004 Workshop, Lancaster, UK, 23 March Available online: dsec/papers.html [6] Gradecki, J.D., Lesiecki, N. Gradecki, J 2003 Mastering AspectJ: Aspect-Oriented Programming in Java, Chapter1.Available online: / pdf [7] Laney, R.C., van der Linden, J. Thoma, P Evolving Legacy System Security Concerns Using Aspects, Technical Report TR 2003/13, Department of Computing, The Open University, UK, Available online: [8] Padayachee, K Aspect-oriented Programming and Security, ICSA, University of Pretoria. [9] Shah, V. and Hill, F An aspect-oriented security framework, In Proceedings DARPA Information Survivability Conference and Exposition Washington, DC, USA, April [10] Shukla, D., Fell, S. and Sells, C Aspect- Oriented Programming Enables Better Code Encapsulation and Reuse, In MSDN Magazine March [11] Slowikowski, P. and Zielinski, K Comparison Study of Aspect-Oriented and Container Managed Security, AAOS2003: Analysis of Aspect-Oriented Software. Workshop held in conjunction with ECOOP 2003 Darmstadt, Germany. [12] Tse, S. & Zdance, S Run-time Principals in Information-flow Type Systems, In Proceedings of the 2004 IEEE Symposium on Security and Privacy (S&P 2004) Bekerly, California, May 2004 : [13] Viega, J., Bloch, J.T., Chandra, P Cutter IT Journal Vol14, No. 2, Applying Aspect- Oriented Programming to security. [14] Viega J. and Voas, J Can Aspect-Oriented Programming Lead to More Reliable Software, IEEE Software. [15] Kiczales, G. Lamping, J. Mendhekar, A. Maeda, C. Lopes, C.V. Loingtier, J. Irwin, J Aspect-Oriented Programming: Xerox Palo Alto Research Cente. European Conference on Object-Oriented Programming (ECOOP),Finland. Springer-Verlag LNCS [16] Robinson, P., Rits, M., Kilian-Kehr, R An Aspect of Application Security Management, AOSD 2004 Workshop, Lancaster, UK, 23 March Available online: osdsec/papers.html Fulufhelo Emmanuel Tshivhase born in Limpopo, South Africa. Obtained his BSc. degree in 2004 at the University of Pretoria, South Africa. He is currently studying for his Honours degree in Computer Science at the University of Pretoria, South Africa.
6
Aspect-Oriented Programming
Aspect-Oriented Programming An Introduction to Aspect-Oriented Programming and AspectJ Niklas Påhlsson Department of Technology University of Kalmar S 391 82 Kalmar SWEDEN Topic Report for Software Engineering
A COMPARISON OF AOP BASED MONITORING TOOLS
STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume LVI, Number 3, 2011 A COMPARISON OF AOP BASED MONITORING TOOLS GRIGORETA S. COJOCAR AND DAN COJOCAR Abstract. The performance requirements of a software system
Toward Configurable Access Control for. Healthcare Information Systems
Toward Configurable Access Control for Healthcare Information Systems Kung Chen a and Da-Wei Wang b a Department of Computer Science, National Chengchi University b Institute of Information Science, Academia
Generating Aspect Code from UML Models
Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany [email protected] Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,
The Nature and Importance of a Programming Paradigm
Multiple Software Development Paradigms and Multi-Paradigm Software Development Valentino Vranić [email protected] Abstract: While OOP (including OOA/D) is reaching the level of maturity of structured
Using an Aspect Oriented Layer in SOA for Enterprise Application Integration
19 Using an Aspect Oriented Layer in SOA for Enterprise Application Integration Chinthaka D. Induruwana School of Computer Science, University of Manchester, Kilburn Building, Oxford Road M13 9PL [email protected]
How to Model Aspect-Oriented Web Services
How to Model Aspect-Oriented Web Services Guadalupe Ortiz Juan Hernández [email protected] [email protected] Quercus Software Engineering Group University of Extremadura Computer Science Department Pedro
Variability in Service-Oriented Systems: An Analysis of Existing Approaches
Variability in -Oriented Systems: An Analysis of Existing Approaches Holger Eichelberger and Christian Kröher and Klaus Schmid 1 Software Systems Engineering, Institute of Computer Science, University
Considering Additional Adaptation Concerns in the Design of Web Applications
Considering Additional Adaptation Concerns in the Design of Web Applications Sven Casteleyn 1, Zoltán Fiala 2, Geert-Jan Houben 1,3, and Kees van der Sluijs 3 1 Vrije Universiteit Brussel, Pleinlaan 2,
Encapsulating Crosscutting Concerns in System Software
Encapsulating Crosscutting Concerns in System Software Christa Schwanninger, Egon Wuchner, Michael Kircher Siemens AG Otto-Hahn-Ring 6 81739 Munich Germany {christa.schwanninger,egon.wuchner,michael.kircher}@siemens.com
Unification of AOP and FOP in Model Driven Development
Chapter 5 Unification of AOP and FOP in Model Driven Development I n this chapter, AOP and FOP have been explored to analyze the similar and different characteristics. The main objective is to justify
Integration of Application Business Logic and Business Rules with DSL and AOP
Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska and Krzysztof Kasprzyk Wroclaw University of Technology, Wyb. Wyspianskiego 27 50-370 Wroclaw, Poland [email protected]
Composing Concerns with a Framework Approach
Composing Concerns with a Framework Approach Constantinos A. Constantinides 1,2 and Tzilla Elrad 2 1 Mathematical and Computer Sciences Department Loyola University Chicago [email protected] 2 Concurrent
Progress Report Aspect Oriented Programming meets Design Patterns. Academic Programme MSc in Advanced Computer Science. Guillermo Antonio Toro Bayona
Progress Report Aspect Oriented Programming meets Design Patterns Academic Programme MSc in Advanced Computer Science Guillermo Antonio Toro Bayona Supervisor Dr. John Sargeant The University of Manchester
Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces
Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The
Aspect-Oriented Web Development in PHP
Aspect-Oriented Web Development in PHP Jorge Esparteiro Garcia Faculdade de Engenharia da Universidade do Porto [email protected] Abstract. Aspect-Oriented Programming (AOP) provides another way of
An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications
An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications Germán Harvey Alférez Salinas Department of Computer Information Systems, Mission College,
Introducing a Graduate Course on. called Aspect-Oriented Software Development
Int. J. Engng Ed. Vol. 21, No. 2, pp. 361±368, 2005 0949-149X/91 $3.00+0.00 Printed in Great Britain. # 2005 TEMPUS Publications. Introducing a Graduate Course on Aspect-Oriented Software Development*
A PRACTICAL APPROACH TO INCLUDE SECURITY IN SOFTWARE DEVELOPMENT
A PRACTICAL APPROACH TO INCLUDE SECURITY IN SOFTWARE DEVELOPMENT Chandramohan Muniraman, University of Houston-Victoria, [email protected] Meledath Damodaran, University of Houston-Victoria, [email protected]
How To Combine Feature-Oriented And Aspect-Oriented Programming To Support Software Evolution
Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Sven Apel, Thomas Leich, Marko Rosenmüller, and Gunter Saake Department of Computer Science Otto-von-Guericke-University
Patterns for Secure Boot and Secure Storage in Computer Systems
Patterns for Secure Boot and Secure Storage in Computer Systems Hans Löhr, Ahmad-Reza Sadeghi, Marcel Winandy Horst Görtz Institute for IT Security, Ruhr-University Bochum, Germany {hans.loehr,ahmad.sadeghi,marcel.winandy}@trust.rub.de
Verifying Semantic of System Composition for an Aspect-Oriented Approach
2012 International Conference on System Engineering and Modeling (ICSEM 2012) IPCSIT vol. 34 (2012) (2012) IACSIT Press, Singapore Verifying Semantic of System Composition for an Aspect-Oriented Approach
Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution
Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Sven Apel, Thomas Leich, Marko Rosenmüller, and Gunter Saake Department of Computer Science University of Magdeburg,
Aspect-Oriented Software Development
Aspect-Oriented Software Development Dr. Awais Rashid Computing Department Lancaster University, UK Awais Rashid, 2005. Fundamental to Next Generation Software AOSD is vital to our [IBM Software Group
Basic Trends of Modern Software Development
DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering
White Paper. Java versus Ruby Frameworks in Practice STATE OF THE ART SOFTWARE DEVELOPMENT 1
White Paper Java versus Ruby Frameworks in Practice STATE OF THE ART SOFTWARE DEVELOPMENT 1 INTRODUCTION...3 FRAMEWORKS AND LANGUAGES...3 SECURITY AND UPGRADES...4 Major Upgrades...4 Minor Upgrades...5
Aspect-Oriented Software Development based Solution for Intervention Concerns Problems:Case Study
Aspect-Oriented Software Development based Solution for Intervention Concerns Problems:Case Study Farhad Soleimanian Gharehchopogh Department of Computer Engineering, Science and Research Branch, Islamic
Chapter 5 Aspect Oriented Programming
2I1AC3 : Génie logiciel et Patrons de conception Chapter 5 Aspect Oriented Programming J'ai toujours rêvé d'un ordinateur qui soit aussi facile à utiliser qu'un téléphone. Mon rêve s'est réalisé. Je ne
The Development of Mobile Device Management Framework on Android Platform for Devices Security and Applications
The Development of Mobile Device ment Framework on Android Platform for Devices Security and Applications Kurnia Anggriani [email protected] Rinaldi Munir [email protected] Yusep
Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns.
Volume 4, Issue 5, May 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Functional and Non-Functional
1992-2010 by Pearson Education, Inc. All Rights Reserved.
Key benefit of object-oriented programming is that the software is more understandable better organized and easier to maintain, modify and debug Significant because perhaps as much as 80 percent of software
USING ASPECT-ORIENTED SOFTWARE DEVELOPMENT IN REAL-TIME EMBEDDED SYSTEMS SOFTWARE A Review of Scheduling, Resource Allocation and Synchronization
USING ASPECT-ORIENTED SOFTWARE DEVELOPMENT IN REAL-TIME EMBEDDED SYSTEMS SOFTWARE Pericles Leng Cheng Department of Computer Science, Cyprus College 6, Diogenes Street, Engomi, Nicosia 1516 [email protected]
An Object Oriented Role-based Access Control Model for Secure Domain Environments
International Journal of Network Security, Vol.4, No.1, PP.10 16, Jan. 2007 10 An Object Oriented -based Access Control Model for Secure Domain Environments Cungang Yang Department of Electrical and Computer
THE IMPACT OF INHERITANCE ON SECURITY IN OBJECT-ORIENTED DATABASE SYSTEMS
THE IMPACT OF INHERITANCE ON SECURITY IN OBJECT-ORIENTED DATABASE SYSTEMS David L. Spooner Computer Science Department Rensselaer Polytechnic Institute Troy, New York 12180 The object-oriented programming
CHAPTER THREE, Network Services Management Framework
CHAPTER THREE, Acronyms and Terms 3-3 List of Figures 3-4 1 Introduction 3-5 2 Architecture 3-6 2.1 Entity Identification & Addressing 3-7 2.2 Management Domain Registration and Information Service 3-7
UML MODELLING OF DIGITAL FORENSIC PROCESS MODELS (DFPMs)
UML MODELLING OF DIGITAL FORENSIC PROCESS MODELS (DFPMs) Michael Köhn 1, J.H.P. Eloff 2, MS Olivier 3 1,2,3 Information and Computer Security Architectures (ICSA) Research Group Department of Computer
Component-Based Software Development with Aspect-Oriented Programming
Vol. 4, No. 3 Special issue: GPCE Young Researchers Workshop 2004 Component-Based Software Development with Aspect-Oriented Programming Michael Eichberg, Departement of Computer Science, Darmstadt University
Designing Programming Exercises with Computer Assisted Instruction *
Designing Programming Exercises with Computer Assisted Instruction * Fu Lee Wang 1, and Tak-Lam Wong 2 1 Department of Computer Science, City University of Hong Kong, Kowloon Tong, Hong Kong [email protected]
Access Control of Cloud Service Based on UCON
Access Control of Cloud Service Based on UCON Chen Danwei, Huang Xiuli, and Ren Xunyi Nanjing University of posts & Telecommunications, New Model Street No.66, 210003, Nanjing, China [email protected],
Distributed Systems Development: Can we Enhance Evolution by using AspectJ?
Distributed Systems Development: Can we Enhance Evolution by using AspectJ? Cormac Driver Siobhán Clarke Distributed Systems Group, Computer Science Department, Trinity College Dublin, Ireland {Cormac.Driver,
Modeling the Forensics Process
Modeling the Forensics Process Sabah Al-Fedaghi and Bashayer Al-Babtain Computer Engineering Department, Kuwait University [email protected], [email protected] Abstract Most forensic models focus
A Methodology for Capturing Software Systems Security Requirements
A Methodology for Capturing Software Systems Security Requirements Hassan EL-Hadary Supervised by: Prof. Sherif EL-Kassas Outline Introduction to security Software Security Security Definitions Security
Data Storage Security in Cloud Computing
Data Storage Security in Cloud Computing Prashant M. Patil Asst. Professor. ASM s, Institute of Management & Computer Studies (IMCOST), Thane (w), India E_mail: [email protected] ABSTRACT
Performance Analysis of Aspect Oriented Programming for Cloud Service Monitoring
Performance Analysis of Aspect Oriented Programming for Cloud Service Monitoring TejasN.Rao 1,, Akash Kumar, S. V. Shanmuga Sunder and K. Chandrasekaran Department of Computer Science and Engineering,
DATABASE SECURITY MECHANISMS AND IMPLEMENTATIONS
DATABASE SECURITY MECHANISMS AND IMPLEMENTATIONS Manying Qiu, Virginia State University, [email protected] Steve Davis, Clemson University, [email protected] ABSTRACT People considering improvements in database
INTERNATIONAL JOURNAL OF ADVANCES IN COMPUTING AND INFORMATION TECHNOLOGY An International online open access peer reviewed journal
INTERNATIONAL JOURNAL OF ADVANCES IN COMPUTING AND INFORMATION TECHNOLOGY An International online open access peer reviewed journal Research Article ISSN 2277 9140 ABSTRACT An e-college Time table Retrieval
The Service Revolution software engineering without programming languages
The Service Revolution software engineering without programming languages Gustavo Alonso Institute for Pervasive Computing Department of Computer Science Swiss Federal Institute of Technology (ETH Zurich)
What is Web Security? Motivation
[email protected] http://www.brucker.ch/ Information Security ETH Zürich Zürich, Switzerland Information Security Fundamentals March 23, 2004 The End Users View The Server Providers View What is Web
New Generation of Software Development
New Generation of Software Development Terry Hon University of British Columbia 201-2366 Main Mall Vancouver B.C. V6T 1Z4 [email protected] ABSTRACT In this paper, I present a picture of what software development
Integration of Application Business Logic and Business Rules with DSL and AOP
e-informatica Software Engineering Journal, Volume 4, Issue, 200 Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska, Krzysztof Kasprzyk Faculty of Computer
SECURITY FOR ENTERPRISE TELEWORK AND REMOTE ACCESS SOLUTIONS
SECURITY FOR ENTERPRISE TELEWORK AND REMOTE ACCESS SOLUTIONS Karen Scarfone, Editor Computer Security Division Information Technology Laboratory National Institute of Standards and Technology Many people
Load balancing using Remote Method Invocation (JAVA RMI)
Load balancing using Remote Method Invocation (JAVA RMI) Ms. N. D. Rahatgaonkar 1, Prof. Mr. P. A. Tijare 2 1 Department of Computer Science & Engg and Information Technology Sipna s College of Engg &
Representation-Oriented Software Development: A cognitive approach to software engineering
In P. Romero, J. Good, E. Acosta Chaparro & S. Bryant (Eds). Proc. PPIG 17 Pages 173-187 Representation-Oriented Software Development: A cognitive approach to software engineering John J. Sung School of
How To Develop Software
Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which
Building Java Servlets with Oracle JDeveloper
Building Java Servlets with Oracle JDeveloper Chris Schalk Oracle Corporation Introduction Developers today face a formidable task. They need to create large, distributed business applications. The actual
McGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0
1.1 McGraw-Hill The McGraw-Hill Companies, Inc., 2000 Objectives: To describe the evolution of programming languages from machine language to high-level languages. To understand how a program in a high-level
SAP Security Recommendations December 2011. Secure Software Development at SAP Embedding Security in the Product Innovation Lifecycle Version 1.
SAP Security Recommendations December 2011 Secure Software Development at SAP Embedding Security in the Product Innovation Lifecycle Version 1.0 Secure Software Development at SAP Table of Contents 4
FIVE NON-TECHNICAL PILLARS OF NETWORK INFORMATION SECURITY MANAGEMENT
FIVE NON-TECHNICAL PILLARS OF NETWORK INFORMATION SECURITY MANAGEMENT Elmarie Kritzinger 1 and Prof S.H. von Solms 2 1 School of Computing, University of South Africa, SA. 2 Department of Computer Science,
Trust areas: a security paradigm for the Future Internet
Trust areas: a security paradigm for the Future Internet Carsten Rudolph Fraunhofer Institute for Secure Information Technology SIT Rheinstrasse 75, Darmstadt, Germany [email protected]
Chapter 13: Program Development and Programming Languages
15 th Edition Understanding Computers Today and Tomorrow Comprehensive Chapter 13: Program Development and Programming Languages Deborah Morley Charles S. Parker Copyright 2015 Cengage Learning Learning
IT Architecture Review. ISACA Conference Fall 2003
IT Architecture Review ISACA Conference Fall 2003 Table of Contents Introduction Business Drivers Overview of Tiered Architecture IT Architecture Review Why review IT architecture How to conduct IT architecture
Aspects for Testing Aspects?
Aspects for Testing Aspects? Dehla Sokenou, Stephan Herrmann Technische Universität Berlin Software Engineering Group Sekr. FR 5-6, Franklinstr. 28/29, D-10587 Berlin [dsokenou stephan]@cs.tu-berlin.de
RE-TRUST Design Alternatives on JVM
RE-TRUST Design Alternatives on JVM ( - Italy) [email protected] http://softeng.polito.it/falcarin Trento, December, 19 th 2006 Tamper-Detection Tamper-detection goals Detect malicious modifications
Using Aspect Programming to Secure Web Applications
JOURNAL OF SOFTWARE, VOL. 2, NO. 6, DECEMBER 2007 53 Using Aspect Programming to Secure Web Applications Gabriel Hermosillo Roberto Gomez ITESM CEM/Dpto. Ciencias Computacionales, Edo. de Mexico, Mexico
A System for Interactive Authorization for Business Processes for Web Services
A System for Interactive Authorization for Business Processes for Web Services Hristo Koshutanski and Fabio Massacci Dip. di Informatica e Telecomunicazioni - Univ. di Trento via Sommarive 14-38050 Povo
Symphony Plus Cyber security for the power and water industries
Symphony Plus Cyber security for the power and water industries Symphony Plus Cyber Security_3BUS095402_(Oct12)US Letter.indd 1 01/10/12 10:15 Symphony Plus Cyber security for the power and water industries
GenericServ, a Generic Server for Web Application Development
EurAsia-ICT 2002, Shiraz-Iran, 29-31 Oct. GenericServ, a Generic Server for Web Application Development Samar TAWBI PHD student [email protected] Bilal CHEBARO Assistant professor [email protected] Abstract
Best Practices for the Use of RF-Enabled Technology in Identity Management. January 2007. Developed by: Smart Card Alliance Identity Council
Best Practices for the Use of RF-Enabled Technology in Identity Management January 2007 Developed by: Smart Card Alliance Identity Council Best Practices for the Use of RF-Enabled Technology in Identity
Extending an Open-Source BPEL Engine with Aspect-Oriented Programming
Extending an Open-Source BPEL Engine with Aspect-Oriented Programming Alejandro Houspanossian and Mariano Cilia UNICEN, Faculty of Sciences Campus Universitario Tandil, Argentina. {ahouspan,mcilia}@exa.unicen.edu.ar
Document ID. Cyber security for substation automation products and systems
Document ID Cyber security for substation automation products and systems 2 Cyber security for substation automation systems by ABB ABB addresses all aspects of cyber security The electric power grid has
Security challenges for internet technologies on mobile devices
Security challenges for internet technologies on mobile devices - Geir Olsen [[email protected]], Senior Program Manager for Security Windows Mobile, Microsoft Corp. - Anil Dhawan [[email protected]],
Component Based Software Engineering: A Broad Based Model is Needed
Component Based Software Engineering: A Broad Based Model is Needed Allen Parrish ([email protected]) Brandon Dixon ([email protected]) David Hale ([email protected]) Department of Computer Science
An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases
An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases Paul L. Bergstein, Priyanka Gariba, Vaibhavi Pisolkar, and Sheetal Subbanwad Dept. of Computer and Information Science,
Security Technology for Smartphones
Security Technology for Smartphones Yasuhiko Abe Hitoshi Ikeda Masafumi Emura Service functions are implemented on smartphones by storing on them personal information, network-operator information, corporate
AOJS: Aspect-Oriented JavaScript Programming Framework for Web Development
AOJS: Aspect-Oriented JavaScript Programming Framework for Web Development Hironori Washizaki,Atsuto Kubo,Tomohiko Mizumachi,Kazuki Eguchi,Yoshiaki Fukazawa Waseda University, 3-4-1, Okubo, Shinjuku-ku,
Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming
Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming Java has become enormously popular. Java s rapid rise and wide acceptance can be traced to its design
Chapter 13: Program Development and Programming Languages
Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented
Software Evolution and Aspect-Oriented Programming
Software Evolution and Aspect-Oriented Programming Belgian Symposium and Contact Day Monday, 3 May 2004 Het Pand, Gent Software Evolution and Aspect-Oriented Programming Co-organised by FWO Scientific
