"Java卡报文摘要生成程序"
本资源是一个Java智能卡报文摘要生成程序,使用SHA-1算法对报文进行加密和摘要生成。该程序可以在智能卡上运行,并提供了一个完整的实验报告,包括实验目的、实验设备、实验内容、实验报告等。
一、实验目的
本实验的目的是建立一个Java卡报文摘要生成程序,并对其进行编译和调试。该程序使用SHA-1算法对报文进行加密和摘要生成,可以在智能卡上运行。
二、实验设备
本实验使用的设备包括PC机、智能卡读卡器、Java卡等。
三、实验内容
本实验的内容包括:
1. 建立一个Java卡工程
2. 编写SHA-1算法的报文摘要生成应用代码
3. 使用卡模拟器对应用代码进行编译调试
4. 使用Java卡对应用代码进行编译调试
四、实验报告
第一部分:系统结构图和各部分流程图select
本实验的系统结构图包括三个部分:报文处理、报文摘要生成和输出结果。在报文处理部分,使用SHA-1算法对报文进行加密和摘要生成。报文摘要生成部分使用160比特的缓存MD来存放该散列函数的中间及最终结果。输出结果部分将生成的报文摘要输出到Java卡上。
报文处理操作包括五步:
1. 附加填充比特
2. 附加长度值
3. 初始化报文摘要缓存MD
4. 主循环:处理512比特报文序列
5. 输出:所有L个512比特的分组处理完成后,第L阶段产生的缓存MD中的输出是160比特的消息报文摘要
程序流程图:
0x85功能模块被选择时,可以输入一串8字节的报文,返回一串20字节的报文摘要。
第二部分:代码截图和代码测试
安装成功后的部分代码:
CardManagerAID:A000000003000000
CardManagerstate:OP_READY
Application:SELECTABLE(--------)"1pay.sys.dd"
LoadFile:LOADED(--------)A0000000035350(SecurityDomain)
Module:A000000003535041
LoadFile:LOADED(--------)"bupt.sha."
Module:"bupt.sha..1"
选择成功:
cm>/select|1pay.sys.dd
=>00A404000B317061792E7379732E6464..1pay.sys."
本实验的结果表明,使用Java智能卡报文摘要生成程序可以成功地对报文进行加密和摘要生成,并输出160比特的报文摘要。该程序可以在智能卡上运行,提供了一个安全的报文摘要生成解决方案。