处理pskc文件的python模块

python-pskc的Python项目详细描述


处理可移植对称密钥容器(pskc)文件的python模块 在RFC 6030中定义。PSKC文件是 用于传输和提供对称密钥和密钥元数据(种子文件) 不同类型的密码模块,通常是一次性密码系统或 其他身份验证设备。

此模块可用于从PSKC文件中提取密钥,以便在OTP中使用 认证系统。该模块还可用于编写pskc文件。

这个模块应该能够处理最常见的pskc文件。

https://arthurdejong.org/python-pskc/

API

该模块提供了一个简单的api,主要面向 解析现有的PSKC文件。

从加密的pskc文件中提取密钥材料非常简单:

>>> from pskc import PSKC
>>> pskc = PSKC('tests/rfc6030/figure7.pskcxml')
>>> pskc.encryption.derive_key('qwerty')
>>> for key in pskc.keys:
...     print('%s %s' % (key.serial, str(key.secret.decode())))
987654321 12345678901234567890

编写AM加密的PSKC文件非常简单:

>>> pskc = PSKC()
>>> key = pskc.add_key(
...     id='456', secret='987654321', manufacturer='Manufacturer',
...     algorithm = 'urn:ietf:params:xml:ns:keyprov:pskc:hotp')
>>> pskc.encryption.setup_pbkdf2('passphrase')
>>> pskc.write('output.pskcxml')

键对象有许多属性。请参阅pskc.key.key文档 详细情况。

安全注意事项

这段代码处理私钥材料,并用python编写。不 已采取预防措施将页锁定在内存中,以防止交换。阿尔索 当前未尝试安全地释放可能保存的内存 私钥材料。

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

推荐PyPI第三方库


热门话题
java如何处理CannotCreateTransactionException   安卓如何通过TensorFlowEnferenceInterface提供布尔占位符。JAVA   java是一个系统。出来默认情况下println线程安全?   java关于同步的重要性   java非法启动表达式/尚未对编码充满信心欢迎帮助   安卓为什么XML和Java中的ImageView测量不同?   Android乘以双精度整数[java]   java如何将下一个数组项设置为变量的新值?   java编译ikvmc pwswiftcoreXXXX。jar作为clr。动态链接库   java测试没有单元测试调用的私有方法   在java中如何划分重复的正则表达式模式?   java活动不刷新onCreate()中的布局   Java用户输入nextLine()不等待输入   oracle11g用java编写ORACLE BLOB文件   mysql如何在Java程序中使用Hibernate?   java ADF从托管bean调用有界taskflow