setAT method
Sends SET 'AUTHENTICATION TEMPLATE FOR MUTUAL AUTHENTICATION' command to ICC. ICC if it is ready returns (90 00) or not ready (not 90 00) - throws exception. Can throw ICCError or ComProviderError.
Implementation
Future<bool> setAT({ required Uint8List data, int ne = 0, int cla = ISO7816_CLA.NO_SM }) async {
_log.sdVerbose("Sending SET 'AUTHENTICATION TEMPLATE FOR MUTUAL AUTHENTICATION' command to ICC"
" data='${data.hex()}'"
" ne=$ne"
" cla=${cla.hex()}");
final rapdu = await _transceive(
CommandAPDU(cla: cla, ins: ISO7816_INS.MANAGE_SECURITY_ENVIRONMENT, p1: 0xc1, p2: 0xa4, data: data, ne: ne)
);
if(rapdu.status != StatusWord.success) {
throw ICCError("Authentication template failed", rapdu.status, rapdu.data);
}
return true;
}