论文名称:Construction of rotation symmetric Boolean functions with optimal algebraic immunity and high nonlinearity

1.majority function

2.Preliminaries

3 Compositions of an integer k

4 Construction of RSBFs on odd number of variables





5.SageMath程序实现

from sage.crypto.boolean_function import BooleanFunction
k=6
n=2*k+1
t=0
top=0
Sum=0
s=[None]*n
set=[]
#整数分解
def dfs():global Sum,top,t,k,s,setif Sum == k:if s[0] != 1:#构造的布尔函数要求开头不为1set.append(s[0:top])returnif Sum > k:returnfor i in range(1,k+1):Sum+=is[top]=itop=top+1dfs()Sum-=itop=top-1s[top]=i
dfs()
#print(set)
#求集合T
T=[]
for i in range(len(set)):tmp=[]for j in set[i]:for k in range(j):tmp.append(1)tmp.append(0)for k in range(n - len(tmp)):tmp.append(0 )T.append(tmp)
#print(T)
#print(len(T))
#求集合U
U=[]
for i in range(len(set)):k1=set[i][0]tmp=[0]*(n-k1)tmp=tmp+[1]*(k1-1)+[0]for j in range(n):tmp[j]=(tmp[j]+T[i][j])%2U.append(tmp)
#print(U)
#构造择多函数
f=[0]*(2^n)
for i in range(2^n):tmp=list(str('{0:b}'.format(i)).rjust(n,'0'))listkey=[int(x) for x in tmp ]wt=0for j in listkey:if j==0:wt=wt+1if wt >= ((n-1)/2+1):f[i]=1TU=T+U
supp=[]
for Set in TU:for j in range(0,n):tmp=Set[j:]+Set[:j]index=0for k in range(len(tmp)):if tmp[k]==1:index=index+2^(n-k-1)supp.append(index)
for i in supp:f[i]=(f[i]+1)%2B=BooleanFunction(f)
deg=0
ANF=str(B.algebraic_normal_form()).split("+")
for i in range(len(ANF)):count=0for j in range(len(ANF[i])):if ANF[i][j]=="x":count=count+1if count>deg:deg=count
#将真值表写入文件,使用其他程序测试函数抵抗快速代数攻击的能力
filename='truth_table.txt'
with open(filename,'w') as fw:fw.writelines(str(f))

DCC_2012_Sihong Su . Xiaohu Tang rotation symmetric boolean functions相关推荐

  1. 读《Evolving Algebraic Constructions for Designing Bent Boolean Functions》

    Picek, S., Jakobovic, D.: Evolving algebraic constructions for designing bent Boolean functions. In: ...

  2. Reed-Muller码 (RM码):RM码的布尔函数(Boolean Functions)表示

    Reed-Muller码 (RM码) 可依赖布尔函数(Boolean Functions)进行定义. 给定RM码码长n=2mn=2^mn=2m,那么需要v1,⋯,vmv_1, \cdots, v_mv ...

  3. signature=b93e4b2d4026f44a8795ac6d5857e863,Feebly secure cryptographic primitives

    1. E. Allender, "Circuit complexity before the dawn of the new millennium," in Proceedings ...

  4. CVPR 2011 全部论文标题和摘要

    CVPR 2011 Tian, Yuandong; Narasimhan, Srinivasa G.; , ■Rectification and 3D reconstruction of curved ...

  5. 谷歌2017面经题集

    发个Google onsite 面经给需要的人. round 1: 国人大哥, 出了道 merge N 个sorted element list的题, 要写成Generic的形式. 第二题是leetc ...

  6. Android 禁用电源键音量键与模拟

    /base/services/core/java/com/android/server/policy/PhoneWindowManager.java 模拟 在PhoneWindowManager中注册 ...

  7. 计算机编程的艺术:The Art of Computer Programming

    The Art of Computer Programming (TAOCP) The Art of Computer Programming 第一卷基本算法原文pdf:http://broiler. ...

  8. NIST 网络安全相关标准 美国 (简单整理)

    系列 编号 英文名 中文名 状态 时间 ITL Bulleti Security Considerations for Exchanging Files Over the Internet 通过Int ...

  9. 【转】图论与组合优化2002年的发展

      http://www.sciencenet.cn/bbs/showpost.aspx?id=54797 图论与组合蓝皮书 图论与组合优化2002年的发展 (中国运筹学会图论与组合优化专业学术委员会 ...

最新文章

  1. mysql 高效分页查询_PostgreSQL、MySQL高效分页方法探讨
  2. mac book file management system
  3. java下标运算符_《Java从小白到大牛精简版》之第6章 运算符(下)
  4. 汇编学习笔记(3)-80x86指令集
  5. HTML学习二_HTML常用的行级标签,常用实体字符及表单标签
  6. 受控组件和非受控组件
  7. 高通芯片曾被发现一重大漏洞 影响骁龙845等30多款芯片
  8. Anaconda使用pyinstaller打包exe程序体积过大
  9. C#编码规范2[转]
  10. 在Java中从字符串中删除空格
  11. caffe的python接口学习(7):绘制loss和accuracy曲线
  12. SPI TFT液晶屏与Arduino Uno 连接
  13. 计算机论文中期考核报告,计算机与人工智能学院硕士研究生中期考核办法
  14. mysql单数据库多硬盘配置_MySQL 使用mysqld_multi部署单机多实例详细过程
  15. 基本流水线与记分牌算法和Tomasulo算法
  16. Excel之match index 和vlookup函数 和双条件查找匹配
  17. Chrome浏览器通过EasyPlayer播放多路flv视频流后浏览器崩溃是什么原因?
  18. 基于51单片机的三角波信号发生器设计
  19. 文档服务器加密,远程文件服务器文件加密攻略(一)
  20. 工业机器人就业方向如何?

热门文章

  1. iOS Core Bluetooth_3 用作中央设备的常用方法(1/2)[swift实现]
  2. 选购电脑cpu 酷睿 区别 GPU选择
  3. LaTeX排版小工具
  4. 阿俊的花(天真版本)
  5. EDM营销存在的六大问题
  6. 10款超级优雅的Go语言开发工具
  7. 计算机专业毕业自我鉴定800字,计算机专业毕业自我鉴定范文
  8. Android QQ空间(Apad)项目总结(三)---应用UI框架的搭建!!!
  9. 算法基础:4115:鸣人和佐助--广度优先搜索
  10. 从游戏中理解Java特性,我悟了!