차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
다음 판 양쪽 다음 판
ko:sdk_api [2018/03/13 21:38]
kkshin [BS2Handshake]
ko:sdk_api [2018/03/20 15:51]
kkshin [BS2CredentialKeyInfo]
줄 12: 줄 12:
   * [[BS2_ComputeCRC16CCITT]]:​ CRC-16 CCITT 체크섬을 계산합니다.   * [[BS2_ComputeCRC16CCITT]]:​ CRC-16 CCITT 체크섬을 계산합니다.
   * [[BS2_GetCardModel]]:​ 지원하는 카드 모델을 가져옵니다.   * [[BS2_GetCardModel]]:​ 지원하는 카드 모델을 가져옵니다.
-  * [[BS2_GetCredentialKey]]: 장치의 ​데이터 ​암호화 키를 가져옵니다. +  * [[BS2_GetCredentialKeyInfo]]: 장치의 암호화 키를 가져옵니다. 
-  * [[BS2_SetCredentialKey]]: 장치의 ​데이터 ​암호화 키를 설정합니다. +  * [[BS2_SetCredentialKeyInfo]]: 장치의 암호화 키를 설정합니다. 
-  * [[BS2_RemoveCredentialKey]]: 장치의 ​데이터 ​암호화 키를 삭제합니다.+  * [[BS2_RemoveCredentialKeyInfo]]: 장치의 암호화 키를 삭제합니다.
  
 ===== 구조체 ===== ===== 구조체 =====
-==== BS2Handshake ​====+==== BS2CredentialKeyInfo ​====
 <code cpp> <code cpp>
-enum { +/** 
-    ​BS2_HANDSHAKE_KEY_SIZE ​= 32,+ * BS2_CRED_KEY_REQ 
 + */ 
 +enum 
 +
 +    BS2_CRED_KEY_REQ_COMM = false, 
 +    BS2_CRED_KEY_REQ_DATA = true, 
 +}; 
 + 
 +enum 
 +
 +    ​BS2_CRED_KEY_SIZE ​= 32,
 }; };
  
줄 26: 줄 36:
  * BS2CredentialKeyInfo  * BS2CredentialKeyInfo
  */  */
-typedef struct {+typedef struct 
 +{
     uint32_t maxPacketSize;​ ///<​ 4 bytes     uint32_t maxPacketSize;​ ///<​ 4 bytes
-    uint8_t ​ key[BS2_HANDSHAKE_KEY_SIZE]; ///< 32 bytes+    uint8_t ​ key[BS2_CRED_KEY_SIZE]; ///< 32 bytes
     bool     ​dualIDSupported;​ ///<​ 1 byte     bool     ​dualIDSupported;​ ///<​ 1 byte
     bool     ​useAlphanumericID;​ ///<​ 1 byte     bool     ​useAlphanumericID;​ ///<​ 1 byte
     bool     ​credentialKeySupported;​ ///<​ 1 byte     bool     ​credentialKeySupported;​ ///<​ 1 byte
-    bool     credentialKeyRequired; ///< 1 byte+    bool     credentialKeyRequest; ///< 1 byte
     uint8_t ​ reserved[28];​ ///<​ 28 bytes (reserved)     uint8_t ​ reserved[28];​ ///<​ 28 bytes (reserved)
 } BS2CredentialKeyInfo;​ } BS2CredentialKeyInfo;​
줄 41: 줄 52:
  
 2. //key// \\  2. //key// \\ 
-장치의 통신 암호화키(또는 데이터 암호화키)로 ​사용되는 값 입니다. \\ +장치에서 ​사용되는 ​키 값입니다. \\ 
-credentialKeyRequired에 true/​false를 ​설정하여 장치의 key를 요청할 수 있으며,\\ +credentialKeyRequest ​설정에 따라 통신 암호화키는 데이터 ​암호화키를 반환 ​받을 수 있습니다.\\
-true는 데이터 키를, false는 통신 키를 key 필드를 통해 ​반환 ​할 것입니다. \\ +
-각 장치별 FW의 release 날짜가 2018.03.30 일 이후의 경우에 한하며,​\\ +
-이전 날짜의 경우 true, false에 상관없이 통신 키만 반환 됩니다.\\+
  
 3. //​dualIDSupported//​ \\  3. //​dualIDSupported//​ \\ 
줄 54: 줄 62:
  
 5. //​credentialKeySupported//​ \\  5. //​credentialKeySupported//​ \\ 
-데이터 키 변경 지원 여부를 나타냅니다. \\  +데이터 키 변경을 허용하는지 여부를 나타냅니다. \\  
-신규 버전의 FW에서는 ​장치의 ​데이터 암호화 키에 대한 ​변경을 지원하기 시작했는데,\\ +장치 별 FW의 release 날짜가 2018.03.30 일 이후부터는,​ 장치에서 ​사용하는 데이터 암호화 키의 변경할 수 있도록 ​지원하는데,​\\ 
-true를 반환받으면 데이터 키 변경이 가능한 ​장치임을 나타내며,​\\ +현재 연결된 ​장치가 러한 ​의 변경을 지원하는지 ​나타냅니다.\\
-false를 반환받으면 데터 키 변경이 불가능한 장치를 ​나타냅니다.\\+
  
-6. //credentialKeyRequired// \\ +6. //credentialKeyRequest// \\ 
 이 설정을 이용하여 장치의 키를 요청할 수 있습니다.\\ 이 설정을 이용하여 장치의 키를 요청할 수 있습니다.\\
-true는 데터 키를false는 ​통신 키를 요청합니다. ​\\+이 설정은 각 장치 별 FW의 release 날짜가 2018.03.30 일 이후의 경우에 한하며,\\ 
 +이전 FW의 경우 이곳의 설정 여부와 관계없이 ​통신 키만 반환 됩니다. 
 +<WRAP group 50%> 
 +^값  ^설명 ​ ^ 
 +|BS2_CRED_KEY_REQ_COMM ​ |통신 암호화 키 요청 ​ | 
 +|BS2_CRED_KEY_REQ_DATA ​ |데이터 암호화 키 요청 ​ | 
 +</​WRAP>​
  
 7. //​reserved//​ \\  7. //​reserved//​ \\ 
 예약된 영역입니다. \\ 예약된 영역입니다. \\