Questions tagged «cr.crypto-security»

密码学和信息安全性的理论方面。

3
整数分解问题比RSA分解难吗:?
这是来自math.stackexchange的交叉文章。 让FACT表示整数分解问题:给定找到素数整数使得p 我 ∈ Ñ,ê 我 ∈ Ñ,Ñ = Π ķ 我= 0 p ë 我我。n∈N,n∈N,n \in \mathbb{N},pi∈N,pi∈N,p_i \in \mathbb{N},ei∈N,ei∈N,e_i \in \mathbb{N},n=∏ki=0peii.n=∏i=0kpiei.n = \prod_{i=0}^{k} p_{i}^{e_i}. 让RSA表示因式分解问题的特殊情况,其中和是质数。也就是说,如果没有这样的因式分解,则给定素数或NONE。p ,q n p ,qn=pqn=pqn = pqp,qp,qp,qnnnp,qp,qp,q 显然,RSA是FACT的一个实例。FACT比RSA难吗?给定一个可以在多项式时间内求解RSA的预言机,是否可以将其用于在多项式时间内求解FACT? (非常感谢文学的指针。) 编辑1:添加了对计算能力的限制,即多项式时间。 编辑2:正如丹·布鲁姆利夫(Dan Brumleve)的回答所指出的那样,有一些论点支持和反对RSA比FACT更难(或更容易)。到目前为止,我发现了以下论文: D. Boneh和R. Venkatesan。破解RSA可能比分解更容易。1998年EUROCRYPT http://crypto.stanford.edu/~dabo/papers/no_rsa_red.pdf D. Brown:破解RSA可能和分解一样困难。Cryptology ePrint Archive,Report 205/380(2006)http://eprint.iacr.org/2005/380.pdf G. Leander和A. Rupp。关于通用环算法的RSA等价和因式分解。2006年ASIACRYPT http://www.iacr.org/archive/asiacrypt2006/42840239/42840239.pdf …

3
P中保理的后果
尚不知道分解是NP完全的。该问题询问因式分解为NP完全的后果。奇怪的是,没人问过因式分解在P中的后果(也许是因为这样的问题是微不足道的)。 所以我的问题是: P中分解因数的理论结果是什么?这样的事实将如何影响复杂性类的整体情况? P中的因式分解会带来哪些实际后果?请不要说银行交易可能处于危险之中,我已经知道这种微不足道的后果。

5
从RSA快速还原为SAT
斯科特·亚伦森(Scott Aaronson)今天的博客文章列出了有趣的,复杂的未解决问题/任务。特别引起我注意的是: 建立一个包含3SAT实例的公共库,其中包含尽可能少的变量和子句,如果解决,将产生值得注意的后果。(例如,对RSA分解挑战进行编码的实例。)研究此库上当前最佳的SAT解算器的性能。 这引发了我的问题:将RSA /分解问题减少到SAT的标准技术是什么?速度有多快?是否有这样的标准削减? 只是为了清楚起见,“快速”并不是指多项式时间。我想知道我们是否对缩减的复杂性有更严格的上限。例如,是否存在已知的立方还原?

4
可以使您确信这是公平的彩票
(很抱歉,这是众所周知的。)我想给代理之一提供一些商品,以便代理以概率获得该商品。是否有一个加密(或其他)工具,以便每个代理人(甚至每个观察者)都可以确信随机抽取确实是公平的?kkkjjjpipip_i

3
没有假设的密码学-寻求概述
假设且SAT的快速线性时间算法明天出现。突然,RSA不安全,我们的许多现代通信系统都被破坏了,我们需要重新考虑如何彼此保密。P=NPP=NPP = NP 问题:是否有一个好的单一参考(或简短清单),可以大范围地了解在没有难处理性假设的情况下加密货币(以及“安全”相关领域)可能发生的事情?这可以节省一天的文明,同时也可以很好地阅读。 讨论:我们现在研究的大多数加密任务(OWF,PRG,PKE)在世界(Impagliazzo 在有影响力的论文中被称为“ Algorithmica”的世界)中证明是不可能的,但仍有一些事情可行:与之交流一个一次性垫 ; 分布式秘密共享 ; 私人信息检索 ; 和其他一些好东西。(锁定框,实现遗忘转移的设备和量子状态等某些物理机制也可以派上用场。当然,对于可以看到哪些信息的人总是存在某种物理假设。)P=NPP=NPP = NP 可以区分信息理论安全性(对付计算上不受限制的对手)和“无条件”安全性(可能需要受约束的对手,但在没有未经证实的假设的情况下仍显示安全性)。我对信息理论案例最感兴趣。 首先,这是信息理论安全的一个参考书目(就我的观点而言,这是冗长而截然不同的)。


