um modelo de gerência de segurança para middleware baseado

130
Nguessan D´ esir´ e Um Modelo de Gerˆ encia de Seguran¸ca para Middleware Baseado em Tuple para Ambientes Difusos e Nˆomades ao Paulo 2010

Upload: doancong

Post on 07-Jan-2017

236 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Um Modelo de Gerência de Segurança para Middleware Baseado

Nguessan Desire

Um Modelo de Gerencia de Seguranca para

Middleware Baseado em Tuple para

Ambientes Difusos e Nomades

Sao Paulo

2010

Page 2: Um Modelo de Gerência de Segurança para Middleware Baseado

Nguessan Desire

Um Modelo de Gerencia de Seguranca paraMiddleware Baseado em Tuple para Ambientes

Difusos e Nomades

Tese apresentada a Escola Politecnica da Universi-

dade de Sao Paulo para obtencao do tıtulo de Doutor

em Engenharia Eletrica

Area de Concentracao: Sistemas Digitais

Orientador: Prof. Dr. Jose Sidnei Colombo Martini

Sao Paulo

2010

Page 3: Um Modelo de Gerência de Segurança para Middleware Baseado

Nguessan Desire

Um Modelo de Gerencia de Seguranca paraMiddleware Baseado em Tuple para Ambientes

Difusos e Nomades

Tese apresentada a Escola Politecnica da Universi-

dade de Sao Paulo para obtencao do tıtulo de Doutor

em Engenharia Eletrica

Area de Concentracao: Sistemas Digitais

Orientador: Prof. Dr. Jose Sidnei Colombo Martini

Sao Paulo

2010

Page 4: Um Modelo de Gerência de Segurança para Middleware Baseado

Dedicatoria

A minha querida famılia, em especial a Ex-Lieutenant

Yoffoua Yaba Georgette (in memorian).

Page 5: Um Modelo de Gerência de Segurança para Middleware Baseado

Agradecimentos

Esta tese e o fruto de mais de quatro anos de incansavel esforco, e tambem de trocas

beneficas e frutıferas colaboracoes. Ela nao poderia ser concluıda sem a preciosa e gen-

erosa participacao de pessoas que compartilham a mesma paixao pela pesquisa cientifica

e tecnologica.

Dirijo, em primeiro lugar, meus sinceros agradecimentos ao meu orientador, prof.

Dr. Jose Sidnei Colombo Martini, pela confianca ao longo desta caminhada. Alem da

paciencia, gentileza e espırito de convivencia (sem esquecer as broncas por vezes merecidas)

que demonstrou ao me orientar, proporcionando-me, em nossos encontros, importantes

trocas de experiencias e ideias tanto na area academica, quanto fora dela.

Agradeco ao professor Dr. Moacyr Martucci Junior, em primeiro lugar, por ter me

apresentado ao meu orientador e pela honra de ter acompanhado o processo de desen-

volvimento dessa tese, alem de suas pertinentes observacoes nas versoes preliminares.

Agradeco a professora Dra. Graca Bressan pelo acompanhamento, discussoes e obser-

vacoes importantes a minha pesquisa.

Agradeco, naturalmente, ao professor Dr. Carlos Becker Westphall da Universidade

Federal de Santa Catarina (UFSC) pela honra de ter sido seu orientando durante o

mestrado, pelo seu incentivo a producao cientıfica e tecnologica, pelo apoio do Labo-

ratorio de Gerencia de Rede do INE/UFSC - Departamento de Informatica e Estatıstica

da UFSC, onde nasceu a ideia dessa tese.

Agradeco aos professores do PCS, em especial aqueles do LSA-Laboratorio de Sistemas

Abertos da Escola Politecnica Departamento de Engenharia de Computacao e Sistemas

Digitais da Universidade de Sao Paulo, por me atenderem e me ajudarem a todo instante.

Meus agradecimentos ao Marcio de Almeida que me ajudou na implementacao da tese.

Agradeco ao professor Dr. Geraldo da Silva, Diretor da FATEC-Sul - Faculdade de

Tecnologia da Zona Sul (Sao Paulo) e membro do Conselho Deliberativo do Centro Paula

Souza, pelas sugestoes pertinentes e construtivas durante a elaboracao deste trabalho e

por ter aceitado o convite para ser membro da banca examinadora.

Page 6: Um Modelo de Gerência de Segurança para Middleware Baseado

Agradeco aos colegas professores, funcionarios e, em especial, a professora Dra. Adri-

ane M. Fontana, Diretora da FATEC–SCS (Faculdade de Tecnologia de Sao Caetano do

Sul, que me apoiaram e incentivaram nesta caminhada. Agradeco tambem aos meus

alunos do curso de ASTI (Analise de Sistemas e Tecnologia da Informacao) que me com-

preenderam nos momentos difıceis.

Agradeco a minha famılia, em especial a Gilmari Ana Conte e Madeleine Conte Ngues-

san que me incentivaram e me deram todo o apoio e carinho necessarios a conclusao desse

trabalho.

Agradecer pessoas especiais, exemplos de talento, dignidade, credibilidade, seriedade,

honestidade, competencia, irreverencia, perseveranca e tantos outros bons adjetivos e

praticamente impossıvel. Caso fosse possıvel, faria como Dr. Frederick Frankenstein, me

reconstruiria com um pedaco de cada um de voces. Mestre, espero ter aprendido as licoes

e estar apto a repassa-las. Buscarei incansavelmente este objetivo.

Adriane Fontana, Boni Yavo, Carlos Becker Westphall, Emmanuel Kayembe, Geraldo

da Silva, Gilmari Ana Conte, Gnagna Madeleine, Graca Bressan, Ignace Djokouri (in

memorian), Jose Sidnei Martini, Marcio Ribeiro Galvao, Moacyr Martucci Junior, Nelso

Conte, Nguessan Yoffoua Esaie (in memorian), Rafael do Espirito Santo, Ricardo Shitsuka,

Sandra Moraes, Vilma M. Conte, Yoffoua Amani Catherine, Yoffoua Rosalie, Yoffoua Yaba

Georgette (in memorian) OBRIGADO !

Finalmente agradeco a Deus, pois sem ele, nada disso seria possıvel.

Page 7: Um Modelo de Gerência de Segurança para Middleware Baseado

Resumo

Este trabalho explora a gerencia de seguranca e cooperacao de aplicacoes em sistemas

distribuıdos moveis. Neste contexto, e feito um estudo sobre os diferentes middlewares

para ambientes moveis (mobile middlewares): suas capacidades de enfrentar os desafios

da mobilidade e da seguranca. As analises do estudo mostram que esses middlewares de-

vem possuir caracterısticas que lhes permitam uma melhor adaptacao as necessidades das

aplicacoes e a natureza dos ambientes moveis. Os middlewares existentes pouco abordam

a questao da seguranca. A seguranca ainda e um problema complexo que deve ser gerido

em todos os nıveis de um sistema distribuıdo movel, incluindo novos mecanismos. Com

base nessa analise, foi desenvolvido um modelo de gerencia de seguranca que implementa

um mecanismo de autenticacao mutua, confidencialidade, deteccao de intruso e controle

de acesso em ambientes moveis. O objetivo e garantir a confiabilidade, a disponibilidade

de servicos e a privacidade do usuario atraves da tecnologia PET - Privacy-Enhancing

Tecnologies. A ideia e fundamentada em agentes interceptadores e autoridades de segu-

ranca que distribuem tıquetes de seguranca e controlam o acesso a recursos e espacos de

tuple do ambiente. O estudo de caso apresentou resultados satisfatorios que permitem

julgar a pertinencia do modelo desenvolvido. O modelo sera integrado a um sistema de

e-saude.

Palavras-chave: Computacao difusa, computacao nomade, gerencia de seguranca e pri-

vacidade, middleware movel, espaco tuple, agente movel, tecnologia PET.

Page 8: Um Modelo de Gerência de Segurança para Middleware Baseado

Abstract

The work exploits the security management and the cooperation of applications in

mobile distributed systems. In this context a study of different mobile middlewares is

made. The study examines their capacities to face the challenges of mobility and security

issues. The analysis shows that the existing middlewares have very few approaches on

security problems; security is still a complex issue to be managed in all the levels of mobile

distributed system including new mechanisms. Based on this analysis, a security man-

agement model is developed that implements a mechanism for mutual authentication,

confidentiality, intrusion detection, access control of mobile agents in mobile environ-

ments, ensures services availability and user privacy, through technology PET (Privacy-

Enhancing Technologies). The idea is based on interceptor agents and security authorities

that distribute security tickets and control the access to resources and Tuple spaces in

mobile environment. The model presents good performance and is integrated to an e-

health system: Relationship Management with Chronic Patient GRPC.

Keywords: Pervasive computing, nomadic computing, privacy and security manage-

ment, mobile middleware, tuple space, PET technology, mobile agent.

Page 9: Um Modelo de Gerência de Segurança para Middleware Baseado

Lista de Figuras

2.1 Modelo Geral a, b: interacoes do usuario humano com o espaco de infor-

macao - c: sondagem do ambiente real – d: controle do ambiente real – e:

interacoes fısicas do usuario humano com o ambiente real [BANATRE et

al, 2007]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2.2 Um exemplo de arquitetura totalmente replicada: as etapas 1, 2 e 3 acon-

tecem no dispositivo portatil movel [BANATRE et al, 2007]. . . . . . . . 34

2.3 Um exemplo de arquitetura com sistema de informacao remoto: a etapa 2

acontece em um servidor centralizado [BANATRE et al, 2007]. . . . . . . 35

3.1 Arquitetura de Mobilidade dos Terminais em CORBA [OMG, 2005]. . . . 49

3.2 Fila de espera no modelo peer to peer [KADDOUR, 2006b]. . . . . . . . . 52

3.3 Modelo Publish/Subscribe: as mensagens depositadas em um topic sao

fornecidas somente as aplicacoes subscritas ao topic [KADDOUR, 2006b]. 53

3.4 Arquitetura de um Sistema JMS [KADDOUR, 2006b]. . . . . . . . . . . . 54

3.5 Arquitetura geral do Ibus//Mobile [SOFTWIRED, 2007]. . . . . . . . . . 57

3.6 Arquitetura do WebSphere Everyplace [DAVE; LINDAMAYL, 2002]. . . . 58

3.7 Overview da arquitetura do Pronto – modelo centralizado [PRONTO, 2003]. 59

3.8 Um exemplo de aplicacao do Steam. A comunicacao entre as entidades do

sistema e feita atraves de eventos de propagacao baseados em aproximacao

dentro de um perımetro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

3.9 Overview da arquitetura STEAM [RENE; VINNY, 2003]. . . . . . . . . . . 61

3.10 Espacos de Tuple Temporariamente compartilhados onde cada esfera rep-

resenta um agente associado a um espaco de tuple local (ITS). . . . . . . . 63

3.11 FTS: Espacos de Tuple Global – Federated Tuple Space onde cada host ou

dispositivo e associado a um conjunto de ITSs chamado de Host – Level

Tuple Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

Page 10: Um Modelo de Gerência de Segurança para Middleware Baseado

3.12 Arquitetura Geral do Proem [KOERTUEM, et al ]. . . . . . . . . . . . . . 66

4.1 Topologia de uma rede 802.11 - onde BSS1 e BSS2 constituem a topologia

modo infraestrutura e a IBSS em pontilhado o modo ad hoc. . . . . . . . 70

4.2 Estrutura de uma rede celular. . . . . . . . . . . . . . . . . . . . . . . . . 72

6.1 Arquitetura do Modelo de Gerencia de Seguranca EM – Entidade Movel;

EE – Entidade Embarcada (cliente proxy); GRSec – Gerenciador Remoto

de Seguranca; AC – Agente de Controle de Acesso; SMIB (Security Man-

agement Information Base); AA – Agente de Autenticacao; SI – Sistema

de Informacao; DT – Distribuicao de Tıquete. PET - Privacy-Enhancing

Tecnologies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

6.2 Diagrama de Sequencia da Autenticacao e Distribuicao de Tıquete. E - funcao

de Criptografia Simetrica; Ka – Chave mestre de A; Kb – Chave mestre de B;

IDA – Identidade de A; IDB – Identidade de B; N1 uma marca de controle; Ts –

Tıquete de Sessao. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

6.3 Diagrama de contexto derivado do modelo de caso de uso de negocio do SecMo-

bileAgent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

6.4 Diagrama de Atividades (DA) do caso de uso Configurar perfil. . . . . . . . . . 101

6.5 Diagrama de Atividades (DA) do caso de uso Selecionar Algoritmo. . . . . . . 102

6.6 Diagrama de Atividades (DA) dos casos de uso Gerenciar autenticacao e Dis-

tribuir tıquete. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

6.7 Diagrama de Atividades (DA) dos casos de uso Gerenciar Identidades. . . . . . 105

6.8 Diagrama de Sequencia (DS) do caso de uso Configur perfil. . . . . . . . . . . 106

6.9 Diagrama de classe do LocalMobileAgent. . . . . . . . . . . . . . . . . . . . 108

6.10 Diagrama de classes de Criptografia. . . . . . . . . . . . . . . . . . . . . . . 108

6.11 Interfaces graficas para executar os servicos de seguranca implementados. . . . 111

6.12 Tempo de resposta na mobilidade de agente em rede WIFI AD HOC. . . . . . . 116

6.13 Tempo de resposta na mobilidade de agente em rede de celulares 3G com modem

da CLARO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

Page 11: Um Modelo de Gerência de Segurança para Middleware Baseado

Lista de Tabelas

3.1 Propriedades dos diferentes tipos de middlewares para Ambientes Moveis. . 68

4.1 Evolucao das redes celulares [IC2, 2007a]. . . . . . . . . . . . . . . . . . . . . 71

6.1 Resumo do escopo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

6.2 Principais limites do SecMobileAgent. . . . . . . . . . . . . . . . . . . . . . 96

6.3 Benefıcios esperados do produto. . . . . . . . . . . . . . . . . . . . . . . . 97

6.4 Descricao sumaria dos casos de uso do SecMobileAgent. . . . . . . . . . . . 98

6.5 Descricao dos Atores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

6.6 Elementos do ambiente de teste. . . . . . . . . . . . . . . . . . . . . . . . . 110

6.7 Tempo de resposta e tamanho em KB do SecMobileAgent. . . . . . . . . . 117

Page 12: Um Modelo de Gerência de Segurança para Middleware Baseado

Lista de Siglas

AA Agente de Autenticacao

AC Agente de Controle de Acesso

Ad Hoc Temporario / sem Infraestrutura

AH Authentication Header

AO Application Objects

AP Access Point

API Application Programming Interface

AS Associacao Segura - Security Association

CCS Change Cipher Spec Protocol

CORBA Common Object Request Broker Architecture

CV comunicacao por vizinhanca

DHCP Dynamic Host Configuration Protocol

DoS Denial of Service

DT Distribuicao de Tıquete

EAI Enterprise Application Integration - Integracao de Aplicacao de Empresa

EAP Extensible Authentication Protocol

EE Entidade Embarcada

EE Entidade autonoma Embarcada

Ei Entidade i

EM Entidade Movel

Page 13: Um Modelo de Gerência de Segurança para Middleware Baseado

EMi Entidade Movel i

EPC Electronic Product Code

EPFL Escola Politecnica de Lausane

ESB Enterprise Service Bus - Canal de Servico de Empresa

ESP Encapsulation Security Payload

FTS Federal Tuple Space

GIOP General Inter ORB Protocol

GPRS General Packet Radio Service - Servico de Radio de Pacote Geral

GPS Global Positioning System

GRSec Gerenciadores Remotos de Seguranca

GSM Global System for Mobile Communications

HLA Home Location Agent

IBM International Business Machine

ID Identity

IDEMIX Identity Mixer

IDL Interface Definition Language

IKE Internet Key Exchange

IEEE 802 Institute of Electrical and Electronics Engineers

IETF International Engineering Task Force

IIOP Internet, Inter - ORB protocol

IP Internet Protocol

IPSec Internet Protocol Security

IPv6 Internet Protocol version 6

ITS Interface Tuples Space - Interface do Espaco Tuples

Page 14: Um Modelo de Gerência de Segurança para Middleware Baseado

JMS Java Message Service

JSP Java Server Pages

LDAP Lightweight Directory Access Protocol

Lime Linda in a Mobile Environment

LS Servico de localizacao

LSA Laboratorio de Sistemas Abertos

MOM Message Oriented Middleware

M2M Machine to Machine

MANET Mobile Ad - Hoc Network

MGCP Mıdia Gateway Control Protocol

OFTA Observatoire Francais des Techniques Avancees

OMA Object Management Architecture

OMG Object Management Group

ONU Organizacao das Nacoes Unidas

ORB Object Request Broker

P2P Peer to Peer

PCS Departamento de Engenharia de Computacao e Sistemas Digitais

PDA Personal Digital Assistant

PET Privacy- Enhancing Technologies

PKI Public Key Infrastructure

QoS Qualidade de Servicos

RA Realidade Aumentada - Augmented Reality

RFID Radio Frequency Identification

RM Enhanced Reality - Realidade Virtual Melhorada

Page 15: Um Modelo de Gerência de Segurança para Middleware Baseado

RMI Remote Invocation

RTP Real Time Protocol

RV Realidade Virtual

SAD Security Association Database

SAMU Servico de Atendimento Movel de Urgencia

SDK Software Development Kit

SFTP Secure File Transfer Protocol

SIP Session Initiation Protocol

SMIB Security Management Information Base

SMS Short Message Service

SPD Sistema Puramente Difuso

SPD Security Policy Database

SPI Security Parameter Index

SSH Secure Shell

SSH-AUTH Secure Shell Authentication

SSH-CONN Secure Shell Connection

SSH-TRANS Secure Shell Transport

SSL Secure Socket Layer

SSL/TLS Security Socket Layer/ Transport Layer Security

SSO Single Sign On

TCP/IP Transmission Control Protocol/Internet Protocol

TLS Transport Layer Security

UDP User Data Protocol

URI Uniform Resource Identifier

Page 16: Um Modelo de Gerência de Segurança para Middleware Baseado

VPN Virtual Private Network

WAP Wireless Application Protocol

Web World Wide Web

XACML eXtensible Access Control Markup Language

XML eXtensible Markup Language

ZC Zona de Comunicacao

Page 17: Um Modelo de Gerência de Segurança para Middleware Baseado

Sumario

1 Introducao 21

1.1 Contexto da Tese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

1.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

1.3 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

1.4 Linha de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

1.5 Estruturacao do Trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2 Computacao Difusa e Nomade 28

2.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.2 Principais conceitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.2.1 Modelo Geral da Computacao Difusa . . . . . . . . . . . . . . . . . 29

2.2.2 Arquiteturas Virtualmente Difusas . . . . . . . . . . . . . . . . . . 33

2.2.3 Arquiteturas Puramente Difusas . . . . . . . . . . . . . . . . . . . 36

2.2.4 Computacao Nomade . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.3 Aplicacoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.3.1 Aplicacoes no Mundo dos Transportes . . . . . . . . . . . . . . . . 39

2.3.2 Aplicacao Movel no Mundo de Producao Audiovisual . . . . . . . . 41

2.3.3 Aplicacoes Maquina-Maquina (M2M) . . . . . . . . . . . . . . . . . 42

2.3.4 Aplicacoes em Gestao de Frota . . . . . . . . . . . . . . . . . . . . 44

2.3.5 Aplicacoes em Telemanutencao e Acompanhamento de Bens . . . . 44

2.4 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Page 18: Um Modelo de Gerência de Segurança para Middleware Baseado

3 Middlewares para Ambientes Moveis (Mobile Middleware) 47

3.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

3.2 Middlewares Orientados a Objetos

para Ambientes Moveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

3.2.1 CORBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

3.3 MOM - Message Oriented Middleware . . . . . . . . . . . . . . . . . . . . 50

3.3.1 Especificacao JMS . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

3.3.2 Ibus//mobile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

3.3.3 WebSphere EveryPlace . . . . . . . . . . . . . . . . . . . . . . . . . 57

3.3.4 Pronto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

3.3.5 Steam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

3.4 Middlewares Baseados em Tuples . . . . . . . . . . . . . . . . . . . . . . . 61

3.4.1 Lime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

3.5 Middlewares Peer to Peer - P2P . . . . . . . . . . . . . . . . . . . . . . . . 65

3.5.1 Proem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

3.6 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4 Tecnologia sem Fio e Movel 69

4.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

4.2 Rede WLAN: 802.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

4.3 Redes Celulares Moveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

4.3.1 Elementos das Redes Celulares . . . . . . . . . . . . . . . . . . . . 71

4.4 Analise das Solucoes de Seguranca Existentes . . . . . . . . . . . . . . . . 73

4.4.1 Protocolo SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

4.4.2 Protocolo SSL/TLS . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

4.4.3 Protocolo IPSec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

4.5 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Page 19: Um Modelo de Gerência de Segurança para Middleware Baseado

5 Seguranca em Computacao Difusa e Nomade 79

5.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.2 Seguranca Relacionada a Confidencialidade e Integridade . . . . . . . . . . 80

5.3 Protecao da Privacidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

5.4 Disponibilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

5.5 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

6 Modelo Proposto: SecMobileAgent 87

6.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

6.1.1 Motivacoes para a Proposta . . . . . . . . . . . . . . . . . . . . . . 87

6.1.2 Notacao Ontologica . . . . . . . . . . . . . . . . . . . . . . . . . . 88

6.2 Arquitetura do Modelo Proposto . . . . . . . . . . . . . . . . . . . . . . . 89

6.2.1 Servicos Fornecidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

6.3 Visao de Requisitos e Visao de Analise

do SecMobileAgent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

6.3.1 Visao de Requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

6.3.2 Visao de Analise . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

6.4 Implementacao e Prototipo . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

6.5 Testes e Resultados Obtidos . . . . . . . . . . . . . . . . . . . . . . . . . . 109

7 Conclusoes Gerais 118

7.1 Contribuicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

7.2 Proposta de Continuidade . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

8 Referencias Bibliograficas 121

Page 20: Um Modelo de Gerência de Segurança para Middleware Baseado

21

1 Introducao

1.1 Contexto da Tese

Nos ultimos anos, em funcao das novas tecnologias que vem surgindo e a necessidade

de se obter uma qualidade e quantidade de informacoes indispensaveis a realizacao de

diversos servicos, tornou-se necessaria a criacao de ambientes de processamento de in-

formacoes distribuıdos. Esses ambientes oferecem e viabilizam o acesso local e remoto

as informacoes de forma transparente e homogenea para o usuario. Com isso, surgiram

problemas de distribuicao e comunicacao dificultando a interoperabilidade e a interconec-

tividade na integracao dos sistemas distribuıdos. A interconexao dos sistemas e das redes

cresceu tornando os sistemas potencialmente acessıveis por um numero de usuarios cada

vez maior e com novos perfis, possibilitando a necessidade de novos paradigmas e novos

conceitos. A computacao movel e um dos novos conceitos. Ela resulta dos avancos das

tecnologias em redes sem fio e do surgimento dos dispositivos e terminais moveis cada

vez mais populares. Um dispositivo movel e um computador de mao ou bolso tambem

conhecido como palmtop ou handhelp, por exemplo, PDA - Personal Digital Assistant,

e Smartphone: uma especie de celular acoplado a um PDA (celular inteligente). Ele

apresenta as propriedades de portabilidade, interatividade e sensibilidade ao contexto e

geralmente e dotado de varias formas de conectividade (infravermelho, bluetooth, wifi,

GSM, 3G etc. . . ). Os dispositivos moveis, alem da capacidade de comunicacao com ambi-

entes externos, podem acompanhar seus usuarios ao longo de seu percurso, (mobilidade).

As tecnologias das redes sem fio vao desde as redes de telecomunicacoes de celulares ate as

redes 802.11 sem fio: modo infraestrutura e Ad Hoc. Nos ultimos anos, essas tecnologias

e servicos moveis adquiriram maturidade, o que favorece sua adocao pelo grande publico

e mundo profissional. Essas tecnologias permitem aos usuarios, independentemente de

suas localizacoes, terem acesso as infraestruturas compartilhadas e distribuıdas. A com-

putacao movel constitui uma verdadeira revolucao que mudou a maneira dos usuarios

empregarem a ferramenta informatica. A maquina do usuario deixou de ser um simples

Page 21: Um Modelo de Gerência de Segurança para Middleware Baseado

1.1 Contexto da Tese 22

espaco confinado e estatico destinado a execucao de algumas aplicacoes; atualmente e um

verdadeiro portal para um espaco de aplicacoes e dados globalizados, em outras palavras,

um terminal ambulante interligado pela Web. O usuario, em locomocao permanente, tem

possibilidade de acessar dinamicamente os novos recursos, carregar novas aplicacoes e com-

partilhar informacoes de forma implıcita; o que pode expor a sua privacidade. Entretanto,

baseada em um conjunto de conceitos e tecnologias relativamente estaveis que permitiram

o desenvolvimento de aplicacoes inovadoras, a computacao movel, apesar da sua recente

historia, ainda apresenta muitos desafios. As solucoes dos problemas nao evoluıram e

permanecem constantes. Os problemas fundamentais sao inerentes a natureza fısica dos

ambientes moveis onde os terminais moveis possuem poucos recursos de processamento

e memoria; alem disso, devem comunicar e operar em ambientes incertos caracterizados

por uma banda passante variavel e com riscos de desconexoes. Esses desafios levaram os

pesquisadores a buscar as solucoes em diferentes domınios como: redes de computacao,

sistemas operacionais, sistemas distribuıdos e bancos de dados. Das pesquisas sobre rede,

por exemplo, derivaram novos mecanismos de enderecamento, roteamento, difusao e de

gerencia de transparencia de mobilidade. Contudo, a gerencia de seguranca ainda nao

evoluiu como deveria. Muitas pesquisas nesta area estao em andamento, mas poucos sao

os resultados obtidos.

Em sua concepcao, as redes moveis e sem fio apresentam, por natureza, dois grandes

problemas: o primeiro deles e devido a distribuicao e compartilhamento dos suportes de

transmissao, permitindo assim ameacas e possibilidade de ataques de diversos generos: in-

terrupcao de servico, interceptacao, deturpacao e remocao de informacao. O intruso pode

injetar informacoes para saturar ou danificar os dispositivos da rede. A segunda prob-

lematica e a mobilidade oferecida por essas redes, que implica em novas ameacas contra

a protecao das informacoes ligadas a arquitetura sem fio. Por exemplo, em um sistema

e-saude em ambiente movel - cenario de validacao da nossa proposta - uma colaboracao

eficiente entre medicos paramedicos e pacientes e imprescindıvel para o sucesso de uma

operacao de socorro ou resgate de vıtima. O requisito central para uma colaboracao efi-

ciente e uma comunicacao confiavel e um compartilhamento seguro dos dados e recursos.

A comunicacao Wireless precisa ser protegida contra intruso ou ameaca de Man-In-The-

Middle, para evitar a fabrica de falsos dados. Os mecanismos de seguranca destinados

as redes moveis devem considerar a mobilidade dos usuarios sem fio sem prejudicar a

qualidade de servico e o desempenho da rede. A maioria das redes moveis nao aplica em

seus mecanismos de seguranca a autenticacao mutua entre seus dispositivos. Isso permite

abertura para ataques do tipo Man-In-The-Middle. A ausencia da integridade dos dados

Page 22: Um Modelo de Gerência de Segurança para Middleware Baseado

1.1 Contexto da Tese 23

durante a fase de assinatura permite ataques do tipo DoS (Denial of Service). Nos ul-

timos anos muitos trabalhos e esforcos foram feitos para alcancar solucoes de seguranca

para redes com infraestrutura fixa. Apesar da diversidade dessas solucoes, elas ainda sao

limitadas ou genericas e respondem de forma insuficiente as necessidades especıficas das

aplicacoes de comunicacao em ambientes moveis.

Os middlewares destinados aos ambientes moveis tais como: Wireless CORBA [OMG,

2008] [PALIVAN; DINU, 2005], Ibus//Mobile [SOFTWIRED. 2007], Pronto [YONEKI;

BACON, 2006 ] [PRONTO, 2003], WebSphere EveryPlace [WEBSPHERE, 2007], Steam

[RENE; VINNY, 2003], Lime [MURFPHY et al, 2007 ] e tantos outros abordados no

capıtulo 3 permitem uma melhor adaptacao a natureza dos ambientes moveis e as neces-

sidades das aplicacoes. Entretanto, estes middlewares preocupados com a certeza do seu

funcionamento e seu desempenho pouco abordam, a questao da seguranca ou a deixam em

segundo plano. Esta constatacao feita por PAROUX e DEMEURE (2007) nos motivou a

propor uma solucao de seguranca flexıvel.

Certa antipatia frente as novas tecnologias se desenvolve em grande parte do publico

e usuarios da computacao movel, principalmente pelo temor de ataques a privacidade. E

preciso entao levar em conta essa preocupacao na concepcao de novas aplicacoes integrando

de forma eficiente tecnologias de protecao da privacidade (PET,Privacy-Enchancing Tech-

nologies). Particularmente, quando se trata da computacao difusa essa inquietacao e

verdadeira em razao da multiplicacao de dispositivos contendo importantes informacoes

pessoais. Com base nessa preocupacao, o modelo de gerencia de seguranca proposto nesta

tese foca esse assunto, empregando tecnicas de gestao de identidades virtuais, comunicacao

e acesso anonimos a servicos. A literatura em geral comenta a protecao da privacidade

[CDFUE, 2000] [ONU, 1998] [CHAUM, 1998]. [ISMS2003, 2003] [ISO/IEC15408, 2005],

mas a sua implementacao em sistemas de informacao para ambiente movel ainda nao e

conclusiva.

Os sistemas de computacao movel envolvendo mobilidade, tecnologias heterogeneas

e contextos dos usuarios oferecem um amplo tema de pesquisa na area da seguranca. A

seguranca e a disponibilidade de aplicacoes e servicos sao condicoes necessarias a aceitabil-

idade da computacao movel pelo grande publico. Como pretendemos validar os conceitos

do modelo de gerencia de seguranca proposto em uma aplicacao de e-saude, e importante

