高级软件开发工具包(sdk)参与python中分散的单源标识生态系统。
pysinglesource的Python项目详细描述
单一源代码python sdk
参与 python中分散的单源标识生态系统。
概述
高级助手可用于:
- 身份请求服务(
idrs
)-支持生成短暂的 加密密钥对(x25519 ecdh)、消息服务主题和 这些文件的序列化/反序列化。 - 证明(
attestations
)-生成(外部)声明集和 在上面做证明。
安装
要安装,请使用pip:
$ pip install pysinglesource
或者克隆回购协议:
$ git clone git@bitbucket.org:mysinglesource/pysinglesource.git
$ python setup.py install
为python 3设置并激活:
virtualenv ${HOME}/.virtualenvs/pysinglesource \
--system-site-packages --python=/usr/bin/python3
source ${HOME}/.virtualenvs/pysinglesource/bin/activate
安装所需的软件包:
pip install -e .
用于安装附加的开发、测试或文档 依赖项,使用以下一个或多个命令添加限定符:
pip install -e .[dev] # Development dependencies
pip install -e .[test] # Testing dependencies
pip install -e .[dev,test] # All dependencies together
用法
身份请求服务处理程序
当使用id请求服务创建格式良好的(选择性的 公开)请求,通常也使用消息服务 连词。由于敏感的性质,反应通常需要 端到端加密,因为消息服务不在用户的 控制。
为此,可以使用“临时处理程序”。它将产生 短暂的加密密钥对和适当的消息传递 服务主题。临时处理程序可以序列化,并且 使用字符串(例如,在任何使用的 数据库系统)。
注意:
- 处理程序应该是不可访问的,只供一次使用,并且 仅用于消息传递服务。完工后, 将使用新的处理程序。
- 序列化的数据是机密的,需要保护。它 不能泄漏,否则通信可以是回顾性的 被任何截获消息的人解密 串行处理程序。
接收端将持续轮询消息传递服务
(例如,每2秒)使用处理程序的主题,检查
提交的回复。然后返回的消息将包含加密的
需要临时(私有)密钥才能访问的内容
它。因此,存储消息服务topic
是有意义的。
在索引字段下,并且
记录。
fromsinglesourceimportEphemeralHandlerhandler=EphemeralHandler()# Get the messaging topic for the Identity Request Service.topic=handler.messaging_topic# Get the serialised handler for storage (with the topic) in a DB.serialised_data=handler.serialise()# After receiving a response message with encrypted content, use the# serialised handler to re-build it.handler=EphemeralHandler(serialised_data)# Get the encryption JWK object for use with encrypted message data.jwk=handler.jwk
贡献
待定
示例
待定
许可证
新西兰奥克兰SingleSource有限公司2018-2019年版权所有
这项工作是在apache 2.0开源许可下授权的。 适用条款和条件。