diff --git a/GUI/index.html b/GUI/index.html
index 72c3a714ad9990b5ebf7cdb3682bc8aa6f539134..fc12ce4cc89aeb8f1f84136e8fad78e36972cf76 100644
--- a/GUI/index.html
+++ b/GUI/index.html
@@ -1,50 +1,148 @@
 <!doctype html>
-<html ng-app>
-    <head>
-        <meta charset="utf-8">
-        <link rel="stylesheet" type="text/css" href="lib/css/bootstrap.min.css">
-        <link rel="stylesheet" type="text/css" href="lib/css/style.css">
-        <script src="lib/js/angular.min.js"></script>
-        <script src="lib/js/bower_components/js-sha256/src/sha256.js"></script>
-        <script src="lib/js/jquery.min.js"></script>
-        <script src="lib/js/index.js"></script>
-        <script src="lib/js/bootstrap.min.js"></script>        
-        <title>TSA - Blockchain Federal Argentina</title>
-    </head>
-    <body>
-        <nav class="navbar navbar-default">
-            <div class="container">
-                <div class="navbar-header">
-                <a class="navbar-brand" href="#">
-                    <img alt="Blockchain Federal Argentina" src="lib/images/logo.svg" width="140" height="100">
+<html>
+<head>
+    <title>Sello de Tiempo - Blockchain Federal Argentina</title>
+    <meta charset="utf-8">
+    <link href="https://fonts.googleapis.com/css?family=Raleway:400,400i,700,700i" rel="stylesheet">
+    <link rel="stylesheet" type="text/css" href="lib/css/bootstrap.min.css">
+    <link rel="stylesheet" type="text/css" href="lib/css/style.css">
+    <meta name="MobileOptimized" content="width" />
+    <meta name="HandheldFriendly" content="true" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+</head>
+<body>
+    <nav id="navbar" role="banner" class="navbar navbar-default">
+        <div class="container">
+            <div class="navbar-header">
+                <a class="logo navbar-btn pull-left" href="/" rel="home">
+                    <img id="logo" src="lib/images/logo.svg" alt="Blockchain Federal Argentina">
                 </a>
-                </div>
+                <!-- Descomentar en caso de agregar menú para volver a BFA.ar
+                    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse">
+                        <span class="sr-only">Toggle navigation</span>
+                        <span class="icon-bar"></span>
+                        <span class="icon-bar"></span>
+                        <span class="icon-bar"></span>
+                    </button> 
+                -->
             </div>
