Anda di halaman 1dari 5

24 (IJCNS) International Journal of Computer and Network Security,

Vol. 1, No. 3, December 2009

Use of CASE-technology and provision of SQL-data


security for special transportation management
Lyazat Naizabayeva1,
1
Kazakh-British Technical University,
59 Tole-bi street, Almaty, 050000, Republic of Kazakhstan
naizabayeva@mail.ru

Abstract: Logical model of valuable cargo special


transportation management was developed, Computer-Aided 2. Information system design
Software/System engineering (CASE) – “Entity-Relationship”
flowcharting technology – applied, physical database – created Today, in conditions of programming automation intensive
in the MS SQL Server, SQL-data security – provided by built-in development, the problem of adequate reflection of a real
Database management system (DBMS). subject field against information model abstraction is very
acute today. If a project is incorrect, the system, designed
Keywords: Сomputer-Aided Software/System engineering, based thereon, will not satisfy users’ needs and will require
AllFusion Erwin Data Modeler, create certificate, symmetric and costly modifications or complete redesign [1]. Hence,
asymmetric key. database logical design is required: design of a general
information model based on some users’ data models and
1. Introduction being independent of currently used DBMS and other
physical parameters.
Some types of goods make manufacturers’ head bang. How Database design shall be a strategy as to determining
to deliver perishable goods in time? How to transport OOG? company’s information requirements during a long period of
How to protect hazardous goods while transportation? How time.
to transport animals? If a transportation company, Database design, based on a relation model, has the
responsible for delivery of such goods, fails to render such following advantages to other ones:
services at a qualitative and professional level, the goods • Independence of a logical structure of physical
owner will incur material losses. Perhaps, such an owner parameters and user’s opinion.
will be able to cover losses due to poor services, but what • Database structure flexibility – structural solutions do
should be done with irretrievably damaged goods and not restrain future possibilities to meet different
wasted time? This is why special goods shall be transported requirements.
at a highly professional level.
2.1 Use of Computer-Aided Software/System
Special transportation is special delivery of special goods to
engineering (CASE) technology
satisfy needs of highly defense and state essential
requirements.
The following shall be referred to special transportation: CASE technology is usually considered to be an information
delivery of hazardous goods, OOG, goods that require system design method plus tools, which allow
special temperature conditions, highly valuable and fragile • Visually simulating the subject field
goods, escorted transportation. Much attention should be • Analyzing its model at each stage of information system
focused on delivery of general cargo to a destination point, design and support
delivery of out-of-gauge (OOG), liquid, bulk, perishable, • Developing users’ applications
LCL goods; goods storage at consolidated warehouses. To The main objective of CASE systems and tools is to separate
transport hazardous goods, such as explosives, poisons, software engineering from its coding and further
chemicals, it is necessary to agree the route, transportation engineering stages (testing, filing, etc.), as well as to
conditions, and most likely, escort the goods and control its computerize the entire software engineering process.
temperature conditions, loading and unloading. It takes Engineering of advanced information systems requires
additional time to obtain all approvals, so, it is required that application of specials methods and tools. It is no wondering
all employees, involved in goods transportation strictly that in recent years system analysts and designers are
observe both delivery schedule and transportation route. considerably interested in CASE technologies and tools,
This document is dedicated to arrangement of software which allow integrating and automating all stages of
system automation to control and provide security of special software engineering.
vehicles movement information system, namely securities In this paper, logical database was designed by CASE tool
delivery control. AllFusion Erwin Data Modeler (Erwin) [3], “Entity-
Relationship” was developed (Fig. 1).
This diagram shows project intuitive interface and may be
used by users for idea sharing.
(IJCNS) International Journal of Computer and Network Security, 25
Vol. 1, No. 3, December 2009

