craterdog.tokens.DigitalToken Maven / Gradle / Ivy
/************************************************************************
* Copyright (c) Crater Dog Technologies(TM). All Rights Reserved. *
************************************************************************
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. *
* *
* This code is free software; you can redistribute it and/or modify it *
* under the terms of The MIT License (MIT), as published by the Open *
* Source Initiative. (See http://opensource.org/licenses/MIT) *
************************************************************************/
package craterdog.tokens;
import craterdog.notary.NotarySeal;
import craterdog.smart.SmartObject;
/**
* This class defines the attributes that make up a signed digital token that is created by
* a digital accountant and can be used to represent value that is guaranteed by a guarantor. The
* signatures are designed to prevent either the accountant or the guarantor from changing the
* attributes once the digital token has been signed by both.
*
* @author Derk
*/
public final class DigitalToken extends SmartObject {
/**
* The actual attributes that make up the digital token.
*/
public TokenAttributes attributes;
/**
* A notary seal generated by the guarantor using its notary key to sign the attributes.
*/
public NotarySeal guarantorSeal;
/**
* A notary seal generated by the accountant using its notary key to sign the guarantor's seal.
*/
public NotarySeal accountantSeal;
}