summaryrefslogtreecommitdiffstats
path: root/mobile/android/services/src/main/java/org/mozilla/gecko/browserid/BrowserIDKeyPair.java
blob: 7283a0299a956969c4feddfa2215fc0aefab8708 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

package org.mozilla.gecko.browserid;

import org.mozilla.gecko.sync.ExtendedJSONObject;

public class BrowserIDKeyPair {
  public static final String JSON_KEY_PRIVATEKEY = "privateKey";
  public static final String JSON_KEY_PUBLICKEY = "publicKey";

  protected final SigningPrivateKey privateKey;
  protected final VerifyingPublicKey publicKey;

  public BrowserIDKeyPair(SigningPrivateKey privateKey, VerifyingPublicKey publicKey) {
    this.privateKey = privateKey;
    this.publicKey = publicKey;
  }

  public SigningPrivateKey getPrivate() {
    return this.privateKey;
  }

  public VerifyingPublicKey getPublic() {
    return this.publicKey;
  }

  public ExtendedJSONObject toJSONObject() {
    ExtendedJSONObject o = new ExtendedJSONObject();
    o.put(JSON_KEY_PRIVATEKEY, privateKey.toJSONObject());
    o.put(JSON_KEY_PUBLICKEY, publicKey.toJSONObject());
    return o;
  }
}