24.5论文笔记10:Blockchain-Based Secure and Lightweight Authentication for Interne

K-Time Modifiable and Epoch-Based Redactable Blockchain | IEEE Journals & Magazine | IEEE Xplore

21年8月发表在CCF A类期刊 IEEE TIFS

参考了最新论文笔记(+16):K-Time Modifiable and Epoch-Based Redactable Blockchain / TIFS 2021-CSDN博客

一.引言

        作为一个不可变的、只能追加的分布式账本,区块链允许参与者在一个不可信的生态系统中达成共识。

        不可变性是区块链的一个特性,但随着数据的重要性不断增加和 “被遗忘权”的数据监管等要求的出现,人们需要可修改的区块链。

        为了解决这个问题,可编辑区块链已经被引入,以受控的方式放宽不可变性。

        然而,一旦参与者被授权,他就可以重写任何内容,且恶意行为没有惩罚。所以本文引入了一个新概念,称为基于 k 次可修改和基于时期的可编辑区块链 (KERB),其中包含了对重写特权的控制和对恶意行为的惩罚。

下面是相关方案的对比:

如表1所示:

效率是可修改的区块链实用性的一个重要标准。

[24][25]要为授权用户维护秘密通道以便发送陷门授予重写特权;

[25]采用的ABE会产生巨大的开销,使得密文的空间复杂度与相关策略成正比,解密陷门的计算成本与每个密钥中指定的属性成正比。

[26]使用投票机制,可能存在矿工随机或跳过投票以追求效率;(通信和存储开销)

且三个方案没有考虑防止可能的恶意行为的策略,也缺乏惩罚恶意行为的方法

[25]面临串通攻击,拥有长期陷门的未授权编辑者和拥有短期陷门的交易拥有者勾结,会导致未满足属性策略的编辑者发起重写。

主要贡献如下:

1k次修改器:为减少恶意行为,修改权限被CA定义为最多限制k次,若发生超过k次的交易修改时,CA处理罚款。

使用一次多项式的秘密共享方案(计算成本)和数字签名实现(受到双认证签名与Schnorr签名的启发

2)基于时期的编辑:为惩罚恶意行为,每个修改者需定时存保证金。在授权期限内,若发生恶意行为,CA可以使用自身密钥和修改者的密钥提取存款。

受可撤销代理签名的启发

3)强大的安全模型:能够抵挡交易所有者和编辑者的合谋攻击。本文使用更通用的变色龙哈希,没有陷门正确性检查的需求;使用数字签名来支持重写特权,而不是加密机制,以获得最佳性能,适用于大型环境,成本小。

如表2

本文方案实现了k次修改 基于时期 惩罚措施 问责 透明度 抗共谋

二.预备知识

首先是数字签名

签名者用自己的私钥进行签名,然后任何人都可以用他的公钥进行认证,具有不可伪造和不可否认性。

然后是变色龙哈希,拥有变色龙哈希陷门的用户可以高效地计算出变色龙哈希碰撞;
对于没有陷门的其他用户,通过确保他们几乎无法找到有效的变色龙哈希碰撞来保持安全。

其包括五个算法
首先是公共参数生成:给定安全参数 λ,算法输出公共参数
P P。假定 P P 被作为所有其他算法的隐式输入。
密钥生成:得到私钥
sk 和公钥 pk
哈希生成:将公钥
pk 和消息 m 作为输入,算法输出一个变色龙哈希值 h 和一个随机值 r
哈希验证:将公钥
pk、消息 m、哈希值 h 和随机值 r 作为输入,并输出一个决策 b
如果
h 有效,则 b 等于 1,否则为 0
消息修改:输入私钥
sk、消息m、新消息m ′、哈希值 h 和随机值 r。然后输出新的随机值 r ′

三.系统架构

KERB包含四类参与者:

1CA:代表区块链管理者,主要负责初始化系统,并广播参数,检查修改者时间锁定存款的有效性,并颁发k次修改特权,若修改者违反k次修改特权,CA可在到期前提取存款。

2)修改者:可以进行时间锁定存款的链参与者,具有CA颁发的修改特权,若发生任何不当行为,将失去押金。

3)用户:是链的参与者,生成不能修改的不可变交易,生成允许修改者编辑的可编辑交易。

4)矿工:验证和添加交易的链参与者,负责维护区块。

四.协议构造

下面是具体的构造细节:

1)系统初始化:

如下图所示,细分为系统设置,修改者设置和用户设置。

