Database Security Applied Distributed system with public keys

advertisement
Database security applied distributed system with public key
Kyung-kug Kim, Yang-kyu Lim and Dong-ho Won
School of Electrical and Computer Engineering
Sungkyunkwan University
300, Chunchun-Dong, Jangan-Ku,Suwon, Korea, 440-746
{kkkim, yklim, dhwon}@dosan.skku.ac.kr
Abstract: This paper addresses distributed resource management and access control. We propose a scheme of “The DB security applied Distributed system with public key”. This paper handles a method for role based access control, and distributed firewall, a method allowing users to
manage resources within a distributed system across administrative domain boundaries with interlocking operating systems by verifiable authentication scheme.
Keywords: Database Security, Public key, authentication scheme
Introduction
tem each other [1].
A database is a collection of permanent data,
managed by the Database Management
Sytems(DBMSs). The target of a DBMS is that
it is able to access efficiently applicationdefined subsets of data in a DB.
The database protection requirements are as follows:
Although the increasingly widespread use of
both centralized and distributed database has
proved necessary to support business functions,
it has also posed serious problems of data security [6]. The increasing development of information technology arise several problems such
as assuring system continuity and reliability
and to protect data and programs from intrusions, modifications, theft and unauthorized
disclosure.
This paper addresses distributed resource management and access control. We proposes a
new version of “The DB security applied Distributed system with public key”.
This paper handles a method for role based
access control, and distributed firewall, a
method allowing users to manage resources
within a distributed system across administrative domain boundaries with operating systems
by verifiable authentication scheme.
Related works
Database security problems
Information security in a database includes
three main aspects: secrecy, integrity, and
availability.
They means preventing /detecting /deterring
the malicious disclosure, modification and denial of access to services provided by the sys-
- Protection from improper access and interference
- Integrity of the database
- Operational and semantic integrity of data
- Accountability and auditing
- User authentication
- Management and protection of sensitive
data
- Multilevel protection and confinement
And Database protection can be obtained through
security measures such as flow control, interference control, access control and cryptographic
techniques.
The field of the practical implementation is
that , in bi-directional broadcasting TV system,
users demand TV digital program and TV system(server) authenticate the each user with verifiable self-certified public key.
Design of secure OS
The security mechanisms provide to a processing
system and to its applications are based firstly on
the security functions available in its Operating
System(OS). They constitute the grounds for database security but owing to the different kind of
resources to be protected in a database, the OSprovided protection functions prove insufficient
to support database security policies. So we consider the OS security mechanisms by the design
of secure OS and by using additional specialpurpose security software.
Generally, an OS provides some data protection
functions. Data protection means checking that
152
only authorized users access the resource containing the data. So we adapt the OS security
functions as follows [2]:
- User identification/authentication
- Memory protection
- Access control to resources
- Flow control
- Auditing
In many OSs, the different protection mechanisms are provided by modules[2] . It is Kernel-based approach.
different clearness and act as reference monitor, it
sees all the data required to answer a query, and
is enabled to eliminate from the returned data
view those data for which the user is not cleared.
- DBMS: it is responsible for multilevel protection of the data base objects.
Trusted Filter(TF) is inserted between
the FE and the DBMS.
TF is responsible for enforcing security functions
and multilevel protection and for the generation
of its own audit records.
Security kernel must satisfy the following
properties such as Completeness, Isolation, and
Verifiability.
A stamp is generated using a cryptoseal
mechanisms such as timestamp and serial number
for checksum technique. It is stored in an encrypted format into the database.
The kernel supports and monitors the following
functions [3] such as multiprocessing, execution domain switching, memory protection, I/O
operations.
At the moment of retrieval, stamps are recomputed by the FE and matched against the stored version, to detect possible mismatches, before data is
released to the user.
The problems in a distributed environment
However, a stamp-based mechanism is insufficient to guarantee security because of Trojan
Horses leakage risks.
Most of the computer systems in use are based
on security model. We will point out the problems when working in a distributed environment [4].
- User-names are often duplicated across namespace domains in a distributed system.
- Location transparency may not be possible.
- Unique user identifiers based on user-name
and host-name combinations.
This means that security is a problem since the
security of the distributed system depends on
the security of the individual hosts.
- The administration is reluctant to permit a
single user to have multiple user-names.
- It may be difficult to share resources with
other users on other computer systems without
getting permission from the administration for
real-time applications.
- In hierarchical systems, it is difficult to model
and implement harmoniously.
To avoid these threats, selections, projections,
subquery handling, query optimization and statistical operations must be placed in the TF, or in
the FE, and not in the DBMS.
The basic function of OS-level are authentication,
identification, access control and auditing.
Trusted OS: it is responsible for the
physical access to data in the database, and for
enforcing mandatory protection.
Audit records are generated by the trusted OS for
operations concerning access to OS objects, and
other audit records must be generated for DBMS
operations and recorded in a system high audit
trail, possibly with the same format as the OS
audit records [5].
Proposal Model
Security checking lists for database
Interlocking with Operating systems
Our security model is defined through:
If an improper user accesses the system and
pretends a root, then OS kernel monitor his
public-key which is calculated with his-ID,
with interlocking OS and checks the user-id,
group-id, etc.
We will introduce the process architecture[10].
- Identification of the subjects and objects relevant from a security viewpoint.
- Identification of the access modes granted to
different subjects on different objects, recognizing possible constraints on access.
- Analysis of the propagation of authorizations in
the system through grant/revoke privileges.
- Front End(FE): it interfaces the users with
153
The checking lists for the database are as follow:
- Account, network, object integrity
- Login parameters, Password strength
- User files, startup files
- File attributes, file access, file find
- System auditing, mail, system queues
- OS patch and discovery
public key. The user’s attributes-identity, secret
key, public key, etc-satisfy a computational unforgeable relationship, which is verified implicitly during the proper use of keys in any cryptographic protocol.
1.
(verifiability) Furthermore, if necessary,
there is an efficient way to verify the authenticity
of the public key after knowing a witness.
Authentication with interlocking OS
A scheme using RSA digital signature scheme
Girault’s self-certified public keys
Set-up:
For simplicity we only describe a scheme using
RSA/Rabin digital signature scheme. In the setup phase, the CA(Certificate Authority) chooses a RSA modulus n  p  q such that
p and q are large prime integers, generates an
integer e coprime to p  1 and q  1 , and
the inverse d of e modulo ( p  1)  (q  1) .
Then it computes an integer  of maximal order in the multiplicative group ( Z / nZ )* . The
CA makes n , e and  public, whilist keeps
p , q and d secret.
The Key generation phase consists of two steps.
First, each user randomly chooses a secret key
x , computes his public key y    x (mod
n ) and gives y to the CA. Then he proves to
the CA that he knows x without revealing it.
Afterwards the CA computes the witness as a
RSA signature of the modular difference of
  x and user’s identity I :
