차이

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

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
다음 판 양쪽 다음 판
ko:configuration_api [2019/05/13 11:23]
kkshin [Configuration API]
ko:configuration_api [2020/02/14 14:00]
kkshin [BS2FingerprintConfig]
줄 68: 줄 68:
   * [[BS2_GetIPV6ConfigViaUDPEx]]:​ [+ 2.6.3] IP V6 설정 정보를 UDP broadcasting를 통해 가져옵니다. (host ip 지정)   * [[BS2_GetIPV6ConfigViaUDPEx]]:​ [+ 2.6.3] IP V6 설정 정보를 UDP broadcasting를 통해 가져옵니다. (host ip 지정)
   * [[BS2_SetIPV6ConfigViaUDPEx]]:​ [+ 2.6.3] IP V6 설정 정보를 UDP broadcasting를 통해 저장합니다. (host ip 지정)   * [[BS2_SetIPV6ConfigViaUDPEx]]:​ [+ 2.6.3] IP V6 설정 정보를 UDP broadcasting를 통해 저장합니다. (host ip 지정)
 +  * [[BS2_GetDesFireConfigEx]]:​ [+ 2.6.4] DesFire 카드 설정 정보를 가져옵니다.
 +  * [[BS2_SetDesFireConfigEx]]:​ [+ 2.6.4] DesFire 카드 설정 정보를 저장합니다.
 ===== 구조체 ===== ===== 구조체 =====
 ==== BS2FactoryConfig ==== ==== BS2FactoryConfig ====
줄 119: 줄 121:
  
 ==== BS2SystemConfig ==== ==== BS2SystemConfig ====
-반드시 [[BS2_GetSystemConfig]] 호출 후, tamperOn을 제외하고 필요한 설정을 완료한 후 
-[[BS2_SetSystemConfig]]를 호출하여야 합니다. \\ 
 <code cpp> <code cpp>
 typedef struct { typedef struct {
줄 136: 줄 136:
     bool secureTamper;​     bool secureTamper;​
     bool reserved0; ​    // (write protected)     bool reserved0; ​    // (write protected)
-    ​bool gdprSupport;​ +    uint8_t reserved[2];
-    ​uint8_t reserved[1];+
     uint32_t useCardOperationMask;​     uint32_t useCardOperationMask;​
     uint8_t reserved2[16];​     uint8_t reserved2[16];​
줄 174: 줄 173:
 13. //​reserved0//​ \\  13. //​reserved0//​ \\ 
 예약된 공간입니다. \\ \\  예약된 공간입니다. \\ \\ 
-14. //​gdprSupport//​ \\  +14. //​reserved//​ \\ 
-[+ V2.6.4] GDPR (일반 개인정보 보호법) 지원 여부를 나타내는 flag입니다. \\ \\  +
-15. //​reserved//​ \\ +
 예약된 공간입니다. \\ \\  예약된 공간입니다. \\ \\ 
-16. //​useCardOperationMask//​ \\+15. //​useCardOperationMask//​ \\
 [+ V2.6.4] 모든 카드를 읽지 않고, 사용자 선택에 의해 카드 타입별로 읽을 수 있도록 옵션을 제공합니다. \\ [+ V2.6.4] 모든 카드를 읽지 않고, 사용자 선택에 의해 카드 타입별로 읽을 수 있도록 옵션을 제공합니다. \\
 MASK값은 조합을 통하여 중복 설정이 가능며, 사용자는 이 옵션을 통하여 카드 타입의 읽기를 추가 또는 제거할 수 있습니다. \\ MASK값은 조합을 통하여 중복 설정이 가능며, 사용자는 이 옵션을 통하여 카드 타입의 읽기를 추가 또는 제거할 수 있습니다. \\
줄 197: 줄 194:
 |0x00000001 ​ |CARD_OPERATION_MASK_EM ​ | |0x00000001 ​ |CARD_OPERATION_MASK_EM ​ |
 </​WRAP>​ </​WRAP>​
-17. //​reserved2//​ \\ +16. //​reserved2//​ \\ 
 예약된 공간입니다. \\ \\  예약된 공간입니다. \\ \\ 
 ==== BS2AuthConfig ==== ==== BS2AuthConfig ====
줄 259: 줄 256:
 개별 인증 모드를 사용할지 결정하는 flag입니다. \\ \\  개별 인증 모드를 사용할지 결정하는 flag입니다. \\ \\ 
 7. //​faceDetectionLevel//​ \\  7. //​faceDetectionLevel//​ \\ 
-사용자를 인증할 때 얼굴 검출 레벨값이며,​ 지정한 레벨보다 낮은 레벨로 얼굴이 검출되면 인증 실패로 처리됩니다.\\+A2에서 ​사용자를 인증할 때 얼굴 검출 레벨값이며,​ 지정한 레벨보다 낮은 레벨로 얼굴이 검출되면 인증 실패로 처리됩니다.\\ 
 +설정하면 Normal/​Strict에 따른 카메라 뷰가 표시되며,​ 인증 성공 시의 이미지 로그가 얼굴로 인식되지 않으면 접근이 거부됩니다. 기본값은 0입니다. \\
 <WRAP group 50%> <WRAP group 50%>
 ^값  ^설명 ​ ^ ^값  ^설명 ​ ^
줄 267: 줄 265:
 </​WRAP>​ </​WRAP>​
 <WRAP info> <WRAP info>
-카메라가 장착된 장치에서만 ​유효합니다.+A2에서만 ​설정 가능하며,​ FaceStation2나 FaceLite에서는 사용되지 않습니다. ​
 </​WRAP>​ </​WRAP>​
 8. //​useServerMatching//​ \\  8. //​useServerMatching//​ \\ 
줄 597: 줄 595:
     uint8_t fileID;     uint8_t fileID;
     uint8_t encryptionType;​     uint8_t encryptionType;​
-    uint8_t reserved[3];+    ​uint8_t operationMode;​ 
 +    ​uint8_t reserved[2];
 } BS2DesFireCard;​ } BS2DesFireCard;​
  
