um.di.lmf.enote
Class OpenOrder

java.lang.Object
  extended byum.di.lmf.enote.Order
      extended byum.di.lmf.enote.OpenOrder
All Implemented Interfaces:
iaik.asn1.ASN1Type

public class OpenOrder
extends Order
implements iaik.asn1.ASN1Type

This class represents a digital cash note note order, disclosing all the commitments for the withdrawal protocol


Field Summary
protected  byte[][] idhalf1
          The private information for the bit commitments: one id half
protected  byte[][] idhalf2
          The private information for the bit commitments: one id half
protected  java.math.BigInteger[] priv_random1
          The private information for the bit commitments: one private random
protected  java.math.BigInteger[] priv_random2
          The private information for the bit commitments: one private random
 
Fields inherited from class um.di.lmf.enote.Order
amount, bank_cert, commit1, commit2, npairs, pub_random1, pub_random2, serial
 
Constructor Summary
OpenOrder()
          This is the constructor that should be used before building an object with decode.
OpenOrder(java.lang.String id, int amount, int npairs, iaik.x509.X509Certificate bank_cert)
          This constructor builds an open order from scratch.
 
Method Summary
 void decode(iaik.asn1.ASN1Object obj)
          Decodes an ASN1Object according to the ASN.1 type the class implements.
 byte[] getIDHalf(int i, boolean bit)
          Returns one half of the ID
 java.math.BigInteger getPrivRandom(int i, boolean bit)
          Returns one of the commitment secret randoms
 iaik.asn1.ASN1Object toASN1Object()
          Creates an ASN1Object according to the ASN.1 type the class implements.
 iaik.asn1.ASN1Object toOrderASN1Object()
          Creates an ASN1Object of the enclosed Order object
 
Methods inherited from class um.di.lmf.enote.Order
getAmount, getBankCertificate, getCommitment, getNPairs, getPubRandom, getSerial
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

idhalf1

protected byte[][] idhalf1
The private information for the bit commitments: one id half


idhalf2

protected byte[][] idhalf2
The private information for the bit commitments: one id half


priv_random1

protected java.math.BigInteger[] priv_random1
The private information for the bit commitments: one private random


priv_random2

protected java.math.BigInteger[] priv_random2
The private information for the bit commitments: one private random

Constructor Detail

OpenOrder

public OpenOrder()
This is the constructor that should be used before building an object with decode.


OpenOrder

public OpenOrder(java.lang.String id,
                 int amount,
                 int npairs,
                 iaik.x509.X509Certificate bank_cert)
          throws java.security.NoSuchAlgorithmException
This constructor builds an open order from scratch.

Method Detail

getIDHalf

public byte[] getIDHalf(int i,
                        boolean bit)
Returns one half of the ID


getPrivRandom

public java.math.BigInteger getPrivRandom(int i,
                                          boolean bit)
Returns one of the commitment secret randoms


decode

public void decode(iaik.asn1.ASN1Object obj)
            throws iaik.asn1.CodingException
Decodes an ASN1Object according to the ASN.1 type the class implements.

Specified by:
decode in interface iaik.asn1.ASN1Type
Overrides:
decode in class Order
Throws:
iaik.asn1.CodingException

toOrderASN1Object

public iaik.asn1.ASN1Object toOrderASN1Object()
                                       throws iaik.asn1.CodingException
Creates an ASN1Object of the enclosed Order object

Throws:
iaik.asn1.CodingException

toASN1Object

public iaik.asn1.ASN1Object toASN1Object()
                                  throws iaik.asn1.CodingException
Creates an ASN1Object according to the ASN.1 type the class implements.

Specified by:
toASN1Object in interface iaik.asn1.ASN1Type
Overrides:
toASN1Object in class Order
Throws:
iaik.asn1.CodingException