From b690fd34d6594cbf1ec877e35e77aaa0f55deb75 Mon Sep 17 00:00:00 2001
From: Renzo Ontivero <renn.carp@gmail.com>
Date: Fri, 5 Feb 2021 15:38:03 -0300
Subject: [PATCH] Actualizando para interactuar con BFA

---
 README.md | 47 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 46 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md
index fb8b423..9cab98d 100755
--- a/README.md
+++ b/README.md
@@ -35,11 +35,31 @@ sudo npm install
 ```
 sudo nano config/custom.js.default
 ```
+
 * Reemplazar el nombre y quitar el default
 ```
 sudo mv config/custom.js.default config/custom.js
 ```
 
+* Aclaración para los que deseen probar la API con un nodo de Blockchain Federal Argentina
+
+La API se debe instalar en el mismo servidor o máquina virtual donde funciona el nodo de la BFA.
+En el archivo config/custom.js se debe configurar la sección de la BFA de la siguiente forma
+```
+//Datos para Blockchain Federal Argentina
+  urlRpcBfa: 'http://localhost:8545',  
+  accountAddressBfa : 'la dirección de la cuenta de tu nodo',
+  contractABIBfa : [{"constant":true,"inputs":[{"name":"ots","type":"string"}],"name":"getHash","outputs":[{"name":"","type":"string"}],"payable":fal$
+  contractAddressBfa : '0x15F914649A5F18fEb3F114b0295165E713a888e4',
+  privateKeyBfa : 'la clave privada de tu nodo',
+```
+En privateKeyBfa, aun que la password de la cuenta esté en blanco, igual existe un cifrado de la clave. Entonces para obtener ese código realizar:
+1. Abri el archivo json que está en tu nodo en la dirección /home/bfa/bfa/ .... /keystore/UTC*............
+2. Una vez lo abras, vas a ver un texto que dice "ciphertext" : "xxxxxxxxxxxx"
+3. Lo que está asignado a ciphertext, es el password "" cifrado. Eso lo copias y lo pegas en privateKeyBfa
+
+TODO: el modo correcto para este desarrollo serí utilizar variables de entorno.
+
 ### Testing de casos de uso ###
 Para revisar los endpoints disponibles, visualizar el archivo config/routes.js
 
@@ -51,5 +71,30 @@ y enviar un parámetro con el nombre **file_hash** que va a contener el hash a e
 Se debe acceder por GET a http://localhost:1337/[nombre_blockchain]/verify/[comprobante_ots]/[file_hash]
 
 ### Dudas ? ###
-
 * renn.carp@gmail.com
+
+------------------- Primer consulta ------------------
+
+Roberto Pereyra Pigerl, [05.02.21 13:03]
+una preguna, porque no utilizo el tsa1
+si firmo con tsa1 con mi nodo, se puede validar en con el de bfa?
+
+Renzo Mauro Ontivero, [05.02.21 13:07]
+bien, si se puede pero hay que tener la siguiente consideración.
+
+Renzo Mauro Ontivero, [05.02.21 13:08]
+cuando haces el stamp, la API te retorna un json con el resultado de la operación similar a esto
+```
+{
+  "comprobante_ots": "ZGMwNTI1NjBmNmJhYTM0MWU3MDQwYTgzYWEwNWNmNTg3ZTc5NWIxODk3NjQ5YjYwZWJmYTk0MzIyYzE3NTdhZS0weDE1ZTgwNDE4ZjAzYmQ3OWM2ZDg3MzBlOTMzYmJiYjMxODBhYWI5MjhjYjg0YmU0NjAzNTMwMzhlZjMwZDA3MDM=",
+  "tx_hash": "0x15e80418f03bd79c6d8730e933bbbb3180aab928cb84be460353038ef30d0703"
+}
+```
+
+Renzo Mauro Ontivero, [05.02.21 13:09]
+si te fijas el "comprobante_ots" es básicamente el código en base64 que te permite comprobar luego, junto al archivo original la veracidad del mismo.
+
+Renzo Mauro Ontivero, [05.02.21 13:09]
+si el contenido del objeto comprobante_ots lo guardas en un archivo de texto con extensión *rd*, te va servir para compararlo en la BFA.
+
+
-- 
GitLab