줄 642: 줄 641:
 DESFire 카드내에 내장된 사용할 애플리케이션가 데이터를 읽고 쓰기 위한 파일 식별자입니다.\\ \\  DESFire 카드내에 내장된 사용할 애플리케이션가 데이터를 읽고 쓰기 위한 파일 식별자입니다.\\ \\ 
 15. //​encryptionType//​ \\  15. //​encryptionType//​ \\ 
-데이터 암호화 방식이며, AES는 추후 적용 예정입니다.\\ ​+데이터 암호화 방식을 나타냅니다.\\ ​
 <WRAP group 50%> <WRAP group 50%>
 ^값  ^설명 ​ ^ ^값  ^설명 ​ ^
줄 648: 줄 647:
 |1  |AES  | |1  |AES  |
 </​WRAP>​ </​WRAP>​
-16. //​reserved//​ \\ +16. //​operationMode//​ \\  
 +운영 방식을 지정합니다. (추후적용)\\  
 +<WRAP group 50%> 
 +^값  ^설명 ​ ^ 
 +|0  |기존방식 (PICC master key를 사용) ​ | 
 +|1  |신규방식 (App master key를 사용) ​ | 
 +</​WRAP>​ 
 +17. //​reserved//​ \\ 
 예약된 공간입니다.\\ \\  예약된 공간입니다.\\ \\ 
-17. //​byteOrder//​ \\ +18. //​byteOrder//​ \\ 
 카드 데이터의 바이트 저장 순서입니다. 0일 경우 MSB((최상위 비트, Most Significant Bit))이고,​ 1일 경우 LSB((최하위 비트, Least Significant Bit))입니다. \\ \\  카드 데이터의 바이트 저장 순서입니다. 0일 경우 MSB((최상위 비트, Most Significant Bit))이고,​ 1일 경우 LSB((최하위 비트, Least Significant Bit))입니다. \\ \\ 
-18. //​useWiegandFormat//​ \\ +19. //​useWiegandFormat//​ \\ 
 Wiegand 형식 카드 사용 유무를 결정하는 flag입니다. \\ \\  Wiegand 형식 카드 사용 유무를 결정하는 flag입니다. \\ \\ 
-19. //​dataType//​ \\ +20. //​dataType//​ \\ 
 Card의 데이터 유형입니다. \\  Card의 데이터 유형입니다. \\ 
 <WRAP group 50%> <WRAP group 50%>
줄 663: 줄 669:
 |3  |BCD  | |3  |BCD  |
 </​WRAP>​ </​WRAP>​
