A Simple Intrusion-Tolerant Reliable Multicast Protocol
|
|
|
- Lenard Jennings
- 10 years ago
- Views:
Transcription
1 A Simple Intrusion-Tolerant Reliable Multicast Protocol using the TTCB Lau Cheuk Lung 1, Miguel Correia 2, Nuno Ferreira Neves 2, Paulo Veríssimo 2 1 PPGIA - Programa de Pós-Graduação em Informática Aplicada PUC-PR - Pontifícia Universidade Católica do Paraná R. Imaculada Conceição, Prado velho - CEP Curitiba -PR [email protected] 2 Faculdade de Ciências da Universidade de Lisboa Bloco C5, Campo Grande Lisboa - Portugal {mpc,nuno,pjv}@di.fc.ul.pt Abstract. This paper proposes a simple reliable multicast protocol that tolerates arbitrary faults, including malicious faults such as intrusions. The goal is to show a novel way of designing intrusion-tolerant protocols based on a wellfounded hybrid fault model. This model is based on a simple distributed security kernel the TTCB which is used by the processes only to execute securely critical steps of the protocol. Otherwise, the processes and their communication can be attacked in unlimited ways. The TTCB provides only a few basic services, which allow our protocol to tolerate a number of faults similar to accidental fault-tolerant protocols: for f faults, our protocol requires f + 2 processes, instead of 3f + 1 in typical intrusion-tolerant (or Byzantine) protocols. The protocol exhibits fast termination in the presence of intrusions and/or crash or malicious process failures, since it does not use any cryptography in runtime. Resumo. Este artigo propõe um protocolo de difusão confiável simples que tolera faltas arbitrárias, incluindo faltas maliciosas tais como intrusões. O objetivo é mostrar um modo original de projetar protocolos tolerantes a intrusões baseados num bem fundamentado modelo de faltas híbrido. Este modelo é baseado num kernel de segurança distribuído simples o TTCB o qual é usado pelos processos somente para executar passos críticos do protocolo de forma segura. O TTCB fornece somente alguns serviços básicos, os quais permitem ao nosso protocolo tolerar um número de faltas similar aos protocolos tolerantes a faltas acidentais: para f faltas, nosso protocolo requer f + 2 processos, ao invés de 3f + 1 nos protocolos tolerantes a intrusões (ou Byzantinos) típicos. O protocolo exibe terminação rápida na presença de intrusões e/ou crash ou processos maliciosos, uma vez que não usa qualquer criptografia em tempo de execução. This work was partially supported by the EC, through project IST (MAFTIA), and by the FCT, through the Large-Scale Informatic Systems Laboratory (LASIGE) and projects POSI/1999/CHS/33996 (DEFEATS) and POSI/CHS/39815/2001 (COPE).
2 1. Introduction Distributed protocols that tolerate arbitrary faults also called Byzantine faults have been studied for some time now (see, e.g., [Lamport et al., 1982, Rabin, 1983, Fischer, 1983]). Recently, with the Internet going mainstream and the rising tide of malicious activity, a new interest for these protocols emerged under the designation of intrusion tolerance. These protocols usually consider a set of cooperating processes (or hosts) interconnected by a network. The processes may fail arbitrarily, e.g., they can crash, delay or not transmit some messages, generate messages inconsistent with the protocol, or collude with other faulty processes with malicious intent. The asynchronous time model is usually used by this type of protocols because it describes appropriately the Internet and other networks with unpredictable timeliness, although more or less subtle synchrony assumptions usually have to be done. Examples of recent intrusion-tolerant protocols can be found in [Castro and Liskov, 1999, Reiter, 1994, Malkhi et al., 1997, Kihlstrom et al., 1998, Moser et al., 2000, Cachin et al., 2000]. Intrusion-tolerant protocols based on the asynchronous model normally have to assume a maximum number of processes that are allowed to fail. For the particular problem addressed in this paper reliable multicast Bracha and Toueg showed that it is impossible to send reliable multicast if there are more than f = n 1 faulty processes in a 3 system with n processes [Bracha and Toueg, 1985]. Usually these protocols are also slow when compared to accidental fault-tolerant protocols because they require several rounds of message exchange and asymmetric cryptography to protect the transmitted messages (see, e.g., [Reiter, 1994]). This paper presents a reliable multicast protocol based on a hybrid fault model. The basic idea of this type of models is to make distinct failure assumptions about different components of the system, ranging from arbitrary to fail-controlled. In our case, processes and network can fail in an arbitrary way, however, we assume the existence of a distributed security kernel which can only fail by crashing. This kernel is called the Trusted Timely Computing Base (TTCB). It has a set of features that together are innovative: it is distributed with its own private control channel, it is secure and real-time, and it provides a limited set of services. The design and implementation of the TTCB were presented and discussed in another paper [Correia et al., 2002b]. The intrusion-tolerant reliable multicast protocol presented here BRM-T is based on the idea of using the TTCB to give the processes a reliable digest of the sent message. The protocol terminates early even if there are faulty processes or the network behaves badly. The fact that it does not need any cryptography in runtime and its simplicity are the two main differences in relation to a protocol of the same family presented elsewhere [Correia et al., 2002a]. BRM-T is also efficient in relation to other protocols in the literature, precisely because it does not use cryptography. Also, on the contrary to similar protocols, BRM-T does not impose any limit on the maximum number of faulty processes. This result is similar to what is achieved in synchronous systems and is usually stated as n f + 2, since the problem is vacuous if there are less than two correct processes.
3 2. The System Model and the TTCB The TTCB is a secure and real-time distributed subsystem with local parts in the hosts and a control channel. The architecture of a system with a TTCB is presented in Figure 1. Each host contains the typical software layers: the operating system and runtime environments, the applications and processes, etc. The local parts, or local TTCBs, are computational components with activity, conceptually separate from the operating system. The control channel is a private communication channel or network that interconnects the local TTCBs. It is conceptually separated from the payload network, the network used by the hosts to communicate. We will not take more time discussing how these conceptual separations are obtained in practice, since the implementation of the TTCB was already presented [Correia et al., 2002b]. The system s time model is mostly asynchronous, with the exception of the TTCB, which is real-time, therefore synchronous. In relation to the (asynchronous) payload system, we can make working assumptions on message delivery delays; they may even hold many times; we can (and will) use them to ensure system progress; but we can never assume that bounds are known or even exist, for message delivery or for the interactions between a process and the local TTCB. Host 1 Host 2 Host n APP/PROC Runtime Environment APP/PROC Runtime Environment APP/PROC Runtime Environment OS Local TTCB OS Local TTCB OS Local TTCB Control Channel Payload Network Figura 1: System with a TTCB. The protocol presented in this paper uses only three TTCB services: Local authentication. This service allows a process to communicate securely with the local TTCB. The service authenticates the local TTCB before the process, and establishes a shared symmetric key between both 1. This shared symmetric key is used to implement a secure channel between the process and the local TTCB, and then their exchanges can be authenticated, encrypted, etc. depending on what is needed [Correia et al., 2002b]. Trusted block agreement. This is the main building block for secure protocols. It delivers a value obtained from the agreement of values proposed by a set of processes. The values are blocks with limited size, so this service cannot be used to make all agreement related operations of the system, but only to do critical steps of the protocols. Trusted Absolute Timestamping Service. This service provides globally meaningful timestamps. It is possible to obtain timestamps with this characteristic because 1 Every local TTCB has an asymmetric key pair. We assume that a process is able to get a trustworthy copy of the public key. This key is then used to authenticate the local TTCB.
4 local TTCBs clocks are synchronized to a precision π, i.e., for every pair of local TTCBs (i, j): C i (t) C j (t) < π. Next we describe with more detail the trusted block agreement service which is crucial for the understanding of the protocol Trusted Block Agreement Service The agreement service (for short) is defined in terms of three functions: TTCB propose, TTCB decide and decision. A process proposes a value when it calls TTCB propose. A process decides a result when it calls TTCB decide and receives a result. The function decision defines how the result is calculated in terms of the inputs to the service. The value is a small block of data with fixed length (currently 160 bits). The result is composed by a value and two masks with one bit per process involved in the service. The interface of the agreement service has two functions: outp TTCB propose(eid, elist, tstart, decision, value) outd TTCB decide(eid, tag) A process calls TTCB propose to propose its value. eid is the unique identification of a process before the TTCB, obtained using the Local Authentication Service. elist is a list with the eids of the processes involved in the agreement. tstart is a timestamp with the following objective. Ideally the agreement should be executed when all processes in elist proposed their value. However, if the service was to wait for all processes to propose, a malicious process would be able to postpone the service execution eternally simply by not proposing its value. The purpose of tstart is to avoid this problem: when all processes proposed, the service starts; however, if the service is not initiated by tstart, then it starts at that instant and no more proposals are accepted. A proposal made after tstart is rejected and an error is returned. decision indicates the function that should be used to calculate the value that will be decided (the TTCB offers a limited set). value is the value proposed. Function TTCB propose returns a structure outp with two fields: outp.error is an error code and outp.tag is a unique identifier of the execution of the agreement. The TTCB knows that two calls to propose made by different processes pertain to the same agreement execution if they have the same value for (elist, tstart, decision). Processes call TTCB decide to get the result of the agreement. tag is the unique identifier returned by TTCB propose, and is used to specify the agreement instance. outd is a record with four fields: outd.error gives an error code; outd.value is the value decided; outd.proposed-ok is a mask with one bit per process in elist, where each bit indicates if the corresponding process proposed the value that was decided or not; outd.proposed-any is a similar mask but that indicates which processes proposed any value Process Failure Modes A process is correct if it always follows the protocol until the protocol completion. There are several circumstances, however, that might lead to a process failure: 1. The process crashes or starts to behave maliciously 2. The pair (eid, secret), which lets the process communicate securely with the local TTCB, is discovered by a local attacker
5 3. The process is unable to exchange data with other processes because its communication is systematically disrupted or delayed The first case is the most obvious. We consider that a malicious process can fail arbitrarily (e.g., in a Byzantine way). It can send messages without regard of the protocol, delay or send contradictory messages, or even collude with other malicious processes with the objective of breaking the protocol. Case two describes a situation that might lead to a personification attack. Before a process starts to use the TTCB, it needs to call the Local Authentication Service to establish a secure channel with the local TTCB. The outcome of the execution of this procedure is a pair (eid, secret), where eid is the identifier of the process and secret is a symmetric key shared with the local TTCB. If an attacker penetrates a host and obtains this pair, it can impersonate the process before the TTCB and the TTCB before the process. If this pair is kept secret, the attacker can only try to disrupt or delay the communication between the process and the local TCCB personification attacks are prevented. The third case requires some discussion. Asynchronous protocols typically assume that messages are eventually received (reliable channels), and when this happens the protocol is able to make progress. To implement this behavior, processes are required to maintain a copy of each message and to keep re-transmitting until an acknowledgement arrives (which might take a long time, depending on the failure). In this paper we decided to take a different approach: if an attacker can systematically disrupt the communication of a process, then the process is considered failed as soon as possible, otherwise the attacker will probably disturb the communication long enough for the protocol to become useless. For example, if the payment system of an e-store is attacked and an attempt of paying an item takes, let us say, 10 hours to proceed, that is equivalent to a failure of the store. In channels with only accidental faults it is usually considered that no more than Od messages are corrupted/lost in a reference interval of time. Od is the omission degree and tests can be made in concrete networks to determine Od with any desired probability [Veríssimo et al., 1989]. If a process does not receive a message after Od + 1 retransmissions from the sender, with Od computed considering only accidental faults, then it is reasonable to assume that either the process crashed, or an attack is under way. In any case, we will consider the receiver process as failed. The reader, however, should notice that Od is just a parameter that will be used in the protocols. If Od is set to a very high value, then our protocols will start to behave like the protocols that assume reliable channels. Note that the omission degree technique lies on a synchrony hypothesis: we detect omissions if a message does not arrive after a timeout longer than the worst-case delivery delay (the hypothesis). Furthermore, we detect crash if the omission degree is exceeded. In our environment (since it is asynchronous, bursts of messages may be over-delayed, instead of lost) this artificial hypothesis leads to forcing the crash of live but slow (or slowly connected) processes. There is nothing wrong with this, since it allows progress of the protocol, but this method is subject to inconsistencies if failures are not detected correctly [Chandra and Toueg, 1996]. Failure detection mechanisms are out of the scope of this paper.
6 Another advantage of considering systematically delayed processes as failed is related with the implementation of the TTCB. Since the TTCB is a small component, it can only keep the results of the agreement service for a limited time. If a delayed process asks for a result after it expired the simplest thing to do is to consider the process as failed. Alternatively, the protocols could be made more complex to recover from this situation. However, there is no much justification in doing so for the reason pointed earlier if the process is too late it is useless. 3. The Reliable Multicast Protocol In all multicast protocols processes play one of two roles: sender or recipient. A message transmitted to a group of processes should be delivered to all members, including the sender. This is not always possible due to failures. In the rest of the paper, we will make the classical separation of receiving a message from the network and delivering a message the result of the protocol execution. Informally, a reliable multicast protocol enforces the following: 1) all correct processes deliver the same messages, and 2) if a correct sender transmits a message then all correct processes deliver this message [Bracha and Toueg, 1985]. These rules do not imply that the message will be delivered in the case of a malicious sender. However, one of two things will happen, either the correct processes never complete the protocol execution and no message is ever delivered, or if they terminate, then they will all deliver the same message. No assumptions are made about the behavior of the malicious recipient processes: they might decide to deliver the correct message, a distinct message or no message. Reliable multicast also gives no assurances about the order in which messages are delivered. Each process can deliver its messages in a distinct order. Formally, a reliable multicast protocol has the following properties [Hadzilacos and Toueg, 1994]: Validity: If a correct process multicasts a message M then a correct process in group(m) 2 eventually delivers M. Agreement: If a correct process delivers a message M then all correct processes in group(m) eventually deliver M. Integrity: For any message M, every correct process p delivers M at most once and only if p is in group(m), and if sender(m) 3 is correct then M was previously multicast by sender(m) The BRM-T Protocol An execution of the BRM-T protocol consists in the sender multicasting the message to all recipients, and then each recipient multicasting again the message to all others. Each multicast is performed Od + 1 times in order to tolerate omissions due to accidental faults (see Section 2.2.). The recipients multicast is needed to ensure the Agreement property, in case a malicious sender only transmits the message to a subset of the correct processes. The authenticity and integrity of the message is checked using an hash code sent through the TTCB agreement service. Consequently, messages do not have to carry any cryptographic signatures and processes do not need to share any cryptographic keys. 2 Sender and recipients of M 3 Sender of M
7 BRM-T Sender protocol 1 tstart = TTCB gettimestamp() + T 0 ; 2 M := (elist, tstart, data); 3 propose := TTCB propose(elist, tstart, TTCB TBA RMULTICAST, H(M)); 4 repeat Od+1 times do multicast M to elist except sender od 5 deliver M; BRM-T Recipient protocol 6 read blocking(m); 7 propose := TTCB propose(m.elist, M.tstart, TTCB TBA RMULTICAST, ); 8 do decide := TTCB decide(propose.tag); 9 while (decide.error TTCB TBA ENDED); 10 while (H(M) decide.value) do read blocking(m) od 11 repeat Od+1 times do multicast M to elist except sender od 12 deliver M; Figura 2: BRM-T protocol. Figure 2 shows an implementation of the protocol. A message consists of a tuple with three components (elist, tstart, data). elist is a list of eids with the format accepted by the TTCB agreement service. The first element of the list is the eid of the sender, and the others are the eids of the receivers. tstart is the timestamp that will be given to the agreement service, and data is the information to be transmitted. Each execution of the protocol is identified by (elist, tstart). The read blocking() primitive only reads messages with the value (elist, tstart) corresponding to the protocol instance being executed. Other values of the pair are processed by other instances of the protocol. We assume that there is a garbage collector that discards messages for instances of the protocol that have already finished running. This garbage collector can be constructed by keeping in a list with the identifiers of the messages already delivered and comparing the identifiers of the arriving messages. The sender protocol receives as arguments elist and data from the application and starts by calculating tstart and constructing the message (lines 1-2). Constant T 0 has to be carefully determined because, on one hand, smaller values ensure faster termination of the protocol. On the other hand, T 0 should be sufficiently large for TTCB propose to be called before tstart (otherwise, the value would not be accepted). Since the system is asynchronous, it is not possible to establish the best value for T 0 because delays are nondeterministic, but, in practice, a high probable value can be defined. Nevertheless, if TTCB propose is called too late, the error T T CB T ST ART EXP IRED is returned and the sender protocol can either retry with a new tstart or return an error (for simplicity this condition does not appear in the code). The agreement execution is defined by elist, tstart and the decision function (line 3). Both sender and recipients use the same decision function T T CB T BA RMULT ICAST. This function selects as the result of the agreement the value proposed by the first process in elist, which in our case is the sender. The value proposed by the sender is the hash of the message, H(M). An hash function is basically a one-way function that compresses its input and produces a fixed sized digest (e.g., 128 bits for MD5). In the paper, we assume that an attacker is unable to subvert the properties of the hash function, including weak and strong collision resis-
8 tance [Menezes et al., 1997]. The sender terminates by multicasting the message Od + 1 times and then delivering it (lines 4-5). BRM-T uses the agreement service in the way described to multicast H(M) to the recipients, and the fact that the TTCB is involved in the procedure guarantees that all recipients receive a reliable H(M). Given the collision resistance property of the hash function, it is computationally infeasible for a malicious sender to give to two correct recipients distinct messages but with the same H(M). The fact that an instance of the protocol is defined by the pair (elist, tstart), that together with the decision function uniquely identifies the agreement, is also very important. This prevents an attacker or malicious process from trying to change elist, for instance, to exclude a process, or from modifying tstart, for instance, to delay the protocol. If one process gives different values for these parameters to the agreement service, a new instance of agreement will be created in the TTCB, and its execution will not interfere with the original execution of the agreement. The recipient protocol starts by waiting to read a message (line 6). Then, it calls TTCB propose with the sole objective of getting the tag that identifies the agreement (line 7). Next, there is a call to TTCB decide, which is done inside a loop to guarantee that the protocol waits for the agreement to finish, in case it is still running (lines 8-9). If the received message is different from the one transmitted by the sender then H(M) will be different from the value returned by the agreement, decide.value. In this case, the protocol has to wait for the correct message to be received (line 10). To complete the protocol, the process multicasts the message Od + 1 times to the other recipients and delivers it (lines 11-12). As mentioned in Section 3., there are situations when the protocol does not terminate if the sender is malicious or the process is failed. First, in some cases, the recipient may never receive the message (line 6 and 10): (1) if the sender is malicious it may not send the message to any correct recipient (e.g., multicasts M1 and gives to the agreement H(M)); or (2) if all the messages sent to the process are corrupted or lost, which means, according to our process model, that the recipient is faulty. Second, a malicious sender might send a message but never propose a value. In this case, the agreement at the correct recipients will not terminate and they will be blocked forever (lines 8-9). Third, if a recipient becomes aware that the protocol is running so late that when it calls T T CB decide the result of the agreement is no longer available. In this case the recipient is considered faulty, as mentioned in Section Example Execution of the BRM-T Protocol Figure 3 illustrates the behavior of the BRM-T protocol. The horizontal lines represent the execution of processes through time. The thicker line represents the TTCB as a whole, even though, each process calls a separate local TTCB in its host (this representation is used for simplicity). The sender calls the TTCB agreement and then multicasts the message twice (Od = 1). These messages are received in the following way: P2 receives the two copies of the message, P3 receives the first copy corrupted and the second well, and P4 does not receive the first copy and the second is delayed. The example assumes that the first message sent to P3 is corrupted only in the data part, and for that reason it is still possible
9 2 * 4 K J E? = I J 6 J I J = H J J I J = H J 6 = C H A A A J 2 2! 2 " * + H H K F J A E L A H O * ) C H A A A J 5 A H L E? A 6 = C H A A A J A I I = C A E I I E, A C H A * F H F I A A? A 0 Figura 3: Example execution of the BRM-T protocol. to determine this protocol instance. When a message arrives, the recipient calls the TTCB agreement to get the result with the reliable value of H(M). Both processes P2 and P3 get this value almost immediately after the end of the agreement. They use the hash to select which of the messages they received is correct, and then they multicast the message to all the other recipients. P4 asks for the result of the agreement later, when it receives the first message from the protocol. Then, it multicasts the message. 4. Protocol Evaluation This section evaluates the BRM-T protocol in terms of message complexity and time performance. Message Complexity The number of messages transmitted by the BRM-T protocol is always the same. However, the way these messages are counted depends on how the unreliable multicast primitive is implemented. Equations are given for implementations in which a multicast is performed using a network multicast primitive (e.g., IP multicast) or with consecutive calls to a point-to-point send primitive (e.g., UDP). If there are f failed processes that do not communicate (e.g., because they crashed), then the number of messages send by the (n f) correct processes is: N mcast = (Od + 1)(n f) (1) N p2p = (Od + 1) ((n 1) + (n f 1)(n 2)) (2) Time Performance The performance of the BRM-T protocol was evaluated using the current implementation of the TTCB, the COTS-based TTCB [Correia et al., 2002b]. This setup is based on six
10 450 Mhz Pentium III PCs with 192 Mbytes RAM. The payload network and the TTCB control network are 100 Mbps Fast-Ethernet LANs. Each PC has two network adapters. The operating system is RTAI 4, a freeware real-time engineering of Linux. RTAI was security-enhanced in order to prevent intrusions in the local TTCB and in the TTCB control network. The code was implemented in C and compiled using the standard gcc compiler. The hash function used was MD5 [Menezes et al., 1997] and the communication was done with IP multicast. T agreement is currently 13ms. A first set of experiments was used to setup some protocol parameters. Setting up T 0 = 1ms the sender managed always to propose before tstart (lines 1-3). We also observed that although IP multicast is unreliable, if there are no attacks usually no messages are lost. All other experiments measured the time the protocol takes to deliver the message to a recipient. There was always one sender and five recipients, one per PC. The methodology used was the following. One of the processes is randomly chosen as the sender and multicasts a message M using an IP multicast address A. When the recipients receive the message they follow the protocol and resend the message to all other recipients using an IP multicast address B (the sender does not listen to this address). Then, immediately after delivery, a recipient is selected to answer the sender. This reply is an IP multicast for the same set of processes using the address A, and with a message of the same size. For each execution of the protocol two times were measured: the round-trip time and the recipient processing time. The round-trip time (T rd) is obtained by the sender, and it corresponds to the time measured between the multicast and the reception of the last reply. The recipient processing time (T proc) is the time taken between the reception of the message M in the recipient and its reply. This time includes all tasks executed by the recipient, such as hash calculation, and it corresponds mostly to the time waiting for the TTCB Agreement Service, i.e., calling TTCB propose and waiting for TTCB decide to return the result of the agreement (lines 8-9). If we assume that an IP multicast always takes the same amount of time, we can use the following formula to calculate the protocol s message delivery time: T d = T rd T proc 2 + T proc (3) Each measurement is the average of at least 1000 executions of the protocol. Both the network and the PCs were lightly loaded. Figure 4 shows the variation of the BRM-T average delivery times with the message data size, and the standard deviation (second set of experiments), with no faults. The messages carry an extra 24 bytes header for BRM-T. The picture compares these times with the unreliable IP multicast (under UDP sockets) delivery times with the same message sizes. The gap of approximately 8ms between both is due mostly to the TTCB Agreement execution time. We are currently working on an faster protocol for this TTCB service, that will have a direct impact on the performance of BRM-T. Nevertheless, the times obtained seam to be good when compared with protocols in the literature. For instance, in [Reiter, 1994], for 6 processes and messages with 0 and 1 Kbytes, the de- 4
11 & $ " & $ " livery times were approximately 52 and 57 ms, about 6 times the BRM-T times. This comparison should, however, be taken with caution since the test environment were quite different. $ ) L A H = C A E L A H O J E A I I " * K J E? = I J " $ & " A I I = C A I E A > O J A I Figura 4: Six-node average delivery time for different message sizes, with Od = 2. The third set of experiments assessed the impact of the omission degree on the protocol delivery times. Figure 5 shows the variation of the average delivery time with Od and the respective standard deviations. Varying Od from 0 (1 copy sent) to 10 (11 copies sent) the performance was only slightly affected. $ " * 4 6 = L A H = C A E L A H O J E A I! " # $ % & ' E I I A C H A A Figura 5: Six-node BRM-T average delivery time for different Od values (data size 500bytes). The fourth set of experiments assessed the impact of silent processes in the performance of the protocol. A process can be silent for a number of reasons, for instance, because it crashed or because it is malicious and does not want to execute the protocol.
12 & $ " Figure 6 shows the average delivery times obtained with 0 to 4 silent processes. The difference between the delivery times with none and one or more silent processes is around 4ms. Why does the protocol takes longer to execute when there are silent processes? Because in all previous experiments processes usually proposed before tstart and therefore the TTCB Agreement started to run earlier and also terminated sooner. When there are silent processes, the Agreement starts running only by tstart and is considered to terminate only by tstart + T agreement, which is a pessimistic value because T agreement is the higher time the Agreement may possible take to run. $ " * 4 6 = L A H = C A E L A H O J E A I I! " K > A H B B = E F H? A I I A I Figura 6: Six-node average delivery time with 0 to 4 silent processes (Od = 2, data size 500bytes). 5. Related Work Early reliable multicast protocols which tolerate arbitrary or Byzantine faults were reported both considering the synchronous [Lamport et al., 1982] and the asynchronous time model [Bracha and Toueg, 1985]. Bracha and Toueg established the result that in asynchronous systems less than a third (f < n/3) of the processes can be corrupted for the protocol properties to hold [Bracha and Toueg, 1985]. In our protocols, with the support of the TTCB, we can overcome this limit, and require only f n 2, a result analogous to the one obtained in synchronous systems [Lamport et al., 1982]. The Rampart toolkit contains a reliable multicast protocol that uses publickey cryptography to digitally sign some of the messages [Reiter, 1994]. The protocol is based on a simpler echo protocol that improves an earlier echo protocol by Toueg [Toueg, 1984]. Rampart assumes a membership service [Reiter, 1996]. Later, Malki and Reiter optimized the Rampart protocol using a method of chaining acknowledgments [Malkhi and Reiter, 1997]. Malkhi, Merrit and Rodeh proposed a secure reliable multicast protocol based on dissemination quorums, as a way to reduce delays specially in the case where f n [Malkhi et al., 1997]. These two protocols have a static membership.
13 The SecureRing system provides a reliable message delivery protocol that uses public key cryptography and assumes a fully connected network [Kihlstrom et al., 1998]. The multicast is imposed on a logical ring, where a token controls who can send the messages. The Secure Trans protocol, part of the SecureGroup system, uses retransmissions and acknowledgments to achieve reliable delivery of messages [Moser et al., 2000]. Both systems support dynamic group membership. The BRM-T protocol does not need public key cryptography (asymmetric cryptography), one of the main bottlenecks of group communication performance [Castro and Liskov, 1999], since it uses the TTCB to securely exchange a digest of the message. In fact, it also does not even use symmetric cryptography in runtime, one of the main differences in relation to a protocol of the same family called BRM- M [Correia et al., 2002a]. BRM-T and BRM-M have some points in common and some differences. The first, BRM-T, is based on the well known idea of multicasting a message enough times to tolerate accidental omissions in the network [Veríssimo et al., 1989]. The protocol terminates early even if there are faulty processes (accidental or malicious faults) or the network behaves badly, and it does not need to use cryptography in the messages, therefore avoiding the maintenance of shared keys among processes. This protocol, however, is pessimistic in the sense that it potentially sends more messages than what is necessary. The second protocol, BRM-M, uses acknowledgements. Consequently, it usually sends fewer messages but may take longer to terminate if there are faulty processes. This protocol requires message authentication codes (MAC) only in the acknowledgements (not in the data messages), but since these are based on symmetric cryptography the performance does not suffer too much [Castro and Liskov, 1999, Menezes et al., 1997]. We argue that providing two similar protocols optimized for different conditions can be useful for building systems which adapt to, e.g., different levels of threat. In terms of the network both protocols assume unreliable channels, which results on a message complexity proportional to the omission degree. There is a body of research on hybrid fault models starting with the work by Meyer and Pradhan [Meyer and Pradhan, 1987] which assumes different failure type distributions for different nodes. For instance, a number of nodes is allowed to fail arbitrarily while others can fail only by crashing. These distributions are hard to substantiate in the presence of malicious and intelligent entities, unless their behavior is constrained in some way. Our model may be better called an architectural hybrid fault model in the sense that it makes different failure mode assumptions about different system components, and that those assumptions are enforced by construction. 6. Conclusion This paper presents a new intrusion-tolerant reliable multicast protocol for asynchronous systems with an hybrid fault model. This type of failure model allows some components to fail in a controlled way while others may fail arbitrarily. In our case, we assume the existence of a simple distributed security kernel, the TTCB, that can only fail by crashing, while the rest of the system can behave in a Byzantine way. By relying on the services of the TTCB, both protocols exhibit excellent behavior in terms of time and message complexity when compared with more traditional Byzantine protocols. Moreover, they only require n f + 2 correct processes, instead of the usual n 3f + 1.
14 Referências Bracha, G. and Toueg, S. (1985). Asynchronous consensus and broadcast protocols. Journal of the ACM, 32(4): Cachin, C., Kursawe, K., and Shoup, V. (2000). Random oracles in Contanstinople: Practical asynchronous Byzantine agreement using cryptography. In Proceedings of the 19th ACM Symposium on Principles of Distributed Computing, pages Castro, M. and Liskov, B. (1999). Practical Byzantine fault tolerance. In Proceedings of the Third Symposium on Operating Systems Design and Implementation, pages Chandra, T. and Toueg, S. (1996). Unreliable failure detectors for reliable distributed systems. Journal of the ACM, 43(2): Correia, M., Lung, L. C., Neves, N. F., and Veríssimo, P. (2002a). Efficient Byzantine-resilient reliable multicast on a hybrid failure model. In Proceedings of the 21st IEEE Symposium on Reliable Distributed Systems, pages Correia, M., Veríssimo, P., and Neves, N. F. (2002b). The design of a COTS real-time distributed security kernel. In Proceedings of the Fourth European Dependable Computing Conference, pages Fischer, M. J. (1983). The consensus problem in unreliable distributed systems (A brief survey). In Karpinsky, M., editor, Foundations of Computing Theory, volume 158 of Lecture Notes in Computer Science, pages Springer-Verlag. Hadzilacos, V. and Toueg, S. (1994). A modular approach to fault-tolerant broadcasts and related problems. Technical Report TR , Cornell University, Department of Computer Science. Kihlstrom, K. P., Moser, L. E., and Melliar-Smith, P. M. (1998). The SecureRing protocols for securing group communication. In Proceedings of the 31st Annual Hawaii International Conference on System Sciences, pages Lamport, L., Shostak, R., and Pease, M. (1982). The Byzantine generals problem. ACM Transactions on Programming Languages and Systems, 4(3): Malkhi, D., Merrit, M., and Rodeh, O. (1997). Secure reliable multicast protocols in a WAN. In International Conference on Distributed Computing Systems, pages Malkhi, D. and Reiter, M. (1997). A high-throughput secure reliable multicast protocol. The Journal of Computer Security, 5: Menezes, A. J., Oorschot, P. C. V., and Vanstone, S. A. (1997). Handbook of Applied Cryptography. CRC Press. Meyer, F. and Pradhan, D. (1987). Consensus with dual failure modes. In Proceedings of the 17th IEEE International Symposium on Fault-Tolerant Computing, pages Moser, L. E., Melliar-Smith, P. M., and Narasimhan, N. (2000). The SecureGroup communication system. In Proceedings of the IEEE Information Survivability Conference, pages Rabin, M. O. (1983). Randomized Byzantine Generals. In Proceedings of the 24th Annual IEEE Symposium on Foundations of Computer Science, pages
15 Reiter, M. (1994). Secure agreement protocols: Reliable and atomic group multicast in Rampart. In Proceedings of the 2nd ACM Conference on Computer and Communications Security, pages Reiter, M. K. (1996). A secure group membership protocol. IEEE Transactions on Software Engineering, 22(1): Toueg, S. (1984). Randomized Byzantine agreements. In Proceedings of the 3rd ACM Symposium on Principles of Distributed Computing, pages Veríssimo, P., Rodrigues, L., and Baptista, M. (1989). AMp: A highly parallel atomic multicast protocol. In SIGCOMM, pages
Worm-IT A Wormhole-based Intrusion-Tolerant Group Communication System
Worm-IT A Wormhole-based Intrusion-Tolerant Group Communication System Miguel Correia a, Nuno Ferreira Neves a, Lau Cheuk Lung b, Paulo Veríssimo a a Faculdade de Ciências da Universidade de Lisboa, Campo
Vbam - Byzantine Atomic Multicast in LAN Based on Virtualization Technology
Vbam - Byzantine Atomic Multicast in LAN Based on Virtualization Technology Marcelo Ribeiro Xavier Silva, Lau Cheuk Lung, Leandro Quibem Magnabosco, Luciana de Oliveira Rech 1 Computer Science Federal
Bounded Cost Algorithms for Multivalued Consensus Using Binary Consensus Instances
Bounded Cost Algorithms for Multivalued Consensus Using Binary Consensus Instances Jialin Zhang Tsinghua University [email protected] Wei Chen Microsoft Research Asia [email protected] Abstract
Middleware and Distributed Systems. System Models. Dr. Martin v. Löwis. Freitag, 14. Oktober 11
Middleware and Distributed Systems System Models Dr. Martin v. Löwis System Models (Coulouris et al.) Architectural models of distributed systems placement of parts and relationships between them e.g.
Signature-Free Asynchronous Binary Byzantine Consensus with t < n/3, O(n 2 ) Messages, and O(1) Expected Time
Signature-Free Asynchronous Binary Byzantine Consensus with t < n/3, O(n 2 ) Messages, and O(1) Expected Time Achour Mostéfaoui Hamouma Moumen Michel Raynal, LINA, Université de Nantes, 44322 Nantes Cedex,
Synchronization in. Distributed Systems. Cooperation and Coordination in. Distributed Systems. Kinds of Synchronization.
Cooperation and Coordination in Distributed Systems Communication Mechanisms for the communication between processes Naming for searching communication partners Synchronization in Distributed Systems But...
SPINS: Security Protocols for Sensor Networks
SPINS: Security Protocols for Sensor Networks Adrian Perrig, Robert Szewczyk, J.D. Tygar, Victor Wen, and David Culler Department of Electrical Engineering & Computer Sciences, University of California
Dr Markus Hagenbuchner [email protected] CSCI319. Distributed Systems
Dr Markus Hagenbuchner [email protected] CSCI319 Distributed Systems CSCI319 Chapter 8 Page: 1 of 61 Fault Tolerance Study objectives: Understand the role of fault tolerance in Distributed Systems. Know
Modular Communication Infrastructure Design with Quality of Service
Modular Communication Infrastructure Design with Quality of Service Pawel Wojciechowski and Péter Urbán Distributed Systems Laboratory School of Computer and Communication Sciences Swiss Federal Institute
Per-Flow Queuing Allot's Approach to Bandwidth Management
White Paper Per-Flow Queuing Allot's Approach to Bandwidth Management Allot Communications, July 2006. All Rights Reserved. Table of Contents Executive Overview... 3 Understanding TCP/IP... 4 What is Bandwidth
Security Considerations for Intrinsic Monitoring within IPv6 Networks: Work in Progress
Security Considerations for Intrinsic Monitoring within IPv6 Networks: Work in Progress Alan Davy and Lei Shi Telecommunication Software&Systems Group, Waterford Institute of Technology, Ireland adavy,[email protected]
Cheap Intrusion-Tolerant Protection for CRUTIAL Things
Cheap Intrusion-Tolerant Protection for CRUTIAL Things DI FCUL Alysson Neves Bessani Paulo Sousa Miguel Correia Nuno Ferreira Neves Paulo Verissimo TR 2009 14 June 2009 Departamento de Informática Faculdade
An Overview of Common Adversary Models
An Overview of Common Adversary Karl Palmskog [email protected] 2012-03-29 Introduction Requirements of Software Systems 1 Functional Correctness: partial, termination, liveness, safety,... 2 Nonfunctional
Intrusion Tolerance based on Architectural Hybridization
Intrusion Tolerance based on Architectural Hybridization Miguel Nuno Dias Alves Pupo Correia DI FCUL TR 03 30 December 2003 Departamento de Informática Faculdade de Ciências da Universidade de Lisboa Campo
CSE331: Introduction to Networks and Security. Lecture 6 Fall 2006
CSE331: Introduction to Networks and Security Lecture 6 Fall 2006 Open Systems Interconnection (OSI) End Host Application Reference model not actual implementation. Transmits messages (e.g. FTP or HTTP)
TCOM 370 NOTES 99-12 LOCAL AREA NETWORKS AND THE ALOHA PROTOCOL
1. Local Area Networks TCOM 370 NOTES 99-12 LOCAL AREA NETWORKS AND THE ALOHA PROTOCOL These are networks spanning relatively short distances (e.g. within one building) for local point-to-point and point-to-multipoint
Local Area Networks transmission system private speedy and secure kilometres shared transmission medium hardware & software
Local Area What s a LAN? A transmission system, usually private owned, very speedy and secure, covering a geographical area in the range of kilometres, comprising a shared transmission medium and a set
A Practical Authentication Scheme for In-Network Programming in Wireless Sensor Networks
A Practical Authentication Scheme for In-Network Programming in Wireless Sensor Networks Ioannis Krontiris Athens Information Technology P.O.Box 68, 19.5 km Markopoulo Ave. GR- 19002, Peania, Athens, Greece
Network Security 網 路 安 全. Lecture 1 February 20, 2012 洪 國 寶
Network Security 網 路 安 全 Lecture 1 February 20, 2012 洪 國 寶 1 Outline Course information Motivation Introduction to security Basic network concepts Network security models Outline of the course 2 Course
Security (II) ISO 7498-2: Security Architecture of OSI Reference Model. Outline. Course Outline: Fundamental Topics. EE5723/EE4723 Spring 2012
Course Outline: Fundamental Topics System View of Network Security Network Security Model Security Threat Model & Security Services Model Overview of Network Security Security Basis: Cryptography Secret
Unit of Learning # 2 The Physical Layer. Sergio Guíñez Molinos [email protected] 2-2009
Unit of Learning # 2 The Physical Layer Sergio Guíñez Molinos [email protected] 2-2009 Local Area Network (LAN) Redes de Computadores 2 Historic topologies more used in LAN Ethernet Logical Bus and Physical
Computer Network. Interconnected collection of autonomous computers that are able to exchange information
Introduction Computer Network. Interconnected collection of autonomous computers that are able to exchange information No master/slave relationship between the computers in the network Data Communications.
HASH CODE BASED SECURITY IN CLOUD COMPUTING
ABSTRACT HASH CODE BASED SECURITY IN CLOUD COMPUTING Kaleem Ur Rehman M.Tech student (CSE), College of Engineering, TMU Moradabad (India) The Hash functions describe as a phenomenon of information security
Protecting Communication in SIEM systems
Protecting Communication in SIEM systems Valerio Formicola Università di Napoli Parthenope Winter School: Hot Topics in Secure and Dependable Computing for Critical Infrastructures SDCI 2012 January 15th
Final Exam. IT 4823 Information Security Administration. Rescheduling Final Exams. Kerberos. Idea. Ticket
IT 4823 Information Security Administration Public Key Encryption Revisited April 5 Notice: This session is being recorded. Lecture slides prepared by Dr Lawrie Brown for Computer Security: Principles
How To Monitor And Test An Ethernet Network On A Computer Or Network Card
3. MONITORING AND TESTING THE ETHERNET NETWORK 3.1 Introduction The following parameters are covered by the Ethernet performance metrics: Latency (delay) the amount of time required for a frame to travel
Module 8. Network Security. Version 2 CSE IIT, Kharagpur
Module 8 Network Security Lesson 2 Secured Communication Specific Instructional Objectives On completion of this lesson, the student will be able to: State various services needed for secured communication
TCP in Wireless Mobile Networks
TCP in Wireless Mobile Networks 1 Outline Introduction to transport layer Introduction to TCP (Internet) congestion control Congestion control in wireless networks 2 Transport Layer v.s. Network Layer
CRYPTOGRAPHY IN NETWORK SECURITY
ELE548 Research Essays CRYPTOGRAPHY IN NETWORK SECURITY AUTHOR: SHENGLI LI INSTRUCTOR: DR. JIEN-CHUNG LO Date: March 5, 1999 Computer network brings lots of great benefits and convenience to us. We can
SECURE APPLICATION UPDATES ON POINT OF SALE DEVICES
SECURE APPLICATION UPDATES ON POINT OF SALE DEVICES Manuel Mendonça Faculdade de Ciências da Universidade de Lisboa Bloco C6, Campo Grande, 1749-016 Lisboa - Portugal Email: [email protected] Nuno Ferreira
Client Server Registration Protocol
Client Server Registration Protocol The Client-Server protocol involves these following steps: 1. Login 2. Discovery phase User (Alice or Bob) has K s Server (S) has hash[pw A ].The passwords hashes are
Clearing the Way for VoIP
Gen2 Ventures White Paper Clearing the Way for VoIP An Alternative to Expensive WAN Upgrades Executive Overview Enterprises have traditionally maintained separate networks for their voice and data traffic.
10 Secure Electronic Transactions: Overview, Capabilities, and Current Status
10 Secure Electronic Transactions: Overview, Capabilities, and Current Status Gordon Agnew A&F Consulting, and University of Waterloo, Ontario, Canada 10.1 Introduction Until recently, there were two primary
Cryptography and Network Security
Cryptography and Network Security Spring 2012 http://users.abo.fi/ipetre/crypto/ Lecture 9: Authentication protocols, digital signatures Ion Petre Department of IT, Åbo Akademi University 1 Overview of
Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu
UT DALLAS Erik Jonsson School of Engineering & Computer Science Overview of Cryptographic Tools for Data Security Murat Kantarcioglu Pag. 1 Purdue University Cryptographic Primitives We will discuss the
A Transport Protocol for Multimedia Wireless Sensor Networks
A Transport Protocol for Multimedia Wireless Sensor Networks Duarte Meneses, António Grilo, Paulo Rogério Pereira 1 NGI'2011: A Transport Protocol for Multimedia Wireless Sensor Networks Introduction Wireless
A Trustworthy and Resilient Event Broker for Monitoring Cloud Infrastructures
A Trustworthy and Resilient Event Broker for Monitoring Cloud Infrastructures Diego Kreutz, António Casimiro, Marcelo Pasin LaSIGE, Faculty of Sciences, University of Lisbon, Portugal [email protected],
Mobile Computing/ Mobile Networks
Mobile Computing/ Mobile Networks TCP in Mobile Networks Prof. Chansu Yu Contents Physical layer issues Communication frequency Signal propagation Modulation and Demodulation Channel access issues Multiple
A Slow-sTart Exponential and Linear Algorithm for Energy Saving in Wireless Networks
1 A Slow-sTart Exponential and Linear Algorithm for Energy Saving in Wireless Networks Yang Song, Bogdan Ciubotaru, Member, IEEE, and Gabriel-Miro Muntean, Member, IEEE Abstract Limited battery capacity
Cryptographic hash functions and MACs Solved Exercises for Cryptographic Hash Functions and MACs
Cryptographic hash functions and MACs Solved Exercises for Cryptographic Hash Functions and MACs Enes Pasalic University of Primorska Koper, 2014 Contents 1 Preface 3 2 Problems 4 2 1 Preface This is a
Chapter 9 Key Management 9.1 Distribution of Public Keys 9.1.1 Public Announcement of Public Keys 9.1.2 Publicly Available Directory
There are actually two distinct aspects to the use of public-key encryption in this regard: The distribution of public keys. The use of public-key encryption to distribute secret keys. 9.1 Distribution
Ring Local Area Network. Ring LANs
Ring Local Area Network Ring interface (1-bit buffer) Ring interface To station From station Ring LANs The ring is a series of bit repeaters, each connected by a unidirectional transmission link All arriving
QoS Issues for Multiplayer Gaming
QoS Issues for Multiplayer Gaming By Alex Spurling 7/12/04 Introduction Multiplayer games are becoming large part of today s digital entertainment. As more game players gain access to high-speed internet
Security vulnerabilities in the Internet and possible solutions
Security vulnerabilities in the Internet and possible solutions 1. Introduction The foundation of today's Internet is the TCP/IP protocol suite. Since the time when these specifications were finished in
Network Security [2] Plain text Encryption algorithm Public and private key pair Cipher text Decryption algorithm. See next slide
Network Security [2] Public Key Encryption Also used in message authentication & key distribution Based on mathematical algorithms, not only on operations over bit patterns (as conventional) => much overhead
Computer Networks. Chapter 5 Transport Protocols
Computer Networks Chapter 5 Transport Protocols Transport Protocol Provides end-to-end transport Hides the network details Transport protocol or service (TS) offers: Different types of services QoS Data
Message authentication and. digital signatures
Message authentication and " Message authentication digital signatures verify that the message is from the right sender, and not modified (incl message sequence) " Digital signatures in addition, non!repudiation
Introduction. Digital Signature
Introduction Electronic transactions and activities taken place over Internet need to be protected against all kinds of interference, accidental or malicious. The general task of the information technology
CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives
CIS 6930 Emerging Topics in Network Security Topic 2. Network Security Primitives 1 Outline Absolute basics Encryption/Decryption; Digital signatures; D-H key exchange; Hash functions; Application of hash
Mixed-Criticality Systems Based on Time- Triggered Ethernet with Multiple Ring Topologies. University of Siegen Mohammed Abuteir, Roman Obermaisser
Mixed-Criticality s Based on Time- Triggered Ethernet with Multiple Ring Topologies University of Siegen Mohammed Abuteir, Roman Obermaisser Mixed-Criticality s Need for mixed-criticality systems due to
TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)
TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) *Slides adapted from a talk given by Nitin Vaidya. Wireless Computing and Network Systems Page
Discussion Paper Category 6 vs Category 5e Cabling Systems and Implications for Voice over IP Networks
Discussion Paper Category 6 vs Category 5e Cabling Systems and Implications for Voice over IP Networks By Galen Udell Belden CDT Networking 2006 Category 6 vs Category 5e Cabling Systems and Implications
Peer-to-peer Cooperative Backup System
Peer-to-peer Cooperative Backup System Sameh Elnikety Mark Lillibridge Mike Burrows Rice University Compaq SRC Microsoft Research Abstract This paper presents the design and implementation of a novel backup
An Overview of Clock Synchronization
An Overview of Clock Synchronization Barbara Simons, IBM Almaden Research Center Jennifer Lundelius Welch, GTE Laboratories Incorporated Nancy Lynch, MIT 1 Introduction A distributed system consists of
SSL A discussion of the Secure Socket Layer
www.harmonysecurity.com [email protected] SSL A discussion of the Secure Socket Layer By Stephen Fewer Contents 1 Introduction 2 2 Encryption Techniques 3 3 Protocol Overview 3 3.1 The SSL Record
Cryptography and Network Security Chapter 11. Fourth Edition by William Stallings
Cryptography and Network Security Chapter 11 Fourth Edition by William Stallings Chapter 11 Message Authentication and Hash Functions At cats' green on the Sunday he took the message from the inside of
QoS Parameters. Quality of Service in the Internet. Traffic Shaping: Congestion Control. Keeping the QoS
Quality of Service in the Internet Problem today: IP is packet switched, therefore no guarantees on a transmission is given (throughput, transmission delay, ): the Internet transmits data Best Effort But:
UPPER LAYER SWITCHING
52-20-40 DATA COMMUNICATIONS MANAGEMENT UPPER LAYER SWITCHING Gilbert Held INSIDE Upper Layer Operations; Address Translation; Layer 3 Switching; Layer 4 Switching OVERVIEW The first series of LAN switches
A Passive Method for Estimating End-to-End TCP Packet Loss
A Passive Method for Estimating End-to-End TCP Packet Loss Peter Benko and Andras Veres Traffic Analysis and Network Performance Laboratory, Ericsson Research, Budapest, Hungary {Peter.Benko, Andras.Veres}@eth.ericsson.se
SECURITY ANALYSIS OF A SINGLE SIGN-ON MECHANISM FOR DISTRIBUTED COMPUTER NETWORKS
SECURITY ANALYSIS OF A SINGLE SIGN-ON MECHANISM FOR DISTRIBUTED COMPUTER NETWORKS Abstract: The Single sign-on (SSO) is a new authentication mechanism that enables a legal user with a single credential
Department of Computer & Information Sciences. CSCI-445: Computer and Network Security Syllabus
Department of Computer & Information Sciences CSCI-445: Computer and Network Security Syllabus Course Description This course provides detailed, in depth overview of pressing network security problems
Authentication requirement Authentication function MAC Hash function Security of
UNIT 3 AUTHENTICATION Authentication requirement Authentication function MAC Hash function Security of hash function and MAC SHA HMAC CMAC Digital signature and authentication protocols DSS Slides Courtesy
Quality of Service in the Internet. QoS Parameters. Keeping the QoS. Traffic Shaping: Leaky Bucket Algorithm
Quality of Service in the Internet Problem today: IP is packet switched, therefore no guarantees on a transmission is given (throughput, transmission delay, ): the Internet transmits data Best Effort But:
Introduction to Computer Security
Introduction to Computer Security Hash Functions and Digital Signatures Pavel Laskov Wilhelm Schickard Institute for Computer Science Integrity objective in a wide sense Reliability Transmission errors
Data Link Layer(1) Principal service: Transferring data from the network layer of the source machine to the one of the destination machine
Data Link Layer(1) Principal service: Transferring data from the network layer of the source machine to the one of the destination machine Virtual communication versus actual communication: Specific functions
International Journal of Information Technology, Modeling and Computing (IJITMC) Vol.1, No.3,August 2013
FACTORING CRYPTOSYSTEM MODULI WHEN THE CO-FACTORS DIFFERENCE IS BOUNDED Omar Akchiche 1 and Omar Khadir 2 1,2 Laboratory of Mathematics, Cryptography and Mechanics, Fstm, University of Hassan II Mohammedia-Casablanca,
Network Security. Computer Networking Lecture 08. March 19, 2012. HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23
Network Security Computer Networking Lecture 08 HKU SPACE Community College March 19, 2012 HKU SPACE CC CN Lecture 08 1/23 Outline Introduction Cryptography Algorithms Secret Key Algorithm Message Digest
Based on Computer Networking, 4 th Edition by Kurose and Ross
Computer Networks Ethernet Hubs and Switches Based on Computer Networking, 4 th Edition by Kurose and Ross Ethernet dominant wired LAN technology: cheap $20 for NIC first widely used LAN technology Simpler,
Chapter 7 Transport-Level Security
Cryptography and Network Security Chapter 7 Transport-Level Security Lectured by Nguyễn Đức Thái Outline Web Security Issues Security Socket Layer (SSL) Transport Layer Security (TLS) HTTPS Secure Shell
STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM
STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM Albert M. K. Cheng, Shaohong Fang Department of Computer Science University of Houston Houston, TX, 77204, USA http://www.cs.uh.edu
Ethernet. Ethernet Frame Structure. Ethernet Frame Structure (more) Ethernet: uses CSMA/CD
Ethernet dominant LAN technology: cheap -- $20 for 100Mbs! first widely used LAN technology Simpler, cheaper than token rings and ATM Kept up with speed race: 10, 100, 1000 Mbps Metcalfe s Etheret sketch
SY0-201. system so that an unauthorized individual can take over an authorized session, or to disrupt service to authorized users.
system so that an unauthorized individual can take over an authorized session, or to disrupt service to authorized users. From a high-level standpoint, attacks on computer systems and networks can be grouped
Outline. Clouds of Clouds lessons learned from n years of research Miguel Correia
Dependability and Security with Clouds of Clouds lessons learned from n years of research Miguel Correia WORKSHOP ON DEPENDABILITY AND INTEROPERABILITY IN HETEROGENEOUS CLOUDS (DIHC13) August 27 th 2013,
7 Network Security. 7.1 Introduction 7.2 Improving the Security 7.3 Internet Security Framework. 7.5 Absolute Security?
7 Network Security 7.1 Introduction 7.2 Improving the Security 7.3 Internet Security Framework 7.4 Firewalls 7.5 Absolute Security? 7.1 Introduction Security of Communications data transport e.g. risk
CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL
CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL This chapter is to introduce the client-server model and its role in the development of distributed network systems. The chapter
Exhibit n.2: The layers of a hierarchical network
3. Advanced Secure Network Design 3.1 Introduction You already know that routers are probably the most critical equipment piece in today s networking. Without routers, internetwork communication would
Lecture 9 - Message Authentication Codes
Lecture 9 - Message Authentication Codes Boaz Barak March 1, 2010 Reading: Boneh-Shoup chapter 6, Sections 9.1 9.3. Data integrity Until now we ve only been interested in protecting secrecy of data. However,
Report to WIPO SCIT Plenary Trilateral Secure Virtual Private Network Primer. February 3, 1999
Report to WIPO SCIT Plenary Trilateral Secure Virtual Private Network Primer February 3, 1999 Frame Relay Frame Relay is an international standard for high-speed access to public wide area data networks
An Intrusion-Tolerant Firewall Design for Protecting SIEM Systems
An Intrusion-Tolerant Firewall Design for Protecting SIEM Systems Miguel Garcia, Nuno Neves and Alysson Bessani University of Lisbon, Faculty of Sciences, LASIGE [email protected], {nuno,bessani}@di.fc.ul.pt
Chapter 15 User Authentication
Chapter 15 User Authentication 2015. 04. 06 Jae Woong Joo SeoulTech ([email protected]) Table of Contents 15.1 Remote User-Authentication Principles 15.2 Remote User-Authentication Using Symmetric
Review: Lecture 1 - Internet History
Review: Lecture 1 - Internet History late 60's ARPANET, NCP 1977 first internet 1980's The Internet collection of networks communicating using the TCP/IP protocols 1 Review: Lecture 1 - Administration
First Semester Examinations 2011/12 INTERNET PRINCIPLES
PAPER CODE NO. EXAMINER : Martin Gairing COMP211 DEPARTMENT : Computer Science Tel. No. 0151 795 4264 First Semester Examinations 2011/12 INTERNET PRINCIPLES TIME ALLOWED : Two Hours INSTRUCTIONS TO CANDIDATES
DepSky Dependable and Secure Storage in a Cloud-of-Clouds Alysson Bessani, Miguel Correia, Bruno Quaresma, Fernando André, Paulo Sousa
epsky ependable and Secure Storage in a Cloud-of-Clouds Alysson Bessani, Miguel Correia, Bruno Quaresma, Fernando André, Paulo Sousa University of Lisbon, Faculty of Sciences 1 Moving to Clouds ata is
Introdução aos Sistemas Distribuídos
O que é um Sistema Distribuído? Introdução aos Sistemas Distribuídos Um sistema distribuído consiste num conjunto de máquinas que trabalham de forma coordenada e conjunta para resolver um determinado problema.
Broadband Networks. Prof. Dr. Abhay Karandikar. Electrical Engineering Department. Indian Institute of Technology, Bombay. Lecture - 29.
Broadband Networks Prof. Dr. Abhay Karandikar Electrical Engineering Department Indian Institute of Technology, Bombay Lecture - 29 Voice over IP So, today we will discuss about voice over IP and internet
Service and Resource Discovery in Smart Spaces Composed of Low Capacity Devices
Service and Resource Discovery in Smart Spaces Composed of Low Capacity Devices Önder Uzun, Tanır Özçelebi, Johan Lukkien, Remi Bosman System Architecture and Networking Department of Mathematics and Computer
Authentication Types. Password-based Authentication. Off-Line Password Guessing
Authentication Types Chapter 2: Security Techniques Background Secret Key Cryptography Public Key Cryptography Hash Functions Authentication Chapter 3: Security on Network and Transport Layer Chapter 4:
Attenuation (amplitude of the wave loses strength thereby the signal power) Refraction Reflection Shadowing Scattering Diffraction
Wireless Physical Layer Q1. Is it possible to transmit a digital signal, e.g., coded as square wave as used inside a computer, using radio transmission without any loss? Why? It is not possible to transmit