-        </nav>        
-        <main>
-            <div class="container">
-            <h1>Time Stamp Authority</h1>
-            <form class="box" method="post" action="" enctype="multipart/form-data">
-                <h2>Stamp</h2>
-                <p>Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
-                <div id="stamp" class="dropArea" ondrop="drop(event)" ondragover="allowDrop(event)">  
-                    <div><span class=" glyphicon glyphicon-cloud-upload" aria-hidden="true"></span></div>          
-                    <div class="droptxt">Soltá un archivo aquí<br>ó</div>          
-                    <div><button type="button" class="btn btn-primary">Seleccioná un archivo</button></div>          
+            <!-- <div id="navbar-collapse" class="navbar-collapse collapse">
+                    <nav role="navigation">
+                        <ul class="menu nav navbar-nav navbar-right">
+                            <li>
+                                <a href="/">Ir a BFA.ar</a>
+                            </li>
+                        </ul>
+                    </nav>
+                </div> 
+            -->
+        </div>
+    </nav>
+    <main>
+        <div class="container">
+            <h1>Sello de Tiempo</h1>
+            <p>El servicio de Sello de Tiempo de BFA permite demostrar digitalmente que el contenido de cualquier documento existió en un momento y que desde entonces, no ha cambiado.</p>
+            <ul class="nav nav-tabs nav-justified" role="tablist">
+                <li role="presentation" class="active"><a href="#tab_1" aria-controls="tab_1" role="tab"
+                        data-toggle="tab">1. Sellar</a></li>
+                <li role="presentation"><a href="#tab_2" aria-controls="tab_2" role="tab" data-toggle="tab">2. Obtener recibo</a></li>
+                <li role="presentation"><a href="#tab_3" aria-controls="tab_3" role="tab" data-toggle="tab">Verificar</a></li>
+            </ul>
+            <form class="box tab-content" method="post" action="" enctype="multipart/form-data">
+                <div role="tabpanel" class="tab-pane active" id="tab_1">
+                    <h2>Paso 1: Iniciar sellado</h2>
+                    <p>Seleccioná un archivo para generar un Sello de Tiempo. El servicio generará un <i>hash</i> (un
+                        código criptográfico asociado a dicho documento) y lo enviará a la blockchain. A continuación,
+                        se descargará automáticamente un recibo digital <b>temporario</b> (.rdt) que luego podrás
+                        usar para obtener el recibo digital <b>definitivo</b> (.rdd) en la pestaña <i>Obtener recibo</i>.</p>
+                    <p>Importante: El documento seleccionado nunca se sube a la red, garantizando su privacidad.</p>
+                    <div id="selectOriginalArea_1" class="dropArea" ondrop="dropStamp(event)" ondragover="allowDrop(event)">
+                        <div id="originalInfo_1" class="replacedTxt">
+                            <div><span class="glyphicon glyphicon-cloud-upload" aria-hidden="true"></span></div>
+                            <div class="droptxt">Arrastrá un archivo aquí<br>ó</div>
+                        </div>
+                        <div><button type="button" id="selectOriginal_1" class="btn btn-primary btn-pill">Seleccioná un archivo <span class="sr-only">para Sellar</span></button></div>
+                    </div>
+                    <input type="file" id="fileUploadOriginal_1" hidden/>
+                    <!-- <div id="ots_div" class="loading"></div> -->
+                    <div id="response_1" role="alert"></div>
+                </div>                
+                <div role="tabpanel" class="tab-pane certificadoTab" id="tab_2">
+                    <h2>Paso 2: Obtener recibo digital definitivo</h2>
+                    <p>Para obtener el recibo definitivo de un Sello de Tiempo se debe tener el documento original y el recibo digital temporal (.rdt), el servicio le devolverá el recibo digital definitivo (.rdd) junto con el día y la hora en que el hash del documento original fue sellado en la Blockchain Federal Argentina.</p>
+                    <input type="hidden" name="hidden_original_file_hash_2" id="hidden_original_file_hash_2" />
+                    <input type="hidden" name="hidden_original_file_name_2" id="hidden_original_file_name_2" />
+                    <div class="row">
+                        <div class="col-md-6">
+                            <h3>Seleccioná el archivo original</h3>
+                            <div id="selectOriginalArea_2" class="dropArea" ondrop="dropOriginalFile(event)"
+                                ondragover="allowDrop(event)">                                
+                                <div id="originalInfo_2" class="replacedTxt">
+                                    <div><span class=" glyphicon glyphicon-cloud-upload" aria-hidden="true"></span></div>
+                                    <div class="droptxt">Arrastrá el archivo <b>original</b> aquí<br>ó</div>
+                                </div>                                
+                                <div><button type="button" id="selectOriginal_2" class="btn btn-primary btn-pill">Seleccioná un archivo <span class="sr-only">original</span></button></div>
+                            </div>
+                            <input type="file" id="fileUploadOriginal_2" hidden/>
+                        </div>                        
+                        <div class="col-md-6">
+                            <h3>Seleccioná el recibo digital temporario</h3>
+                            <div id="selectReciboArea_2" class="dropArea" ondrop="dropOTSFile(event)" ondragover="allowDrop(event)">
+                                <div class="replacedTxt">
+                                    <div id="reciboInfo_2"></div>
+                                    <div id="reciboInstructions_2">
+                                        <div><span class="glyphicon glyphicon-cloud-upload" aria-hidden="true"></span></div>
+                                        <div class="droptxt">Arrastrá el archivo <b>.rdt</b> aquí<br>ó</div>
+                                    </div>
+                                </div>
+                                <div><button type="button" id="selectRecibo_2" class="btn btn-primary btn-pill">Seleccioná un archivo <span class="sr-only">.rdt</span></button></div>
+                            </div>
+                            <input type="file" id="fileUploadRecibo_2" hidden/>
+                        </div>
+                    </div>
+                    <div id="response_2" role="alert"></div>
                 </div>
