示例#1
0
  def test_LengthBytes(self):
    # Test conditions for valid arguments.
    length_bytes = SCHEMA.LengthBytes(11)

    self.assertTrue(length_bytes.matches(b'Hello World'))
    self.assertTrue(length_bytes.matches(b'Hello Marty'))

    # Test conditions for invalid arguments.
    self.assertRaises(securesystemslib.exceptions.FormatError, SCHEMA.LengthBytes, 'hello')
    self.assertRaises(securesystemslib.exceptions.FormatError, SCHEMA.LengthBytes, True)

    self.assertFalse(length_bytes.matches(b'hello'))
    self.assertFalse(length_bytes.matches(8))
示例#2
0
    scheme=RSA_SCHEME_SCHEMA,
    keyid=KEYID_SCHEMA,
    keyid_hash_algorithms=SCHEMA.Optional(HASHALGORITHMS_SCHEMA),
    keyval=KEYVAL_SCHEMA)

# An ECDSA securesystemslib key.
ECDSAKEY_SCHEMA = SCHEMA.Object(
    object_name='ECDSAKEY_SCHEMA',
    keytype=SCHEMA.String('ecdsa-sha2-nistp256'),
    scheme=ECDSA_SCHEME_SCHEMA,
    keyid=KEYID_SCHEMA,
    keyid_hash_algorithms=SCHEMA.Optional(HASHALGORITHMS_SCHEMA),
    keyval=KEYVAL_SCHEMA)

# An ED25519 raw public key, which must be 32 bytes.
ED25519PUBLIC_SCHEMA = SCHEMA.LengthBytes(32)

# An ED25519 raw seed key, which must be 32 bytes.
ED25519SEED_SCHEMA = SCHEMA.LengthBytes(32)

# An ED25519 raw signature, which must be 64 bytes.
ED25519SIGNATURE_SCHEMA = SCHEMA.LengthBytes(64)

# An ECDSA signature.
ECDSASIGNATURE_SCHEMA = SCHEMA.AnyBytes()

# Required installation libraries expected by the repository tools and other
# cryptography modules.
REQUIRED_LIBRARIES_SCHEMA = SCHEMA.ListOf(
    SCHEMA.OneOf([
        SCHEMA.String('general'),
示例#3
0
    scheme=RSA_SCHEME_SCHEMA,
    keyid=KEYID_SCHEMA,
    keyid_hash_algorithms=SCHEMA.Optional(HASHALGORITHMS_SCHEMA),
    keyval=KEYVAL_SCHEMA)

# An ECDSA TUF key.
ECDSAKEY_SCHEMA = SCHEMA.Object(
    object_name='ECDSAKEY_SCHEMA',
    keytype=SCHEMA.String('ecdsa-sha2-nistp256'),
    scheme=ECDSA_SCHEME_SCHEMA,
    keyid=KEYID_SCHEMA,
    keyid_hash_algorithms=SCHEMA.Optional(HASHALGORITHMS_SCHEMA),
    keyval=KEYVAL_SCHEMA)

# An ED25519 raw public key, which must be 32 bytes.
ED25519PUBLIC_SCHEMA = SCHEMA.LengthBytes(32)

# An ED25519 raw seed key, which must be 32 bytes.
ED25519SEED_SCHEMA = SCHEMA.LengthBytes(32)

# An ED25519 raw signature, which must be 64 bytes.
ED25519SIGNATURE_SCHEMA = SCHEMA.LengthBytes(64)

# Lengths of SPX raw keys and signatures
try:
    SPXPUBLIC_SCHEMA = SCHEMA.LengthBytes(pyspx.crypto_sign_PUBLICKEYBYTES)
    SPXSEED_SCHEMA = SCHEMA.LengthBytes(pyspx.crypto_sign_SECRETKEYBYTES)
    SPXSIGNATURE_SCHEMA = SCHEMA.LengthBytes(pyspx.crypto_sign_BYTES)

except NameError:  # pragma: no cover
    pass  # raised when pyspx was not available on import