001 /* 002 * =========================================================================================== 003 * = COPYRIGHT 004 * PAX Computer Technology (Shenzhen) Co., Ltd. PROPRIETARY INFORMATION 005 * This software is supplied under the terms of a license agreement or nondisclosure 006 * agreement with PAX Computer Technology (Shenzhen) Co., Ltd. and may not be copied or 007 * disclosed except in accordance with the terms in that agreement. 008 * Copyright (C) 2017-2023 PAX Computer Technology (Shenzhen) Co., Ltd. All rights reserved. 009 * Description: // Detail description about the function of this module, 010 * // interfaces with the other modules, and dependencies. 011 * Revision History: 012 * Date Author Action 013 * 2017/04/01 PAX Create/Add/Modify/Delete 014 * =========================================================================================== 015 */ 016 017package com.pax.dal.entity; 018 019/** 020 * <div class="zh"> 密钥类型定义 </div> <div class="en"> ped key type </div> 021 * 022 * @author Steven.W 023 * 024 */ 025public enum EPedKeyType { 026 /** 027 * <div class="zh"> 收单行或POS运营商的私有密钥,由收单行或者POS运营商在安全环境下直接写入 </div> <div class="en"> Terminal Loading Key </div> 028 */ 029 TLK((byte) 0x01), 030 /** 031 * <div class="zh"> 终端主密钥,或者称为收单行主密钥 </div> <div class="en"> Terminal Master Key </div> 032 */ 033 TMK((byte) 0x02), 034 /** 035 * <div class="zh"> 用于应用输入PIN后,计算PIN Block </div> <div class="en"> Transaction PIN Key </div> 036 */ 037 TPK((byte) 0x03), 038 /** 039 * <div class="zh"> 用于应用报文通讯中,计算MAC </div> <div class="en"> Transaction Mac Key </div> 040 */ 041 TAK((byte) 0x04), 042 /** 043 * <div class="zh"> 用于对应用中敏感数据进行DES/TDES加密传输或存储 </div> <div class="en"> Terminal Des Key </div> 044 */ 045 TDK((byte) 0x05), 046 /** 047 * <div class="zh"> 048 * 049 * </div> <div class="en"> DUKPT Key </div> 050 */ 051 TIK((byte) 0x07), 052 /** 053 * <div class="zh"> 发散SM2的公钥 </div> <div class="en"> SM2 public key </div> 054 */ 055 SM2_PUB_KEY((byte) 0x31), 056 /** 057 * <div class="zh"> 发散SM2的私钥 </div> <div class="en"> SM2 private key </div> 058 */ 059 SM2_PVT_KEY((byte) 0x30), 060 /** 061 * <div class="zh"> SM4 TAK </div> <div class="en"> SM4 TAK </div> 062 */ 063 SM4_TAK((byte) 0x34), 064 /** 065 * <div class="zh"> SM4 TDK </div> <div class="en"> SM4 TDK </div> 066 */ 067 SM4_TDK((byte) 0x35), 068 /** 069 * <div class="zh"> SM4 TMK </div> <div class="en"> SM4 TMK </div> 070 */ 071 SM4_TMK((byte) 0x32), 072 /** 073 * <div class="zh"> SM4 TPK </div> <div class="en"> SM4 TPK </div> 074 */ 075 SM4_TPK((byte) 0x33), 076 /** 077 * <div class="zh"> AES 密钥 </div> <div class="en"> AES key </div> 078 */ 079 TAESK((byte)0x20), 080 081 /** 082 * <div class="zh"> AES 密钥 </div> <div class="en"> AES key </div> 083 */ 084 PED_AES_TDK((byte)0x20), 085 086 /** 087 * <div class="zh"> AES TMK </div> <div class="en"> AES TMK </div> 088 * @since V3.25.00 089 */ 090 AES_TMK((byte)0x22), 091 092 /** 093 * <div class="zh"> AES TPK </div> <div class="en"> AES TPK </div> 094 * @since V3.25.00 095 */ 096 AES_TPK((byte)0x23), 097 098 /** 099 * <div class="zh"> AES TAK </div> <div class="en"> AES TAK </div> 100 * @since V3.25.00 101 */ 102 AES_TAK((byte)0x24), 103 104 /** 105 * <div class="zh"> AES TCHDK </div> <div class="en"> AES TCHDK </div> 106 * @since V3.25.00 107 */ 108 AES_TCHDK ((byte)0x26), 109 110 /** 111 * <div class="zh"> AES TIK </div> <div class="en"> AES TIK </div> 112 * @since V3.25.00 113 */ 114 AES_TIK ((byte)0x51), 115 116 /** 117 * PPAD_TPK 118 * @since V4.17.00 119 */ 120 PPAD_TMK((byte)0x43), 121 122 /** 123 * PPAD_TPK 124 * @since V3.23.00 125 */ 126 PPAD_TPK((byte)0x44), 127 128 /** 129 * PED_TM1K 130 * @since V3.28.00 131 */ 132 PED_TM1K((byte)0x49), 133 134 /** 135 * FACE_TDK 136 */ 137 FACE_TDK((byte)0x11), 138 139 /** 140 * SM4_TCHDK 141 */ 142 SM4_TCHDK((byte)0x36), 143 144 /** 145 * SM4_FACE_TDK 146 */ 147 SM4_FACE_TDK((byte)0x37), 148 149 /** 150 * SECURE_DATA 151 */ 152 SECURE_DATA((byte)0x4C), 153 154 /** 155 * AES_PPAD 156 */ 157 AES_PPAD_TPK((byte)0x2A), 158 159 /** 160 * PED_TIDK 161 */ 162 PED_TIDK((byte)0x45) 163 ; 164 165 166 167 private byte pedKeyType; 168 169 private EPedKeyType(byte pedKeyType) { 170 this.pedKeyType = pedKeyType; 171 } 172 173 public byte getPedkeyType() { 174 return pedKeyType; 175 } 176 177}