em Blog Intl

 

Hoje anunciamos um combo de atualizações efetuadas na plataforma:

  1. Meio de pagamento Bit.One
  2. Lançamento da plataforma internacionalizada
  3. Reconhecimento de documentos registrados por outras plataformas com SHA256
  4. Reconhecimento de documentos registrados no Deedbot
  5. Adicionada a Hora Legal Brasileira ao registro

 


 

1) Meio de pagamento Bit.One

 

Há tempos vínhamos pensando em internacionalizar a plataforma, mas havia o problema com o meio de pagamento pois o PagSeguro aceita somente cadastros e pagamentos provenientes de  brasileiros (já tivemos vários problemas com pessoas de outros países tentando pagar através do PagSeguro).

Então fechamos uma parceria com a Bit.One e juntos fizemos a integração do meio de pagamento através da plataforma deles.

Foi uma ótima e estável solução! Recomendamos totalmente o serviço prestado por eles.

Só temos elogios para a equipe da Bit.One, principalmente ao Thiago Augusto (CEO) e Diogo Souza (CTO) que foram extremamente atenciosos e nos auxiliaram durante todo o processo de implantação e homologação (inclusive nas madrugadas adentro).

 


 

2) Lançamento da plataforma internacionalizada

 

Com o problema do meio de pagamento resolvido, pudemos internacionalizar a plataforma.

Internacionalizar significava traduzí-la para outros idiomas e para isso fizemos uma longa busca pela melhor plataforma de internacionalização.

Haviam questões a serem resolvidas: seria melhor fazer pelo backend ou pelo frontend? Quais seriam as melhores ferramentas para um ou para o outro?

Através do backend, tínhamos a opção de utilizar o pybabel + jinja2. Como normalmente temos preferência por plataformas que atuem no server-side, resolvemos iniciar por ela. A implementação não é simples, porém ficou funcional e consistente. Mas ainda tínhamos que experimentar uma outra, que vem sendo amplamente difundida e utilizada principalmente nas plataformas mobile: o tal do i18n(ext).

Optamos pelo i18next (100% javascript) pela quantidade de plugins que ele possui e opera diretamente no front-end. No começo estávamos bastante reticentes, mas a sua simplicidade de implementação e leveza nos convenceu a adotá-la para a plataforma.

E não esquecemos dos nossos conterrâneos! Pelo menos 2 funcionalidades, como a Extensão para o Chrome (Prova de Autenticidade para Conteúdo Web) e o pagamento por PagSeguro só estão disponíveis aos brasileiros (até esse momento).

 


 

3) Reconhecimento de documentos registrados por outras plataformas com SHA256

 

Existem outras plataformas no mercado que fazem um trabalho muito similar ao nosso, como o próprio Proof of Existence (nossa inspiração e base fundamental para o nosso start), BlockNotary, Everledger, Ascribe, entre outras.

O que há de comum entre todas elas, é que o registro feito no blockchain é de um SHA256 do arquivo digital submetido (o Everledger utiliza um RIPEMD16, mas de um SHA256 do índice).

Para quem não sabe, o SHA256 é um algorítmo de assinatura digital que gera um hash único e exclusivo que identifica a autenticidade do documento. Só é possível calcular essa assinatura digital com a presença do arquivo original. Isso quer dizer que é impossível criar uma assinatura digital compatível sem conhecer o arquivo naquele instante. E qualquer alteração no documento, seja um ‘Salvar Como’, um ‘Autosave’, etc, altera minúsculas informações dentro do arquivo, tornando-o diferente do original registrado. É através desse método que conseguimos comprovar que um arquivo não sofreu alterações e, como essa informação fica registrada em um ambiente transparente, distribuído e descentralizado, com uma data (timestamp) indicando o momento em que foi lido e registrado, fica muito fácil comprovar sua autenticidade.

O que fizemos foi um meio de ler qualquer arquivo digital e identificar se a sua assinatura digital SHA256 foi registrada no blockchain em algum momento, mesmo que não tenha sido registrada através da nossa plataforma.

Na prática, mesmo que outra plataforma tenha sido utilizada para registrar o documento, nós podemos mostrar que ele é autêntico e a data do registro. Também disponibilizamos o ambiente para assinatura de todas as partes envolvidas (no caso de um contrato), além da possibilidade de fazer download do certificado digital. E fazemos isso gratuitamente!

Então, na prática, mesmo que o documento não tenha sido registrado na nossa plataforma, os usuários ainda podem:

  • Caso seja um contrato, as partes podem assinar o documento remotamente através de vídeo-self (com um rápido depoimento de 5 segundos)
  • Baixar o certificado de autenticidade (se está no blockchain, nós confiamos)

E de graça!

 


 

4) Reconhecimento de documentos registrados no Deedbot

 

A plataforma Deedbot é muito utilizada no meio do Bitcoin OTC WoT, que é um ambiente peer-to-peer para negociação de bitcoins. O Deedbot normalmente é utilizado por usuários com boa reputação, para registrar os contratos públicos das suas negociações.

Reproduzimos o algorítmo utilizado e agora nossa plataforma também identifica esses contratos, além de permitir que o usuário faça uso das mesmas funcionalidades citadas no item anterior, gratuitamente.

 


 

5) Adicionada a Hora Legal Brasileira ao registro

 

O Observatório Nacional, é a única instituição definida por lei que pode gerar, conservar e disseminar a Hora Legal Brasileira. Assim que essa hora é gerada, ela é disseminada através de uma rede (ntp) e pode ser utilizada gratuitamente pela população. Também pode ser certificada através de Autoridades de Carimbo de Tempo (ACT), uma espécie de certificadora que possui uma licença específica para isso. Na prática, eles fazem o que o blockchain faz: fornece um timestamp. Aliás, à título de curiosidade, o blockchain da rede Bitcoin foi concebido com base no conceito de servidores de timestamp, por isso funciona tão bem para esse procedimento.

O que aconteceu é que algumas instituições estavam nos solicitando a Hora Legal Brasileira, além do horário de registro fornecido pelo blockchain.

Como nos tornarmos uma ACT está um pouco distante da nossa realidade (o custo ultrapassa as centenas de milhares de Reais), nós optamos por utilizar a Hora Legal Brasileira através de outro meio.

No momento em que o registro está sendo enviado para o blockchain nós consultamos um pool de servidores ntp homologados pelo Observatório Nacional e o NIC.br, coletamos a Hora Legal Brasileira fornecida por esses servidores e então registramos esse horário junto à assinatura digital do documento.

Assim, o registro no blockchain proveniente do OriginalMy, ficou com o seguinte formato:

[ assinatura digital SHA256 ];[ hora legal brasileira (utc) ];[ ORIGMY (label) ]

Entendemos que o timestamp fornecido pelo blockchain já poderia ser considerado suficiente, mas para fins de compliance para as instituições que precisam estar adequadas à legislação brasileira, esse registro (mesmo redundante) se tornou necessário.