ressaltar a necessidade de ambientes eletronicos confiaveis e seguros. As organizacoes

de saude, com o desenvolvimento das tecnologias da informacao e de comunicacao, es-

tao interessadas em utilizar essas novas tecnologias para apoiar, expandir ou aumentar a

Page 23: Um Modelo de Gerência de Segurança para Middleware Baseado

1.1 Contexto da Tese 24

qualidade dos cuidados e servicos aos pacientes [CELLER; LOVELL; BASILAKIS, 2003;

CHAU; HU, 2004]. As principais aplicacoes incluem a e-saude. A e-saude e uma disciplina

emergente que envolve o uso da informatica medica e das redes de telecomunicacoes. Ela

busca fornecer infraestruturas eletronicas de saude publica para reforcar a colaboracao

entre os profissionais medicos e associados envolvidos. Num amplo sentido, a e-saude nao

caracteriza apenas o apoio da tecnologia, mas tambem um estado de espırito, uma atitude

para a solucao de problema da saude publica atraves de uma aproximacao global, via rede,

com o uso de plataformas integradas de colaboracao em nıveis locais regionais e mundiais

[OFTA, 2007]. Os benefıcios da e-saude segundo [EYSENBACH, 2006] podem ser:

• Eficacia nos tratamentos: aumentar a eficiencia reduzindo custos, isso e, re-

duzir a duplicacao dos atos durante o diagnostico, compartilhar de forma eficiente

a informacao colocando o paciente no centro do processo;

• Melhor qualidade dos tratamentos: alem da reducao de custos, uma melhor

colaboracao e utilizacao das tecnologias podem melhorar a qualidade do tratamento;

• Paciente melhor informado: colocar a disposicao do paciente e seus proximos o

banco de dados medical, os resultados de seus exames e os diagnosticos de seus medi-

cos, permitindo uma melhor escolha da terapia (metodos, medicos, centro hospitalar

etc...);

• Nova relacao entre paciente e servico de saude: onde as decisoes sao tomadas

de forma conveniada e bilateral;

• Ampliacao da esfera dos servicos da saude: eliminando os problemas de dis-

tancia e escassez de profissionais especializados.

Alem desses benefıcios, sao necessarias para o respeito e garantia da privacidade e

a qualidade de servico: infraestruturas seguras e confiaveis que preservem a integridade

e confidencialidade na transacao de informacao do paciente. Um sistema de saude, por

exemplo, SUS - Sistema Unico de Saude, e muito sensıvel a fraudes, comportamentos

discriminatorios em relacao aos pacientes, e nao respeito a privacidade. As informacoes

medicas sao extremamente sensıveis, portanto elas devem ser protegidas. No contexto

distribuıdo (rede de comunicacao ad hoc) essa protecao se torna muito mais importante.

O modelo de gerencia de seguranca proposto e uma resposta a essa exigencia e demonstra

o carater social da nossa motivacao.

Page 24: Um Modelo de Gerência de Segurança para Middleware Baseado

1.2 Objetivos 25

Os middlewares moveis existentes quase nao tratam da questao de seguranca; muitos

deles estao em fase experimental ou pesquisas universitarias, sendo assim, a questao da

seguranca e um campo de pesquisa de muitos desafios.

1.2 Objetivos

Com base nas motivacoes apresentadas na secao 1.1, o objetivo geral desse trabalho e

propor - no ambito da gerencia de seguranca e cooperacao de aplicacoes em sistemas dis-

tribuıdos moveis - um modelo de gerencia de seguranca para middlewares moveis baseados

em tuple que implementa um mecanismo de autenticacao mutua, de deteccao de intruso,

controle de acesso a recursos compartilhados; garantir a preservacao da privacidade atraves

de anonimato e pseudonimo e, sobretudo, assegurar a disponibilidade de servicos. Essa

proposta busca ter as seguintes caracterısticas:

i. Facil de implementar e operar;

ii. Flexıvel;

iii. Leve, devido a escassez de recursos dos dispositivos moveis.

Na famılia dos middlewares moveis baseados em tuple, o modelo Lime [MURFPHY

et al, 2007]; e uma referencia; ele fornece mecanismo de alto nıvel para desenvolvimento

de aplicacoes caracterizadas pela mobilidade logica e fısica. No atual estagio do seu

desenvolvimento, o Lime e vulneravel. Os dispositivos e agentes que usam esse middleware

sao sujeitos a ameacas de intruso e malicioso. Faltam mecanismos de tolerancia a falha

e de gerencia de seguranca. O modelo de seguranca proposto neste trabalho tem como

objetivos especıficos:

a. Suprir parte da vulnerabilidade detectada no Lime;

b. Implementar mecanismos adicionais: PET (Privacy-Enhancing Technologies) para

a protecao da privacidade dos usuarios do ambiente movel;

c. Alem do PET, procurou-se acrescentar servicos opcionais de gerencia de segu-

ranca para sistemas e-saude. Essas opcoes nao transgridem as especificacoes iniciais

definidas no modelo Lime;

d. Integrar o modelo proposto a um sistema e-saude em ambiente nomade e difuso.

Page 25: Um Modelo de Gerência de Segurança para Middleware Baseado

1.3 Metodologia 26

1.3 Metodologia

Para alcancar estes objetivos foi aplicada a seguinte metodologia:

• Estudo da computacao nomade e difusa: dois paradigmas emergentes que

tem como principal objetivo assistir aos usuarios em suas vidas cotidianas.

Fornecer aos usuarios moveis acesso sem fio aos sistemas existentes em

infraestruturas fixas permitindo a integracao e cooperacao dos objetos e

dispositivos moveis para uma computacao onipresente, livre e intuitiva.

Este estudo busca entender o paradigma emergente da computacao difusa

e situar o contexto da nossa pesquisa dentro de um ambiente movel com

aplicacoes de carater implıcito e espontaneo.

• Estudo dos diferentes middlewares para ambientes moveis existentes, suas

capacidades de enfrentar o desafio da mobilidade e seguranca. O obje-

tivo deste estudo e definir a abrangencia e o escopo do trabalho, buscar

uma referencia solida para a nossa proposta. Tambem justificar que um

middleware distribuıdo, alem das funcionalidades classicas e das solucoes

que ele proporciona aos problemas da comunicacao, da mobilidade dos

usuarios e dos recursos limitados das maquinas deve se preocupar com a

gerencia de seguranca.

• Analise e consideracoes sobre as solucoes de seguranca existentes fo-

cando os protocolos: SSH – Secure Shell ; SSL/TLS – Secure Socket

Layer/Transport Layer Security e IPSec – Internet Protocol Security, o

modelo de seguranca Java, as especificacoes de seguranca definidas pelo

OMG (Object Management Group) e a questao da seguranca relacionada

a computacao nomade e difusa.

• Verificar a viabilidade da aplicacao das proposicoes atraves da validacao

do modelo proposto em um sistema e-saude em ambiente nomade e difuso.

1.4 Linha de Pesquisa

O Laboratorio de Sistemas Abertos (LSA) possui interesse, dentre outros assuntos,

em seguranca de sistemas distribuıdos. Este assunto e bastante relevante no contexto

atual da convergencia e Qualidade de Servicos (QoS) em sistemas distribuıdos moveis

e heterogeneos. A seguranca e a privacidade tornam-se um requisito imprescindıvel em

Page 26: Um Modelo de Gerência de Segurança para Middleware Baseado

1.5 Estruturacao do Trabalho 27

todos os tipos de aplicacoes. O trabalho descrito nessa tese esta dentro de um novo

escopo abordando a questao da seguranca e integra-se com as atividades do laboratorio

e do curso de Pos-Graduacao do PCS (Departamento de Engenharia de Computacao e

Sistemas Digitais).

A contribuicao deste trabalho e: i. Suprir uma parte do problema de seguranca

observado no modelo Lime (um middleware de referencia caracterizado pela mobilidade

logica e fısica), ii. Adicionar ao modelo Lime um mecanismo de protecao a privacidade

(estado da arte da seguranca em ambiente movel), iii. Acrescentar ao modelo servicos

opcionais de gerencia de seguranca para sistemas e-saude.

1.5 Estruturacao do Trabalho

Este trabalho e dividido em sete capıtulos. O capıtulo 1 apresenta a introducao onde

sao explicados a motivacao e os objetivos do trabalho. No capıtulo 2 e apresentada a

computacao difusa (traducao do termo ubiquitous computing) e a computacao nomade

(nomadic computing), sua contribuicao na vida cotidiana de seus usuarios, as razoes da

sua emergencia, os principais conceitos: a nocao do contexto, do implıcito e a relacao

entre o real e o virtual. Tambem e abordada a questao da seguranca relacionada a

computacao difusa. O objetivo deste capıtulo e permitir a compreensao do contexto

do trabalho. O capıtulo 3 apresenta uma visao geral das tecnologias de middlewares

para ambientes moveis focando as solucoes e os objetivos a serem alcancados. O estudo

classifica esses middlewares em funcao de suas arquiteturas e os modelos de distribuicao

adotados (invocacao de objeto remoto, passagem de mensagens, tuple e peer to peer).

Nos capıtulos 4 e 5 sao abordados os conceitos fundamentais das tecnologias moveis e sem

fio, o estado da arte das pesquisas e solucoes de seguranca adaptadas as redes moveis,

a seguranca em computacao difusa especificamente a confidencialidade, integridade e a

protecao da privacidade. O capıtulo 6 trata do modelo de gerencia de seguranca proposto:

a arquitetura, a descricao dos servicos, a visao de requisitos e analise, a implementacao e

os resultados obtidos. E por fim, o capıtulo 7 apresenta as conclusoes e as propostas de

continuidade.

Page 27: Um Modelo de Gerência de Segurança para Middleware Baseado

28

2 Computacao Difusa e Nomade

2.1 Introducao

A computacao movel e um termo difıcil de ser definido. Ela pode ser representada

como um novo paradigma computacional que permite ao usuario o acesso a servicos e

aplicativos independentemente de sua localizacao, podendo, inclusive, estar em movi-

mento. As possibilidades oferecidas pelas tecnologias da computacao movel permitiram

o surgimento de dois novos conceitos [OFTA, 2007] [MEDJI, 2006]: computacao di-

fusa (traducao do termo ubiquitous computing) e a computacao nomade (nomadic

computing).

A computacao difusa foi introduzida no inıcio dos anos 90 por Mark Weiser, como

sendo a emergente da terceira geracao dos sistemas computacionais. E um paradigma

centrado no usuario que tem como principal objetivo fornecer ao usuario, da forma mais

natural, de qualquer lugar e a todo instante (all the time everywhere) o acesso a in-

formacao e servicos informaticos [WEISER, 1993]. Em outras palavras, a computacao

difusa vem para ajudar no nosso cotidiano, em nossas atividades profissionais e privadas.

E uma combinacao de nocoes de interfaces inteligentes, da informatica e redes ubıquas,

onde as interfaces inteligentes permitem uma interacao natural e amigavel o usuario com

os equipamentos digitais, considerando suas preferencias e seu ambiente. As nocoes de

informatica e de redes ubıquas referem-se a presenca oportuna e discreta dos sistemas

informaticos em toda parte da nossa vida, como por exemplo: nos lares, em espacos

publicos, nos automoveis e no trabalho. Essas nocoes sao baseadas no formalismo da

computacao movel. Diferentes tecnologias como os computadores de bolso sem fio, os

telefones inteligentes e as redes sem fio constituem a base da realizacao da computacao

difusa. A computacao difusa apresenta inumeros desafios cientıficos e tecnologicos, entre

eles: como garantir funcionamento dos sistemas, como proporcionar solucoes relativas a

mobilidade do usuario, integrar os dispositivos logicos e fısicos cada vez mais heteroge-

neos e diversificados e fornecer interfaces inteligentes. Essas exigencias mostram o carater

Page 28: Um Modelo de Gerência de Segurança para Middleware Baseado

2.2 Principais conceitos 29

altamente dinamico da computacao difusa, o que aumenta os desafios. Os sistemas da

computacao difusa devem adaptar-se a mobilidade e contextos dos usuarios, ser confiaveis

e, sobretudo, garantir a privacidade de seus usuarios. A garantia de seguranca e o en-

foque deste trabalho. O desenvolvimento de tais sistemas resultou em diferentes pesquisas

que permitiram o acesso a varias tecnologias emergentes. Apesar dos arduos trabalhos

da comunidade cientıfica tecnologica nesta area, a maioria dos problemas referentes a

computacao difusa ainda nao tem solucoes conclusivas, deve-se isto a sua natureza multi-

disciplinar que combina diferentes domınios de estudo: engenharia de software, sistemas

distribuıdos, em particular os middlewares, da interacao homem – maquina, maquina -

maquina e das redes de comunicacao [BANATRE et al, 2007]. A Computacao difusa

ainda esta longe de atingir o objetivo definido por Mark Weiser que consiste em permi-

tir ao grande publico beneficiar-se, de forma mais natural possıvel, das tecnologias de

informacao e de comunicacao.

A computacao nomade implica no uso de dispositivos portateis em conjunto com as

tecnologias de comunicacoes moveis viabilizando ao usuario o acesso aos seus dados e

informacoes, remotamente, a partir de qualquer lugar que esteja visitando. Neste caso, o

usuario se fixa em algum ponto para acessar aplicativos ou servicos de maneira remota,

permanecendo desconectado enquanto esta em transito [KARAM, 2006]. O slogan da com-

putacao nomade e anytime anywhere (de qualquer lugar a qualquer momento) que nao

deve ser confundido com all the time everywhere (de qualquer lugar a todo instante). E

importante diferenciar a computacao nomade da computacao movel. A diferenca acontece

no provimento do servico ou aplicacao durante o transito do usuario: no caso da com-

putacao movel o provimento e ininterrupto, o que nao acontece na computacao nomade.

A seguir, apresentamos de forma mais detalhada os principais conceitos da computacao

difusa.

2.2 Principais conceitos

2.2.1 Modelo Geral da Computacao Difusa

Segundo Banatre et al (2007), no seu livro Computacao difusa: conceitos e realidade,

computacao difusa e constituıda de tres principais componentes:

• Mundo real: corresponde as entidades do mundo real tais como: dispositivos, pessoas

e localizacoes;

Page 29: Um Modelo de Gerência de Segurança para Middleware Baseado

2.2 Principais conceitos 30

• Ambiente virtual ou digital: constituıdo por sistemas de informacao tais como, Web,

programas e base de dados;

• Conjunto de interfaces: estabelece a ligacao entre o ambiente real e o ambiente

virtual.

A Figura 2.1 ilustra esses componentes. O sistema de informacao (SI) reconhece o

estado do mundo real atraves da sondagem do ambiente virtual (c) que pode ser a posicao

de uma pessoa obtida por um sistema de GPS (Global Positioning System), informacoes

meteorologicas proporcionadas por sensores, o funcionamento de um dispositivo, etc. As

interfaces agem sobre o mundo real atraves do ambiente virtual (d), por exemplo, fechar

as janelas de uma casa ou subir automaticamente os vidros de um carro assim que comecar

a chover. No ambiente da computacao difusa, o usuario acessa o sistema de informacao

de maneira implıcita (b), via um computador pessoal. Considerando o carater implıcito

e o acesso a informacoes e servicos de forma natural e transparente da computacao di-

fusa, a fusao dos sistemas de informacao com o mundo real e feita atraves de interfaces

implıcitas de usuario, formando assim, um sistema implıcito de informacao.

Figura 2.1: Modelo Geral a, b: interacoes do usuario humano com o espaco de informacao

- c: sondagem do ambiente real – d: controle do ambiente real – e: interacoes fısicas do

usuario humano com o ambiente real [BANATRE et al, 2007].

a) Interfaces implıcitas de usuario: A integracao do ambiente real com o ambiente

Page 30: Um Modelo de Gerência de Segurança para Middleware Baseado

2.2 Principais conceitos 31

virtual (mundo digital) pode ser feita atraves de tres formas [FEINER et al, 1997]:

– Realidade virtual (RV): o usuario e totalmente imerso num mundo virtual que

simula um mundo real. Seus sentidos (visao, audicao, tato etc...) sao conec-

tados a dispositivos tais como: luva digital, oculos estereoscopicos, capacete

de imersao e computador, que convertem em sinais reais o mundo virtual de-

scrito no ambiente digital ou vice versa. Esta solucao e muito usada em jogos

e simulacoes militares;

– Integracao de computadores no ambiente: Neste caso, computadores especial-

izados e em miniatura sao embarcados nos objetos do mundo real (ambulancia,

radares, relogios, livros objetos domesticos). O usuario, atraves de um PDA,

interage com este mundo. Os computadores embarcados nos objetos tornam

transparentes e ricas as interacoes do usuario com o mundo real;

– Realidade Aumentada e Melhorada: Associa a realidade virtual com a inte-

gracao de computadores embarcados no ambiente. Ela consiste em estender e

melhorar as capacidades naturais do usuario a fim de facilitar sua interacao com

o ambiente fısico, de forma mais implıcita. A Realidade Virtual Aumentada

(RA, Augmented Reality) e Realidade Virtual Melhorada (RM, Enhanced Real-

ity) sao duas areas da RV que utilizam tecnologias especıficas para aumentar o

desempenho humano na realizacao de tarefas. A RA permite combinar imagens

geradas no mundo virtual com imagens do mundo real por meio de um capacete

parcialmente transparente provido de sensores. O objetivo e suplementar um

cenario real com informacoes geradas pelo computador. Os sistemas de RA

devem registrar as imagens com precisao, de forma a levar o usuario a crer que

os mundos: real e virtual ocupam o mesmo espaco [BAJURA; NEUMANN,

2005]. Um dos pontos mais importantes do uso de mundos virtuais nao e para

substituir o mundo real, mas sim completar a visao do usuario no mundo real

[ALBUQUERQUE, 99]. Um sistema de RA gera uma imagem resultante da

combinacao de uma cena real com uma cena virtual gerada por computador,

para enriquecer a cena final com informacao adicional. Nas diferentes apli-

cacoes possıveis, a RA apresentada ao usuario pode melhorar seu desempenho

na execucao de tarefas, por estender sua percepcao do mundo que ele observa

[ALBUQUERQUE, 99].

b) Sistema Implıcito de Informacao: Num sistema implıcito de informacao, as in-

formacoes sao obtidas automaticamente a partir das interacoes implıcitas das enti-

Page 31: Um Modelo de Gerência de Segurança para Middleware Baseado

2.2 Principais conceitos 32

dades do mundo real. O sistema e baseado em um conjunto de computadores moveis

capazes de trocar informacoes quando estiverem em areas proximas. O princıpio

fundamental consiste em explorar as propriedades ou atributos mensuraveis das en-

tidades existentes no mundo real como a posicao e a proximidade fısica. Em outras

palavras, o sistema de informacao implıcita consiste em medir a sensibilidade do

contexto. A sensibilidade do contexto permite saber, a partir de um conjunto de

metadados (dados que descrevem outros dados), a situacao fısica das entidades que

participam no funcionamento do sistema. Ela se baseia nas seguintes questoes:

– Onde? Indica as informacoes relativas ao espaco fısico (informacoes espaciais),

a posicao de uma entidade e um importante elemento indicador do contexto

[SCHILIT et al ]. Obter a posicao pode ocorrer por localizacao cartesiana,

topologia ou localizacao via satelite (GPS), mensurando a longitude, latitude

e altitude [RODDEN et al, 1998];

– Quando? Permite obter as informacoes relativas ao tempo (informacoes tem-

porais) tais como data, hora;

– O que/para que? E a atividade ou o estado corrente de um usuario ou de

uma entidade representada pelas caracterısticas mensuraveis que podem ser

exploradas pelo sistema. A atividade depende do tipo de entidade que pode

ser um ambiente, um usuario humano ou um dispositivo.

O contexto e uma nocao importante na computacao difusa, e atraves dele que os

aplicativos ou os sistemas percebem o estado do mundo real e, em particular a

mobilidade fısica. Pode-se definir o contexto como uma situacao da representacao do

mundo real. Existem quatro possıveis formas de exploracao do contexto [NAGAO;

REKIMOTO, 1996; RODDEN et al, 1998]:

– Adaptacao contextual [MANN, 1996]: Explora o contexto para adaptar as

restricoes ou exigencias dos ambientes moveis e facilitar a integracao de um

sistema computacional no ambiente real;

– Programacao contextual [SCHILIT et al, 1993]: sincroniza as acoes ou as ativi-

dades em funcao do contexto, ou seja, associa o contexto com as acoes a serem

disparadas;

– Pesquisa contextual de informacao: explora o contexto para buscar, selecionar

ou filtrar as informacoes. Como exemplos temos os sistemas ParcTab [SCHILIT

et al, 1995 ], Cyber GUIDE [ABOWD et al, 1997] , WebWatcher [ARM-

STRONG et al, 2005];

Page 32: Um Modelo de Gerência de Segurança para Middleware Baseado

2.2 Principais conceitos 33

– Anotacao contextual: completa a informacao por indicacoes contextuais para

facilitar uma proxima operacao de pesquisa. A indicacao pode ser a posicao

geografica, hora, identificacao da vizinhanca, por exemplo, temos o sistema

Pascoe [PASCOE, 1998].

Nos sistemas difusos existem duas famılias de arquiteturas consideradas como princi-

pais: Arquiteturas virtualmente difusas e arquiteturas puramente difusas [BANATRE

et al, 2007].

2.2.2 Arquiteturas Virtualmente Difusas

Consiste em criar um modelo logico de realidade interpretado por um sistema de

informacao. O sistema de informacao efetua entao os tratamentos associados as inter-

acoes fısicas. Por exemplo, se um sistema de navegacao deve alertar um motorista da

proximidade de um radar, nao e a presenca fısica do objeto radar que e detectada, mas

uma presenca virtual registrada no sistema de informacao do navegador. Isso quer dizer

que o sistema trabalha com um mapa virtual (base cartografica) com os objetos fısicos

previamente definidos. Distinguem-se varias vertentes desse tipo de arquitetura:

• Arquitetura de replicacao total: em todos os nos ou dispositivos moveis autonomos

o sistema de informacao e replicado. Neste caso o acesso as informacoes e facil e nao

necessita de outras infraestruturas. A base de informacao e estatica e limitada a

capacidade de armazenamento do dispositivo ou maquina embarcada. A Figura 2.2

ilustra essa situacao: cada veıculo dispoe de um dispositivo portatil movel (PDA)

que contem o sistema de informacao (ambiente virtual),

Page 33: Um Modelo de Gerência de Segurança para Middleware Baseado

2.2 Principais conceitos 34

Figura 2.2: Um exemplo de arquitetura totalmente replicada: as etapas 1, 2 e 3 acontecem

no dispositivo portatil movel [BANATRE et al, 2007].

inclusive um mapa geografico da area de movimentacao. As requisicoes de servicos,

o processamento de dados e visualizacao dos resultados sao feitos localmente no

PDA embarcado no veiculo;

• Arquitetura com sistema de informacao centralizado: Neste caso, o sistema

de informacao e remoto e nao esta integrado ou embarcado nos dispositivos moveis.

Os dispositivos acessam o sistema de informacao atraves de uma infraestrutura de

rede sem fio.

Page 34: Um Modelo de Gerência de Segurança para Middleware Baseado

2.2 Principais conceitos 35

Figura 2.3: Um exemplo de arquitetura com sistema de informacao remoto: a etapa 2

acontece em um servidor centralizado [BANATRE et al, 2007].

Por exemplo, na Figura 2.3, o veıculo em movimento consulta o sistema de infor-

macao em um servidor remoto. O processamento acontece no servidor e os resultados

encaminhados para o veıculo por meio de uma rede sem fio. Existe uma transparen-

cia de localizacao;

• Arquitetura contextual distribuıda: O sistema de informacao e fragmentado

e distribuıdo geograficamente em funcao do contexto. Por exemplo, no caso de

navegadores funcionando em telefones celulares, os celulares utilizam o sistema de

informacao de suas respectivas operadoras; o banco de dados da filial de uma em-

presa fica no servidor da filial e nao na matriz. Desta forma, o sistema de informacao

pode conter informacoes especıficas relacionadas as determinadas regioes. Existem

arquiteturas hıbridas que combinam a replicacao total com um sistema de infor-

macao remoto. Nesta situacao, e explorada localmente uma memoria cache com

dados atualizados, temporariamente, a partir de um servidor remoto. No caso da

informacao nao ser encontrada localmente, ela e solicitada ao servidor remoto. As

figuras 2.2 e 2.3 mostram os dois ambientes (real e virtual) e a mobilidade que

envolve os sistemas de computacao difusa. Nao foram apresentadas as tecnologias

de comunicacao nem o conceito de mobilidade que envolve a computacao difusa.

Page 35: Um Modelo de Gerência de Segurança para Middleware Baseado

2.2 Principais conceitos 36

Contudo, e bom ressaltar a definicao do conceito de mobilidade. Segundo ITU (In-

ternational Telecommunication Union, 2004), a mobilidade inclui a capacidade de

usar uma determinada aplicacao ou servico, sem a sua interrupcao, atraves de varias

tecnologias, permitindo o movimento entre ponto de acesso com ou sem fio.

2.2.3 Arquiteturas Puramente Difusas

O princıpio dessas arquiteturas e integrar as caracterısticas dos objetos com os pro-

cedimentos fısicos existentes, como por exemplo, o arranjo espacial dos objetos, ou suas

mobilidades fısicas, para controlar diretamente um sistema de informacao. O funciona-

mento de uma arquitetura puramente difusa depende unicamente dos objetos engajados

nas interacoes. Por exemplo, supondo um carrinho de supermercado inteligente, com a

capacidade de se comunicar com as mercadorias contidas nele (atraves de RFID: Radio

Frequency Identification), calcular automaticamente a soma e informar o preco total ao

cliente (por PDA) ou ao caixa. Neste exemplo, os objetos engajados sao o carrinho e os

produtos do supermercado. O carrinho e equipado com um sistema de percepcao capaz de

ler os precos dos produtos. O fato de colocar um produto no carrinho e sincronizado como

uma operacao de adicao e a retirada de um produto como uma operacao de subtracao. Em

sistemas com arquitetura puramente difusa, os objetos engajados na interacao se comu-

nicam quando estiverem fisicamente proximos. Estes objetos, tambem conhecidos como

entidades moveis,podem ser um robo, uma ambulancia, um humano ou qualquer objeto

do mundo real capaz de ser acoplado a um processador. Pode-se conceituar, atraves de

formula matematica (teoria dos conjuntos), associado a nocao de comunicacao por vizin-

hanca, um sistema puramente difuso como [BANATRE et al, 2007]: Seja Ei uma entidade

movel entao Ei pode ser definida como um par (EEi, EMi) onde:

• EMi: caracteriza a parte mecanica da Ei que permite a locomocao, por exemplo um

usuario humano, um automovel;

• EEi: Entidade autonoma Embarcada, e a parte de Ei que realiza a comunicacao, o

processamento e armazenamento de informacao de Ei, por exemplo um PDA, um

smart phone, notebook e netbook.

Uma EEi troca informacoes com seu EMi a partir de uma interface local. A interface

implantada na EEi define uma area de comunicacao denominada ZC(EEi). O tamanho

desta area depende da tecnologia de comunicacao: alguns metros para Bluetooth, dezenas

de metros para WiFi.

Page 36: Um Modelo de Gerência de Segurança para Middleware Baseado

2.2 Principais conceitos 37

A comunicacao por vizinhanca e o mecanismo usado para que entidades possam se

detectar e se comunicar quando elas estiverem em uma area comum. Sejam EEi e EE j,

(i 6= j)EEi detecta a presenca e se comunica com EE j quando ela estiver na zona de

comunicacao ZC(EEi), reciprocamente EE j detecta a presenca e comunica com EEi quando

ela estiver na zona de comunicacao ZC(EEi). A comunicacao por vizinhanca so existe se

EEi e EE j estiverem na interseccao ZC(EEi) e ZC(EE j). A comunicacao e dinamica em

funcao do tempo e pode ser mantida ou rompida em funcao do deslocamento de EMi e

EM j. Podemos definir uma comunicacao por vizinhanca como: CV(EEi, EE j, ti) o que

implica que no instante ti, EEi ∈ ZC(EE j) ∧EE j ∈ ZC(EEi); onde: CV(EEi, EE j, ti) e

o predicado que caracteriza a comunicacao por vizinhanca de EEi, EE j no instante ti(tempo local de EEi), assim para uma comunicacao bidirecional temos: CV(EEi, EE j,

ti)⇔ CV (EE j, EEi, ti). Uma EEi pode em um determinado instante ti manter varias

comunicacoes de vizinhancas, originando entao a criacao dinamica de um sistema de

informacao denominado SPD ou Sistema Puramente Difuso. Assim, um SPD pode ser

definido como:

SPD(EEi, ti) = {EE j/∀ j, i 6= j,CV (EEi, EE j, ti)}.

A composicao de um SPD evolui dinamicamente com o tempo, em funcao dos deslo-

camentos respectivos das entidades que o compoem. Essas entidades podem entrar e sair

do SPD, desta forma, observa-se relacoes do tipo:

SPD(EEi, ti + dti)= SPD(EEi, ti)∪{EEi} ou

SPD(EEi, ti + dti)= SPD(EEi, ti) - {EEk}

Um SPD(EEi, ti) pode desaparecer quando nao existir mais elementos de comunicacao.

O sistema de informacao de um SPD levanta a questao da gerencia de cooperacao,

seguranca de informacao e privacidade das entidades moveis envolvidas. Como controlar

o acesso as informacoes locais de uma EEi, garantir a migracao segura de uma EEi e asse-

gurar uma comunicacao confiavel entre os EEis? Este formalismo matematico do sistema

puramente difuso abre caminho para o desenvolvimento de algoritmos para protocolos de

descoberta de vizinhos e gerencia de cooperacao entre as entidades moveis, esta tese nao

aborda este assunto.

Nesta secao, foram apresentados os conceitos essenciais da computacao difusa. Foram

distinguidas duas abordagens fundamentalmente diferentes: os sistemas virtualmente di-

