秘密共享方案-中国剩余定理

本文介绍了一个基于中国剩余定理的秘密共享方案,该方案将秘密分割成多个子秘密,要求至少选择一定数量的子秘密才能恢复原始秘密。内容包括方案设计背景、原理、算法步骤以及C代码实现,特别指出选取素数作为模数以确保安全性,并提供了测试与注意事项。
摘要由CSDN通过智能技术生成

题目

一个秘密?,被分割成?个子秘密(??,??),从?个子秘密(??,??)中任意选择大于等于?个,能够恢复出秘密?,少于t个则不能恢复出秘密?。

环境

Windows10,MinGW-W64-builds-4.3.5,miracl 7.0.1

方案设计

背景

中国剩余定理

原理

  1. (?,?)门限,一个秘密?,被分割成?个子秘密 (??,??)
    对于某个秘密 ?,计算

{ k 1 ≡ k ( m o d   d 1 ) k 2 ≡ k ( m o d   d 2 ) k n ≡ k ( m o d   d k ) \begin{cases} k_1 ≡ k (mod \, d1) \\ k_2≡ k (mod \, d2)\\\\\\ k_n ≡ k (mod \, dk) \end{cases} k1k(modd1)k2k(modd2)knk(moddk)则子秘密为 (??,??)
要求一: 选择?个整数??,??,⋯,??,满足
(1)?? < ?? < ⋯ < ??
(2) (??,??) = ?,? ≠ ?;
(3)? = ??×?? ×⋯×??
? = ??−?+? ×??−?+? ×⋯×??,有? > ?
要求二: ? > ? > ?

  1. ?个子秘密中任意选择?个,(???,???), (???,???),⋯, (???,???),恢复出秘密 ?,计算 { k i 1 ≡ k ( m o d   d i 1 ) k i 2 ≡ k (
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值