ERwin is a key solution for database for design and support structure. The following issues are in consideration: the stored
of data bases, data marks and data storage, as well as data allocation in the memory space and the selection of efficient
company’s data resource model. ERwin models visualize methods of access to different components of the “physical”
data structure to simplify data organization and database. Solutions made within this phase make critical impact
management, complicated data integration and database on the system performance.
design and development techniques. Thereby, data based SQL Server has advantages over other DBMS, namely:
development is simplified and speeded up, and its quality simplified installation, development and use, as well as
and reliability are improved significantly. ERwin scalability, creation of data banks and system integration
automatically generates tables and thousands of code lines, with other server software.
stored procedures and flip-flops for advanced vendors’ data Another factor, determining the choice of DBMS MS SQL
bases. Complete-Compare technology, used in the system, Server in this work is speed.
allows iteratively designing so that the model is always In relation DBMS, speed is time, required to running query
synchronized with the data base. ERwin may be also used and return of query processing results to the user.
for design and servicing of the entire database life cycle. SQL Server is more than just simple query running tool, it
provides much more opportunities. All leading DBMS
providers prefer SQL. Relation database and software they
work with may be carried over from one DBMS to another
with minimum costs for modifications and staff training.
Software tools in DBMS in PC, such as query software,
report program and application generators, integrate with
relation data bases of different types. Thus, SQL provides
independence from certain DBMS and this is why it is in a high
demand.
The database has been designed for our system using the MS
SQL Server tools, and is based on eight tables:
Account contains data of the company by the business account,
Courier contains information of the route,
DT_Declaration – information of the orders,
DT_DeclareEvents – event codes in the course of order
processing, which may be as follows: order generation, sorting
out for the route, transfer to the courier, order rejection, shift of
the order by date, adjustments to details, closed-out, open, false
call, prohibited order, changed route;
DT_DeclareStatus contains information of possible statuses of
the order. The order status may be as follows: new, sorted out,
en route, shifted by date, adjusted, accepted, open, false call,
rejected, prohibited.
DT_DeclareEventScheme defines the flow chart related to order
processing. There is the order status BeforeStatus, which was
prior to an operation. After the operation with the order is
accomplished (the operation is determined by the Event Code),
the order status is changed to AfterStatus.
DT_Associative contains data of the company by the relevant
associative words. The associative words are used to automate
data entry – the logistician enters an associative word and fills
in all fields on a one-time basis, which contain data of the
Figure 1. “Entity-Relationship” diagram for the specialized company (company name, business account, telephone, contact
transportation system database in ERwin person, working time, lunch time, comments).
All information is stored in this table. When the associative
word is entered next time, the system finds it in the table and
2.2 Conceptual data bank creation for special automatically displays all data of the company.
transportation management in the SQL Server The database table relation diagram [2] has been developed. The
The next step was the verification of any operational use of diagram is shown on Figure 3.
organization’s data related to the data processing, and the One of the most important elements of the database design is the
exclusion of all useless and repetitive data. In the process of development of the database protection. The protection has two
database design, to solve tasks of data doubling minimization aspects: protection against failures and protection against
and facilitation of data processing and updating procedures, the unauthorized access. The file back-up strategy is developed to
relations were normalized. The tables of designed database are ensure the failure protection. To ensure the protection against
in 3rd normal form (3NF) accordingly to Dr.E.F.Codd [2]. unauthorized access, each user will obtain the access only in
compliance with his/her access rights.
The physical design phase consists of associating of database
logical structure and physical environment of storage with When developing distributed information systems of
purpose to ensure the most efficient data allocation that is the transportation management as to the client-server
mapping of the database logical structure in the storage interrelation, the following criteria were focused on:
26 (IJCNS) International Journal of Computer and Network Security,
Vol. 1, No. 3, December 2009

• Personal database carry-over to the server for its further 2.3.1 Creation of certificates and use of cryptographic
use as a corporate database; functions
• Query run for the corporate database in the server, on
the user’s PC; Certificate is present in the database in the form of an object,
• Development of the user’s application for remote access SQL Server Management Studio provides current certificates,
to the corporate database from the user’s PC; symmetric and asymmetric keys (Fig. 3) in container of
• Server administration from the user’s PC; Databases \data_base_name\ Security\ Certificates:
• And, finally, the most important section for special
information security: tabular data encryption.

Figure 3. Review of all certificates.

Developed database DBI provides a table dbo.SecretTable


with only one column Secret of nvarchar type; you can input
a text, encrypted by a certificate. At first, a certificate is
created, using a CREATE CERTIFICATE COMMAND. A standard
option of this command is as follows:
USE DBI;
CREATE CERTIFICATE SelfSignedCertl
ENCRYPTION BY PASSWORD = 'P@sswOrd '
WITH SUBJECT = Проверка шифрования',
START_DATE = '03/10/2006';

Please note that to create a certificate you do not need any


certification center – all required tools are already built in the
SQL Server. However, you can download a certificate into the
database, which was generated by an external certification
center and stored in a file (a private key shall be in a separate
file), for instance:

USE DBI;
CREATE CERTIFICATE ExternalCertl
FROM FILE - 'C:\Certificates\Certl.cer'
WITH PRIVATE KEY (FILE – 'C:\Certificates\CertlKey.pvk',
DECRYPTION BY PASSWORD = 'P@sswOrd);
Figure 2. The diagram of a database of a specialized - GO
transport in MS SQL Server Moreover, existing certificate may be extracted from setup
.NET, signed by this certificate or from signed used file.
DECRYPTION BY PASSWORD Parameter will request to provide
2.3 Use of data encryption methods in MS SQL Server
password, used for this certificate protection.
It is well known that one of the most important database
components is database security. Data security has two ENCRYPTION BY PASSWORD parameter will identify the password
aspects: protection against errors and unauthorized access required for data decryption and secured by the certificate (the
[4]. To protect from errors, a data back-up is developed. To latter is not required for data encryption). If this parameter is
protect against unauthorized access, each user is provided not used, existing certificate will be automatically secured by
with access in compliance with his/her access rights only. the database master key. This key cannot be created
Starting with version 2005, MS SQL Server provides automatically. To get opportunity to use this key, it should be
opportunity of data encryption; this project demonstrates three created in advance:
out of four data encryption methods by certificated, asymmetric
USE DB1;
keys, symmetric keys, and standard encryption by passwords.
(IJCNS) International Journal of Computer and Network Security, 27
Vol. 1, No. 3, December 2009
CREATE MASTER KEY ENCRYPTION BY PASSWORD = CREATE ASYMMETRIC KEY AsymKeyl WITH ALGORITHM =
'P@sswOrd'; RSA_512 ENCRYPTION BY PASSWORD = 'P@sswOrd';

In addition to the password, database master key is also secured Please note that when creating an asymmetric key, it is
by the service master key. This key is automatically generated necessary to provide such key length in addition to the
in SQL Server when being installed. When using the database password. You have three options: 512, 1024 and 2048 bits.
master key, a great care must be taken: if you reinstall the Afterwards, you may encrypt and decrypt data by this key:
server (hence, the service master key will be changed), in this INSERT INTO SecretTable values (EncryptByAsymKey
case, encrypted data may be lost. To prevent it, it is necessary to (AsyrnKey_ID ('AsymKeyl') , N 'Секретные данные')) ;
back up the database master key or export the service master key
SELECT (Convert(Nvarchar(100),
to a file, using a backup service master key command.
DecryptByAsymKey (AsyraKey_ID ('AsymKeyl'),Secret,
Obligatory parameter subject of a create certificate command
N'P@sswOrd') )) FROM SecretTable;
will identify a purpose of the certificate issue (its value will be
put into the relevant certificate cell in compliance with X.509vl
standard). Upon creation of a certificate, the latter may be used
for data encryption. A special function EncryptByCert is used
for purpose:
INSERT INTO SecretTable
values(EncryptByCert(Cert_ID('SelfSignedCertl'),N Figure 5. Query result for encrypt data by asymmetric key
'Секретные данные')); 2.3.3 Creation of symmetric keys
Let’s review the following encryption method by symmetric
If any user runs query for table SecretTable, he/she may be
keys.
astonished by the obtained results (Fig. 4).
Faster algorithms are used for symmetric keys creation.
Symmetric key themselves are also created as database objects
and may be secured by a certificate, other symmetric key,
asymmetric key or just a password. You can find them in a
Symmetric Keys container.
When using symmetric keys, data encryption process is
faster than when asymmetric algorithms are used, so
working with large databases, it is recommended to use
Figure 4. Query result for table SecretTable
exactly symmetric keys. There are some differences in using
symmetric keys. Firstly, when creating a symmetric key, you
Please note that function EncryptByCert accepts not only the
may secure it not only by a password, but also by other
certificate itself, but its identifier as an initial parameter.
Required identifier may be easily obtained, using Cert_ID
symmetric key, asymmetric key or certificate. Secondly,
function. when creating a symmetric key, you may identify one of
eight encryption algorithms, supported by SQL Server [n].
Encrypted data may be decrypted by using a DecryptByCert Symmetric key creation procedure itself may be as follows:
function. The only problem in using this function is that it
returns decrypted information with data of varbinary type, so it CREATE SYMMETRIC KEY SymKeyl WITH ALGORITHM =
is recommended to convert this data type to nvarchar: AES_128 ENCRYPTION BY PASSWORD = 'P@sswOrd';

SELECT (Convert(Nvarchar(100), Prior to any key use (for data encryption or decryption), it is
DecryptByCert(Cert_ID('SelfSignedCertl'), Secret, necessary to open it. If you open it once during the user’s
N'P@sswOrd'))) FROM SecretTable; working session, it is more than enough:
Initial parameter, accepted by a DecryptByCert function is a OPEN SYMMETRIC KEY SymKeyl DECRYPTION BY
certificate identifier, returned with the same function cert_ID; PASSWORD = 'P@sswOrd';
second parameter is a string value (or a variable, or a column
Afterwards, we use it as usually. Just function names differ:
description, as in our case); the third parameter is a password,
securing the certificate, being generated. INSERT INTO SecretTable
values(EncryptByKey(Key__GUID('SymKeyl'), N'Секретные
2.3.2 Creation of asymmetric keys данные')); GO
Let’s review the following encryption method by asymmetric Please note that while data decryption, it is unnecessary to
keys. provide symmetric key name and password to the
An asymmetric key differs from the certificate by absence of DecryptByKey function. Key data, opened by an OPEN
additional fields with information on who, for what purpose, for SYMMETRIC KEY command will be provided automatically:
what period, etc. this key was provided. Current asymmetric
SELECT (Convert(Nvarchar(100), DecryptByKey(Secret))) FROM
keys are in a container Asymmetric Keys, placed in the same
SecretTable;
place where the container Certificates is. The asymmetric key is
used almost in the same way. First of all, it is necessary to create
an asymmetric key:
28 (IJCNS) International Journal of Computer and Network Security,
Vol. 1, No. 3, December 2009

Information model, adapted for the goods transportation


standards, was developed, implemented and is used now for
courier services [5]. It allows automating staff work and render
more qualitative services to customers.

References
[1] A.J. Brast, S. Forte. Development of Microsoft-Based
Applications. Master Class./ Translated from
English.-Moscow: Russian Redaktsiya Publishing
House, 2007.
Figure 6. Encrypted data query run results [2] T. Connoli, K. Begg. Databases. Designing, realization
and support. Theory and practice. 3rd edition,
“Williams” publishing house, Moscow, 2003.
SQL Server also allows encrypting data so easily, using a [3] S.V. Maklakov Creation of information systems with
password. For this purpose, an EncryptByPassPhrase an AllFusing Modeling Suite. – M.: Dialogue - MIFI,
function is used. In case of a standard option, this function 2003.
requires only password and data to be encrypted. [4] R.N. Mikheyev MS SQL Server for administrators.-
INSERT INTO SecretTable SPb.: BKhB-Petersburg, 2006.
values(EncryptByPassphrase(' P@sswOrd', N'Секретные [5] L.Naizabayeva. “Information System Modeling to
данные') ) ; GO Control Transport Operations Process”. In
Proceedings of the International MultiConference of
Data shall be decrypted by a DecryptByPassphrase
Engineers and Computer Scientists (IMECS), Hong
function:
Kong, рр. 1813-1816, 2009
SELECT(Convert(Nvarchar(100), [6] A. Troelsen, PRO C# 2005 and The .NET 2.0
DecryptByPassphrase('P@sswOrd', Secret))) FROM Platform, Third Edition, après, Sankt- Petergburg -
SecretTable; Kiev, 2007.

Author Profile

Lyazat Naizabayeva majors in math,


Kazakh State University after S.M.Kirov
(1986); was awarded degree of Ph.D.
(candidate) Physical and mathematical
sciences (High Academic Attestation
Committee of USSR, 1992); Academic title
Associate-professor of Informatics, Computer
Systems and Management (High Attestation
Committee of Republic of Kazakhstan, 2003 ).
Figure 7. Data decryption results
Now, she is an Assistant - Professor in Kazakh-British University.
It is worth noticing that it is unnecessary to limit oneself by
built-in SQL Server tools only. This server also allows using
queries to setup .NET in the Transact-SQL code. So, for
purposes of data encryption, classes from
System.Security.Cryptography namespace in .NET
Framework or own setups may be used [6].

3. CONCLUSION
As a result of developed information model for special goods
transportation safety and efficient management in the course of
the optimization process, the following tasks shall be solved:
city traffic analysis, identification of an efficient route for
securities delivery in a city, considering city traffic, option
efficiency assessment; reliable information system protection
was provided; considered efficient operation of specialized
vehicles.

Anda mungkin juga menyukai