So the following equation holds:
(mod n ).
(1)
However, in Girault’s self-certified keys, anyone can obtain the pair( y ,  ) satisfying the
equation (1) by only the known-key attack:
R Z n ,
y  e  I
a base   1 of order
(i.e.,  r  1 (mod n)) .
-
r  p 'q '
a larger integer u  r , and
-
a one-way hash function h which will
output positive odd integers between 2128 and
p' (and q ' ). This can be easily implemented by
flipping the least significant bit, if even.
The DBMS makes n ,  , u , f public, keeps
p and q secret.
Verifiable self-certified key generation:
OS who asks the DBMS receives a witness  A
is generated as follows:
  ( y  I ) d (mod n ).
e  I  y
an integer n 2512 as the product of two
large distinct random prime p and q of almost
the same size, such that p  2 p '1 and
q  2q '1 , where p' and q ' are also prime integers,
(mod n ).
So if the verification of a digital signature fails
using a self-certified public key it is uncertain,
whether the signature or the public key is incorrect.
Verifiable self-certified public keys
Definition 1.(verifiable self-certified public
keys) Verifiable self-certified public key
scheme satisfies the following two conditions:
1 OS chooses her secret key xA  u as a random
integer and computes her public key as
y A    xA
Next, OS visits the DBMS and gives y A to it.
2. The DBMS, after having checked the Alice’s
identity, prepares the corresponding IDA , and
compute
1
 A  ( y A  IDA ) h( y A ) (mod n ). (2)
