diff --git a/app/controllers/concerns/authentication.rb b/app/controllers/concerns/authentication.rb
index a64e42acc32dc8e574880474dd361928f35cb291..f6de47eaa7dc245b8cd0d49fd86cd11847ea7c71 100644
--- a/app/controllers/concerns/authentication.rb
+++ b/app/controllers/concerns/authentication.rb
@@ -11,16 +11,17 @@ module Authentication
   end
 
   def authenticate_user!
-    id_dict = { "labs_user_id" => decrypt_header(request.headers["X-Auth-Newseye-Token"]) }
-    # id_dict = { "labs_user_id" => "42" }
-    @user = User.find_by(labs_user_id: id_dict["labs_user_id"])
+    user_dict = { "labs_user_id" => decrypt_header(request.headers["X-Auth-Newseye-Token"])[0],
+                  "labs_user_name" => decrypt_header(request.headers["X-Auth-Newseye-Token"])[1] }
+    # user_dict = { "labs_user_id" => "42", "labs_user_name" => "dummyuser" }
+    @user = User.find_by(labs_user_id: user_dict["labs_user_id"])
     if @user
       if !session[:current_user_id]
         # puts "Logging in the user since current_user_id was not set"
         login @user
       end
     else
-      @user = User.new(id_dict)
+      @user = User.new(user_dict)
       if @user.save
         login @user
       end
@@ -36,12 +37,12 @@ module Authentication
   private
 
   def current_user
-    Current.user ||= User.find_by(labs_user_id: decrypt_header(request.headers["X-Auth-Newseye-Token"]))
+    Current.user ||= User.find_by(labs_user_id: decrypt_header(request.headers["X-Auth-Newseye-Token"])[0])
     # Current.user ||= User.find_by(labs_user_id: "42")
   end
 
   def decrypt_header(token)
-    private_key = ENV['NEP_AUTH_PRIVATE_KEY'] || "OFE_GQ8Ri8MX-0rH_T0e9ZFIhy-q0n2VxBWPoOyJ1I0="
+    private_key = ENV["NEP_AUTH_PRIVATE_KEY"] || "OFE_GQ8Ri8MX-0rH_T0e9ZFIhy-q0n2VxBWPoOyJ1I0="
     unpacked_key = Base64.urlsafe_decode64(private_key)
     signing_key = unpacked_key[0..15]
     encryption_key = unpacked_key[16..32]
@@ -67,6 +68,7 @@ module Authentication
       d.key = encryption_key
       d.iv = iv
       plain = d.update(ciphertext) + d.final
+      token_tuple = plain.split(",", 2)
     rescue => e
       # do something now
       puts e.message, e.backtrace
diff --git a/app/models/user.rb b/app/models/user.rb
index f02f51be431faac33063b78e75dded039f33f586..08fcfee751ba9247d43193abb783e414d26acf42 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -1,5 +1,6 @@
 class User < ApplicationRecord
   attribute :labs_user_id, presence: true, unique: true
+  attribute :labs_user_name, presence: true, unique: true
 
   has_many :experiments
   has_many :datasets
diff --git a/app/views/dataset/_public_datasets_modal.html.erb b/app/views/dataset/_public_datasets_modal.html.erb
index a8e1a98ce8908306cb5dc2f36fe5bf4c12d5f0a1..98614d5c8eccbc836e672ab454477cb40c6783e4 100644
--- a/app/views/dataset/_public_datasets_modal.html.erb
+++ b/app/views/dataset/_public_datasets_modal.html.erb
@@ -29,7 +29,7 @@
                             <td>
                                 <% user = User.find(d.user_id) %>
                                 <%# <% username = user.email[0...user.email.index('@')] %> 
-                                <% username = user.id %>
+                                <% username = user.labs_user_name %>
                                 <%= username %>
                             </td>
                             <td>
diff --git a/db/migrate/20210721081005_create_users.rb b/db/migrate/20210721081005_create_users.rb
index d2be7d5092714895ac83afaa2014b7cae8e91c5e..7d36ddb92c2af7a44e623f25940d24fa68fac0e2 100644
--- a/db/migrate/20210721081005_create_users.rb
+++ b/db/migrate/20210721081005_create_users.rb
@@ -2,6 +2,7 @@ class CreateUsers < ActiveRecord::Migration[6.1]
   def change
     create_table :users do |t|
       t.string :labs_user_id, null: false, unique: true
+      t.string :labs_user_name, null: false, unique: true
 
       t.timestamps null: false
     end
diff --git a/db/schema.rb b/db/schema.rb
index 332f259f28d515c4ea0cb1977156ce63ba64756b..43472e2546a9191541fad51f45a284cea34189de 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -78,6 +78,7 @@ ActiveRecord::Schema.define(version: 2021_11_23_112405) do
 
   create_table "users", force: :cascade do |t|
     t.string "labs_user_id", null: false
+    t.string "labs_user_name", null: false
     t.datetime "created_at", precision: 6, null: false
     t.datetime "updated_at", precision: 6, null: false
     t.index ["labs_user_id"], name: "index_users_on_labs_user_id", unique: true