-20. //​useSecondaryKey//​ \\ +21. //​useSecondaryKey//​ \\ 
 두번째 암호화 키 사용 유무를 결정하는 flag입니다. \\ \\  두번째 암호화 키 사용 유무를 결정하는 flag입니다. \\ \\ 
-21. //​formatID//​ \\ +22. //​formatID//​ \\ 
 BioStar 애플리케이션에서 card configuration을 데이터베이스 관리할 필요가 있을 경우 사용할 수 있는 식별자입니다. \\ \\  BioStar 애플리케이션에서 card configuration을 데이터베이스 관리할 필요가 있을 경우 사용할 수 있는 식별자입니다. \\ \\ 
-22. //cipher// \\+23. //cipher// \\
 Keypad로 card id를 입력받을 수 있도록 활성화 합니다. \\ Keypad로 card id를 입력받을 수 있도록 활성화 합니다. \\
 기본 값은 0이며, Xpass D2 Gangbox Keypad 만 유효합니다. \\ 기본 값은 0이며, Xpass D2 Gangbox Keypad 만 유효합니다. \\
줄 675: 줄 681:
 |1  |활성화 ​ | |1  |활성화 ​ |
 </​WRAP>​ </​WRAP>​
-23. //​reserved5//​ \\ +24. //​reserved5//​ \\ 
 예약된 공간입니다. \\  예약된 공간입니다. \\ 
 ==== BS2FingerprintConfig ==== ==== BS2FingerprintConfig ====
 <code cpp> <code cpp>
 typedef struct { typedef struct {
-    uint8_t securityLevel;​ +    uint8_t ​     securityLevel;​ 
-    uint8_t fastMode; +    uint8_t ​     fastMode; 
-    uint8_t sensitivity;​ +    uint8_t ​     sensitivity;​ 
-    uint8_t sensorMode;​ +    uint8_t ​     sensorMode;​ 
-    uint16_t templateFormat;​ +    uint16_t ​    ​templateFormat;​ 
-    uint16_t scanTimeout;​ +    uint16_t ​    ​scanTimeout;​ 
-    uint8_t successiveScan;​ +    uint8_t ​     successiveScan;​ 
-    uint8_t advancedEnrollment;​ +    uint8_t ​     advancedEnrollment;​ 
-    uint8_t showImage;​ +    uint8_t ​     showImage;​ 
-    uint8_t lfdLevel; +    uint8_t ​     lfdLevel; 
-    bool checkDuplicate;​ +    bool         ​checkDuplicate;​ 
- +                 ​ 
-    uint8_t reserved3[31];​+    uint8_t ​     reserved3[31];​
 } BS2FingerprintConfig;​ } BS2FingerprintConfig;​
 </​code>​ </​code>​
줄 756: 줄 762:
 12. //​reserved3//​ \\  12. //​reserved3//​ \\ 
 예약된 공간입니다. \\  예약된 공간입니다. \\ 
- 
 ==== BS2Rs485Config ==== ==== BS2Rs485Config ====
 <code cpp> <code cpp>
줄 1541: 줄 1546:
 <code cpp> <code cpp>
 typedef struct { typedef struct {
- BS2_FACE_SECURITY_LEVEL ​      securityLevel;​ +    uint8_t ​      securityLevel;​ 
- BS2_FACE_LIGHT_CONDITON ​      lightCondition;​ +    ​uint8_t ​      lightCondition;​ 
- BS2_FACE_ENROLL_THRESHOLD ​    enrollThreshold;​ +    ​uint8_t ​      enrollThreshold;​ 
- BS2_FACE_DETECT_SENSITIVITY ​  detectSensitivity;​+    ​uint8_t ​      detectSensitivity;​
  
- uint16_t ​                     enrollTimeout;​ +    ​uint16_t ​     enrollTimeout;​ 
- BS2_FACE_LFD_LEVEL ​           ​lfdLevel; +    ​uint8_t ​      lfdLevel; 
- bool                          quickEnrollment;​+    bool          quickEnrollment;​
  
- BS2_FACE_PREVIEW_OPTION ​      previewOption;​ +    uint8_t ​      previewOption;​ 
- bool                          checkDuplicate;​ +    bool          checkDuplicate;​ 
- uint8_t ​                      ​reserved[2];​+    uint8_t ​      ​reserved[2];​
  
- uint8_t ​                      ​reserved2[26];​+    ​uint8_t ​      ​reserved2[26];​
 } BS2FaceConfig;​ } BS2FaceConfig;​
 </​code>​ </​code>​
