aboutsummaryrefslogtreecommitdiff
path: root/src/cz/crcs/ectester/common/ec/EC_SigResult.java
blob: f1ab0f5b6595f9ad7088c69924fb4734b0e25d08 (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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
package cz.crcs.ectester.common.ec;

import cz.crcs.ectester.common.util.CardUtil;

/**
 * A result of EC based Signature operation.
 *
 * @author Jan Jancar johny@neuromancer.sk
 */
public class EC_SigResult extends EC_Data {
    private String sig;
    private String curve;
    private String signKey;
    private String verifyKey;

    private String data;
    private String desc;

    public EC_SigResult(String sig, String curve, String signKey, String verifyKey, String raw) {
        super(1);
        this.sig = sig;
        this.curve = curve;
        this.signKey = signKey;
        this.verifyKey = verifyKey;
        this.data = raw;
    }

    public EC_SigResult(String id, String sig, String curve, String signKey, String verifyKey, String data) {
        this(sig, curve, signKey, verifyKey, data);
        this.id = id;
    }

    public EC_SigResult(String id, String sig, String curve, String signKey, String verifyKey, String data, String desc) {
        this(id, sig, curve, signKey, verifyKey, data);
        this.desc = desc;
    }

    public String getSig() {
        return sig;
    }

    public byte getJavaCardSig() {
        return CardUtil.getSig(sig);
    }

    public String getCurve() {
        return curve;
    }

    public String getSignKey() {
        return signKey;
    }

    public String getVerifyKey() {
        return verifyKey;
    }

    public byte[] getSigData() {
        if (data == null) {
            return null;
        } else {
            return parse(data);
        }
    }

    public String getDesc() {
        return desc;
    }

    @Override
    public String toString() {
        return "<" + getId() + "> " + sig + " result over " + curve + ", " + signKey + " + " + verifyKey + (data == null ? "" : " of data \"" + data + "\"")  + (desc == null ? "" : ": " + desc) + System.lineSeparator() + super.toString();
    }

}