Page 37: Um Modelo de Gerência de Segurança para Middleware Baseado

2.3 Aplicacoes 38

fusos e os sistemas puramente difusos. Em um sistema virtualmente difuso, seu funciona-

mento nao e feito diretamente sobre as atividades reais, mas atraves de parametros ou

informacoes fornecidas por sensores. Ao contrario do sistema virtualmente difuso, em

um sistema puramente difuso os objetos ou entidades que participam do sistema sao in-

struıdos para que os procedimentos fısicos das atividades suportem automaticamente um

procedimento computacional. As arquiteturas puramente difusas permitem desenvolver

sistemas de informacao de carater implıcito e espontaneo.

2.2.4 Computacao Nomade

Os ambientes nomades sao compostos de uma parte de rede sem fio e uma parte de

rede fixa [MEDJI, 2006]. A parte sem fio e geralmente constituıda das redes de telecomu-

nicacao celular e redes locais sem fio (WLAN) como as tecnologias 802.11, Bluetooth. Elas

fornecem acesso as estacoes fixas. O slogan da computacao nomade e anytime anywhere

(em qualquer lugar a qualquer momento). Contrarios aos ambientes difusos baseados em

redes ad hoc sem fio os ambientes nomades necessitam da presenca ou acesso a uma in-

fraestrutura fixa, a natureza dos ambientes nomades pode ser adaptada a redes celulares

[MEDJI, 2006]. A mobilidade do usuario apresenta diversos desafios. O usuario durante a

mobilidade pode se encontrar fora da zona de cobertura, as conexoes podem ser perdidas

na passagem de uma celula para outra, consequentemente, as infraestruturas necessitam

de mecanismos para seguir e localizar a todo instante o usuario.

2.3 Aplicacoes

Nesta secao, apresenta-se o potencial espectro da aplicacao da computacao difusa e

nomade em varios setores da sociedade como, por exemplo: no transporte, mundo profis-

sional, industrial e domestico. Sao aplicacoes inovadoras que exploram as nocoes do con-

texto de usuario, mobilidade, as redes de comunicacao, as tecnologias WiFi e bluetooth.

Elas tem um objetivo em comum: proporcionar ao usuario servicos em qualquer lugar

e a qualquer instante. O objetivo dessa secao e ilustrar o contexto da tese, enfatizando

as aplicacoes dos principais conceitos e mostrar atraves de estudos de casos a multidisci-

plinaridade e o carater altamente dinamico da computacao difusa, e principalmente o risco

a respeito da privacidade do usuario, nisso implica a necessidade de solucoes de seguranca.

Page 38: Um Modelo de Gerência de Segurança para Middleware Baseado

2.3 Aplicacoes 39

2.3.1 Aplicacoes no Mundo dos Transportes

O “Ponto de informacao do Futuro e Servicos Moveis Contextuais para Estacao de

Trens” e um projeto do Service National de Chemin de Fer) da Franca [OFTA, 2007]. Este

projeto foi iniciado no perıodo em que chegaram ao mercado os primeiros equipamentos

Bluetooth, WiFi e da popularizacao das agendas eletronicas pessoais palmtop e pocketPC.

A ideia inicial era tirar proveito destas tecnologias no mercado para melhor servir os

clientes das estacoes de trens. O sistema consiste em um terminal de multi-interfaces

composto por:

• Um telao para a difusao de informacoes genericas tais como: tabelas de chegada e

partida dos trens, anuncios na forma textual, propagandas ao publico da estacao;

• Um monitor sensıvel ao toque (touch screen) para consulta individual das infor-

macoes sobre os trens: horarios de saıda e chegada, mapas e servicos da estacao,

acesso as linhas de metros, onibus, taxis, estacionamentos, restaurantes e hoteis

nas imediacoes da estacao, informacoes sobre a cidade: mapa das ruas, transporte

publico e dos pontos turısticos e outras informacoes praticas como meteorologia,

links de paginas, internet;

• Um sistema de videoconferencia: permite ao usuario do terminal comunicar-se re-

motamente com um funcionario da estacao para tirar duvidas ou pedir informacoes.

• Um ponto de acesso WiFi/Bluetooth, para acesso sem fio ao sistema de informacao

do SNCF, para usuarios equipados de terminais moveis.

Descricao Funcional

Uma plataforma baseada em tecnicas de geolocalizacao WiFi e servicos inteligentes,

contextualizados e personalizados atraves de programa cliente instalado no computador

de mao do usuario nomade que permite conectar-se automaticamente a plataforma de

servicos, quando ele esta na zona de cobertura. Os servicos aparecem automaticamente

na sua tela, prontos para serem usados. Os servicos variam em funcao do perfil do usuario

(viajante, agente da estacao, deficiente fısico), do local da estacao onde ele se encontra, da

data, da hora e do dia. Alguns exemplos desses servicos sao: servico de recepcao person-

alizada: detecta a chegada de um cliente na estacao, deseja-lhe as boas vindas de forma

personalizada, por exemplo, “bom dia fulano de tal” informando a hora de partida do seu

trem preferido; notificacao de presenca geolocalizada: permite enviar aos recepcionistas e

Page 39: Um Modelo de Gerência de Segurança para Middleware Baseado

2.3 Aplicacoes 40

guardas da estacao mensagens de alerta ou de ajuda aos usuarios em caso de agressao, mal

estar, presenca de pessoa deficiente ;procura geolocalizada de servicos ou lojas: apresenta

com precisao, atraves de representacao grafica, em funcao da posicao atual do usuario, a

localizacao de um servico ou uma loja dentro da estacao. Uma aplicacao guia o usuario de

forma interativa ate o local em questao. Durante a viagem, outros servicos sao oferecidos

tais como: jogos interativos on-line e relacionamento entre os viajantes.

Consideracoes

As conclusoes relativas a este projeto mostram que o deslocamento dos clientes nas es-

tacoes ate os guiches de atendimento para buscar as informacoes ou orientacoes nao sera

mais necessario. Com o ponto de informacao do futuro, e a informacao que vai ate o

usuario atraves do seu terminal movel e nao mais o usuario que vai em busca da in-

formacao; trata-se do conceito de hotspot WiFi. Este projeto demonstra um alto grau

tecnico de difusao da informacao. O conteudo da informacao e especıfico e adaptado

ao seu usuario. Isso implica a necessidade de mecanismos capazes de adaptar as infor-

macoes as caracterısticas do dispositivo movel do usuario como, por exemplo: formato

do monitor, capacidade de processamento, resolucao de imagem, entre outras. O projeto

permite demonstrar a pertinencia da utilizacao de mecanismos de localizacao automatica

de servicos, de forma inteligente e simples, sem a necessidade do usuario precisar config-

urar seu dispositivo movel. O numero de terminais nomades cresce a cada dia e sao cada

vez mais usados. Eles se tornam interfaces “faz tudo” para os usuarios. Na comunidade

cientıfica, fala-se de “companheiro movel” ou de “porteiro virtual”; isso sao atributos que

descrevem os equipamentos que vao interagir com os elementos presentes no ambiente do

usuario a fim de facilitar-lhe a vida. A diversidade e heterogeneidade dos dispositivos

geram problemas de inconsistencia e incompatibilidade, o que resulta na necessidade de

redes hıbridas e a coexistencia de varias e diferentes tecnologias de acesso ou padroniza-

cao das tecnologias utilizadas. A possibilidade de propor aos usuarios das estacoes uma

opcao de videoconferencia com um operador distante e julgada muito importante, princi-

palmente no caso de pequenas estacoes que nao dispoem de recursos humanos suficientes.

E uma forma paradoxal de humanizar os terminais de informacoes, gracas a introducao de

interface homem-homem atraves da maquina. Essas aplicacoes demonstram a necessidade

de considerar o contexto (textualizacao) e o perfil (personalizacao) do usuario a fim de

lhe fornecer servicos inteligentes e diferenciados. A ideia e proporcionar servicos que se

adaptam as necessidades e realidades do usuario. Em outras palavras, servicos centrados

Page 40: Um Modelo de Gerência de Segurança para Middleware Baseado

2.3 Aplicacoes 41

no usuario.

Entretanto, a contextualizacao e personalizacao apresentam um risco social: o risco

de ultrapassar os limites do respeito da privacidade, para isso sao necessarios modelos de

seguranca mais abrangentes onde sera imprescindıvel explicar ao usuario de que formas

suas informacoes pessoais serao utilizadas e como elas serao protegidas. Essa situacao

levanta a questao da seguranca da informacao (confidencialidade e integridade) em ambi-

entes moveis. A geolocalizacao WiFi e um parametro pertinente nas aplicacoes moveis,

porem ela ainda nao esta muito precisa. Em ambientes muito dinamicos como nas estacoes

muito movimentadas, o raio de alcance cai, o que nao permite a realizacao de aplicacoes

de alta definicao como, por exemplo, guiar um deficiente visual. Portanto, e necessario

o desenvolvimento de novas tecnicas de geolocalizacao. A computacao difusa nao deve

concentrar-se apenas em usuarios humanos. A maior revolucao deve vir das interacoes

diretas entre as maquinas cada vez mais inteligentes.

2.3.2 Aplicacao Movel no Mundo de Producao Audiovisual

As novas tecnologias de compressao, distribuicao de dados e de terminais graficos

com mais recursos de processamento, tornam possıvel a popularizacao da TV de alta

definicao (Hight Definition), a TV movel e seus usos nomades. O Brasil esta nesta nova

era buscando padroes e novas tecnologias para levar a TV digital a milhares de lares. A

mutacao implica uma progressiva aproximacao da industria de conteudo, da teledifusao

e dos operadores de telecomunicacao. O desenvolvimento de infraestruturas Internet de

alta velocidade e o acesso progressivo dos usuarios tornam possıvel a transmissao de con-

teudos multimıdia (integracao de imagem, audio, vıdeo e texto) na internet e oferece uma

perspectiva da TV e cinema digital. Os consumidores de aplicacoes audiovisuais apreciam

os produtos com mais valores interativos, melhor resolucao de imagem. Ha possibilidade

de acesso ao conteudo a partir do seu terminal fixo ou movel e de transferir, de maneira

transparente e segura, os conteudos de um terminal para outro. Essa exigencia do con-

sumidor final tem um impacto na linha de producao do fornecedor. Varias empresas, como

Thompson e Sony, trabalham com tecnologias inovadoras e apostam na computacao difusa

para producao e gestao de conteudo audiovisual. Por exemplo, a producao audiovisual

em um ambiente movel: o evento e a cena sao capturados onde eles estao ou onde esta

acontecendo, mas analisados e tratados (aperfeicoamento, efeito especiais, transformacao

de objeto) de forma distante a partir de outro ambiente. Uma ilustracao e o acompan-

hamento e analise automatica de um evento esportivo: jogo de futebol. Os objetivos sao

Page 41: Um Modelo de Gerência de Segurança para Middleware Baseado

2.3 Aplicacoes 42

diversos, por exemplo, analisar a cena para melhorar a qualidade das imagens. Revelar as

posicoes dos jogadores e produzir resultados estatısticos que podem ajudar nas tomadas de

decisoes em tempo real. Um segundo exemplo e a producao audiovisual para um mundo

movel. Neste caso, trata-se de transmitir um unico conteudo audiovisual a um parque

de terminais nomades em constante movimento e heterogeneos em termos de tamanho de

memoria, resolucao e capacidade de visualizacao, entretanto, a adaptacao automatica do

conteudo a esses terminais e imprescindıvel para poder alcancar um grande numero de

usuarios. Porem, a questao mais preocupante e desafiadora e a seguranca. Sera que o

conteudo audiovisual que chega ao usuario final e autentico, nao sofreu nenhuma alteracao

de um intruso malicioso? Na tele medicina uma imagem medica violada por um malicioso

pode provocar um diagnostico errado, comprometendo a vida do paciente.

Consideracoes

Diante da mobilidade de uma producao audiovisual ininterrupta, do desafio da mobilidade

de distribuicao de conteudos em grande escala e do publico alvo cada vez maior; os sistemas

de producoes audiovisuais devem proporcionar: mecanismos de armazenamento eficientes,

ferramentas de manipulacao e atualizacao de conteudo em tempo real, infraestruturas de

comunicacao que permitam a manipulacao remota dos conteudos, mecanismos de busca,

monitoramento e controle de acesso eficiente.

Outros grandes desafios sao: tolerancia a falha: em caso de falha, o sistema como

todo deve continuar funcionado mesmo em modo degradado. Isto e, o conjunto dos ele-

mentos da infraestrutura do sistema deve autoconfigurar-se para assegurar a continuidade

dos servicos; controle de acesso: perante o valor e a sensibilidade da informacao, seu

acesso durante a producao, a manipulacao e a difusao devem ser restritos a usuarios iden-

tificados e autenticados, o que implica mecanismo de seguranca, servicos de integridade e

confidencialidade de dados.

2.3.3 Aplicacoes Maquina-Maquina (M2M)

M2M (Machine to Machine) e a associacao das tecnologias de computacao e da comu-

nicacao, atraves de objetos inteligentes e comunicantes que interagem sem a intervencao

humana, com o sistema de informacao de uma empresa ou uma organizacao. [NABET;

RIZCALLAH; KAPLAN, 2006] A disciplina M2M pode ser aplicada em varias areas, se-

gundo [NAB 06] existem seis principais categorias de aplicacao: gestao de frotas, gestao de

cadeia de producao e fornecimento (suply chain management), televigia ou telemonitora-

Page 42: Um Modelo de Gerência de Segurança para Middleware Baseado

2.3 Aplicacoes 43

mento, monitoramento de pessoas e seus patrimonios, telepagamento automatico, gestao

automatizada aplicada a habitacao, para conforto e seguranca. Os monitoramentos sao

baseados em telemetria. A M2M e uma area promissora com a perspectiva de conectar

mais de um trilhao de maquinas [TROELSEN; SECCHI, 2008] um numero um pouco

exagerado, mas que merece atencao. Essa meta exige novos paradigmas e novos protoco-

los de comunicacao como, o IPV6 (Internet Protocolo Version 6 ). Atualmente, estamos

evoluindo progressivamente para uma convergencia das tecnologias de telecomunicacoes

muito heterogeneas.

Em um sistema M2M e possıvel encontrar dispositivo de telecomando para o usuario

humano interagir localmente ou remotamente com a maquina. Os principais elementos de

uma maquina comunicante sao: sensores ou detectores e acionadores. A principal funcao

do sensor e informar o sistema das interacoes da maquina com seu ambiente.

A arquitetura geral de um sistema de aplicacoes M2M e composta de maquinas ou

objetos a gerenciar ou a fazer interagir entre si, atraves de uma infraestrutura de comu-

nicacao associada a um sistema de informacao que coleta, processa e apresenta dados aos

usuarios.

Consideracoes

O mercado de sensores autonomos sem fio esta crescendo rapidamente. O crescimento

anual repartido nas aplicacoes comerciais pode ser visualizado da seguinte forma [NA-

BET; RIZCALLAH, 2006]: 26% nos automoveis, 17% nas estruturas de avioes, navios,

edifıcios, 28% na industria, 12% na eletronica de massa e 17% na medicina e outros se-

tores. O sistema M2M e muito aplicado em carros onde em media 100 sensores sao usados

por veıculo.

As redes de sensores exigem confiabilidade e seguranca. As maquinas podem se comu-

nicar por RFID ou via satelite. A mobilidade e os ambientes de acesso imprevisıvel das

maquinas fazem de suas identificacoes e autenticacoes um problema de difıcil solucao. A

universalizacao da identificacao das maquinas nomades e um problema mundial; existem

varios paradigmas para solucionar o problema. Um deles e a identificacao universal onde

cada maquina ou objeto recebe uma matrıcula de identificacao unica em nıvel mundial:

EPC (Electronic Product Code). O segundo paradigma e o enderecamento atraves do

IPV6. O sistema IPV6 define uma identificacao para as maquinas conectadas a internet.

O T-engine Forum propoe uma arquitetura de sistemas embarcados, framework de segu-

ranca (e-TRON) e um sistema de identificacao universal (ubiquitous ID center), com o

Page 43: Um Modelo de Gerência de Segurança para Middleware Baseado

2.3 Aplicacoes 44

objetivo de abordar as questoes de identificacao de localizacao e de autenticacao. Uma

aplicacao M2M pode ser implementada de diversas maneiras, em funcao dos criterios a

otimizar, das condicoes de exploracao e da maturidade das tecnologias empregadas.

2.3.4 Aplicacoes em Gestao de Frota

Tem como objetivo controlar, regular ou tracar e planejar a frota de veıculos de uma

empresa. Os meios de comunicacao usados sao satelite, GSM (Global System for Mobile

Communications - Sistema Global para Comunicacoes Moveis) ou RFID, como exemplos

temos:

• Tacografo para frota de caminhoes de empresa de transporte [FRANCE;

TELECOM, 2005]: O sistema funciona com chips de identificacao dos motoristas.

Os parametros de velocidade, tempo de percurso etc, sao armazenados na caixa

preta (tacografo). Um controle do caminhao e feito a cada 3 meses. Por obrigacao

legal, um modulo de GPRS (General Packet Radio Service - Servico de Radio de

Pacote Geral) permite encaminhar os dados da caixa preta para diferentes servidores

a disposicao dos responsaveis e fiscais. O objetivo da aplicacao e controlar nas

estradas de todo o territorio europeu a conduta dos motoristas.

• Gestao de frota de taxis dos aeroportos de Paris [ORANGE, 2006]: O sistema

usa Tags RFID similares aos utilizados nos pedagios rodoviarios. Uma zona de

espera chamada zona tampao e criada a uma distancia do terminal de embarque

dos clientes. Detectores controlam a chegada dos taxis nestas zonas e controlam

a passagem dos taxis da zona tampao para o terminal de embarque. O objetivo e

regular o fluxo de utilizacao da zona de tampao a fim de evitar os engarrafamentos

nas plataformas de taxi dos aeroportos.

2.3.5 Aplicacoes em Telemanutencao e Acompanhamento de Bens

Tem como objetivo o monitoramento e controle de bens atraves de sensores e Modem

de redes de celulares; como ilustracoes tem:

• Manutencao apos venda de aquecedores [ORANGE, 2006]: os aquecedores sao

dotados de um modulo de diagnostico e de GPRS. O modulo de diagnostico pode

enviar informacoes sobre o estado da maquina ou receber comandos do fabricante.

O objetivo e informar o profissional de manutencao em tempo real dos incidentes e

Page 44: Um Modelo de Gerência de Segurança para Middleware Baseado

2.4 Conclusao 45

eventuais manutencoes remotas. Se ha necessidade de deslocamento do profissional,

entao ele sabe o problema e as pecas de reposicao necessarias. Isso poupa o cliente de

solicitar manutencoes e preocupacoes de quebras inesperadas. O cliente nao precisa

mais ter essa preocupacao. O proprio produto faz de forma implıcita ao usuario, a

solicitacao de manutencao.

• Manutencao de motores de bombas em uma central nuclear [AUTOMA-

TION, 2000]: uma rede de sensores de temperaturas que funciona com a tecnologia

IEEE 802.15.4 efetua medidas que sao enviadas a um servidor que avisa os tecnicos

sobre comportamentos anormais dos motores. O objetivo e evitar a paralisia total

de um motor, proporcionando manutencoes antecipadas.

2.4 Conclusao

A visao da computacao difusa e de uma computacao onipresente e transparente (pre-

sente em todo lugar, sempre disponıvel e invisıvel para o usuario). Sua missao e simplificar

a vida do usuario atraves de um acesso a servicos, informacoes e dados de maneira mais

inteligente e personalizados. Isso se torna possıvel atraves de uma interacao mais simples

do usuario com o resto do mundo, simplificar as interacoes implica em desenvolvimento

de mecanismos, protocolos, redes para multitecnologias, novos terminais e IHM (Inter-

face Homem - Maquinas). Uma melhor consideracao do contexto do usuario (localidade,

data, hora, geolocalizacao precisa), implica dispor de rede de captadores e interacao entre

as maquinas. A computacao difusa nao deve concentrar-se unicamente em usuarios hu-

manos. A maior revolucao deve vir das interacoes diretas entre as maquinas cada vez mais

inteligentes. O carater implıcito, a transparencia das diversas tecnologias envolvidas, a

contextualizacao e personalizacao contribuem com um risco social para o usuario: o risco

de ultrapassar os limites do respeito da privacidade do usuario.

Sao necessarias tecnologias de middleware para enfrentar esses desafios. Neste capı-

tulo, apresentamos o que e a computacao nomade e difusa, sua contribuicao na vida

cotidiana dos seus usuarios, as razoes da sua emergencia, os principais conceitos: a nocao

do contexto, do implıcito e a relacao entre o real e o virtual. A questao da seguranca e um

grande desafio; nos estudos de caso apresentados neste capıtulo, os autores nao tratam

desta questao. A seguranca foi relegada a um segundo plano. O sistema de computacao

difusa levanta a questao da gerencia de cooperacao, seguranca de informacao e privacidade

das entidades moveis envolvidas. Como controlar o acesso as informacoes locais de uma

Page 45: Um Modelo de Gerência de Segurança para Middleware Baseado

2.4 Conclusao 46

EEi, garantir a migracao segura de uma EEi e assegurar uma comunicacao confiavel entre

os EEis? Nesta tese, propomos um modelo de gerencia de seguranca que proporciona

seguranca e privacidade nos ambientes nomade e difuso.

Page 46: Um Modelo de Gerência de Segurança para Middleware Baseado

47

3 Middlewares para AmbientesMoveis (Mobile Middleware)

3.1 Introducao

Um middleware e uma camada de programas situada entre o sistema operacional e

os aplicativos de usuarios. O objetivo principal dessa camada e mascarar a heterogenei-

dade do sistema distribuıdo, permitir disponibilidade de recursos de forma transparente e

fornecer ao programador um modelo de programacao conveniente [COULOURIS; DOL-

LIMORE; KINDBERG, 2007, NGUESSAN, 2000]. O middleware e representado por

processos ou objetos interagindo entre si. Os objetos ou processos implementam servicos

de comunicacao e suporte de compartilhamento de recursos para aplicativos distribuıdos.

Esses servicos sao importantes, especialmente para integrar os ambientes heterogeneos

tornando o sistema distribuıdo coerente e homogeneo de forma transparente aos usuarios.

Os middlewares para ambientes moveis sao modernos, alem das funcionalidades clas-

sicas dos middlewares fixos fornecem a solucao dos problemas especıficos relacionados a

variacao da qualidade de servico (QoS) da rede, a mobilidade dos usuarios e dos recursos

limitados das maquinas. Enfrentam tambem os desafios ligados as topologias totalmente

dinamicas descentralizadas das redes e fornecem as aplicacoes uma visao mais detalhada

dos nıveis das camadas mais baixas, permitindo assim as aplicacoes tomar decisoes e

modificar seus comportamentos em funcao do contexto de execucao. Os middlewares

moveis sao classificados em quatro tipos [MEDJI, 2006]: middleware orientado a objetos,

middleware orientado a mensagens, middleware baseado em tuples e middleware ponto a

ponto (P2P – Peer to Peer). As tecnologias middlewares revelam-se cada vez mais como

ingredientes indispensaveis para os sistemas moveis. Elas devem considerar os problemas

especıficos dos ambientes moveis.

Este capıtulo apresenta uma visao geral das tecnologias de middlewares para ambi-

entes moveis focando as solucoes e os objetivos a serem alcancados. O estudo classifica

Page 47: Um Modelo de Gerência de Segurança para Middleware Baseado

3.2 Middlewares Orientados a Objetospara Ambientes Moveis 48

esses middlewares em funcao de suas arquiteturas e os modelos de reparticao adotados

(invocacao de objeto remoto, passagem de mensagens, tuple e peer to peer).

3.2 Middlewares Orientados a Objetos

para Ambientes Moveis

Mascaram os problemas de distribuicao e heterogeneidade das plataformas, facilitam o

desenvolvimento das aplicacoes assim os desenvolvedores de aplicacoes podem se dedicar

mais especificamente a funcionalidade das aplicacoes e nao aos problemas de comuni-

cacao e interoperabilidade. Os middlewares orientados a objetos se caracterizam pela

riqueza da sua funcionalidade e da forte integracao com as linguagens de programacao.

O principal interesse em utiliza-los em ambientes moveis e poder reutilizar o patrimonio

de aplicacoes existentes e integrar os terminais moveis com as plataformas fixas. Muitos

trabalhos [MASCOLO et al, 2002] tiveram como objetivo adaptar os middlewares orien-

tados a objetos, aos ambientes moveis, particularmente em ambiente nomade. O objetivo

e buscar mobilidade. Existem trabalhos que visam incluir nos middlewares um paradigma

de interacao semi- assıncrono. Esses middlewares melhoram as invocacoes remotas usando

memoria cache para temporariamente armazenar as mensagens durante as desconexoes

[JOSEPH; TAUBER; KAASHOEK, 1997; SCHILL et al, 1995].

3.2.1 CORBA

O CORBA (Common Object Request Broker Archietcture) e a arquitetura de refer-

encia dos middlewares orientados a objeto. Ele e um conjunto de padroes e conceitos

definidos pela OMG (Object Management Group) [OMG, 1998]. Nesta Arquitetura os

metodos dos objetos remotos sao invocados de maneira transparente atraves do ORB

(Object Request Broker). O ORB e responsavel, em caso de requisicao, de todas as

operacoes (preparacao de invocacao, transporte e a recepcao). As interfaces sao comple-

tamente independentes da localizacao do objeto, da linguagem de implementacao [HAG-

GERTY; SEETHARAMAN, 2000; JEAN; CHRISTOPHE; PHILLIPE, 1997]. As inter-

faces CORBA sao delimitadas pela linguagem IDL (Interface Definition Linguage). Para

garantir a interoperabilidade entre os ORB’s que aderem ao CORBA, a OMG definiu

o protocolo GIOP (General Inter ORB Protocol). O protocolo especifica uma sintaxe

para a transferencia das mensagens. O GIOP se adapta a qualquer tipo de protocolo

de transporte orientado a conexao. O protocolo IIOP (Internet, Inter-ORB protocol)

Page 48: Um Modelo de Gerência de Segurança para Middleware Baseado

3.2 Middlewares Orientados a Objetospara Ambientes Moveis 49

e uma instancia do GIOP para a internet. Ele especifica o modo como as mensagens

GIOP sao trocadas, usando conexoes TCP/IP. As especificacoes iniciais do CORBA nao

tratam dos sistemas embarcados ou moveis, pois os ORBs consomem um importante es-

paco de memoria. Para adaptar o padrao CORBA ao ambiente movel a OMG definiu um

subconjunto ou extensoes de CORBA:

• Protocolo Miop [OMG, 1999c]: proporciona o acesso aos protocolos de transporte

multicast;

• Minimum CORBA [OMG 2002]: fornece uma versao leve de padrao CORBA

destinada aos terminais de recursos reduzidos;

• Wireless CORBA [OMG, 2005; PALIVAN; DINU, 2005] : trata da gestao de

acesso de terminais moveis atraves de redes sem fio.

Figura 3.1: Arquitetura de Mobilidade dos Terminais em CORBA [OMG, 2005].

A arquitetura do Wireless CORBA e constituıda de tres componentes:

• Home Domain: e o Home administrativo do terminal movel. Tem como princi-

pal componente o Home Location Agent (HLA). O Home Location Agent fornece

operacoes para consulta e atualizacao dos terminais moveis sob sua jurisdicao. O

HLA tambem fornece operacoes para obtencao de referencias CORBA para servicos

disponıveis no Home Domain. Alguns terminais nao estao associados a um Home

Domain e sao conhecidos por terminais homeless;

• Teminal Domain: consiste em tudo que esta no terminal movel e tem como inter-

face o Terminal Bridge. Todas as invocacoes originadas ou destinadas a um terminal

Page 49: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 50

movel passam pelo Terminal Bridge que se comunica com sua parte similar na rede

fixa atraves de um protocolo especıfico. O Terminal Domain alem, de fornecer

notificacoes de eventos relacionados a movimentacao do terminal para quem tiver

interesse, tambem pode permitir handoff do terminal movel;

• Visitated Domain: e localizado na rede fixa. Tem como principal componente os

Access Bridge que sao as contrapartes do Terminal Bridge nos terminais moveis. O

Access Bridge encapsula ou desencapsula as mensagens GIOP enviadas ou recebidas

do Terminal Bridge, usando um protocolo de tunelamento. O Visitated Domain

possui operacoes de suporte a handoff dos terminais moveis e notificacao de eventos

relacionados a movimentacao dos terminais.

Consideracoes

Os middlewares orientados a objetos nao sao as melhores solucoes para os ambientes

moveis. Estes middlewares foram desenvolvidos na hipotese de que os terminais sao

imoveis, conectados a redes fixas e tem mais recursos computacionais. Seus paradig-

mas de interacao sıncrona suportam uma conectividade permanente e a disponibilidade

simultanea das entidades comunicantes, o que nao acontece sempre em ambientes moveis.

Os cenarios previstos para estes middlewares sao aqueles onde as plataformas fixas ofer-

ecem servicos para os usuarios moveis. Nos casos onde os terminais moveis tem que

fornecer servicos, os middlewares orientados a objetos nao sao adequados e se mostram

ineficientes.

3.3 MOM - Message Oriented Middleware

Os Midllewares Orientados a Mensagens sao sistemas que oferecem servico ponto a

ponto [KADDOUR, 2006b]. Sua funcao e integrar o envio e recepcao de mensagens entre

diferentes tipos de aplicacoes. A comunicacao entre as aplicacoes e totalmente assıncrona:

emissora e receptora nao precisam estar conectadas simultaneamente para se comunicar. O

modo de envio de mensagens e baseado no mecanismo store and forward, onde a mensagem

e primeiramente estocada e depois enviada ao seu destinatario. Os termos frequentemente

utilizados em MOM sao:

• Provider ou broker: e a entidade que fornece servico de envio/recepcao das men-

sagens em modo assıncrono;

Page 50: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 51

• Mensagem: sao informacoes trocadas entre duas aplicacoes. A mensagem e com-

posta de tres partes:

