随笔分类 - 1.首页原创精华区
摘要:私钥分组加密 上图的证明中,r(j)两两不同的概率计算是关键,下面给出详细过程 另外两个分布统计的不同意味着计算可分辨(反之则计算不可分辨),亦即r(j)至少两个相同的概率。 Construction 5.3.9一次只能加密与密钥等长的明文,如果要加密更长的明文,怎么办?一个简单直接 的方法是将明文
阅读全文
摘要:定义 Berlekamp分解算法 AES有限域 不可约性证明 非本原性验证 找出本原元 不可约多项式个数 线性移位寄存器m序列 根据参考文献1知线生移位寄存器产生m序列的充要条件是特征多项式f(x)为本原多项式。而确立有限域上的本原多项式,主要有两种方法: 一种方法是根据Fq上所有次数为n的本原多项
阅读全文
摘要:【适用前提】大整数N=pq的素因子p<q<2p,解密指数d<(1/3)N1/4 【攻击方法】 1)用欧几里得算法计算e/N的各个渐近分数ki/di,i>=1,直至di>=(1/3)N1/4,记录此时的i为m。令i=1 2)计算T=(e*di-1)/ki,若T不为整数则转到4),否则转到3) 3)解方
阅读全文
摘要:群结构 定理1:若G为一个循环群,则G内每个满足ord(α)=s的元素α都是拥有s个元素的循环子群的生成元 证明: 定理2:若G为一个阶为n的有限循环群,g为对应的生成元,则对整除n的每个整数k,G都存在一个唯一的阶为k的循环子群H。 这个子群是由gn/k生成的。H是由G内满足条件αk=1的元素组成
阅读全文
摘要:混合线性同余发生器(MLCG) Xn ≡ αXn-1 + c mod m 0<X0, α, c<m,X0为种子,n=1、2、3... 定理 如果下列3个条件都满足,则 MLCG达到满周期(即周期d=m) (1) (c, m)=1,即 c、m互素 (2) 对 m的任一素因子p,有α≡1 mod p (
阅读全文
摘要:【定义】设整数N=P×Q,P与Q皆为素数,如果P≡Q≡3 (mod4),则N为一个Blum(布卢姆)数 【定理】设N为Blum数,N ∤ d,若同余方程x2≡d (mod N)有解,则d的平方根中有一半的Jacobi符号为1,另一半Jacobi符号为-1;且仅有一个平方根为模N的二次剩余 证明: 【
阅读全文
摘要:经典的复杂性关系 P是多项式时间确定型图灵机可识别的语言类,NP是多项式时间非确定型图灵机可识别的语言类,NPC表示NP完全问题类,coNP表示NP的补,coNPC表示NPC的补。确定型图灵机是一种从不选择移动的特殊的非确定型图灵机,故自然有P属于NP coNP、coNPC的定义之集合表述 上面顶部
阅读全文
摘要:【定理】设多项式,其中q是某个素数的方幂,Fq为有限域,则 若是置换多项式,则 【证明】
阅读全文
摘要:周知内联是为了消除函数调用的代价,即四大指令序列:调用前序列、被调者起始序列、被调者收尾序列、返回后序列。它们通常对应到体系结构调用者保存/恢复寄存器集合与被调者保存/恢复寄存器集合之约束。这个本质也是内联的前提。试问如果有某体系结构比如S,它任意深度的函数调用代价几乎为零,那么显然内联是没意义没必
阅读全文
摘要:谈两个问题:高性能与安全性 先谈高性能:这里指代码实现层面(非数学优化层面),使用寄存器优化,即主密钥/轮密钥、敏感数据比如中间/临时变量必须存于寄存器,明文/密文放在内存(若有够用的寄存器则放寄存器),主密钥用特权寄存器(为支持长期存储,比如调试寄存器、MSR寄存器),轮密钥和敏感数据用通用寄存器
阅读全文
摘要:1. 区间图:用于局部寄存器分配,基本块内的每个活跃范围看作一个区间(最早定义位置+最新使用位置),所有活跃范围构成区间图。区间图是一种不精确的冲突图(因为高估了活跃范围的范围而导致伪冲突,比如认为一个复制操作连接的或两个源相同目标不同的复制操作产生重叠的两个活跃范围冲突,但实际没有冲突),优势在
阅读全文
摘要:有单向、双向、三向3种认证方式,前两者必须检查时间戳以防重放攻击,单向因为只有一个消息传递,如果仅靠一次性随机数是无法判断消息是否重放。双向有两个消息传递,一来一回,仅靠一次性随机数只能检测到发响应那方的重放。最后者则不必,可仅通过一次性随机数检测自己是否遭遇重放攻击,因为接收第二个消息的那方,通过
阅读全文
摘要:1. 对于RSA,给定大整数n分解的一对素因子p和q,p或q是否素数决定不了安全性,但决定算法的正确性,也就是说p或q不能为合数,而安全性取决于n的位数及p、q的距离,n越大则难于素因子分解(因为素数测试是一个P问题,而因子分解是一个NP问题,其耗时是关于n的指数),|p - q|要大是为抵抗一种特
阅读全文
摘要:Linux共享库库函数挂钩主流两种方法。一是替换函数对应的GOT/PLT条目,GOT/PLT原理类似Windows的IAT;二是inline挂钩,即替换函数序言的几个字节(x86是5或7字节)为jmp/call,若发现稍远处有jmp或call(前提在入口基本块内,若不在入口基本块内要修改分支控制条件
阅读全文
摘要:周知编译原理龙书阐述的基本块指令调度算法,它所使用的空的资源预约表RTD与每个指令的资源预约表RT,可以看作二维矩阵,行表示时钟周期、列表示cpu资源,其定位的元素值1表示占用/预约,0表示空闲/非预约。前者是随周期递增而动态扩大的矩阵,后者是固定尺寸(维数)的矩阵(指令花费周期与每周期预约资源皆已
阅读全文
摘要:曾因朋友问到监控,致使我探究了kretprobe的实现,想到编译中的尾调用优化,作个小结1. kretprobe_trampoline_holder该跳转函数无参是必须的或说最好的通用设计,因为替换返回地址是非正常程序流程,即被探测函数的调用者无感知,不存在为跳转函数准备入参。若要设计传参且只读,
阅读全文
摘要:有理数域的本原多项式与有限域的本原多项式定义不同,前者不要求不可约(由高斯引理知两个本原多项式的乘积还是本原),后者则必须不可约(确保生成的有限域其每个元素有逆元)。aes基于有限域F{0,1}设计,故使用的模8次多项式不可约P(x)=x^8+x^4+x^3+x+1,但不是本原多项式,因为它的阶是5
阅读全文
摘要:1. 若DFA D是用子集构造法从NFA N构造出来的,则L(D)=L(N)2. 一个语言L被某个DFA接受,当且仅当被某个NFA接受3. 一个语言L被某个£-NFA接受,当且仅当被某个DFA接受4. 若对于某个DFA A,L=L(A),则存在一个正则表达式R使得L=L(R)5. 每一个用正则表达式
阅读全文
摘要:因为一个整数p,若检测为合数,这永远是真命题;而检测为素数,这命题只以较大概率成立。 可构造一种NP检测算法,步骤如下: 1. 猜测p(位长度n)的因子列表{p1,p2,…pi},这是非确定的,每个分支耗时O(n) 2. 验证p1*p2*…pi?=p-1,耗时不超过O(n^2) 3. 若各因子乘积等
阅读全文

浙公网安备 33010602011771号