줄 1600: 줄 1605:
 얼굴 스캔 대기 시간으로 기본값은 60초입니다\\ \\ 얼굴 스캔 대기 시간으로 기본값은 60초입니다\\ \\
 6. //​lfdLevel//​ \\ 6. //​lfdLevel//​ \\
-[+ V2.6.4] 위조된 얼굴을 여과할 수 있는 민감도를 설정할 수 있습니다. \\+[+ V2.6.3] 위조된 얼굴을 여과할 수 있는 민감도를 설정할 수 있습니다. \\
 <WRAP group 50%> <WRAP group 50%>
 ^값  ^설명 ​ ^ ^값  ^설명 ​ ^
줄 1609: 줄 1614:
 </​WRAP>​ </​WRAP>​
 7. //​quickEnrollment//​ \\ 7. //​quickEnrollment//​ \\
-[+ V2.6.4] 빠른 얼굴 등록 사용 여부를 설정할 수 있습니다. \\+[+ V2.6.3] 빠른 얼굴 등록 사용 여부를 설정할 수 있습니다. \\
 이 값을 true로 설정하면 얼굴 등록 절차가 1단계로 설정되며,​ false로 설정할 경우 3단계로 설정됩니다. \\ 이 값을 true로 설정하면 얼굴 등록 절차가 1단계로 설정되며,​ false로 설정할 경우 3단계로 설정됩니다. \\
 고품질의 얼굴 템플릿을 등록하려면 false를 설정하십시오. \\ \\ 고품질의 얼굴 템플릿을 등록하려면 false를 설정하십시오. \\ \\
 8. //​previewOption//​ \\ 8. //​previewOption//​ \\
-[+ V2.6.4] IR 인증 가이드를 의미하며,​ 얼굴 인증 시 preview 화면 출력 설정을 변경할 수 있습니다. \\+[+ V2.6.3] IR 인증 가이드를 의미하며,​ 얼굴 인증 시 preview 화면 출력 설정을 변경할 수 있습니다. \\
 <WRAP group 50%> <WRAP group 50%>
 ^값  ^설명 ​ ^ ^값  ^설명 ​ ^
줄 1626: 줄 1631:
 11. //​reserved2//​ \\  11. //​reserved2//​ \\ 
 예약된 공간입니다.\\ \\ 예약된 공간입니다.\\ \\
- 
 ==== BS2Rs485ConfigEX ==== ==== BS2Rs485ConfigEX ====
 <code cpp> <code cpp>