– Dados da mensagem ou carga util (payload): podem ser do tipo texto

objeto, dados serializados;

– Cabecalho: contem informacoes como data de deposito, de expiracao da men-

sagem, nome da fila do destinatario;

– Propriedades: sao caracterısticas funcionais da mensagem que trazem infor-

macoes complementares sobre a precisao da mensagem.

• Fila de espera: e uma estrutura de estocagem de mensagens, no modelo ponto a

ponto ou peer to peer, a mensagem depositada numa fila de espera e consumida por

uma unica aplicacao;

• Topic: e uma fila de espera especıfica destinada a receber mensagens no modo

Publish/Subscribe. Uma mesma mensagem e recebida por varios clientes;

• Queue manager: e um conjunto de filas gerenciadas por uma ou varias instancias

do MOM, e o equivalente a uma base de dados no mundo dos SGBD (Sistema de

Gerenciamento de Banco de Dados);

• No: na comunicacao entre dois gestores de filas via um canal, fala-se de comunicacao

entre dois nos. Um gestor representa um no;

• Roteamento: quando uma mensagem destinada a um MOM situado em uma rede

R1 passa pelo no do MOM situado em outra rede R2, fala-se de roteamento. A

mensagem e transferida para o Middleware orientado a Mensagem da rede R1, de

forma transparente para a aplicacao emissora. O roteamento de uma mensagem

para outro no e feito com base nas informacoes especificadas no seu cabecalho.

Para o seu funcionamento o MOM utiliza filas de espera onde transitam as mensagens,

como ilustra a Figura 3.2

Page 51: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 52

Figura 3.2: Fila de espera no modelo peer to peer [KADDOUR, 2006b].

Quando uma aplicacao envia uma mensagem para outra, ela se conecta ao provider

(correio de mensagens) para quem ela entrega a mensagem informando o identificador

da fila de espera. Quando a aplicacao destinataria se conecta ao agente gerenciador das

mensagens, a mensagem e fornecida. As mensagens tambem podem ser consultadas sem

ser lidas. Isso e chamado de modo browser. Alem dos servicos de envio, recepcao, ar-

mazenamento e busca de mensagens, os MOM oferecem servicos mais evoluıdos tais como:

escalar prioridades nas filas de mensagens, comprimir dados, definir prazo de validade de

uma mensagem em determinada data, alertar quando uma mensagem estiver numa fila

de espera. A compressao de dados nao e implementada em todos os MOM, por exemplo,

MQ Series requer que a aplicacao seja responsavel pela compressao.

Page 52: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 53

Figura 3.3: Modelo Publish/Subscribe: as mensagens depositadas em um topic sao forneci-

das somente as aplicacoes subscritas ao topic [KADDOUR, 2006b].

Os MOM sao muito utilizados em EAI (Enterprise Aplication Integration - Integracao

de Aplicacao de Empresa), assim como em ESB (Enterprise Service Bus - Canal de Servico

de Empresa). Outros setores de utilizacao incluem, por exemplo, o Data warehouse.

Atualmente o MOM e muito usado na difusao de informacoes.

As aplicacoes destinatarias das mensagens na comunicacao em modo de mensagem

atraves do MOM nao precisam estar em funcionamento permanente, so o MOM pre-

cisa estar ativo. Cada aplicacao, para se comunicar com o servidor de mensagens utiliza

sempre os API’s do servidor; isso evita programar servico especıfico para cada tipo de

comunicacao. Os MOMs suportam varios sistemas operacionais, propoe APIs para varias

linguagens, o que facilita sua conexao com aplicacoes heterogeneas executadas em difer-

entes sistemas operacionais. Os MOMs sao insensıveis a indisponibilidade das aplicacoes.

Isto e, uma vez enviada uma mensagem ao MOM, a aplicacao pode parar de funcionar,

pois a conexao entre o MOM e a aplicacao somente e requisitada durante a troca de

mensagem. Uma das principais crıticas ao MOM e que ele nao e um padrao. Esta crıtica

pode ser repensada, pois a maioria dos MOMs atuais implementam interface JMS - Java

Message Service - que e o padrao de comunicacao, via mensagem, para tecnologia Java.

Page 53: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 54

3.3.1 Especificacao JMS

O JMS [HAPNER et al, 2002] e um conjunto de APIs que permite o desenvolvimento

de aplicativos baseados em troca de mensagens. A primeira especificacao do JMS foi feita

em 1998 para solucionar os problemas de incompatibilidade entre produtos MOM. Hoje

ela agrega varias funcoes. A arquitetura de um sistema JMS e baseada no paradigma

Clientes/Servidor. Um sistema JMS e composto das seguintes partes:

• Fornecedor JMS: e o sistema de caixa de mensagens que implementa as interfaces

JMS que fornecem os mecanismos para o controle e administracao do sistema;

• Clientes JMS: sao os aplicativos escritos em linguagem Java que produzem e

consomem as mensagens;

• Objetos administrados: sao servicos pre-definidos para o uso dos clientes;

• Clientes nativos: sao aplicativos que usam API que nao sao do tipo JSM. Neste

caso, JMS oferece passarelas que traduzem as requisicoes destes aplicativos no

padrao JMS. A Figura 3.4 ilustra estes elementos.

Figura 3.4: Arquitetura de um Sistema JMS [KADDOUR, 2006b].

Alguns Objetos da API JMS definidos na especificacao sao:

Page 54: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 55

• Fabrica de conexao: o cliente utiliza este objeto para criar uma conexao com um

fornecedor, encapsulando um conjunto de parametros de configuracoes;

• Destinacao: o cliente utiliza este objeto para especificar o destino das mensagens

produzidas;

• Conexao: encapsula uma conexao virtual com o fornecedor JMS, pode representar,

por exemplo, uma conexao socket TCP/IP;

• Sessao: representa o contexto para a producao e consumo de mensagens. As sessoes

sao utilizadas para criar os produtores e consumidores de mensagens;

• Produtor de mensagens: e criado por uma sessao e usado para o envio de men-

sagem ao destinatario;

• Consumidor de mensagens: e criado por uma sessao e usado para o recebimento

de mensagem a partir de um remetente;

• Selecao de mensagens: E usada para filtrar mensagens recebidas em funcao de

algumas propriedades e informacoes contidas nos cabecalhos.

Certos mecanismos permitem garantir alguns tipos de servicos de seguranca ao sistema

JMS, tais como a permanencia da mensagem em suportes confiaveis, persistencia no envio

e recebimento da mensagem e seu prazo de expiracao.

• Persistencia de Mensagens: Dois modos sao definidos:

– Persistencia por default: o fornecedor JMS garante que a mensagem nao sera

perdida em caso de falha, a mensagem e armazenada em suporte estavel;

– Nao persistencia: o sistema nao garante o recebimento da mensagem. Neste

caso, a mensagem nao e armazenada em suporte estavel.

• Prioridade das Mensagens: nıveis de prioridades de 0 a 9 sao definidos para cada

mensagem. 9 e a prioridade maxima e 4 e a prioridade default;

• Prazo de expiracao da mensagem: usado para garantir a permanencia da men-

sagem na fila de espera. Por default, uma mensagem pode permanecer por tempo

indeterminado antes de ser enviada ao seu destinatario; caso contrario, a sua per-

manencia na fila de espera e vigente ao seu prazo de expiracao.

Page 55: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 56

Os MOMs representam um paradigma de comunicacao emergente e servem de base

para as aplicacoes moveis. Uma das principais vantagens e permitir que entidades troquem

informacoes sem ter conhecimento preciso do endereco do destino da notificacao. Varios

middlewares orientados a mensagens foram desenvolvidos para ambientes moveis. Seguem

abaixo alguns middlewares comerciais ou em fase experimental.

3.3.2 Ibus//mobile

Ibus//mobile [SOFTWIRED, 2007] e uma implementacao JMS destinada a terminais

moveis interconectados por uma rede sem fio, de grande escala. Um sistema Ibus//mobile

e composto por 3 entidades: clientes moveis JMS, uma passarela JMS e um fornecedor

JMS cliente. JMS sao concebidos em funcao do tipo de terminal movel (programavel

ou nao programavel). O cliente JMS se comunica por meio de um sistema de comuni-

cacao padrao (WAP - Wireless Application Protocol , SMS - Short Message Service). Nos

terminais programaveis dotados de J2ME, o cliente JMS se comunica atraves de uma im-

plementacao leve baseada em API JMS. O elemento chave da arquitetura de Ibus//Mobile

e a passarela JMS, conhecida como core of the iBus//Mobile. A passarela funciona como

uma estacao de base (um gateway e um provedor JMS conforme ilustrada na Figura 3.5)

para conectar na rede todos os terminais moveis de uma determinada zona geografica

[MAFFEIS, 2006].

Page 56: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 57

Figura 3.5: Arquitetura geral do Ibus//Mobile [SOFTWIRED, 2007].

Do ponto de vista do fornecedor JMS, esta passarela e um cliente JMS padrao. Do

ponto de vista do cliente JMS, a passarela e um no onde transitam as mensagens e sao

feitas as conversoes dos formatos das mensagens.

3.3.3 WebSphere EveryPlace

Websphere EveryPlace [WEBSPHERE, 2007] e uma plataforma da IBM que permite

aos usuarios moveis acesso a dados remotos das empresas. Essa plataforma e uma extensao

da aplicacao websphere baseada na especificacao JMS, como mostra a Figura 3.6. O

websphere usa os protocolos de comunicacao: GRPS - General Packet Radio Service -,

SMS - Short Messaging Service, WAP - Wireless Application Protocol , Wifi e Bluetooth.

Um gerente de sincronizacao permite aos usuarios moveis operar em modo desconectado

e sincronizar o resultado de suas atividades com a base de dados do servidor.

Page 57: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 58

Figura 3.6: Arquitetura do WebSphere Everyplace [DAVE; LINDAMAYL, 2002].

Ele fornece os servicos necessarios para a conexao de dispositivos moveis ao sistema de

informacao da empresa. O WebSphere EveryPlace suporta modelos de aplicacao contendo

servlets, JSP e Java. Para mais informacoes, consulte [DAVE; LINDAMAYL, 2002].

3.3.4 Pronto

Pronto [YONEKI; BACON, 2006; PRONTO, 2003]: e um middleware JMS destinado

aos ambientes moveis. Ele apresenta tres componentes essenciais: 1- cliente MobileJMS

baseado em Servico de Mensagem Java (JMS). 2- gateway, para oferecer uma transmissao

eficiente e confiavel entre os dispositivos moveis e o servidor. Existem dois tipos de

gateway : gateway local e gateway remoto e 3- Serverless JMS: um servidor baseado em

IP multicast, suporta rede Ad Hoc. A Figura 3.7 apresenta uma visao geral do modelo

centralizado da arquitetura do Ponto.

Page 58: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 59

Figura 3.7: Overview da arquitetura do Pronto – modelo centralizado [PRONTO, 2003].

As mensagens transitam por uma passarela que assume as funcoes como: compressao

e codificacao de dados. A passarela pode estar no terminal do cliente ou em uma maquina

da rede. Neste ultimo caso, a comunicacao e baseada em Java/RMI [CAMPADELLO

et al, 2000]. Um mecanismo de cache e usado para gerenciar a desconexao e reduzir o

trafego entre fornecedor JMS e a passarela. Quando um cliente se desconecta, a passarela

continua recebendo as mensagens, quando volta a se conectar, ele recupera os dados

armazenados atraves de uma sincronizacao com o cache. Pronto tambem propoe um

modo descentralizado onde as mensagens sao transmitidas diretamente aos destinatarios

(sem presenca de fornecedor). A Figura 3.7 ilustra um modelo descentralizado usando

gateway em cascata e memoria cache.

3.3.5 Steam

Steam [RENE; VINNY, 2003] e um middleware para aplicacoes moveis que explora a

nocao de proximidade. Permite gerenciar entidades representadas por objetos reais que

se comunicam atraves de redes sem fio Ad Hoc. Muitas destas entidades representam

objetos moveis, como carro. Outras entidades podem representar objetos fixos como,

por exemplo, farois de transito; veja Figura 3.8. Essas entidades interagem usando uma

comunicacao baseada em eventos para trocar informacoes sobre o estado atual do trafego,

por exemplo, um farol de transito pode propagar para os carros que se aproximam uma

notificacao de reducao de velocidade em funcao do estado do asfalto. Uma ambulancia ou

viatura da polıcia pode difundir sua aproximacao para os carros vizinhos a fim de ceder

Page 59: Um Modelo de Gerência de Segurança para Middleware Baseado

3.3 MOM - Message Oriented Middleware 60

passagem. As notificacoes sao validas em determinado perımetro geografico em torno do

produtor e receptor da mensagem que chamamos de zona de comunicacao. Esta restricao

tem a vantagem de reduzir as retransmissoes de mensagens e alto consumo de recurso de

maquina e rede.

Figura 3.8: Um exemplo de aplicacao do Steam. A comunicacao entre as entidades do

sistema e feita atraves de eventos de propagacao baseados em aproximacao dentro de um

perımetro.

A arquitetura do Steam, como mostra a Figura 3.9, inclui: Servico de localizacao

(LS) baseado em dados sensoriais via GPS; nucleos de servicos de evento; servico de

descoberta de aproximacao e servico de comunicacao para redes ad hoc e padrao IEEE

802.11b. O Steam e um modelo baseado em evento que proporciona a possibilidade de

filtragem dos eventos: a entidade consumidora subscrever -se a em determinados eventos.

O Steam explora um servico de comunicacao baseado na aproximacao, para que as en-

tidades possam se descobrir e integrar ou interagir quando elas estiverem numa mesma

zona geografica. Tres tipos de filtragem de eventos sao propostos: sujeito, proximidade e

conteudo. Um evento propagado e composto de um nome e um conjunto de parametros.

O nome representa o tipo de evento:

• Filtro de sujeito: descreve o tipo de eventos do consumidor;

• Filtro de proximidade: descreve a zona geografica na qual um evento de um

determinado tipo e validado;

• Filtro de conteudo: filtra os eventos de acordo com os valores dos parametros,

usando uma expressao logica.

Os filtros de sujeitos e de proximidade sao aplicados no nıvel do produtor, enquanto o filtro

de conteudo e aplicado no nıvel do consumidor. A pratica de filtro tem como vantagem

reduzir o trafego na rede e melhor dividir as tarefas entre produtor e consumidor.

Page 60: Um Modelo de Gerência de Segurança para Middleware Baseado

3.4 Middlewares Baseados em Tuples 61

Figura 3.9: Overview da arquitetura STEAM [RENE; VINNY, 2003].

A abordagem de Steam e adaptavel a ambientes difusos, pois ela permite interacoes

espontaneas baseadas na vizinhanca fısica. A contribuicao essencial do Steam e seu mecan-

ismo de filtragem que permite prevenir e evitar a propagacao inutil de mensagens a fim

de melhor utilizar a largura de banda da rede. Porem, Steam nao preve a gerencia da

mobilidade, a propagacao dos eventos, a grande escala e seguir os deslocamentos dos

consumidores. O uso do Steam e destinado as redes ad hoc.

Consideracoes:

A principal vantagem dos middlewares orientados a mensagens e seu modo de interacao

assıncrono. Este tipo de interacao permite melhor gerenciar os problemas de desconexao,

de mobilidade e melhor utilizar os recursos da rede. Eles se adaptam muito bem aos

sistemas distribuıdos de larga escala, porem estes middlewares nao se integram bem aos

conceitos de programacao orientada a objetos, pois existem incompatibilidades funda-

mentais entre as nocoes de objetos e eventos. As aplicacoes baseadas em eventos nao

conseguem explorar totalmente as possibilidades da orientacao a objetos como fazem as

aplicacoes CORBA. Os modelos de arquitetura estudados nao apresentam ou pouco men-

cionam a questao da seguranca. Eles nao proporcionam mecanismos de seguranca para

confidencialidade e garantia de preservacao da privacidade dos usuarios.

3.4 Middlewares Baseados em Tuples

O conceito de Tuples foi introduzido por Linda [GELERNTER, 2005]. O Tuple define

uma linguagem de coordenacao para a programacao concorrente. Um espaco de Tuples

e um espaco de memoria associativo e compartilhado que permite a varios processos se

Page 61: Um Modelo de Gerência de Segurança para Middleware Baseado

3.4 Middlewares Baseados em Tuples 62

comunicarem entre si. Este espaco e apresentado na forma de um deposito de dados es-

truturados. Em middleware, o Tuple, e um elemento que forma a base da comunicacao. E

criado e mantido por um processo de tal forma, que seja usado de maneira concorrente aos

outros processos. Os Tuples sao anonimos, suas selecoes sao feitas por correspondencia

de atributos, nao pela identidade de seus autores, assim a correspondencia entre as enti-

dades comunicantes e feita por anonimato. A comunicacao e desacoplada no tempo e no

espaco, pois as entidades comunicantes nao precisam estar simultaneamente conectadas.

A duracao de vida dos Tuples e independente do processo que os criou. Na troca de dados

nao e necessario o conhecimento mutuo do endereco de cada entidade comunicante, pois

a troca e feita atraves do espaco global compartilhado. Estas caracterısticas fazem dos

middlewares baseados em Tuples um importante pretendente para a gestao dos problemas

de ambientes moveis.

As propriedades destes ambientes tais como o estilo de comunicacao desacoplado, fa-

vorecem a continuacao dos tratamentos em caso de desconexao da rede, permite tambem

as entidades comunicarem entre si de maneira oportuna (as entidades sao dinamicas e de-

sconhecidas previamente). Os ambientes difusos nem sempre tem acesso a uma infraestru-

tura centralizada. Alguns trabalhos de pesquisa abordam a representacao e a integracao

dos Tuples fisicamente distribuıdos: as solucoes diferem dependentemente da abordagem

do problema. Entre as plataformas desenvolvidas podemos citar Tspace [WYCKOFF et

al, 1998], JavaSpace [WALDO, 1998] e Lime [MURFPHY et al, 2007 ].

3.4.1 Lime

Lime (Linda in a Mobile Environment) e um middleware baseado em tuple que fornece

mecanismos de alto nıvel para desenvolvimento de aplicacoes caracterizadas pela mobili-

dade fısica (terminais) ou pela mobilidade logica (agente1). Na sua arquitetura o espaco

de tuples persistente, originalmente definido no modelo Linda e substituıdo por um espaco

volatil: uma especie de memoria temporaria compartilhada (Transiently shared space tu-

ple), situada em cada terminal ou agente movel. Este e tambem conhecido como ITS (In-

terface Tuples Space - Interface do Espaco Tuples). Figura 3.10. A associacao coordenada

de diferentes ITS constitui um espaco global (FTS - Federal Tuple Space) compartilhavel

por diversos terminais ou agentes.

1Na terminologia LIME por causa da mobilidade logica processos sao tambem chamados de agentes.Cada processo e associado a um host ou terminal movel.

Page 62: Um Modelo de Gerência de Segurança para Middleware Baseado

3.4 Middlewares Baseados em Tuples 63

Figura 3.10: Espacos de Tuple Temporariamente compartilhados onde cada esfera repre-

senta um agente associado a um espaco de tuple local (ITS).

O acesso ao contexto global por um agente e feito atraves do seu ITS associado de

maneira permanente e exclusiva. ITS e transferido juntamente com o agente quando

ocorre um movimento de migracao. O conceito fundamental do modelo Lime e a nocao

de espaco de tuple compartilhado transitoriamente. A figura 3.10 apresenta um host com

tres agentes e seus respectivos ITS. Cada ITS contem informacoes relacionadas a um

agente; por exemplo, a localizacao geografica ou a identificacao do PDA de um medico em

movimento. Ele tem duas principais funcoes: disponibilizar um agente a outros agentes,

acessar dados de outros agentes presentes na comunidade FTS. Assim, o conteudo do

espaco global evolui dinamicamente em funcao das unidades de agentes presentes. Na

entrada de um novo agente na comunidade, o conteudo do ITS de cada agente e reavaliado

em funcao dos dados do novo agente. Os tuples ITS do novo agente, por sua vez, se juntam

com o conteudo do espaco anterior compartilhado. O resultado e a formacao de um espaco

de tuple global (FTS - Federated Tuple Space) acessıvel pelo ITS de todos os agentes

presentes. Esta sequencia de operacoes e chamada de engajamento. Quando acontece

a saıda de um agente do FTS, o conteudo de seu ITS e retirado, de forma atomica, do

espaco global (desengajamento). A Figura 3.11 mostra as duas principais caracterısticas

do modelo Lime: mobilidade logica e fısica e associacao de espacos de tuple. Diversos

dispositivos distintos e remotos podem compartilhar um mesmo espaco formado por seus

ITS. O objetivo da migracao de um agente para outros dispositivos e poder ter acesso a

Page 63: Um Modelo de Gerência de Segurança para Middleware Baseado

3.4 Middlewares Baseados em Tuples 64

servicos remotos ou efetuar determinadas tarefas nos dispositivos receptores.

Figura 3.11: FTS: Espacos de Tuple Global – Federated Tuple Space onde cada host ou

dispositivo e associado a um conjunto de ITSs chamado de Host – Level Tuple Space .

O espaco de dados definido pelo Lime oculta os detalhes da mobilidade e da reparticao,

gerenciando automaticamente a localizacao dos tuples. Entretanto, a aplicacao as vezes

precisa ter um controle explıcito sobre a porcao de espaco que ela deseja acessar. Este

controle pode ser feito atraves da introducao de parametros de identificacao de terminais

moveis. O modelo Lime e uma interessante solucao para o problema de comunicacao

e coordenacao em ambiente difuso, ele permite uma gestao transparente de troca de

informacao em perımetro local e uma sensibilidade ao contexto atraves da supervisao das

entidades presentes na vizinhanca. Porem, faltam no estagio atual de seu desenvolvimento

mecanismos de tolerancia a falhas e de seguranca.

Consideracoes

Os middlewares baseados em tuples adotam o modo de interacao assıncrona e explo-

ram a natureza desacoplada do espaco de tuples, isto e: as operacoes podem funcionar

em modo desconectado. O ponto forte desses middlewares e a possibilidade de fusao dos

espacos de dados que permite reunir objetos pertencendo a entidades diferentes em um

unico espaco logico. Os dados que residem em diferentes nos podem ser compartilhados e

acessados de forma transparente. Os espacos de tuples permitem introduzir mecanismos

de persistencia avancado e oferecem ferramentas evoluıdas de busca e indexacao de dados.

Page 64: Um Modelo de Gerência de Segurança para Middleware Baseado

3.5 Middlewares Peer to Peer - P2P 65

Estes middlewares formam uma solida base para a concepcao de aplicacoes em ambientes

moveis.

3.5 Middlewares Peer to Peer - P2P

Um sistema P2P e descrito como um conjunto de relacoes entre pares, onde os pares2

sao autonomos e interagem de igual para igual [BOLCER al et, 2007]. Nesta relacao de

par, um par pode colaborar com os outros pares oferecendo funcoes complementares. Os

sistemas P2P foram inicialmente desenvolvidos para as infraestruturas fixas. Hoje eles

fazem grande sucesso e sao muito utilizados na Internet. Os sistemas P2P moveis sao

uma combinacao de terminais moveis com as redes Ad hoc. Um sistema movel e um

sistema distribuıdo formado de hosts que mudam continuamente de localizacoes fısicas

e estabelecem entre si a relacao de proximidade. Os sistemas P2P moveis diferem dos

sistemas P2P fixos pelos seguintes aspectos:

• Os pares nao sao sempre conectados;

• As ligacoes sao breves e temporarias (efemeras): as desconexoes e reconexoes sao

frequentes e imprevisıveis;

• A topologia do sistema muda frequentemente.

Na concepcao de middlewares para sistemas P2P moveis, alem das funcoes tradi-

cionais dos middlewares fixos e necessario implementar os aspectos da mobilidade acima

mencionados. Alguns middlewares que tratam desses aspectos sao relacionados abaixo.

3.5.1 Proem

Proem [KOERTUEM, et al] e um middleware aberto destinado a sistemas moveis

difusos. Ele fornece uma solucao para o desenvolvimento e execucao de aplicacoes P2P

e ferramentas para essas aplicacoes tais como API, ambiente de execucao, e protocolo de

comunicacao. Sua arquitetura se articula em torno de quatro entidades: o par, o usuario,

o espaco de dados e a comunidade. O par e um terminal movel autonomo relacionado

a outro. O usuario e uma pessoa que utiliza um ou varios pares. O espaco de dados e

uma colecao de objetos de dados que compartilham e gerem um conjunto de pares. Uma

2hosts autonomos, considerados como os nos de uma rede MANET(Mobile Ad hoc NETwork)

Page 65: Um Modelo de Gerência de Segurança para Middleware Baseado

3.5 Middlewares Peer to Peer - P2P 66

comunidade e um conjunto de entidades (pares usuarios e espaco de dados). Em cada

comunidade sao definidos direito de acesso e funcionalidades para que ela represente um

domınio de confianca. Para um par provar que pertence a uma comunidade, ele deve

fornecer um certificado criptografado e assinado por uma autoridade certificadora. As en-

tidades sao identificadas por nomes expressos na forma de URI (Uniform Resource Iden-

tifier). O Proem fornece um meio complementar para referenciar as entidades definindo

perfis, isso e feito atraves do profile manager. Um perfil e uma estrutura de dados baseados

em XML, para descrever a entidade. O Proem e composto de um conjunto de protocolos

de comunicacao que oferecem servico de transporte, definem a sintaxe e a semantica das

mensagens trocadas entre os pares, conforme mostra a Figura 3.12 estes protocolos sao:

• Protocolo de transporte: baixo nıvel, permite o transporte assıncrono de dados

de um par para o outro de forma atomica;

• Protocolo de presenca: anuncia presenca de um par;

• Protocolo de dados: permite a troca e sincronizacao de dados entre os pares;

• Protocolo de comunidade: oferece servicos a comunidade como, por exemplo,

verificar se um par pertence ou nao a comunidade.

Figura 3.12: Arquitetura Geral do Proem [KOERTUEM, et al ].

Page 66: Um Modelo de Gerência de Segurança para Middleware Baseado

3.6 Conclusao 67

O ambiente aplicativo do Proem e composto de um kit (SDK- Software Development

Kit) de desenvolvimento dos peerlets e um sistema de execucao (Runtime Environment

ou Peerlet Engine). Os peerlets sao aplicativos peer to peer simples, adotam o modelo

de programacao baseado em eventos. O sistema de execucao e constituıdo de tres compo-

nentes: uma pilha de protocolo, um executivo dos peerlets e um conjunto de servicos que

possibilitam a funcionalidade dos peerlets (servico de nome, gestao de dados, registro de

eventos etc.). O modo de interacao adotado e assıncrono. O Proem implementa o con-

ceito de comunidade muito utilizado nos sistemas peer to peer baseado em uma relacao

de confianca. Proem apresenta um protocolo de localizacao de servico, mas nao especifica

como acessar esses servicos. O compartilhamento de dados entre os pares tambem nao e

definido.

Os middlewares Peer to Peer apresentam uma arquitetura que se adaptam perfeita-

mente aos ambientes difusos. Eles permitem criar interacoes espontaneas e compartilhar

recursos e dados sem recorrer a um servidor centralizado. Os middlewares Peer to Peer

devem constituir no futuro a base de interacao entre as aplicacoes e os usuarios moveis,

, porem os middlewares peer to peer tratam pouco da questao da seguranca. O Proem,

por exemplo, se restringe a verificar se um par pertence ou nao a uma comunidade.

3.6 Conclusao

O estudo feito neste capıtulo permite constatar que os middlewares para ambientes

moveis devem possuir algumas caracterısticas comuns independente de seu tipo. Essas

propriedades comuns permitem uma melhor adaptacao a natureza dos ambientes moveis e

as necessidades das aplicacoes. A tabela 3.1 apresenta essas caracterısticas. Nela observa-

se que: Interacao assıncrona e o modo mais adaptado aos ambientes moveis, fornece

uma solucao aos problemas de desconexao, mudanca de endereco, localizacao na rede e

latencias que sao caracterısticas das redes sem fio; Interoperabilidade e a integracao em

termos de recursos e servicos. Um middleware para ambiente movel deve ser capaz de

interagir com servicos de diversos tipos (orientado a objetos, baseado em eventos, espaco

de tuple etc). Leve: devido ao limite de recursos internos dos dispositivos moveis, os

middlewares moveis devem ser otimizados para oferecer mais servicos e consumir menos

recursos computacionais. Gerencia de mobilidade: e ligada ao problema de desconexao,

as limitacoes dos dispositivos (memoria e bateria), perda de pacote, variacao de largura

de banda e localidade geografica.

Page 67: Um Modelo de Gerência de Segurança para Middleware Baseado

3.6 Conclusao 68

Caracterısticas Orientado Orientado Tuple P2P

a objetos a mensagens

Interacao assıncrona nao sim sim sim

Integracao a programacao sim nao nao nao

Orientada a Objetos

Integracao a programacao nao sim sim sim

Orientada a Eventos

Interoperabilidade sim sim sim sim

Gerenciamento de mobilidade bom bom excelente

Adaptabilidade a sistemas menor maior menor menor

distribuıdos de larga escala

Adaptabilidade a Computacao sim sim sim sim

nomade

Adaptabilidade a Computacao nao sim sim

difusa

Leve (exigencia de menos nao sim sim sim

recurso computacional)

Gerencia de Seguranca e pouco pouco pouco pouco

Privacidade falado falado falado falado

Tabela 3.1: Propriedades dos diferentes tipos de middlewares para Ambientes Moveis.

As analises mostram tambem que os middlewares existentes quase nao abordam os

problemas da seguranca e privacidade; muitas das solucoes existentes sao implementadas

na camada de aplicacao o que as tornam especıficas, proprietarias e vulneraveis. A se-

guranca ainda e um problema que deve ser gerido em todos os nıveis de um sistema

distribuıdo, associando criptografia, autenticacao, auditoria e novos mecanismos como,

por exemplo, deteccao de intrusos, anonimato e gerencia de identidades virtuais. A segu-

ranca e um campo de pesquisa cheio de desafios. Como contexto para o desenvolvimento