-                <div id="ots_div" class="loading"></div>  
-                <hr>
-                <h2>Verify</h2>
-                <p>Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
-                <div class="form-group">
-                    <textarea id="verify_ots" class="form-control" rows="3" readonly></textarea>                    
+                <div role="tabpanel" class="tab-pane verificarTab" id="tab_3">
+                    <h2>Verificar un sello de tiempo</h2>
+                    <p>Para verificar un Sello de Tiempo se debe tener el documento original y el recibo digital definitivo (.rdd). Podrá verificar el día y la hora en que el hash del documento original fue sellado en la Blockchain Federal Argentina.</p>
+                    <input type="hidden" name="hidden_original_file_hash_3" id="hidden_original_file_hash_3" />
+                    <input type="hidden" name="hidden_original_file_name_3" id="hidden_original_file_name_3" />
+                    <div class="row">
+                        <div class="col-md-6">
+                            <h3>Seleccioná el archivo original</h3>
+                            <div id="selectOriginalArea_3" class="dropArea dropAreaVerify" ondrop="dropOriginalFile(event)"
+                                ondragover="allowDrop(event)">
+                                <div id="originalInfo_3" class="replacedTxt">
+                                    <div><span class=" glyphicon glyphicon-cloud-upload" aria-hidden="true"></span></div>
+                                    <div class="droptxt">Arrastrá el archivo <b>original</b> aquí<br>ó</div>
+                                </div>
+                                <div><button type="button" id="selectOriginal_3" class="btn btn-success btn-pill">Seleccioná un archivo <span class="sr-only">original</span></button></div>
+                            </div>
+                            <input type="file" id="fileUploadOriginal_3" hidden/>
+                        </div>
+                        <div class="col-md-6">
+                            <h3>Seleccioná el recibo digital definitivo</h3>
+                            <div id="selectReciboArea_3" class="dropArea dropAreaVerify" ondrop="dropOTSFile(event)" ondragover="allowDrop(event)">
+                                <div class="replacedTxt">
+                                    <div id="reciboInfo_3"></div>
+                                    <div id="reciboInstructions_3">
+                                        <div><span class="glyphicon glyphicon-cloud-upload" aria-hidden="true"></span></div>
+                                        <div class="droptxt">Arrastrá el archivo <b>.rdd</b> aquí<br>ó</div>
+                                    </div>
+                                </div>
+                                <div><button type="button" id="selectRecibo_3" class="btn btn-success btn-pill">Seleccioná un archivo <span class="sr-only">.rdd</span></button></div>
+                            </div>
+                            <input type="file" id="fileUploadRecibo_3" hidden/>
+                        </div>
+                    </div>
+                    <div id="response_3" role="alert"></div>
                 </div>
-                <div id="response" role="alert"></div>
-                <div class="form-group">
-                    <button type="button" id="btn_verify" class="btn btn-primary btn-lg">Verify</button>
-                </div>            
             </form>
-            </div>
-        </main>            
-    </body>
+        </div>
+    </main>
+</body>
+<script src="lib/js/bower_components/js-sha256/src/sha256.js"></script>
+<script src="lib/js/jquery.min.js"></script>
+<script src="lib/js/index.js"></script>
+<script src="lib/js/bootstrap.min.js"></script>
 </html>
