Log in

A privacidade do código aberto

José Estêvão de Melo
Engenheiro Informático

O termo Software é utilizado para descrever conteúdo informático intangível, isto porque não tem uma componente física que possamos ver e sentir, ao contrário do Hardware, que é utilizado para caracterizar os componentes de um sistema informático que podemos manusear. No caso particular deste artigo está a ser escrito utilizando o software Microsoft Word, e o hardware é um portátil. Software e Hardware são complementares, no sentido em que o meu portátil sem Software é apenas um pisa-papéis muito caro, e o Microsoft Word sem hardware para ser instalado nem para pisar papéis serve.

Todo o software é construído utilizando linguagens de programação, que de uma forma geral, são um conjunto de instruções que, pelo menos na sua intenção, descrevem tudo o que pode ser feito e acontecer durante utilização do software em questão. A linguagem de programação de um software é denominada de código-fonte, porque a partir desta, é possível produzir o software na sua forma final. Uma analogia possível é considerar o código-fonte como sendo a receita, e o software na forma como o utilizamos, o prato pronto a comer.

Diz-se que o segredo é a alma do negócio, e por isso há receitas que são muito bem guardadas, como a da Coca-Cola em que num dado momento apenas duas pessoas sabem a receita completa, ou a do Ketchup Heinz cujo número de pessoas que conhecem a receita completa é estimado que seja inferior a dez. Sabendo a receita, conseguimos reproduzir o produto sem ter que o comprar, e com o Software acontece o mesmo, sabendo o código-fonte, posso reproduzir o software e utilizar sem ter que o comprar, tenho apenas que o preparar.

No mundo da informática, há muito e muito bom software cujo código-fonte é disponibilizado a qualquer um que o queira utilizar, ficando assim com o nome software de código aberto, ou OpenSource, como o sistema operativo Linux ou o navegador de internet Firefox. O modelo OpenSource, a meu ver, é um pilar do mundo informático e permite não só contribuir para algo maior que nós que poderá ser utilizado por milhares ou milhões de pessoas, mas também aprender com outros membros.

Mas o software OpenSource tem vantagens bastante tangíveis, uma empresa com um produto OpenSource conta com uma comunidade que ajuda sem custos ao desenvolvimento contribuindo ativamente para o mesmo, ou utilizando e reportando os problemas que encontra. Outra hipótese é oferecer um serviço para utilização do software para clientes que não tenham os conhecimentos para o implementar, se voltarmos à analogia da receita, todos sabemos algumas receitas, mas continuam a existir restaurantes a vender pratos com base nestas receitas, isto porque tem outros serviços associados. Existem licenciamentos específicos para OpenSource que indicam o que pode ou não ser feito com o software, havendo licenças que permitem apenas o uso particular e algumas que permitem também o uso comercial.

A meu ver, a principal vantagem do software OpenSource é a transparência do mesmo, pois estando o código-fonte disponível, o software deixa de ter segredos, sabemos exatamente que ações realiza, sem haver elementos escondidos a fazer sabe-se lá o quê com os nossos dados, e isto é conseguido através de escrutínio da comunidade que o mantém analisando e revendo todo o código-fonte da mesma.

Toda e qualquer solução de código fechado requer que acreditemos que ela faz apenas o que diz fazer por quem tem interesse na sua utilização. As aplicações chinesas da Baidu em 2020 foram removidas da PlayStore, porque liam e comunicavam dados dos utilizadores como listas de contactos e localização, comprometendo não apenas os dados de quem as instalou, mas também dados dos seus contactos.

Existem fatores negativos na utilização de software OpenSource, nomeadamente a necessidade de conhecimento técnico ou suporte dedicado, mas estes podem ser ultrapassados contratando os mesmos a empresas que utilizam soluções OpenSource, mantendo assim o melhor de dois mundos.