e aplicacao da nossa proposta foi escolhida a classe dos middlewares baseados em tuple,

pois eles tem um bom gerenciamento de mobilidade e se adaptam melhor a computacao

nomade e difusa.

Page 68: Um Modelo de Gerência de Segurança para Middleware Baseado

69

4 Tecnologia sem Fio e Movel

4.1 Introducao

A computacao movel esta em pleno desenvolvimento e uma das maiores necessidades

e a seguranca. Para isso, e necessario integrar mecanismos e protocolos de seguranca sem

prejudicar a qualidade do servico, a mobilidade e os recursos limitados das maquinas.

Neste capıtulo, apresentamos algumas tecnologias sem fio e moveis especificadas pelas

normas IEEE 802.11 e ITU (International Telecommunication Union), alem de uma

analise e algumas consideracoes sobre as solucoes de seguranca existentes, focando os

tres protocolos mais utilizados no momento: SSH – Secure Shell ; SSL/TLS – Secure

Socket Layer/Transport Layer Security e IPSec – Internet Protocol Security.

4.2 Rede WLAN: 802.11

O surgimento de varias normas de comunicacao sem fio e o preco dos equipamentos

sem fio, cada vez mais atraentes contribuem para o sucesso dessas tecnologias como, por

exemplo, a WiFi (Wireless Fidelity). A norma IEEE 802.11 descreve as caracterısticas

de rede local sem fio (WLAN – Wireless Local Area Network), ela define nessa categoria

dois tipos de topologias:

• Modo com infraestrutura: uma rede 800.11 e um conjunto de celulas de base

BSS (Basic Set Service) onde cada BSS e composto de um ponto de acesso (AP-

Access Point) materializado por um dispositivo de emissao e recepcao. As celulas

sao ligadas a uma infraestrutura de comunicacao estatica e interconectadas por um

sistema de distribuicao formando assim um ESS (Extended Service Set), Figura 4.1

ilustra a topologia de uma rede 800.11, essa infraestrutura pode servir de interface

a uma rede local.

Page 69: Um Modelo de Gerência de Segurança para Middleware Baseado

4.2 Rede WLAN: 802.11 70

Figura 4.1: Topologia de uma rede 802.11 - onde BSS1 e BSS2 constituem a topologia

modo infraestrutura e a IBSS em pontilhado o modo ad hoc.

• Modo ad hoc: conhecido como modo sem infraestrutura, neste caso a rede e

composta de um conjunto de estacoes 802.11 sem fio que se comunicam entre si

sem a necessidade de AP conectado a uma rede cabeada [LABROD, 2008]. Cada

estacao pode estabelecer uma comunicacao com qualquer outra estacao de uma

celula independente chamada IBSS (Independent BSS ). A celula do meio da figura

4.1 ilustra essa situacao.

Tanto no modo infraestrutura, como no modo ad hoc, cada rede e identificada por

meio de um SSID (Service Set IDentity) em consequencia toda estacao que deseja se

conectar a rede deve previamente conhecer o valor do SSID.

Consideracoes

As redes 802.11 sem fio sao muito usadas nos ambientes nomades e difusos. Existem

varias outras tecnologias baseadas nas normas IEEE 802 [IC2, 2007a; IC2, 2007b]. Elas

necessitam de novos mecanismos de seguranca, contudo a falta de protecao fısica dos APs

e a transmissao de dados via sinal de radio sao as principais causas da vulnerabilidade

das redes 802.11. Os servicos fornecidos por essas redes sao expostos a diversos problemas

de seguranca. As redes 802.11 sem fio sao sensıveis a varios ataques e apresentam varias

falhas de seguranca.

Page 70: Um Modelo de Gerência de Segurança para Middleware Baseado

4.3 Redes Celulares Moveis 71

4.3 Redes Celulares Moveis

ITU desenvolveu um conjunto de normas para o sistema de telecomunicacao movel

de terceira geracao (3G) denominado IMT-2000 (International Mobile Telecommunication

system for the year 2000 ); elas sao especificadas para funcionar em bandas de frequencias

aproximadas a 2GHZ e oferecer velocidade que pode atingir 2 Mbps. As redes IMT-

2000 tem como objetivos: oferecer servicos de alta velocidade com transmissao de mıdia

vıdeo, utilizar um unico terminal (movel) em varias redes sem fio (mobilidade vertical),

tornar os servicos fixos e moveis compatıveis e transparentes ao usuario. Essas redes

oferecem tambem uma mobilidade global que inclui a mobilidade do terminal, do usuario

e dos servicos. A quarta geracao de redes moveis (4G) esta por vir e podera ser baseada

em mecanismos das redes celulares ou rede sem fio IEEE ou uma combinacao dos dois

mecanismos. A ITU atualmente especifica que sua velocidade pode atingir 1Gbps em

posicao estatica e 100Mbps em movimento. A figura 4.2 mostra a evolucao das normas

das redes celulares. Apesar da diversidade, elas apresentam o mesmo objetivo: construir

uma rede capaz de transportar voz e dados, respeitando as imposicoes de QoS (Quality

of Service) e Seguranca, sobretudo com baixo custo, para os usuarios e operadores.

Tecnologias 1G 2G 3G 3.5G 4GCT01 GSM CDMA HSDPA ?AMPS PCS UMTS MIMONMT PDCTACS

Frequencia 450MHz a 900MHz a 2GHz >2GHz900MHz 1900MHz

Servicos voz voz e dados multimidia multimidia multimidiatempo real

Velocidade ate 10Kps 9.6 - 64Kps 364 - 2Mbps 380 -20Mbps 100 ate1Gbps

Tabela 4.1: Evolucao das redes celulares [IC2, 2007a].

4.3.1 Elementos das Redes Celulares

Uma rede celular baseia-se em emissoras de baixa potencia (proxima a 100W). Em

funcao dessa baixa potencia, uma area geografica e divida em areas menores chamadas

de celulas. Cada celula dispoe do seu proprio emissor/receptor (antena) sob o controle de

uma estacao de base. Para evitar as interferencias, cada celula dispoe de uma faixa de

Page 71: Um Modelo de Gerência de Segurança para Middleware Baseado

4.3 Redes Celulares Moveis 72

frequencias. As celulas adjacentes nao usam as mesmas frequencias. Uma rede celular e

composta em geral de estacoes radio base (BS – Base Station) e de centrais de comutacao

celular (MTSO – Mobile Telephone Switching Office).

• Estacao Radio Base: composta de uma antena no centro da celula, um controlador

e varios emissores/receptores. Ela permite a comunicacao nos canais associadas a

uma celula. O controlador gerencia o procedimento de chamada entre um movel e

o resto da rede. A BS e conectada a uma central de comutacao de terminais. Dois

tipos de canais sao estabelecidos entre o movel e a BS: canais de controle e canais

de trafego. Os canais de controle servem para estabelecer e manter a conexao do

movel com a BS mais proximo. Os canais de trafego servem para a transmissao de

voz e dados do usuario;

• Central de comutacao celular: E o coracao de um sistema celular, responsavel

pela validacao dos assinantes, processamento de chamadas, interface com a rede

fixa de telefonia, interface com outras MTSOs sejam elas de outra operadora ou

nao, geracao de bilhetes das chamadas, gerenciamento de hand-off (passagem do

terminal movel de uma celula para outra), monitoracao de alarmes das estacoes

radio base , entre muitas outras funcoes. A quantidade de estacoes que uma MTSO

pode gerenciar e o numero de assinantes maximo dependem muito da filosofia de

operacao de cada empresa no que diz respeito a qualidade dos seus servicos.

Figura 4.2: Estrutura de uma rede celular.

Page 72: Um Modelo de Gerência de Segurança para Middleware Baseado

4.4 Analise das Solucoes de Seguranca Existentes 73

Consideracoes

O mundo se torna cada vez mais conectado e comunicante. Os sistemas de teleco-

municacoes constituem uma interface crucial de interconexao dos sistemas de informacao

modernos. A democratizacao das tecnologias de informacao e das comunicacoes, ma-

terializada pela interconexao de diversos sistemas tornam a protecao das informacoes e

infra-estruturas mais complexas. Os sistemas de telecomunicacoes sao hoje considerados

infraestruturas crıticas, suas protecoes se tornam uma preocupacao polıtica, comercial e

pessoal [CONSEIL, 2007] (consultado 2009). A seguranca e um processo determinante que

deve acompanhar o desenvolvimento dos sistemas de comunicacao. A seguir analisamos

algumas solucoes de seguranca existentes. Isoladas, elas nao se tornam eficientes.

4.4 Analise das Solucoes de Seguranca Existentes

4.4.1 Protocolo SSH

O SSH ou Shell Seguro tem como objetivo tornar segura a comunicacao remota entre

cliente e servidor Unix. A sua primeira versao apresentou varias falhas, desde entao o

IETF (International Engineering Task Force) desenvolveu uma nova versao denominada

SSH-2 com novos algoritmos e servicos como transferencia de arquivos (SFTP) e tunela-

mento.

Arquitetura

SSH utiliza uma arquitetura cliente/servidor para proporcionar a autenticacao, a crip-

tografia e a integridade dos dados trafegados na rede. A versao 2 deste protocolo especifica

uma arquitetura de tres camadas:

• Camada de transporte SSH (SSH-TRANS): fornece a autenticacao do servi-

dor, a confidencialidade e integridade dos dados. Ela permite ao cliente saber se

esta se comunicando de forma segura com um servidor autentico. A comunicacao e

criptografada atraves de um algoritmo de criptografia simetrica;

• Camada de autenticacao SSH (SSH-AUTH) permite garantir ao servidor a

identificacao do cliente e provar que o cliente e realmente quem ele diz ser. Esta

garantia e feita atraves da chave de criptografia criada na camada de transporte.

Apos a autenticacao, o cliente entra em conexao segura e pode ter acesso aos servicos

do servidor (por exemplo: sessao Shell interativo, aplicacoes X11, portas TCP/IP

Page 73: Um Modelo de Gerência de Segurança para Middleware Baseado

4.4 Analise das Solucoes de Seguranca Existentes 74

tuneladas);

• Camada de conexao SSH (SSH-CONN): esta camada se apoia na camada

de autenticacao oferecendo uma variedade de servicos: multiplexacao de fluxos ou

canais, a gestao de transferencias de portas TCP, gestao de agentes de autenticacao,

execucao de programas remotos, controle de fluxo, gestao dos terminais, entre outros

servicos.

Consideracoes

O SSH constitui uma pratica de protecao das comunicacoes em uma rede de computa-

dores. Atraves de seu mecanismo de autenticacao, permite efetuar a partir de um tunel

seguro, conexoes remotas, transferencia de arquivos e outras importantes funcionalidades

como, por exemplo, o servico de Single Sign On (SSO). Com o SSO, o cliente e identi-

ficado e autenticado uma unica vez no sistema na sua primeira conexao com o servidor

SSH. A partir daı, qualquer abertura de sessao com outro servidor SSH e transparente ao

cliente, assim o cliente nao precisa se identificar uma segunda vez.

Apesar da pratica de seguranca e da facilidade de uso, o SSH e vulneravel a ataques

de repudio de servicos, analise e desvio de trafego. Uma falsa recepcao da chave publica

enviada para o servidor SSH pode permitir a um malicioso desviar a comunicacao e enviar

uma falsa chave durante a primeira conexao com o servidor SSH. Os caracteres das senhas

do cliente SSH sao enviados diretamente por pacotes IP. Um intruso pode observar e,

atraves de metodos markovianos baseados no tempo e frequencia, quebrar a senha do

cliente. A autenticacao por delegacao de confianca atraves do Single Sign On nao e

segura.

4.4.2 Protocolo SSL/TLS

E um protocolo modular. Seu objetivo e proporcionar seguranca as transacoes na

Internet entre clientes e servidores. Ele atua como uma camada complementar acima do

TCP, garantindo assim os servicos de autenticacao, de confidencialidade e de integridade.

A implementacao nativa da ultima versao pelos atuais navegadores e servidores Web do

mercado faz do HTTPS (HTTP sobre SSL/TLS) o padrao de fato de seguranca das apli-

cacoes Web. SSL/TLS hoje e macicamente utilizado no e-commerce (comercio eletronico)

para cifrar a comunicacao e autenticar os servidores atraves de certificados X.509 porem

pouco usado na autenticacao do cliente devido as pesadas operacoes de criptografia para

verificar os certificados.

Page 74: Um Modelo de Gerência de Segurança para Middleware Baseado

4.4 Analise das Solucoes de Seguranca Existentes 75

Arquitetura

O SSL/TLS e constituıdo de duas camadas de protocolos:

• Record protocol ou camada de registro: fornece os servicos basicos de seguranca,

como por exemplo: encapsular os dados e os encaminhar para as camadas superiores

do protocolo TCP; fragmentar os dados recebidos de diversos protocolos de nıveis

superiores; efetuar a criptografia; acrescentar um cabecalho e transmitir a unidade

resultante a um segmento da rede TCP.

• A segunda camada e composta de tres protocolos:

– Handshake protocol ou protocolo de aperto de mao – permite autenticar as

partes envolvidas em uma transacao e garantir um mecanismo seguro para

gestao das chaves. Ele opera de duas formas: o Handshake completo estabelece

uma conexao completa com a negociacao explıcita dos parametros de seguranca

ou o Handshake abreviado, onde ao inves de negociar uma nova conexao o

protocolo utiliza uma antiga sessao SSL/TLS ja negociada;

– CCS (Change Cipher Spec Protocol) ou protocolo de troca de especificacoes

de criptografia - seu unico objetivo e ativar para a sessao SSL corrente os

algoritmos, as chaves e os numeros aleatorios negociados durante a fase de

inicializacao do Handshake protocol;

– Alert protocol ou protocolo de alerta – ele especifica as mensagens de alerta

enviadas entre os clientes e servidores. As mensagens sao de dois tipos: fatal

error ou warning error quando o erro e fatal a conexao e interrompida e nao

sao permitidas novas conexoes.

Consideracoes

O SSL/TLS e um protocolo de seguranca que garante transacoes confiaveis entre um

cliente e um servidor SSL/TLS. Suas principais vantagens sao a forte preservacao da inte-

gridade das mensagens, a interoperabilidade e facilidade de uso. Ele e compatıvel com a

grande maioria dos navegadores web inclusive Internet Explorer da Microsoft e Netscape.

O SSL/TLS e operavel em varios servidores Web. Muitos sistemas operacionais integram

os servidores LDAP (Lightweight Directory Access Protocol).

Page 75: Um Modelo de Gerência de Segurança para Middleware Baseado

4.4 Analise das Solucoes de Seguranca Existentes 76

Apesar dessas inumeras vantagens, o protocolo SSL/TLS, como qualquer tecnologia

inovadora, apresenta alguns problemas. Esses problemas sao relacionados aos navegadores

e residem na verificacao automatica da validade dos certificados, nas listas de renovacoes

e restricoes de exportacao e na conservacao das chaves privadas em lugares seguros. A

autoridade certificadora, que emite o certificado para os clientes ou os sites, pode revoga-

los sem consulta previa dos usuarios. Quando um certificado expira, o usuario deve obter

manualmente um novo certificado, o que nao e trivial para os usuarios comuns.

Existem tambem problemas ligados a implementacao da criptografia: recentemente

os pesquisadores da EPFL (Escola Politecnica de Lausanne), da universidade de Stanford

e da universidade de Praga encontraram falhas relacionadas a interceptacao de senhas,

tempo de criptografia e descriptografia. Teoricamente o SSL/TLS e vulneravel a ataques

por forca bruta: se a chave de criptografia utilizada for de 40 bits, portanto, recomenda-se

o uso de uma chave de 128 bits. O SSL/TLS exige um canal confiavel para os aplicativos

que usam o protocolo UDP, pois nao foi projetado para estes tipos de aplicativos. Quando

ele foi desenvolvido, esta limitacao nao era considerada necessaria, pois a grande maioria

dos aplicativos utilizava o protocolo TCP. Hoje, esta situacao mudou. Durante os ultimos

anos um numero crescente de protocolos da camada de aplicacao como, por exemplo, (SIP

– Session Initiation Protocol) (RTP – Real Time Protocol) , (MGCP – Mıdia Gateway

Control Protocol) e uma variedade de protocolos de jogos foram desenvolvidos para utilizar

o UDP. Infelizmente o SSL/TLS e incapaz de oferecer servicos de seguranca para estes

tipos de aplicacoes.

4.4.3 Protocolo IPSec

O IPSec e um conjunto de protocolos desenvolvidos pelo IETF para proteger o trafego

IP. Inicialmente, foi concebido com a filosofia IPv6 (Internet Protocol version 6). Devido

a atual e urgente necessidade de seguranca na Internet e Intranet o protocolo IPSec e

tambem utilizado sobre IPv4 (Internet Protocol version 4). Uma maneira de conseguir

a compatibilidade com IPv4 sem precisar modificar as suas especificacoes e considera-lo

como um protocolo independente e implementavel como um modulo adicional na forma

de um Software ou Hardware.

Arquitetura

Um sistema IPSec e composto de: SPD (security Policy Database). Cada entrada

SPD e identificada por um unico SPI (Security Parameter Index ). Uma comunicacao

Page 76: Um Modelo de Gerência de Segurança para Middleware Baseado

4.5 Conclusao 77

protegida por IPSec e chamada de SA (Security Association). Cada SA e identificada de

maneira unica por um SPI, um endereco IP de destinacao e um protocolo AH (Autentica-

tion Header) ou ESP (Encapsulation Security Payload). Os SA ativos sao agrupados em

um SAD (Security Association Database). Para processar um datagrama o SPD sempre e

consultado, e pode ocorrer: uma rejeicao ou uma aceitacao sem tratamento IPsec ou com

aplicacao IPSec. A presenca de mecanismo de criptografia assimetrico implica na gestao

de chaves e as suas distribuicoes no sistema. O protocolo IKE (Internet Key Exchange)

foi definido como protocolo default para a gestao e distribuicao das chaves.

Consideracoes

O IPSec apresenta um nıvel de seguranca maior do que as outras solucoes de segu-

ranca apresentadas na camada de aplicacao. Ele e uma otima solucao de protecao da

infraestrutura da rede contra o controle e a analise nao autorizada do trafego, usurpacao

de endereco IP, escuta e alteracao de pacotes. IPSec tem a vantagem de ser transparente

nas aplicacoes. Sua utilizacao nao implica mudancas nos sistemas ou servidores que o

usam. Os VPN IPSec sao os mais seguros e mais utilizados pelas empresas para interligar

suas redes internas com a Internet. Os problemas do IPSec sao relacionados a redundancia

de suas funcionalidades, pois diferentes camadas tem as mesmas funcoes.

4.5 Conclusao

Atualmente, os protocolos SSH, SSL/TLS e IPSec sao as tres solucoes de seguranca

mais utilizadas . Constata - se que o SSH nao e aplicavel a novos ambientes, portanto,

e incapaz de satisfazer as novas necessidades das aplicacoes e usuarios moveis. O pro-

tocolo SSL/TLS e atualmente o unico protocolo usado em grande escala na maioria das

plataformas seguras da Web, tanto em nıvel dos servidores, como dos clientes. Ele e adap-

tado as aplicacoes transacionais da Internet e se integra facilmente a outros ambientes.

E utilizado pelo consorcio WAP (Wireless Application Protocol) para as comunicacoes

radiofonicas do tipo GSM e pelo protocolo EAP de ambientes sem fio (WI-FI 8002.11)

[GAST, 2002; KENT; ATKINSON, 1998; ABOBA; SIMON, 1999]. Para a computacao

nomade e difusa o protocolo SSL/TLS apresenta um grande interesse e uma contribuicao

no desenvolvimento de novas solucoes de seguranca mais confiaveis. Ele merece um estudo

mais detalhado voltado para a computacao movel. O protocolo IPSec e seus subproto-

colos associados oferecem uma solucao padrao e confiavel para a implementacao de redes

privadas seguras (VPN’s) e proporciona aos outros protocolos um complemento de segu-

Page 77: Um Modelo de Gerência de Segurança para Middleware Baseado

4.5 Conclusao 78

ranca; porem, e confrontado a alguns problemas de incompatibilidade ligados a arquitetura

e concepcao das redes sem fio.

Page 78: Um Modelo de Gerência de Segurança para Middleware Baseado

79

5 Seguranca em ComputacaoDifusa e Nomade

5.1 Introducao

O desafio da seguranca dos sistemas de informacao numa forma mais abrangente

refere-se a protecao das informacoes, dos recursos materiais e da privacidade dos seus

usuarios [OFTA, 2007]. Nos sistemas difusos e nomades a nocao de transparencia de tec-

nologias e a confianca sao imprescindıveis, assim os sistemas de seguranca devem permitir

as entidades que cooperam estabelecer um nıvel de confianca mutua. Pode-se, de forma

geral, decompor a seguranca em tres principais aspectos [OFTA , 2007]:

• Confidencialidade e integridade nas transacoes de dados e migracao de agentes;

• Nao desvio e deturpacao de dados ıntimos, o que significa a preservacao da privaci-

dade;

• Nao repudio ou negacao de servicos, o que implica disponibilidade de servicos.

Alem dessas preocupacoes, existe o desafio as ameacas de seguranca de funcionamento

causadas por deterioracao dos dispositivos fısicos que conduz a uma degradacao progres-

siva do funcionamento, interferencia, limitacao do raio de cobertura e eventuais obstaculos

(parede, predio, chuva) na comunicacao sem fio, diversidades e heterogeneidade dos dis-

positivos e tecnologias, incompreensoes e erros ligados a interacao homem-sistema. A

possibilidade de ataques e uso indevido de dispositivos em ambiente de comunicacao sem

fio nao seguros constituem tambem outra preocupacao. Os ataques classicos (intercep-

tacao, interposicao em uma comunicacao sem fio, e nao cooperacao de dispositivos) sao

os mesmos praticados nos sistemas de computacao tradicional, tal como a Internet e

ja sao objetos de varias pesquisas. Porem, novos ataques ameacam a privacidade dos

usuarios da computacao difusa; por exemplo, os roubos, perdas frequentes de aparelhos,

Page 79: Um Modelo de Gerência de Segurança para Middleware Baseado

5.2 Seguranca Relacionada a Confidencialidade e Integridade 80

transmissao de vırus no uso de dispositivos de identificacao a distancia (etiqueta RFID:

Radio Frequency Identification) [RIEBACK et al, 2006] e quebra de sigilo no servico de

geolocalizacao contextual. Para deter essas ameacas - tanto as classicas como as novas,

e proporcionar seguranca, as tecnologias e aplicacoes da computacao difusa enfrentam as

restricoes inerentes a dispositivos moveis. A limitacao de recurso de energia, largura de

banda e capacidade de processamento inviabilizam o uso de criptografias mais eficientes

e dificultam o desenvolvimento de algoritmos adequados a seguranca. A essas limitacoes

acrescentam-se outras dificuldades como o dinamismo (mobilidade, variacao do numero

de dispositivos), deteccao de falhas, perda de comunicacao na mobilidade e a hetero-

geneidade funcional dos dispositivos. Sobretudo, nao podemos nos esquecer de que o

usuario final da computacao difusa nem sempre e guru da tecnologia, o que constitui um

desafio complementar para sua sensibilizacao sobre as ameacas e a eficacia das solucoes

implementadas.

5.2 Seguranca Relacionada a Confidencialidade e In-

tegridade

O uso generalizado das comunicacoes sem fio na computacao difusa multiplica os

ataques passivos (analise de trafego, escuta da comunicacao) e ativos (modificacao de

mensagens transmitidas). Esses ataques comprometem a integridade e confidencialidade

dos dados e transacoes. Para isso, e necessario estabelecer associacoes seguras e confiaveis.

• Estabelecimento de Associacoes Seguras: a seguranca de utilizacao de tecnolo-

gias na computacao difusa envolve a seguranca da comunicacao e interacao entre

os dispositivos, assim, e imprescindıvel o estabelecimento de associacoes seguras en-

tre entidade fısica manipulada e entidade logica (materializada por uma chave ou

senha). A garantia de uma comunicacao segura nao e evidente; em muitas situacoes

o usuario humano nao se convence de que o dispositivo que usa ou manipula esta

realmente associado a entidade logica ou fısica com a qual ele pensa interagir. O

dispositivo e aquele que ele realmente usa. Por exemplo, como um usuario pode ter

a garantia de que seu smartphone esta realmente ligado a AP (Acess Point) da rede

privada sem fio da sua casa, e nao ao AP da rede do vizinho? As fotos que ele esta

descarregando do seu smartphone para a sua TV nao estao tambem aparecendo no

televisor do apartamento ao lado? A mıdia que ele esta transferindo por Bluetooth

para um destinatario legıtimo nao esta indo tambem para intrusos infiltrados no

Page 80: Um Modelo de Gerência de Segurança para Middleware Baseado

5.2 Seguranca Relacionada a Confidencialidade e Integridade 81

meio? Para responder a essas duvidas, varias solucoes sao propostas, mas elas ap-

resentam falhas ou limitacoes e dependem da evolucao dos aparelhos e da aceitacao

dos usuarios, por exemplo, o protocolo de estabelecimento de chaves de Diffie e

Hellman [DIFFIE; HELLMAN, 2006]. Este protocolo e baseado em uma tecnica

que consiste em construir uma chave compartilhada para autenticar todas as partes

envolvidas na comunicacao, mas essa solucao exige muitos calculos o que se torna

muito pesado para o dispositivo movel. Tambem ele e vulneravel aos ataques Man

In The Middle, isso e o intruso infiltrado no meio da comunicacao pode se identi-

ficar no lugar da entidade esperada. Balfanz et al [BALFANZ et al, 2002], propoem

um mecanismo de comunicacao com duas fases: na primeira fase uma chave sec-

reta e gerada e compartilhada entre o par de dispositivos comunicantes usando um

canal de comunicacao infravermelho, na segunda fase os dispositivos se identificam

e autenticam atraves da chave gerada na fase anterior e depois comecam a comuni-

cacao sem fio, via radio. Essa solucao tambem e vulneravel a ataque Man In The

Middle e exige que as portas infravermelhas estejam em linha reta sem obstaculos,

com melhor visibilidade. Essas abordagens permitem garantir ao usuario um canal

seguro com o dispositivo conhecido e designado pelo usuario, mas nao prova que o

dispositivo designado contem a entidade logica com a qual o dispositivo pessoal se

comunica. Os protocolos de verificacao de proximidade (distance bounding proto-

cols) [BRANDS; CHAUM, 2003] sao uma abordagem para resolver o problema de

confianca, ela e baseada na velocidade de propagacao da mensagem e na estimativa

de tempo de envio e recebimento de uma resposta de desafio a entidade detentora

da chave secreta. Esses protocolos permitem reduzir a probabilidade de sucesso

dos ataques Man In The Middle, mas nao constituem solucoes definitivas. Outras

abordagens para o estabelecimento de associacao segura entre entidade fısica e log-

ica, baseadas em prova de proximidade existem [CLULOW et al, 2006; HANCKE;

KUHN, 2005; JUELS, 2006; SASTRY, 2003; WATERS; FELTEN, 2003], mas nao

resolvem o problema da preservacao da privacidade do usuario.

• Estabelecimento de confianca: A seguranca tradicional associa a confianca em

uma entidade com a sua autenticacao, isso e provar que a entidade e realmente

quem ela diz ser. Estabelecer a confianca consiste em reconhecer uma entidade

atraves de seus atributos como, por exemplo, sua identidade, localizacao e seus

vizinhos. As infraestruturas de chaves publicas PKI (Public Key Infrastructure)

fornecem mecanismos onde autoridades centralizadas ou distribuıdas avaliam a con-

fianca. Nos sistemas difusos, o estabelecimento de confianca pode ser feito de tres

Page 81: Um Modelo de Gerência de Segurança para Middleware Baseado

5.2 Seguranca Relacionada a Confidencialidade e Integridade 82

formas: atraves de provas de contexto ambiente, avaliacao de cooperacao e avaliacao

de comportamento [OFTA, 2007].

– Confianca Baseada em Provas do Contexto Ambiente: O contexto ambiente

sao as variaveis pertinentes relacionadas a uma entidade ou dispositivo do am-

biente. A maioria dos mecanismos de estabelecimento de confianca na com-

putacao difusa baseia-se em obter prova atraves do contexto ambiente. A

avaliacao pode ser de forma indireta, sem o conhecimento da identidade da

entidade, mas usando outros atributos como, por exemplo, a sua localizacao,

horario de acesso e nos vizinhos. A confianca baseada em provas contextu-

ais caminha para uma abordagem de controle de acesso baseado em atributos

diferentes da identidade [COVINGTON et al, 2002; YAO et al, 2005]. Os

raciocınios sobre o contexto apoiam-se na utilizacao de descricoes semanticas

de criterios da avaliacao de regras XACML(eXtensible Access Control Markup

Language) [GOMEZ et al, 2005]. Semelhante ao caso do PKI, para verificar a

veracidade ou autenticidade das varaveis e o gerenciamento dos privilegios de

acesso, sao necessarias autoridades que fazem uso de credencial. O mecanismo

de recolhimento de provas de contexto deve garantir que as mesmas nao sejam

transferidas para um terceiro nao autorizado. A localizacao e uma importante

variavel na definicao de um contexto ambiente, geralmente isso e feito atraves

de GPS (Global Positioning System). Porem, a sua utilizacao exige alguns

cuidados, pois os GPS podem sofrer ataques [JOHNSTON; WARNERJ, 2003].

– Confianca Baseada em Avaliacao de Cooperacao: Os ataques chamados ataques

por egoısmo sao frequentes na computacao difusa: um no da infraestrutura

tende a monopolizar um recurso colaborador sem contribuir, por exemplo, um

no para economizar seu recurso de energia pode deixar de encaminhar aos seus

vizinhos os pacotes que transitam por ele. A cooperacao constitui um requisito

importante para garantir o funcionamento de uma infraestrutura em ambiente

distribuıdo. Distinguem-se dois mecanismos principais para avaliar a cooper-

