【亲测免费】 Hyperledger Indy SDK 使用教程
1. 项目介绍
Hyperledger Indy SDK 是一个为自我主权身份(Self-Sovereign Identity, SSI)提供分布式账本基础的官方 SDK。Indy 提供了一个软件生态系统,用于私有、安全和强大的身份管理,而 Indy SDK 则使开发者能够构建基于 Indy 的客户端应用程序。
Indy SDK 的主要组件是一个可调用的 C 库,同时提供了多种编程语言的便捷封装和 Indy CLI 工具。该项目的主要目标是支持构建去中心化的身份管理系统,确保用户能够完全控制自己的身份数据。
2. 项目快速启动
2.1 安装依赖
在开始之前,确保你的系统已经安装了必要的依赖项。以下是基于 Ubuntu 18.04 的安装步骤:
sudo apt-get install ca-certificates -y
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys CE7709D068DB5E88
sudo add-apt-repository "deb https://repo.sovrin.org/sdk/deb bionic stable"
sudo apt-get update
sudo apt-get install -y libindy
2.2 创建第一个 Indy 应用程序
以下是一个简单的 Python 示例,展示如何使用 Indy SDK 创建一个 DID(去中心化标识符)并查询其 Verkey。
import asyncio
from indy import did, pool, wallet
async def create_and_query_did():
# 打开或创建一个钱包
await wallet.create_wallet("pool1", "wallet1", None, None, None)
wallet_handle = await wallet.open_wallet("wallet1", None, None)
# 创建一个新的 DID
(my_did, my_verkey) = await did.create_and_store_my_did(wallet_handle, "{}")
print(f"Created DID: {my_did}")
# 查询 Verkey
verkey = await did.key_for_did(pool_handle, wallet_handle, my_did)
print(f"Verkey for DID {my_did}: {verkey}")
# 关闭钱包
await wallet.close_wallet(wallet_handle)
# 运行示例
loop = asyncio.get_event_loop()
loop.run_until_complete(create_and_query_did())
3. 应用案例和最佳实践
3.1 身份验证系统
Indy SDK 可以用于构建去中心化的身份验证系统,用户可以完全控制自己的身份数据,而不依赖于中心化的身份提供者。这种系统特别适用于金融、医疗和政府等需要高度安全性和隐私保护的领域。
3.2 供应链管理
在供应链管理中,Indy SDK 可以用于跟踪和验证产品的来源和状态。每个参与方都可以拥有自己的 DID,并通过 Indy 网络进行安全的身份验证和数据交换。
4. 典型生态项目
4.1 Hyperledger Aries
Hyperledger Aries 是一个专注于去中心化身份和安全通信的项目,与 Indy SDK 紧密集成。Aries 提供了构建去中心化身份代理(Agents)的框架,支持多种通信协议和加密技术。
4.2 Sovrin
Sovrin 是一个基于 Hyperledger Indy 的全球去中心化身份网络,旨在为个人、组织和设备提供自我主权身份。Sovrin 网络允许用户在全球范围内安全地管理和共享身份数据。
通过这些生态项目,Indy SDK 不仅提供了强大的身份管理功能,还构建了一个完整的去中心化身份生态系统,支持各种应用场景和行业需求。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0187
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0112
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
omega-aiOmega-AI:基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算,GPU支持CUDA,CUDNN。Java03
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook08