首页 > 其他分享 >群签名学习笔记

群签名学习笔记

时间:2023-10-27 15:33:18浏览次数:35  
标签:签名者 验证 成员 管理 笔记 学习 管理员 签名

群签名算法模型

如图所示,群签名包括3个参与主体,群管理、群成员以及验证者。

  • 群管理负责群证书的创建管理、群成员管理以及在验证方发起挑战时对成员进行验证追踪
  • 群成员加入群后可获得群管理颁发的群证书,并使用证书对某信息进行签名。
  • 验证方可验证群签名的合法性。

群签名学习笔记_群签名

      在群签名验证过程中验证方只能判断某信息是否被群所认证,而不能得知是由群中具体哪一方所认证的。如图中验证方是无法得知该签名是由A还是B进行的签名,从而保护群成员的隐私。

群签名学习笔记_群签名_02

群签名的安全性要求

  • 完整性(Soundness and completeness)

有效的签名能够被正确验证

  • 不可伪造性(Unforgeability)

只有群成员才能产生有效的群签名。其他任何人包括群管理员也不能伪造一个合法的签名。

  • 匿名性(Anonymity)

 给定一个群签名后,对除了唯一的群管理员以外的任何人来说,确定签名者的身份是不可行的,至少在计算上是困难的。

  • 可跟踪性(Traceability)

  群管理员在发生纠纷的情况下可以打开一个签名来确定出签名者的身份,而且任何人都不能阻止一个合法签名的打开。

  • 不关联性(Unlinkability)

 在不打开签名的情况下,确定两个不同的签名是否为同一个群成员所签的是不可行的,至少在计算上是困难的。

  • 没有框架(No framing)

 即使其他小组成员相互串通,也不能为不在组里的成员进行签名

  • 不可伪造的跟踪验证(Unforgeable tracing verification)

 撤销管理员不能错误地指责签名者创建他没有创建的签名。

  • 抵抗串通(Coalition-Resistance)

 即使一些群成员串通在一起也不能产生一个合法的不能被跟踪的群签名。

总结

       群签名可解决在匿名认证情况下可监管问题,群体签名方案中,每个成员都可以生成群签名,外界可验证其合法性,但无法知道是哪一个成员进行的签名,即满足匿名性。若外界对群签名存在争议,此时群管理可对真正签名方进行验证,从而找出真正的签名者,即满足追踪性。群签名常用于公共资源的管理,重要军事情报的签发,重要领导人的选举,电子商务重要新闻的发布,金融合同的签署等事务中。

标签:签名者,验证,成员,管理,笔记,学习,管理员,签名
From: https://blog.51cto.com/u_16255631/8058316

相关文章

  • tornado——关于tornado的异步操作学习
    关于tornado的异步操作学习yieldhttp_client.fetch和yieldtornado.gen.Task(http_client.fetch的区别实际上,yieldhttp_client.fetch和yieldtornado.gen.Task(http_client.fetch)是等价的,它们在功能上是相同的。tornado.gen.Task是Tornado4.0版本之前的写法,而yieldh......
  • 易语言银行余额虚拟生成器制作,提供源码思路,仅供学习
    今天这边带来的是一个图片生成器,是用易语言进行开发的,整个代码我算了一下不超过10行,然后就需要一个图片框组件和三个编辑框,三个标签,一个按钮就能实现,真的非常非常简单,大家可以照猫画虎哈,这也仅仅只是为大家做的一个演示示范。软件截图:程序集源码分享:.版本2.程序集窗口程......
  • MySQL学习(10)基于规则的优化
    前言MySQL为了更高的执行效率,会将客户端发送的SQL语句进行优化。条件化简MySQL优化器会对SQL语句中的表达式进行简化处理,以提高执行效率。移除不必要的括号。常量传递。a=5ANDb>a可优化为a=5ANDb>5。移除没用的条件。优化器会移除掉明显为TRUE或FALSE的表......
  • 易语言开发银行流水生成器,分享源码仅供学习
    小编我是做技术开发的,易语言的话学了将近有10年左右,然后看网上很多人都在找这个玩意,然后就是有一个人卖9000多,感觉那种人就是向前想疯了,我分析了一下它的软件源码,也就是辅助生成数据,并不是一键它会生成文档,就是给你按参数生成固定的数据,然后需要你自己复制粘贴,这个原理的实现真的......
  • 学习过的网站记录
      https://www.jianshu.com/p/ba9d45b4e592?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes  IOS-地图之CLLocation的使用   https://blog.csdn.net/songzhuo1991/article/details/115626992 iOS-UIStackView布局详解   http://devce......
  • 阅读笔记4
    DDD中的复杂性管理领域驱动设计(DDD)可以帮助管理和解决复杂性,特别是在大型软件项目中。以下是一些处理复杂性的方法:限界上下文:将大型领域分解为小的限界上下文,每个上下文都有自己的领域模型。这有助于减轻不同部分之间的耦合。领域专家参与:积极参与领域专家,他们了解业务并能够提......
  • python+playwright 学习-83 page.expect_response()捕获网络返回数据
    前言expect_response()方法可以捕获接口返回的数据,在爬取网页数据时非常有用。expect_response()使用官方文档示例withpage.expect_response("https://example.com/resource")asresponse_info:page.get_by_text("triggerresponse").click()response=response_info.val......
  • python+playwright 学习-82 Request 对象
    前言每当页面发送网络资源请求时,页面都会发出以下事件序列:page.on("request")当页面发出请求时触发page.on("response")接收到请求的响应状态和标头时触发page.on("requestfinished")当响应主体被下载并且请求完成时发出。如果请求在某个时刻失败,则会发出page.on("requestfa......
  • python+playwright 学习-81 page.expect_request()捕获网络请求
    前言page.expect_request()可以捕获网页上发出去的请求,当有多个请求时,可以根据请求url,请求方式判断。expect_request官方文档示例withpage.expect_request("http://example.com/resource")asfirst:page.get_by_text("triggerrequest").click()first_request=first.val......
  • FastAPI学习-21.response 参数-设置响应Cookies
    前言可以在 路径函数 中定义一个类型为 Response的参数,这样你就可以在这个临时响应对象中设置cookie了。response参数设置cookiesfromfastapiimportFastAPI,Responseapp=FastAPI()@app.post("/cookie-and-object/")defcreate_cookie(response:Response):res......