<project name="KeyWrapping" basedir="."> <property name="output.dir" value="target"/> <property name="output.file" value="${output.dir}/KeyChallenge.cap"/> <property name="verify.file" value="${output.dir}/Verification.cap"/> <property name="app.id" value="0F0E0D0C0B0A0908"/> <property name="pkg.id" value="0F0E0D0C0B"/> <property name="lib.dir" value="lib"/> <property name="key-import.apdu" value="B0010000147a41eacbbfe01a919c2dbfc83ee45b1ad067d090"/> <property name="key-challenge.apdu" value="B002000020B42CCC222C86585E8F761F15BDFFCC7793A518587ABB0DDF0C4ADBD465651C0714"/> <mkdir dir="${lib.dir}" /> <get src="https://github.com/martinpaljak/ant-javacard/releases/latest/download/ant-javacard.jar" dest="${lib.dir}/ant-javacard.jar" skipexisting="true"/> <get src="https://github.com/martinpaljak/GlobalPlatformPro/releases/latest/download/gp.jar" dest="${lib.dir}/gp.jar" skipexisting="true"/> <taskdef name="javacard" classname="pro.javacard.ant.JavaCard" classpath="${lib.dir}/ant-javacard.jar"/> <target name="verify"> <javacard> <cap jckit="sdks/jc305u3_kit" aid="${pkg.id}" package="org.KeyChallenge" output="${verify.file}" sources="src/main/java"> <applet class="org.KeyWrapping.KeyChallengeApplet" aid="${app.id}"/> </cap> </javacard> </target> <target name="build"> <mkdir dir="${output.dir}"/> <javacard> <cap jckit="sdks/jc304_kit" aid="${pkg.id}" package="org.KeyChallenge" output="${output.file}" sources="src/main/java"> <applet class="org.KeyChallenge.KeyChallengeApplet" aid="${app.id}"/> </cap> </javacard> </target> <target name="install"> <exec executable="java"> <arg value="-jar"/> <arg value="${lib.dir}/gp.jar"/> <arg value="--install"/> <arg value="${output.file}"/> </exec> </target> <target name="list"> <exec executable="java"> <arg value="-jar"/> <arg value="${lib.dir}/gp.jar"/> <arg value="--list"/> </exec> </target> <target name="uninstall"> <exec executable="java" failonerror="false"> <arg value="-jar"/> <arg value="${lib.dir}/gp.jar"/> <arg value="--delete"/> <arg value="${app.id}"/> <arg value="--delete"/> <arg value="${pkg.id}"/> </exec> </target> <target name="test-key-import"> <exec executable="java"> <arg value="-jar"/> <arg value="${lib.dir}/gp.jar"/> <arg value="--debug"/> <arg value="--applet"/> <arg value="${app.id}"/> <arg value="--apdu"/> <arg value="${key-import.apdu}"/> </exec> </target> <target name="test-key-challenge"> <exec executable="java"> <arg value="-jar"/> <arg value="${lib.dir}/gp.jar"/> <arg value="--debug"/> <arg value="--applet"/> <arg value="${app.id}"/> <arg value="--apdu"/> <arg value="${key-challenge.apdu}"/> </exec> </target> <target name="test" depends="test-key-import, test-key-challenge"/> <target name="build-reinstall" depends="build, uninstall, install"/> <target name="build-reinstall-test" depends="build, uninstall, install, test"/> </project>