06.11.2014 Views

A User Centric Security Model for Tamper-Resistant Devices

A User Centric Security Model for Tamper-Resistant Devices

A User Centric Security Model for Tamper-Resistant Devices

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

C.6 Application Acquisition and Contractual Agreement Protocol<br />

34 private byte [ ] AppIdentityTag = {( byte ) 0x5F , ( byte ) 0x0E } ;<br />

35 private byte [ ] SPDHChallengeTag = {(byte ) 0x5C , ( byte ) 0x01 } ;<br />

36 private byte [ ] SPSignatureCertTag = {(byte ) 0xF0 , ( byte ) 0xF01 } ;<br />

37 private byte [ ] SPSigVerificationKeyTag = {(byte ) 0x51 , ( byte ) 0x01 } ;<br />

38 private byte [ ] SPRandomNumberTag = {(byte ) 0x5A , ( byte ) 0x01 } ;<br />

39 private byte [ ] SPCookieTag = {( byte ) 0x5B , ( byte ) 0x01 } ;<br />

40 private byte [ ] EncryptedDataTag = {( byte ) 0xFE , ( byte ) 0x01 } ;<br />

41 private byte [ ] MACedDataTag = {( byte ) 0x5D , ( byte ) 0x01 } ;<br />

42 private byte [ ] SignedDataTag = {( byte ) 0x5D , ( byte ) 0x02 } ;<br />

43 private byte [ ] PublicExponentTag = {(byte ) 0xEE , ( byte ) 0x01 } ;<br />

44 private byte [ ] PublicModulusTag = {( byte ) 0xEE , ( byte ) 0x02 } ;<br />

45 private byte [ ] SCDHChallengeTag = {(byte ) 0x5C , ( byte ) 0x02 } ;<br />

46 private byte [ ] SCRandomNumberTag = {(byte ) 0x5A , ( byte ) 0x02 } ;<br />

47 private byte [ ] SCIdentityTag = {( byte ) 0x5F , ( byte ) 0x02 } ;<br />

48 private byte [ ] SC<strong>User</strong>CertificateTag = {(byte ) 0xF0 , ( byte ) 0x03 } ;<br />

49 private byte [ ] SCCertificateTag = {( byte ) 0xF0 , ( byte ) 0x02 } ;<br />

50 private byte [ ] Plat<strong>for</strong>mHashTag = {( byte ) 0x5E , ( byte ) 0xAF} ;<br />

51 private byte [ ] <strong>User</strong>IdentityTag = {( byte ) 0x5F , ( byte ) 0x03 } ;<br />

52 public ConstructedTLV MessageHandler = ConstructedTLV . getConstructedTLV<br />

53 ( MessageHandlerTagOne ) ;<br />

54 private ConstructedTLV S P S i g n a t u r e C e r t i f i c a t e =<br />

55 ConstructedTLV . getConstructedTLV ( SPSignatureCertTag ) ;<br />

56 private PrimitiveTLV SPIdentityTLV = PrimitiveTLV . getPrimitiveTLV<br />

57 ( SPIdentityTag , SPIdentity ) ;<br />

58 private PrimitiveTLV AppIdentityTLV = PrimitiveTLV . getPrimitiveTLV<br />

59 ( AppIdentityTag , AppIdentity ) ;<br />

60 private PrimitiveTLV SPSigVerificationKey = PrimitiveTLV . getPrimitiveTLV<br />

61 ( this . SPSigVerificationKeyTag ) ;<br />

62 private PrimitiveTLV SPDHChanllenger = PrimitiveTLV . getPrimitiveTLV<br />

63 ( this . SPDHChallengeTag ) ;<br />

64 private PrimitiveTLV SPRandomNumber = PrimitiveTLV . getPrimitiveTLV<br />

65 ( this . SPRandomNumberTag) ;<br />

66 private PrimitiveTLV SPCookie = PrimitiveTLV . getPrimitiveTLV<br />

67 ( this . SPCookieTag ) ;<br />

68 private ConstructedTLV EncryptedData = ConstructedTLV . getConstructedTLV<br />

69 ( this . EncryptedDataTag ) ;<br />

70 private PrimitiveTLV MACedData = PrimitiveTLV . getPrimitiveTLV<br />

71 ( this . MACedDataTag) ;<br />

72 private PrimitiveTLV SignedData = PrimitiveTLV . getPrimitiveTLV<br />

73 ( this . SignedDataTag ) ;<br />

74 private PrimitiveTLV PublicExponent = PrimitiveTLV . getPrimitiveTLV<br />

75 ( this . PublicExponentTag ) ;<br />

76 private PrimitiveTLV PublicModulus = PrimitiveTLV . getPrimitiveTLV<br />

77 ( this . PublicModulusTag ) ;<br />

78 private PrimitiveTLV SCDHChallenge = PrimitiveTLV . getPrimitiveTLV<br />

79 ( this . SCDHChallengeTag ) ;<br />

80 private PrimitiveTLV SCRandomNumber = PrimitiveTLV . getPrimitiveTLV<br />

81 ( this . SCRandomNumberTag) ;<br />

82 private PrimitiveTLV SCIdentity = PrimitiveTLV . getPrimitiveTLV<br />

83 ( SCIdentityTag ) ;<br />

84 private ConstructedTLV S C U s e r C e r t i f i c a t e =<br />

351

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!