Eu recomendo a utilização e apoio ao software OpenSource, seja desenvolvendo ativamente, se tiverem conhecimento, utilizando e reportando bugs, ou mesmo financeiramente se a utilização do produto o justificar, pois não tem apenas o produto, como também a transparência de saber o que faz. Há um ditado que diz que quando não pagamos pelo que utilizamos, o mais certo é sermos nós o produto e não o usufrutuário, à semelhança de uma vaca que não paga pela comida e medicamentos que toma, porque o produto é ela própria.

Será que a nuvem é mesmo segura?

José Estêvão de Melo

A nuvem (Cloud) parece ser a solução para todos os problemas de armazenamento de dados. As ofertas disponíveis no mercado são vastas — e, em muitos casos, cada vez mais integradas de forma quase automática nos nossos dispositivos. Todas as grandes marcas, como Apple, Google e Microsoft, têm os seus próprios serviços de armazenamento na nuvem. É uma solução prática e com custo relativamente baixo, com mensalidades que variam entre 1 e 3 euros por mês para algumas dezenas de gigabytes de espaço.

De forma resumida, a nuvem é um sistema composto por dezenas, centenas ou milhares de computadores, chamados nós, que podem estar distribuídos por todo o mundo e que trabalham em cooperação. Qualquer um desses nós pode ser substituído a qualquer momento por outro e, como são muitos, nenhum é indispensável — sendo possível até que vários apresentem falhas simultaneamente sem comprometer o funcionamento do sistema.

Essa organização permite um crescimento praticamente ilimitado, capaz de armazenar quantidades de dados difíceis até de imaginar.

Um exemplo impressionante é o do CERN, onde o volume de dados atualmente ultrapassa 1 Exabyte — o equivalente a 1 milhão de Terabytes. Considerando que um computador portátil comum tem capacidade para cerca de meio Terabyte, seriam necessários aproximadamente 2 milhões de portáteis para armazenar toda essa informação.

Ao utilizarmos serviços de nuvem para armazenar os nossos dados, estamos, na maioria dos casos, a ceder o controlo dos mesmos às entidades que gerem esses serviços. Dizem-nos que os nossos dados estão seguros, mas o termo “seguro” é bastante amplo.

Se por segurança entendermos que, em caso de perda do telemóvel, podemos recuperar as fotografias a partir da nuvem, então sim — os dados estão seguros nesse sentido. No entanto, se segurança significar garantir que ninguém (nem sequer o fornecedor) pode aceder ou ler os dados armazenados, então poucos serviços oferecem essa proteção.

Além da possibilidade de acesso indevido por parte do fornecedor, existe o risco de ciberataques. Um exemplo conhecido é o da Uber, em 2016, quando um ataque informático resultou no roubo dos dados de 57 milhões de condutores e clientes. A empresa acabou por pagar aos atacantes para que a informação não fosse divulgada — um caso que demonstra como mesmo grandes empresas estão vulneráveis.

O objetivo deste artigo não é gerar medo, mas sim consciência. A melhor forma de garantir que a informação armazenada na nuvem não possa ser lida por terceiros é através da criptografia.

A criptografia é o processo que transforma os dados em informação ilegível, que só pode ser decifrada com a senha correta. Alguns serviços oferecem criptografia ponto-a-ponto (end-to-end encryption), o que significa que os dados são cifrados antes de saírem do seu dispositivo, e nem sequer o fornecedor consegue vê-los.

Infelizmente, os serviços mais populares (como Google Drive, iCloud ou OneDrive) não oferecem esta funcionalidade por padrão. Por isso, é importante refletir sobre que tipo de informação está a armazenar e, se necessário, utilizar ferramentas externas para cifrar os dados antes de enviá-los para a nuvem.

A nuvem é uma tecnologia poderosa e conveniente, mas não está isenta de riscos. A responsabilidade pela segurança dos nossos dados é partilhada — cabe também a cada utilizador proteger a sua informação.

Cifre antes de enviar. Saiba o que partilha. E escolha bem onde armazena os seus dados.