2015-10-30 17:31:02 -07:00
|
|
|
package notary
|
|
|
|
|
2016-02-25 13:40:00 -08:00
|
|
|
import (
|
|
|
|
"time"
|
|
|
|
)
|
|
|
|
|
2015-10-30 17:31:02 -07:00
|
|
|
// application wide constants
|
|
|
|
const (
|
2016-02-25 13:40:00 -08:00
|
|
|
// MaxDownloadSize is the maximum size we'll download for metadata if no limit is given
|
|
|
|
MaxDownloadSize int64 = 100 << 20
|
|
|
|
// MaxTimestampSize is the maximum size of timestamp metadata - 1MiB.
|
|
|
|
MaxTimestampSize int64 = 1 << 20
|
2016-01-27 09:46:26 -08:00
|
|
|
// MinRSABitSize is the minimum bit size for RSA keys allowed in notary
|
|
|
|
MinRSABitSize = 2048
|
2016-01-26 14:21:07 -08:00
|
|
|
// MinThreshold requires a minimum of one threshold for roles; currently we do not support a higher threshold
|
|
|
|
MinThreshold = 1
|
|
|
|
// PrivKeyPerms are the file permissions to use when writing private keys to disk
|
2015-10-30 17:31:02 -07:00
|
|
|
PrivKeyPerms = 0700
|
2016-01-26 14:21:07 -08:00
|
|
|
// PubCertPerms are the file permissions to use when writing public certificates to disk
|
2015-10-30 17:31:02 -07:00
|
|
|
PubCertPerms = 0755
|
2016-01-26 14:21:07 -08:00
|
|
|
// Sha256HexSize is how big a Sha256 hex is in number of characters
|
|
|
|
Sha256HexSize = 64
|
|
|
|
// TrustedCertsDir is the directory, under the notary repo base directory, where trusted certs are stored
|
|
|
|
TrustedCertsDir = "trusted_certificates"
|
2016-02-25 13:40:00 -08:00
|
|
|
// PrivDir is the directory, under the notary repo base directory, where private keys are stored
|
|
|
|
PrivDir = "private"
|
|
|
|
// RootKeysSubdir is the subdirectory under PrivDir where root private keys are stored
|
|
|
|
RootKeysSubdir = "root_keys"
|
|
|
|
// NonRootKeysSubdir is the subdirectory under PrivDir where non-root private keys are stored
|
|
|
|
NonRootKeysSubdir = "tuf_keys"
|
|
|
|
|
|
|
|
// Day is a duration of one day
|
|
|
|
Day = 24 * time.Hour
|
|
|
|
Year = 365 * Day
|
|
|
|
|
|
|
|
// NotaryRootExpiry is the duration representing the expiry time of the Root role
|
|
|
|
NotaryRootExpiry = 10 * Year
|
|
|
|
NotaryTargetsExpiry = 3 * Year
|
|
|
|
NotarySnapshotExpiry = 3 * Year
|
|
|
|
NotaryTimestampExpiry = 14 * Day
|
2015-10-30 17:31:02 -07:00
|
|
|
)
|
2016-02-25 13:40:00 -08:00
|
|
|
|
|
|
|
// NotaryDefaultExpiries is the construct used to configure the default expiry times of
|
|
|
|
// the various role files.
|
|
|
|
var NotaryDefaultExpiries = map[string]time.Duration{
|
|
|
|
"root": NotaryRootExpiry,
|
|
|
|
"targets": NotaryTargetsExpiry,
|
|
|
|
"snapshot": NotarySnapshotExpiry,
|
|
|
|
"timestamp": NotaryTimestampExpiry,
|
|
|
|
}
|