Rastreando a produção de seus produtos com blockchain

Com o mercado cada vez mais globalizado e a exemplo dos recentes incidentes ligados à produção de carne na Ásia que grandes varejistas estão exigindo que os seus fornecedores registrem todas as etapas de produção em uma rede blockchain. Trazendo dessa forma transparência para seus clientes e uma maior segurança em caso de incidentes dessa natureza.

Grandes redes varejistas já anunciaram soluções dessa natureza a exemplo do Wallmart que vem realizando investimentos volumosos nessa tecnologia vistos os recentes incidentes envolvendo o seu nome.

Os benefícios da tecnologia blockchain são inúmeros e previstos em todas as indústrias. O que pouca gente sabe é que é simples e rápido utilizá-lo em seus negócios. Com o surgimento da plataforma 2Ledger (http://www.2ledger.com) em apenas alguns instantes é possível criar redes e entidades para, por meio de nossa API, realizar o registro de informações sobre a etapa de produção de um produto ou lote.

Caso tenha interesse em criar o seu próprio mecanismo de rastreamento de cadeia de  produção não deixe de criar a sua conta gratuitamente na plataforma 2Ledger e experimentá-la. Será um prazer ajuda-lo ou esclarecer as suas dúvidas.

Gostaria de criar uma moeda como o Bitcoin para o meu negócio e fazer o seu IPO. É possível?

Com advento da tecnologia blockchain e a possibilidade de criação de moedas distribuídas e sem a possibilidade do conhecido double spending (gastar o mesmo dinheiro mais de uma vez) novos negócios surgiram e está cada vez mais comum a criação de novas criptomoedas.

Com o surgimento da plataforma 2Ledger criar a sua própria moeda ficou simples. Em apenas alguns cliques você pode criar a sua moeda, suas carteiras e transferir os recursos entre os seus clientes. Tudo isso por meio de uma interface web ou por meio da integração do seu sistema com a nossa API.

Caso tenha interesse em criar a sua própria criptomoeda não deixe de criar a sua conta gratuitamente na plataforma 2Ledger (http://www.2ledger.com) e experimentá-la. Será um prazer ajuda-lo ou esclarecer as suas dúvidas.

Como dar mais segurança e transparência para a minha solução de conta digital

Tenho uma solução ou aplicativo onde os meus usuários possuem uma conta digital e eu controlo o seu saldo. Como posso utilizar a tecnologia blockchain para dar mais segurança e transparência?

Por meio da criação gratuita de uma conta da plataforma 2Ledger é possível criar seus criptoativos, que podem ser uma moeda própria (criptocurrency) ou mesmo ativos indivisíveis (cripto assets) como imóveis ou automóveis, e transferi-los entre as carteiras de seus clientes. Tudo isso de forma simplificada e sem a necessidade de conhecer profundamente a tecnologia blockchain.

Utilizando a plataforma 2Ledger (http://www.2ledger.com) você trará mais confiança e transparência para o seu negócio uma vez que os saldos poderão ser utilizados apenas pelos proprietários das carteiras e que esses ativos serão completamente rastreáveis e imutáveis.

Não perca tempo e experimente agora mesmo. Será um prazer ajudá-los a tornar o seu negócio mais seguro e confiável.

Será que posso confiar nas avaliações que vejo nos sites especializados?

O surgimento de sites especializados em reviews, sejam para a avaliação de produtos ou serviços ou mesmo para avaliação de empresas, mudou a forma como as pessoas consomem hoje em dia.

Mas quem garante que essas informações são fidedignas ou que nenhuma avaliação indesejável não foi eliminada? Ninguém! Todas as soluções atuais se baseiam na utilização de serviços centralizados, ou seja, com a mesma facilidade que são cadastradas podem ser atualizados ou eliminados. A depender da conveniência do site escolhido. Então é torcer para que esses sites sejam de confiança? Exato!

Mas não existe outra forma? Sim, com o surgimento da tecnologia blockchain agora é possível que esses sites possam registrar todos os seus reviews em uma rede blockchain e dessa forma ninguém mais pode adulterá-las.

Mas isso já possível? Essa tecnologia já está disponível? Como posso integrar o meu negócio com essa tecnologia? Sim, essa tecnologia já é realidade e está disponível.

Por meio da criação gratuita de uma conta na plataforma 2Ledger (http://www.2ledger.com) e utilização de nossa API você poderá em instantes criar a sua rede e as entidades que utilizará para registrar os seus reviews.

Caso tenha interesse em realizar um teste de integração do seu sistema de reviews com a tecnologia blockchain será um prazer ajuda-lo.

Criando um repositório para informações imutáveis

A Plataforma 2Ledger simplifica e acelera a adoção da tecnologia blockchain em seus negócios. Integrar com ela é super simples basta criar uma conta e começar a utilizar a sua API.

A API foi toda desenvolvida seguindo os princípios do padrão RESTful e permite a integração com praticamente todas as linguagens de programação mais modernas.

O primeiro passo é criar a sua conta na 2Ledger. Caso ainda não tenha realizado poderá fazê-lo clicando aqui.

Autenticação

O primeiro passo para utilizar a API é obter o token que será utilizado em todas as interações com a plataforma. A autenticação da plataforma 2Ledger utiliza o padrão Basic Access Authentication. Para realizar a autenticação basta fazer a seguinte requisição:

//Credentials (login:password) in base64 format
var credentials = "bWFyY2lvQDJsZWRnZXsuY28tOkNnN2RuaHh0";

$.ajax({
   url: "https://api.2ledger.com/v1/login",
   method: "post",
   beforeSend: function(request) {
       request.setRequestHeader("Accept", "application/json");
       request.setRequestHeader("Authorization", "Basic " + credentials);
   },
   success: function( result ) {
       var token = result.response;
       console.log(token);
   },
   error: function (err) {
       console.log("Authentication failed: " + err.responseJSON, err);
   }
});

O header Authorization é o resultado da combinação login:password em formato Base64 e se passado corretamente retorna o token como resposta.

No caso da autenticação falhar um erro http 400 será retornado. Verifique novamente as credenciais informadas e tente novamente.

Autorização

Todas as operações de interação com a API da Plataforma 2Ledger implementam o padrão Bearer Token e exigem o token retornado no tópico anterior no header Authorization de cada requisição.

//Add an authorization header into request
request.setRequestHeader("Authorization", "Bear " + token);

Caso o token informado não seja válido um erro http 401 Unauthorized será retornado informando a necessidade de um token válido. Nesse caso retorne ao tópico anterior para obter um token válido.

Criação de uma rede

Todas as operações realizadas na plataforma 2Ledger dizem respeito a alguma rede criada entre seus participantes para interagirem entre si. Caso essa rede ainda não tenha sido criada ela poderá ser criada conforme requisição a seguir informando um nome para a rede e a sua descrição.

//Token created during login
var token = "my token";

$.ajax({
       url: "https://api.2ledger.com/v1/networks",
       method: "post",
       beforeSend: function(request) {
           request.setRequestHeader("Accept", "application/json");
           request.setRequestHeader("Authorization", "Bearer " + token);
       },
       data: { name: "mynetwork", description: "Network test" },
       success: function( result ) {
           console.log(result);
       },
       error: function (err) {
           console.log("Error: " + err.responseJSON, err);
       }
});

Caso a rede seja criada com sucesso a requisição irá retornar o código 200 e um objeto JSON com o metadado da rede criada. A propriedade “response._id” do objeto retornado define a identificação única da rede a ser utilizado posteriormente ao interagir com ela.

Caso a requisição para a criação da rede falhe um retorno http 400 Bad Request será retornado.

Criação de uma entidade

Um dos benefícios do blockchain é a garantia de registro de informações imutáveis e à prova de fraudes. Na plataforma 2Ledger isso é possível por meio da criação de uma entidade para armazenamento de objetos (quem podem ser uma simples string, um JSON ou um XML).

As entidades são como um repositório e são criadas dentro de uma rede da plataforma. Uma entidade pode ser compartilhada entre os participantes de uma rede mas os seus itens uma vez armazenados nunca mais podem ser alterados.

As entidades podem ser utilizadas para a criação de prova de existência de um documento digital ou para criação de catálogos distribuídos de informações por exemplo. Semelhante ao que se pode fazer com uma tabela de banco de dados.

Para criar uma entidade é necessário realizar uma requisição conforme descrito a seguir informando o identificador da rede onde a entidade será criada (obtida no momento da criação da rede), um nome para a entidade e a sua descrição:

//creating a entity
var token = "my token";
var network = '5b47e81ecd80440038702153';

$.ajax({
       url: "https://api.2ledger.com/v1/networks/"+network+"/entities",
       method: "post",
       beforeSend: function(request) {
           request.setRequestHeader("Accept", "application/json");
           request.setRequestHeader("Authorization", "Bearer " + token);
       },
       data: { name: "documents", description: "Entity to store digital documents." },
       success: function( result ) {
           console.log(result);
       },
       error: function (err) {
           console.log("Error: " + err.responseJSON, err);
       }
});

Caso a entidade seja criada com sucesso a requisição irá retornar o código 200 e um objeto JSON com o metadado da entidade criada. A propriedade “response._id” do objeto retornado define a identificação única da entidade a ser utilizado posteriormente ao interagir com ela.

Criação de um registro

Na plataforma 2Ledger os documentos imutáveis são armazenados como registros nas entidades criadas. É a partir do registro imutável de documentos que a tecnologia blockchain é utilizada para o registro de trilhas de auditoria, logs de acesso, prova de existência e autenticidade por exemplo.

Para armazenar um registro é necessário invocar o endpoint abaixo informando, além do identificador da entidade (criado no momento de seu cadastro), uma chave (key) e seu conteúdo (pode ser um XML ou JSON por exemplo).

É importante observar que por se tratar de uma tecnologia imutável um registro poderá ser cadastrado mais de uma vez com a mesma chave e normalmente um atributo de versão é incluído no seu conteúdo.  

//creating a record
var token = "my token";
var entity = '5b4718sacd824400387s2155';

$.ajax({
       url: "https://api.2ledger.com/v1//entities/"+entity+"/records",
       method: "post",
       beforeSend: function(request) {
           request.setRequestHeader("Accept", "application/json");
           request.setRequestHeader("Authorization", "Bearer " + token);
       },
       data: { key: "ID123456", value: "76sd78a9s7f9s0asd56as7d" },
       success: function( result ) {
           console.log(result);
       },
       error: function (err) {
           console.log("Error: " + err.responseJSON, err);
       }
});

Caso um registro seja criado com sucesso a requisição irá retornar o código 200 e um objeto JSON com o metadado do registro criado. A propriedade “response.txid” do objeto retornado define a identificação única da entidade a ser utilizado posteriormente ao interagir com ele.

Consultando um registro

A plataforma 2Ledger permite, dentre outras coisas, a consulta da última versão de um registro por meio de sua chave (key) conforme a seguir. Para realizar essa consulta é necessário informar a chave informada no momento do registro.

//find a record
var token = "my token";
var key = 'ID123456';

$.ajax({
       url: "https://api.2ledger.com/v1/records/"+key,
       method: "get",
       beforeSend: function(request) {
           request.setRequestHeader("Accept", "application/json");
           request.setRequestHeader("Authorization", "Bearer " + token);
       },
       success: function( result ) {
           console.log(result);
       },
       error: function (err) {
           console.log("Error: " + err.responseJSON, err);
       }
});

Caso o registro seja encontrado a requisição retornará um código http 200 e um objeto json onde a propriedade “response.record” possui as informações do documento. Caso não seja encontrado o registro um erro http 404 Not Found será retornado.

Considerações finais

O objetivo deste documento é apresentar ao usuário da plataforma 2Ledger os primeiros passos para a utilização de sua API, especificamente para o registro de documentos digitais imutáveis.

Mais informações sobre a utilização da plataforma 2Ledger e sua API podem ser encontradas na área administrativa acessível em https://admin.2ledger.com ou em https://blog.2ledger.com.

Criando um ativo e transferindo ele entre carteiras

A Plataforma 2Ledger simplifica e acelera a adoção da tecnologia blockchain em seus negócios. Integrar com ela é super simples basta criar uma conta e começar a utilizar a sua API.

A API foi toda desenvolvida seguindo os princípios do padrão RESTful e permite a integração com praticamente todas as linguagens de programação mais modernas.

O primeiro passo é criar a sua conta na 2Ledger. Caso ainda não tenha realizado poderá fazê-lo clicando aqui.

Autenticação

O primeiro passo para utilizar a API é obter o token que será utilizado em todas as interações com a plataforma. A autenticação da plataforma 2Ledger utiliza o padrão Basic Access Authentication. Para realizar a autenticação basta fazer a seguinte requisição:

//Credentials (login:password) in base64 format

var credentials = "bWFyY2lvQDJsZWRnZXsuY28tOkNnN2RuaHh0";

$.ajax({

   url: "https://api.2ledger.com/v1/login",
   method: "post",
   beforeSend: function(request) {
       request.setRequestHeader("Accept", "application/json");
       request.setRequestHeader("Authorization", "Basic " + credentials);
   },
   success: function( result ) {
       var token = result.response;
       console.log(token);
   },
   error: function (err) {
       console.log("Authentication failed: " + err.responseJSON, err);
   }

});

O header Authorization é o resultado da combinação login:password em formato Base64 e se passado corretamente retorna o token como resposta.

No caso da autenticação falhar um erro http 400 será retornado. Verifique novamente as credenciais informadas e tente novamente.

Autorização

Todas as operações de interação com a API da Plataforma 2Ledger implementam o padrão Bearer Token e exigem o token retornado no tópico anterior no header Authorization de cada requisição.

//Add an authorization header into request
request.setRequestHeader("Authorization", "Bear " + token);

Caso o token informado não seja válido um erro http 401 Unauthorized será retornado informando a necessidade de um token válido. Nesse caso retorne ao tópico anterior para obter um token válido.

Criação de uma rede

Todas as operações realizadas na plataforma 2Ledger dizem respeito a alguma rede criada entre seus participantes para interagirem entre si. Caso essa rede ainda não tenha sido criada ela poderá ser criada conforme requisição a seguir informando um nome para a rede e a sua descrição.

//Token created during login
var token = "my token";

$.ajax({
       url: "https://api.2ledger.com/v1/networks",
       method: "post",
       beforeSend: function(request) {
           request.setRequestHeader("Accept", "application/json");
           request.setRequestHeader("Authorization", "Bearer " + token);
       },
       data: { name: "mynetwork", description: "Network test" },
       success: function( result ) {
           console.log(result);
       },
       error: function (err) {
           console.log("Error: " + err.responseJSON, err);
       }
});

Caso a rede seja criada com sucesso a requisição irá retornar o código 200 e um objeto JSON com o metadado da rede criada. A propriedade “response._id” do objeto retornado define a identificação única da rede a ser utilizado posteriormente ao interagir com ela.

Caso a requisição para a criação da rede falhe um retorno http 400 Bad Request será retornado.

Criação de um ativo

Um dos principais diferenciais da tecnologia blockchain é a possibilidade de gestão descentralizada de ativos, ou seja, permite que um recurso financeiro ou bem possa ser administrado digitalmente. Sem a possibilidade de uma propriedade/ativo ser transferido de portador sem a autorização de seu proprietário.

Este recurso tecnológico foi o responsável pelo surgimento de uma infinidade de criptomoedas, entre elas o Bitcoin, mas esse recurso pode ser utilizado para vários outras finalidades como sistemas de votação, rastreamento de produção, controle da posse de terras entre outros. Com a Plataforma 2Ledger é muito simples e em poucos passos você poderá criar o seu próprio ativo.

O primeiro passo para criar uma ativo é realizar uma requisição conforme descrito a seguir informando o identificador da rede onde o ativo será criado (obtida no momento da criação da rede), um nome para o ativo, a quantidade de ativos emitidos inicialmente, a sua precisão (quantidade de casas decimais) e uma descrição:

//creating an asset

var token = "my token";
var network = '5b47e81ecd80440038702153';

$.ajax({
       url: "https://api.2ledger.com/v1/networks/"+network+"/assets",
       method: "post",
       beforeSend: function(request) {
           request.setRequestHeader("Accept", "application/json");
           request.setRequestHeader("Authorization", "Bearer " + token);
       },
       data: { 
         name: "mycoin", 
         qty: 1000000, 
         precision: 0.01, 
         details: "My test coin" } },
       success: function( result ) {
           console.log(result);
       },
       error: function (err) {
           console.log("Error: " + err.responseJSON, err);
       }
 });

Caso o ativo tenha sido criado com sucesso a requisição irá retornar o código 200 e um objeto JSON com o metadado da entidade criada. A propriedade “response.owner” do objeto retornado define a identificação da carteira onde o recurso foi depositado inicialmente e o a propriedade “response._id” a sua identificação.

Criação de carteiras digitais

É por meio de carteiras digitais que os usuários da Plataforma 2Ledger podem transmitir seus ativos. Para criar uma carteira digital é necessário realizar uma requisição para a API conforme demontrado abaixo.

//creating a wallet
var token = "my token";
var network = '5b47e81ecd80440038702153';

$.ajax({
       url: "https://api.2ledger.com/v1/networks/"+network+"/wallets",
       method: "post",
       beforeSend: function(request) {
           request.setRequestHeader("Accept", "application/json");
           request.setRequestHeader("Authorization", "Bearer " + token);
       },
       success: function( result ) {
           console.log(result);
       },
       error: function (err) {
           console.log("Error: " + err.responseJSON, err);
       }
});

Caso a carteira digital tenha sido criada com sucesso a requisição irá retornar o código 200 e um objeto JSON com o metadado da carteira digital criada. A propriedade “response.address” do objeto retornado define o endereço da carteira.

Para efeitos de demonstração foi escolhida uma forma de criação de carteiras digitais que não exige senha para a sua manipulação. Este recurso deverá ser utilizado apenas quanto a camada de segurança do acesso à carteira ficará no aplicativo que está integrando à Plataforma.

Outras formas de carteiras digitais podem ser criadas na plataforma. Caso tenha necessidade de conhecê-las acesse a documentação completa da API em https://api.2ledger.com/docs.

Transferência de um ativo

A transferência de um ativo de uma rede é realizada a partir de um carteria digital que a possui para uma outra carteira digital. A transferência do ativo poderá ser integral ou fracionada conforma a precisão definida no momento da criação do ativo.

A carteira digital para onde o recurso será transferido poderá ser tanto uma carteira criada por um usuário como para a carteira digital criada por um outro usuário participante da rede.

//creating a wallet
var token = "my token";
var network = '5b47e81ecd80440038702153';

$.ajax({
       url: "https://api.2ledger.com/v1/networks/"+network+"/wallets",
       method: "post",
       beforeSend: function(request) {
           request.setRequestHeader("Accept", "application/json");
           request.setRequestHeader("Authorization", "Bearer " + token);
       },
       success: function( result ) {
           console.log(result);
       },
       error: function (err) {
           console.log("Error: " + err.responseJSON, err);
       }
 });

 

Caso a carteira digital tenha sido criada com sucesso a requisição irá retornar o código 200 e um objeto JSON com o metadado da carteira digital criada. A propriedade “response.address” do objeto retornado define o endereço da carteira.

Considerações finais

O objetivo deste documento é apresentar ao usuário da plataforma 2Ledger os primeiros passos para a utilização de sua API, especificamente para a criação de um criptoativo e a sua transferência entre carteiras.

Mais informações sobre a utilização da plataforma 2Ledger e sua API podem ser encontrados na área administrativa acessível em https://admin.2ledger.com.

Dando mais transparência em programas de milhagens

Nos dias de hoje os clientes estão cada vez mais exigentes e desconfiados. Muitos incidentes de segurança amplamente divulgados na mídia os deixaram inseguros. Se você tem um programa de milhagem mais cedo ou mais tarde seus clientes irão duvidar de como é feita a gestão de seus pontos e se eles não podem estar sendo manipulados.

Já que zelo pela transparência e primo pela confiança de meus clientes como posso então tornar a minha operação mais segura? A resposta é simples: utilizando blockchain. Por meio da tecnologia é possível garantir que os pontos transferidos para os seus clientes serão utilizados apenas por eles. Nunca poderão ser transferidos sem a sua anuência ou mesmo eliminados.

Se deseja adotar essa tecnologia e tem pressa deveria experimentar a plataforma 2Ledger (http://www.2ledger.com). Por meio da criação gratuita de uma conta e acesso a nossa API em instantes estará apto a iniciar a sua operação.

Caso se interesse por realizar uma experiência será um prazer apoiá-los com a sua iniciativa.