zkLogin构建者的最佳实践和业务思考

随着zkLogin在Sui主网上线,构建者可以开始为其应用程序提供丝滑的帐户创建服务。与任何新技术集成一样,构建者需要考虑许多重要的问题,以降低风险并成功优化。

本文概述了其中一些考虑因素,并突出了zkLogin文档中提供的明确指导。

zkLogin仅提供自托管地址

大多数具有用户友好型入门流程的Web3解决方案来自托管提供商。这些提供商管理用户的私钥,并提供熟悉的恢复路径,以防用户忘记其密码。虽然这种解决方案适用于愿意满足托管资产所需法规义务的企业,但许多构建者没有时间和预算来进行这个过程。

这就是zkLogin的用武之地,这种原生的自托管路径减少了监管负担,并缩短了简单登录的时间。然而,挑战在于,每个构建者都必须考虑其用户对自托管的舒适程度,以及zkLogin是否适合所有、一部分或完全不适合他们的用户。这种理解将有助于构建者确定可能希望在zkLogin上合并的其他帐户创建和密钥管理系统。

Web凭证应保持在链下

zkLogin使用目前可用的最佳加密方法,以确保链上地址不直接与Web凭证相关联,包括由凭证提供商提供的凭证。例如,如果您使用Google帐户生成Sui地址,Google永远不会被通知,也无法将地址与您关联起来。这种设计是有意的,至关重要,尤其是因为全球隐私法律(例如欧洲的GDPR和美国的CCA)要求凭证提供商必须遵守。应用程序构建者应该尽可能的熟悉许多隐私法律,这些法律管理用户可以与谁分享哪些用户信息以及他们对存储、保护和删除用户数据的义务等内容。

在实施zkLogin时,构建者通常可以选择使用子凭证(用户的唯一字母数字标识符)或实际的Web凭证(例如,电子邮件地址)来生成用户的链上地址。建议将链上帐户派生的问题与身份或发现(例如,用户之间更便于互动的方式)的问题分开。用户可能不希望、不期望或不受益于将其信息不可逆地放在其链上地址中。一种方法是使用名称服务(类似于域名URL)作为用户的身份层,以帮助减轻这种风险。

Prover和Salt管理涉及隐私

Sui文档详细概述了zkLogin生成地址的工作方式。简而言之,用户将使用其OAuth Web帐户登录以生成JSON Web Token(JWT)。然后,应用程序将提供JWT和salt(用于随机数据的常见加密术语)给零知识(zk)证明生成器,然后将证明作为Sui上交易的一部分。这个流程确保Web帐户信息永远不会在链上可见。

作为构建者,您可以选择运行自己的证明生成器和salt管理解决方案,或使用第三方解决方案。具有zk知识的构建者甚至可以选择使用公开可用的常见参考字符串从头开始构建自己的证明生成器。

运营证明生成器和管理salt是一个涉及隐私的任务。执行这些服务的任何实体原则上都将能够将Web凭证与Sui地址相关联,尽管这些信息在链上不可见。如果您正在构建一个涉及隐私的应用程序(例如,用户可能会存储高价值资产或金额的应用程序),则值得考虑自己运行证明生成器和进行自己的salt管理,而不是依赖第三方。

使用第三方服务时,请确保根据您自己的业务政策对产品、第三方服务的使用以及遵守相关的有关向用户披露的法律进行适当的治理。

Salt管理方案的选择

选择Salt管理方案是zkLogin构建者必须做出的最重要决策之一。zkLogin文档概述了Salt管理的几种方案,每种方案都有其自己的便利性、安全性和可恢复性权衡。从高层次来看,主要有两种方案:SSO形式和密码形式。

构建者在使用户进入和防止不良行为者访问资产之间存在矛盾,每个构建者都需要在便捷性和安全性之间找到他们app的合适位置。无论采用哪种方式,使用zkLogin的构建者应始终确保向用户提供所有适用的信息披露。

让我们为所有人建设更好的互联网

现在是区块链为所有人提供突破性体验的时候了,Sui上的构建者已经准备好为广大受众提供服务。目前,区块链地址大约有1亿个,而Web帐户有40多亿个,zkLogin是将区块链带给主流受众的关键一步。当以经过深思熟虑的方式实施这一功能时,将确保Sui为下一个数十亿用户提供最佳体验。


关于 Sui Network

Sui是基于第一原理重新设计和构建而成的L1公有链,旨在为创作者和开发者提供能够承载Web3中下一个十亿用户的开发平台。Sui上的应用基于Move智能合约语言,并具有水平可扩展性,让开发者能够快速且低成本支持广泛的应用开发。获取更多信息:https://linktr.ee/sui_apac

官网|英文Twitter|中文Twitter|Discord|英文电报群|中文电报群

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/146999.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

二、机器学习基础知识:Python数据处理基础

文章目录 1、基本数据类型1.1 数字类型(Number)1.2 字符串类型(String)1.3 列表类型(List)1.4 元组类型(Tuple)1.5 字典类型(Dictionary)1.6 集合类型&#x…

掌动智能:替代JMeter的压力测试工具有哪些

JMeter是一个广泛使用的开源压力测试工具,但在实际应用中,也有一些其他优秀的替代品可供选择。本文将介绍几个可替代JMeter的压力测试工具,它们在功能、性能和易用性方面都具有独特优势,可以满足不同压力测试需求的选择。 一、Gat…

lvgl不能显示图片,但可以显示按键?

