Unit 5 E-Database Transaction
Unit 5 E-Database Transaction
SECURITY AND
SYSTEMS ADVANCED
DATABASES
Course description:
CO 1 Apply the database management
system concepts. This course is designed to introduce under
graduate students to the foundations of
CO 2 Design relational and ER model for
database design. database systems, focusing on basics such as
the relational algebra and data model, schema
CO 3. Examine issues in data storage and query normalization, query optimization, and
processing and frame appropriate solutions.
transactions.
CO 4. Analyze the role and issues like efficiency, privacy,
security, ethical responsibility and strategic advantage in
data management
Lesson 3. Cryptography
Abraham Silberschatz, Henry F. Korth and Sudarshan S., Database System Concepts, McGraw-Hill , 6th
Edition, 2011.
Ramez Elmasri and Shamkant B. Navathe. Fundamental Database Systems, Addison-Wesley, 5th
Edition, 2005.
Raghu Ramakrishnan, Database Management System, Tata McGraw-Hill, 3rd Edition, 2006.
Hector Garcia-Molina, Jeff Ulman and Jennifer Widom, Database Systems: The Complete Book,
Prentice Hall, 2003.
A homogenous distributed database system is a network of two or more Oracle databases that
reside on one or more machines.
An Oracle distributed database system can incorporate Oracle databases of different versions.
All supported releases of Oracle can participate in a distributed database system.
Nevertheless, the applications that work with the distributed database must understand the
functionality that is available at each node in the system--for example, a distributed database
application cannot expect an Oracle7 database to understand the object SQL extensions that are
only available with Oracle8i.
Assessing for any database vulnerabilities, identifying compromised endpoints and classifying
sensitive data.
Managing user access rights and removing excessive privileges and dormant users.
Monitoring all database access activity and usage patterns in real time to detect data leakage,
unauthorized SQL and big data transactions, and protocol and system attacks.
Blocking malicious web requests.
Automating auditing with a database auditing and protection platform.
Archiving external data and encrypting databases.
The measures of control can be broadly divided into the following categories −
Access Control − Access control includes security mechanisms in a database management system to
protect against unauthorized access.
A user can gain access to the database after clearing the login process through only valid user accounts.
Each user account is password protected.
Flow Control − Distributed systems encompass a lot of data flow from one site to another and
also within a site.
Flow control prevents data from being transferred in such a way that it can be accessed by
unauthorized agents.
A flow policy lists out the channels through which information can flow.
It also defines security classes for data as well as transactions.
Authentication is the process of confirmation that whether the user log in only according to the rights
provided to him to perform the activities of data base.
A particular user can login only up to his privilege but he can’t access the other sensitive data.
The privilege of accessing sensitive data is restricted by using Authentication .
By using these authentication tools for biometrics such as retina and figure prints can prevent the data base
from unauthorized/malicious users.
The security mechanism of DBMS must include some provisions for restricting access to the data base by
unauthorized users.
Access control is done by creating user accounts and to control login process by the DBMS.
So, that database access of sensitive data is possible only to those people (database users) who are allowed
to access such data and to restrict access to unauthorized persons.
The database system must also keep the track of all operations performed by certain user throughout the
entire login time.
This prevents information from flowing in a way that it reaches unauthorized users.
Channels are the pathways for information to flow implicitly in ways that violate the privacy policy of a
company are called covert channels.
Statistical database security focuses on the protection of confidential individual values stored in and used
for statistical purposes and used to retrieve the summaries of values based on categories.
They do not permit to retrieve the individual information.
This allows to access the database to get statistical information about the number of employees in the
company but not to access the detailed confidential/personal information about specific individual
employee.
Topic 3
Heterogeneous Distributed System
Database access control is a method of allowing access to company’s sensitive data only to those people (database
users) who are allowed to access such data and to restrict access to unauthorized persons.
It includes two main components: authentication and authorization.
Authentication is a method of verifying the identity of a person who is accessing your database.
Note that authentication isn’t enough to protect data.
An additional layer of security is required, authorization, which determines whether a user should be allowed to
access the data or make the transaction he’s attempting.
Without authentication and authorization, there is no data security.
MAC was developed using a nondiscretionary model, in which people are granted access based on an information
clearance.
MAC is a policy in which access rights are assigned based on central authority regulations.
There are a number of best practices organizations should follow for implementing RBAC, including:
Determine the resources for which they need to control access, if they're not already listed -- for
instance, customer databases, email systems and contact management systems.
Analyze the workforce, and establish roles that have the same access needs. However, don't create too
many roles because that would defeat the purpose of role-based access control and create user-based
access control rather than role-based access control. For instance, there could be a basic user role that
includes the access every employee needs, such as to email and the corporate intranet.
After creating a list of roles and their access rights, align the employees to those roles, and set their
access.
Evaluate how roles can be changed, as well as how accounts for employees who are leaving the
company can be terminated and how new employees can be registered.
RBAC grants access based on a user’s role and implements key security principles such as “least privilege” and
“separation of privilege.”
Thus, someone attempting to access information can only access data necessary for their role.
Most common method today.
In ABAC, each resource and user are assigned a series of attributes.
In this dynamic method, a comparative assessment of the user’s attributes, including time of day, position and
location, are used to make a decision on access to a resource.
Most recent model.
1) System privileges - This allows the user to CREATE, ALTER, or DROP database objects.
2) Object privileges - This allows the user to EXECUTE, SELECT, INSERT, UPDATE, or DELETE data from database objects to
which the privileges apply.
System Privileges
CREATE object - allows users to create the specified object in their own schema.
CREATE ANY object - allows users to create the specified object in any schema.
The above rules also apply for ALTER and DROP system privileges.
Topic 3
Object Previliges
Mandatory Access Control
Cryptography is technique of securing information and communications through use of codes so that
only those person for whom the information is intended can understand it and process it.
Thus preventing unauthorized access to information.
The prefix “crypt” means “hidden” and suffix graphy means “writing”.
In Cryptography the techniques which are use to protect information are obtained from mathematical
concepts and a set of rule based calculations known as algorithms to convert messages in ways that make
it hard to decode it.
These algorithms are used for cryptographic key generation, digital signing, verification to protect data
privacy, web browsing on internet and to protect confidential transactions such as credit card and debit
card transactions.
In conventional cryptography, the encryption and decryption is done using the same secret key.
Here, the sender encrypts the message with an encryption algorithm using a copy of the secret key.
The encrypted message is then send over public communication channels.
On receiving the encrypted message, the receiver decrypts it with a corresponding decryption algorithm using the
same secret key.
Security in conventional cryptography depends on two factors −
A sound algorithm which is known to all.
A randomly generated, preferably long secret key known only by the sender and the receiver.
In contrast to conventional cryptography, public key cryptography uses two different keys, referred to as
public key and the private key.
Each user generates the pair of public key and private key.
The user then puts the public key in an accessible place.
When a sender wants to sends a message, he encrypts it using the public key of the receiver.
On receiving the encrypted message, the receiver decrypts it using his private key.
Since the private key is not known to anyone but the receiver, no other person who receives the message can
decrypt it.
The most popular public key cryptography algorithms are RSA algorithm and Diffie–
Hellman algorithm.
This method is very secure to send private messages.
However, the problem is, it involves a lot of computations and so proves to be inefficient for long
messages.
The solution is to use a combination of conventional and public key cryptography.
The secret key is encrypted using public key cryptography before sharing between the
communicating parties.
Then, the message is send using conventional cryptography with the aid of the shared secret key.
A Digital Signature (DS) is an authentication technique based on public key cryptography used in e-commerce
applications.
It associates a unique mark to an individual within the body of message.
This helps others to authenticate valid senders of messages.
Topic 3
Public Key Cryptography
DES RSA
Digital Signatures
A statistical database in dbms (Database Management System) is used for this analysis purposes.
Statistical database is an online analytical processing (OLAP), instead of online transaction processing
(OLTP) system.
It is typically has parameter data and the measured data for these parameters.
For an instance, parameter data consists of the various values for changing conditions in an experiment (e.g.,
temperature, time).
The calculated data (or variables) are the measurements taken in the experiment under these changing
conditions.
Many statistical databases are sparse with many null or zero values.
It is not uncommon for a statistical database to be 40% to 50% sparse.
There are two choice for dealing with the sparseness:
(1) leave the null values in there and use compression techniques to squeeze them out or
(2) remove the entries that only have null values.
Statistical databases often incorporate support for advanced statistical analysis techniques, such as
correlations, which goes beyond SQL .
In a statistical database, it is often allows query access only to aggregate data, not individual files or records.
Protecting such a database is a difficult issue, since intelligent users can use a combination of aggregate queries to
derive information about a single individual.
Securing statistical databases is an impossible aim.
Reliability:
In distributed database system, if one system fails down or stops working for some time another
system can complete the task.
Availability:
In distributed database system reliability can be achieved even if sever fails down.
Another system is available to serve the client request.
Performance:
Performance can be achieved by distributing database over different locations.
So the databases are available to every location which is easy to maintain.
Homogeneous distributed database system is a network of two or more databases (With same type of DBMS
software) which can be stored on one or more machines.
So, in this system data can be accessed and modified simultaneously on several databases in the network.
Homogeneous distributed system are easy to handle.
Heterogeneous distributed database system is a network of two or more databases with different types of DBMS
software, which can be stored on one or more machines.
In this system data can be accessible to several databases in the network with the help of generic connectivity
(ODBC and JDBC).
A client sends a query to one of the servers. The earliest available server solves it and replies.
A Client-server architecture is simple to implement and execute due to centralized server system.
2. Inheritance
Creating a new object from an existing object in such a way that new object inherits all characteristics of an existing
object.
3. Encapsulation
It is an data hiding concept in OOPL which binds the data and functions together which can manipulate
data and not visible to outside world.
4. Persistency
OODBMS allows to create persistent object (Object remains in memory even after execution). This
feature can automatically solve the problem of recovery and concurrency.
It does not need any thorough analysis, design and development phases like in RDBMS.
In addition, one should be able to create and view XML in notepad too.
XML Database is used to store huge amount of information in the XML format.
The data stored in the database can be queried using XQuery, serialized, and exported into a desired format.
XML enabled database is nothing but the extension provided for the conversion of XML document.
This is a relational database, where data is stored in tables consisting of rows and columns.
The tables contain set of records, which in turn consist of fields.
Native XML database is based on the container rather than table format.
It can store large amount of XML document and data.
Native XML database is queried by the XPath-expressions.
Native XML database has an advantage over the XML-enabled database.
It is highly capable to store, query and maintain the XML document than XML-enabled database.
Here, a table of contacts is created that holds the records of contacts (contact1 and contact2), which in turn consists of three entities − name,
company and phone.