as a PDF

A.Yu.Bykovsky, A.A.Egorov and B.Yu.Rager : Multiple-Valued Logic Protected Coding for Optoelectronic Systems Distant Control via the Global
Network
Multiple-Valued Logic Protected Coding for Optoelectronic Systems
Distant Control via the Global Network
A.Yu.Bykovsky*, A.A.Egorov** and B.Yu.Rager**
Abstract : Multiple-valued logic protected coding is proposed to be supplemented by PARSEK network pr
ogramming language in order to provide distant protected control of robotic agents via the global network.
PARSEK is the known tree-structured language, which makes easier to fit together multiple-valued logic
cryptography codes and controlling procedures for distributed computing in a multiagent robotic system.
Keywords : Multiple-valued logic, tree structured data, protected robotic control, distant control of agents.
network and attacks of eavesdroppers aimed at network
servers. Of course, such a malfunction will not be a
catastrophe, if special flexible programs are designed for
robots beforehand. The second possible and much more
dangerous type of malfunctions can be caused by
motivated attacks of an eavesdropper namely at PC,
exploited as a supervisor for a robotic team. That is why
it is reasonable for a local user to include some
additional crypto coding methods into a robotic team and
host PC independently from network security methods.
INTRODUCTION
Many social and commercial applications of robotics
and automatic machinery need low-price and reliable
methods of distant control, based on data exchange
between a man and a controlled autonomous robotic
team [1]. The principal scheme for such a system is
given in Fig.1, where the team of autonomous robots is
shown to work on some territory.
The distant man-supervisor interacts with robotic
team via the special host PC agent, included into the
robotic team. The supervisor and the host PC in the
robotic team are supposed to be equipped with typical
network hardware, and for the sake of simplicity, the
robotic team is supposed to have highly protected local
data channels, which does not disturb the supervisor.
The user of a distant robotic team may need to transfer
not only direct tasks and instructions for robots, but large
volume of visual photo and video information, objects
parameters, work results, test and service procedures.
As the global Internet network provides cheap and high
throughput data transmission channels, it can be regarded
potentially as a very attractive control data transfer
channel, highly adapted for transfer of visual information,
but a motivated eavesdropper, using modern codes
breaking methods, can stole confidential business
information, damage and modify control instructions.
Nowadays global network technologies do not
provide the necessary level of data protection for
transferred messages [2]. First of all, the civil owner of
a distant robotic team practically can`t withstand
possible general malfunctions in the global
Supervisor
+ PC
INTERNET
global network
Host PC based agent
Local data
transfer
channels.
A
B
C
Team of robotic agents.
Fig. 1. The principal scheme of control instructions
transfer via the global network. The
communication channel is shown between
supervisor`s PC and special host PC, which
have separate local data channels with robotic
agents A,B,C.
*
Leading researcher, P.N. Lebedev Physical Institute RAS,
Moscow, Russia
e-mail: [email protected]
** Post graduate student, Moscow Engineering Physics Institute
(State University), Moscow, Russia
140
Pacific Science Review, vol. 13, no.3, 2011, pp. 140~149
Methods of data and knowledge protection in a
hardware agent [3] are the base for protection of robotic
team and can be subdivided into three main parts. Firstly,
a user can raise the level of protection of agents by
enhanced multiple-valued logic (MVL) cipher protocols
in communication channels [4], including application of
error correction codes and authentication procedures.
Secondly, the user can potentially apply special
programs in agents for the logical analysis of content of
received messages [3], what is a complicated task and
out of the item of this paper. Third group of methods
include physical active and passive protection of an
agent “body” from direct physical access to its memory
chips, here one can apply special MVL procedure [5] for
“friend-or-foe” recognition of agents, which have the
permission to come into contact with the agent, and
special
key
unit
for
controlled
distant
disordering/reconstruction of the fuzzy logic rule base,
when the robot is switched off and afterwards switched
on [6].
The ideal protected representation of a confidential
information message, transferred via global network data
channels, can be depicted [2, 7] as the set of large
dimension digital arrays, otherwise an eavesdropper will
be able simply to guess the real code. Moreover, the
numbers in these arrays also should follow in a random
manner and have random numbers content, otherwise the
eavesdropper can analyze and reconstruct interrelations
between actions and data structure. As industrial and
service robots are typically specialized on some kinds of
activity, namely visual control of the scene in
combination with data traffic analysis can give the
potential eavesdropper the greatest chance to classify
robotic actions and to reconstruct the language of robotic
team control. Another kind of possible prompts is due to
the fact, that distant control of a robotic team include
correction of different types of information: renewal of
cryptography codes, correction of tasks and
characteristics of objects. Every class of such
information has its typical representation formats, but all
of them should be unified to some universal data
structure.
The motivated designer of additional cryptography
procedures also should remember, that the most powerful
and correct crypto code is to be based on classical
principle of a “one-time” cipher pad, providing long
enough random one-time key for every coded message
[7].
Another obvious demand to additional cryptography
procedures lies in the fact, that for agents with massive
optoelectronic data processing security procedures
should not create obstacles for visual data transmission.
Besides this, robotic team actions, initially described by
natural language constructions [2], should be maximally
hidden within the secret message exposed to the Internet
media. Thus, the coded representation of addresses (i.e.,
names of robots), instructions, objects characteristics,
pictures and etc. should be uniform and just the same. As
one should have the possibility to transfer secretly even
the most simple instructions and characteristics, the
coding transformation should provide the smallest level
of data “granularity”. As a result, for future robotic team
applications namely the “low” level language of network
programming, using the very primitive set of basic
operators
(mostly close to basic logic operators in
algebra theory [8]) seems to be the most reasonable way
to transform initial messages into the array with large
enough dimension and uniform structure of quasi
random numbers.
One more actual and interesting aspect of distant
protected control is that a robotic team can be regarded
as a separate variety of a distributed computing system,
which in its turn may have the computing tasks for
global distributed computing system, such as a P2P
network, grid system or “cloud” computing network [9].
As for such computing systems the user can`t choose the
exploited hardware in the network, it is practically
impossible to apply additional crypto methods in a global
distributed network with arbitrarily activated hardware.
As a result, the robotic team user should apply additional
knowledge protection methods just in his agents
contacting with the network.
The aim of this paper is to show, that the joint
application of highly protected multiple-valued logic
(MVL) protected coding [2,4,6] and special architecture
of a protected agent [3,10], together with so-called
PARSEK language [9], earlier designed for distributed
global grid computing, is the most simple and direct way
to adapt the robotic team for highly protected delivery of
instructions via the global network between the distant
supervisor and robotic agents. PARSEK here is the most
adequate method of transfer of additionally coded
messages between robotic agents, and MVL coding is
the method of additional coding just in robotic agents. At
the same time, special protected architecture of agents is
here the way to create integral knowledge and data space,
needed for PARSEK application. Its task is also to
combine secret coding modules with all other data
processing subsystems into the integral control data
space.
141
A.Yu.Bykovsky, A.A.Egorov and B.Yu.Rager : Multiple-Valued Logic Protected Coding for Optoelectronic Systems Distant Control via the Global
Network
operations give the direct possibility to create, delete
tree branches, to control the cursor movement along the
tree and edit links between nodes. Thus, e.g., if one has
generated an ordered random numbers sequence
{a1, a2, …}={102, 5, …} for cryptography purpose, he
can distantly transfer and correct it via network by direct
PARSEK
instructions
in
perfectly
visualized
representation.
CHARACTERISTIC FEATURES OF
PARSEK, CRITICAL FOR
CRYPTOGRAPHY CODING IN
ROBOTIC AGENTS
PARSEK globally distributed computing language
[9], based on C++, was designed as a software tool to
provide the effective programming of distributed grid
computing in global P2P networks and the global
integration of distributed data. Tree structured calculus
models, used in PARSEK, is the way to overcome:
- incompatibility of data representation forms,
- extreme heterogeneity of information space in global
network,
- huge number of representation forms and processing
methods in grid computing.
PARSEK designers especially emphasized [9], that
commercial grid instrumentation has too many platforms
and this fact leads to extreme non-uniformity of global
computing information space. Such a situation is the
consequence of the classical von Newman model and is
out of the item of this paper.
PARSEK language [9] operates only with tree-structures,
providing closed (or self-contained) calculus and use the
full set of tree structures operations with data and files
inside the PC and in distant PCs. Thus, for a full linked
tree structure PARSEK is a tool to find necessary data
and to work with data trees branches in all distant parts
of the network. The well-known tree structure data
representation, earlier widely used in popular Norton
Commander soft for PC, is given in Fig.2 a) and
visualizes an ordered set of elements
{a1, a2, a3 ,…}={102, 5, 25,…}. Elementary tree
represent structured object and consists of nodes and
links. There are three types of hierarchical links:
deep- link with the lower node:
next- link with the next node of the same level;
prev- link with the upper level node.
In PARSEC one can read the content and the adress of
the node:
cont ( );
change the content :
re_cont ( );
create and delete nodes:
node_create ( ),
node_del ( );
to edit links between nodes:
link_next ( , ),
link_ deep ( , ),
link_prev ( , ).
Therefore, the cursor transition from address #a1 to
address #a2 can be given by direct operator deep, values
for a set {a1, a2, ,…} can be read by operator cont. As a
result, for ordered sets like {a1, a2, …} PARSEK
A
a1=102
a2=5
a3=25
...
a)
B
<*program_ name*>
`rout
start of branch
of main program
`parform
list of start up
parameters of
a program
subtree
`subrout
list of subroutines
b)
Fig. 2. a) Tree structure, representing e.g., ordered set
{a1, a2, a3 ,…}={ 102, 5, 25,…}. b) Simplified
tree structure representation of a program in
PARSEC. (Adapted from [9]). It can contain tree
branches for cycles, conditions if -then,
subroutines and etc.
PARSEK [9] operators include cycles and conditions,
assignment, expression and functions. Consequently,
non-binary logic operators MIN, MAX can be directly
emulated in PARSEK. This provides the realization of
algorithms, necessary for full-range programming, while
any program in PARSEK can be given by tree structure,
like shown in Fig.2 b). Also PARSEK instruments set
includes instructions for memory content addressing just
in the every computer in the network, including IP
network address of the computer, port address, SRAM
and disk memory address. Special operators are used for
142
Pacific Science Review, vol. 13, no.3, 2011, pp. 140~149
input/output of tree structures {read_tree, write_tree}
and files {Copy, Move, Rename} operations, where all
possible variants of trees and files transfer possible
between memory SRAM and disks.
Consequently, tree structure calculus in PARSEK is
the tool to organize integral data space for memory and
addressing, excluding unambiguous description and
alternative interpretation of data and instructions. This
integral data space is represented as a traditional tree
structure and is easy to visualize, modify and verify the
branches of that integral tree. Ordered sequences here are
only one and the simplest variant of tree structures, but it
is already quite enough to apply MVL secret coding.
Computing device in the communication module is
highly specialized and can be even based on a
microcontroller, and not PC.
Protocol 1. (Message is being send by the supervisor and
is to be delivered to host PC and further to a robotic
agent).
1. Receiving/transmitting PC waits for and receives
the message, consisting of 3 parts:
{a} - IP address, according to commercial TCP/IP
protocol,
{b} - uncoded message adressed to robotic agents (if the
supervisor is not the owner of the robotic team, part {b}
can be also coded by some other key in order to create
more complicated multistage protection, but this here is
not substancial),
METHOD TO VERIFY THE FACT OF
MODIFICATION OF A MESSAGE,
TRANSFERRED VIA GLOBAL
NETWORK
Host PC
Supervisor PC
wants to send y1 ,y2 ,...,yJ
Algorithm
and hardware
for secret coding.
Netcard &
TCP/IP
For MVLcoding:
procedures.
Random
number
generator &
A coded message, which has been delivered via
Internet, can be either original or modified. The situation,
when some of messages were not deliberately delivered
to a robotic team, is supposed to be determined only by
logical check of content during some time intervals, but
that is a task for a complicated reasoning analysis system
and is out of the item of this paper. More easy is to
determine the fact of modification. Convenient method
can be proposed, appropriate both for MVL and
traditional cryptographic coding.
The principal scheme is given in Fig. 3 a), b), which
describes the protocol to verify possible message
modification. Message transfer is initiated by the
supervisor PC, see Fig.3 a), which sends the message to
host PC and further to a robotic agent. Supervisor`s PC
and host PC are to be equipped with hardware and soft
for work with network and additional cryptographic
coding. If the application of highly protected MVL codes
is supposed, than supervisor`s PC and host PC should be
supplemented by a good quality random number
generator (RNG) modules and one and the same secret
MVL function y=FMVL (x1,x2,…,xn), is to be written in
their memory devices. Receiving host PC unit (in the
host PC based agent in Fig.1) is to be composed from
two modules, see
Fig.3 b):
1) receiving /transmitting computing device (e.g., PC),
equipped with network communication hardware,
2) separate communication module with RNG and
independent computing device.
These modules are to be linked by USB or COM
ports.
Initially receiving/transmitting PC and
communication module are switched into waiting mode.
a)
Open type
network
data channel
y=FMVL (x1 ,x2 ,...,xn).
Algorithm
and hardware
Netcard & for secret decoding.
TCP/IP
procedures. For MVLcoding:
Random
number
generator &
y=FMVL (x1 ,x2 ,...,xn).
Host PC unit
global
network
data
channel
message:
{a), b), c)}
PC unit with
netcard for
receiving/
transmitting
of messages
(to be reloaded
from ROM
or CD ROM)
parts of
message
{ b), c) }
Hardware
port link
(USB or
COM port)
Communication
module with RNG
compares
decoded
parts b) and c)
to detect
modification
part { b) }
in coded
or decoded
form
To agents
A,B,C
b)
Fig. 3. a) The general scheme to verify modification of a
message, transferred from supervisor PC to host
PC. Both of devices have network card, RNG and
secret MVL function. b) The scheme of receiving
host PC unit, consisting of receiving/transmitting
PC and special communication module, linked to
receiving PC by USB or COM port. Received
message consists of parts a),b),c), where a) is
{TCP/IP data}, b) is {coded or non-coded
instruction}, part c) is a coded replic of
instruction b) and is needed for verification.
{c} - part {b}, coded e.g., by MVL codes.
Optionally, automatic message documentation can be
activated from ROM, data are to be written into a
separate disk or flash memory.
2. Receiving/ transmitting PC transfer parts {b} and
{c} via port link into communication module, after this
receiving/transmitting PC is to be reloaded from ROM
and to be returned into wait mode.
143
A.Yu.Bykovsky, A.A.Egorov and B.Yu.Rager : Multiple-Valued Logic Protected Coding for Optoelectronic Systems Distant Control via the Global
Network
MIN, MAX > include constants 0,1,…,k-1 , operators
MIN=MINIMUM (x1, x2 ) (selection of the minimal
value from a pair of elements), operator
MAX=MAXIMUM (x1, x2) (selection of the maximal
value from a pair). Operator LITERAL X(a,b)
is
defined via parameters a and b [11] as
3. Communication module, equipped with RNG,
decodes part {c} and, if necessary, part {b}, according
e.g., to earlier published procedures of MVL secret
coding/decoding [3,4,6].
4. Communication module compares content of part
{b} and {c}, if there are no mistakes it delivers part {b}
to announced agent.
If there is any difference between
{b} and {c},
communication module activates special error check and
correction program.
5. Return to waiting mode.
For the duplex communication, i.e. for transmitting of
a message from agent to host PC and to supervisor, the
scheme should be reversed.
Protocol 2. (Message is being send by the robotic agent
and is to be delivered to host PC and further to a
supervisor).
1. Communication module, equipped with RNG for
work with MVL codes and independent computing
device, waits and receives the message from the agent,
where message consists of initially uncoded part {b}.
2. Communication module codes part {b}, thus
creating part {c}, and optionally codes part {b} by the
same or different one-time MVL key.
3. Communication module transfer parts {b} and {c}
via port link into receiving/transmitting PC.
4. Receiving/ transmitting PC choose the necessary
network IP, creates full message (including parts
{a},{b},{c}) and sends it, according to standard TCP/IP
protocol.
Optionally, automatic message documentation can be
activated from ROM device, data are to be written into a
separate disk or flash memory.
5. Receiving/ transmitting PC is reloaded from ROM
and is drawn into waiting mode.
Given above protocols does not modify the content of
part {b} in message (even for some complicated
multistage coding). That is why any knowledge structure
in part {b} of a message, described by PARSEC
language, will not be changed by verification procedure.
This verification scheme is applicable to any additional
code and does not interact and conflict with network
language.
X(a,b)= { 0, if x<a
k-1, if a ≤ x ≤ b.
(1)
Thus, traditional arithmetic operations sum,
subtraction, multiplication, division are not defined in
AGA, that is why this calculus can`t be directly used for
traditional mathematical modeling. However, as is
discussed further, special procedures for k-valued logic
switching function can be effectively used for secret
codes generation [4,6] and even for modeling of agent
work [9].
Arbitrary discrete MVL function for k=256 logic
levels and n variables x1,…,xn can be defined as a truth
table, see Fig. 4 a), and equivalent logic term
representation can be given by
y=F(x1,…,xn)= 1∗X1 (a11 ,b11)∗ …∗Xn (a1n ,b1n) +
+ 2 ∗X1 (a2 1,b21)∗ …∗Xn (a2 n,b2n) +
…
(2)
+ q∗X1 (aq1 ,bq1)∗ …∗Xn (aqn ,bqn) ,
where exp. (2) can be combined from several groups of
minterms with different constants.
Ordered sets of all constants C ={0,1,…,k-1} and
coefficients
a={a11,…, aqn} , b ={b11 ,…, bqn}
completely define MVLF. Exp. (2) may be shortened
(minimized) according to known method of
minimization [11]. During this procedure the set of
Literals coefficients a ij ,bij should be transformed. For
an arbitrary MVL function the overall number of
parameters aij ,bij [4] is equal to Nparametrs=2x(k-1)xn,
where k– is the chosen number of logic levels, and n – is
the chosen number of variables x1,..,xn. Respectively,
MVL function e.g., for 30 variables and 256 logic levels,
can be written in a memory chip only ≈16 KBytes, as the
number of Literal parameters a ij,bij will be Nparameters ≤
2x256x30=15360. The “less or equal” symbol is used
here, as for simple MVL functions some constants will
not be used in exp.(2). That is why, the distant transfer
of a whole MVL function, defined by the ordered set
with 15360 elements, by means of PARSEK procedures
can be regarded simply as the transfer of tree structure
branch (see Fig.2) with many nodes.
This long sequence of numbers is an ordered one and
can be easily subdivided into separate blocks for
DATA STRUCTURES OF MVL
CRYPTOGRAPHY CODING,
CONVENIENT FOR TREE
STRUCTURED OPERATIONS
MVL coding method [4,6] is based on Allen-Givone
algebra (AGA) [11], which is a full set of
logic
operators in k-valued logic, where k - is the value of
truth, k={0,1,…,k-1}. Its operators <0,1,…,k-1, X(a,b),
144
Pacific Science Review, vol. 13, no.3, 2011, pp. 140~149
=25630 ≈1,7 ⋅1072. These random combinations x2,…,xn
are further to be used as random one-time keys! That is
why one MVL function, secretly written into
communicating devices with quite modest memory
storage, can provide long autonomous work for secret
coding.
In order to realize simple technical method of secret
coding in an arbitrary communication line, it is more
comfort to apply re-coding sequence principle [4],
disclosed briefly in Fig.4 b). Ordinary memory chip has
adress and cell pins. To make the procedure more
illustrative, one may suppose that initial recoding
sequence R0 ={0,1,…,255} is written into the memory
chip. Using simple procedures discussed in [4,10], or
some more complicated method, one should make the
random permutation of R0, leading to final recoding
sequence R. In order to receive biunique coding and
decoding keys for R, it should not contain repeated
numbers, but only some permutation Pk of R0. As the
used initial sequence R0={0,1,…,255} is very long - 256
numbers, the number of all possible combinatorial
permutations Pk =k! can be estimated by the well-known
Stirling formula for large k, which gives for k=256, and
n=30: Pk ≈8,57x10506 [4,6]. That is why such a simple
procedure for generating of random sequence R is very
attractive for the generation of large spaces of secret
keys.
The general protocol of secret data transfer between
two agents, which was discussed in [4,5,6,10], can be
directly used for message transfer via network. For the
data transfer channel {supervisor PC}-{host PC} (see
Fig.3), each of both devices should have RNG. The
message to be coded should be represented as a set of
phrases (i.e. number sequences), as for each of them the
length does not exceed 256 numbers. The described
above final recoding sequence R is used as a one-time
key for only one phrase, as in classical “one-time”
cipher-pad method [7]. As it was shown earlier, the
verification procedure is here independent from MVL
coding.
The coded part {с} in message in Fig.3 should in its
turn contain two parts: first part is a coded message,
received by random substitutions in initial message, and
second part is the “prompt” for the receiving device, i.e.
the set of x`2,…,x`n values, which was used by the
transmitting device for coding of that very message. It is
used in host PC for calculation of reverse key R i and for
decoding. That very principle can provide the correct
work in an open channel, exposed to potential
eavesdroppers as in the classical Diffie-Hellman-Merkle
algorithm [2]. In such a scheme the attempt to repeat
earlier used prompt sequence x`2,…,x`n is useless, as the
eavesdropper does not know the secret function. In order
to reconstruct the secret function for given k and n by the
brute force attack method, he will have to work with
transmission and restoration from separate phrases (or
blocks) afterwards.
MVL secret coding [4, 6] can be easily applied
together with PARSEK network language, as this
method of cryptography coding is built only on
operations with one dimensional ordered data arrays,
directly represented as tree structures in PARSEK.
The brief scheme of secret coding is given in Fig.4 a),
b). If according to Fig.3 the supervisor PC wants to send
the secretly coded message to host PC, then the secret
MVL function by exp. (2) should be beforehand written
into the memory of both devices. Some truth table
responds to the used expression (2).
Truth table of a MVL function y=F(x1 , ...,xn), with randomly
choosen parameters (ai ,bj) of Literals in exp.(1).
Dec.
nom.
of row
Sequence
x2 ,..., xn
is "chosen"
by RNG.
xn
x n-1
x2
x1
y
0
0
0
...........
0
0
f(0,0,...,0)
1
0
0
...........
0
1
f(0,0,...,1)
.....................................................................................
k-1
0
0
...........
0
k-1
f(0,0,...,k-1)
k
0
0
.............
1
0
f(0,0,...,1 ,0)
............................................ ..........................................
n
k-1
k-1
k-1
............. k-1 k-1
f(k-1,k-1,...,k-1)
a)
Memory chip:
adresses #: 0
1
2
........... 254 255
0
cells: 0
1
2
........... 254 255
102
1
2
5
For
x1
from
0
up to
k-1.
........... 254 255
........... 254 237
Random permutation
Initial recoding sequence R0
Final recoding sequence R
contain random permutation of R0 .
Coding (direct) key substitutes:
R1={0→102,...,2→ 25,...}.
b)
Decoding (reverse) key substitutes:
R1={102→0,...,25→ 2,...}.
Fig. 4. a) The scheme, disclosing the procedure of secret
MVL code generation. b) The principle of
random permutations in a SRAM chip, used to
receive coding and decoding keys.
Also, each of devices has separate RNG inside. The
MVL function is given for k-logic levels, e.g., k=256,
and n=30 input variables x1,…,xn . Its set of less then 16
KBytes of constants and coefficients in Literals are
chosen by the good quality RNG. This RNG is used to
choose random set of values for variables x2,…,xn ( x1
is not fixed!) in Fig.4 a). It is more visual to show in
truth table, that further one is to scroll all values x1 from
0 up to 255 (shown by the ellipse in Fig.4 a) and
calculate k values of function y. They (also shown by the
second ellipse) will be randomly distributed within the
band of [0,…,255]. The number of all possible x2,…,xn
combinations [4] is determined by the number of rows
in MVL function truth table [ 8], which is N rows =kn
145
A.Yu.Bykovsky, A.A.Egorov and B.Yu.Rager : Multiple-Valued Logic Protected Coding for Optoelectronic Systems Distant Control via the Global
Network
expert knowledge in the table representation. That is why
some tools from relational databases methods still can be
reproduced. The architecture being discussed further in
this section, initially is aimed to build the most simple
and obvious MVL modeling tool, i.e., the mapping
scheme for a set of MVL functions [10]. These functions
are to model the work of separate subsystems of the
agent. As separate MVL function can be easily described
by PARSEK instructions, than integral MVL model for a
separate agent or a robotic team can also be controlled by
PARSEK.
However, this proposal has some obstacles to be
realized. The calculation of minimized exp. (2)
according to expert knowledge given in tables needs to
solve the problem of quick logical minimization of MVL
terms, written for truth tables [11]. In the 70-th and 80-th
years of the 20-th century, as it was stressed by designers
of AGA in [11], it was a large problem, but for modern
computing systems this problem seems to become more
easy. The question is what number of discrete k-levels
and input variables n can be maximally computed. That
item was somehow discussed in [11] and is to be revised
in future investigations.
For complex protection the MVL model [3] needs to
be obligatory supplemented by the whole spectrum of
data protective tools:
a) non-alphabet language with fixed phrase structure,
depicting the world model of the robotic team,
b) special type of asynchronous local network of
microcontrollers as the agent hardware base,
c) distributed “blackboard” memory in the agent with
rigid control of re-writing procedure, preventing from
direct access of an eavesdropper`s queries into memory,
d) MVL cryptography coding of communication
channels,
e) logical content verifiction for incoming messages,
f) sensor detection of direct unauthorized intrusion into
memory modules of the agent.
In [10] this list was further enlarged, as some new
tools were proposed. In the new variant [10] of the
architecture [3] it was proposed to model the work of
separate subsystems in agent by individual MVL
functions, in order to receive the integral framework
model, which can be applied for general debugging of
the agent behaviour. Also, such a scheme was further
developed in paper [6], where a protocol and scheme for
the distant MVL coding key was designed, which can
distantly destroy and rebuild the fuzzy rules base. This
scheme used the representation of the set of fuzzy logic
“If…Then…” rules as only one MVL function. Here,
MVL coding and computing of discrete logical multilevel switching functions was the tool to integrate fuzzy
logic units into the general MVL model of the agent.
Besides this, general MVL model is the mean to raise
drastically the space of secret keys, which should be
space of all possible MVL functions, which is [8] Nvariants
kn
of MVLF=k . For k=256 and n=30 this number attain
72
Nvariants of MVLF =25625630 > 256 10 , it obviously
exceeds the key space for all modern cryptosystems.
The simplest practical method to realize MVL coding
[4] is to integrate the memory chip with n cells, shown in
Fig.4, into the data bus to make substitutions for
incoming data, delivered via address pins. Here, even 8
or 16 bits chip is already enough for huge increase of
secret key space, in comparison with traditional
cryptography methods. For the eavesdropper, which tries
to guess the current content of coding memory chip, the
number of all possible variants of sequences with length
of n k-level numbers, written simply as k memory cells
in the chip, will be Npermutations =Pk=k!. MVL functions
are here the comfort and simple tool to organize long and
autonomous work with random numbers from RNG in
the open data channel. This method does not use any
traditional cryptography methods [2].
Consequently, ordered sequences in MVL coding are
practically the only really needed instrument, providing
exclusive dimensions for key spaces parameters and
transfer of MVL codes and functions by PARSEK
commands.
THE ARCHITECTURE OF THE
PROTECTED AGENT MODELED BY A
SET OF MVL FUNCTIONS
PARSEK language [9] provides optimized work with
global data and files space in a distributed network. As a
robotic team or even the separate agent [3] can also be
regarded as a distributed computing system with parallel
data processing, than the most easy and natural
interaction of network with PARSEK soft will be
obtained namely for tree structured architecture of agents.
The most realistic candidate for joint work with
PARSEK is the protected distributed “ blackboard”
type architecture of a robotic agent, proposed in [3] and
enhanced in [10]. Its substantial advantage is that it
propose not only the parallel distributed multi-parametric
computing in the specialized network of microcontrollers,
but it also give the possibility to build integral graph tree
for all experimentally measured parameters and
mathematically modeled variables, by means of a
sequence of MVL functions, depicting separate
subsystems of the agent [10]. As it was mentioned above,
multiple valued logic AGA itself has no arithmetic
operations and can`t be directly used for modeling of
algebraic or geometry expressions. But it has logic terms
calculus exp.(2), and its truth table with k-grades of
input/output variables is quite a real tool to work with
146
Pacific Science Review, vol. 13, no.3, 2011, pp. 140~149
task, FHdanger , estimating the measure of detected threat.
The resulting parameters, disclosing possibility of an
agent to work, are to be directly send to other subsequent
modules.
Second
step. After the first step is carried out,
communication receiver and transmitter units are to
deliver instruction of the supervisor into agent and to
send request for additional instructions, if necessary.
External instructions, incoming into soft module FCagent
movement , are to be taken into account together with
homeostat results. This function estimates reasonable
agent movement in the scene, and is to be used for
further task solver in the decision making unit.
FCcommunication task can be calculated to form e.g., SOS or
help signals.
analyzed by a potential eavesdropper for brute force
attack or cryptography analysis. It was shown in [10],
that if an MVL function is given as along sequence of
numbers (> 15000) computed beforehand, this is
extremely good for MVL cryptography protection, as
this long sequence of numerical coefficients provide the
colossal dimension secret permutations of greater than
Npermutations=Pk=k!=15000!. Thus, the secret MVL coding
for other MVL functions, modeling the work of largescale modules in the agent, is a very attractive method to
keep algorithms of their work in secret. But as it was
discussed in Introduction, the protected agent for fullscale distant control should also provide distant transfer
of corrected and renewed MVL functions and MVL
crypto coding parameters. As a result, the architecture
presented in [10] is to be also modified.
The proposed architecture of an agent with protected
MVL models of basic subsystems is shown in Fig.5 a).
Its main idea is that main subsystems (homeostat,
communications units, sensor subsystems, including
computer vision, decision making unit) are semiautonomous modules as in [3,10]. Cycles of their work
are to be activated by clocking scheme with time lags,
and each subsequent subsystem can use some of the
results, obtained by previous cascades. Each of
subsystems, equipped with its own microcontroller,
computes its specific set of MVL functions, calculating
them as exp. (2). Some of possible functions are given in
Fig.5 b), where three of agent`s subsystems are shown to
respond to three columns of MVL functions. For
example, homeostat, or the subsystem to sustain vital
parameters, takes into account data from sensors and
from “blackboard” memory. Here, in the scheme
modified for MVL secret coding, independent modules
for MVL coding are to be installed as just in the
communication modules, as between subsystems and
“blackboard” type memory. The knowledge structure can
be taken from “blackboard” by all subsystems, but
partially useful information is exposed in secret form,
according to the principle that only “authorized and
subscribed” subsystems will understand.
For massive MVL calculation in the agent it is easier to
integrate some additional secretly coded information just
in the general access memory device [3], but not to
seclude special secret memory device. Possible
procedures, using calculations of discrete MVL functions,
are shown further as several illustrative steps, disclosing
possible cycle type algorithm to work with MVL
functions model.
First step. Homeostat controls e.g., battery check,
control sensors, external temperature. For current sensor
data, working in the manner close to well-known fuzzy
controllers, homeostat calculates by means of exp.(2)
e.g., FHhealth , estimating “health” of agent, FHactiveness ,
estimating e.g., the measure of efforts to carry out the
to network
sensors
...
Homeostat
(vital
parameters)
executive
devices
MVL
coder
Unit
to receive
messages
Unit
to send
messages
...
variables
of vital
param.
executive
devices
...
...
MVL
decoder
sensors
sensors
...
Computer
vision
unit
...
...
Sensor
process.
unit
Decision
making
unit
...
...
variables of
tasks and planning
variables of tasks
and external objects
scene map memory (x, y, z, t)
밄 lackboard? memory
a)
Homeostat (H)
H
F health
H
F activeness
data from
sensors
and
memory
Decision making
unit (D)
Communication
module (C)
F Ccommunication. task
C
F agent movement
...
F Hdanger
...
...
D
F task
selector
D
F search time limiter
F Dsave
MVLC
b)
F memory access
MVLC
F operations with map
Fig. 5. a) The modified architecture, integrating MVL
coders into the structure of agent subsystems.
b) The graph scheme to define the structure of
MVL functions, modeling the work of an agent
with protected knowledge and database.
Third step. After the second step is carried out, sensor
and executive devices units, including computer vision
system, can be processed as a complicated set of
functions. Computer vision will obviously need the most
powerful computing resources and the large set of
features and variables, but in the discussed scheme the
147
A.Yu.Bykovsky, A.A.Egorov and B.Yu.Rager : Multiple-Valued Logic Protected Coding for Optoelectronic Systems Distant Control via the Global
Network
difference between separate subsystems is only in the
number of formalized parameters to be processed.
Moreover, MVL logic primitive instrument is not enough
to include traditional binary and approximate fuzzy logic
formulas, needed for complex computer vision
processing. But here one can apply the method proposed
in [10], where MVL switching functions were used to
activate separated binary and fuzzy logic soft units, when
necessary.
….
N-th step. After all necessary information is received
from all subsystem, the decision making unit estimates
its functions, e.g., for task selecting, time limiting of
parameters, evacuation decision and etc.
The necessary property of an agent with protected
architecture is that all knowledge and objects
characteristics, which are to be written into memory, are
to individually coded while passing through the special
unit for MVL coding/decoding (see. Fig.5 a)). Such a
model scheme seems to be more adequate for complex
visual data processing schemes, as secret information can
be accumulated from separate messages, and one can
additionally verify its correctness. Thus, secret coding is
not necessary to use all the time for all data, but it can be
selectively applied for some types of data (e.g., the secret
map of treasures location). The special type memory [3],
providing sequential access of all subsystems to general
knowledge base, is needed here to provide the work with
the coordinate and time maps, lists of objects and is to be
designed especially for specific expert knowledge.
What is substantial, the MVL coding/decoding unit,
regulating access to “blackboard” memory, should
calculate several own MVL functions, e.g., FCcommunication
FMVLCmemory access to activate “Enable” pins in
task or
memory chips and FCoperations with map, which is to regulate
access to secret pages in coordinate map. Thus, MVL
architecture is to integrate experimentally measured
variables, modeled parameters and cryptography
parameters into the whole and integral model. It
responds to the general rule in cryptography to make the
key space as large as possible, as modern eavesdropper
also can use distributed and grid computing!
As the graph, composed of MVL functions, given in
Fig.5 b), is comfort to work with only for small scale
models, practical representation of it should be regarded
as a time sequence of all mapping MVL functions, more
appropriate for soft design [10]. That is a repeated cycle,
as schemes in Fig.5 b) disclose the time-table for
activation of different MVL functions:
{ yi Homeostat=FH i( x1, x2, ...xn ), }⇒
{ yi Communication module 1 = FC i( x1, x2, ...xn )} ⇒
{ yi Secret coding 1 = FMVLC i( x1, x2, ...xn )} ⇒
…………………
{ yi Decision making=F Di( x1, x2, ...xn )} ⇒
RETURN.
The given notation for the sake of simplicity show
different sets of output variables y with only one index i,
because real MVL functions model should contain many
variables, and it is easier to tag them for programming by
numbers in the general list of variables {x1, x2, ...,xn}, but
not by different alphabet letters.
The proposed architecture is, no doubt, is a model,
which demonstrates only general principle of MVL
functions application. The practical design should
include many other complicated aspects, however it still
shows that graph schemes in Fig.5 give the possibility to
unite all MVL functions, sensor parameters and service
crypto coding variables into the integral tree structure.
MVL functions representation of an agent model is
compact and contain many possible values of output
parameters for every MVL function, that is why the
given MVL functions set creates comparatively compact
framework for addressing and search in the integral tree
structure.
Another aspect of joint application of PARSEC
network language with protected team of robotic agents
lies in the choice of possible language for description of
tasks in communication channels in the robotic team and
inside the agent. What is interesting, in the first paper
devoted to MVL secret coding [4], the simple language
was proposed for the robotic team control, which is very
close to the idea of transfer of tree structures, described
in the integral diagnostic space of all possible states of
the agent and the robotic team. The simple language for
agents communication [3,4] was based on the short nonalphabet phrase “Who sends the message -To whom is
addressed message-What task is to be done -Where to
execute the task -When to execute the taskCommentaries”. For more quick work of the
communication link, based on microcontroller MCS-51,
the transmission of coded data was subdivided into
separate phrases (numbers sequences) with 7 8-bit
numbers. Each “word’ (i.e., number) in the phrase can
have k=256 logic values, and the finite set of all possible
phrases is given by the set of 7 different vocabularies,
according to 7 “words “in the phrase. This knowledge
representation form was designated for 8-bit
microcontroller transfer module, linked to laser open or
fiber line [4]. Even such a primitive formalized language
form potentially provides coordinate-time description of
actions, necessary for work with maps. It seems the
authors to be quite a possible candidate for initial steps in
cooperation between MVL, secret codes, PARSEK
language and protected agent architecture for parallel
data processing.
(3)
148
Pacific Science Review, vol. 13, no.3, 2011, pp.140~149
an optical non-quantum communicateon line. Journal
of Russian Laser Research, 27(5): 492-505, 2006.
[5] Antipov A.L., A.Yu. Bykovsky, N.A. Vasiliev, A.A.
Egorov. Authentication procedure of robotic agents
based on multiple-valued and fuzzy logics.
Radiotechnika (in rus.), 8: 97-104, 2008.
[6] Antipov A.L., A.Yu. Bykovsky, A.A.Egorov. Data
Protection Ordering/ Disordering of a Fuzzy Logic
Model in a Robotic Agent via the Optical Data
Transfer Line. Journal of Russian Laser Research,
29(4): 324-335, 2008.
[7] Ryabko B.Ya., A.N. Fionov. Cryptography methods
for data defence. Hot line-Telecom, 2005.
[8] Shimbirev P.N. Hybrid continious logic devices.
Moscow, Energoatomizdat, 1990.
[9] Zatuliveter Yu.S, A.V. Toporishev. PARSEK
language: programming in globally distributed
computing within the model of tree-structured
calculus. Control Sciences, 4:12-20, 2005.
[10] Bykovsky A.Yu, A.A. Egorov. Methods of protected
coding of messages and knowledge structures in
hardware multi-agent systems, based on multiplevalued Allen-Givone algebra. Proc. of the 5-th Int.
Conf. on Parallel Computing and Control Problems,
2010.
[11] D.C. Rine ed. Computer Science and MultipleValued Logic: Theory and Applications, Ch.7-9.
Amsterdam, North Holland, 1984.
CONCLUSIONS
The global network data channels for distant control of
civil robotic teams can be protected by MVL codes, if
PARSEK network language [9], earlier designed for
distributed global grid computing, is combined with
special agent architecture. The motivation to apply
PARSEK language in future mass robotic teams is due to
the fact, that network language is already adapted for
transmission of visual information from optoelectronic
subsystems in agents, and network data channels are
comparatively cheap. As the local robotic team user can`t
modify the network itself, the task is to add and to
integrate high-level protection tools just into agents,
without breaking the network protocols. Another task
here is to make the application of additional
cryptography tools maximally ”invisible” for network
eavesdroppers.
Three joint tools are discussed for the solution of the
problem described above.
First of them is the simple protocol, proposed to verify
the modification of the message, transferred via network
between supervisor`s PC and the host PC, delivering
messages further to robotic agents.
Second tool is the intrinsic tree structure of MVL
coding method, where one-time secret keys, coded
messages and even secret MVL functions themselves can
be directly transferred via network by ordered sequences
of numbers. PARSEK operators are well convenient for
such procedures.
Third tool is the modified architecture of a protected
agent, adapted both for MVL codes and distributed
processing of optoelectronic data. It provides the
comparatively compact MVL functions “framework” for
modeling of integral addressing space, including MVL
coding
parameters,
vital
sensor
parameters,
communication parameters, objects descriptions and
decision-making variables.
REFERENCE
[1] Bräunl T. Embedded robotics. Mobile Robot Design
and Applications with Embedded Systems. Springer,
2006.
[2] Schneier B. Applied Cryptography. Protocols,
Algorithms, and Source Code in C. Wiley, 2000.
[3] Antipov A.L., A.Yu. Bykovsky, N.A.Vasiliev, A.A.
Egorov. Protected Query Coding in Multi-Agent
Optoelectronic System. Optical Memory and Neural
Networks, 16(4): 211-226, 2007.
[4] Antipov A.L., A.Yu. Bykovsky, N.A. Vasiliev, A.A.
Egorov. Multiple-valued logic-protected coding for
149