Fax Seguro - Projetos

Propaganda
UNIVERSIDADE FEDERAL DE SANTA CATARINA
CURSO DE GRADUAÇÃO EM CIÊNCIA DA
COMPUTAÇÃO
André Theodoro Carlucci
Fax Seguro
Trabalho de Conclusão de Curso
Prof. Ricardo Felipe Custódio, Dr.
Orientador
Florianópolis, Julho de 2003
Fax Seguro
André Theodoro Carlucci
Este Trabalho de Conclusão de Curso foi aprovado em sua forma final pelo Curso de em
Ciência da Computação da Universidade Federal de Santa catarina.
Prof. Ricardo Felipe Custódio, Dr.
Orientador
Prof. José Mazzucco Jr., Dr.
Coordenador do Curso
Banca Examinadora
Prof. Daniel Santana de Freitas, Dr.
Prof. Julio da Silva Dias, M.
Agradecimentos
Primeiramente gostaria de agradecer a todas as pessoas que me ajudaram de forma
direta ou indireta a realizar este trabalho. Agradeço aos meus amigos pela atenção e ajuda,
à minha familia pelo apoio e compreensão, ao Prof. Ricardo Felipe Custódio pela sua
orientação e confiança, ao Prof. Daniel Santana de Freitas pelo incentivo e ao Prof. Júlio
Da Silva Dias e à equipe do LabSEC pela ajuda.
Sumário
Lista de Figuras
viii
Lista de Sı́mbolos
x
Resumo
xii
Abstract
xiii
1
2
Introdução
1
1.1
Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.1.1
Objetivo Geral . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.1.2
Objetivos Especı́ficos . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2
Materiais e Métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.3
Motivação e Justificativa . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.4
Trabalhos Correlacionados . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.5
Organização do Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
Facsimile
6
2.1
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2.2
Histórico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2.3
Importância do FAX . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2.4
Tipos de Facsimiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2.4.1
Grupo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.4.2
Grupo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
v
2.5
2.6
2.7
2.8
2.9
3
2.4.3
Grupo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.4.4
Grupo 3 C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.4.5
Grupo 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
Funcionamento e Protocolos . . . . . . . . . . . . . . . . . . . . . . . .
11
2.5.1
Visão Geral da Operação do Fax . . . . . . . . . . . . . . . . . .
12
Fases de Uma Ligação Fax . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.6.1
Fase A - Estabelecimento da conexão . . . . . . . . . . . . . . .
13
2.6.2
Fase B - Procedimento pré-mensagem . . . . . . . . . . . . . . .
14
2.6.3
Fase C1 e C2 - Envio da mensagem . . . . . . . . . . . . . . . .
15
2.6.4
Fase D - Procedimento pós-mensagem . . . . . . . . . . . . . . .
15
2.6.5
Fase E - Fim da ligação . . . . . . . . . . . . . . . . . . . . . . .
16
Os quadros HDLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
2.7.1
Descrição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
2.7.2
Sinalização . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
O padrão de imagem e transmissão do fax T.4 . . . . . . . . . . . . . . .
21
2.8.1
Codificação . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
Fax Modem
23
3.1
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
3.2
Definições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
3.3
Padrões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
3.4
Active Commands(AT) . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
3.4.1
Classe 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
3.4.2
Classe 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
3.4.3
Classe 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
3.4.4
Classe 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
3.4.5
Classe 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
3.5
vi
4
Tecnologias Utilizadas
28
4.1
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
4.2
Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
4.2.1
Java Advanced Imaging - JAI . . . . . . . . . . . . . . . . . . .
29
4.2.2
Java Communications API 2.0 . . . . . . . . . . . . . . . . . . .
29
4.2.3
Java Cryptography Extension . . . . . . . . . . . . . . . . . . .
29
4.2.4
Java Secure Socket Extension - JSSE . . . . . . . . . . . . . . .
30
4.2.5
Java PDDE SDK - Bry . . . . . . . . . . . . . . . . . . . . . . .
30
4.2.6
Java Data Access API - JDBC . . . . . . . . . . . . . . . . . . .
30
4.3
ImageMagick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
4.4
Servidor IIS (Internet Information Service) . . . . . . . . . . . . . . . .
31
4.5
PDDE - Protocoladora Digital de Documentos Eletrônicos . . . . . . . .
31
4.6
SSL - Secure Socket Layer . . . . . . . . . . . . . . . . . . . . . . . . .
32
4.7
Tecnologias do Lado do Servidor . . . . . . . . . . . . . . . . . . . . . .
33
4.7.1
PHP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
Sistemas de Gerenciamento de Banco de Dados . . . . . . . . . . . . . .
34
4.8.1
MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
4.8.2
Microsoft Access . . . . . . . . . . . . . . . . . . . . . . . . . .
35
4.8.3
PostGreSql . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
4.8
4.9
5
Sistema Proposto
36
5.1
Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
5.2
Análise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
5.2.1
Especificação Informal . . . . . . . . . . . . . . . . . . . . . . .
37
Projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
5.3.1
Requisitos de Segurança . . . . . . . . . . . . . . . . . . . . . .
39
5.3.2
Banco de Dados . . . . . . . . . . . . . . . . . . . . . . . . . .
39
5.3.3
Escalabilidade . . . . . . . . . . . . . . . . . . . . . . . . . . .
40
5.3.4
Caso de Uso Real - Enviar fax aparelho . . . . . . . . . . . . . .
41
5.3
vii
5.3.5
5.4
6
Caso de Uso Real - Enviar fax WEB . . . . . . . . . . . . . . . .
51
Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
Considerações Finais
53
6.1
54
Sugestões para Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . .
Referências Bibliográficas
55
A Fontes
57
Lista de Figuras
2.1
Envio de fax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.2
Protocolo T.30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
2.3
Pacote HDLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
2.4
Sinalização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
5.1
Modelo Fax Seguro . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
5.2
Modelo das Tabelas do Banco . . . . . . . . . . . . . . . . . . . . . . .
40
5.3
Servidor Fax Seguro esperando ligação . . . . . . . . . . . . . . . . . . .
41
5.4
Ligação para o Servidor Fax Seguro . . . . . . . . . . . . . . . . . . . .
41
5.5
Autenticação no Sistema . . . . . . . . . . . . . . . . . . . . . . . . . .
42
5.6
Servidor Fax Seguro esperando ligação . . . . . . . . . . . . . . . . . . .
42
5.7
Servidor Fax Seguro pedindo destino real do Fax . . . . . . . . . . . . .
43
5.8
Envio de fax para o Servidor Fax Seguro . . . . . . . . . . . . . . . . . .
43
5.9
Protocolarização digital do fax . . . . . . . . . . . . . . . . . . . . . . .
44
5.10 Terminal protocolando o fax . . . . . . . . . . . . . . . . . . . . . . . .
44
5.11 Acompanhamento do processo via WEB . . . . . . . . . . . . . . . . . .
45
5.12 Envio do fax pela Internet para o Servidor destino . . . . . . . . . . . . .
45
5.13 Recebimento e protocolização do fax pelo Servidor destino . . . . . . . .
46
5.14 Visão do terminal recebendo e protocolizando a chegada o fax . . . . . .
46
5.15 Protocolarização digital do fax . . . . . . . . . . . . . . . . . . . . . . .
47
5.16 Envio do Fax para o aparelho destino . . . . . . . . . . . . . . . . . . . .
47
5.17 Protocolação da chegada do fax no aparelho destino . . . . . . . . . . . .
48
ix
5.18 Terminal mostrando protocolação da chegada do fax no aparelho destino .
48
5.19 Protocolarização digital do fax . . . . . . . . . . . . . . . . . . . . . . .
49
5.20 Protocolarização digital do fax . . . . . . . . . . . . . . . . . . . . . . .
49
5.21 Procolação do aviso da chegada do Fax no destino . . . . . . . . . . . . .
50
5.22 Visão do terminal protocolando o aviso da chegada do fax no destino . . .
50
5.23 Visualização da confirmação da chegada do fax . . . . . . . . . . . . . .
51
5.24 Página para envio de fax . . . . . . . . . . . . . . . . . . . . . . . . . .
52
xi
Lista de Siglas
API
Application Programming Interface
ASCII
Amsterdam Subversive Code for Information Interchange
ASP
Active Server Pages
AT
Active Commands
CGI
Common Gateway Interface
DLL
Dynamic-link library
DCE
Data Circuit Terminating Equipment
DTE
Data Terminal Equipament
HDLC
High Level Data Link Control
HTML
Hypertext Markup Format
HTTP
Hypertext Transfer Protocol
IIS
Internet Information Service
IP
Internet Protocol
ITU-T
International Telecommunication Union Telecommunication Standardization
LabSEC
Laboratório de Segurança em Computação - UFSC
PDDE
Protocoladora Digital de Documentos Eletrônicos
PHP
Hypertext Preprocessor
QoS
Quality of Service
SGBD
Sistema de Gerenciamento de Banco de Dados
SQL
Structured Query Language
SSL
Secure Socket Layer
TCP
Transmission Control Protocol
Resumo
O presente trabalho apresenta uma forma de integrar a tecnologia facsimile e a
Internet, de forma a usá-la como um meio de transmissão de documentos de fax a longa
distância. Isto resulta em uma diminuição dos custos de comunicação, transformando
ligações interurbanas em ligações locais e adicionando segurança e novos serviços nas
transações de fax. Entre os requisitos de segurança agregados tem-se o não repúdio, a
autenticidade e a garantia da integridade dos faxes.
O Sistema foi criado para ter fácil utilização e garantindo total compatibilidade
com o parque instalado de aparelhos de Fax grupo 3. Com o uso de tecnologias de criptografia, o documento de fax é protocolado digitalmente ao entrar no sistema, e trafega
por canais seguros até seu destino, podendo o usuário acompanhar o trajeto do fax através
de páginas na WEB.
Abstract
This work presents a way to integrate fax and Internet, using it to transmit facsimile documents over long distances. This results in less communication cost, as it makes
long calls as local calls, adds security, non repudiation, authenticity and new fax services.
The system was created to be easy to use and totaly compatible with all group 3
fax machines. Using cryptographic techniques, the facsimile document is dated with a
PDDE and is transmitted through secure channels. The user can also follow the status of
his document from the System webpage.
Capı́tulo 1
Introdução
A tecnologia facsimile (fax) pode ser definida como uma metodologia para criação
de uma cópia exata de um documento à distância. Sua popularização começou a cerca de
70 anos atrás, sendo usada para transmissão de fotografias para publicação destas em
jornais. Nos anos 60, surgiram os modems, mas a transmissão das imagens ainda era
muito lenta, impedindo a intensificação do uso. No começo dos anos 70, com o desenvolvimento de tecnologias de compressão de dados e melhoria nos modems, houve uma
redução drástica na velocidade de transmissão. Isso fez com que as empresas abrissem
os olhos para esta forma de comunicação e rapidamente o fax tornou-se um equipamento
indispensável. Ele é um importante canal de comunicação, tendo como vantagem sua
praticidade e velocidade. As comunicações via fax crescem a cada dia, e representam um
grande percentual do custo das ligações telefônicas de uma empresa. Este custo poderia
ser drasticamente reduzido utilizando a infra-estrutura da Internet como meio de transmissão do fax em longas distâncias, utilizando a telefonia apenas para ligações locais. A
construção de um sistema que possibilite esta integração é o objetivo deste trabalho.
2
1.1 Objetivos
1.1.1
Objetivo Geral
Desenvolver um sistema que possibilite o envio e recebimento de documentos
utilizando a tecnologia de facsimile, através de aparelhos convencionais ou modems, utilizando a rede telefônica e a Internet como meio de transmissão e garantindo a segurança
dos dados.
1.1.2
Objetivos Especı́ficos
• Estudo da tecnologia facsimile;
• Estudo do funcionamento dos modems e dos seus comandos pró-ativos;
• Estudo de técnicas de criptografia
• Estudo de bancos de dados
• Estudo da linguagem Java e seus pacotes opcionais para comunicações seriais;
• Desenvolvimento de um sistema de fax seguro pela Internet.
1.2 Materiais e Métodos
Para o desenvolvimento de um Servidor Fax Seguro, os seguintes materiais são
necessários:
Hardware:
• 1 computador
• 1 placa de rede
• 1 modem classe 2 e classe 8
• 1 linha telefônica
3
Software:
• Java 2 SDK v1.4.1
• Pacote Java Advanced Imaging
• Pacote Java Communications API 2.0
• Pacote Java Cryptography Extension
• Pacote Java Data Access API - JDBC
• Bibliotecas ImageMagick v5.5.7
• Java PDDE SDK - Bry
• Um servidor WEB qualquer, com suporte a PHP
• Um dos bancos de dados - Access, Mysql ou PostgreSQL
1.3 Motivação e Justificativa
De maneira geral, vários fatores levaram à escolha deste tema para estudo, mas
principalmente o desafio da criação de um Sistema que resolve um problema real e melhora a vida das pessoas. Além disso, Java é uma linguagem que cresce a cada dia e seu
aprendizado torna-se fundamental no desenvolvimento de Sistemas.
1.4 Trabalhos Correlacionados
Alguns autores já escreveram sobre o uso da Internet como meio de transmissão
de fax. O aspecto inovador deste projeto está na agregação de segurança e integridade
dos dados neste tipo de comunicação, além de adicionar não repúdio e autenticidade à
tecnologia facsimile.
Em [INT ], pode ser encontrado um serviço onde o usuário pode enviar fax com
textos simples para cidades cadastradas no sistema.
4
Em [TEL ], o usuário recebe um número de fax que fica na empresa FaxFacil, e
todo fax enviado para este número é encaminhado para o e-mail informado na contratação
do serviço. O preço para recepção do fax é de R$0.20 por página. O usuário pode enviar
fax pela página da empresa, ao custo de R$0.70 por página para dentro do paı́s e de R$2.00
à R$15.00 dependendo do paı́s escolhido.
Em [GZS 97] é discutido a tecnologia de Internet Gateways como fonte de serviços
de fax para uma LAN, com integração com e-mails.
No trabalho de [TOS 98] é apresentado um estudo sobre o fax tradicional e duas
formas de implementação: Store and Foward Fax, onde o fax é armazenado por um Servidor, enviado pela Internet para outro Servidor, e entregado futuramente e Real time fax,
onde o é estabelecida uma conexão entre os Servidores e os 2 aparelhos de fax, e cada
comando e resposta trafega de um aparelho para Internet para o outro aparelho, em tempo
real.
Em 1999 [GIR 99] apresenta um modelo para criação de um gateway de fax entre
a rede de telefonia e a Internet. Este gateway integraria aparelhos de fax comuns e e-mails.
[KT 01] apresenta em um artigo a cada vez mais crescente substituição do envio de
fax tradicional pelo envio pela Internet, mostrando problemas com firewalls, endereçamento
e QoS.
1.5 Organização do Texto
O presente capı́tulo mostrou os objetivos gerais e especı́ficos do trabalho e nos dá
a localização dos conceitos explorados em cada capı́tulo posterior.
O Capı́tulo 2 descreve como funcionam os aparelhos de fax existentes e a tecnologia facsimile. É apresentado como o fax evoluiu através da história, os tipos de fax
existentes, os protocolos utilizados bem como um documento de fax é codificado. Seu
objeto é esclarecer o funcionamento da tecnologia facsimile.
O Capı́tulo 3 mostra como são implementados e como programar os modems que
possuem a tecnologia facsimile integrada. É descrito os padrões e os principais comandos
aceitos pelos modems. O objetivo do capı́tulo é mostrar como um modem pode ser usado
5
para realizar a ponte entre a rede de telefonia e o Sistema Fax Seguro.
O Capı́tulo 4 apresenta uma descrição de todas as tecnologias utilizadas no desenvolvimento do Sistema. O objetivo do capı́tulo é apresentar ao leitor os conhecimentos
especı́ficos necessários de cada tecnologia.
O Capı́tulo 5 apresenta o Sistema proposto, bem como sua análise e seu projeto.
É mostrado o esquema do banco de dados e apresentado casos de uso descrevendo o
funcionamento do Sistema.
O Capı́tulo 6 trás as considerações finais do trabalho.
Capı́tulo 2
Facsimile
2.1
Introdução
Este capı́tulo descreve a tecnologia facsimile, seu funcionamento e protocolos,
apresentando um histórico de sua evolução até os modelos usados atualmente.
2.2
Histórico
A transmissão facsimile pode ser definida como a criação de uma cópia exata
de um documento a distância [SIG ]. O primeiro equipamento de fax para o uso em
telecomunicações foi o telégrafo quı́mico, inventado por um escocês chamado Alexander
Bain (1810-1977) em 1842 e patenteado no ano seguinte. Em sua invenção, o documento
era escrito utilizando-se um material condutor. Um contato metálico preso a um pêndulo
fazia sua leitura, transmitindo impulsos somente quando tocava no material condutor.
Do outro lado, uma máquina homóloga, mas com um filme que sofria descoloração nos
pontos onde recebia os impulsos elétricos do contato.
A sincronização das duas máquinas era feita utilizando-se os pêndulos. O emissor,
enviava um sinal elétrico a cada movimento do pêndulo e este sinal mantinha o outro
na exata freqüência do emissor. O primeiro modelo do telégrafo quı́mico de Bain foi
construı́do e usado em Londres, em 1851. Nesta época uma segunda máquina de fax foi
7
demonstrada por Bakewell, que havia feito sua patente em 1848. O princı́pio da máquina
de Bakewell era o mesmo que o de Bain, mas ele substituiu os pêndulos por cilindros
que giravam sincronizadamente, o que melhorou a eficiência do telégrafo quı́mico. Por
muitos anos, o desenvolvimento de equipamentos de fax teve como prioridade melhoria
das funções de leitura e reprodução de documentos.
Em 1865, o primeiro equipamento de fax comercialmente viável foi desenvolvido
na França por um Italiano, Caselli(1815-1891). Logo depois, Meyer desenvolveu outra
máquina que rapidamente passou a ser usada no sistema Francês de telégrafos. Apesar
das máquinas de Caselli e Meyer estarem sendo muito usadas, ainda havia duas áreas
importantes a serem mais investigadas: sincronização e transmissão. Um método prático
de sincronização foi finalmente desenvolvido, o motor de sincronização de La Cour.
Em 1870 havia funcionando comercialmente 17 facsimiles de Meyer e conjunto
com 4000 telégrafos eletromecânicos. A facilidade do uso do fax fez com que eles fossem
muito usados pelo governo Francês e para transmissão de correções nas bolsas de valores.
As maiores vantagens eram a eliminação virtual de erros na transmissão e a possibilidade
de se colocar uma assinatura no fax. A velocidade de transmissão utilizando os contatos
começou a ficar não satisfatória no inı́cio do século 20. Em 1902, Dr Arthur Korn, um
professor de fı́sica alemão, desenvolveu um sistema de células sensı́veis à luz, e o usou
para a fototelegrafia. A técnica consistia em transmitir luz através de um negativo de filme
colocado em um cilindro de vidro e este iluminado somente por uma pequena abertura.
Uma luz atravessava o filme e o vidro indo para uma fotocélula que a convertia em sinais
elétricos. A parte receptora utilizava um papel sensı́vel que recebia os sinais e o positivo
da figura era reproduzido.
Em 1910 Dr. Korn enviou uma figura de Berlin para Paris e Londres e em 1922,
de Roma para Nova Iorque, mas desta vez com uma transmissão à rádio. Em 1926 uma
ligação comercial especialmente para fax foi aberta entre o escritório da Marconi Wireless
em Londres e a RCA em Nova Iorque. A partir de 1920, o facsimile foi intensamente usado para transmissão de figuras para jornais. Com a melhoria do serviço na década de 30,
transmissões de mapas e fotografias tornaram-se comuns. Na década de 30, a companhia
de Telégrafos Western Union realizou uma série de adaptações no facsimile e disponibili-
8
zou modelos em lugares públicos próximos a seu escritório. Estes facsimiles transmitiam
as mensagens para o próprio escritório da Western Union e estas eram encaminhadas usando telégrafos comuns. Infelizmente este sistema sofreu diversos atos de vandalismo e
deixou de operar.
Em 1948 então a Western Union começou a investir nas empresas, com um serviço
que foi chamado de ”Desk Fax”. Colocava-se um facsimile em uma empresa, e esta
poderia enviar pequenas mensagens ao escritório da Western Union, que as encaminhava
como telegramas. A área mais abrangente de uso do facsimile foi trazer facilidades ao
telégrafo, transmissões de fotografias, fototelegramas, figuras para jornais, documentos,
desenhos de máquinas, e impressões digitais. Este serviço cresceu mais ainda a criação
da ligação entre Nova Iorque e Londres em 1926.
Em 1950, havia ligações entre 24 paı́ses e em 1963 a empresa Post Office fototelegrafia tinha um sistema com 56 terminais na Europa e 38 fora dela. Em janeiro de
1976 o número de paı́ses chegava a 65. Com o sucesso da fototelegrafia com o facsimile, tentou-se introduzir esta tecnologia para usuários domésticos, como um serviço de
envio de mensagens. Esta idéia foi experimentada em 1929-30, mas com a invenção da
televisão o facsimile não tinha como competir. O facsimile permaneceu em uso de 1930
a 1960 essencialmente como um sistema especializado em algumas aplicações e com
máquinas caras e sofisticadas. Apesar do sistema telefônico estar em uso desde 1930,
somente depois de 1960 os facsimiles evoluı́ram para poder transmitir imagens através da
PSTN (Public Switched Telephone Network). Ao passar a usar a linha telefônica como
meio de transmissão e com o barateamento do aparelho, o facsimile diminuiu o uso do
serviço postal dos Estados Unidos. Outro paı́s onde passou a ser muito usado foi o Japão,
devido à natureza de seu alfabeto de sı́mbolos. Estas novas máquinas ficaram conhecidas
como máquinas de documento facsimiles e foram muito usadas para transmitir documentos escritos à mão, à máquina ou impresso e desenhos.
Em 1968, a International Telegraph e a Telephone Consultative Committee (CCITT)
introduziram um padrão de funcionamento dos facsimiles chamado de Grupo 1. Isto foi
uma etapa significativa no desenvolvimento do facsimile, trazendo compatibilidade a todos os equipamentos. Com este padrão de funcionamento, uma página em formato A4
9
levava cerca de 6 minutos para ser enviada, mas ainda sim era uma alternativa muito mais
barata e rápida do que enviar documentos pelo serviço postal para o mundo todo. O padrão
Grupo 2 foi criado em 1976. As principais melhorias foram a diminuição do tempo de
envio de uma página para 3 minutos (metade) e aumento da capacidade de resolução de
leitura para 100 linhas por polegada. Mesmo assim, esta resolução ainda era ruim para
documentos com desenhos pequenos e o tempo de transmissão considerado lerdo já que
demorava cerca de meia hora para enviar um documento de 10 páginas. Um novo padrão
da CCITT foi criado em 1980, o Grupo 3. Este padrão fez uso da transmissão digital e
levava menos de 1 minuto para se transmitir uma página. A resolução também aumentou
para 200 linhas por polegada. Além disso, o padrão Grupo 3 também obrigava aos novos
facsimiles a serem compatı́veis com o padrão Grupo 2, independente do fabricante.
2.3 Importância do FAX
O Fax tornou-se um instrumento fundamental principalmente nas empresas, onde
o tráfego de documentos antes enviados pelo correio pode ser drasticamente reduzido. Seu
uso ganhou força por reduzir custos de comunicação e possuir trivial forma de utilização.
Apesar da Internet com o e-mail ter substituı́do parte de sua utilização, a tecnologia continua sendo muito usada, principalmente em documentos onde consta assinaturas
e pela maior credibilidade na segurança da informação em uma transmissão de fax.
Hoje existem mais de 100 milhões de equipamentos de fax no mundo. Por ano, o
tráfego de fax excede 400 bilhões de páginas e as companhias telefônicas faturam aproximadamente 91 bilhões de dólares.
2.4 Tipos de Facsimiles
Para garantir a interoperabilidade de facsimiles de fabricantes diferentes, a CCITT
e ITU-T definiram alguns padrões que foram evoluindo com o passar do tempo.
10
2.4.1
Grupo 1
Os primeiros facsimiles padronizados foram projetados com o padrão Grupo 1
(ITU-T Recommendation T.2) para linhas analógicas. O Grupo 1 foi definido em 1968
mas encontra-se atualmente removido da ITU-T como recomendação porque não há produção
deste tipo de facsimile ha muitos anos. Estes aparelhos eram lerdos e levavam cerca de
6 minutos para enviar uma página A4. A resolução ficava em torno de 100 linhas por
polegada. Havia uma opção de diminuir a resolução para transmissões mais rápidas. A
freqüência usada para o branco era de 1300Hz e para o preto, 2300Hz de acordo como a
CCITT. A América do Norte utilizava 1500Hz para o branco e entre 2300 e 2400Hz para
o preto.
2.4.2
Grupo 2
Perto dos anos 70, estas máquinas Grupo 1 foram substituı́das por máquinas Grupo
2 (ITU-T Recommendation T.3). O Grupo 2 foi padronizado em 1976 mas também deixou
de ser recomendação por não ser mais usado. Estes facsimiles convertiam as imagens
em sinais digitais, utilizando um modem para transmissão. A vantagem de um sinal
digital possibilitou uma velocidade de transmissão maior e com maior resolução, já que
ele está muito menos sujeito a ruı́dos na linha, ocasionando menos erros. Uma fórmula
matemática de compressão foi adicionada, aumentando a velocidade para 3 minutos por
página.
2.4.3
Grupo 3
O grupo 3 (ITU-T Recommendation T.4) foi padronizado em 1980 e trouxe mais
velocidade ao facsimile. Ele utiliza recursos para melhor performance de sinal, comprimindo os dados (eliminando informação redundante). Quanto a resolução, oferece
transmissões em 200x100 e 200x200 (linhas verticais x linhas horizontais). Este padrão
permite uma velocidade de envio de menos de 1 minuto por página A4. O Grupo 3 foi
projetado para suportar novas funcionalidades sem comprometer a compatibilidade com
11
as funcionalidades-padrão. O Grupo 3 é um padrão largamente usado hoje.
2.4.4
Grupo 3 C
O Grupo 3C (ITU-T Recommendation T.30) define uma forma digital da trans-
missão facsimile. Também é chamado de Grupo 3 opção C ou Grupo 3-64kb/s.
2.4.5
Grupo 4
O Grupo 4 (ITU-T Recommendation T.563 e CCITT Recommendation T.6) utiliza
técnicas de compressão para transmitir, essencialmente sem erros, um documento em
tamanho A4 a uma resolução de 8 linhas por milı́metro em menos de 1 minuto. Foi
padronizado em 1984 para trabalhar em linhas digitais, como ISDN 64kbps. O sistema é
incompatı́vel com o Grupo 3.
2.5 Funcionamento e Protocolos
Enviar um fax é uma tarefa simples para o usuário, basta inserir o papel no aparelho, discar o número destino, esperar a resposta e apertar o botão de enviar.
Figura 2.1: Envio de fax
12
Internamente, isto consiste em algo bem mais complexo. Um fax deve realizar
diversas tarefas e trocas de informação com o fax destino antes de enviar a imagem.
Primeiro, o equipamento deve se certificar de que quem atendeu sua ligação foi também
um fax, e não um modem de dados, uma secretária eletrônica ou uma pessoa. Depois
disso, os dois equipamentos trocam informações sobre suas capacidades (velocidade de
transmissão, resolução suportada, tipo de compressão, tamanho do papel, etc.). Eles devem concordar com o melhor conjunto de capacidades que ambos suportam. Após isso,
é realizado um teste para determinar a velocidade máxima de transmissão que aquela
ligação telefônica permite, tendo como limite máximo o valor acordado. Finalmente a
imagem é enviada. Mesmo assim, pode acontecer que ruı́dos ou distorções alterem a
imagem, e o fax destinatário deve avaliar a imagem recebida e enviar uma confirmação
dizendo se ela chegou corretamente ou com um número inaceitável de erros.
2.5.1
Visão Geral da Operação do Fax
O protocolo utilizado para enviar e receber imagens via fax é padronizado pela In-
ternational Telecomunications Union (ITU) Recommendation T.30 [UNI 99a]. A seqüência
realizada é a seguinte:
1. A imagem a ser transmitida é lida por um scanner e é criado um mapa de bits onde
pontos pretos e brancos são representados por zeros e uns;
2. Este mapa de bits é compactado e enviado para o protocolo T.30, um conjunto de
rotinas que negociam a configuração que será usada na transmissão da informação;
3. A informação finalmente é passada para um modem que a envia pelo meio de transmissão usado.
De uma maneira similar, as imagens são recebidas do protocolo T.30, descompactadas, impressas ou armazenadas. Uma seqüência de eventos de uma ligação simples
do fax ”A”para o fax ”B”sem erros é mostrada abaixo:
1. ”A”disca um número de telefone e espera pela resposta;
13
2. ”B”percebe o toque e atende a ligação;
3. ”B”identifica-se como um fax e envia a lista de suas capacidades;
4. ”A”responde especificando os parâmetros de transmissão (velocidade, resolução da
imagem, método de compressão, tamanho da imagem, etc.);
5. ”A”envia uma imagem-teste para testar a conexão telefônica;
6. ”B”examina a imagem-teste e reponde aceitando as configurações ou requisitando
uma velocidade menor;
7. ”A”envia a imagem;
8. ”B”analisa e envia uma resposta aceitando ou rejeitando a imagem;
9. A ligação acaba.
2.6 Fases de Uma Ligação Fax
A transmissão de um documento de fax definida pelo protocolo T.30 é dividida
em 5 etapas, descritas a seguir:
2.6.1
Fase A - Estabelecimento da conexão
Consiste em criar uma conexão entre os terminais emissor e receptor e trocar os
sinais de fax. Isto pode ser realizado manualmente ou automaticamente.
Manualmente, o operador do terminal emissor disca um número e escuta o sinal de
toque. Quando o terminal receptor responde a chamada, o operador do terminal emissor
escuta o sinal de fax imediatamente ou pode haver uma conversa dependendo se o terminal
receptor é automático ou manual. O emissor então envia o sinal de fax para a linha.
No modo manual do terminal receptor, o operador atende a chamada quando ouve
o toque. Dependendo se o terminal emissor está no modo manual ou automático, o operador pode receber uma voz ou o sinal de fax. O operador então envia o sinal de fax para
a linha.
14
Figura 2.2: Protocolo T.30
No modo de operação automático, o terminal detecta o sinal de linha e disca o
número escolhido. Quando o terminal receptor atende a chamada, o emissor imediatamente transmite o sinal de fax.
No modo de operação automático do terminal receptor, o terminal responde a
chamada quando detecta o toque e transmite o sinal de fax imediatamente.
2.6.2
Fase B - Procedimento pré-mensagem
O procedimento de pré-mensagem consiste na identificação de capacidades de
ambos facsimiles e da negociação de quais parâmetros serão usados, como velocidade,
resolução da imagem, etc. A fase B possui duas etapas então: identificação e comando.
A etapa de identificação consiste em:
1. identificação das capacidades dos facsimiles. O terminal receptor envia suas capacidades ao terminal emissor, isto é, taxa de bits por segundo, altura e largura da
página, tipo de compressão suportada, tempo de leitura de linha etc.
2. identificação do terminal (opcional). O terminal receptor envia sua identificação
como número de telefone, nome da organização, etc.
15
3. identificação de capacidades não-padrão, como por exemplo maior segurança.
A etapa de comando consiste em:
1. escolha das capacidades a serem usadas de acordo com as capacidades identificadas.
2. treino que envolve o envio de uma série de zeros para determinar a qualidade da
linha, para a escolha da velocidade de transferência.
3. sincronização entre os dois terminais.
2.6.3
Fase C1 e C2 - Envio da mensagem
Enquanto a mensagem é transmitida de acordo com a especificação ITU-T Rec-
ommendation T4 [UNI 99b] (C1), é realizado todo o controle de sinalização, detecção e
correção de erros (C2). As configurações usadas para a transmissão são as negociadas na
fase B.
2.6.4
Fase D - Procedimento pós-mensagem
O procedimento de pós-mensagem inclui a troca das seguintes informações:
Sinalização de fim da mensagem: isto é enviado pelo terminal emissor para
indicar ao receptor que todas as páginas do documento foram transmitidas e para retornar
à fase B para recepção de outro documento.
Sinalização de multi-páginas: enviado pelo terminal emissor para indicar ao
receptor que uma página do documento foi completamente transmitida e para retornar a
fase C para recepção da próxima página do mesmo documento.
Sinalização de fim de procedimento: enviado pelo terminal emissor ao receptor
para indicar que todas as páginas do documento atual foram transmitidas, que nenhum
outro documento será enviado e para ir à fase E.
Sinalização de confirmação: enviado pelo terminal receptor ao emissor para confirmar a recepção de qualquer sinal descrito acima enviado pelo emissor.
16
2.6.5
Fase E - Fim da ligação
O terminal emissor transmite um sinal de desconexão ao receptor para terminar a
ligação. Nenhuma resposta é esperada.
2.7 Os quadros HDLC
A troca de informação entre dois aparelhos de fax é feita utilizando-se códigos
binários baseados no formato HDLC (High Level Data Link Control).
O formato HDLC é padrão em diversos protocolos de enlace de dados, provendo
entre outras coisas detecção de erros e confirmação de recebimento.
2.7.1
Descrição
Figura 2.3: Pacote HDLC
2.7.1.1
Flag
O campo Flag possui 8 bits de tamanho e é usado para determinar o inı́cio e o
fim de um quadro. Para o procedimento facsimile, o flag é utilizado para estabelecer
sincronização de bits e quadros.
Formato: 0111 1110
17
2.7.1.2
Address
O campo address é utilizado para identificar um terminal especı́fico em uma conexão
multi-ponto. No caso de uma conexão pela rede telefônica, esta campo tem um formato
sempre igual.
Formato: 1111 1111
2.7.1.3
Control
Campo de controle para a troca de quadros entre os fax. Ele identifica se o quadro
enviado é o último antes de uma resposta ou não.
Formato: 1100 X000
X recebe 1 se o quadro enviado é o último ou 0 caso contrário.
2.7.1.4
Facsimile Control (FCF)
Este campo possui normalmente 8 bites. Ele pode possuir 16 se o modo opcional
de correção de erros for utilizado. O FCF também guarda informação sobre o tipo de
quadro está sendo enviado e a posição que a comunicação se encontra no procedimento
de fax.
2.7.1.5
Facsimile Information
Neste campo é transmitido o informação ou parâmetro do comando a ser recebido
pelo outro fax.
2.7.2
Sinalização
Cada parte do procedimento de fax é realizado com a troca de pacotes HDLC com
os comandos no formato descrito anteriormente. Os principais tipos de sinalização são
descritos abaixo:
18
Figura 2.4: Sinalização
2.7.2.1
Identificação inicial
Sinais de identificação do terminal que recebeu para o que iniciou a conexão.
Formato: 0000 XXXX
1. Digital Identification Signal (DIS) - caracteriza as capacidades padrão ITU-T do
terminal.
Formato: 0000 0001
2. Called Subscriber Identification (CSI) - este sinal opcional pode ser enviado para
identificar o terminal, por exemplo informando seu número.
Formato: 0000 0010
3. Non-Standard Facilities (NSF) - este sinal opcional pode ser enviado para informar
capacidades especı́ficas que não estão descritas nos padrões ITU-T.
Formato: 0000 0100
19
2.7.2.2
Comandos para receber
Do facsimile transmissor para o receptor.
Formato: X100 XXXX
1. Digital Command Signal (DCS) - comando resposta de configuração às capacidadespadrão identificadas pelo comando DIS.
Formato: X100 0001
2. Training Check (TCF) - este comando não utiliza o pacote HDLC. Ele é enviado
com a modulação T.4 para verificar se o canal de comunicação aceita a taxa de
transmissão escolhida.
Formato: Uma série de zeros por 1,5 segundos + ou - 10
2.7.2.3
Comandos de pós-mensagem
Sinais transmissor para o receptor do fax
Formato: X111 XXXX
1. End Of Message (EOM) - indica o fim de página de um documento e retorna ao
inı́cio da fase B.
Formato: X111 0001
2. MultiPage Signal (MPS) - indica o fim de página de um documento após sinal de
confirmação e retorna ao inı́cio da fase C para a próxima página.
Formato: X111 0010
3. End Of Procedure (EOP) - indica o fim do procedimento de fax e após sinal de
confirmação vai para a fase E. Formato: X111 0100
4. Procedure Interrupt-End Of Message (PRI-EOM) - para indicar o mesmo comando
EOM, mas com a opção adicional para requisição da intervenção de um operador.
Se a intervenção do operador acontece, as próximas interações entre os fax devem
começar da fase B.
Formato: X111 1001
20
2.7.2.4
Respostas de pós-mensagem
Sinais receptor para o transmissor do fax
Formato: X011 XXXX
1. Message Confirmation (MCF) - indica que uma completa mensagem foi recebida
de forma satisfatória e que mensagens adicionais podem ser enviadas. Esta é uma
resposta positiva à comandos como EOM, MPS, EOP e outros.
Formato: X011 0001
2. Retrain Positive (RTP) - indica que uma mensagem completa foi recebida e que
mensagens adicionais podem ser enviadas depois de uma retransmissão do comando CFR. Formato: X011 0011
3. Retrain Negative (RTN) - indica que uma mensagem não foi satisfatoriamente
aceita. Novas transmissões devem ser efetuadas somente com o reenvio do comando CFR.
Formato: X011 0010
2.7.2.5
Outros sinais
Sinais de controle de erros estado da linha.
Formato: X011 XXXX
1. Disconnect (DCN) - este comando indica o inı́cio da fase E (fim da ligação) e não
requer resposta.
Formato: X101 1111
2. Command Repeat (CRP) - este comando indica que o comando anterior foi recebido com erro e deve ser retransmitido.
Formato: X101 1000
21
2.8 O padrão de imagem e transmissão do fax T.4
O facsimile Grupo 3 se tornou o padrão mais usado em todo mundo, estando hoje
presente em quase todas as empresas. Os documentos enviados e recebidos por este tipo
de fax devem seguir um padrão internacional, definido pela ITU-T Recommendation T.4.
Este padrão permite transmissão de imagens em branco e preto ou coloridas, caso o terminal suporte o modo opcional que trata de cores. Outras caracterı́sticas que são definidas
neste documento incluem dimensões (resolução, tamanho, etc.) que os terminais devem
suportar, tempo de transmissão de uma linha escaneada e a codificação do documento.
2.8.1
Codificação
Abaixo é descrito a codificação usada pelos facsimiles Grupo 3.
- Data: uma linha de informação é composta de uma série de códigos de tamanho
variável. Cada código representa uma série de pontos brancos ou pretos. Os pontos brancos e pretos, se alternam. O total de 1728 pontos representam uma linha
horizontal de 215mm de tamanho. Para ter certeza que o receptor manterá o sincronismo de cores, toda linha começa com um código representando uma seqüência de
pontos brancos. Caso a linha a ser enviada comece com um ponto preto, um código
representando zero pontos brancos deve ser enviado antes do primeiro preto. Os
códigos que descrevem as seqüências de pontos brancos e pretos podem ser de dois
tipos: códigos de terminação e códigos de constituição. Cada código é uma única
seqüência de bits. Existe um código de terminação para cada seqüência de 0 a
63 pontos e um código de constituição para cada seqüência de 64 a 1728 pontos.
Desta forma, um seqüência de pontos de mesma cor é representada por um código
de terminação (caso seja menor que 64 pontos) ou um código de constituição e um
de terminação.
- End of Line: um código de fim de linha é usado ao final de cada linha e antes da
primeira linha do documento.
22
- Fill: este código pode ser transmitido entre o último código de uma linha e o código
de fim de linha. Ele pode ser usado para garantir que o tempo de transmissão de
uma linha não seja menor que o acordado entre os dois fax.
- Return to Control o fim da transmissão de um documento é informado enviando
seis códigos de fim de linha consecutivos. Após este comando a comunicação entre
os fax retorna para os padrões do protocolo T.30.
2.9 Conclusão
Neste capı́tulo foi apresentado os principais conceitos sobre a tecnologia facsimile. Foi mostrado o desenvolvimento e os tipos de facsimiles existentes, suas implementações
e como funciona o principal protocolo usado (T.30).
Capı́tulo 3
Fax Modem
3.1
Introdução
Este capı́tulo apresenta o que são e como funcionam os fax modems. É apresen-
tado os de padrões existentes e como estes podem ser programados.
3.2
Definições
Entendimento de termos utilizados:
Data Terminal Equipament (DTE): um DTE é qualquer computador capaz de enviar
comandos para uma porta serial onde se encontra um DCE (definido abaixo). Na prática,
são computadores de qualquer tamanho.
Data Circuit Terminating Equipment (DCE): é qualquer equipamento que conecta
um DTE a uma rede de comunicações. No escopo deste trabalho, a rede de comunicação
é a rede telefônica e o equipamento será sempre um modem com funcionalidades de fax.
24
3.3 Padrões
Fax Modems são modems com um dispositivo facsimile embutido. Os modems
são classificados de acordo com as funcionalidades que possuem incorporadas em hardware. A implementação destas funcionalidades não são mutuamente exclusivas, podendo
um modem pertencer a duas ou mais classes. A padronização destas funcionalidades faz
com que um programa escrito para trabalhar com certa classe funcione com qualquer
modem que a possua, independente do fabricante.
3.4 Active Commands(AT)
Para se comunicar com um modem, este deve estar instalado em um computador
(DTE) e deve ser aberta uma conexão com a porta serial onde o modem foi instalado. Os
comandos enviados para o modem são chamados de comandos AT. Um DTE pode enviar
comandos ao DCE para que este realize diversas funções, como iniciar ligações, atender
ligações, e outras. A padronização do formato destes comandos está descrita em cada
classe, e o protocolo usa caracteres definidos em [UNI 92]. Segue abaixo os comandos
mais comuns:
- ATA atende uma ligação.
- AT+FCLASS=? retorna as classes de comandos suportadas por este fax modem.
- ATDx disca para um número onde x é o número destino.
- ATH finaliza uma ligação
3.4.1
Classe 1
Modems Classe 1 possuem extensões em seu sistema que fazem com que este
possa atuar como um facsimile Grupo 3. Estes modems deixam quase todo seu processamento para seu software, incluindo os protocolos de comunicação e codificação de
25
imagem. O padrão oficial para este tipo de fax modem está descrito no ITU-T Recommendation T.31 [UNI 95a].
Nesta classe, o DCE é responsável por:
- fazer a modulação para transmitir quadros HDLC de forma transparente
- transmitir flags quando a linha estiver ociosa
- implementar o modo de correção de erro opcional da fase C
- detectar e verificar os quadros recebidos
- reconhecer finais de quadros
Todos os outros serviços HDLC devem ser providos pelo DTE.
3.4.1.1
Principais Comandos
A tabela abaixo mostra os principais comandos aceitos pela classe 1.
AT+FTS=[tempo]
Para uma transmissão e pausa
AT+FRS=[tempo]
Espera por silêncio na linha
AT+FTM[mod]
Transmite informação com a modulação mod
AT+FRM[mod]
Recebe informação com a modulação
AT+FTH[mod]
Transmite informação HDLC com a modulação mod
AT+GMI
Informa identificação do fabricante
AT+GMM
Informa modelo do modem
AT+IPR=
Configura velocidade da porta serial
Mais detalhes sobre estes comandos podem ser encontrados em [COR a], [SYS ]
e [PCT ].
26
3.4.2
Classe 2
São modems com as mesmas funcionalidades da Classe 1, porém com o proto-
colo de comunicação (T.30) implementado em hardware. Levou muito tempo para que a
padronização fosse aprovada, o que fez com que muitos fabricantes se lançassem fora do
padrão oficial. A padronização deste tipo de faxmodem está descrito no ITU-T Recommendation T.32 [UNI 95b].
Nesta classe, o DCE é responsável por:
- conexão
- policiamento do procedimento fax
- reportar o estado da sessão
- filtrar os dados na fase C
- reverter os bits na fase C
- inserir zeros para que uma linha seja transmitida de acordo com o tempo mı́nimo
para ela negociada
- realizar a negociação na fase B de forma automática
- prover todos os serviços da classe 1
Todos os outros serviços devem ser providos pelo DTE.
A tabela abaixo mostra os principais comandos aceitos pela classe 2.
AT+FDT
Enviar uma página
AT+FDR
Receber uma página
AT+FKS
Terminar uma sessão
AT+FIP
Inicializa os parâmetros da classe 2
Mais detalhes sobre estes comandos podem ser encontrados em [COR b], [LUC ]
27
3.4.3
Classe 3
A Classe 3 foi proposta para suportar conversão de fluxo de dados em imagens.
Suporta o T.30 como a Classe 2, e também o T.4, que serão explicados na parte de protocolos.
3.4.4
Classe 4
Modems Classe 4 possuem além de todas as funcionalidades dos de Classe 3,
buffers, que fazem com que a CPU fique liberada para trabalhar em outras coisas de
tempo em tempo enquanto recebe informações do fax.
3.4.5
Classe 8
A Classe 8 padroniza como o modem pode manipular voz e o reconhecimento de
freqüências DTMF [PCT ].
A tabela abaixo mostra os principais comandos aceitos pela classe 8.
3.5
AT#CID
Habilita identificador de chamadas
AT#CLS
Seleciona modo de dados, fax ou voz
AT#VTD
Mostra capacidade de detectar tons DTMF
AT#VTS
Transmite um tom DTMF
AT#VTX
Entra no modo de transmissão de voz
AT#VRX
Entra no modo de recepção de voz
Conclusão
Este capı́tulo apresentou o funcionamento dos fax modems, apresentando os padrões
e mostrando como um desenvolvedor pode programar os modems para que possam enviar
e receber fax.
Capı́tulo 4
Tecnologias Utilizadas
4.1
Introdução
Este capı́tulo destina-se a um estudo detalhado sobre as ferramentas e tecnologias
utilizadas para o desenvolvimento do projeto, incluindo linguagens de programação; ferramentas e aplicativos; servidores Web e sistema de gerenciamento de banco de dados.
Foi feito um estudo detalhado sobre cada uma das tecnologias e ferramentas empregadas
procurando encontrar no histórico, vantagens e desvantagens, comparativos com outras
tecnologias da mesma linha de funcionamento e o estado da arte, que representa o atual
estado em que encontra-se cada tecnologia.
4.2
Java
Java é talvez a linguagem que mais cresce em termos de utilização por desen-
volvedores em aplicações hoje em dia [JAV e].Sua sintaxe parece muito com o tradicional
C/C++, possibilitando uma fácil aprendizado por quem já conhece C. Java é orientado à
objetos, possui um gigantesco framework e componentes já desenvolvidos nas mais diversas áreas da computação. Abaixo são descritos os principais pacotes utilizados neste
trabalho.
29
4.2.1
Java Advanced Imaging - JAI
O Java Advanced Imaging é um conjunto de classes para criação e manipulação
de uma grande variedade de imagens [JAV a].
Através do JAI, imagens podem ser criadas dinamicamente, ao carregar uma página
de Internet por exemplo, e salvas em diferentes formatos. O JAI também possibilita o uso
de filtros para distorções, concatenações e sobreposições de imagens.
4.2.2
Java Communications API 2.0
O Java Communications API é um pacote opcional da linguagem JAVA. Este pa-
cote consiste em um conjunto de classes que fornecem suporte para a comunicação através
das portas COM do sistema em que o programa se encontra [JAV b].
O pacote pode ser usado para escrever aplicações de comunicação independente
de plataforma para o uso de tecnologias como e-mail em voz, fax e smartcards.
Esta versão do Java Communications contém suporte para portas seriais padrão
RS232 e portas paralelas padrão IEEE 1284.
Dentre suas funcionalidades, é destacado:
1. Enumerar as portas disponı́veis no sistema;
2. Abrir e pedir exclusividade da porta ao sistema operacional;
3. Resolver disputas por exclusividade da porta por múltiplas aplicações;
4. Realizar operações de entrada/saı́da nas portas de forma sı́ncrona e assı́ncrona.
5. Notificar aplicações sobre alterações do estado da porta.
Este pacote é usado pelo sistema Fax Seguro para troca de informações entre o
servidor e o fax modem que envia e recebe os fax que passam pelo sistema.
4.2.3
Java Cryptography Extension
O Java Cryptography Extension (JCE) é um conjunto de pacotes que compõem
implementações para cifragem, geração de chaves criptográficas e algoritmos MAC (Mes-
30
sage Authentication Code) em Java. O suporte criptografia inclui cifragem simétrica, assimétrica, em bloco e em fluxo. O pacote também suporta fluxos seguros e objetos selados
[JAV c].
O JCE era antigamente um pacote opcional ao Java 2 SDK, Standard Edition (Java
2 SDK), versões 1.2.x e 1.3.x, mas na versão 1.4 foi integrado ao SDK. Ele suporta os
principais algoritmos como o DES, TripleDES, BlowFish, AES, MD5, SHA e outros.
Este pacote é usado pelo sistema Fax Seguro para o cálculo resumo criptográfico
(hash) dos documentos recebidos e para implementação da criptografia assimétrica utilizada para garantir a segurança dos dados no tráfego destes entre os servidores.
4.2.4
Java Secure Socket Extension - JSSE
O Java Secure Socket Extension (JSSE) é um pacote que habilita comunicações
seguras via Internet. Ele implementa uma versão Java do SSL (Secure Sockets Layer) e
do TLS (Transport Layer Security). Ele também inclui cifragem de dados, autenticação
em servidores, integridade de mensagens e autenticação de cliente opcional [JAV d].
4.2.5
Java PDDE SDK - Bry
O Java PPDE SDK é um conjunto de classes utilizadas para que uma aplicação
Java possa contactar uma PDDE e enviar seus documentos para serem protocolados digitalmente.
4.2.6
Java Data Access API - JDBC
JDBC é uma API única para acesso à bases de dados. É uma API orientada à
objetos, com funções para execução de SQL em bases de dados relacionais. Cada fabricante disponibiliza o driver de acesso para aquele banco de dados, seguindo as normas do
JDBC. Desta forma, os acessos ao banco de dados pelas aplicações Java são padronizados,
diminuindo o trabalho do desenvolvedor.
31
4.3 ImageMagick
ImageMagick é uma coleção robusta de aplicativos e bibliotecas fornecidas para
ler, escrever e manipular qualquer tipo de imagem (mais de 89 formatos), incluindo os
mais populares como TIFF, JPEG, PNG, PDF e GIF. Essas bibliotecas fornecem capacidade para criar imagens dinamicamente, rotacionar, redefinir tamanho, resolução e outras
coisas. É um pacote desenvolvido em ANSI C e possui versões para diversos sistemas
operacionais. Além disso, foram desenvolvidas interfaces de acesso ao pacote para serem
usados com JAVA, PHP, Delphi e outras linguagens.
4.4 Servidor IIS (Internet Information Service)
O Internet Information Service é um servidor de páginas de Internet padrão do
Windows. Ele possui grande performance, fácil administração e segurança. O IIS já
vem com suporte à ASP integrado, mas pode facilmente integrar outras tecnologias de
processamento no servidor.
4.5 PDDE - Protocoladora Digital de Documentos Eletrônicos
A PDDE é um sistema de protocolização de documentos eletrônicos composto
por um computador servidor de uso especı́fico, um sistema computacional servidor, um
software de acesso direto por usuário e um kit de desenvolvimento de aplicativos[TEC ].
Com a PDDE é possı́vel agregar confiança e segurança na utilização de sistemas
computacionais que transacionam documentos eletrônicos. Com esse sistema pode-se
garantir, no futuro, que um documento eletrônico, conjunto de dados ou arquivo, existia
no passado e não foi alterado desde então. Ao protocolizar um documento, agrega-se ao
mesmo a datação, o seqüenciamento, a assinatura digital da PDDE e o encadeamento de
recibos.
A PDDE adiciona importantes requisitos de segurança:
1. Irretroatividade: Pela utilização de algoritmos criptográficos e um sistema exclusivo
32
de encadeamento de recibos, a PDDE garante a impossibilidade de protocolização
retroativa no tempo;
2. Privacidade: Por não ter acesso ao conteúdo do arquivo a ser protocolizado, a PDDE
garante a privacidade da informação.
3. Auditoria: A PDDE se constitui como a terceira parte confiável em uma relação de
troca de documentos eletrônicos, pois permite a auditoria interna em seu banco de
dados, e externa, através do recibo emitido.
O processo de protocolização digital se inicia com a geração do resumo criptográfico do documento - também conhecido como ”hash- que nada mais é do que uma
representação compacta do arquivo original, de tamanho definido. Este processo é realizado diretamente, pelo próprio usuário ou por um sistema aplicativo. O ”hash”é enviado
para a PDDE, que requisita a servidores de tempo externos uma data e hora confiáveis.
Ocorre então a protocolização do documento eletrônico, gerando um recibo eletrônico
assinado digitalmente pela PDDE, com hora, data e um número seqüencial de protocolização.
recibo é então enviado ao usuário ou sistema aplicativo.
4.6 SSL - Secure Socket Layer
Inicialmente desenvolvido pela Netscape, o protocolo SSL foi universalmente
aceito na Web para a comunicação autenticada e cifragem de dados entre clientes e
servidores[OPE ].
O protocolo SSL é executado entre a camada de transporte e a camada de aplicação
da arquitetura TCP/IP.
O SSL permite:
1. Autenticação de servidor
2. Autenticação de cliente
3. Cifragem dos dados
33
Autenticação do Servidor: permite ao usuário confirmar a identidade do servidor.
Clientes SSL podem usar técnicas padrão de criptografia por chaves públicas para conferir
a validade do certificado do servidor, bem como se este foi emitido por uma autoridade
certificadora que esteja em sua lista de AC’s confiáveis.
Autenticação do Cliente: permite ao servidor confirmar a identidade do usuário.
Para isto são usadas as mesmas técnicas descritas na autenticação do servidor.
Conexão cifrada: Exige que toda informação enviada entre cliente e o servidor
seja cifrada pelo emissor e decifrada pelo receptor.
O SSL é dividido em 2 protocolos:
1. SSL Record Protocol: define o formato usado para transmissão de dados.
2. SSl HandShake Protocol: define os requisitos necessários para que uma conexão
SSL seja efetuada.
4.7 Tecnologias do Lado do Servidor
4.7.1
PHP
PHP é uma linguagem que permite criar sites WEB dinâmicos, possibilitando uma
interacção com o utilizador através de formulários, parâmetros da URL e links[MON ]. A
diferença do PHP em relação a linguagens semelhantes como o Javascript é que o código
PHP é executado no servidor, sendo enviado para o cliente apenas html puro. Desta
mforma é possı́vel interagir com bases de dados e aplicações existentes no servidor, com
a vantagem do código fonte não ser exposto. O que diferencia o PHP de um script CGI
escrito em C ou Perl é que o código PHP fica embutido no próprio HTML, enquanto no
outro caso é necessário que o script CGI gere todo o código HTML, ou leia a partir de um
outro arquivo.
A linguagem foi concebida durante o Outono de 1994 por Rasmus Lerdorf. As
primeiras versões não foram disponibilizadas, tendo sido utilizadas apenas na sua página
pessoal para que ele pudesse ter informações sobre as visitas. A primeira versão utilizada
34
por outras pessoas foi disponibilizada em 1995, e ficou conhecida como ”Personal Home
Page Tools”(ferramentas para página pessoal). Era composta por um sistema bastante
simples que interpretava algumas macros e alguns utilitários que rodavam ”por trás”das
páginas: um livro de visitas, um contador e algumas outras coisas. Em meados de 1995
o interpretador foi reescrito, e ganhou o nome de PHP/FI, o ”FI”veio de um outro pacote
escrito por Rasmus que interpretava dados de formulários HTML (Form Interpreter). Ele
combinou os scripts do pacote Personal Home Page Tools com o FI e adicionou suporte a
mSQL, nascendo assim o PHP/FI, que cresceu bastante, e as pessoas passaram a contribuir
com o projecto. Estima-se que em 1996 PHP/FI estava a ser utilizado por cerca de 15.000
sites em todo mundo, e em meados de 1997 esse número subiu para mais de 50.000. Nessa
época houve uma mudança no desenvolvimento do PHP. Ele deixou de ser um projecto
de Rasmus com contribuições de outras pessoas para ter uma equipa de desenvolvimento
mais organizada. O interpretador foi reescrito por Zeev Suraski e Andi Gutmans, e esse
novo interpretador foi a base para a versão 3. Actualmente PHP encontra-se na versão 4.
Basicamente, tudo o que pode ser feito por um programa CGI pode ser feito
também com PHP, como recolher dados de um formulário, gerar páginas dinamicamente
ou enviar e receber cookies. PHP também tem como uma das caracterı́sticas mais importantes o suporte de um grande número de base de dados, como dBase, Interbase, mSQL,
mySQL, Oracle, Sybase, PostgreSQL e vários outros. Construir uma página baseada
numa base de dados torna-se uma tarefa extremamente simples com PHP. Além disso,
PHP tem suporte a outros serviços através de protocolos como IMAP, SNMP, NNTP,
POP3 e, logicamente, HTTP. Ainda é possı́vel abrir sockets e interagir com outros protocolos.
4.8 Sistemas de Gerenciamento de Banco de Dados
4.8.1
MySQL
O MySQL é um sistema de banco de dados com suporte a multi-usuários baseado
em comandos SQL (Server Query Language). A versão distribuı́da gratuitamente pela
35
Internet é oferecida em um pacote com o código-fonte, a fim de ser compilado para a
plataforma desejada.
O mysql é um banco de dados bem rápido, porém, não possui todas as funcionalidades que os bancos de dados tradicionais possuem.
4.8.2
Microsoft Access
O Microsoft Access é um banco de dados de fácil utilização. As mais diversas fer-
ramentas de desenvolvimento Windows possuem acesso nativo aos arquivos do Microsoft
Access. Além disso, muitos programas atuais para Windows possuem algum tipo de filtro
que permite a leitura/escrita em seus arquivos. Ele é um pouco lento, monousuário e não
possui interface TCP/IP.
4.8.3
PostGreSql
O PostgreSQL é um Sistema Gerenciador de Banco de Dados (SGBD) relacional.
Oferece mecanismos eficientes de segurança e integridade de dados, além de suportar
quase todas as instruções SQL. É um software de livre distribuição e, em termos de recursos, pode ser comparado aos melhores Banco de Dados comerciais existentes no mercado.
O PostgreSQL é open-source e freeware e é mantido por vários desenvolvedores
no mundo.
4.9 Conclusão
Este capı́tulo apresentou uma descrição das principais tecnologias utilizadas no
desenvolvimento deste trabalho, bem como suas funcionalidades.
Capı́tulo 5
Sistema Proposto
5.1
Introdução
O Sistema Fax Seguro consiste em uma aplicação desenvolvida em JAVA, que
recebe e envia documentos de fax utilizando como meio a rede telefônica e a Internet.
O maior benefı́cio deste sistema mostra-se quando um usuário deseja enviar um fax para
outra cidade. Em uma ligação normal interurbana ou internacional, a tarifa cobrada pela
companhia telefônica chega a ser 15 vezes maior que uma ligação local. Utilizando o
sistema Fax Seguro, o usuário faria apenas uma ligação local, e o fax seria enviado pela
Internet até a cidade destino e lá, entregue com mais uma ligação local.
5.2
Análise
Entre as funcionalidades do sistema, podemos encontrar: 1. Receber ligações de
fax 2. Enviar imagens de fax 3. Transmitir através da Internet uma imagem de fax para
outro servidor 4. Cifrar e garantir a segurança dos dados trafegados pela Internet.
Trata-se de um sistema ( hardware + software ) que funciona como um provedor
de serviços de fax. A idéia é aproveitar a infra-estrutura de equipamentos de fax existentes
e propiciar uma melhoria na qualidade dos serviços ofertados, adicionar novos serviços e
agregar mecanismos de segurança, tudo isso com uma diminuição dos custos de envio e
37
recebimento de fax pelos clientes.
5.2.1
Especificação Informal
1. A ligação telefônica será regional (local), ou seja, o cliente conecta-se ao provedor
de serviço mais próximo para enviar seu fax ao destinatário;
2. O sistema recebe o fax, cifra-o e o envia via Internet (Intranet) ao provedor mais
próximo do destinatário;
3. O provedor mais próximo do destinatário, decifra o fax, conecta-se ao aparelho de
fax do destinatário e envia o fax original;
4. O emissor pode enviar o mesmo fax a vários destinatários ao mesmo tempo, podendo personalizá-los através do sistema eletrônico de mala direta;
5. É utilizado a tecnologia de infra-estrutura de chaves públicas para garantir a autenticidade, integridade, confidencialidade, irretratabilidade e protocolização dos fax e
dados dos cliente;
6. O emissor pode receber a confirmação da entrega do fax no destinatário no seu
aparelho de fax ou recibo assinado de forma digital via e-mail ou sı́tio personalizado
do cliente;
7. Para o cliente de fax, utilizando o seu aparelho de fax normal, o sistema será muito
simples. A autenticação do usuário será realizada por um protocolo de desafio
resposta, impossibilitando um ataque ao sistema;
8. O provedor pode gerenciar contas de usuários, pode ser designado uma cota de
fax por usuário, e pode enviar relatório mensais ao cliente maior da utilização dos
serviços.
38
5.3 Projeto
O sistema Fax Seguro implementado utilizando-se a linguagem JAVA. A escolha
da linguagem foi feita levando em consideração sua portabilidade e grande quantidade de
bibliotecas disponı́veis. O sistema pode ser dividido nos seguintes módulos, de acordo
com a Figura 5.3:
Figura 5.1: Modelo Fax Seguro
Cada Servidor Fax Seguro funciona de forma independente. Para interagir com o
Sistema, o usuário pode utilizar um aparelho de fax comum, um modem ou um navegador
de Internet.
39
5.3.1
Requisitos de Segurança
Toda comunicação entre os Servidores é feita pela Internet. Desta forma, para
haver segurança nos dados e no acesso ao Sistema, os seguintes ı́tens foram explorados:
1. Autenticação: os usuários são autenticados no Sistema informando seu número de
usuário e senha. Isto é feito no telefone e na página WEB.
2. Segurança dos dados: todo tráfego de dados pela Internet é feito utilizando a tecnologia SSL, garantindo a autenticação dos Servidores e cifragem dos dados. Além
disso, é aplicada uma polı́tica de emph’friends only’, onde somente é aceito conexões
de IPs cadastrados no Servidor.
3. Integridade dos dados: todo documento que entra no Sistema é protocolado digitalmente, garantindo a integridade do mesmo ligado a uma data. Cada transação de
documentos no Sistema também é protocolada digitalmente.
4. Mesmo se o fax for interceptado na Internet, seu conteúdo não será legı́vel por estar
cifrado, garantindo a entrega do fax somente para o destinatário informado.
5.3.2
Banco de Dados
O banco de dados armazena todas as informações sobre a configuração, localização
dos documentos e contas de usuários.
O modelo escolhido foi o Relacional, devido à sua performance e grande aceitação
no mercado. Foram feitos testes com 3 bases: Microsoft Access, PostgreSQL e Mysql.
A Figura 5.3.2 mostra o esquema das tabelas utilizadas:
Descrição das Tabelas:
1. tab config: guarda informações sobre o Servidor Fax Seguro local, como porta onde
o modem se encontra e porta de comunicação SSL com os outros Servidores.
2. tab doc: contém informações sobre cada documento de fax digitalizado.
40
Figura 5.2: Modelo das Tabelas do Banco
3. tab fax in: guarda informações de cada fax que chega ao Sistema Fax Seguro por
um usuário.
4. tab fax out: possui informações de um fax que chegou ao Servidor Fax Seguro por
uma conexão SSL para ser enviado à um aparelho de fax final.
5. tab servers: contém o cadastro de cada Servidor Fax Seguro conhecido por este
Servidor.
6. tab usuários: contém os dados dos usuários e permissões.
5.3.3
Escalabilidade
O presente protótipo implementa o Servidor Fax Seguro com 1 modem apenas,
mas a aplicação pode ser facilmente expandida para vários deles. Isto trás a vantagem de
vários fax poderem ser enviados e recebidos ao mesmo tempo, aumentando a eficiência
do Sistema.
41
5.3.4
Caso de Uso Real - Enviar fax aparelho
Este caso de uso descreve a interação entre um usuário que deseja enviar um doc-
umento de fax utilizando o sistema Fax Seguro, mostrando todas as etapas:
1 - O Servidor encontra-se em estado de espera. O usuário insere um documento
no fax, disca o número do servidor e espera o atendimento do modem.
Figura 5.3: Servidor Fax Seguro esperando ligação
Figura 5.4: Ligação para o Servidor Fax Seguro
42
2 - O Servidor atende e envia mensagem de boas vindas e pede para que o Usuário
se autentique. O Usuário digita seu login e sua senha utilizando os números do telefone.
Figura 5.5: Autenticação no Sistema
Figura 5.6: Servidor Fax Seguro esperando ligação
43
3 - O Servidor valida o usuário, consultando o banco de dados e pede o ddd e o
número destino do fax.
Figura 5.7: Servidor Fax Seguro pedindo destino real do Fax
4 - O Servidor recebe o número e envia o sinal de fax. O usuário então envia o fax
ao servidor.
Figura 5.8: Envio de fax para o Servidor Fax Seguro
44
5 - O servidor envia o fax para protocolarização junto a PDDE e o insere na base
de dados.
Figura 5.9: Protocolarização digital do fax
Figura 5.10: Terminal protocolando o fax
45
6 - Neste momento, o Usuário já pode visualizar sua requesição na Internet utilizando um navegador comum.
Figura 5.11: Acompanhamento do processo via WEB
7 - O servidor envia o fax para o servidor Fax Seguro que corresponde à cidade
destino do fax.
Figura 5.12: Envio do fax pela Internet para o Servidor destino
46
8 - O Servidor Fax Seguro destino recebe o fax, procola sua chegada e envia o
recibo para o servidor remetente.
Figura 5.13: Recebimento e protocolização do fax pelo Servidor destino
Figura 5.14: Visão do terminal recebendo e protocolizando a chegada o fax
47
9 - O Usuário pode visualizar a chegada de sua requesição no servidor destino.
Figura 5.15: Protocolarização digital do fax
10 - O documento é encaminhado para o fax destino.
Figura 5.16: Envio do Fax para o aparelho destino
48
11 - O servidor destino protocola o envio do fax com a PDDE.
Figura 5.17: Protocolação da chegada do fax no aparelho destino
Figura 5.18: Terminal mostrando protocolação da chegada do fax no aparelho destino
49
12 - O servidor destino avisa o servidor remetente que o fax foi enviado com
sucesso.
Figura 5.19: Protocolarização digital do fax
Figura 5.20: Protocolarização digital do fax
50
13 - O servidor Fax Seguro remetente protocoliza o aviso da chegada do fax.
Figura 5.21: Procolação do aviso da chegada do Fax no destino
Figura 5.22: Visão do terminal protocolando o aviso da chegada do fax no destino
51
14 - O Usuário pode visualizar a chegada do fax no destino
Figura 5.23: Visualização da confirmação da chegada do fax
5.3.5
Caso de Uso Real - Enviar fax WEB
O usuário também pode enviar um fax através da página do Projeto. Para isso,
ele se autentica e entra na página de envio. Nela, digita o DDD, o número de telefone
destino do fax e o texto do corpo do fax. Este texto é transformado em imagem e enviado
ao Servidor Fax Seguro local, como se tivesse sido enviado por um aparelho de fax.
Após o envio, todo o procedimento é o mesmo do caso de uso descrito anteriormente.
52
Figura 5.24: Página para envio de fax
5.4
Conclusão
Este capı́tulo mostrou como foi projetado o protótipo do Sistema Fax Seguro. Os
Casos de Uso descrevem a interação do usuário com o Sistema e como o fax viaja ao
destinatário, passo a passo.
Capı́tulo 6
Considerações Finais
O presente trabalho mostrou que a Internet pode ser utilizada para o envio de fax
a longas distâncias. Isto permite a diminuição de custos nas ligações de fax interurbanas
e no custo global de comunicação de uma empresa.
Foi desenvolvido um Sistema que possibilita o envio e recebimento de documentos
de fax, através de aparelhos convencionais (aproveitando todo o parque instalado) ou
modems, utilizando a rede telefônica e a Internet como meio de transmissão.
O documento de fax é protocolado digitalmente ao entrar no Sistema e ao ser
entregue ao destinatário final, acrescentando o não repúdio e a autenticidade na transação
de fax. Toda a comunicação entre os servidores é feita utilizando-se SSL, garantindo o
sigilo e segurança dos dados.
Foi criado também uma interface WEB para gerenciamento e configuração do
Servidor Fax Seguro. Através dessa interface, o usuário pode acompanhar o trajeto de
seu fax enviado ao Sistema, além de poder enviar um fax diretamente por ela, sem a
necessidade de se possuir um aparelho ou modem.
Para isto, foi feito um estudo profundo sobre a tecnologia facsimile, o funcionamento dos modems, técnicas de criptografia, bancos de dados e das linguagens de programação
Java e PHP.
54
6.1 Sugestões para Trabalhos Futuros
- aumentar a diversidade de tipos de arquivos que podem ser enviado através da
página do Sistema
- envio de fax por telefone/voz
- roteamento para a cidade mais próxima do destino, quando este não pode ser alcançado
- faturamento da utilização do Sistema
- integração do e-mail com o Sistema
- agendamento de envios de fax
Referências Bibliográficas
[COR a]
CORPORATION, S. Supra Technical Support Bulletin Class 1 Fax Commands for Supra
Faxmodems. Disponı́vel em <http://www.hylafax.org/modems/supra/class1.html>. Acesso
em: Junho, 1992.
[COR b]
CORPORATION, S. Supra Technical Support Bulletin Class 2 Fax Commands for Supra
Faxmodems. Disponı́vel em <http://www.hylafax.org/modems/supra/class2.html>. Acesso
em: Junho, 1992.
[GIR 99]
GIRISH, B. Facsimile Communication over IP Networks. Indian Institute of Technology,
Kanpur, Março, 1999. Dissertação de Mestrado.
[GZS 97] GUO ZHEN SHENG, W. C. T. Intranet-based mail fax gateway technology. IEEE
International Conference on Intelligent Processing Systems, [S.l.], p.1607–1611, Outubro,
1997.
[INT ]
INTERNET, A. FaxNet. Disponı́vel em <http://www.faxnet.com.br/>. Acesso em: Julho,
2003.
[JAV a]
JAVA. Java Advanced Imaging 1.1 API Documentation. Disponı́vel em
<http://java.sun.com/products/java-media/jai/forDevelopers/jai-apidocs/>. Acesso em: Julho,
2003.
[JAV b]
JAVA. Java Communications 2.0 API Documentation. Disponı́vel em
<http://java.sun.com/products/javacomm/javadocs/index.html>. Acesso em: Julho, 2003.
[JAV c]
JAVA. Java Cryptography Extension (JCE) 1.2.1 API Documentation. Disponı́vel em
<http://java.sun.com/products/jce/doc/apidoc/>. Acesso em: Julho, 2003.
[JAV d]
JAVA. Java Secure Socket Extension (JSSE) 1.0.2 API Specification. Disponı́vel em
<http://java.sun.com/products/jsse/doc/apidoc/>. Acesso em: Julho, 2003.
[JAV e]
JAVA. JavaTM 2 Platform, Standard Edition, v 1.4.2 API Specification. Disponı́vel em
<http://java.sun.com/j2se/1.4.2/docs/api/>. Acesso em: Julho, 2003.
56
[KT 01]
KIYOSHI TOYODA, SHIRO TAMOTO, D. H. C. Internet facsimile as an internet office
appliance. IEEE Communications Magazine, [S.l.], Outubro, 2001.
[LUC ]
LUCENT. ModemModule Developer´s Guide.
[MON ]
MONCUR, M. PHP3: Manual: Introduction. Disponı́vel em
<http://www.php.net/manual/introduction.php3>. Acesso em: Janeiro, 2003.
[OPE ]
OPENSSL. OpenSSL Project. Disponı́vel em <http://www.openssl.org/>. Acesso em:
Março, 2003.
[PCT ]
PCTEL. HSP56 MicroModem AT Command Summary. Disponı́vel em
<http://www.multitech.com/documents/manuals/s000262a class1.pdf>. Acesso em: Julho,
1998.
[SIG ]
SIGTEL. History And Development Of Facsimile. Disponı́vel em
<http://www.sigtel.com/tel hist fax.html>. Acesso em: Janeiro, 2003.
[SYS ]
SYSTEMS, M. Fax Service Class1 and Fax Service class 1.0 Developer´s Guide.
Disponı́vel em <http://www.multitech.com/documents/manuals/s000262a class1.pdf>.
Acesso em: Julho, 2002.
[TEC ]
TECNOLOGIA, B. BRy PDDE - Servidor de Confiança. Disponı́vel em
<http://www.bry.com.br/produtos/pdde/default.asp>. Acesso em: Julho, 2003.
[TEL ]
TELEMIKRO. FaxFacil. Disponı́vel em <http://www.passafax.com.br/>. Acesso em: Julho,
2003.
[TOS 98] TOSHNIWAL, R. A Study on Internet Fax.
[UNI 92]
UNION, I. T. T.50 international reference alphabet (ira). Fevereiro, 1992. Relatório técnico.
[UNI 95a] UNION, I. T. T.31 asynchronous facsimile dce control - service class 1. Agosto, 1995.
Relatório técnico.
[UNI 95b] UNION, I. T. T.32 asynchronous facsimile dce control - service class 2. Agosto, 1995.
Relatório técnico.
[UNI 99a] UNION, I. T. T.30 procedures for document facsimile transmission in the general switched
telephone network. Abril, 1999. Relatório técnico.
[UNI 99b] UNION, I. T. T.4 standardization of group 3 facsimile terminals for document transmission.
Abril, 1999. Relatório técnico.
Apêndice A
Fontes
Download