\ No newline at end of file
diff --git a/GUI/lib/css/index.css b/GUI/lib/css/index.css
deleted file mode 100644
index 2b0a8f50051e5bed9da1d6d67a19d481815356fc..0000000000000000000000000000000000000000
--- a/GUI/lib/css/index.css
+++ /dev/null
@@ -1,57 +0,0 @@
-textarea {
-    width: 95%;
-    height: 95%;
-    border: none;
-    resize: none;
-    outline: none;
-}
-
-h1{
-    text-align: center;
-}
-
-#stamp{        
-    border: 1px solid #ccc;
-    width: 50%;
-    height: 200px;
-}    
-
-#verify{        
-    border: 1px solid #ccc;
-    width: 50%;
-    height: 200px;
-    margin-top: 5px;
-}  
-
-#ots_div{
-    width: 50%;
-    border: 1px solid #ccc;
-    height: 100px;
-    margin-top: 5px;
-    display: none;
-    overflow-y: overlay;            
-}
-
-.center_div{
-    margin: 0 auto;
-}
-
-
-
-.title{
-    float: left;
-    width: 24%; 
-    text-align: right;
-    font-size: 18px;
-    font-weight: bold;
-
-}
-
-#btn_verify{
-    margin-top: 5px;
-}
-
-.bg-dark{
-    background-color: #5a5a5a;
-    color:white;
-}
\ No newline at end of file
diff --git a/GUI/lib/css/style.css b/GUI/lib/css/style.css
index a5f9272bf94798b9c2cb3de6f705700e51631829..599092becc7a8a827fbd4e516af901a9b689e836 100644
--- a/GUI/lib/css/style.css
+++ b/GUI/lib/css/style.css
@@ -1,43 +1,289 @@
-body{
-    background-color: #f9f9f9;
+html {
+    font-size: 0.9em;
 }
+
+body {
+    font-family: 'Raleway', sans-serif;
+    font-size: 1.125em;
+    background-color: #ffffff;
+    line-height: 1.45;
+    margin-top: 0;
+}
+
+h1,
+h2,
+h3,
+h4 {
+    margin: 1.414em 0 0.5em;
+    font-weight: bold;
+    line-height: 1.2;
+}
+
+h1 {
+    margin-top: 20px;
+    font-size: 2.441em;
+}
+
+h2 {
+    font-size: 1.953em;
+}
+
+h3 {
+    font-size: 1.563em;
+    margin-top: 10px;
+}
+
+h4 {
+    font-size: 1.25em;
+}
+
+small,
+.font_small {
+    font-size: 0.8em;
+}
+
+p {
+    margin-bottom: 20px;
+}
+
+.btn-pill {
+    border-radius: 50px;
+}
+
 .navbar-default {
     background-color: #ffffff;
     border-color: #e7e7e7;
 }
-.navbar-brand{
+
+.navbar-brand {
     height: 130px;
 }
-.dropArea{
+
+.dropArea {
     border: 1px dashed #0094D4;
+    background-color: #ffffff;
     padding: 50px;
     text-align: center;
     -webkit-border-radius: 5px;
     border-radius: 5px;
     transition: 0.3s;
 }
-.dropArea:hover{
+
+.hash {
+    word-wrap: break-word;
+}
+
+.replacedTxt {
+    margin-bottom: 20px;
+}
+
+.dropArea p {
+    margin-bottom: 5px;
+}
+
+.dropAreaVerify {
+    border: 1px dashed #4cae4c;
+}
+
+.dropArea:hover {
     background-color: #f0f7ff;
     border-style: solid;
 }
-.dropArea .droptxt{
-    font-size: 1.25em;
-    margin-bottom: 15px;
+
+.dropAreaVerify:hover {
+    background-color: #e5fce5;
+    border-style: solid;
+}
+
+.dropArea .droptxt {
+    font-size: 1.2em;
+    margin-bottom: -5px;
 }
-.dropArea .glyphicon{
+
+.dropArea .glyphicon-cloud-upload {
     font-size: 8em;
     margin-bottom: 40px;
     color: #ccc;
 }
-.loading{
+
+@media screen and (max-width: 768px) {
+    .dropArea .glyphicon-cloud-upload {
+        font-size: 4em;
+        margin-bottom: 20px;
+    }
+
+    .dropArea {
+        padding: 20px;
+    }
+}
+
+.loading {
     background-color: #0094D4;
     margin-top: 5px;
     display: none;
     padding: 10px;
-    text-align: center;    
+    text-align: center;
     -webkit-border-radius: 5px;
-    border-radius: 5px;     
+    border-radius: 5px;
+}
+[hidden]{
+    display: none !important;
 }
-.btn-lg{
+
+.btn-lg {
     min-width: 200px;
-}
\ No newline at end of file
+}
+
+.tab-pane {
+    background-color: #f8f8f8;
+    border: 1px solid #ddd;
+    border-top: 0px;
+    padding: 40px;
+    border-bottom-left-radius: 5px;
+    border-bottom-right-radius: 5px;
+}
+.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover{
+    background-color: #f8f8f8;
+}
+.nav-tabs.nav-justified>.active>a, .nav-tabs.nav-justified>.active>a:focus, .nav-tabs.nav-justified>.active>a:hover{
+    border-bottom-color: #f8f8f8;
+}
+.tab-pane h2 {
+    margin-top: 0px;
+}
+.nav-tabs {
+    font-size: 1.953em;
+}
+
+.alert   {
+    margin-top: 15px;
+}
+
+@media screen and (max-width: 768px) {
+    .tab-pane {
+        border-top: 1px solid #ddd;
+    }
+}
+
+@media screen and (max-width: 992px) {
+    h3 {
+        margin-top: 30px;
+    }
+
+    .nav-tabs {
+        font-size: 1.5em;
+    }
+}
+
+@media screen and (max-width: 1200px) {
+    .dropArea .droptxt {
+        font-size: 1em;
+        margin-bottom: 15px;
+    }
+}
+
+
+.navbar-header .logo img {
+    height: 100px;
+    width: 140px;
+}
+.navbar .logo {
+    margin-right: -15px;
+    padding-left: 15px;
+    padding-right: 15px;
+}
+
+@media screen and (min-width: 768px){
+    .navbar .logo {
+        margin-right: 0;
+        padding-left: 0;
+    }
+}
+
+.navbar-default {
+    background-color: #fff;
+    border-color: #e7e7e7;
+    padding-top: 30px;
+}
+
+.navbar-default .navbar-nav li>a {
+    color: #0094D4;
+    font-weight: 400;
+    font-size: 1.25em;
+}
+
+.navbar-default .navbar-nav>.active>a,
+.navbar-default .navbar-nav>.active>a:hover,
+.navbar-default .navbar-nav>.active>a:focus {
+    color: #2e2f30;
+    background-color: transparent;
+    border-bottom: 2px solid #2e2f30;
+}
+
+@media (min-width: 768px) {
+    .navbar-default .navbar-nav li>a {
+        color: #0094D4;
+        padding-bottom: 8px;
+        padding-left: 4px;
+        padding-right: 4px;
+        margin-left: 20px;
+        border-bottom: 2px solid transparent;
+    }
+
+    .navbar-default .navbar-nav li>a:hover,
+    .navbar-default .navbar-nav li>a:focus {
+        color: #0094D4;
+        border-bottom: 2px solid #0094D4;
+    }
+
+    .navbar-default .navbar-nav li:last-child>a:hover,
+    .navbar-default .navbar-nav li:last-child>a:focus {
+        color: #0094D4;
+        background-color: #fff;
+    }
+}
+
+.navbar-default .navbar-toggle {
+    border-color: #0094D4;
+}
+
+.navbar-default .navbar-toggle .icon-bar {
+    background-color: #0094D4;
+}
+
+.navbar-default .navbar-toggle:hover,
+.navbar-default .navbar-toggle:focus {
+    background-color: #0094D4;
+}
+
+.navbar-default .navbar-toggle:hover .icon-bar,
+.navbar-default .navbar-toggle:focus .icon-bar {
+    background-color: #fff;
+}
+
+.navbar-default .menu {
+    margin-top: 40px;
+}
+
+@media (max-width: 768px) {
+
+    .navbar-default .navbar-nav li>a:hover,
+    .navbar-default .navbar-nav li>a:focus {
+        color: #0094D4;
+        text-decoration: underline;
+    }
+    .navbar-default {
+        padding-top: 0px;
+    }
+
+    .navbar-default .navbar-collapse {
+        -webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2);
+        box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2);
+        background-color: #fff;
+    }
+
+    .navbar-default .menu {
+        margin-top: 0;
+    }
+
+}
diff --git a/GUI/lib/js/index.js b/GUI/lib/js/index.js
index 6010a4115ef76872a50bb232f6ac97adff737588..127039dd4dc3426f75468ea685d225c943d52719 100644
--- a/GUI/lib/js/index.js
+++ b/GUI/lib/js/index.js
@@ -1,147 +1,277 @@
-$(document).ready(function(){
-    $('#btn_verify').click(function(){
-
-        if($('#verify_ots').val() == ''){
-            $('#response').html('<span class="glyphicon glyphicon-remove text-danger" aria-hidden="true"></span> Debe ingresar el comprobante');
-            $('#response').addClass('alert alert-danger');
-        }
-
-        verify($('#verify_ots').val());
-    });
-});
-
-var tsa_api = 'http://tsaapi.pp.bfa.local/api/tsa/';
+var tsa_api = 'https://tsaapi.bfa.ar/api/tsa/';
 var loader_gif = 'lib/images/loader.svg';
 var ots_api = '';
 var deadline_date = new Date('2018-09-03 00:00:00');
 var current_date = new Date();
+var whash = window.location.hash;
+var currentTab = whash.substring(5, 6);
 
+$(function () {
+    whash && $('ul.nav a[href="' + whash + '"]').tab('show');
+    $('.nav-tabs a').click(function (e) {
+        $(this).tab('show');
+        var scrollmem = $('body').scrollTop() || $('html').scrollTop();
+        whash = this.hash;
+        currentTab = whash.substring(5, 6);
+        window.location.hash = whash;
+        $('html,body').scrollTop(scrollmem);
+    });
 
-if(deadline_date>current_date){
-    a = 1;
-}
-else{
-    a=2;
-}
 
+    for (let i = 1; i < 4; i++) {
+        $('#selectOriginal_' + i+', #selectOriginalArea_' + i).on('click', function () {
+            $('#fileUploadOriginal_' + i).click();
+            return false;
+        });
+        if (i == 1) {
+            $('#fileUploadOriginal_' + i).change(
+                function () {
+                    var file = $(this).prop('files')[0];
+                    stamp(file);
+                }
+            );
+        } else {
+            $('#fileUploadOriginal_' + i).change(
+                function () {
+                    var file = $(this).prop('files')[0];
+                    original_file_check(file);
+                }
+            );
+            $('#selectRecibo_' + i+', #selectReciboArea_' + i).on('click', function () {
+                $('#fileUploadRecibo_' + i).click();
+                return false;
+            });
+            $('#fileUploadRecibo_' + i).change(
+                function () {
+                    var file = $(this).prop('files')[0];
+                    ots_check(file);
+                }
+            );
+        }
+    }
+
+});
 
-console.log(current_date);
-            
 function allowDrop(e) {
     e.preventDefault();
 }
 
-function drop(e){
-    e.preventDefault();      
-
-    $('#ots_div').html('<img src="' + loader_gif + '">');
-    $('#ots_div').fadeIn('fast');    
+function dropStamp(e) {
+    e.preventDefault();
+    var file = e.dataTransfer.items[0].getAsFile();
+    stamp(file);
+}
 
-    var file = e.dataTransfer.items[0].getAsFile();    
-      
-    var reader = new FileReader();        
-    reader.readAsArrayBuffer(file, "UTF-8")    
+function stamp(file) {
+    var reader = new FileReader();
+    reader.readAsArrayBuffer(file, "UTF-8")
     reader.onload = function (evt) {
         var file_contents = evt.target.result;
-    
+
         var hash = sha256.create();
         hash.update(file_contents);
         var file_hash = hash.hex();
-                      
-        $('#stamp_info').html('<span class="glyphicon glyphicon-remove" aria-hidden="true"></span> '+file.name );
+
+        $('#originalInfo_1').html('<p>Nombre del archivo: <b>' + file.name + '</b></p><p>Hash del archivo: <b><span class="hash">' + file_hash + '</span></b></p>');
+        $('#selectOriginal_1').html('Seleccioná otro archivo <span class="sr-only">para marcar</span>');
+
 
         $.ajax({
             url: tsa_api + "stamp/",
             type: "POST",
-            data: {"file_hash" : file_hash},
-            dataType: "json",            
-            success: function(response){            
-                console.log(response);
+            data: {
+                "file_hash": file_hash
+            },
+            dataType: "json",
+            success: function (response) {
 
-                var ots = ' {"file_hash": "' + file_hash + '", "ots": "' + response.temporay_ots + '"}';
 
-                $('#ots_div').html(ots);
-                $('#ots_div').fadeIn('fast');  
+                var ots = ' {"file_hash": "' + file_hash + '", "rd": "' + response.temporary_ots + '"}';
 
-            }
-        });
-    }    
-}
 
+                var saveData = (function () {
+                    var a = document.createElement("a");
+                    document.body.appendChild(a);
+                    a.style = "display: none";
+                    return function (data, fileName) {
+                        var json = JSON.stringify(data),
+                            blob = new Blob([json], {
+                                type: "octet/stream"
+                            }),
+                            url = window.URL.createObjectURL(blob);
+                        a.href = url;
+                        a.download = fileName;
+                        a.click();
+                        window.URL.revokeObjectURL(url);
+                    };
+                }());
 
+                var data = response.temporary_rd
+                fileName = file.name + ".rd.temp";
 
-function verify(json_ots){
-    $('#response').removeClass();
-    try{
-        var ots = JSON.parse(json_ots);
-    }
-    catch(err){
-        $('#response').html('<span class="glyphicon glyphicon-remove" aria-hidden="true"></span> Parámetros inválidos');
-        $('#response').addClass('alert alert-danger');
-        return;
-    }
+                saveData(data, fileName);
 
-    $('#response').html('<img src="' + loader_gif + '">');
-    $('#response').addClass('loading');
-    if(deadline_date<current_date){
-        verify_bfa(ots);
-    }
-    else{
-        a=2;
+            }
+        });
     }
-        
-        
-
 }
 
-function verify_bfa(ots){
+
+function verify_bfa(ots) {
 
     var pending = false;
     var message = '';
 
+    $('#response_' + currentTab).removeClass();
+
     $.ajax({
         url: tsa_api + "verify/",
         type: "POST",
-        data: {"file_hash" : ots.file_hash, "ots": ots.ots},
+        data: {
+            "file_hash": ots.file_hash,
+            "rd": ots.rd
+        },
         dataType: "json",
-        success: function(response){
+        success: function (response) {
 
-            if(response.status == 'success'){
-                icon = 'glyphicon-ok';  
-                st = 'alert alert-success';                      
-            }else if(response.status == 'pending'){
+            if (response.status == 'success') {
+                icon = 'glyphicon-ok';
+                st = 'alert alert-success';
+                response_messages = response.messages.replace(ots.file_hash, $('#hidden_original_file_name_' + currentTab).val());
+            } else if (response.status == 'pending') {
                 pending = true;
                 icon = 'glyphicon-time';
                 st = 'alert alert-warning';
-            }else{
+                response_messages = response.messages;
+            } else {
                 icon = 'glyphicon-remove';
-                st = 'alert alert-danger'; 
-            }                
+                st = 'alert alert-danger';
+                response_messages = response.messages;
+            }
+
+            message = '<span class="glyphicon ' + icon + '" aria-hidden="true"></span> ' + response_messages;
+
+
+            $('#response_' + currentTab).addClass(st);
+            $('#response_' + currentTab).html(message);
+
+            if (!pending) {
+                var saveData = (function () {
+                    var a = document.createElement("a");
+                    document.body.appendChild(a);
+                    a.style = "display: none";
+                    return function (data, fileName) {
+                        var json = JSON.stringify(data),
+                            blob = new Blob([json], {
+                                type: "octet/stream"
+                            }),
+                            url = window.URL.createObjectURL(blob);
+                        a.href = url;
+                        a.download = fileName;
+                        a.click();
+                        window.URL.revokeObjectURL(url);
+                    };
+                }());
+
+                var data = response.permanent_rd;
+                fileName = $('#hidden_original_file_name_' + currentTab).val() + ".rd";
+
+                if (currentTab == '2') {
+                    ms = 'Seleccioná otro archivo <span class="sr-only">.rd.temp</span>';
+                } else if (currentTab == '3') {
+                    ms = 'Seleccioná otro archivo <span class="sr-only">.rd</span>';
+                }
+
+                $('#selectRecibo_' + currentTab).html(ms);
+                $('#reciboInstructions_' + currentTab).hide();
+
+                if ($('#reciboInfo_' + currentTab).html().includes('.temp')) {
+                    saveData(data, fileName);
+                }
 
-            message = '<span class="glyphicon ' + icon + '" aria-hidden="true"></span> ' + response.messages;
-            if(!pending){
-                message += ' - ots definitivo:' + response.permanent_ots;
             }
-                
-            $('#response').html(message);
-            $('#response').addClass(st);
+
+
         },
-        error:function(jqXHR, textStatus, errorThrown){
+        error: function (jqXHR, textStatus, errorThrown) {
 
             responseText = 'No se encontró el archivo';
 
-            if(errorThrown == 'timeout'){
-                responseText = 'No se pudo conectar a la Blockchain';
+            if (errorThrown == 'timeout') {
+                responseText = 'No se pudo conectar a Blockchain Federal Argentina';
             }
-            
-            $('#response').html('<span class="glyphicon glyphicon-remove" aria-hidden="true"></span> ' + responseText);
-            $('#response').addClass('alert alert-danger');
+            if (whash == '#certificado-tab') {
+                rp_id = "#response_cert";
+            } else {
+                rp_id = "#response";
+            }
+            $('#response_' + currentTab).html('<span class="glyphicon glyphicon-remove" aria-hidden="true"></span> ' + responseText);
+            $('#response_' + currentTab).addClass('alert alert-danger');
+
         },
-        timeout:5000
-        
+        timeout: 5000
+
     });
 }
 
-function verify_ots(){
 
+function dropOriginalFile(e) {
+    e.preventDefault();
+    var file = e.dataTransfer.items[0].getAsFile();
+    original_file_check(file);
+}
+
+
+function original_file_check(file) {
+    $('#response_' + currentTab).html('');
+    $('#response_' + currentTab).removeClass();
+    $('#reciboInfo_' + currentTab).html('');
+    $('#reciboInstructions_' + currentTab).show();
+    var reader = new FileReader();
+    reader.readAsArrayBuffer(file, "UTF-8")
+    reader.onload = function (evt) {
+        var file_contents = evt.target.result;
+
+        var hash = sha256.create();
+        hash.update(file_contents);
+        var file_hash = hash.hex();
+
+        $('#hidden_original_file_hash_' + currentTab).val(file_hash);
+        $('#hidden_original_file_name_' + currentTab).val(file.name);
+
+        $('#originalInfo_' + currentTab).html('<p>Nombre del archivo: <b>' + file.name + '</b></p><p>Hash del archivo: <b><span class="hash">' + file_hash + '</span></b></p>');
+        $('#selectOriginal_' + currentTab).html('Seleccioná otro archivo <span class="sr-only">original</span>');
+    };
+}
+
+function dropOTSFile(e) {
+    e.preventDefault();
+    var file = e.dataTransfer.items[0].getAsFile();
+    ots_check(file);
+}
+
+function ots_check(file) {
+    $('#response_' + currentTab).html('');
+    $('#response_' + currentTab).removeClass();
+    var file_contents = '';
+    var file_hash = $('#hidden_original_file_hash_' + currentTab).val();
+    if (file_hash == '') {
+        $('#response_' + currentTab).html('<span class="glyphicon glyphicon-remove" aria-hidden="true"></span> Debe ingresar el archivo original');
+        $('#response_' + currentTab).addClass('alert alert-danger');
+        return;
+    }
+    var reader = new FileReader();
+    reader.readAsText(file, "UTF-8")
+    reader.onload = function (evt) {
+        file_contents = evt.target.result;
+        $('#reciboInstructions_' + currentTab).hide();
+        $('#reciboInfo_' + currentTab).html(file.name);
+
+        var ots = {
+            "file_hash": file_hash,
+            "rd": file_contents
+        }
+
+        verify_bfa(ots);
+    };
 }
\ No newline at end of file