use_jaya_reader.cpp

来自「开发源代码的CPU卡的COS源程序。」· C++ 代码 · 共 83 行

CPP
83
字号
#include "inkit/jaya_reader/JayaReaderRegistry.h"#include "inkit/jaya_reader/JayaReader.h"#include "inkit/common/simu_launcher.h"#include <stdio.h>using namespace Jayacard;void report_error( char * msg, jresult err ) {	if (err != JY_OK) {		fprintf( stderr, "%s: %s", msg, jerror_msg( err ) );		exit( err );	}}void use_jaya_reader(const char * reader){    jresult ret;    JayaReader * rd;    jbyte command[1024], response[1024];    int cmdLen, respLen=1024;   	printf("Connecting to reader %s\n", reader );    rd = JayaReaderRegistry::instance()->getReader( reader, &ret );	if (rd == NULL) {		fprintf(stderr, "Could not get pointer to %s\n", reader );		exit( -1 );	}	report_error( "creation", ret );	// special get challenge that return p3 data    cmdLen = str2hex( command, "80 84 00 00 05" );	printf("PowerOn\n");	ret = rd->powerOn();	report_error( "powerOn", ret );	printf("Send Apdu: %s\n", hex2str( command, cmdLen ) );    ret = rd->exchangeApdu( command, cmdLen, response, &respLen );	report_error( "exchangeApdu", ret );	printf("Receive Apdu: %s\n", hex2str( response, respLen ) );	printf("PowerOff\n");	ret = rd->powerOff();	report_error( "powerOff", ret );	printf("PowerOn\n");	ret = rd->powerOn();	report_error( "powerOn", ret );	printf("Send Apdu: %s\n", hex2str( command, cmdLen ) );    ret = rd->exchangeApdu( command, cmdLen, response, &respLen );	report_error( "exchangeApdu", ret );	printf("Receive Apdu: %s\n", hex2str( response, respLen ) );	command[04] = 0x03;	printf("Send Apdu: %s\n", hex2str( command, cmdLen ) );    ret = rd->exchangeApdu( command, cmdLen, response, &respLen );	report_error( "exchangeApdu", ret );	printf("Receive Apdu: %s\n", hex2str( response, respLen ) );	printf("PowerOff\n");	ret = rd->powerOff();	report_error( "powerOff", ret );}int main(){	/* You must launch the simulator before */	launch_simulator();	use_jaya_reader("SimuReaderTypeA");	stop_simulator();	getchar();	return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?