• 2024-07-02CS253 Laboratory session
    CS253 Laboratorysession4Part 1: Disassembling code, going backwards, converting an executable back to Assembly Language.Preamble: Remember that whatever language you are using ultimately it runs as Machine Code onthe processor
  • 2024-07-02【openzeppelin学习系列】ERC20
    openzeppelin学习系列文章提示:本文是我在学习智能合约开发过程中的一些思考和总结。在这个复杂且不断发展的领域中,可能存在一些疏漏或不准确之处。我非常欢迎和鼓励大家提出意见和建议,让我们可以共同讨论、纠正错误,并提高我们对区块链技术和智能合约的理解与掌握。希望通
  • 2024-07-01DApp设计与开发 课程笔记(四):NFT交易市场合约
    笔记对应课程内容为成都信息工程大学区块链产业学院老师梁培利的DApp设计与开发10-13课笔记中提到的名词不做过多解释不懂就搜!开发准备:编辑IDE环境:Vscode+Hardhat调试:RemixERC标准智能合约生成巫师:https://docs.openzeppelin.com/contracts/5.x/wizard动手学Windo
  • 2024-07-01F407在RAM中调试
    在RAM中调试代码一.软硬件操作硬件方面需要先修改BOOT0和BOOT1的引脚的高低电平。SRAM运行模式BOOT0和BOOT1都是高电平。软件方面:1.需要先取消勾选UseMemoryLayoutfromTargetDialog,点击下方的Edit编辑.sct2.修改.sct分散加载文件原始文件LR_IROM10x080000000x0008
  • 2024-07-01以太网协议的工作原理
    注:机翻,未校对。HowtheEthernetProtocolWorks–ACompleteGuide以太网协议的工作原理指南Whetheryou’vebeenawareofitornot,you’veprobablyusedtheEthernetinthepast.Doesthiscablelookfamiliar?无论您是否意识到这一点,使用过以太网的您,这
  • 2024-07-01NAT类型发现
    一、前言之前一篇文章中,提出了一个判断NAT类型的方案。该方案是自己研究设计的,比较粗糙。近期研读了关于STUN的一些协议标准,其中RFC3489中就包含了判断NAT类型的标准方案。与自己设计的方案相比,标准方案有以下优点:1,利用了STUN协议中定义的一些属性,如CHANGE-REQUEST/MAPPED-ADDRESS
  • 2024-06-22学习Ange记录--06~10
    06.changesymbolicinheap再来复习一下流程1.建立项目p=angr.Project(path)2.设置入口state=p.factory.blank_state(0xffffffff)3.设置符号对象pw=claripy.BVS('pw',64)4.这次是把符号放到堆上,于是可以自己创个新的堆就好了(1).给新的堆一个地址(2).给新的指向堆的指针一
  • 2024-06-22[Day 17] 區塊鏈與人工智能的聯動應用:理論、技術與實踐
    區塊鏈在金融業的應用前言區塊鏈技術作為一種去中心化的分佈式賬本技術,自其誕生以來便展示出極大的潛力,特別是在金融領域。區塊鏈技術可以通過提供透明性、安全性和效率來改變金融業的運作方式。在本文中,我們將深入探討區塊鏈在金融業中的具體應用,並通過一些代碼示例來展示其
  • 2024-06-22SqlAlchemy-2-0-中文文档-二-
    SqlAlchemy2.0中文文档(二)原文:docs.sqlalchemy.org/en/20/contents.html使用UPDATE和DELETE语句原文:docs.sqlalchemy.org/en/20/tutorial/data_update.html到目前为止,我们已经覆盖了Insert,这样我们可以将一些数据放入我们的数据库中,并且花了很多时间在Select上,该
  • 2024-06-21SQL去重
    记得很多年前,有个测试妹子找到我: 强哥,我这个表数据重复了,怎么把重复的数据删掉呀? 类似的需要将数据去重的场景,在实际工作中还是比较常见的。 今天我们就来说说,使用SQL语句来去重,有哪些常见的方法。 假如我们有一张student表: createtablestudent(idint,n
  • 2024-06-21【车载网络协议】【Ethernet】【ARP】【第二章-字段介绍】
    一、报文类型ARP协议中的请求(Request)和响应(Reply)是通过特定的字段来进行交换信息的。下面是对ARP请求和响应字段的详细介绍。二、请求报文硬件类型(HardwareType):指定网络接口的硬件类型,例如以太网通常使用1表示以太网。协议类型(ProtocolType):指定网络层协议类型,例如IPv4
  • 2024-06-20Ansible fact变量与魔法变量
    目录fact变量1.1fact变量的引用ansible的魔法变量1.魔法变量的使用1.1魔法变量的实际使用fact变量在常用模块里就提到过setup模块,这个模块会收集被控端的信息,而这个模块收集信息的方式就是依赖于fact,返回的是json格式的数据[ansible@masteransible]$ansibleall-msetup
  • 2024-06-18震惊:全面拆解dapp上线三天、 规则漏洞导致资金全部损失
    背景:今天的分析的是链上一个土狗项目由于规则设计漏洞、导致被黑客利用漏洞攻击、致使资金全部损失的案例、近期这个项目也是圈内很火、今天看到了,就趁周末有时间从技术的角度,分析黑客如何利用链上部署的合约,进而干废项目方。今天说的这个,不是技术漏洞bug、是规则设计漏洞
  • 2024-06-17MySQL where 操作符
    MySqlWHERE操作符号前言在WHERE子句中,你可以使用任何条件对记录进行过滤。准备工作准备users表,并插入数据#创建用户表userscreatetableusers(idintAUTO_INCREMENTnotnullprimarykey,namevarchar(255),ageint,jobvarchar(255),
  • 2024-06-17Java 6.16 DeepClone and ShallowClone
    浅克隆:复制对象的引用地址,导致克隆对象和原始对象共享引用类型字段的实际对象。classPersonimplementsCloneable{Stringname;Addressaddress;publicPerson(Stringname,Addressaddress){this.name=name;this.address=add
  • 2024-06-16MySQL 乐观锁
    MySQL乐观锁乐观锁认为当前的情况是最好的情况,即每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据droptableifexistssupply_address;--创建表CREATETABLEifnotexists`supply_address`(`id`int
  • 2024-06-15[隐私计算学习笔记]4——SecretFlow与SecretNote的安装部署
    目录1.SecretFlow介绍2.安装(亲测)2.1运行要求2.2安装方式2.2.1方式一:docker镜像2.2.2方式二:pypi2.2.3方式三:源码安装3.部署3.1前置知识——SecretFlow和Ray3.2 仿真模式——实现快速验证3.2.1单机仿真3.2.2集群仿真3.3 生产模式——实现安全生产4.关
  • 2024-06-15python下的自动调度
    目录编写一个自动发送每日电子邮件报告的脚本编写一个自动发送每日电子邮件报告的脚本包括以下几个步骤:安装必要的库:用于发送电子邮件的smtplib和用于处理电子邮件内容的email库是Python标准库的一部分。我们还需要安装schedule库来安排每日任务。设置电子邮件服务器:您需要一
  • 2024-06-15在 Solidity 中将地址类型转换为 IERC20 接口类型
    在智能合约开发中,尤其是涉及到ERC-20代币交互时,开发者常常需要将一个地址类型转换为IERC20接口类型。这样做的目的是为了调用接口中的函数,如transfer和approve。本文将详细讲解这一过程,并简要介绍相关的背景知识。什么是ERC-20和IERC20?ERC-20是一种在以太坊区块链上
  • 2024-06-15理解 Solidity 中的修饰器(Modifiers)
    在智能合约开发中,代码的可读性和安全性至关重要。Solidity作为以太坊上最常用的编程语言,为开发者提供了一种强大的工具——修饰器(modifiers)。修饰器可以在函数调用前后执行特定的代码,简化逻辑并增强合约的安全性。本文将深入探讨修饰器的概念、定义及其在实际开发中的应用。什么
  • 2024-06-15solidity calldata学习
    在Solidity中,calldata是一种数据位置标识符,用于指定函数参数的存储位置。calldata特别适用于函数的外部调用参数,并且是只读的。以下是对Solidity中数据位置的一些说明:storage:用于状态变量,数据持久存储在区块链上。修改状态变量会消耗gas。memory:用于临时变量,这些变量
  • 2024-06-15Django ORM非空判断、以及通用写法
    django文档DjangoORM中,判断非空(notnull)有多种方式,使用isnull查询方法#查找所有name字段不为空的对象objects=MyModel.objects.filter(name__isnull=False)使用exclude方法排除空值:#查找所有name字段不为空的对象objects=MyModel.objects.exclude(name_
  • 2024-06-13requests 开启charles代理报错
    当前报错urllib3版本:1.26.7解决代理报错的几种方式:配置代理请求proxies={'http':'http://127.0.0.1:8888','https':'http://127.0.0.1:8888'}data=requests.post(url,json=body,headers=headers,verify=False,pr
  • 2024-06-12D-Bus——DBUS_SESSION_BUS_ADDRESS 环境变量为空
            DBUS_SESSION_BUS_ADDRESS环境变量通常在用户会话环境中定义,用于指示会话总线的地址。在root用户环境下,这个环境变量可能为空,原因如下:原因分析会话总线与用户会话相关:        会话总线(sessionbus)是与特定用户会话相关的总线,每个用户登录后都会
  • 2024-06-12Uniswap V2 核心
    UniswapV2核心UniswapV2FactoryUniswapV2PairUniswapV2ERC20IUniswapV2Router021.UniswapV2Factory合约UniswapV2Factory是工厂合约,主要负责创建和管理交易对。它是UniswapV2系统的核心管理部分。主要功能:创建交易对:工厂合约可以创建新的交易对(流动性