줄 1845: 줄 1849:
 </​WRAP>​ </​WRAP>​
  
 +==== BS2IPV6Config ====
 +<code cpp>
 +enum {
 +    BS2_MAX_IPV6_ALLOCATED_ADDR = 8,
 +};
  
 +typedef struct {
 +    uint8_t useIPV6;
 +    uint8_t reserved1;
 +    uint8_t useDhcpV6;
 +    uint8_t useDnsV6;
 +    uint8_t reserved[1];​
 +    char staticIpAddressV6[BS2_IPV6_ADDR_SIZE];​
 +    char staticGatewayV6[BS2_IPV6_ADDR_SIZE];​
 +    char dnsAddrV6[BS2_IPV6_ADDR_SIZE];​
 +    char serverIpAddressV6[BS2_IPV6_ADDR_SIZE];​
 +    uint16_t serverPortV6;​
 +    uint16_t sslServerPortV6;​
 +    uint16_t portV6;
 +    uint8_t numOfAllocatedAddressV6;​
 +    uint8_t numOfAllocatedGatewayV6;​
 +    uint8_t reserved[8];​
 +    char allocatedIpAddressV6[BS2_IPV6_ADDR_SIZE][BS2_MAX_IPV6_ALLOCATED_ADDR];​
 +    char allocatedGatewayV6[BS2_IPV6_ADDR_SIZE][BS2_MAX_IPV6_ALLOCATED_ADDR];​
 +} BS2IpConfig;​
 +</​code>​
 +1. //useIPV6// \\ 
 +IP V6 사용여부를 나태내는 flag입니다. \\ \\ 
 +2. //​reserved1//​ \\ 
 +예약된 공간입니다. \\ \\ 
 +3. //​useDhcpV6//​ \\ 
 +DHCP 사용 유무를 나타내는 flag입니다. \\ \\ 
 +4. //​useDnsV6//​ \\ 
 +server addresss를 사용할지 server URL을 사용할 지 결정하는 flag입니다. \\ \\ 
 +5. //​staticIpAddressV6//​ \\ 
 +현재 장치의 정적 IP V6 주소입니다. \\ \\ 
 +6. //​staticGatewayV6//​ \\ 
 +현재 장치의 정적 IP V6 게이트웨이 주소입니다. \\ \\ 
 +7. //​dnsAddrV6//​ \\ 
 +DNS V6 주소입니다. \\ \\ 
 +8. //​serverIpAddressV6//​ \\ 
 +connectionMode가 server mode일 때 사용되며,​ BioStar 애플리케이션의 IP V6 주소입니다. \\ \\ 
 +9. //​serverPortV6//​ \\ 
 +connectionMode가 server mode일 때 사용되며,​ BioStar 애플리케이션의 포트 번호입니다. \\ \\ 
 +10. //​sslServerPortV6//​ \\ 
 +connectionMode가 server mode일 때 사용되며,​ ssl로 연결될 애플리케이션의 서버 포트 번호입니다. \\ \\ 
 +11. //portV6// \\ 
 +현재 장치의 IP V6 포트 번호입니다. \\ \\ 
 +12. //​numOfAllocatedAddressV6//​ \\ 
 +현재 장치에 할당되어진 IP V6 주소의 갯수를 나타냅니다. \\ \\ 
 +13. //​numOfAllocatedGatewayV6//​ \\ 
 +현재 장치에 할당되어진 IP V6 게이트웨이 주소의 갯수를 나타냅니다. \\ \\ 
 +14. //​reserved//​ \\ 
 +예약된 공간입니다. \\ \\
 +15. //​allocatedIpAddressV6//​ \\ 
 +현재 장치에 할당되어진 IP V6 주소입니다. numOfAllocatedAddressV6는 할당되어진 주소의 갯수를 나타냅니다. \\ \\
 +16. //​allocatedGatewayV6//​ \\ 
 +현재 장치에 할당되어진 IP V6 게이트웨이 주소입니다. numOfAllocatedGatewayV6는 할당되어진 게이트웨이 주소의 갯수를 나타냅니다.\\
 +\\
 +
 +==== BS2DesFireCardConfigEx ====
 +<code cpp>
 +typedef struct {
 +    uint8_t appMasterKey[16];​
 +    uint8_t fileReadKey[16];​
 +    uint8_t fileWriteKey[16];​
 +    uint8_t fileReadKeyNumber;​
 +    uint8_t fileWriteKeyNumber;​
 +    uint8_t reserved[2];​
 +} BS2DesFireAppLevelKey; ​                ///<​ 52 bytes
 +
 +typedef struct {
 +    BS2DesFireAppLevelKey desfireAppKey; ​   ///< 52 bytes
 +    uint8_t reserved[16];​
 +} BS2DesFireCardConfigEx; ​                  ///<​ 68 bytes
 +</​code>​
 +1. //​appMasterKey//​ \\ 
 +DesFire의 application master key 값 입니다. \\ \\ 
 +2. //​fileReadKey//​ \\ 
 +파일 읽기에 사용되는 key 값 입니다. \\ \\ 
 +3. //​fileWriteKey//​ \\ 
 +파일 쓰기에 사용되는 key 값 입니다. \\ \\ 
 +4. //​fileReadKeyNumber//​ \\ 
 +파일 읽기용 key의 key index 입니다. \\ \\ 
 +5. //​fileWriteKeyNumber//​ \\ 
 +파일 쓰기용 key의 key index 입니다. \\ \\ 
 +6. //​reserved//​ \\ 
 +예약된 공간입니다. \\ \\
 +7. //​desfireAppKey//​ \\ 
 +DesFire의 키 정보를 갖는 구조체입니다. \\ \\ 
 +8. //​reserved//​ \\
 +예약된 공간입니다. \\