DBMS transmits  A to OS.
Then, OS’s verifiable self-certified public key is  A and eA  h( y A ) .
Now, this set-up will enable OS to explicitly
check the authenticity of public key y A , since,
given the pair( y A ,  A ), the following equation
holds:
 h ( y )  IDA  y A (mod n ).
A
(self-certification) The witness is equal to the
(mod n ).
154
Key exchange protocol:
ed system with public key”.
Let ( IDA , x A ,  A , eA ) be the attributes of OS,
( IDB , xB , B , eB ) those of malicious attacker.
They can simply exchange an authenticated
key by choosing (See Fig.1):
We handles a method for role based access control, and distributed firewall, a method allowing
users to manage resources within a distributed
system across administrative domain boundaries
with interlocking operating system.
K AB  ( B B  IDB ) x A  ( A A  IDA ) x B
   x A  x B (mod n ).
e
e
OS
DBMS
e A  h( y A )
eB  h ( y B )
 A , eA
 B , eB
K AB  ( A A  ID A ) xB
e
K AB  ( B B  IDB ) x A
e
Fig.1: Verifiable self-certified key exchange
protocol
This protocol is related to Girault’s one. But
contrary to it, if the key exchange protocol fails,
each user can verify the authenticity of the
public key by computing :
~
y A( B ) ? ~AA((BB))  IDA( B ) (mod n ),
eA( B )  h( y A( B ) ).
e
Proposed Architecture for secure DB
User
Front End
Trusted filter
Cryptographic tool
Append
Stamp
Query
Check
Stamp
Store
Response
DBMS
Authentication
We also solved the interlocking problem with OS
for database security. And copyright protection
problem has been solved with public key. The
security of the proposed schemes is based on both
rth-residues problem and discrete logarithm problem.
Access
control
Auditing
Trusted OS
Reference
1. Courtney R.H. (1990). Factors affecting the
availability of security measures in data processing system components. In proc. 13 th National Computer Security Conf. 10. 1990
2. Tanenbaum A.S. (1998). Operating systems
Design and Implementation. Prentice-Hall.
3. Pfleeger C.P. (1989). Security in Computing.
Prentice-Hall.
4. Steven J.G. (1996). A New security policy for
distributed resource management and access control. Proc. ACM
5. Lunt T.F. (1998). A near-term design for the
SeaView multilevel database system. In Proc.
IEEE symposium on Security and Privacy.
6. Parker D.B. (1984). The many faces of da ta
vulnerability. IEEE Spectrum, 21(5).
Prospects (Landwehr C.E., ed.), Elsevier NotrhHolland, IFIP
7. M. Girault, “Self-certified public keys,” Advances in Cryptology(Proceedings of EuroCrypt’91), Lecture Notes in Computer Science,
vol.547, Springer-Verlag, 1991, pp.490-497.
8. H. Petersen and P. Horster, “Self-certified keys
– concepts and applications,” Proc.3.Conf. on
Communication and Multimedia Security, September 22-23, 1997, Chapman&Hall
9. R.L. Rivest, A. Shamir and L. Adleman, “A
method for obtaining digital signatures and public-key cryptosystems,” CACM, Vol.21, no.2, Feb.
1978, pp. 120-126.
10.Granbart R. The Integrity lock approach to
secure database management. In Proc. IEEE
symp. On security and privacy, 4.1984.
DataBase
Conclusion
This paper addresses distributed resource management and access control. We propose a new
scheme of “The DB security applied Distribut155
Download