3
第二次原像攻击和碰撞攻击有什么区别?
维基百科将第二次原像攻击定义为: 给定固定消息m1,找到另一个消息m2,使hash(m2)= hash(m1)。 维基百科将碰撞攻击定义为: 找到两个任意不同的消息m1和m2,使hash(m1)= hash(m2)。 我可以看到的唯一区别是,在第二次原像攻击中,m1已经存在并且为攻击者所知。但是,这并不使我感到意义重大-最终目标仍然是找到两个产生相同哈希值的消息。 第二次原像攻击和碰撞攻击的执行方式有何本质区别?结果有什么不同? (顺便说一句,我无法正确标记该问题。我试图应用标签“密码学安全性映像前冲突”,但我的信誉不足。有人可以应用适当的标签吗?)

2
结识别作为工作证明
当前,比特币具有使用SHA256的工作量证明(PoW)系统。其他哈希函数使用工作量证明系统使用图形,部分哈希函数反转。 是否可以在打结理论中使用诸如打结识别之类的决策问题并将其转化为工作功能的证明?也有人做过吗?另外,当我们具有此工作量证明功能时,它将比当前正在计算的功能更有用吗?

1
在不显示值的情况下估计分布式节点之间的百分位数
此问题是从“交叉验证” 迁移而来的,因为可以在“理论计算机科学堆栈交换”上进行回答。 迁移 8年前。 我有一个非常独特的问题要解决,我希望这里的人可以让我对如何最好地解决它有所了解。 问题:假设在一组参与者之间共享N个号码的列表,使得没有一个参与者实际知道他们共享的任何号码。所有参与者都知道N(数字列表的大小)和列表上所有数字的总和,但仅是先验的。 通过一起工作,可以比较两个共享数字a和b,使参与者了解语句“ a <b”是否为真,但仅此而已。但是,这是一件极其昂贵的事情(阅读:完成单个比较可能要花费几秒钟,甚至是几分钟)。有关如何进行此操作的更多信息,请参见本文末尾。 最终,各方希望输出列表中哪些索引对应于列表中的“前K%”(最大的K%)共享数。当然,这可以通过排序或使用“前K个”选择算法来完成。但是,这些往往会使用大量比较,这是可以避免的。(这些是O(n log n)或O(n),具有相当大的隐藏常数。) 另一种选择是“猜测”数字X,其中(1-K)%小于X并且K%大于。然后,您可以将每个元素与X进行比较,看看有多少个元素较大,有多少个元素较小。如果您的猜测是错误的,请使用二进制搜索之类的方法进行修改,直到收敛到正确的解决方案为止。如果您的猜测是正确的,那么需要进行的比较少得多。 所以,我的问题是 仅给出N和总和,“预测” X的最佳方法是什么? 当然,这将取决于基础分布。对于不同的用例,基本的分布可能会有所不同,但将是已知的,因此,我对所有常见解决方案(正态,统一,指数,也许还有其他)的良好解决方案感兴趣。我也很想听听有关如何最好地进行“二元”搜索以最大程度减少步骤的建议(假设对基础分布有假设)。 附录:使用Shamir的秘密共享方案在参与者之间共享列表中的每个值。假设有M个参与者,并且列表的长度为N。那么,列表上的第i个数字由某个有限域F上阶次为M-1 的多项式表示的常数项是共享,则从F随机选择所有其他系数。然后,第j个参与者的份额为,fifif_i˚F 我(Ĵ )1 ≤ 我≤ Ñfifif_ifi(j)fi(j)f_i(j)1≤i≤N1≤i≤N1\leq i\leq N。鉴于此份额,参与者没有有关该号码的信息(从信息论的角度而言);实际上,没有适当的参与者子集可以结合知识来学习有关共享号码的任何信息。但是,使用复杂的安全多方计算技术,可以在不透露任何更多信息的情况下确定一个共享值是否小于另一个共享值。这种技术需要所有参与者的配合,这就是为什么这样做的成本如此之高,并且应该尽可能少地进行几次的原因。

