采集数据命令备忘

1. 采集CPU数据,每隔2秒采集一次,采集500次。缺点是不知道哪个进程造成的CPU消耗
vmstat -n 2 500 > cpu.txt &
 
2. 采集网卡数据。每隔2秒采集一次,采集500次
sar -n DEV 2 500|grep eth0 > net.txt &
 
3. 采集内存数据。每隔5秒采集一次,采集200次。JAVA内存一般变化频率不大,采集间隔过小意义不大
    该命令优点是可以看到JAVA进程内部内存的详细分配情况,缺点是看不到直接内存(堆外内存)
jstat -gc ${java_pid} 5000 200 > mem.txt &
 
4. 采集CPU数据。每隔2秒采集一次,采集86400次。优点是能看到JAVA进程本身消耗的CPU,与vmstat命     令配合可以判断出CPU飙升到底是JAVA进程本身造成的还是其他进程造成的
pidstat -p ${java_pid} 2 86400 > cpu2.txt &
 
5. 采集内存数据。每隔5秒采集一次,采集34560次, 优点是包含了JAVA进程的直接内存,与jstat配合使用     可以获得JAVA内存的完整情况
pidstat -r -p ${java_pid} 5 34560 > mem2.txt &
 
以上命令采集到的数据可以直接复制到excel中,分列后 使用excel的图表功能生成折线图,看起来非常方便.
注意如果数据量比较大(几十M,几十万上百万数据)的话最好使用microsoft excel , wps 对于大文件可能直接崩溃或者打开非常缓慢简直弱爆了
智能密码钥匙的用户身份鉴别功能相关的APDU分析 又是涨知识的一条 于 2024-12-11 09:48:55 发布 阅读量1.9k 收藏 13 点赞数 10 CC 4.0 BY-SA版权 文章标签: 服务器 运维 本文主要对智能密码钥匙的用户身份鉴别功能相关的APDU进行了分析,包含APDU指令中数字证书、待签名数据的、签名值的分析及提取,和相关数据的验证。( 阅读本文前,可先熟悉GM/T 0017-2023 《智能密码钥匙密码应用接口数据格式规范》标准) 具体分析流程如下: 了解命令APDU的组成:命令头(CLA INS P1 P2)+命令体,如下图所示 从上图可知想要分析APDU中传输的证书,就要先找到804E 寻找APDU中传输的数字证书,搜索804E 通过wireshark抓取APDU的数据流量(记得要装好USB的抓包环境),Ctrl+F调出搜索框,选择分组详情、字符串搜索804E,此时会出现多个804E; 选择804E上下两个数据流,此时已能看到证书的部分信息(shandongSM2testCA),说明证书已经开始传输,如下图所示, 此时证书已经传输,在附近的流量中搜索3082(证书开头一般就是3082/MII) bfaaaaf501000000000000000000000000000000091201f20000026a 308202663082020ca00302010202082024111400640809300a06082a811ccf5501837530 保留3082到最后的字节: 308202663082020ca00302010202082024111400640809300a06082a811ccf5501837530 此处3082是第3219个数据流,保留接下来目的地址到主机地址的数据包,到9000结束 第3221个数据流 3f6f311a301806035504030c115368616e446f6e67534d32546573744341310d300b060355040b0c0453444341310d300b060355040a0c045344434131123010 说明一下DATE数据的特点:前两位3F(或其他两位XX)代表传输的数据长度需要舍弃,保留之后的数据 6f311a301806035504030c115368616e446f6e67534d32546573744341310d300b060355040b0c0453444341310d300b060355040a0c045344434131123010 以此类推保留接下来的数据,直到看见9000结束。 接下来第3223个数据流、第3225个数据流、第3227个数据流、第3229个数据流、第3231个数据流、第3233个数据流进行相同操作只保留3F之后的数据 第3235个数据流,以6A9E00结束 根据标准,6A9E代表数据未发送完毕,需要重新发送指令获取后续数据,如下图所示 因此保留数据需要删除前两位51和6A9E之后的数据,只保留中间数据: 5368616e446f6e67534d3254657374 第3239个数据流,重新发送后的数据流, bfaaaa83000000000000000000000000000000000a120080 43412f534d3243524c2e6a737030090603551d1304023000300e0603551d0f0101ff0404030206c0 分析数据可知bfaaaa83000000000000000000000000000000000a120080固定长度48,80之后的数据已经能看到证书的相关信息,因此保留80之后的内容 43412f534d3243524c2e6a737030090603551d1304023000300e0603551d0f0101ff0404030206c0 第3241个数据流,同理删除3F,保留之后数据 第3243个数据流,出现9000代表数据传输完毕 5902fec39d6e04eebbef70164d23d39b36ba6fe7793a305b90000000000000000000000000000000000000000000000000000000000000000000000000000000 删除前两位和9000...之后的数据保留中间数据 02fec39d6e04eebbef70164d23d39b36ba6fe7793a305b 证书传输的数据比较长,因此需要将采集到的数据进行拼接 (3219+3221+3223+3225+3227+3229+3231+3233+3235+3239+3241+3243),故传输的数字证书为 证书拼接长度1236 此时证书格式为16进制需要进行转码,将16进制转成BASE64格式再转成证书的PEM格式(放到TXT文件中更改后缀.cer)就可以得到对应的证书. 公钥 04eb3ccef0938884b6c7abb211edc949f1c6583f7eacc3ec6f34c8c4b467b3607b0d3d4d338f8b3e8f0c940857f720af2276b58a0cfdb6a7e8433fb62f5fb9d0ce 寻找APDU中的待签名数据 根据标准可知,待签名数据命令为8074,如下图所示: 在wireshark中搜索8074,可以定位到第3991个数据流 固定长度:48:bffe0100000000000000000000000000002e00001212002b 固定长度:22:8074020000002410003001参见表107见上图 其中SM2杂凑256bits,4149921282b536f4aeaba40d7e60e4fa911fb1da5f905c4c7636cf1029长度29字节需要找下一数据流4字节进行拼接 下一数据流第3993个 43舍弃,0000结束,只保留3字节 18c4ee 因此传输的待签名数据为 第3991数据流+第3993数据流=32字节=256比特 4149921282b536f4aeaba40d7e60e4fa911fb1da5f905c4c7636cf102918c4ee 寻找APDU中的签名值 参见标准 其中9000为结束因此找距离9000最近的数据流 第3997 数据流 bfaaaa49000000000000000000000000000000001212004600000100 3db5bbf92b4e0bf77075fa9b3dafebf933a41a79914304eb188362a0e4bcc8743eb991f7 第3999数据流,舍弃前两位5e和9000及之后, 5e 1836ed2f803ecca030590e0aa03fc0ef9c96a275c8d521177ee329cc 9000000000000000000000000000000000000000000000000000000000000000000000 其中1836ed2f803ecca030590e0aa03fc0ef9c96a275c8d521177ee329cc为28字节需要从上一数据流截取36字节3db5bbf92b4e0bf77075fa9b3dafebf933a41a79914304eb188362a0e4bcc8743eb991f7 因此传输的签名值为 第3997数据流+第3999数据流=64字节 3db5bbf92b4e0bf77075fa9b3dafebf933a41a79914304eb188362a0e4bcc8743eb991f71836ed2f803ecca030590e0aa03fc0ef9c96a275c8d521177ee329cc 验证签名 智能密码钥匙抓包数据分析备忘:如果一条指令未全部发送完数据,下一条指令继续发送数据时第一个字节为标志位。' 使用代码实现
最新发布
08-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值