public byte[] ReadData(KeyModeEnum km, byte blokNo, string keyStr, out byte[] cardSerialData) { // byte readModel = (byte)rm; byte keyModel = (byte)km; byte[] key = GetKeyData(keyStr); byte[] pData = new byte[100]; ulong pdataLen = 0; // đọc số thẻ cardSerialData = SelectCard(); if (cardSerialData == null) { return(null); } int r; // Kiểm tra chìa khóa r = MasterRDImprot.rf_M1_authentication2(0, keyModel, blokNo, key); r = MasterRDImprot.rf_M1_read(0, blokNo, pData, ref pdataLen); if (r == 0) { byte[] rData = new byte[pdataLen]; for (int i = 0; i < (int)pdataLen; i++) { rData[i] = pData[i]; } return(rData); } return(null); }
public bool WriteData(KeyModeEnum km, byte blockNo, string keyStr, string pDataStr) { //byte readModel = (byte)rm; byte keyModel = (byte)km; byte[] key = GetKeyData(keyStr); byte[] pData = GetBlockData(pDataStr); ulong pLen = (ulong)pData.Length; SelectCard(); int r; //kiem tra chia khoa r = MasterRDImprot.rf_M1_authentication2(0, keyModel, blockNo, key); r = MasterRDImprot.rf_M1_write(0, blockNo, pData); return(r == 0 ? true : false); }