6
课程:安全中的逻辑/正式方法
目前,我开设了一门小课程(在安全级别上为时两个小时的讲座),涉及安全中的逻辑方法,尽管标题“ 安全中的形式方法”可能更合适。它简要介绍了以下主题(以及相关的逻辑方法): 数字版权管理和政策执行(一般形式化,模态逻辑,通过自动机执行) 带有证明的代码和带有证明的认证(证明理论,逻辑系统,Curry-Howard同构,验证) 访问控制(非经典逻辑,证明理论) 堆栈检查(编程语言语义,上下文对等,双仿真) 当然,该课程有多个目标,其中一个目标是吸引潜在的研究生。 在未来几年中,该课程可能会扩展为常规课程,这将需要更多内容。鉴于这里的人的背景与我的背景完全不同,我想知道您将在此课程中包括哪些内容。

2
完全同态加密可以用于遗忘的代码执行吗?
前一阵子读完这个答案之后,我对完全同态加密产生了兴趣。看完Gentry的论文介绍后,我开始怀疑是否可以将他的加密方案用于第三段中定义的遗忘代码执行。 在完全同态加密方案中,我们通常对一些数据进行加密,然后将其发送到敌对环境中,在该环境中对数据进行某些功能的计算,然后将结果发送回(加密),而无需对手发现接收到的数据或函数的结果是。 在执行遗忘的代码的过程中,我的意思是我们对一段旨在解决某些问题的代码进行加密,并将其发送到敌对环境。对手想要使用来解决,但我们不希望他知道工作原理。如果他有一个输入为,他可以加密,然后使用(在某些加密方案)与,然后返回(未加密的)输出(的溶液为输入PCCCPPPP C I P I C I O P ICCCPPPCCCIIIPPPIIICCCIIIOOOPPPIII)。加密方案可确保对手永远不会发现这段代码是如何工作的,即对他而言,它就像甲骨文一样工作。 这种加密方案的主要实际用途(我能想到)将使盗版更加困难,甚至无法实现。 我认为使用完全同态的加密方案可能实现此目的的原因是,因为我们可以对加密数据执行任意电路,特别是通用图灵机。然后,我们可以像对待数据一样对代码进行加密,然后将通用图灵机的电路用于此加密数据上以执行代码。 我在这里提出一个问题,是因为我不知道这个想法是否有用:我对Gentry的论文介绍不多,而且我对密码学的知识是有限的。另外,我不知道是否存在一个经常使用的遗忘代码执行术语:我尝试在Google上搜索该想法,但不知道什么都找不到合适的术语。 我可以想到有多个问题,这些问题可能会导致此方法出现问题。首先,如果我们使用未经修改的完全同态加密,则将对计算结果()进行加密。因此,对于希望使用您的代码来解决的对手将毫无用处。虽然这对于例如云计算仍然可能有用,但这不是我想要实现的目标。POOOPPP 其次,因为我们使用的是电路而不是任意的图灵机,所以我们不能使用任意数量的内存:我们只能使用预定数量的内存。这意味着,如果我们要以这种方式运行程序,则其内存占用量将始终相同,即峰值内存使用率。 最后,所涉及的常数几乎肯定会杀死这种系统的任何实际使用,但是我认为这个想法仍然很有趣。

6
安全和密码学的理论与实践之间的区别?
安全和密码学的理论和实践之间有什么有趣的区别? 当然,最有趣的例子是根据实践经验为理论研究提供新途径的例子。 答案可能包括(但不限于): 理论表明某些事情是可能的,但从未在实践中使用的示例 在理论上认为某些安全的东西在实践中不安全的例子 在广泛的实际使用中的事例背后没有什么理论依据。 ... 警告 如果您的答案本质上是“理论是关于无症状的,而实践不是”,那么该理论应该是真正的中心,或者答案应包括一些具体示例,这些示例在实际情况下的实际经验不同于基于期望的期望。在理论上。 我知道一个例子:安全电路评估。从理论上讲非常强大,但实际上太复杂了,因为这将涉及将您的代码,将其展开到电路中,然后一次对每个门进行安全评估。