acao: pela reputacao (boa ou ruim) [MARTI et al, 2005, MICHIARDI et al,

2002], e a remuneracao (preco ou credito) [BUSSARD, 2005]. A tecnica por

reputacao e mais simples de ser implementada e muito usada nas redes moveis

Ad hoc para garantir o roteamento de pacotes. A remuneracao e uma abor-

dagem que necessita de muito mais precisao. Nesta situacao, e determinado

para cada servico um credito ou um preco suficiente para a sua realizacao. Por

exemplo, para garantir o encaminhamento de um pacote em uma rede movel:

Page 82: Um Modelo de Gerência de Segurança para Middleware Baseado

5.3 Protecao da Privacidade 83

o envio do pacote pressupoe avaliar a distancia a ser percorrida a fim de lhe

fornecer creditos suficientes para garantir o encaminhamento de no a no, ate o

destino previsto. As implementacoes desta abordagem podem ser encontradas

em [BUSSARD, 2005; CHAUM, 2002].

– Confianca Baseada na Avaliacao de Comportamento: consiste em observar e

avaliar o comportamento do usuario ou dos seus dispositivos. A confianca de-

pende de um perfil padrao, por exemplo, vigiar um pessoa em um local implica

em observar todos os seus gestos ou levantar informacoes comportamentais.

Entretanto, as abordagens de associacao segura e confiavel levantam a questao da protecao

da privacidade.

5.3 Protecao da Privacidade

O direito ao respeito da privacidade e considerado pela ONU (Organizacao das Nacoes

Unidas) na declaracao universal dos direitos humanos como um direito fundamental do

indivıduo [CDFUE, 2000; ONU, 1998]. Infelizmente, as novas tecnologias representam

uma ameaca a esse direito, por exemplo, as tecnicas de autenticacao e de auditoria na

preocupacao de garantir a legitimidade ou nao, poem em risco a privacidade dos usuarios.

E necessario desenvolver mecanismos que permitam garantir a protecao dos dados pes-

soais. A protecao da privacidade exige quatro criterios [ISO/IEC15408, 2005]: Anonimato

(anonymity), possibilidade de agir com um pseudonimo (pseudonomity), impossibilidade

de estabelecer uma ligacao ou traco (unlinkability) e nao observabilidade (unobservabil-

ity). Essas exigencias constituem a base das tecnologias de protecao da privacidade PET

(Privacy-Enhancing Tecnologies). Nos princıpios fundamentais e importante considerar

que os dados pessoais pertencem a quem com eles se relacionam, e nao ao proprietario

do sistema que os armazena ou os manipula. So podem ser divulgados os dados estri-

tamente necessarios para a execucao da tarefa exigida ou aceita, fala-se do princıpio de

minimizacao de dados pessoais. Na divulgacao de dados, a terceiros para realizar uma

tarefa, devem-se respeitar as exigencias impostas pelo proprietario dos dados: guardar de

forma confidencial e apaga-los apos a execucao da tarefa, isso e o princıpio de soberania.

Varias abordagens sao utilizadas na computacao difusa para proteger a privacidade, entre

elas podemos citar: gestao de identidades virtuais, comunicacao anonima, acesso anonimo

a servicos:

Page 83: Um Modelo de Gerência de Segurança para Middleware Baseado

5.3 Protecao da Privacidade 84

• Gestao de Identidades Virtuais: para que uma pessoa possa proteger sua pri-

vacidade, e importante ocultar ou reduzir o maximo possıvel suas ligacoes com suas

acoes e dados correspondentes, deixar o mınimo de rastro possıvel, por exemplo, o

endereco IP fixo de um internauta pode estabelecer uma ligacao com diferentes acoes

desse internauta na rede mundial. A identidade e definida como a representacao de

uma pessoa por um servico. Se a pessoa acessa varios servicos sob a mesma identi-

dade, e possıvel estabelecer uma relacao com seus acessos; nesse caso, e recomendavel

ter multiplas identidades virtuais (pseudonimos) para acessar os servicos, selecionar

qual identidade usar para cada servico e poder gerenciar suas validades. A veri-

ficacao das identidades deve ser relacionada a sensibilidade dos servicos, ou seja,

nao e necessaria a autenticacao para acessar um servico nao sensıvel, isso e, um

servico que nao armazena nem gera dados pessoais, porem uma autenticacao forte

e indispensavel para servicos sensıveis para impedir quaisquer usurpacoes de iden-

tidade. As tecnologias da computacao difusa devem ser utilizadas para desenvolver

dispositivos pessoais que permitam a qualquer usuario gerenciar facilmente suas

identidades virtuais [ISMS2003, 2003].

• Comunicacao anonima: a analise de trafego nas redes como, por exemplo, a inter-

net e uma importante ameaca a privacidade, mesmo se o conteudo da comunicacao

for criptografado. A observacao dos enderecos de origem e de destino dos pacotes IP

pode revelar informacoes sensıveis. O endereco IP pode ser utilizado para identificar

e localizar geograficamente uma pessoa; este risco e maior na computacao difusa,

pois as comunicacoes sem fio sao faceis de captar. Para evitar a escuta passiva da

comunicacao, David Chaum apresenta um protocolo que utiliza roteadores chama-

dos MIX [CHAUM, 2001] que ocultam a relacao entre as mensagens que entram e

saem deste roteador, embaralha as mensagens recebidas antes de transmiti-las em

uma ordem aleatoria. Neste caso, por exemplo, se Alice quer se comunicar com Bob

de forma anonima, ela criptografa sua mensagem com a chave do MIX e a envia para

o MIX. O MIX entao se carrega de localizar Bob e lhe encaminha a mensagem crip-

tografada. Desta forma, um malicioso escutando e analisando a comunicacao nao

consegue diferenciar Alice das outras pessoas que enviam mensagens para o MIX,

nem Bob dos demais destinatarios de mensagens vindos do MIX. Outras abordagens

de comunicacao anonima sao baseadas em alocacao dinamica de endereco IP atraves

de servidores DHCP [CHAUM, 1998].

• Acesso anonimo a servico: a comunicacao anonima nao e suficiente para ter um

acesso anonimo a um servico. As mensagens de solicitacao de servicos enviadas ao

Page 84: Um Modelo de Gerência de Segurança para Middleware Baseado

5.4 Disponibilidade 85

fornecedor podem conter informacoes identificadoras que revelam a privacidade, por-

tanto, elas devem ser transformadas por um proxy, uma autoridade intermediaria,

antes de serem transmitidas ao fornecedor de servico. Esta transformacao depende

da semantica da mensagem (significado do seu conteudo). Uma transformacao ex-

agerada pode distorcer ou perder o significado original da mensagem, portanto e

necessario um cuidado especial o que nao e uma tarefa facil. O acesso a um servico

depende de autorizacao de privilegios, e deve tambem manter a privacidade do

usuario, para isso e necessario separar a autorizacao da autenticacao: nem sempre

se pode exigir provar a identidade para obter privilegios de acesso. Simplesmente

poderia ser usada uma garantia anonima (anonymous credencial) [DEMORACSKI,

2005]. Esta abordagem e conhecida como autorizacao anonima, cuja implementacao

pratica e o IDEMIX (Identity Mixer) [CAMENISCH; HERREWEGHEN, 2002]. A

ideia e baseada em pseudonimo, garantia e prova criptografada chamada assinaturas

de grupo. Com a assinatura, os membros de um grupo podem ter acesso ao servico

de um servidor, sem revelar suas identidades.

E desejavel que a gestao de tais garantias anonimas seja integrada nos dispositivos

pessoais dos usuarios: implementar em chips algoritmos de criptografia que permitam

autenticar os atributos secretos dos usuarios nos seus proprios dispositivos. Esses dispos-

itivos deveriam integrar as tecnologias de autenticacao por biometria, para impedir que

eles sejam usados por terceiros em caso de perda e roubo, garantindo assim a “intransferi-

bilidade”.

5.4 Disponibilidade

A computacao difusa e nomade, apesar dos problemas de consumo de energia [FEENEY,

2002] [OLSEN; NARAYANASWAMI, 2006], a fragilidade, a interferencia na transmissao

sem fio [COVINGTON et al, 2002] e falhas nos dispositivos, precisam garantir a seus

usuarios o acesso a informacoes e utilizacao de servicos do sistema. Para isso, devem-se

implementar tecnicas de tolerancia a falhas similares dos sistemas distribuıdos, baseadas

em duplicacao e replicacao de dados e servidor de servicos [ABBADI, 1985; GIANUZZI,

2004; HARA; MADRIA, 2006].

Page 85: Um Modelo de Gerência de Segurança para Middleware Baseado

5.5 Conclusao 86

5.5 Conclusao

A integracao da informatica nos dispositivos fısicos, a mobilidade destes dispositivos,

dos servicos que eles contem e a onipresenca da comunicacao sem fio aumentam o desafio

da seguranca das interacoes, protecao da privacidade e disponibilidade de servicos. Para a

seguranca das interacoes sao necessarias as tecnicas de criptografias associadas as provas

de proximidade ou a autenticacao de identidade para proporcionar o estabelecimento de

associacoes seguras e de confianca. Varias abordagens foram apresentadas, mas suas

adocoes dependem da evolucao dos aparelhos moveis e da sua aceitacao pelos usuarios.

O estabelecimento de associacao segura e confiavel e necessario para a protecao das

aplicacoes e dispositivos do sistema difuso e nomade. A multiplicacao dos dispositivos

pessoais e do grande volume de informacoes sensıveis sobre o perfil do usuario exigem uma

preocupacao. E conveniente desenvolver tecnologia de protecao da privacidade do usuario

PET (Privacy-Enhancing Technologies). A seguranca e a disponibilidade de aplicacoes e

servicos sao condicoes necessarias para a aceitabilidade da computacao difusa pelo grande

publico.

Page 86: Um Modelo de Gerência de Segurança para Middleware Baseado

87

6 Modelo Proposto:SecMobileAgent

6.1 Introducao

Este capıtulo contem o modelo de gerencia de Seguranca desenvolvido. Inicialmente,

sao colocados topicos que servem para justificar a escolha do tema, em seguida, e ap-

resentado o modelo em si e sua relevancia com relacao a outras pesquisas na area do

tema.

6.1.1 Motivacoes para a Proposta

No capıtulo 3, diferentes middlewares para ambientes moveis foram analisados. E

dentro desses middlewares abordados, observou-se que os middlewares baseados em tuple

apresentam uma melhor estrutura para a concepcao de aplicacoes em ambientes moveis:

eles adotam o modo de interacao assıncrona, exploram a natureza desacoplada do es-

paco de tuples, permitem a fusao de espacos de dados para reunir objetos pertencendo

a diferentes entidades em um unico espaco logico. Os dados que residem em diferentes

nos podem ser compartilhados e acessados de forma transparente. Os espacos de tuples

introduzem mecanismos que favorecem o gerenciamento de mobilidade e facilidade de de-

senvolvimento de aplicacao movel. Portanto, esses middlewares constituem uma solucao

interessante para os problemas dos ambientes moveis e particularmente para os ambientes

nomades e difusos. Contudo, as analises mostram que esses middlewares quase nao abor-

dam a questao da seguranca. Na famılia dos middlewares moveis baseados em tuple, o

modelo Lime e uma referencia, mas no atual estagio do seu desenvolvimento, o Lime ainda

e muito vulneravel. O espaco de tuple compartilhado nao e seguro, os agentes e recursos

estao sujeitos a ameacas, pois faltam mecanismos de seguranca.

Para resolver os problemas relacionados a seguranca, foi implementado um framework

de gerencia de seguranca denomidado SecMobileAgent [NGUESSAN; MARTINI, 2008]

Page 87: Um Modelo de Gerência de Segurança para Middleware Baseado

6.1 Introducao 88

que oferece servicos de seguranca para middlewares de ambientes moveis baseados em

tuple. Este capıtulo trata essencialmente do estudo deste framework e da sua implemen-

tacao. A ontologia utilizada para a sua especificacao formal foi a UML (Unified Modeling

Language) mantida como padrao pelo OMG.

6.1.2 Notacao Ontologica

A ontologia e definida como uma especificacao formal de alto nıvel de um determi-

nado domınio de conhecimento: ou seja, uma especificacao formal e explicita de uma

conceituacao compartilhada por um grupo [GRUNINGER; LEE, 2002] A conceituacao

de um domınio e uma visao particular e abstrata de eventos e entidades reais e seus rela-

cionamentos. Formal significa o fato de uma ontologia ser uma forma de representacao

de conhecimento e possuir uma especificacao formal de software para representar tais

conceituacoes, uma ontologia podera ser especificada e codificada numa determinada lin-

guagem formal Explıcita significa que todos os tipos de primitivas, conceitos e restricoes

usadas na especificacao da ontologia estao definidos explicitamente. Finalmente, com-

partilhada significa que o conhecimento definido nas ontologias e consensual, ou seja, nao

esta associado apenas a um indivıduo, mas aceita por um grupo. Em termo de engenharia,

a notacao ontologica e uma maneira de representar um sistema. Ela trata da construcao

e operacoes do sistema: seus elementos, suas respectivas interacoes e a manifestacao da

construcao no curso do tempo. Com base na definicao ontologica, um sistema existe se

ele tem as seguintes propriedades [KARAM, 2006]: composicao - conjunto de elementos

da mesma categoria fısica, social e outras -, ambiente - conjunto de elementos da mesma

categoria que nao sao os de composicao - producao elemento que juntos produzem bens

e servicos que sao entregues para outros elementos no ambiente - e estrutura - um con-

junto de interacoes dos elementos de composicao e entre estes os elementos do ambiente -.

Um vocabulario ontologico definido atraves de uma linguagem formal nao ambıgua pode

servir de suporte a gerencia dos requisitos ao longo do processo de desenvolvimento de um

software. A ontologia e util no apoio a especificacao e implementacao de um sistema de

computacao complexo. Ela pode ajudar os envolvidos a alcancar um consenso no entendi-

mento sobre determinada area de conhecimento. O nosso objetivo nao e construir uma

ontologia nem uma taxonomia de termos para um modelo de gerencia de seguranca. Para

mais conhecimento sobre a ontologia sugere-se [GRUBER, 1993; GRUNINGER; LEE,

2002; GRUNINGER; FOX, 1995] . Para a descricao do SecMobileAgent foi usada a

UML (Unified Modeling Language) mantida como padrao pelo OMG. As secoes a seguir

apresentam a descricao dos requisitos e uma visao de analise do SecMobileAgent.

Page 88: Um Modelo de Gerência de Segurança para Middleware Baseado

6.2 Arquitetura do Modelo Proposto 89

6.2 Arquitetura do Modelo Proposto

A nossa proposta explora a gerencia de seguranca e cooperacao de aplicacoes em sis-

temas distribuıdos moveis. Um mecanismo de confianca baseado em prova de contexto do

ambiente, deteccao de intruso, confidencialidade e controle de acesso e implementado. A

proposta e baseada em arquitetura com comunicacao totalmente assıncrona. A abordagem

e direcionada aos middlewares peer to peer baseados em tuple. Focamos a questao da se-

guranca detectada em Lime (Linda in Mobile Environment). Os servicos de seguranca sao

implementados por agentes e interceptadores de seguranca. Um agente de seguranca local,

uma entidade autonoma embarcada no dispositivo movel (EE – Entidade Embarcada) e

responsavel pela aplicacao da polıtica estabelecida e do controle de acesso ao espaco local

(Host level tuple space). Em caso de acesso a servicos ou recursos remotos envolvendo

pares de entidades moveis, sao necessarios Gerenciadores Remotos de Seguranca denomi-

nado GRSec. Os servicos de seguranca sao configurados e executados pelos GRSec. Esses

gerenciadores sao distribuıdos no ambiente movel, e fornecem ponto a ponto servico de

autenticacao mutua, distribuicao de tıquetes, confidencialidade, disponibilidade, controle

de acesso e uma SMIB (Security Management Information Base). Na fase de autenti-

cacao, uma autoridade de distribuicao de tıquetes gera tıquetes criptografados que sao

usados pelos EM’s (Entidade Movel) como chave de sessao, estabelecendo assim uma as-

sociacao segura entre entidade fısica manipulada e entidade logica (materializada por uma

chave). O tıquete gerado e distribuıdo para uso temporario entre partes comunicantes. O

sistema de distribuicao de tıquetes no nosso mecanismo atende a duas principais exigen-

cias da seguranca nos sistemas difusos que sao: o estabelecimento de associacao segura

e estabelecimento de confianca. O mecanismo de controle de acesso e implıcito: quando

uma entidade movel invoca um servico do sistema de informacao, uma autoridade de se-

guranca do GRSec chamada de IS (Interceptador de Seguranca) intercepta a requisicao,

aplica uma funcao de seguranca antes de encaminha-la para uma autoridade de controle

de acesso (AC – Agente de controle de acesso); com esse procedimento, alem de verificar

as acoes e direitos de acesso aos servicos e possıvel garantir a protecao a privacidade do

usuario atraves de anonimato e pseudonimo.

A Figura 6.16.1 apresenta a arquitetura geral do modelo com os componentes do GR-

Sec. O SI representa o sistema de informacao compartilhada do ambiente. As funcoes de

seguranca sao executadas por agentes repartidos em dois nıveis: domınio local e domınio

remoto. No domınio local, a seguranca e proporcionada pela autoridade local denom-

inada SecLocalAgent-Agente Local de Seguranca e no domınio remoto, pelo GRSec

Page 89: Um Modelo de Gerência de Segurança para Middleware Baseado

6.2 Arquitetura do Modelo Proposto 90

atraves de suas entidades de seguranca AA (Agente de Autenticacao), DT (Distribuicao

de Tıquete), AC (Agente de Controle de Acesso) e o motor de criptografia. O GRSec

fornece o servico de confidencialidade, autenticacao, distribuicao de tıquete, integridade,

controle de acesso, uma base de informacoes SMIB (Security Management Information

Base) e uma PET (Privacy-Enhancing Tecnologies) para a protecao a privacidade dos

usuarios do ambiente movel. A distribuicao de tıquetes e um servico muito importante

nesse modelo, pois os tıquetes alem de contribuir para a autenticacao e controle de acesso,

eles ocultam as identidades dos usuarios o que pode preservar a privacidade dos usuarios.

No mecanismo de distribuicao de tıquete tambem e feita uma troca de marcas de controle

que sao numeros aleatorios exclusivos, essas marcas sao usadas para detectar intrusos. A

seguir apresentamos, com detalhes, os servicos fornecido pelo modelo.

Figura 6.1: Arquitetura do Modelo de Gerencia de Seguranca EM – Entidade Movel; EE

– Entidade Embarcada (cliente proxy); GRSec – Gerenciador Remoto de Seguranca; AC

– Agente de Controle de Acesso; SMIB (Security Management Information Base); AA

– Agente de Autenticacao; SI – Sistema de Informacao; DT – Distribuicao de Tıquete.

PET - Privacy-Enhancing Tecnologies.

Page 90: Um Modelo de Gerência de Segurança para Middleware Baseado

6.2 Arquitetura do Modelo Proposto 91

6.2.1 Servicos Fornecidos

Distribuicao de Chaves - Suponhamos que uma entidade movel A queira estab-

elecer uma conexao ou uma migracao logica para uma entidade movel B. Um tıquete de

uso temporario e exigido para proteger os dados transmitidos entre A e B. A tem uma

chave-mestra Ka conhecida apenas por ela mesma e pelo GRSec; de modo semelhante B

compartilha a chave-mestra Kb com GRSec. Ocorrem as seguintes fases como ilustra a

Figura 6.2: A emite uma solicitacao de conexao, um servico de seguranca local no dispos-

itivo A salva a solicitacao de A em um buffer e pede permissao para o GRSec (fase 01).

A comunicacao entre o dispositivo A e o GRSec e criptografada, usando a chave mestra

compartilhada pelos dois. Se GRSec aprova a solicitacao de conexao, entao ele gera um

tıquete criptografado e o entrega respectivamente para A e B, legıtimo par envolvido na

conexao (fase 2a e 2b). O tıquete e entregue criptografado usando uma chave exclusiva

para cada (Ka, para A e Kb para B), inicialmente conhecida por A e B. Neste ponto,

um tıquete foi entregue com seguranca. A conexao solicitada e estabelecida, e a comu-

nicacao entre A e B e feita de forma segura (fase 03 e 04), usando o tıquete distribuıdo

para criptografa-la. O tıquete gerado - na nossa implementacao e composto do ID do

dispositivo emissor, uma chave obtida aleatoriamente e um prazo de validade - e apenas

conhecido por A e B, portanto somente A e B podem decifrar o conteudo da comunicacao.

Nas fases 03 e 04 ocorre uma autenticacao implıcita de A e B antes do inıcio da comuni-

cacao. O mecanismo de distribuicao de tıquete propriamente dito ocorre nas fases: 1, 2a

e 2b, conforme a Figura 6.2. No caso de uma migracao logica de A para B, A usa esse

tıquete para criptografar seu bytecode (codigo executavel).

Page 91: Um Modelo de Gerência de Segurança para Middleware Baseado

6.2 Arquitetura do Modelo Proposto 92

Figura 6.2: Diagrama de Sequencia da Autenticacao e Distribuicao de Tıquete. E - funcao de

Criptografia Simetrica; Ka – Chave mestre de A; Kb – Chave mestre de B; IDA – Identidade de

A; IDB – Identidade de B; N1 uma marca de controle; Ts – Tıquete de Sessao.

Autenticacao – O servico de autenticacao garante a autenticidade da comunicacao.

No caso de uma unica mensagem, como um sinal de alarme, a funcao do servico de

autenticacao e garantir que o emissor seja realmente quem ele diz ser. No caso de uma

interacao de mensagens, como por exemplo, a conexao do terminal de um medico ou

paramedico a uma estacao do sistema e-saude, dois aspectos sao considerados. No inıcio

da conexao, o servico deve garantir que as duas entidades (emissora e a receptora) sejam

realmente quem elas dizem ser. O segundo aspecto e que o servico deve assegurar que

uma terceira entidade indesejavel nao esteja se mascarando e se fazendo passar por uma

das duas entidades legıtimas. A nossa proposta implementa os dois casos mencionados

acima. No caso de uma unica mensagem, o GRSec garante que a parte envolvida e

realmente quem ela diz ser. No segundo caso, o GRSec assegura que as partes emissoras

e receptoras sao autenticas e que um intruso nao esta se passando por uma das partes

legıtimas. As fases 2b, 3 e 4 da Figura 6.2 mostram isso. A emite para o GRSec uma

mensagem E(Ka, [IDA || IDB || N1]) de solicitacao de conexao com B, GRSec identifica

o remetente A e comunica a identidade de A para B atraves da mensagem E(Kb, [Ks ||IDA]). B comprova a identidade de A enviando para A a mensagem E(Ts, N2), A responde

com E(Ts, f(N2)). Essa etapa, alem de comprovar a autenticidade da identidade de A

garante a B que a mensagem original que ele recebeu nao e uma repeticao, comprovando

Page 92: Um Modelo de Gerência de Segurança para Middleware Baseado

6.2 Arquitetura do Modelo Proposto 93

uma autenticacao mutua. Sendo assim, o esquema formal da mensagem e composto pelos

seguintes itens:

• E: uma funcao de criptografia;

• Ka a chave de criptografia do dispositivo A;

• IDA a identidade do dispositivo emissor A e IDB a identidade do dispositivo desti-

natario B;

• N1 uma marca de controle: numero aleatorio exclusivo.

Confidencialidade - O servico de confidencialidade permite proteger dados contra

ataques passivos (exibicao de conteudo). Esse servico pode ser total ou parcial. O servico

parcial e um refinamento do servico total; ele protege uma unica mensagem ou um campo

especıfico da mensagem. Outro aspecto da implementacao da confidencialidade e a nao

observabilidade: protecao do fluxo de trafego impedindo o intruso de analisar o trafego, ou

seja, impedir que ele observe a origem, o destino, a frequencia das mensagens e outras car-

acterısticas do trafego. O terceiro aspecto tratado no modelo e a protecao da privacidade

do usuario atraves de anonimato e pseudonimo. Boa parte desse servico e implementado

atraves da criptografia e uma marca (numero aleatorio exclusivo) para impedir a exibicao

de conteudo e analise de trafego. Assim, o GRSec e o unico que pode ler, com sucesso, a

mensagem de solicitacao do dispositivo A.

No servico de distribuicao de tıquetes, os tıquetes sao entregues criptografados, per-

mitindo suas protecoes contra interceptacao por parte de intruso. O uso do tıquete pro-

porciona a confidencialidade, pois somente as partes que possuem o tıquete distribuıdo

com seguranca podem decifrar o conteudo das mensagens trocadas. Outra ideia da dis-

tribuicao de tıquete e ocultar as identidades das partes envolvidas na comunicacao, de

modo a preservar suas identidades, atraves de anonimato.

Integridade – Como o servico de confidencialidade, o servico de Integridade pode

ser total ou parcial. Esse servico garante que as mensagens sejam recebidas do jeito

que elas foram enviadas, sem duplicacao, alteracao, reordenacao e atraso. A recuperacao

de dados destruıdos tambem pode ser tratada pelo servico de integridade, mas a nossa

proposta nao aborda este aspecto. Quando o servico e parcial, geralmente ele protege

somente as mensagens contra a alteracao. O servico de integridade trata dos ataques

ativos, consequentemente, ele detecta, mas nao previne contra ataques. Quando uma

violacao da integridade e detectada, o servico notifica ou relata a ocorrencia. O servico

Page 93: Um Modelo de Gerência de Segurança para Middleware Baseado

6.2 Arquitetura do Modelo Proposto 94

de integridade implementado no nosso modelo e parcial. Por exemplo, quando A emite

uma solicitacao de conexao para o GRSec, a mensagem de solicitacao criptografada E(Ka,

[IDA || IDB || N1]) inclui a identidade de A e B e um identificador exclusivo N1 : um

numero aleatorio. O requisito mınimo e que ele seja diferente a cada solicitacao, assim

dificultara que um oponente ou intruso descubra a sua sequencia. O GRSec responde com

uma mensagem criptografada com a chave Ka E(Ka, [ Ts || IDA || IDB || N1]), assim A e o

unico que pode ler essa mensagem. A mensagem inclui a mensagem de solicitacao original

e N1, para que A combine essa resposta com a solicitacao apropriada. Desse modo, A

pode verificar, atraves do N1, que sua solicitacao original nao foi alterada antes do seu

recebimento, e que essa nao e uma repeticao de alguma solicitacao anterior, impedindo

tambem ataques por repeticao. O servico de integridade foi usado para implementar a

deteccao de intruso.

Nao repudio – A nossa proposta implementa um mecanismo que impede a enti-

dade emissora e a entidade receptora negar, respectivamente, a emissao e a recepcao de

mensagens. Quando uma mensagem e enviada, a receptora pode provar (atraves de uma

chave compartilhada por ambas as partes) que a mensagem foi, de fato, enviada por uma

emissora declarada. Similarmente, quando uma mensagem e recebida, a emissora pode

reciprocamente provar que ela foi recebida por uma receptora declarada.

Disponibilidade – Ataques a seguranca podem resultar em perda total ou reducao da

disponibilidade dos elementos do sistema distribuıdo. Alguns desses ataques sao corrigidos

por medidas como a autenticacao e a criptografia. Mas outros requerem acoes fısicas que

nao sao tratadas pela proposta.

Protecao da privacidade – A protecao da privacidade exige quatro criterios: Anoni-

mato (anonymity), possibilidade de agir com um pseudonimo (pseudonomity), impossibil-

idade de estabelecer uma ligacao ou traco (unlinkability), nao observabilidade (unobserv-

ability). Essas exigencias constituem a base das tecnologias de protecao da privacidade

PET (Privacy-Enhancing Tecnologies). Nos princıpios fundamentais, e importante con-

siderar que os dados pessoais pertencem a quem com eles se relaciona, e nao ao proprietario

do sistema que os armazena ou os manipula; so podem ser divulgados os unicos dados

estritamente necessarios para a execucao da tarefa exigida ou aceita; fala-se do princıpio

de minimizacao de dados pessoais. Na divulgacao de dados a terceiros para realizar uma

tarefa, devem-se respeitar as exigencias impostas pelo proprietario dos dados: guardar de

forma confidencial e apaga-los apos a execucao da tarefa, isso e o princıpio de soberania.

Para obedecer a esses princıpios utilizamos, na nossa proposta, a abordagem da gestao

Page 94: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 95

de identidades virtuais atraves da distribuicao de tıquete e comunicacao anonima para

acesso a dados e recursos compartilhados.

6.3 Visao de Requisitos e Visao de Analise

do SecMobileAgent

Essa secao descreve a visao de requisitos e analise do problema a ser resolvido pela

implementacao do SecMobileAgent. A visao dos requisitos especifica o escopo definindo

a missao, os limites e benefıcios esperados do SecMobileAgent. Por sua vez, a visao

de analise descreve os elementos de modelagem, as estruturas conceituais do problema,

mostrando como esses elementos interagem para realizar as funcoes representadas pelos

casos de uso, obedecendo assim aos requisitos estipulados. [WILSON; PAULO, 2009 ] O

conteudo desta secao segue as organizacoes recomendadas pelas normas IEEE-830.

6.3.1 Visao de Requisitos

A visao de requisitos do SecMobileAgent e apresentada nas tabelas a seguir. A tabela

6.1 define a missao e os principais componentes. O SecMobileAgent e composto de dois

importantes elementos: um componente cliente denominado SecLocalAgent e um compo-

nente servidor chamado GRSec. A tabela 6.2 e tabela 6.3 especificam, respectivamente,

os limites e os principais benefıcios esperados do SecMobileAgent.

Nome do produto SecMobileAgent

Componentes principais 1-SecLocalAgent: componente cliente

2-GRSec: componente servidor

Missao Proporcionar servicos de seguranca

para uma cooperacao segura entre

aplicacoes em sistemas distribuıdos

moveis.

Tabela 6.1: Resumo do escopo.

As limitacoes especificadas na tabela 6.2 podem ser convenientes para evitar falsas

expectativas. No atual estagio, o SecMobileAgent e limitado a ambiente nomade e difuso –

