A publish/subscribe (PS) model is an event-driven model of a distributed system. In traditional PS systems, each peer (process) can either publish or subscribe events. In this paper, we consider a peer-to-peer (P2P) type of topic-based PS model where each peer can both publish and subscribe events. In this paper, we newly propose a topic-based access control (TBAC) model for topic-based PS systems. Here, an access right is a pair of a topic t and a publish or subscribe operation . A peer is allowed to publish an event message with publication topics and subscribe interesting topics only if the publication and subscription access rights are granted to the peer, respectively. An event message e is delivered to a peer if the publication of e and subscription of include some common topic. If a peer publishes an event message after receiving an event message , the event message may bring some information of the event message . If a target peer is not allowed to subscribe at least one topic which is related with the event message , information in the peer illegally flows to the target peer . We newly propose a subscription-based synchronization (SBS) protocol to prevent illegal information flow. Here, an event message is banned by a target peer if the event message implies illegal information flow. However, event messages may be unnecessarily banned by a peer even if no illegal information flow to the peer occurs. In the evaluation, we show the number of event messages unnecessarily banned in the SBS protocol.
In distributed systems, information in objects flows to other objects by transactions reading and writing data in the objects. Here, some information of an object may illegally flow to a subject which is not allowed to get the information of the object. Especially, a leakage of sensitive information is to be prevented from occurring [31]. In order to keep information systems secure, illegal information flow among objects has to be prevented. Types of synchronization protocols [13–16,19,20] are so far discussed based on read and write access rights in the role-based access control (RBAC) model [10,28,30] to prevent illegal information flow.
Context-based systems like publish/subscribe (PS) systems [2,9,11,33,34] and content-based access control (CBAC) models [37] are getting more important in various applications. A distributed system is composed of processes which are cooperating with one another by exchanging messages in networks [3]. A process is modeled to be a finite state machine, i.e. a sequence of events [2]. A publish/subscribe (PS) model [2,9,11,33,34] is an event-driven model [8] of a distributed system. In traditional PS models, each process either publishes or subscribes events. In this paper, we consider a peer-to-peer (P2P) model [35] of PS system (P2PPS model) [24,25] where each peer process (peer) can both publish and subscribe event messages. Here, a peer publishes an event message and then the event message is delivered to a peer which is interested in the event. Publications and subscriptions of peers and event messages are specified in terms of topics as discussed in topic-based PS systems [32].
In this paper, we newly propose a topic-based access control (TBAC) model in PS systems. Here, a peer manipulates topics, not objects, in publish () and subscribe () operations. An access rule means that a peer is allowed to manipulate a topic t in an operation (). Let A be a set of access rules in a system. An access right is a pair of a topic t and an operation , i.e. or . This means, a peer granted an access right is allowed to perform an operation on a topic t. A peer is allowed to publish an event message with a topic t only if the peer is granted a publication right . A peer is allowed to subscribe a topic t only if the peer is granted a subscription right . Let be the publication of a peer , which is a subset of topics which the peer is allowed to publish. A peer is allowed to publish an event message e whose publication is a subset of the publication . Let be the subscription of a peer , which is also a subset of topics which the peer is allowed to subscribe. An event message e published by a peer is delivered to a target peer if the subscription includes at least one common topic with the publication . Here, the peer does not care the other topics in the publication , i.e. . These topics in are referred to as forgotten topics of the event message e on the peer [21,22]. An event message e is related with forgotten topics but the peer forgets the topics even if the target peer receives the event message e. In addition, the peer may publish an event message after receiving another event message . The event message may be related with topics which are already brought to the peer by receiving the event message but the topics are not in the subscription of the peer . The topics are refereed to as hidden topics of the peer for the peer [17,18,23]. This means, the event message may bring information related with the hidden topics to the target peer but the peer cannot recognize the event message to be related with the hidden topics. Hidden or forgotten topics are referred to as implicit topics. Suppose a target peer receives an event message e which is related with implicit topics but the peer is not allowed to subscribe event messages on implicit topics. Here, if the peer publishes an event message e and the event message e is delivered to a target peer , information in the peer illegally precedes the peer (). In this paper, we define the illegal information flow relation ↦ among peers based on publication and subscription access rights in the TBAC model.
On the basis of the TBAC model, we newly propose a subscription-based synchronization (SBS) protocol to prevent illegal information flow among peers to occur by publishing and subscribing event messages in this paper. In the SBS protocol, event messages which may cause illegal information flow are banned at the destination peers. That is, event messages are delivered to a peer since some publication topics of the event message are included in the subscription of the peer but the event messages are not delivered to the peer . Whether or not illegal information flow to occur is decided based on the information flow relation among peers. If a peer illegally precedes a target peer (), the event message is banned at the target peer in the SBS protocol. On the other hand, even if an event message e is banned at a peer , the peer may not illegally precede the peer . Here, the event message e is unnecessarily banned at the peer . We evaluate the SBS protocol in terms of number of event messages unnecessarily banned. In the evaluation, we show about 4% of event messages are unnecessarily banned in the SBS protocol.
In Section 2, we overview related studies. In Section 3, we present a P2P model of the PS System. In Section 4, we discuss the legal information flow relation among peers in the P2PPS model. In Section 5, we discuss safe systems where no illegal information flow occurs among any peers. In Section 6, we propose the SBS protocol to prevent illegal information flow to occur in unsafe systems. In Section 7, we evaluate the SBS protocol.
Related studies
An information system is composed of subjects and objects [4]. An object is an encapsulation of data and operations to manipulate the data. A subject issues an operation to an object to manipulate the data. Then, the operation is performed on the object [4]. Users and transactions are examples of subjects. Databases and files are examples of objects. Let S and O be sets of subjects and objects in a system, respectively. Let be a set of operations on objects. In this paper, we assume each object o supports a pair a of basic operations read () and write (), i.e. . An access rule is a tuple () of a subject s, an object o, and an operation in the basic access control (BAC) model [4]. An access rule means that a subject s is allowed to manipulate an object o in an operation . A pair of an object o and an operation is an access right (or permission). An authorizer grants an access right to a subject s, i.e. an access rule is specified by the authorization. A subject s is allowed to manipulate an object o in an operation only if the subject s is granted an access right . Otherwise, the subject s is not allowed to manipulate the object o. A system is secure if and only if (iff) every object o is manipulated by an authorized subject s in an authorized operation according to an access rule .
In the role-based access control (RBAC) model [10,28,30], a role r () is a set of access rights. An authorizer grants a role r, i.e. set of access rights to a subject s without granting each access right to the subject s. Each person plays a role r in a society, e.g. a president role in a company. Each role r shows what can be done by a subject who plays the role r in a society. Let R be a collection of roles in a system, . A subject s is granted a collection () of roles and issues a transaction T to manipulate objects. Here, a transaction is a sequence of operations on objects. A subject s grants a transaction T a subset () of the roles . A subset of the roles is referred to as purpose [6,7] of the transaction T. A transaction T is allowed to issue an operation to an object o only if an access right is in the purpose .
Illegal information flow to occur in the access control models are discussed as confinement problem [4]. Suppose a subject is granted a pair of a read access right on a file object f and a write access right on another file object g. Suppose another subject is granted an access right . Here, suppose the subject reads data d in the file f and then writes the data d to the file g. The subject is not allowed to read data in the file f. However, the subject can obtain the data d in the file f by reading the data d stored in the file g. That is, information in the file f illegally flows into the subject via the subject and the file g.
In order to prevent illegal information flow, the lattice-based access control (LBAC) model [29] is proposed. Here, every entity e, i.e. subject or object, belongs to a security class in a system.
In papers [5 –7], the role-based locking (RBL) protocols and schedulers of transactions are discussed to prevent illegal information flow to occur by performing transactions in the RBAC model [10,28,30]. Here, a role which includes more number of write access rights is more important. A transaction granted more important roles manipulates an object before another transaction.
In papers [7 ,16], the illegal information flow relation from a role to a role () is defined. Let and be sets of objects whose data are allowed to be read and written by a subject granted a role , respectively, i.e. and . A role illegally flows to a role () if and only if (iff) but . Here, suppose a transaction with the role reads data in an object and writes data to an object . Here, some data x in the object may be brought to the object . Then, suppose another transaction with the role reads data in the object . If the role includes a read access right , no illegal information flow occurs because the transaction is allowed to read data in the object . However, if , the transaction may illegally get the data x from the object as shown in Fig. 1.
Legal and illegal information flow among objects.
A transaction illegally reads data in an object iff the transaction reads data in the object which includes data in another object which is not allowed to be read [16]. Allowable information relation flow from an object to an object is also a priori defined by an administrator. A transaction suspiciously reads data in an object iff the transaction reads data in the object whose data is not allowed to be brought to other objects [13]. A transaction illegally writes data to an object iff the transaction writes data to the object after illegally reading data in another object [Fig. 2(a)] [13]. A transaction impossibly writes data to an object iff the transaction writes data to the object after suspiciously reading data in another object [Fig. 2(b)] [13].
Operations.
The write-abortion (WA) [13], read-write-abortion (RWA) [15], and flexible read-write-abortion (FRWA) [14] protocols are proposed to prevent illegal information flow. For each object and each transaction , a pair of variables and are manipulated. Initially, is empty and is a purpose of the transaction . Each time a transaction writes data to an object , roles in the variable are added to the variable , i.e. . If a transaction reads data in an object , . Here, if some role in illegally flows to a role in (), the read operation is illegal. In the WA protocol, a transaction aborts once issuing an illegal or impossible write operation to an object. Read operations performed after an illegal read operation before a write operation are meaningless. Because the transaction aborts once issuing the write operation and the read operations performed are rolled back. In the RWA protocol, a transaction aborts once issuing an illegal read operation or impossible write operation. Even if a transaction illegally reads data in an object, the transaction can commit if the transaction does not issue a write operation. Read operations are lost, which can be performed but are not performed after an illegal read operation is issued to an object. In the FRWA protocol, a transaction aborts if the transaction issues an illegal or impossible write operation to an object and aborts as well as the WA protocol. Furthermore, the transaction aborts with some probability once issuing an illegal read operation. If and , the FRWA protocol is the same as the RWA protocol and the WA protocol, respectively.
The concepts of sensitivity of an object and safety of a role in the FRWA-O [19] and FRWA-RS [20] protocols are discussed. In the FRWA-O protocol, the abortion probability of a transaction issuing an illegal read operation to an object depends on the sensitivity of the object . Here, the sensitivity of an object just monotonically increases each time a transaction aborts by issuing an illegal read operation to the object even if the transaction commits. On the other hand, in the FRWA-RS protocol, the role safety of a role increases and decreases each time a transaction holding the role commits and aborts, respectively, in order to reduce the number of transactions to abort. The abortion probability of each transaction is decided by the role safety of roles in the variable .
A peer-to-peer (P2P) system [35] is composed of peers which are interconnected in overlay networks. In P2P systems, multiple peers are cooperating with one another by exchanging messages in networks. A peer is an autonomous process which makes a decision by itself through communicating with other peers. There is no centralized coordinator and peers autonomously leave and join the system.
A publish/subscribe (PS) system [2,9,11,33,34] is an event-driven [8] distributed system which is composed of processes interconnected in a network of brokers. A publisher process publishes an event message. An event message is delivered to only a subscriber process which is interested in the event message. In topic-based PS systems [32], a subscriber process specifies a subscription in terms of topics in which the subscriber process is interested. A publisher process publishes an event message with a publication which is also specified in terms of topics. If a publication of an event message and a subscription of the subscriber process have a common topic, the event message is notified to the subscriber process. In this paper, we discuss a P2P model of a PS system [24,25,36]. Here, every peer can publish and subscribe event messages and there is no centralized coordinator.
In paper [1], an access control model in the PS system is discussed based on the RBAC model. Here, information flow to occur by publishing and subscribing topics in the PS system is not discussed. In this paper, we newly discuss an access control model, topic-based access control (TBAC) model of a topic-based PS system. Here, access rights on topics are newly considered. We discuss illegal information flow to occur among peers based on the TBAC model in the P2P model of the PS system.
TBAC model in PS systems
P2PPS model
In traditional publish/subscribe (PS) systems, each process is either a publisher or a subscriber [2,9,11,33,34]. In this paper, we newly consider a peer-to-peer (P2P) model of a PS system (P2PPS model) [24,25] which is composed of peer processes (peers) (). Let P be a set of all the peers in a system. Each peer can play both publisher and subscriber roles in the P2PPS model while only a publisher process publishes event messages and a subscriber process just receives event messages in the PS model. Furthermore, there is no centralized coordinator. Event messages published by a peer are delivered to every target peer in the publishing order. However, a pair of event messages and published by different peers and may be delivered to different target peers in different orders. In papers [26,27], the authors propose how to causally [12] deliver event messages related with topics to target peers by using the topic vector and physical time.
In this paper, we consider a topic-based PS system [32]. Let T be a set () of all topics in a system. A peer specifies the publication for an event message e in a subset of the topic set T (). Each peer then publishes an event message e with the publication . Each peer also specifies the subscription in a subset of the topic set T (). An event message e is delivered to a target peer if the publication and the subscription include at least one common topic, i.e. . Here, the peer is a destination peer of the event message e. A peer which publishes an event message e is a source peer of the event message e. Each peer receives only an event message e which includes interesting information, i.e. whose publication includes a topic subscribed by the peer , i.e. a topic in .
TBAC model
In this paper, we newly propose a topic-based access control (TBAC) model to make clear authorized access in a topic-based PS systems. Let be a set of operations, i.e. . T and P are sets of topics and peers, respectively, in a PS system S. A TBAC access rule () means that a peer is allowed to manipulate a topic t in an operation . Here, an operation is a subscribe () or publish () operation, i.e. . Let A be a set of access rules in a system. A pair of a topic t and an operation shows an access right in the TBAC model. In this paper, we assume a centralized authorizer grants a peer an access right () where t is a topic () and is an operation (). A peer is allowed to perform an operation on a topic t only if , i.e. an access right is granted to the peer . A peer is allowed to publish an event message e with publication () only if the peer is granted an access right for every topic t in the publication . The publication () of a peer is a subset of topics on which the peer is allowed to publish an event message. Suppose a peer publishes an event message e with publication and the event message e is delivered to a destination peer . The publication is a subset of the publication ().
Topics in the subscription which are not in the publication and are in the subscription , i.e. are hidden topics of the peer for the peer .
Implicit, hidden, and forgotten topics.
Hatched area shows a set of hidden topics in Fig. 3. A hidden topic t is a topic which may be related with an event message e but which is not subscribed by a target peer. Here, even if an event message e is delivered to a peer , the peer does not recognize that the event message e may be related with every hidden topic of the event message e.
A peer is allowed to subscribe a topic t only if an access right is granted to the peer . The subscription () of a peer is a subset of topics on which a peer is allowed to receive event messages, i.e. .
Suppose a peer publishes an event message e with a publication (). Here, the peer is allowed to publish an event message e only if the publication is a subset of the publication , i.e. . The subscription of a peer shows topics in which the peer is interested. That is, a peer can receive an event message e if . A peer is a peer of an event message e iff , i.e. the subscription of a peer has a common topic with the publication of an event message e. An event message e is only delivered to a target peer in a system.
A topic t which is in the publication but not in the subscription , i.e. but , is a forgotten topic of the event message e with respect to the target peer .
A target peer recognizes that an event message e is related with topics in but forgets that the event message e is related with the forgotten topics in .
Implicit topics of a peer are hidden or forgotten topics of event messages which the peer receives.
Let be a set of hidden topics of a source peer for a target peer . Let indicate a set of implicit topics of a peer . is initially ϕ. Each time a peer receives an event message e, the hidden topics and forgotten topics in the publication are added to the set , i.e. . Here, hidden topics in and forgotten topics in are implicit topics of an event message e.
If an event message e is delivered to a target peer , the event message e is related with the following topics:
Topics which the peer subscribes.
Forgotten topics in the publication .
Hidden topics which the peer is not allowed to subscribe.
Legal information flow
We discuss information flow relations among peers on the basis of access rights in the TBAC model. We consider a P2P model of a topic-based PS system (P2PPS model), which is composed of multiple peers () interconnected in reliable networks. That is, if a peer publishes event messages, every destination peer receives the event messages without loss and duplication of event messages in the publishing order.
Each peer can publish and subscribe event messages according to the TBAC access rules. First, let us consider the following example.
Suppose there are three peers , , and in a system. is a set of the peers in the system. Suppose a peer is granted a pair of access rights and , i.e. the publication is and the subscription is . Suppose another peer is granted three access rights , , , and , i.e. () and () and the other peer is granted three access rights , , and , i.e. () and (). First, the peer publishes an event message with publication (). The event message is delivered to the peer since . Here, the peer may receive event messages about the topic y before publishing the event message since the peer is granted the access right . Here, the event message may carry information on the topic y.
Next, suppose a peer publishes an event message with publication (). The event message is delivered to the peer since . Since the event message is published by the peer after the event message is delivered to the peer , the event message causally precedes the event message according to the causality theory [12]. This means, the event message may carry event information of the event message . Hence, the event message carries event information on not only the topic x in the publication but also the implicit topic y of the event message . Since , the event message is delivered to the peer . However, the peer is not granted the implicit topic y of the event message , i.e. the topic y is not in the subscription . This means, information on a topic which the peer is not allowed to subscribe can be delivered to the peer . Here, information illegally flow to the peer from the peer .
If the peer publishes the event message for the target peer , the peer can obtain some information related with the topic y although the topic y is not subscribed, i.e.
. Here, the information related with the topic y illegally flows into the peer
as shown in Fig. 4.
Illegal information flow ().
If the publication of a peer and the subscription of another peer include at least one common topic (), an event message published by the peer is delivered to the peer in the topic-based PS system. Otherwise, no event message published by the peer is delivered to the peer . We define an information flow relation among peers as follows:
A peer precedes a peer with respect to information flow () iff .
We consider a pair of peers and . The information flow relation means an event message published by the peer is allowed to be delivered to the peer . Topics which a peer subscribes are in the publication of the event message published by a peer . A pair of different peers and are equivalent with respect to information flow () iff and . A peer is compatible with a peer with respect to information flow () iff , i.e. . There is no information flow relation from the peer to the peer if is compatible with (). A pair of peers and are compatible with one another with respect to information flow () iff and .
In Example 1, the peer precedes the peer () since . The peer publishes the event message with publication . Here, the event information included in the event message may be related with the topic y since the peer subscribes the topic y, i.e. and an event message with a topic y may be delivered to the peer before the peer publishes the event message . The peer can subscribe the topic y. Hence, if the peer receives the event message which the peer publishes, no illegal information flow occurs from the peer to the peer . The peer precedes the peer () since . However, if the event message published by the peer is delivered to the peer , the peer can obtain some information related with the implicit topic y. That is, illegal information flow via the peer might occur as presented here.
We first define a legal information flow relation (⇒) among peers as follows:
A peer legally precedes a peer with respect to information flow () iff one of the following conditions holds:
, , and .
For some peer , and .
The legal information flow relation ⇒ is transitive but not symmetric. Suppose for a pair of peers and . If the peer publishes an event message to the peer , information in the peer legally flows to the peer .
We consider a pair of peers and . If the peer precedes the peer (), i.e. , an event message published by a peer can be delivered to a peer . Otherwise, no information from the peer flows into the peer . The condition shows that every topic in the subscription is also in the subscription . This means, an event message from the peer to the peer includes no hidden topic for the peer .
In Example 1, the peer legally precedes the peer () since the peer precedes the peer () and . However, since but . Thus, the information flow relation ⇒ is not symmetric.
A pair of peers and are legally equivalent with one another () iff and . It is noted if .
For a pair of peersand, ifand,does not hold.
Suppose and . Since , does not hold. □
This means, the legal information flow relation ⇒ is acyclic.
Legal information flow ().
In Fig. 5, there are three peers , , and . Here, , , , , , and . Here, the peer legally precedes the peer () since and . In addition, . Thus, the peer precedes the peer () and the peer precedes the peer (), i.e. but .
In Example 1, the peer precedes the peer () since but . As presented in Example 1, illegal information flow occurs from the peer to the peer if the event message which the peer publishes is delivered to the peer .
We define an illegal information flow relation (↦) among peers as follows:
A peer illegally precedes a peer with respect to information flow () iff but .
In Example 1, the peer illegally precedes the peer (). The illegal information flow relation ↦ is not transitive, differently from the transitive legal information flow relation ⇒. Even if and , may hold.
The following property holds on the illegal information flow relations ↦:
Letandbe a pair of peers. Assume the peerdoes not illegally precede the peer(), i.e.or. There occurs no illegal information flow from the peerto the peerif the event message which the peerpublishes is delivered to the peer.
First, suppose the peer legally precedes the peer (). An event message which the peer publishes might be delivered to the peer . According to the definition, the peer can subscribe the topic x if the peer is granted a subscription access right . That is, every event message which the peer publishes can be delivered to the peer . □
Safe systems
Let P be a set of peers () in a system S. We discuss a safe system where no illegal information flow occur in whatever order publications and subscriptions are issued by peers.
A peer set P is safe iff one of the following conditions holds for every pair of peers and in the peer set P:
.
and .
.
In Example 2, there are three peers , , and , i.e. is a set of the peers. Here, the peer legally precedes the peer (), , and . In addition, the peer is compatible with the peer (), , and . Hence, the peer set is safe. Suppose a pair of peers and publish event messages and in this sequence. Since and , the event message is delivered to the peers and . The event message published by the peer is also delivered to the peer since . Hence, no illegal information flow occurs since , , and .
Next, suppose the peer first subscribes three topics x, y, and z and then the peer publishes the event message with publication . Then, the peer subscribes a pair of topics x and y and the peer publishes the event message . Here, since the peer is compatible with the peer (), , and , no illegal information flow occurs. Thus, no illegal information flow occurs even if the peers , , and publish and subscribe event messages in any order. However, the peer set shown in Fig. 4 is not safe because but . Here, if the message published by the peer is delivered to the peer , illegal information flow may occur.
From the definitions, the following theorem holds:
If a peer set P is safe, no illegal information flow occurs even if peers publish and receive event messages in any order.
From the definitions, for every pair of peers and in a safe peer set P, if and . If , any event message published by a peer is not delivered to the peer , i.e. no illegal information flow. □
Synchronization protocol
Subscription-based synchronization (SBS) protocol
We consider an unsafe system, where a peer set is not safe. Here, it depends on the order in which peers publish event messages and event messages are delivered to peers whether or not illegal information flow to occur.
A peer is granted publication topics in the publication and subscription topics in the subscription . A peer is allowed to issue a publication operation on a topic t only if , i.e. publication access right is granted to the peer . In addition, a peer is allowed to issue a subscription operation on a topic t only if , i.e. an access right is granted to the peer .
In this paper, we propose a subscription-based synchronization (SBS) protocol to prevent illegal information flow in the TBAC model. In the SBS protocol, each peer keeps in record every publication topic of each message e which is delivered. A peer manipulates a variable to store topics carried by event messages. The variable is initially empty. Each time the peer receives an event message e published by a peer , the topics which the event message carries are added to the variable , i.e. .
A peer publishes an event message e and the peer precedes a peer with respect to information flow ().
If , the event message e is delivered to a peer and .
Otherwise, the event message e is banned at the peer .
If illegally precedes (), the event message e published by a peer is banned at a destination peer in the SBS protocol.
Suppose there are three peers , , and as shown in Fig. 6. Here, the publications of the peers are , , and where x, y, and z are topics. The subscriptions , , and . The topic sets , , and are initially ϕ. First, the peer publishes an event message with publication (). Here, the event message is delivered to the peer since and . The topic set of the peer is changed with a set of topics since . Then, the peer publishes an event message e with publication (). Here, the illegal information flow from the peer to the peer occurs since . Hence, the event message e from the peer is banned at the peer .
For every pair of peers and , the SBS protocol has the following properties:
If the peer illegally precedes the peer (), every event message published by the peer is banned at the target peer .
Even if some event message published by the peer is banned at the peer , may not hold.
An event message e is unnecessarily banned at the peer iff the event message e is banned at the peer but .
SBS protocol.
Implementation
The variables , , and of a peer are implemented in a bitmap. Each bitmap of a peer is composed of () bits for number of topics in the topic set T.
Let denotes bitmaps of topics in a peer of an event message x. Here, shows the kth bit in a bitmap where an entity x stands for a peer . In the topic bitmap , if a topic is included in a variable , the kth bit is 1. For example, the subscription variable of a peer is represented in a bitmap . The union of bitmaps and is realized by taking a disjunction of the bitmaps and . The length of a topic bitmap is for number of topics . Each event message e carries the publication in a bitmap form. Each peer also holds the subscription , the publication , and the topic set in a bitmap form. Intersection and union of publication and subscription are easily performed in the bitmap operation.
Evaluation
There occur no illegal information flow among peers in the SBS protocol as discussed in the preceding section. Next, we evaluate the SBS protocol in terms of event messages banned on a topic set T and peer set P. If an event message may be illegally delivered to a peer , the event message is banned in the SBS protocol. In the SBS protocol, the topic set is updated each time an event message is delivered to the peer . We assume an event message can be reliably broadcast to every target peer.
In the evaluation, there are () topics , i.e. . A pair of publish () and subscribe () operations are supported on each topic . There are () peers in a system, i.e. . Each peer is granted the publication and subscription . Topics in the subsets and are randomly selected from the topic set T, i.e. subscription and publication access rights are randomly granted to each peer . The publication of each peer is composed of () topics. In the evaluation, the number of topics in the publication of each peer is randomly selected out of numbers . The subscription of each peer is composed of () topics. In the evaluation, the number of topics in the subscription of each peer is randomly selected out of numbers . The topic set of a peer are initially empty. In the SBS protocol, the more number of event messages exchanged by publication and subscription are performed, the more number of event messages are banned.
First, a peer is randomly selected in the peer set P. Then, the peer publishes an event message with a topic t included in the publication to every destination peer whose subscription includes the topic t. In the SBS protocol, each time an event message is delivered to a target peer , it is checked if illegal information flow to occur as discussed in this paper. If illegal information flow might occur, the event message is banned. Thus, no illegal information flow from the peer to the peer occurs but some event message banned may not cause illegal information flow.
In the evaluation, we consider twenty topics () and fifty peers (), i.e. and . First, publications and subscriptions of each peer are randomly generated on twenty topics in the set T. n shows the total number of publications of event messages published by the peers . Here, . The number n of publications are performed on the topic set T in the SBS protocol. We randomly create a peer set P on the topic set T seven hundred times for each n. The maximum number of topics in each subscription is eight (). This means, the number of topics in the subscription of each peer is randomly selected out of numbers . One peer is randomly selected in the peer set P and one topic t is randomly selected in . Then, the peer publishes an event message e with the topic t. The event message e is delivered to a target peer . Then, the legal information flow condition is checked. If not satisfied, the event message e is banned. This step is iterated n times. For a given peer set P, n publications are performed seven hundred times in the SBS protocol.
Number of event messages banned in the SBS protocol.
Figure 7 shows the number of event messages banned for number n of publications in the SBS protocol. The dotted line with crosses (×) shows the total number of event messages published by the peers. For example, if 500 event messages are published (), totally 2,850 peers receive the event messages. This means, one event message is on average delivered to 6 peers. The dotted line with boxes (□) indicates the total number of event messages which cause illegal information flow. For example, about 1,300 event messages are illegal out of 2,850 event messages for . The straight line shows the total number of event messages banned in the SBS protocol, which is about 4% larger than the dotted line with boxes (□). This means, every illegal information flow is prevented but about 4% of event messages which do not cause illegal information flow are unnecessarily banned in the SBS protocol. The more number n of publications are performed, the more number of event messages are banned. For example, if fifty publications are performed (), about 100 event messages are banned where about 10 event messages are unnecessarily banned. If five hundred publications are performed (), about 1,350 event messages are banned where about 60 event messages are unnecessarily banned.
Concluding remarks
In this paper, we newly proposed the topic-based access control (TBAC) model in topic-based publish/subscribe (PS) systems. Then, we discussed the legal information flow among peers in a peer-to-peer PS (P2PPS) system based on the TBAC model. We first defined the legal information flow relation among a pair of peers and based on the TBAC model. This means, if an event message published by a peer is delivered to a peer , no illegal information flow occurs. Then, we defined a safe system where no illegal information flow occurs in whatever order of event messages are published and delivered by the peers. In this paper, we proposed the subscription-based synchronization (SBS) protocol to prevent illegal information flow in an unsafe system. In the SBS protocol, the event messages which may cause illegal information flow are banned. However, some event messages which cause illegal information flow are unnecessarily banned. We evaluated the SBS protocol in terms of number of event messages banned. In the evaluation, we showed about 4% of legal event messages are unnecessarily banned in the SBS protocol. We are now discussing a synchronization protocol to ban only and every event message which causes illegal information flow.
Footnotes
Acknowledgements
This work was supported by Japan Society for the Promotion of Scienc (JSPS) KAKENHI and Grant-in-Aid for JSPS Research Fellow grant numbers 15H0295 and 17J00106, respectively. The authors would like to thank JSPS for the support.
References
1.
J.Bacon, D.M.Eyers, J.Singh and P.R.Pietzuch, Access control in publish/subscribe systems, in: Proc. of the 2nd International Conference on Distributed Event-Based Systems, 2008, pp. 23–34.
2.
R.Blanco and P.Alencar, Event models in distributed event based systems, in: Principles and Applications of Distributed Event-Based Systems, 2010, pp. 19–42. doi:10.4018/978-1-60566-697-6.ch002.
3.
G.Coulouris, J.Dollimore, T.Kindberg and G.Blair, Distributed Systems Concepts and Design, Addison Wesley, 2011.
4.
D.E.R.Denning, Cryptography and Data Security, Addison Wesley, 1982.
5.
T.Enokido and M.Takizawa, A legal information flow (LIF) scheduler based on role-based access control model, International Journal of Computer Standard and Interfaces31(5) (2009), 906–912. doi:10.1016/j.csi.2008.03.013.
6.
T.Enokido and M.Takizawa, A purpose-based synchronization protocol for secure information flow control, International Journal of Computer Systems Science and Engineering25(2) (2010), 25–32.
7.
T.Enokido and M.Takizawa, Purpose-based information flow control for cyber engineering, IEEE Transactions on Industrial Electronics58(6) (2011), 2216–2225. doi:10.1109/TIE.2010.2051393.
8.
C.Esposito, A.Castiglione, F.Palmieri, M.Ficco and K.-K.R.Choo, A publish/subscribe protocol for event-driven communications in the Internet of things, in: Proc. of the IEEE 14th International Conference on Dependable, Autonomic and Secure Computing, 2016, pp. 376–383.
9.
P.T.Eugster, P.A.Felber, R.Guerraoui and A.-M.Kermarrec, The many faces of publish/subscribe, ACM Computing Surveys35(2) (2003), 114–131. doi:10.1145/857076.857078.
L.Lamport, Time, clocks, and the ordering of event in a distributed systems, Communications of the ACM21(7) (1978), 558–565. doi:10.1145/359545.359563.
13.
S.Nakamura, D.Duolikun, T.Enokido and M.Takizawa, A write abortion-based protocol in role-based access control systems, International Journal of Adaptive and Innovative Systems2(2) (2015), 142–160. doi:10.1504/IJAIS.2015.072139.
14.
S.Nakamura, D.Duolikun, T.Enokido and M.Takizawa, A flexible read-write abortion protocol to prevent illegal information flow among objects, Journal of Mobile Multimedia11(3–4) (2015), 263–280.
15.
S.Nakamura, D.Duolikun, T.Enokido and M.Takizawa, A read-write abortion (RWA) protocol to prevent illegal information flow in role-based access control systems, International Journal of Space-Based and Situated Computing6(1) (2016), 43–53. doi:10.1504/IJSSC.2016.076564.
16.
S.Nakamura, D.Duolikun and M.Takizawa, Read-abortion (RA) based synchronization protocols to prevent illegal information flow, Journal of Computer and System Sciences81(8) (2015), 1441–1451. doi:10.1016/j.jcss.2014.12.020.
17.
S.Nakamura, T.Enokido and M.Takizawa, Subscription initialization (SI) protocol to prevent illegal information flow in peer-to-peer publish/subscribe systems, in: Proc. of the 19th International Conference on Network-Based Information Systems (NBiS-2016), 2016, pp. 42–49.
18.
S.Nakamura, T.Enokido and M.Takizawa, Topic-based synchronization (TBS) protocols to prevent illegal information flow in peer-to-peer publish/subscribe systems, in: Proc. of the 11th International Conference on Broadband and Wireless Computing, Communication and Applications (BWCCA-2016), 2016, pp. 57–68.
19.
S.Nakamura, T.Enokido and M.Takizawa, Sensitivity-based synchronization protocol to prevent illegal information flow among objects, International Journal of Web and Grid Services (IJWGS)13(3) (2017), 315–333. doi:10.1504/IJWGS.2017.085147.
20.
S.Nakamura, T.Enokido and M.Takizawa, A flexible read-write abortion protocol with role safety concept to prevent illegal information flow, Journal of Ambient Intelligence and Humanized Computing (AIHC)(accepted).
21.
S.Nakamura, L.Ogiela, T.Enokido and M.Takizawa, Flexible synchronization protocol to prevent illegal information flow in peer-to-peer publish/subscribe systems, in: Proc. of the 11th International Conference on Complex, Intelligent, and Software Intensive Systems (CISIS-2017), 2017, pp. 82–93.
22.
S.Nakamura, L.Ogiela, T.Enokido and M.Takizawa, Evaluation of flexible synchronization protocol to prevent illegal information flow in P2PPS systems, in: Proc. of the 20th International Conference on Network-Based Information Systems (NBiS-2017), 2017, pp. 66–77.
23.
S.Nakamura, L.Ogiela, T.Enokido and M.Takizawa, Evaluation of protocols to prevent illegal information flow in peer-to-peer publish/subscribe systems, in: Proc. of IEEE the 31st International Conference on Advanced Information Networking and Applications (AINA-2017), 2017, pp. 631–638.
24.
H.Nakayama, D.Duolikun, T.Enokido and M.Takizawa, Selective delivery of event messages in peer-to-peer topic-based publish/subscribe systems, in: Proc. of the 18th International Conference on Network-Based Information Systems (NBiS-2015), 2015, pp. 379–386.
25.
H.Nakayama, D.Duolikun, T.Enokido and M.Takizawa, Reduction of unnecessarily ordered event messages in peer-to-peer model of topic-based publish/subscribe systems, in: Proc. of IEEE the 30th International Conference on Advanced Information Networking and Applications (AINA-2016), 2016, pp. 1160–1167.
26.
H.Nakayama, S.Nakamura, T.Enokido and M.Takizawa, Topic-based causally ordered delivery of event messages in a peer-to-peer (P2P) model of publish/subscribe systems, in: Proc. of the 7th International Workshop on Heterogeneous Networking Environments and Technologies (W-HETNET-2016), 2016, pp. 348–354.
27.
H.Nakayama, E.Ogawa, S.Nakamura, T.Enokido and M.Takizawa, Topic-based selective delivery of event messages in peer-to-peer model of publish/subscribe systems in heterogeneous networks, in: Proc. of the 31st International Conference on Advanced Information Networking and Applications Workshops (WAINA-2017), 2017, pp. 327–334.
28.
S.Osborn, R.S.Sandhu and Q.Munawer, Configuring role-based access control to enforce mandatory and discretionary access control policies, ACM Transactions on Information and System Security3(2) (2000), 85–106. doi:10.1145/354876.354878.
29.
R.S.Sandhu, Lattice-based access control models, IEEE Computer26(11) (1993), 9–19. doi:10.1109/2.241422.
30.
R.S.Sandhu, E.J.Coyne, H.L.Feinstein and C.E.Youman, Role-based access control models, IEEE Computer29(2) (1996), 38–47. doi:10.1109/2.485845.
31.
T.Sarath and P.Eric, Controlling privacy disclosure of third party applications in online social networks, International Journal of Web Information Systems (IJWIS)12(2) (2016).
32.
V.Setty, M.van Steen, R.Vitenberg and S.Voulgaris, PolderCast: Fast, robust, and scalable architecture for P2P topic-based pub/sub, in: Proc. of ACM/IFIP/USENIX 13th International Conference on Middleware (Middleware 2012), 2012, pp. 271–291.
33.
S.Tarkoma, Publish/Subscribe System: Design and Principles, 1st edn., John Wiley and Sons, Ltd, 2012. doi:10.1002/9781118354261.
34.
S.Tarkoma, M.Ain and K.Visala, The publish/subscribe Internet routing paradigm (PSIRP): Designing the future Internet architecture, in: Future Internet Assembly, 2009, pp. 102–111.
35.
A.B.Waluyo, D.Taniar, W.Rahayu, A.Aikebaier, M.Takizawa and B.Srinivasan, Trustworthy-based efficient data broadcast model for P2P interaction in resource-constrained wireless environments, Journal of Computer and System Sciences (JCSS)78(6) (2012), 1716–1736. doi:10.1016/j.jcss.2011.10.019.
36.
Y.Yamamoto and N.Hayashibara, Merging topic groups of a publish/subscribe system in causal order, in: Proc. of the 31st International Conference on Advanced Information Networking and Applications Workshops (WAINA-2017), 2017, pp. 172–177.
37.
W.Zeng, Y.Yang and B.Luo, Content-based access control: Use data content to assist access control for large-scale content-centric databases, in: IEEE International Conference on Big Data, 2014, pp. 701–710.