2
任何计算挑战都可以转化为工作量证明吗?
加密货币挖矿的看似毫无意义的问题提出了有用的选择的问题,请参阅关于比特币,CST和MO的这些问题。我想知道是否存在一种算法,可以将几乎任何计算挑战数学(可以有效验证其解决方案)转换为另一个这样的挑战(用于工作量证明),从而 Ψ (C ^)CC\mathcal CΨ (Ç)Ψ(C)\Psi(\mathcal C) 函数使用某些(公共)随机序列随机化。[RΨΨ\Psi[Rrr 解决是典型地硬如解决。Ψ (Ç)Ψ(C)\Psi(\mathcal C)CC\mathcal C 如果溶液被发现为,然后溶液可有效地计算为原始的询问。Ψ (Ç)Ψ - 1(X )C ^XxxΨ (Ç)Ψ(C)\Psi(\mathcal C)Ψ− 1(x )Ψ−1(x)\Psi^{-1}(x)CC\mathcal C 知道的解决方案无助于找到的解决方案。 Ψ (C ^)CC\mathcal CΨ (Ç)Ψ(C)\Psi(\mathcal C) \;\:\: 4'(更新)。正如Noah在评论中指出的那样,应加强先前的条件,以要求预处理在解决也不应提供任何优势。 Ψ (C ^)CC\mathcal CΨ (Ç)Ψ(C)\Psi(\mathcal C) 这最后一个条件是必需的,以使没有人能因为他们知道的解而处于有利位置。使用此方法,人们可以提交他们想要解决的计算问题,而中央机构可以选择一些值得解决的问题(例如查找外星人与破解密码)。请注意,解决问题甚至需要一个星期的时间似乎也不是问题(我想那些外星人藏起来可能不太好;),因为这可能会为解决方案带来更大的回报。无论如何,这些主题与我的理论问题的解决无关,但是我当然很乐意在论坛上的评论中讨论它们。CC\mathcal C 可能的解决方案如下:将映射到,即解决和其他一些计算困难的挑战。这样做的一个问题是,知道的解决方案确实会使解决变得容易一些(难易程度取决于的难度)。另一个问题是比变得更加困难。Ç(ÇΨΨ\PsiCC\mathcal CÇ Ç Ψ (C ^)ħ 甲小号ħ - [R Ψ …

4
目前是否有关于随机抽取器实现的研究?
是否进行过实施随机性提取器构造的研究? 提取器证明似乎利用了Big-Oh,留下了大的隐藏常量的可能性,从而使程序实现可能不切实际。 一些背景:我对使用随机性提取器作为蒙特卡罗模拟中使用的(可证明的)随机数的快速来源感兴趣。我们(ETHZ计算物理小组)从量子随机数生成器中偏向了高熵源,我们希望从中提取随机性。先前的一名学生尝试实施Trevisan构造并遇到了空间复杂性问题。除了那个学生以外,我还没有找到任何尝试实现提取器的人的参考。 注意:我是CS本科生,他是理论CS和随机性提取器领域的新手。

6
并行伪随机数生成器
这个问题主要与一个实际的软件工程问题有关,但是我很想知道理论家是否可以对此提供更多的见解。 简而言之,我有一个使用伪随机数生成器的蒙特卡洛模拟,我想对其进行并行化,以便有1000台计算机并行运行同一模拟。因此,我需要1000个独立的伪随机数流。 我们可以拥有具有以下属性的1000个并行流吗?在此,XXX应该是一个非常著名且经过广泛研究的PRNG,具有各种良好的理论和经验特性。 事实证明,这些流与我仅使用XXX并将生成的流拆分XXX为1000个流的情况一样好。 在任何流中生成下一个数字(几乎)与使用生成下一个数字一样快XXX。 换句话说:我们可以“免费”获得多个独立的流吗? 当然,如果我们仅使用XXX,总是丢弃999个数字并选择1,那么我们当然将拥有属性1,但是运行时间将损失1000倍。 一个简单的想法是使用 1000个副本XXX,并带有种子1、2,...,1000。这当然会很快,但是如果流具有良好的统计特性,则并不明显。 经过一番谷歌搜索后,我发现了以下内容: 该SPRNG库似乎是专出于这样的目的,它支持多种的PRNG。 如今,梅森捻线机似乎是一种流行的PRNG,我发现了一些引用,该引用可以并行产生多个流。 但是所有这一切都离我自己的研究领域很远,以至于我无法弄清楚什么是最先进的技术,以及哪种结构不仅在理论上而且在实践上都行之有效。 一些澄清:我不需要任何类型的密码属性;这是用于科学计算。我将需要数十亿个随机数,因此我们可以忘记周期任何生成器&lt;232&lt;232< 2^{32}。 编辑:我不能使用真正的RNG;我需要确定性PRNG。首先,它在调试方面有很大帮助,并使所有内容都可重复。其次,它使我能够利用我可以使用多次通过模型的事实非常有效地进行中值查找(请参阅此问题)。 编辑2:有一个密切相关的问题@ StackOverflow:用于集群环境的伪随机数生成器。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.