onde o ambiente nomade e configurado como uma rede celular 3G e ambiente difuso como

uma rede ad hoc sem fio 802.11 - e se destina exclusivamente a classe de middlewares para

Page 95: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 96

ambientes moveis baseados em tuple. Na tabela 6.2, sao representadas algumas restricoes

impostas no desenvolvimento do modelo de gerencia de seguranca.

Numero Limite

1 SecMobileAgent destina-se exclusivamente a classe

de middlewares moveis baseados em tuple

2 Adapta-se ao modelo LIME - Linda Mobile Environment

3 Trata exclusivamente de agentes ou objetos, processos,

e aplicacoes definidos conforme o paradigma de Orientacao

a Objetos e eventos.

4 Trabalha melhor em ambientes nomades e pode ser

aplicado tambem em ambientes difusos.

5 Suporta a comunicacao sıncrona e assıncrona.

6 Ambiente de execucao: notebook, desktop, PDA

com tecnologia java

7 A infra-estrutura de rede para comunicacao

suportada e cabeada, sem fio (WIFI 802.11) e 3G.

8 Protocolos de interoperabilidade exigidos sao TCP e UDP.

9 Nao trata de tolerancia falha e QoS.

10 No momento, a seguranca tratada se limita a:

controle de acesso, configuracao dinamica de perfis

criptografia, gerenciamento de identidades

e distribuicao de tiquetes.

11 O tique gerado pelo GRSec e de uso temporario

ele comporta uma identidade, uma chave e um prazo de validade

12 Nao trata de auditoria ou emissao de relatorios,

mas oferece suporte.

Tabela 6.2: Principais limites do SecMobileAgent.

A tabela 6.3 apresenta os principais benefıcios esperados do SecMobileAgent. Os

valores desses benefıcios para o usuario sao divididos em tres categorias, seguindo as

especificacoes no [WILSON; PAULO, 2009 ]: essencial - o produto nao se justifica se nao

oferecer esse beneficio - , desejavel - a ausencia do benefıcio traz grande perda de valor –,

opcional - a ausencia do benefıcio traz menor perda de valor.

Page 96: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 97

No. Benefıcio Valor para

o usuario

1 Facilidades de seguranca: proporcionam objetos e Essencial

metodos de seguranca para desenvolvedores de

aplicacoes distribuıdas

2 Agilidade no desenvolvimento de aplicacoes Essencial

seguras

3 Relacao de confianca entre agentes comunicantes Essencial

e moveis

4 Mobilidade logica e fısica segura Essencial

5 Preservacao de privacidade Essencial

6 Preservacao de integridade e confidencialidade Essencial

7 Anonimato e pseudonimo Essencial

8 Nao repudio Opcional

9 Disponibilidade Essencial

10 Auditoria Opcional

Tabela 6.3: Benefıcios esperados do produto.

Na modelagem dos requisitos funcionais, os casos de uso sao utilizados como repre-

sentacoes das funcoes especificadas, enquanto os atores representam os usuarios e outros

sistemas que interagem com o produto. As visoes mais abstratas das funcoes do produto

sao providas por diagramas de casos de uso que mostram os relacionamentos entre casos de

uso e atores, e dos casos de uso entre si [WILSON; PAULO, 2009 ]. Ao analisar os modelos

de casos de uso de negocio e a arquitetura dos processos de negocio do SecMobilAgent,

formularam-se as funcoes resumidas na Tabela 6.4.

Page 97: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 98

Caso de uso Descricao

Gestao de Perfil de Cria e gerencia dinamicamente os perfis dos

Agente (PerfilTable) agentes atraves de uma tabela hash.

Gestao do espaco de Controla o acesso ao espaco compartilhado do

tuple (LocalSecAgent) dispositivo movel host level tuple space

Motor de criptografia Proporciona servicos de criptografia e

(GRSec) decriptografia atraves de algoritmos de

criptografia simetrica com chave de 32 a 448

bits Blowfish – DES.

Distribuicao de tiquetes Cria e distribui tıquetes para os agentes

(GRSec)

Autenticacao Garante a autenticidade da comunicacao:

(GRsec) assegura que as partes emissoras e receptoras

sao autenticas e que um intruso nao esta se

passando por uma das partes legıtimas.

Garantia de Garante a nao observabilidade, protecao do

Confidencialidade fluxo de trafego impedindo o intruso de analisar

(GRSec) o trafego (origem, o destino, frequencia das

mensagens e outras caracterısticas do trafego).

Gestao de identidade o tıquete oculta a identidade do usuario o que

(GRSec) garante o seu anonimato

Garantia de Integridade Garante a integridade do agente na sua

(GRSec) mobilidade logica – o bytecode do agente deve

ser recebido do jeito que ele foi enviado -

Tabela 6.4: Descricao sumaria dos casos de uso do SecMobileAgent.

A tabela 6.5 inclui os principais atores. Eles representam os usuarios e outros sistemas

que interagem com o SecMobilAgent. Os atores modelam os papeis dos usuarios e nao a

pessoa do usuario. Ao analisar os modelos de casos de uso de negocio e a arquitetura dos

processos de negocio do SecMobilAgent, formularam–se os atores resumidos na Tabela

6.5.

Page 98: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 99

No. Ator Definicao

1 Programador Desenvolvedor usuario das facilidades do

SecMobileAgent

2 Proprietario do Proprietario pode configurar o perfil do agente

dispositivo a polıtica de acesso ao espaco compartilhado do

seu dispositivo movel: Host Level Tuple Space

3 Gerente Funcionario responsavel pela distribuicao

de senha ou administrador do sistema

responsavel pela polıtica de seguranca

4 Sistema Interceptador do sistema deinformacao,

responsavel pela interceptacao das

requisicoes do agente

Tabela 6.5: Descricao dos Atores.

O diagrama da figura 6.3 apresenta uma perspectiva do modelo SecMobileAgent,

mostrando as interfaces do SecMobileAgent com seu ambiente de aplicacao, inclusive os

seus diferentes usuarios e outros sistemas com os quais ele deve interagir. Os usuarios sao

representados por atores, e os casos de uso, por possıveis funcoes do SecMobileAgent que

podem ser invocadas pelos atores.

Page 99: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 100

Figura 6.3: Diagrama de contexto derivado do modelo de caso de uso de negocio do SecMo-

bileAgent.

6.3.2 Visao de Analise

Esta secao mostra como os elementos de modelagem das estruturas conceituais inter-

agem para realizar as funcoes representadas pelos casos de uso. Foram apresentados os

seguintes casos de uso: Configurar perfil, Selecionar algoritmo de criptografia, Gerenciar

autenticacao e Distribuir tıquete. O modelo conceitual apresentado nessa visao de analise

e composto de diagrama de atividades, de sequencia e de classes, como mostram as figuras:

Page 100: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 101

Figura 6.3,Figura 6.4, Figura 6.5, Figura 6.6 e Figura 6.7.

Figura 6.4: Diagrama de Atividades (DA) do caso de uso Configurar perfil.

O diagrama de atividades e usado para representar o comportamento do caso de

uso. A Figura 6.4 mostra o fluxo principal do caso de uso Configurar perfil, onde foram

representados os papeis dos usuarios (proprietario do dispositivo e sistema). Do lado

proprietario do dispositivo os papeis sao: Selecionar o agente, definir chave, permitir

acesso ao espaco compartilhado, definir comportamentos. Do lado sistema, os papeis sao:

exibir tela, carregar acoes e gravar no repositorio de perfis. O Configurar perfil proporciona

o servico de controle de acesso e a garantia da privacidade do usuario.

Page 101: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 102

Figura 6.5: Diagrama de Atividades (DA) do caso de uso Selecionar Algoritmo.

O caso de uso Selecionar Algoritmo de Criptografia proporciona o servico de confi-

dencialidade: o usuario pode selecionar junto com o motor de criptografia (implementado

pelas classes Blowfish e CriptoDes) um algoritmo para criptografar a migracao logica de

um objeto do seu dispositivo para um dispositivo remoto, ou criptografar a comunicacao

entre dispositivos. Foram implementados dois algoritmos de criptografia com chave var-

iando de 32 a 448 bits (Blowfish e DES), considerados bom para ambientes moveis. A

Figura 6.4 ilustra o fluxo do caso de uso Selecionar Algoritmo de Criptografia. Os pa-

peis do sistema sao: Exibir tela, Habilitar campos e Carregar na memoria. Os papeis

do usuario sao: Selecionar modo de protecao, selecionar algoritmo e fornecer a chave de

criptografia.

Page 102: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 103

Os casos de uso Gerenciar autenticacao e Distribuir tıquete sao ilustrados na Figura

6.6. Os diferentes papeis sao: Exibir tela, solicitar conexao, salvar no buffer uma copia da

solicitacao, autenticar ID, gerar tıquete, salvar uma copia do tıquete, criptografar tiquete

e entregar tıquete criptografado ao usuario. Caso, o ID do usuario nao for autenticado,

uma mensagem de erro e emitida. O tıquete gerado e formado do ID, uma chave e um

prazo de validade. O Gerenciar autenticacao garante a autenticidade da comunicacao,

assegurando que as partes emissoras e receptoras sao autenticas e que um intruso nao esta

se passando por uma das partes legıtimas. O Distribuir tıquete permite uma gestao de

identidades virtuais, ocultando a identidade do usuario. Quando o usuario acessa varios

servicos sob a mesma identidade, e possıvel estabelecer uma relacao com seus acessos,

expondo assim a sua privacidade. Nesse caso, e recomendavel ter multiplas identidades

virtuais para acessar os servicos. Na nossa abordagem, os tiques ocultam a identidade do

usuario. Um usuario pode ter mais de um tıquete, ou seja, multiplas identidades, o que

permite ao usuario deixar o mınimo possıvel de rastro.A Figura 6.7 apresenta o diagrama

de atividade do caso de Gestao de identidades.

Page 103: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 104

Figura 6.6: Diagrama de Atividades (DA) dos casos de uso Gerenciar autenticacao e Distribuir

tıquete.

Page 104: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 105

Figura 6.7: Diagrama de Atividades (DA) dos casos de uso Gerenciar Identidades.

Nesta visao de analise, foram apresentados os diagramas de atividades e de sequencia

dos principais casos de uso. A analise completa pode ser encontrada na documentacao a

Page 105: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 106

ser anexada.

Figura 6.8: Diagrama de Sequencia (DS) do caso de uso Configur perfil.

A Figura 6.7 mostra com clareza a sequencia (ordem temporal) das mensagens tro-

cadas entre os objetos do Configurar perfil, um caso de uso importante que permite ao

usuario configurar e controlar o acesso ao seu dispositivo movel. A figura pode ser lida

da seguinte forma:

1 O usuario envia uma mensagem para uma instancia da classe SecMobileAgent.

1.1 O objeto SecMobileAgent envia a mensagem getPerfil para uma instancia da classe

LocalAgent.

1.1.1 O objeto LocalAgent envia a mensagem getAcoes para um objeto da PerfilTable.

Os objetos destinatarios retornam, respectivamente, os resultados das mensagens a

seus respectivos remetentes.

O usuario fornece a chave de identificacao, permite ou nao o acesso ao espaco de

tuple do seu dispositivo (HTS) e define o comportamento desejado do agente.

2 O usuario envia uma mensagem para uma instancia do SecMobileAgent.

2.1 O objeto SecMobileAgent envia a mensagem getPerfil para uma instancia da classe

LocalAgent.

Page 106: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 107

2.1.1 O objeto LocalAgent envia a mensagem addProfile para uma instancia da Per-

filTable. Os objetos destinatarios retornam, respectivamente, os resultados das

mensagens a seus respectivos remetentes, finalizando a configuracao do perfil.

O Diagrama de Classes (DC) da Figura 6.8 e composto da classe MobileAgentSec que

fornece uma interface grafica (UI) e de duas classes PerfilTable e LocalAgentSec que re-

spectivamente criam e configuram o perfil do agente movel. O DC Criptografia apresenta

duas classes Blowfish e CriptoDes que definem os algoritmos de criptografia com chave

de criptografia simetrica de 32 a 448 bits a serem utilizados conforme a necessidade do

usuario. Essas classes modelam e implementam um conjunto de objetos de seguranca que

apresentam caracterısticas em comum, representadas por um conjunto de estados e com-

portamentos. Os estados sao os atributos ou variaveis de seguranca, e os comportamentos

sao os metodos ou funcoes de seguranca. Por exemplos, na classe CryptoDes temos os

atributos: texto e chave com tipo de valor Object, temos tambem os metodos getChave()

e setChave(); eles permitem configurar a chave de criptografia. Os metodos encrypt()

e decrypt() permitem, respectivamente, criptografar e decriptografar uma mensagem do

tipo String. Os diagramas de classes apresentadas nessa visao de analise mostram algumas

das funcoes implementadas nesse framework de gerencia de seguranca.

Os diagramas de classes da Figura 6.8 e Figura 6.9 mostram com detalhe, as funcoes

usadas para implementar a funcionalidade dos casos de uso: Configurar Perfil e Selecionar

Algoritmo de Criptografia. Esses metodos, definem o comportamento dos agentes de segu-

ranca do LocalSecAgent. Nesta secao foram especificados o escopo, definindo a missao, os

limites e benefıcios esperados do modelo de seguranca proposto. Foram tambem descritos

os elementos de modelagem, as estruturas conceituais, mostrando como esses elementos

interagem para realizar as funcoes do modelo, obedecendo assim os requisitos estipulados

Page 107: Um Modelo de Gerência de Segurança para Middleware Baseado

6.3 Visao de Requisitos e Visao de Analisedo SecMobileAgent 108

Figura 6.9: Diagrama de classe do LocalMobileAgent.

Figura 6.10: Diagrama de classes de Criptografia.

Page 108: Um Modelo de Gerência de Segurança para Middleware Baseado

6.4 Implementacao e Prototipo 109

6.4 Implementacao e Prototipo

O SecMobileAgent e implementado em dois modulos: LocalSecAgent e GRSec. Cada

um deles fornece servico de seguranca. O LocalSecAgent e o modulo cliente responsavel

pela configuracao e controle de acesso ao espaco compartilhado do dispositivo movel. A

Figura 6.8 e Figura 6.9 mostram respectivamente, o diagrama de classes, a interface do

modulo cliente, onde o proprio usuario pode configurar o perfil dos agentes moveis, permi-

tir acesso ou nao ao espaco compartilhado do seu dispositivo e selecionar o comportamento

do agente. O GRSec e o modulo servidor, ele age como uma base de servicos de seguranca,

proporcionando um canal seguro de migracao e de comunicacao, ou seja, uma relacao de

confianca entre as entidades moveis.

LocalSecAgent e GRSec foram implementados em Java, tem portabilidade e sao in-

dependentes de sistemas operacionais.

Para validar o modelo de gerencia de seguranca proposto foram criadas aplicacoes de

teste (prototipos). Figura 6.11 mostra as interfaces graficas da configuracao do perfil do

comportamento de agente movel, o controle de acesso ao espaco local compartilhado do

host, a solicitacao do servico de confidencialidade e de autenticacao.

6.5 Testes e Resultados Obtidos

Apos desenvolver o SecMobileAgent, foram realizados dois tipos de testes: o primeiro

para validar os conceitos e a funcionalidade do modelo proposto e o segundo para avaliar

o tempo de resposta. A plataforma e o ambiente adotados para os testes sao resumidos

na tabela 6.6. Com esses elementos foram montadas uma rede ad hoc sem fio (802.11)

simulando um ambiente difuso e uma rede de celulares com a tecnologia 3G simulando

um ambiente nomade. A figura 6.11 mostra as interfaces graficas do prototipo para a

validacao. O usuario, atraves dessas interfaces, pode configurar seu dispositivo definindo

condicoes de acesso ao espaco compartilhado do seu host, especificar um perfil

Page 109: Um Modelo de Gerência de Segurança para Middleware Baseado

6.5 Testes e Resultados Obtidos 110

Qtde. Dispositivo

1 Modem de Banda Larga DSL NET

1 Modem 3G, 512kbps, provedor CLARO

1 Roteador sem fio: SIEMENS Gigaset SE551

com 5 portas

1 Um computador desk top core 2 duo 2Gb de RAM

monitor de 17pol. com Windows XP.

1 Notebook Toshiba com tecnologia sem fio 1GB de

RAM , processador celeron com Windows XP.

1 Ambiente de execucao: notebook, desktop, PDA

com tecnologia java

1 Notebook HP com tecnologia sem fio processador

core 2 dual, memoria RAM 2G,com Windows

Vista.

1 NoteBook ITAUTEC, com tecnologia sem fio com

Windows Vista , RAM 2G.

1 Impressora HP 2400 .

1 Linguagem de programacao Java 2ME /Java2EE .

Tabela 6.6: Elementos do ambiente de teste.

aos agentes moveis que chegam no seu dispositivo, usar os servicos de criptografia e

de autenticacao do SecMobileAgent, migrar de forma segura um agente do seu dispos-

itivo para um dispositivo remoto. A autenticacao, distribuicao de tıquetes e gestao de

identidade sao transparentes aos usuarios.

Page 110: Um Modelo de Gerência de Segurança para Middleware Baseado

6.5 Testes e Resultados Obtidos 111

Figura 6.11: Interfaces graficas para executar os servicos de seguranca implementados.

Teste de Funcionalidade

Para validar a funcionalidade, foram criados sete agentes (pequenos programas es-

critos em Java com autonomia propria) moveis representando pacientes distribuıdos em

dispositivos remotos do ambiente. Cada agente apresenta os seguintes dados: ID (iden-

tidade), posicao geografica (latitude, longitude e altitude) e dados medicos (altura, peso

e temperatura). Os agentes tambem tem estados e comportamentos, neste teste os com-

portamentos implementados sao:

(a) getID(): retorna a identidade do paciente;

(b) getHealthData(): retorna os dados medicos do paciente;

(c) getPosition(): retorna a posicao geografica do paciente;

(d) run(): retorna a identidade, dados medicos e posicao geografica do paciente.

Os usuarios dos dispositivos moveis (na simulacao usando notebooks) representam os

medicos em movimento no ambiente. O medico pode configurar seu dispositivo para rece-

ber a migracao dos agentes, controlar o acesso ao espaco compartilhado de seu dispositivo

e executar o comportamento dos agentes. Os agentes podem migrar no modo seguro, isto

e, criptografado. Neste contexto as funcoes que foram avaliadas sao:

(a) Migracao logica do agente: verificar a mobilidade logica, isso e, mover um agente de

um dispositivo para outro.

Page 111: Um Modelo de Gerência de Segurança para Middleware Baseado

6.5 Testes e Resultados Obtidos 112

(b) Garantia da confidencialidade: verificar a nao observabilidade, protecao do fluxo de

trafego, impedindo o intruso de analisar o trafego (origem, destino, frequencia das

mensagens e outras caracterısticas do trafego). Verificar se os agentes conseguem

migrar de forma segura. Neste caso foi usado o motor de criptografia para crip-

tografar o bytecode (codigo executavel) do agente, migrar o agente para um outro

dispositivo e depois ser decriptografado no dispositivo de destino com a finalidade

de ser executado.

(c) Motor de criptografia: verificar a funcionalidade dos algoritmos de criptografia im-

plementos, ou seja, criptografar e decriptografar o bytecode de um agente.

(d) Distribuicao de tıquete: Criar e distribuir tıquete criptografado contendo a identi-

dade do agente.

(e) Autenticacao do agente: verificar a veracidade da identidade de uma agente.

(f) Gestao de perfil: Criar e gerenciar dinamicamente os perfis do usuario.

(g) Gestao do espaco do tuple: verificar o controle de acesso ao espaco compartilhado

do dispositivo movel (host level tuple space).

(h) Gestao de identidade: verificar a validade do tıquete, associar a identidade oculta a

um determinado usuario.

A Figura 6.12 ilustra os resultados dos testes. Nestes testes pode se observar a mi-

gracao de dois agentes: agente01 e agente02. O agente01 foi migrado sem criptografia

e o agente02 com criptografia garantindo a sua confidencialidade. Os numeros hexadec-

imais traduzem a criptografia do bytecode (codigo executavel) do agente. Ao chegar no

dispositivo remoto, o bytecode criptografado e descriptografado e em seguida, executado

conforme o perfil estabelecido no dispositivo remoto: permitir ou negar acesso do agente

ao class Space (espaco compartilhado do dispositivo movel conhecido tambem como host

level tuple space), permitir ou negar a execucao dos metodos (getID(), getHealthData(),

getPosition() e run() ) do agente mesmo tendo acesso ao class space. Estes metodos im-

plementam o comportamento do agente. Por default, quando nao ha perfil definido, o

agente nao e executado no dispositivo remoto.

mucode: Servidor de seguranca ativo

br.usp.pcs.dn.cliente.Agente01

Migrando para ...

Page 112: Um Modelo de Gerência de Segurança para Middleware Baseado

6.5 Testes e Resultados Obtidos 113

Migrac~ao OK...

br.usp.pcs.dn.cliente.Agente02

Migrando para ...

MIGRAC~AO CRIPTOGRAFADA

1E:13:7E:00:57:FF:8D:E7:AA:78:74:1B:A2:C6:F5:E5:EB:12:4D:78:45:B2:9C:D2:36:

56:19:24:50:21:3A:8E:DD:CB:F1:22:01:FA:E5:F1:03:F8:62:D5:1A:F7:0C:34:EE:8C:

38:2D:E2:72:72:F5:D7:1E:CD:F1:24:44:AA:B8:C4:E8:6D:C3:EC:0D:28:3E:6F:80:4E:

F4:76:5D:7A:BF:18:3D:53:51:E5:98:FB:7A:2E:64:0F:4A:D8:5C:03:51:F5:4C:15:E3:

CE:10:F4:EE:96:D1:24:82:74:0C:FF:F7:46:28:1A:9C:AC:F2:FA:30:F0:C9:3F:5B:ED:

BD:01:1F:4C:04:28:FD:78:81:11:09:3D:99:11:71:D7:99:D4:44:01:12:8A:9B:1D:BA:

63:4F:48:C8:54:47:B0:B7:4C:F0:DB:FC:DE:7B:F4:AE:66:F1:4E:0C:14:97:28:7C:15:

A0:3E:A8:7B:88:B1:04:BF:67:AF:D9:70:2E:8D:34:E1:E1:6D:12:80:4C:1E:E7:7D:C8:

42:FD:B7:9D:A8:D0:93:05:D8:6B:5C:7E:91:A7:48:B9:2E:3F:91:E4:C5:2B:F8:C2:F6:

6F:A7:4C:07:48:08:0B:AC:E9:5B:20:DB:5B:3F:86:8F:45:79:04:28:AD:C0:70:56:DF:

59:47:D9:CF:60:D6:2A:04:68:59:DB:22:E6:DD:18:20:98:A3:91:35:30:A6:4E:C2:F8:

8A:BB:A6:6C:24:57:E6:35:D0:FD:C1:26:D7:AD:4D:B5:44:83:FE:9E:7C:D1:A6:9B:18:

FA:A0:E6:CD:DA:C2:44:F1:A7:08:C5:B4:D6:4B:66:38:

...

:02:BC:A9:B0:13:CC:7B:B1:10:9E:12:E5:C7:FC:2A:87:5C

Recebido com exito

Migrac~ao OK...

DESCRIPTOGRAFADO:

CA:FE:BA:BE:00:00:00:32:00:82:0A:00:2D:00:4C:08:00:4D:09:00:2C:00:4E:08:00:

4F:09:00:2C:00:50:08:00:51:09:00:2C:00:52:06:40:3F:40:00:00:00:00:00:0A:00:

53:00:54:09:00:2C:00:55:06:3F:FA:B8:51:EB:85:1E:B8:09:00:2C:00:56:06:40:4C:

80:00:00:00:00:00:09:00:2C:00:57:06:40:42:00:00:00:00:00:00:09:00:2C:00:58:

0A:00:2D:00:59:09:00:5A:00:5B:08:00:5C:0A:00:5D:00:5E:08:00:5F:07:00:60:0A:

00:1A:00:4C:08:00:61:0A:00:1A:00:62:0A:00:1A:00:63:08:00:64:08:00:65:0A:00:

1A:00:66:08:00:67:08:00:68:0A:00:1A:00:69:08:00:6A:08:00:6B:0A:00:2C:00:6C:

0A:00:2C:00:6D:0A:00:2C:00:6E:07:00:6F:08:00:70:07:00:71:07:00:72:01:00:02:

49:44:01:00:12:4C:6A:61:76:61:2F:6C:61:6E:67:2F:53:74:72:69:6E:67:3B:01:00:

08:6C:61:74:69:74:75:64:65:01:00:09:6C:6F:6E:67:69:74:75:64:65:01:00:08:61:

6C:74:69:74:75:64:65:01:00:12:4C:6A:61:76:61:2F:6C:61:6E:67:2F:44:6F:75:62:

6C:65:3B:01:00:06:61:6C:74:75:72:61:01:00:01:44:01:00:04:70:65:73:6F:01:00:

Page 113: Um Modelo de Gerência de Segurança para Middleware Baseado

6.5 Testes e Resultados Obtidos 114

0B:74:65:6D:70:65:72:61:74:75:72:61:01:00:06:3C:6

...

:3D:00:3E:00:00:00:48:00:00:00:07:00:02:4F:07:00:49:08:00:01:00:4A:00:00:00:

02:00:4B

Perfil:

Nao ha perfil definido!

Perfil:

Nao ha perfil definido!

Perfil:

Nao ha perfil definido!

Perfil:

Pode entrar no classe Space!

getID pode ser executado!

Perfil:

Nao ha perfil definido!

Perfil:

Pode entrar no classe Space!

getID pode ser executado!

Identidade:

JAIMIR CONTE

Perfil:

Pode entrar no classe Space!

getHealthData n~ao pode ser executado!

Perfil:

Pode entrar no classe Space!

run n~ao pode ser executado!

Page 114: Um Modelo de Gerência de Segurança para Middleware Baseado

6.5 Testes e Resultados Obtidos 115

Perfil:

Pode entrar no classe Space!

run pode ser executado!

Identidade:

MARIA DE FATIMA

Posic~ao geografica:

Latitude: 27o 3548S

Longitude: 48o 3257O

Altitude: 1000.0

Dados de saude:

Peso: 57.0

Altura: 1.67

Temperatura: 36.0

Figura 6.12 : Resultados do teste de funcionalidade.

Teste do tempo de resposta

Para avaliar o tempo de resposta foram utilizados os mesmos agentes e a mesma plataforma

descrita no teste de funcionalidade. Os testes foram efetuados em duas infra estruturas

de rede sem fio: Ad hoc sem fio (WIFI 802.11, simulando um ambiente difuso) e WLAN

(rede de celulares 3G modem da CLARO provedor de telefonia celular, simulando um

ambiente nomade). Foram medidos os tempos de migracao logica de um agente de um

dispositivo A para um dispositivo B. Os resultados foram:

(a) Em rede de celulares 3G com modem da CLARO, com uma distancia de 23,1

quilometros separando A e B, a media de tempo foi de 243,44 milissegundos.

(b) Em rede Ad hoc sem fio com a distancia entre os dois nos A e B variando de 120

cm a 387 cm, os tempos de resposta sao muito proximos com uma media de 3.5

milissegundos.

A Figura 6.12 e Figura 6.13 ilustram os tempos de resposta na mobilidade logica dos

agentes, obtidos respectivamente em rede WIFI AD HOC e redes celulares 3G com modem

Page 115: Um Modelo de Gerência de Segurança para Middleware Baseado

6.5 Testes e Resultados Obtidos 116

da CLARO. Observa-se que o tempo de resposta sofre uma oscilacao e e proporcional a

distancia. Em redes celulares com distancia maior, o tempo tambem e mais demorado. A

oscilacao se deve a instabilidade da largura da banda que caracteriza os ambientes moveis.

Figura 6.12: Tempo de resposta na mobilidade de agente em rede WIFI AD HOC.

Figura 6.13: Tempo de resposta na mobilidade de agente em rede de celulares 3G com modem

da CLARO.

A Tabela 6.7 resume os dados obtidos do teste de tempo de resposta e o tamanho em

Kilobytes do SecMobileAgent. Os resultados obtidos sao muito satisfatorios e estao dentro

do padrao de qualidade recomendado pela norma IEEE-830 que e no maximo 10 segundos

para o tempo de resposta. O tamanho tambem e considerado bom, pois a memoria dos

dispositivos moveis o comporta. Esse bom desempenho se deve ao uso de:

• Algoritmos eficientes de programacao distribuıda: os programas sao fragmentados

em processos de menores complexidades e executados em multithreading.

• Algoritmo de compressao de dados: os dados e processos sao comprimidos usando

o GZIP (GNU zip), um Software Livre de compressao sem perda de dados.

Page 116: Um Modelo de Gerência de Segurança para Middleware Baseado

6.5 Testes e Resultados Obtidos 117

Ambiente Nomade (Rede de Ambiente difuso (Rede AD HOC

telefonia Celular - 3G ) 802-11 PAN)

Tempo de resposta 243,4 3,6

(Milissegundos)

Tamanho (KBytes) 580 580

Tabela 6.7: Tempo de resposta e tamanho em KB do SecMobileAgent.

Os resultados obtidos nos testes de funcionalidade e de tempo de resposta permitem

julgar a pertinencia do modelo proposto.

Page 117: Um Modelo de Gerência de Segurança para Middleware Baseado

118

7 Conclusoes Gerais

O mundo esta cada vez mais conectado e comunicante. A democratizacao das tecnolo-

gias de informacao e das comunicacoes materializadas pela interconexao de diversos sis-

temas: telecomunicacao, internet, redes sem fio e dispositivos moveis tornam os sistemas

potencialmente acessıveis por um numero de usuarios cada vez maior, possibilitando a

necessidade de novos paradigmas e novos conceitos da computacao. Um dos principais

objetivos dessa nova geracao de sistemas computacionais e fornecer a seu usuario acesso a

servicos de qualquer lugar e a todo instante, ou interagir, de forma mais natural, com os

recursos disponıveis na sua vizinhanca. Este novo paradigma da computacao movel torna