AT32F403A, IAR, ST7735S, LVGL8.3。 一、现象: 本来想着用LVGL做一个摄像头的显示功能 切换动态。可是死活实现不了功能。 因为移植好LVGL后,首先测试了显示按键,功能正常,以为是一切正常。在模拟器上调试效果完成后&#xf…

Scala第十三章节

Scala第十三章节 1. 高阶函数介绍 2. 作为值的函数 3. 匿名函数 4. 柯里化 5. 闭包 6. 控制抽象 7. 案例: 计算器 scala总目录 文档资料下载

IDEA git操作技巧大全,持续更新中

作者简介 目录 1.创建新项目 2.推拉代码 3.状态标识 5.cherry pick 6.revert 7.squash 8.版本回退 9.合并冲突 1.创建新项目 首先我们在GitHub上创建一个新的项目,然后将这个空项目拉到本地,在本地搭建起一个maven项目的骨架再推上去&#xff0…

Python集成开发环境(IDE):WingPro for Mac

WingPro for Mac是一款Python集成开发环境(IDE)软件,它提供了一系列强大的工具和功能,帮助Python开发人员提高开发效率和质量。 WingPro for Mac拥有直观的用户界面和强大的调试器,可以帮助用户快速定位问题和修复错误…

12链表-双指针

目录 LeetCode之路——21. 合并两个有序链表 分析: LeetCode之路——19. 删除链表的倒数第 N 个结点 分析: LeetCode之路——21. 合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的…

宝塔反代openai官方API接口详细教程,502 Bad Gateway问题解决

一、前言 宝塔反代openai官方API接口详细教程,实现国内使用ChatGPT502 Bad Gateway问题解决, 此方法最简单快捷,没有复杂步骤,不容易出错,即最简单,零代码、零部署的方法。 二、实现前提 一台海外VPS服务…

网络安全——自学(黑客)方法

如果你想自学网络安全,首先你必须了解什么是网络安全!,什么是黑客!! 1.无论网络、Web、移动、桌面、云等哪个领域,都有攻与防两面性,例如 Web 安全技术,既有 Web 渗透2.也有 Web 防…

云原生之使用Docker部署RSS阅读器Huntly

云原生之使用Docker部署RSS阅读器Huntly 一、Huntly介绍1.1 Huntly简介1.2 Huntly功能 二、本次实践规划2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载Huntly镜像五、部署Huntly5.1 创建挂…

Qt自定义菜单

Qt开发过程中,弹出菜单时我们一般使用QMenu,但是QMenu都是一条项固定的格式,如查想要自己的设计界面就没法使用默认的Action项了,因此我们得用自定义的QMenu。 本篇介绍使用自定义的QMenu设计出UI。我们使用QWidget QWidgetAction来实现。Q…

此芯科技加入百度飞桨硬件生态共创计划,加速端侧AI生态布局

近日,此芯科技(上海)有限公司(以下简称“此芯科技”)与百度签署硬件生态共创计划合作协议,正式加入由百度发起的硬件生态共创计划。双方将共同推动端侧AI和大模型在个人计算、车载计算以及元宇宙计算等领域…

拒绝水文!八大排序(二)【适合初学者】冒泡排序和选择排序

文章目录 冒泡排序选择排序 大家好,我是纪宁。 这篇文章介绍八大排序中思路最简单,但效率也是最低的两种排序算法! 冒泡排序 冒泡排序,可以说是每个人在接触编程时最先学会的一种排序。 冒泡排序基本思想 冒泡排序(…

Rust 围炉札记

文章目录 一、安装二、文档 一、安装 rust 安装 卸载(自定义路径) Rust配置镜像源 Rust in Visual Studio Code Rust 官网 Rust 中文网 windows系统下Rust环境搭建以及vscode调试环境配置 二、文档 Rust 菜鸟教程 Rust 官方文档中文教程 Rust 包管理…

Docker从认识到实践再到底层原理(七)|Docker存储卷

前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏…

【1++的Linux】之进程(五)

👍作者主页:进击的1 🤩 专栏链接:【1的Linux】 文章目录 一,什么是进程替换二,替换函数三,实现我们自己的shell 一,什么是进程替换 我们创建出来进程是要其做事情的,它可…

【爬虫】用wget命令爬虫的简易教程

文章目录 1. 获取登录的请求2. 用postman模拟登录请求3. 用wget模拟登录请求并保存cookie4. 开始爬取网站5. 查看爬取结果6. 网站爬虫简易教程 爬取需要登录的网站的资源 背景:对于一些网站需要使用用户名和密码登录并且使用了https,我们如果不通过凭证将…

网络工程师对口的岗位是什么

大家好,我是网络工程师成长日记实验室的郑老师,您现在正在查看的是网络工程师成长日记专栏,记录网络工程师日常生活的点点滴滴 网络工程师可以从事哪些职位呢?其实网络工程师最对应的最对口的这个岗位就是高级网络工程师、系统集成…

番外6:下载+安装+配置Linux

#########配置Linux---后续 step08: 点击编辑虚拟机设置,选择下载好的映像文件.iso进行挂载; step09: 点击编辑虚拟机选项,选择UEFI启动模式并点击确定; step10: 点击开启虚拟机,选择Install rhel ; 备注&…

飞桨EasyDL-Mac本地部署离线SDK-Linux集成Python

前言:本文对使用飞桨EasyDL桌面版实现本地部署物体检测做一下说明 一、训练模型 如何使用飞桨EasyDL桌面版这里就不再赘述,直接参照官方文档进行物体检测模型训练。 飞桨EasyDL桌面版-用零代码开发实现物体检测https://ai.baidu.com/ai-doc/EASYDL/Tl2…