python泰雷兹hsm模拟器

pythales的Python项目详细描述


#Pythales


[Thales HSM]的原始实现(https://en.wikipedia.org/wiki/hardware_security_module)硬件安全模块)模拟器。仅实现基本(最流行)hsm命令:

-a0-生成密钥
-bu-生成密钥检查值
-ca-将pin从tpk转换为zpk
-cy-验证cvv/csc
-dc-验证pin
-ec-使用aba pvv方法验证交换pin
-fa-将zpk从zmk转换为lmk
-hc-生成TMK公司,TPK或PVK
-NC-诊断信息






磷/usr/bin/python3
workon pyenv
`````



>查看代码和安装要求:
```bash
>git clone https://github.com/timgabets/pythalets
cd pythalets
workon pyenv
>pip3安装-r安装-r requirements.txt
``````

>运行:
``bash
cd示例/
/br/>./hsm-server.py-server.py--help检查选项
./hsm_server.py-h ssss-d—跳过奇偶校验
```

输出示例:
````
/hsm-server.py-h ssss-d—跳过奇偶校验
lmk:deafbeedeafbeedeafbeedeaf
固件版本:0007-e000
消息头:ssss
侦听端口1500
连接的客户端:192.168.56.101:50010
17:59:49.278803<;<;从192.168.56.101:50010接收的8字节:
00 06 53 53 53 4e 43..ssssnc
17:59:49.279338>;>发送到192.168.56.101:50010的35字节:
00 21 53 53 53 53 4e 44 30 46 34 45 44 43 38.!ssssnd00f4edc8
44 45 42 36 37 46 36 45 32 30 30 37 2d 45 deb67f6e280007-e
30 30 000
[响应代码]:[nd]
[错误代码]:[00]
[lmk检查值]:[f4edc8deb67f6e28]
[固件版本]:[0007-e000]
18:01:13.089485<;<;收到108字节从192.168.56.101:50010开始:
00 6A 53 53 53 53 53 44 43 55 43 34 45 44 35 39 37.jsssduc4ed597
45 45 30 43 39 36 37 31 30 34 45 44 33 39 ee0c9697104ed399
42 45 36 46 38 38 37 32 37 33 36 44 35 be6f8b8727336d50
43 34 37 32 38 37 31 46 34 35 42 C47128d710df450b
4342 32 43 36 34 36 31 42 37 33 41 45 36 32 CB2C6461B793AE62
44 46 43 38 44 32 34 36 30 34 30 30 37 30 30 DFC8D24260140700
30 30 30 30 30 31 31 33 34 33 000001013843
[TPK]:[UC4ED597EE0C9697104ED399BE6F8B872]
[PVK对]:[7336D50C47128D710DF450BCB2C6461B]
[密码块]:[793AE62DFC8D2426]
[密码块格式代码]:[01]
[账号]:[4070000010]
[PVKI]:[1]
[PVV]:[3843]
调试:解密密码块:0412748fffffef
18:01:13.090230>;发送到192.168.56.101:50010的10字节:
00 08 53 53 53 53 44 44 30..ssssdd00
[响应代码]:[dd]
[错误代码]:[00]
18:01:13.104389<;<;从192.168.56.101:50010接收的68字节:
00 42 53 53 53 53 53 59 55 31 43 45 42 31 30。bssscyu1c1eb10
39 30 36 38 43 43 45 36 30 33 45 30 35 90681cc9e6003e05
32 31 37 43 30 37 37 45 34 34 31 37 217c7077e6404174
30 30 30 30 30 31 34 34 31 31 37 31 31070000000104;171
32 30 31 2201
[cvk]:[u1c1eb1090681cc9e6003e05217c7077e]
[cvv]:[640]
[主账号]:[41740700000104]
[到期日]:[1712]
[服务代码]:[201]
18:01:13.104979>;10字节发送到192.168.56.101:50010:
00 08 53 53 53 53 43 5a 30..sssscscz00
[响应代码]:[cz]
[错误代码]:[00]
`````

您还可以查看[示例](https://github.com/timgabets/pythales/tree/master/examples)以获得更复杂的hsm服务器实现,其中包含一些功能,如命令行选项解析等。应用程序作为服务器工作,可以同时为一个连接的客户端服务。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java的单元测试测试用例库。util。列出实现   java通过超类进行序列化/反序列化   java Android获取设备语言ISO字符串   java如何打开广告的行动。移动   Eclipse IDE for(嵌入式C/C++)开发者202012:经典的深色主题深黑色背景和菜单中的文本   java使用不同的内容动态创建TableView(JavaFX)   java JAXB将多个同名节点解组   java ClassDefNotFoundException,即使类由类加载器加载(服务器上安装了多个应用程序)   java有没有办法关闭在后端生成的MqttClient线程?   html如何在网站上的java小程序中包含图像?   java无法访问已分配给超类引用的子类实例变量   java在TableViewer中双击打开对话框   列出如何创建ListNode。JAVA   java如何从文本中输出的数组中放入随机图像