diff --git a/lib/model/copayer.js b/lib/model/copayer.js
index 505bf1a..1cfffd4 100644
--- a/lib/model/copayer.js
+++ b/lib/model/copayer.js
@@ -29,7 +29,7 @@ Copayer.create = function(opts) {
 
   x.id = WalletUtils.xPubToCopayerId(x.xPubKey);
   x.name = opts.name;
-  x.xPubKeySignature = opts.xPubKeySignature; // So third parties can check independently
+  x.signature = opts.signature; // So third parties can check independently
   x.requestPubKey = opts.requestPubKey;
   x.addressManager = AddressManager.create({
     copayerIndex: opts.copayerIndex
@@ -45,8 +45,8 @@ Copayer.fromObj = function(obj) {
   x.id = obj.id;
   x.name = obj.name;
   x.xPubKey = obj.xPubKey;
-  x.xPubKeySignature = obj.xPubKeySignature;
   x.requestPubKey = obj.requestPubKey;
+  x.signature = obj.signature;
   x.addressManager = AddressManager.fromObj(obj.addressManager);
 
   return x;
diff --git a/lib/model/wallet.js b/lib/model/wallet.js
index 3453278..711b1d3 100644
--- a/lib/model/wallet.js
+++ b/lib/model/wallet.js
@@ -95,7 +95,9 @@ Wallet.prototype.addCopayer = function(copayer) {
   if (this.copayers.length < this.n) return;
 
   this.status = 'complete';
-  this.publicKeyRing = _.pluck(this.copayers, 'xPubKey');
+  this.publicKeyRing = _.map(this.copayers, function(copayer) {
+    return _.pick(copayer, ['xPubKey', 'requestPubKey']);
+  });
 };
 
 Wallet.prototype.getCopayer = function(copayerId) {
diff --git a/lib/server.js b/lib/server.js
index 31be2c8..827e5b6 100644
--- a/lib/server.js
+++ b/lib/server.js
@@ -223,10 +223,10 @@ WalletService.prototype.joinWallet = function(opts, cb) {
 
       var copayer = Copayer.create({
         name: opts.name,
-        xPubKey: opts.xPubKey,
-        xPubKeySignature: opts.xPubKeySignature,
         copayerIndex: wallet.copayers.length,
+        xPubKey: opts.xPubKey,
         requestPubKey: opts.requestPubKey,
+        signature: opts.copayerSignature,
       });
 
       self.storage.fetchCopayerLookup(copayer.id, function(err, res) {
diff --git a/test/models/wallet.js b/test/models/wallet.js
index 54d0959..0f2f7d0 100644
--- a/test/models/wallet.js
+++ b/test/models/wallet.js
@@ -39,10 +39,16 @@ var testWallet = {
   m: 2,
   n: 3,
   status: 'complete',
-  publicKeyRing: ['xpub661MyMwAqRbcFLRkhYzK8eQdoywNHJVsJCMQNDoMks5bZymuMcyDgYfnVQYq2Q9npnVmdTAthYGc3N3uxm5sEdnTpSqBc4YYTAhNnoSxCm9',
-    'xpub661MyMwAqRbcEzHgVwwxoXksq21rRNsJsn7AFy4VD4PzsEmjjWwsyEiTjsdQviXbqZ5yHVWJR8zFUDgUKkq4R97su3UyNo36Z8hSaCPrv6o',
-    'xpub661MyMwAqRbcFXUfkjfSaRwxJbAPpzNUvTiNFjgZwDJ8sZuhyodkP24L4LvsrgThYAAwKkVVSSmL7Ts7o9EHEHPB3EE89roAra7njoSeiMd'
-  ],
+  publicKeyRing: [{
+    xPubKey: 'xpub661MyMwAqRbcFLRkhYzK8eQdoywNHJVsJCMQNDoMks5bZymuMcyDgYfnVQYq2Q9npnVmdTAthYGc3N3uxm5sEdnTpSqBc4YYTAhNnoSxCm9',
+    requestPubKey: '03814ac7decf64321a3c6967bfb746112fdb5b583531cd512cc3787eaf578947dc'
+  }, {
+    xPubKey: 'xpub661MyMwAqRbcEzHgVwwxoXksq21rRNsJsn7AFy4VD4PzsEmjjWwsyEiTjsdQviXbqZ5yHVWJR8zFUDgUKkq4R97su3UyNo36Z8hSaCPrv6o',
+    requestPubKey: '03fc086d2bd8b6507b1909b24c198c946e68775d745492ea4ca70adfce7be92a60'
+  }, {
+    xPubKey: 'xpub661MyMwAqRbcFXUfkjfSaRwxJbAPpzNUvTiNFjgZwDJ8sZuhyodkP24L4LvsrgThYAAwKkVVSSmL7Ts7o9EHEHPB3EE89roAra7njoSeiMd',
+    requestPubKey: '0246c30040eda1e36e02629ae8cd2a845fcfa947239c4c703f7ea7550d39cfb43a'
+  }, ],
   copayers: [{
     addressManager: {
       receiveAddressIndex: 0,
@@ -53,9 +59,9 @@ var testWallet = {
     id: '1',
     name: 'copayer 1',
     xPubKey: 'xpub661MyMwAqRbcFLRkhYzK8eQdoywNHJVsJCMQNDoMks5bZymuMcyDgYfnVQYq2Q9npnVmdTAthYGc3N3uxm5sEdnTpSqBc4YYTAhNnoSxCm9',
-    xPubKeySignature: '30440220192ae7345d980f45f908bd63ccad60ce04270d07b91f1a9d92424a07a38af85202201591f0f71dd4e79d9206d2306862e6b8375e13a62c193953d768e884b6fb5a46',
+    requestPubKey: '03814ac7decf64321a3c6967bfb746112fdb5b583531cd512cc3787eaf578947dc',
+    signature: '30440220192ae7345d980f45f908bd63ccad60ce04270d07b91f1a9d92424a07a38af85202201591f0f71dd4e79d9206d2306862e6b8375e13a62c193953d768e884b6fb5a46',
     version: '1.0.0',
-    signingPubKey: '03814ac7decf64321a3c6967bfb746112fdb5b583531cd512cc3787eaf578947dc'
   }, {
     addressManager: {
       receiveAddressIndex: 0,
@@ -66,9 +72,9 @@ var testWallet = {
     id: '2',
     name: 'copayer 2',
     xPubKey: 'xpub661MyMwAqRbcEzHgVwwxoXksq21rRNsJsn7AFy4VD4PzsEmjjWwsyEiTjsdQviXbqZ5yHVWJR8zFUDgUKkq4R97su3UyNo36Z8hSaCPrv6o',
-    xPubKeySignature: '30440220134d13139323ba16ff26471c415035679ee18b2281bf85550ccdf6a370899153022066ef56ff97091b9be7dede8e40f50a3a8aad8205f2e3d8e194f39c20f3d15c62',
+    requestPubKey: '03fc086d2bd8b6507b1909b24c198c946e68775d745492ea4ca70adfce7be92a60',
+    signature: '30440220134d13139323ba16ff26471c415035679ee18b2281bf85550ccdf6a370899153022066ef56ff97091b9be7dede8e40f50a3a8aad8205f2e3d8e194f39c20f3d15c62',
     version: '1.0.0',
-    signingPubKey: '03fc086d2bd8b6507b1909b24c198c946e68775d745492ea4ca70adfce7be92a60'
   }, {
     addressManager: {
       receiveAddressIndex: 0,
@@ -79,9 +85,9 @@ var testWallet = {
     id: '3',
     name: 'copayer 3',
     xPubKey: 'xpub661MyMwAqRbcFXUfkjfSaRwxJbAPpzNUvTiNFjgZwDJ8sZuhyodkP24L4LvsrgThYAAwKkVVSSmL7Ts7o9EHEHPB3EE89roAra7njoSeiMd',
-    xPubKeySignature: '304402207a4e7067d823a98fa634f9c9d991b8c42cd0f82da24f686992acf96cdeb5e387022021ceba729bf763fc8e4277f6851fc2b856a82a22b35f20d2eeb23d99c5f5a41c',
+    requestPubKey: '0246c30040eda1e36e02629ae8cd2a845fcfa947239c4c703f7ea7550d39cfb43a',
+    signature: '304402207a4e7067d823a98fa634f9c9d991b8c42cd0f82da24f686992acf96cdeb5e387022021ceba729bf763fc8e4277f6851fc2b856a82a22b35f20d2eeb23d99c5f5a41c',
     version: '1.0.0',
-    signingPubKey: '0246c30040eda1e36e02629ae8cd2a845fcfa947239c4c703f7ea7550d39cfb43a'
   }],
   version: '1.0.0',
   pubKey: '{"x":"6092daeed8ecb2212869395770e956ffc9bf453f803e700f64ffa70c97a00d80","y":"ba5e7082351115af6f8a9eb218979c7ed1f8aa94214f627ae624ab00048b8650","compressed":true}',