系统设置:CA运行KERB.Setup(1 λ )算法,生成公共参数pp、主密钥msk和主公钥mpk

修改者设置:每个修改者从CA收到公共参数后,运行KERB.Setup m​ (pp,n)算法,生成sk m​ ,pk m​ n是修改者选定的最大编辑次数

修改者使用由私钥skm定义的签名密钥skm‘进行时间锁定存款,存款可以在到期时间t前由CA和修改人签名后使用。然后,修改者将pk m​发送给CA

CA指定修改操作次数k和修改者的属性集S运行token密钥生成算法KERB.TKGen()生成令牌密钥tk,并将tk发送给修改者。

到期日期后,修改者可以通过提取新的到期日期进行周期性发行其重写特权。

用户设置:每个用户从CA收到公共参数后,运行KERB.Setup u​ (pp)算法,生成sk u​ ,pk u​

如下图所示,每个用户都允许创建两种类型的交易,可编辑交易可以由指定的修改者修改。

不可变交易:每个用户都可以像传统不可变区块链一样创建不可变交易。用户使用自己的密钥sk u

 和传统哈希函数生成交易tx及其签名σ tx

然后,用户广播公钥pk u​、交易tx和签名σ tx到区块链生态系统中。

可编辑交易:每个用户都可以通过运行散列算法KERB.Hash()来创建可编辑的交易,以主公钥mpk,秘密密钥sku,包括事务标识ID及其内容txID的消息,以及访问结构A作为输入 生成哈希值h,随机性r和签名σID

用户将公钥pk u​ 、交易(ID,tx ID​ )和签名(h,r,σ ID​ )发送到区块链生态系统。

交易重写: 如果编辑者的属性集满足访问结构A,就可以调用编辑算法以主公钥mpk,秘密密钥skm,包含事务标识ID及其内容txID的消息,哈希值h,随机性r,签名σID

以及包括事务标识ID及其内容txID‘的新消息作为输入,并输出随机性r’和签名σID‘。

交易验证:

如下图所示,区块链生态系统广播了两种类型的交易。

因此,也有两种类型的验证,不可变交易的验证和可编辑交易的验证。

不可变交易验证: 在收到一个与用户公钥pk u​ 、交易tx和签名σ tx相关联的不可变交易后,

矿工通过运行不可变区块链验证过程,若交易有效则将其附加到一个新区块中,否则拒绝。

可编辑交易验证:在接收到一个可编辑交易后,矿工通过运行验证算法Verity()来验证交易。

以主公钥mpk,公钥pk,包括事务标识ID及其内容txID的消息,哈希值h,随机性r,签名σID和当前时间戳t‘作为输入,

pk是用户公钥pku(如果消息未被编辑)或与令牌密钥(pkupkmtk)(如果消息已被编辑)隐式相关的用户和修改者的公钥。

若交易有效,矿工将重写该交易的本地副本,否则拒绝。

其中将令牌tk中的到期时间戳t当前时间戳t‘相对比,验证是否到期,如果已到期,则编辑失败。

恶意惩罚:如下图所示,这个阶段包括两个子阶段,签名密钥提取和货币惩罚。

签名密钥提取:由于每次编辑算法生成签名会用到编辑者密钥的一个参数,当超过k次或者编辑冲突,在提取算法中可将该参数抵消。多项式中的矿工则允许提取算法KERB.Ex()

ca的主公钥、新旧(索引i、交易ID、随机值、访问消息A)、新旧签名作为输入。

去获取秘密签名密钥sk m ′ ​

矿工发送秘密签名密钥sk m ′ ​ 和矿工公钥pk miner​ CA

货币惩罚:CA接收到参数后,生成一个交易来提取时间锁定的存款,并将奖励发送给矿工。注意,CA拥有签名密钥sk ca(在主公钥m pk中定义)和矿私密签名密钥sk m ′ ​在用户秘密密钥skm中定义

五.安全性分析

参考

最新论文笔记(+16):K-Time Modifiable and Epoch-Based Redactable Blockchain / TIFS 2021-CSDN博客

六.总结

        实验性能表明,无论涉及多少个属性和数据重写次数,系统设置、用户设置、令牌密钥生成、哈希、适应、验证和密钥提取几乎都是稳定的。原因在于应用签名方案来验证重写操作,而不是应用加密机制来封存变色龙哈希陷阱门,修改者设置随着属性数量呈线性增长。因为属性是以字符串集合的形式存在的,这个集合的大小随着用户属性的增加而增加。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值