a protecao das informacoes e a privacidade dos usuarios mais complexas, colocando em

evidencia a questao da seguranca.

Neste contexto, os middlewares para ambientes moveis podem contribuir para re-

solver a questao da seguranca e da privacidade. Neste sentido, iniciou-se nessa tese uma

serie de estudos sobre os middlewares para ambientes moveis (Mobile middlewares). Os

estudos feitos permitem constatar que os middlewares moveis devem possuir algumas car-

acterısticas comuns, independente de seu tipo. Essas propriedades comuns permitem uma

melhor adaptacao a natureza dos ambientes moveis e as necessidades das aplicacoes. Um

middleware movel deve ser capaz de interagir com diversos tipos de servicos e deve ser

leve devido ao limite de recursos internos dos dispositivos moveis. Os middlewares para

ambientes moveis tambem devem ser otimizados para oferecer mais servicos e consumir

menos recursos computacionais. As analises mostram tambem que os middlewares exis-

tentes [OMG, 2008; PALIVAN; DINU, 2005; Ibus//Mobile [SOFTWIRED. 2007], Pronto

[YONEKI; BACON, 2006 ] [PRONTO, 2003], WebSphere EveryPlace [WEBSPHERE,

2007], Steam [RENE; VINNY, 2003], Lime [MURFPHY et al, 2007] e muitos outros ap-

resentados no capıtulo 3 quase nao abordam os problemas da seguranca e privacidade.

Muitas das solucoes existentes sao implementadas na camada de aplicacao o que as tor-

nam especıficas, proprietarias e vulneraveis. A seguranca ainda e um problema que deve

ser gerido em todos os nıveis de um sistema distribuıdo, associando criptografia, autenti-

Page 118: Um Modelo de Gerência de Segurança para Middleware Baseado

7.1 Contribuicao 119

cacao, auditoria e novos mecanismos como, por exemplo, configuracao dinamica de perfil,

anonimato e gerencia de identidades virtuais. Como contexto para o desenvolvimento e

aplicacao da nossa proposta a classe dos middlewares baseados em tuple (Linda, Lime)

foi escolhida, pois eles tem um bom gerenciamento de mobilidade e se adaptam melhor a

computacao nomade e difusa.

Para resolver os problemas relacionados a seguranca em ambientes moveis, foi imple-

mentado um framework de gerencia de seguranca SecMobileAgent que oferece servicos de

seguranca para middlewares de ambientes moveis baseados em tuple.

7.1 Contribuicao

Ao longo desse trabalho foi demonstrado que os middlewares baseados em tuple for-

mam uma solida base para a concepcao de aplicacoes em ambientes moveis, entretanto, o

modelo Linda [GELERNTER, 2005] e muitos dos seus sucessores tal como Lime (Linda

in a mobile Environment ) nao abordam a questao da seguranca. Sendo assim, as apli-

cacoes desenvolvidas nos ambientes moveis baseados em tuple sao vulneraveis e sujeitas as

ameacas. Poucos sistemas propoem solucoes de seguranca para o modelo original Linda e

as solucoes propostas sao limitadas. Os exemplos: KLAIM (Kernel Language for Agents

Interaction and Mobility), SecOS e DAgents citados no artigo [HANDOREAN et al, 2007]

propoem solucoes com abordagens baseadas na criptografia simetrica e assimetrica, mas

nao se adaptam a sistemas distribuıdos de larga escala e nao apresentam mecanismos de

autenticacao mutua e preservacao da privacidade dos usuarios. O modelo Limone [MAR-

TIN; DEMERE, 2006] apresenta uma solucao semelhante a nossa proposta, mas no estagio

atual do seu desenvolvimento faltam alguns servicos e nao e totalmente compatıvel com

o modelo Linda que e a referencia dos middlewares baseados em tuple. A nossa proposta

e muito mais abrangente, pois aborda a questao da privacidade, se adapta perfeitamente

ao modelo Linda e aos middlewares baseados em tuple: o espaco de tuple nao foi alterado

e nenhum banco de dados foi utilizado o que poderia comprometer o desempenho e o host

tuple space. Ela aborda alem da questao da confidencialidade e controle de acesso a re-

cursos protegidos ou compartilhados - tratada pela maioria dos sistemas existentes - trata

tambem o problema da deteccao de intruso, protecao da privacidade dos usuarios atraves

de anonimatos e configuracao dinamica de perfis. Os servicos de seguranca sao imple-

mentados como agentes da arquitetura Linda, repartidos em dois nıveis: domınio local e

domınio remoto. No domınio remoto os servicos sao proporcionados pelo GRSec (principal

classe da implementacao) e no domınio local por um agente local LocalSecAgent. Dentro

Page 119: Um Modelo de Gerência de Segurança para Middleware Baseado

7.2 Proposta de Continuidade 120

do contexto apresentado no capıtulo 2 (sistemas distribuıdos em ambientes moveis) e com

os resultados dos testes obtidos podemos assumir que a definicao do modelo proposto e

realizavel e pratico. A seguranca proporcionada pelo modelo herda alguns mecanismos de

seguranca da tecnologia Java o que facilitou a sua implementacao. Os testes realizados

em rede celular 3G e rede ad hoc 802.11 apresentam resultados satisfatorios que permitem

julgar a pertinencia do modelo proposto.

7.2 Proposta de Continuidade

A arquitetura do framework desenvolvido apresenta uma facilidade de expansao (es-

calabilidade), a sua implementacao usa o paradigma de Orientacao a Objeto, portanto,

novos servicos de seguranca podem ser desenvolvidos e acrescidos futuramente. Pode se

pensar em algumas facilidades especificas para sistemas e-saude como preve a OMG no

modelo CORBA. O servico de privacidade implementado neste trabalho e limitado a uma

gerencia de tıquetes distribuıdos pelo GRSec. Poderia se pensar em uma garantia de

privacidade muito mais abrangente.

Page 120: Um Modelo de Gerência de Segurança para Middleware Baseado

121

8 Referencias Bibliograficas

ABBADI, E. A. et al. An Efficient Fault Tolerant Protocol for Replicated Data

Management. In 4th ACM SIGACT-SIGMOD Symp. On Principle of Database

Systems, Portland, OR, USA, pp. 215-28, ACM, 1985.

ABOBA, B.; SIMON, D. PPP EAP TLS Authentication Protocol. IETF RFC No.

2716, October 1999.

ABOWD, G. D., et al. Cyberguide: a Mobile Context-Aware Tour Guide. AM

Wireless Networks, vol. 3, pp. 421- 433, 1997.

ALBUQUERQUE, A. L. P. Cenarios virtuais com um estudo de sincronismo de

camera, 95 pp., Dissertacao (Mestrado), Departamento de Informatica, PUC- RIO,

1999.

ALEXANDRE, V. M. Gerencia de Seguranca em Aplicacoes de Banco de Dados na

Web. Dissertacao (Mestrado), CPGCC/UFSC. Marco, 2000.

ARMSTRONG, R. et al. WebWatcher: A learning Apprendice for the World Wide

Web. AAAI Spring Symposium on International Gathering, 2005.

ANDRE, M. B. da Gerencia Distribuıda de Redes Utilizando SNMP, Java, WWW

e CORBA, Dissertacao (Mestrado), CPGCC/UFSC Florianopolis, abril 2000.

AUTOMATION World, article, 2004.

BAJURA, M.; NEUMANN, U. Dynamic registration correction in video-based aug-

mented reality systems. IEEE Computer Graphics and Application, n. 9, September,

2005.

BALFANZ, D.; SMETTERS, D.; STEWART, P.; WONG, H. Talking to Strangers:

Authentication in Ad-Hoc Wireless Network. In Symp on Network and Distributed

Systems Security, San Dieogo, CA USA , 2002.

Page 121: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 122

BANATRE, M. et al. Ubiquitous computing to help blind People in public Transport.

Mobile HCI 2004, p310-314,2004.

BANATRE, M. ; BRYCE, C. ; COUDERC, P. ; WEIS, F. Informatique diffuse: des

concepts a la realite. Collection informatique, Brmes Sciences, paris 2007.

BELLOVIN, S.; MERRITT. Limitation of Kerberos Authentication System. in

Processings of Winter 1991 Usenix Conference, January 1991. Disponivel em:

<ftp://research.att.com/dist/internetsecurity/kerblimt.usenix.ps> .Acessoabril2009

BLUETOOTH. bluetooth.com, BLUETOOTH. Disponıvel em : <www.bluetooth.com>.

Acesso em julho 2006

BOLCER, G. A. et al. Peer to peer Architectures and the Magi Open Source. Infra

– structure. Acesso novembro 2007

BONNEAU, V. Machine –to– Machine, forte croissnc Du wireless et impact Du

RFID. M36105, IDATE, 2005.

BRANDS, S.; CHAUM, D. Distance Bounding Protocols. in EUROCRYPT 2003

LINCS765, PP 23-27, Springer, 2003.

BRENNAN, R.; JENNINGS, B.; MCARDLE, C, et al. Teletec Irland, Evolutionary

Trends in Intelligent Networks. IEEE Communications Magazine, June 2000.

BUSSARD, L.; MOLVA, R. One Time Capabilities for Authorizations Without

Trust. In 2nd IEEE int. conf. on Pervasive Computing and Communication, Per-

Com04, Orlando FL, USA,pp 351-55,2005.

CAMPADELLO, S.; KOSKIMIES, O.; RAATIKAINEN, K.; HELIN H. Wireless

Java RMI. Enterprise Distributed Object Computing Conference. EDOC 2000.

Fourth International Sept. 2000.

CAMENISCH, J. HERREWEGHEN. Design and implementation of the IDEMIX

Anonymous Credential System. In 9th ACM conf. On Computer and Communica-

tion Security, CCS02, Washington, DC, USA, pp.21-30, ACM,2002

CDFUE. Charte des Droits Fondamentaux de LUnion Europeenne, articles 7 et 8.

Journal officiel des communautes Europeennes 2000/C 364/01-22, decembre 2000.

Page 122: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 123

CELLER, B. G.; LOVELL, N. H.; BASILAKIS J. Using information technology to

improve the management of chronic disease. Medical journal Australian, (s. 1), v.

179 no. 5 , pp. 242 – 246, September, 2003.

CHAU P. Y. K.; HU P. J. H. Technology Implementation for Telemedicine Programs.

Communication of ACM, new York, v 47, n. 2, p. 87-92, February 2004.

CHAUM, D. Untraceable Electronic mail Return Addresses and Digital Pseudonyms.

Communications of ACM, vol. 24, pp. 84-88 , 2001.

CHAUM, D. Blind Signatures for Untraceable Payments. in Crypto02, pp199-203,

Plenum Press, 2002.

CHAUM, D. The Dining Cryptographers Problems : Unconditional Sender and Re-

cipient Intractability. Journal of Cryptology, vol. 1, pp 65-75,1988.

CHENG – WEI, et al. Support and Optimization of Java RMI over Wireless Envi-

ronments. National Tsing Hua University, disponivel em: http://parallel.iis.sinica.edu.tw/cthpc2003/papers/CTHPC2003-

13.pdf. Aacesso em: setembro 2006.

CLULOW, J. et al. So Near and yet So Far: Distance Bounding Atacks in Wireless

Networks. in European Workshop on Security na Privacity in Ad- Hoc and Sensor,

ESAS 2006, lncs ,4357, pp 83-97, 2006.

CORBA; VERHOEVEN, R. Wireless CORBA. Disponıvel em: em <http://kotisivu.mtv3.fi/ashar/software/miwco>.

Acesso em: setembro 2006.

Conseil de l Europe, convention sur Le Cybercrime, 23 novembre 2001 , disponivel

em <http://www.internet.gouv.fr/information/information/dossiers/cybercriminalite-

politique-du-gouvernement/convention-sur-cybercriminalite-29.html>. Acesso em :

2009.

COULOURIS, G.; DOLLIMORE, J.; KINDBERG, T. Sistemas distribuidos: Con-

ceitos e projeto, 4ed, Porto Alegre: Bookman, 2007.

COVINGTON, M. J. et al. A Context -A ware Security Architecture for Emerging

Applications. In 18th Annual Computer Security Applications Conference, AC-

SAC02, Las Vegas, NV, USA, pp249,2002.

DAVE, B.; LINDAMAY, P. WebSphere Everyplace Access: Extending enterprise

applications to mobile users. IBM Corporation Somers, NY 10589 U.S.A, Julho

2002.

Page 123: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 124

DEMORACSKI, L. Fault-tolerant beacom Vetor Rounting for Mobile Ad Hoc Net-

work. in 19th IEEE Int. Conf. On Parallel and Distributed Processing Symposium,

IPDPS05, pp 279 , IEEE, 2005.

DIFFIE, W.; HELLMAN, M. E. New Directions in Cryptography. IEEE Transac-

tions on Information Theory , vol IT-22, no. 6, pp 644 - 54. 2006.

EIKO, Y.; BACON J. Pronto: MobileGateway with Publish-Subscribe Paradigm

over Wireless Network. University of Cambridge Computer Laboratory. Disponivel

em : <http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-559.pdf>. Acesso em

junho 2007

EYSENBACH G. What is e-health? J. Med. Internet Res. vol 3, no. 2 pp. 50-53,

2006.

FEENEY, L. M. A QoS Aware Power Save protocol for Wireless Ad Hoc Networks.

in 1th Mediterranean Workshop on Ad Hoc Networks, Med-Hoc Net 2002, Sardenga,

Italy, 2002.

FEINER, S.; MACINTIRE, B.; HOLLERER, T.; WESTER, A. A touring machine:

prototyping 3D Mobile Augmented Reality Systems for Exploring the Urban Environ-

ment. International Symposium on Wearable Computing, Cambridge, MA, Estados

Unidos, IEEE, Otubro 1997.

FRANCE TELECOM. Eclairer l’avenir, no. 23, 2005.

GAST, M. S. 802.11 Wireless Networks: The Definition Guide. O’Reilly, 2002

GELERNTER, D. Generative Communication. In LINDA. ACM Transactions on

Programming Language and Systems, 7(1), pp. 80-112, 2005

GIANUZZI, V. Data Replication Effectiveness in Mobile Ad Hoc Networks. In 1th

ACM, int. Workshop on Performance Evaluation of Wireless Ad Hoc and Ubiquitous

Networks, Venice, Italy, pp. 17-22, ACM, 2004. [] GOMEZ, L. et al. Using Sensor

and Location Information for Context Aware Access Control. In int. Conf. On

Computer as Tool EUROCON2005, Belgrade, Serbia Montenegro, 2005.

GONG, L.; SCHEMERS, R.; SIGNING. Sealing and Guarding Java Objects in Mo-

bile Agents and Security. Springer-Verlag. Editor G. Vigna. LNCS 1419. Pp.

206-216. Berlim. 1998.

Page 124: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 125

GUTTMAN, B.; BAGWILL, R. Internet Security Policy: A Technical Guide. NIST

special publication number 800-XX.Gaithersburg. July, 1997. Disponivel em: <http://csrc.nist.gov/isptg/html/>.

Acesso em: junho 2008.

GRUBER, T. R. A translation approach to portable ontology specifications. Knowl-

edge Acquisition – 5, pp. 199-200, 1993.

GRUNINGER, M.; FOX, M. S. Methodology for design and evaluation of ontology.

Proceedings of workshop on basic ontological issues in knowledge sharing , Canada,

1995.

GRUNINGER, M.; LEE, J. Ontology application and design. Communication ACM,

February, 2002.

HAGGERTY, P.; SEETHARAMAN, K. The Benefits of CORBA-Based Network

Management. IEEE Communications of the ACM. vol. 41, pp. 73-79, 2000.

HAHN, J. H.; LEE, K. H.; RYOU, J. C. A Model of Security Platform Within TINA-

based Management System. APNOMS, 16-18, Sendai, Japan, September 1998

HANCKE, P. G.; KUHN, G. An RFID Distance Bounding Protocol. in 1st int.

Conf. On Security and Privacity for Emerging Areas on Communications Networks,

Athens Greece, pp 67-73, IEEE, 2005.

HANDOREAN, R.; PAYTON, J.; JULIEN, C.; ROMAN, G. C. Coordination Mid-

dleware Supporting Rapid Deployment of Ad Hoc Mobile Systems. Proceedings of

The ICDCS Workshops, International Workshop on Mobile Computing Middleware

(MCM 2003), pp. 363-368, May 2007.

HAPNER, M. et al. Java Message Service Especification. Sun Microsystems, Abril

2002.

HARA, T.; MADRIA, S. K. Data Replication for Improving Data Accessibility in

Ad Hoc Networks. IEEE Transactions on Mobile Computing, vol. 5, no. 11, pp.

1515-32. 2006.

IC2. La Securite dans les Reseaux sans Fil e Mobiles 1: Concepts Fondadamentaux

.Technologies du Marche. ed. Lavoisier Hermes Science, 2007.

IC2. La Securite dans les Reseaux sans Fil e Mobiles 2 : Concepts Fondadamentaux.

Technologies du Marche,. ed. Lavoisier Hermes Science, 2007.

Page 125: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 126

ISMS2003. Identity Management Systems IMS: Identification and Comparison Study.

Independent Center For Privacity Protection - ICPP, 2003.

ISO/IEC15408-2-2005. Technologies de linformation - Techniques de Securite- Criteres

devaluation pour la Securite TI - Partie 2 : Exigence fonctionelles de Securite.

Norme International, ISO/IEC 15405-2-2005.

ITO, M. Um modelo de gestao de paciente cronico baseado nos conceitos de rela-

cionamento com cliente. 2006. 140 f. tese (Doutorado) - Escola Politecnica, Uni-

versidade de Sao Paulo, Sao Paulo, 2006.

ITU 2004 International Telecommunication Union Year 2001, General Overview of

NGN, 2004.

JEAN, M. G.; CHRISTOPHE, G.; PHILLIPE, M. CORBA: des Concepts a la

Pratique . Collection Inter Editions. Edition Maison. Paris. France.1997.

JOHNSTON, R. G; WARNERJ. S. Think GPS Cargo Tracking = High Security?

Think Again. Transport Security World, 2003.

JOSE, E. L. Arquitetura de Seguranca para Rede Aplicada a Sistemas de Gerencia,

Dissertacao (Mestrado). CPGCC/UFSC BU/DPT 0-239-131-6. 2000.

JOSEPH, D. A.; TAUBER, A.J.; KAASHOEK, F. M, Mobile Computing with the

Rover toolkit. IEEE Transaction Computing. 46 (3), pp. 337-352, 1997.

JUELS, A. RFID Security and Privacity: A research Survey. IEEE Journal on

Slected Areas in Communication, vol. 24, no 2 pp318-94,2006.

KADDOUR M, P. L. Towards an Adaptable Message OrientedMiddleware for Mobile

Environments. novembro 2006.

KADDOUR, M. PAULET, L. Une Approche Cooperative de l’Adaptabilite des Appli-

cations Mobiles basees sur MobileJMS. Disponivel em : http://www.infres.enst.fr/ pautet/papers/pautet04mobilejms.pdf.

Acesso em: outubro 2006.

KARAM, D. J. Modelo de negocio para mobilidade e interatividade em ambientes

convergentes heterogeneos. 2006, 80p tese (Doutorado) - Escola Politecnica, Univer-

sidade de Sao Paulo, Sao Paulo, 2006.

KENT; ATKINSON, 1998] KENT, S.; ATKINSON, R. IP Authentication Header

(AH). IETF RFC No. 2402, November 1998.

Page 126: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 127

KOERTUEM, et al, When Peer-to-Peer comes Face-to-Face: Collaborative Peer-to-

Peer Computing in Mobile Ad Hoc Networks, Proceeding 2001 International Con-

ference on Peer-to-Peer Computing, Sueca, 2001

LABROD H. and HFIFI H., de Bluetooth a WiFi, Hermes Sciences, 2008

LANSFORD, J. HomeRF: Bringing wireless connectivity. Disponivel em: Home.grouper.ieee.org/groups/8002/11/tutorial/90548S-

WPAN-HomeRF- Tutorial.pdf>. Acesso em: novembro 2008..

MAFFEIS, S. Wireless IRELESS JMS Introduction a Wireless JMS. Disponıvel em:

<http://www.softwired-inc.com/company/wjms.html>. Acesso: outubro 2006.

MAMPAEY, M.; COUTIRIER, A. A. Using TINA Concepts for Evolution. IEEE

Communications Magazine, June 2000.

MANN, S. Smart Clothing: The Shift to Wearable Computing. Communication of

ACM, vol. 39, no. 8, pp. 23-24, 1996.

MARTI, S. et al. Mitigating Routing Misbehavior in Mobile Ad-Hoc Networks. in 6th

conf. On Mobile Computing and Networking, Boston, MA, USA, pp 110-24,2005.

MARTIN, L. ; DEMERE, I. Bibliographical Survey of Data Sharing System for

Mobile Ad-hoc Networks. ENST-France Telecom, 2006

MASCOLO et al. Middleware for Mobile Computing. in Advanced Lectures on

Networking: Networking 2002 tutorials, Pisa, Italy. Volume 2497 of LNCS, pp.20-

55, Springer Verlag, may 2002

MEDJI, K. Conception et realisation d’une plateforme de repartition dediee aux en-

vironnements nomades. 2006. 176 f. These ( Doctorat). Ecole Nationale Superieure

des Telecommunications de Paris, France. Acesso em : novembro 2006.

MICHIARDI, P. MOLVA, R. CORE: A collaboration Reputation Mechanism To

Enforce Node Cooperation in Mobile Networks. in 6th IFIP, Portorosz , Slovenia,

pp 107-21,2002.

MOM: middleware oriented message. Disponıvel em: <http://pyfourmond.free.fr/mom.htm>.

Acesso em: novembro 2006.

MURFPHY, A. L.; PICO, G. P.; ROMAN, G. C. Lime: A Middleware for Phys-

ical and logical Mobility. In Proceedings of the 21st International Conference on

Distribuited Computing System ICDCS-21, Maio 2007.

Page 127: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 128

NABET, D.; RIZCALLAH, D. K. Livre blanc Machine to Machine. Fing/Syntec/Orange,

marco 2006.

NAGAO, K.; REKIMOTO, J. Agent Augmented Reality: A Software Agent Meets

the Real World. second International Conference on Multiagent Systems, 1996.

NETSCAPE white paper. The SSL Protocol, Cipher Used with SSL and the SSL

Handshake. Disponivel em: <http://developer.netscape.com/doc/manuals/security/sslin/contents.htm>.

Acesso em: 2007

NGUESSAN, D. A Model of security Menagement for Distribued Objects. Master

Thesis, UFSC-CPGCC, Florianopolis, April 2000.

NGUESSAN, D. Estudo comparativo de modelos de seguranca para computacao grid:

globus e grid 5000. PCS5732 Poli USP, Sao Paulo setembro 2006.

NGUESSAN, D.; MARTINI, J. S. C. Study and Implementation of a Solution to

Security Management for Mobile Environments Based on Tuple. icycs, 2008 The

9th International Conference for Young Computer Scientists, pp.2014-2020, 2008.

OFTA - Observatoire Francais des Techniques Avancee. Informatique Diffuse, Paris,

mai 2007

OLSEN, C. M.; NARAYANASWAMI, C. Powernap: Na Efficient Power Manage-

ment Scheme for mobile Devices. IEEE Transactions on Mobile Computing, vol. 5,

no. 7, pp. 816-28, 2006.

OMG. Wireless and Terminal Mobility in CORBA. v1.1. disponıvel em: <www.omg.org/cgi-

bin/doc?formal/2004-04-02 >, acesso em 2008.

OMG, MINIMUM. Disponivel em: <www.omg.org/cgi-bin/doc?formal/02-03-01>,

2002. Acesso em: junho 2007.

OMG Document, number 98-12-09. Security Service Specification, in CORBAser-

vices. Common Object Services Specification. 1998, disponıvel em: http://www.omg.org/.

acesso em: 2008.

OMG. Unreliable Multicast Inter-ORB protocol Request For Proposal Document

orbs/99-11-14, n]ovember 1999.

ONU217A Organisation des Nations Unies, ONU , Declaration Universelle des

Droits de lhomme, Resolution 217 A, Paris, decembre 1998

Page 128: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 129

ORANGE – Syntec – Fing, Livre blanc do M2M, 2006.

ORFALI, R.; HARKEY D; EDWARDS, J. The Essential Distributed Object-Survival

Guide. John Wiley Sons, Inc, 1996.

ORFALI, R.; HARKEY, D.; EDWARDS, J. Client/Server Programming. John

Wiley Sons, Inc, 1996.

PASCOE, M. J., Adding generic Contextual Capabilities to Wearable Computers.

ISWC98, Proceeding of second IEEE International Symposium on Wearable Com-

puters, Washington, DC, Estados Unidos, IEEE Computer Society, pp. 92-99, 1998.

PALIVAN, O.; DINU, A. Incursion dans WIRELESS CORBA. Fiche ISAR mai

2005. Acesso em : setembro 2006.

PAROUX, G.; DEMEURE, I BARUCH, D. A. Survey of Middleware for Mobile

Ad-hoc Networks. Ecole Nationale superieure des Telecommunications , ENST –

France Telecom RD, 2007.

PATRICK et al. Network Security it’s Time to Take Seriously. IEEE Communica-

tions Magazine, February 1997.

PRONTO. What PRONTO offers?. Acesso em: outubro 2007.

RENE, M.; VINNY, C. Location-Aware Event-Based Middleware: A Paradigm for

Collaborative Mobile Applications. Trinity College Dublin, Ireland, 2003.

RIEBACK et al, Is your Cat infected with a Computer Virus? in 4th Annual IEEE

Int. Conf. on Pervasive Computing and Communication, PerCom 2006, Pisa, Italy

. pp. 169-179, 2006.

RAY, I. Securing Pervasive Computing Applications. TrustCom08, china, 2008.

RODDEN, T.; CHEVERSTK.d. K.; DIX A. Exploiting Context in HCI Design for

Mobile System. In Proceeding of the Workshop on Human Computer Interaction

with Mobile Devices, maio 1998.

SAMFAT, D. Achitecture de securite pour les reseaux mobiles. These de doctorat

LENST, janvier 2008.

SASTRY, N, et al. Secure Verification of location claims. in ACM Workshop on

Wireless Security, WiSe, pp, 1-10, 2003.

Page 129: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 130

SATYANARAYANAN, M. Pervasive Computing : Vision and Challenges. in IEEE

Personal Communication, 2001.

SCHILIT et al The ParcTab Mobile Computing System. Proceedings of the Fourth

Workshop on Workstation Operating Systems. p. 34-39, otubro 1993.

SCHILL et al System Support for Mobile Distributed Applications. 2nd. Interna-

tional Workshop on Service in Distributed and Network Environments, Whistle,

British Columbia, June 1995.

SEKKAKI, A.; NGUESSAN, D.; MULLER M. D,; WESSTPHALL, C. B. Security

within TINA accounting architecture management. ICC 2001 – IEEE international

Conference on Communications no. 1, pp 199-203June 2001.

SOFTWIRED. Disponıvel em: <Ibus//mobile. http://www.softwired-inc.com/products/mobile/mobile.html>.

Acesso em: junho 2007.

TARI et al. Towards Cooperative Databases: The DOK Approach. Proceeding of the

International Conference on Parallel and Distributed Computing Systems. Dijon.

France. pp. 595-600, 1996.

TROELSEN, B.; SECCHI, R. Market Analysis Machine – to – Machine. Commu-

nication. in western Europe, IDC, April, 2006.

WALLACH et al. Extensible Security Architectures for Java. Proceeding of the

16th Symposium on Operating Systems Principles. Saint-Malo, pp. 116-128,1997.

WALDO, J. JavaSpace Specifications 1,0: Technical Report. Sun Microsystems.

Maco 1998.

WANT, R. System Challenges for Ubiquitous and Pervasive Computing. in Pro-

ceeding of the 27th International Conference on Software Engineering, ICSE 2005

WATERS, B.; FELTEN, E. Secure private Proofs of location. Princeton University,

Technical Report TR - 667-03, January 2003

WEBSPHERE Everyplace. Acesso em: 2007.

WEISER, M. The Computer for the Twenty-First Century. In Scientific American,

September 1991.

WEISER, M. Some Computer Science Issues in Ubiquitous Computing. In Com-

munications of ACM, july 1993.

Page 130: Um Modelo de Gerência de Segurança para Middleware Baseado

8 Referencias Bibliograficas 131

WESTPHALL, C. M. Esquemas de Autorizacao para a Programacao Distribuıda

Combinando os Modelos de Seguranca /CORBA/Web. Monografia ( exame de

Qualificacao), UFSC-LCM Florianopolis, julho de 1998. Certificado de Registro

n. 165.663, Livro 277, Folha 4 da Fundacao Biblioteca Nacional, Ministerio da

Cultura, Escritorio de Direitos Autorais, Rio de Janeiro, 1998.

WILIAM. S. Cryptography and Networks Security Principals and Practices. IEEE

Communication magazine, july 2000.

WILLIAM S. Ciptografia e Seguranca de Rade, Princıpios e Praticas. 4a. Ed. Sao

Paulo, Pearson Prentice Hall, 2008.

WILSON D. P.; PAULO F. Engenharia de Software: Fundamentos Metodos e

Padroes. 3. Ed. Rio de janeiro, LTC, 2009.

WIRELESS. Java RMI. XU Wei et LI Zhengmao – Fiche ISAR, mai 2005, disponıvel

em : <www.infres.enst.fr/ demeure/ISAR/FICHE1/WirelessCORBA>. acesso em:

julho 2006

WYCKOFFet al T Space. Ibm systems Journal, 37(3):454-474, 1998.

YAO, D. et al. On improving the performance of Role Based Cascaded Delega-

tion. in 1st int. Conf. On Security and Privacy for Emerging Areas on IEEE

Communications Networks, Athens Greece, pp 157-70, 2005.

YONEKI, E.; BACON. J. PRONTO: Rapport technique sur Pronto. disponivel em:

< http://www.cl.cam.ac.uk/TechReports/UCAM-CL-TR-559.pdf> . Acesso em :

outubro 2006.