首页 > 其他分享 >Z3首次运用

Z3首次运用

时间:2022-12-30 16:46:34浏览次数:29  
标签:首次 index 42 flag range 运用 Z3 condition out

虽然模仿痕迹较重,但是感觉抓住了精髓
from z3 import *
Datacmp=[0x66,0x4e,0xa9,0xfd,0x3c,0x55,
0x90,0x24,0x57,0xf6,0x5d,0xb1,
0x1,0x20,0x81,0xfd,0x36,0xa9,
0x1f,0xa1,0xe,0xd,0x80,0x8f,
0xce,0x77,0xe8,0x23,0x9e,0x27,
0x60,0x2f,0xa5,0xcf,0x1b,0xbd,
0x32,0xdb,0xff,0x28,0xa4,0x5d]
flag=[BitVec('flag[%2d]' % i,8)for i in range (64)]
out=[0]64
f=Solver()
x=0
y=0
index=0
for i in range (7):
for j in range(6):
index=6
i+j
x=flag[index]
y=flag[index]
x=~x
x=x&((2+j)i)
y=(y&(~((2+j)
i)))|x
index=7j+i
out[index]=y
for i in range (42):
if(i%2!=1):
out[i]=(out[i]+out[i-1])%256
else:
out[i]=(out[i]
0x6b)%256
for i in range(42):
f.add(Datacmp[i] == out[i])
while(f.check() == sat):
condition = []
m = f.model()
p=""
for i in range(42):
p+=chr(int("%s" % (m[flag[i]])))
condition.append(flag[i]!=int("%s" % (m[flag[i]])))
print(p)
f.add(Or(condition))

标签:首次,index,42,flag,range,运用,Z3,condition,out
From: https://www.cnblogs.com/errorZX/p/17015235.html

相关文章

  • 超实用!帮你从零开始学会运用高格…
    三分法和黄金比例目的:主体放在这些在线,又或线的交点上,构图看起来就会较舒服。​​​​​​​​有好多同学觉得​​黄金比例​​有点虚,其实可能是没遇到一篇足够简单实用......
  • 运用Python分析公募基金【量化投资】
    运用Python分析公募基金1、背景学校财富管理课程的期末论文是分析中国各种投资标的的收益,笔者分配到的研究的细分类别为:通过大集合转公募基金的方式,成立的公募基金的收益分......
  • 2022-12-28 走势生长之不测而测 看11月30号市场连线,缠论的终极运用
    1.三个基本概念(1)级别:可完成的按照级别次序为:笔,线段,大线段,走势类型(按照中枢大小进行比较)(2)背驰:关注线段背驰和中枢背驰的不同        (3)多头空头萌发:本......
  • 运用ArrayList编写简单的图书管理系统
    图书管理系统程序主入口publicclassSystemEntry{publicstaticvoidmain(String[]args){BookOperatoroperator=newBookOperator();S......
  • Git bisect 命令帮助定位首次引入错误的提交
    Git的bisect工具通过快速识别坏的提交,节省了时间和精力。你是不是有过这样的经历:发现代码中有错误bug,但不知道这个错误是什么时候引入的。这有可能是因为,某个人提交了一......
  • CLR基本原理和如何运用于GOCW
      GOCW的重点和难点就在于Csharp调用OpenCV,其中的桥梁就是CLR,当然我们也有其他方法,但是CLR是一个比较新的、比较可靠的、关键是能用的桥梁。这里关于CLR的基本原理知识、......
  • 语言文字运用
    这里是语言文字运用呢qwq我要从现在开始复习,至考方休。我将不去浪费时间,不熬夜,不闲聊。我将不耽玩乐,不猎女色。我将悬梁刺股,不死于斯。我是图书馆的雕像,自习室的幽灵。我......
  • openmp在图像处理上面的运用
    //openmptest的测试程序//#include"stdafx.h"voidTest(intn){for(inti=0;i<10000;i++){intj=0;......
  • 傅里叶变换在机器视觉的运用
    傅里叶变换在机器视觉的运用这样一幅图像1、是如何生成的?2、体现了什么?3、如何处理并用来增强原始图片数据?一、这样的图像是如何生......
  • 【Flutter】packages思维以及使用Java添加Android平台特定的实现在Flutter框架里的体
    packages思维即使软件包未在Pub。对于未用于公共发布的特殊插件或尚未准备好发布的软件包,可以使用其他依赖选项:dependencies:flutter:sdk:flutter路径依赖性:Fl......