摘要:合约示例 可以用solc编译合约,也可以用Remix编译。 如果用solc编译的话,需要下载同合约使用的solidity版本相同的solc版本。 Remix编译后直接复制bytecode到代码里即可。 web3.js部署合约 环境:nodejs 在运行同一个脚本的时候遇到玄学问题, 报出这个错误,找 阅读全文
posted @ 2019-11-23 00:25 KRDecad3 阅读 (35) 评论 (0) 编辑
摘要:First and foremost 在CTF的智能合约题目里,一个很大的瓶颈(对于我自己🙁)就是不知道该如何调用合约,尤其是无源码的合约逆向。学习了一些文章,大概掌握了一些方法,因此再造个轮子记忆一下。可能还不是很全,学到新的再去补充。 需要用到的工具就是Remix IDE和MetaMask插件 阅读全文
posted @ 2019-10-26 21:10 KRDecad3 阅读 (158) 评论 (0) 编辑
摘要:快速幂取模 即快速求出(a^b)mod c 的值。由于当a、b的值非常大时直接求a^b可能造成溢出,并且效率低。 思路 原理就是基于$a b \% c = ((a \% c) (b \% c))\% c$,$a^b \% c = (a \% c)^b \% c$公式。 求解快速幂: 设指数b用二进制 阅读全文
posted @ 2019-09-28 17:05 KRDecad3 阅读 (36) 评论 (0) 编辑
摘要:本文首发于先知社区,原文链接:https://xz.aliyun.com/t/6295 数学基础 黎曼几何中的“平行线” 欧几里得《几何原本》中提出五条公设: 1. 过相异两点,能作且只能作一直线。 2. 有限直线可以任意地延长。 3. 以任一点为圆心、任意长为半径,可作一圆。 4. 凡直角都相等。 阅读全文
posted @ 2019-09-15 16:56 KRDecad3 阅读 (275) 评论 (0) 编辑
摘要:题外话 其实这道题在比赛过程中并没有解出来,思路完全想偏导致无解就放弃了,后来研究了大佬的writeup大半天才看懂。。。 正文 nc获取题目信息,返回一段明文和密文,要求输入一段明文和密文。 题目源码: 通过 函数可知,自己输入的明文在服务端加密后要等于自己输入的密文(也就是 ,才能得到flag。 阅读全文
posted @ 2019-06-27 01:23 KRDecad3 阅读 (61) 评论 (0) 编辑
摘要:UTXO UTXO (Unspent Transaction Output) 未花费交易输出 传统的支付系统都是基于账户(account based)的,即: 若A向B转账20元 1. 判断A的账户余额大于等于20元; 2. 在B的账户上加20元; 3. 同时在A的账户上减20元。 使用UTXO模型 阅读全文
posted @ 2019-06-14 22:33 KRDecad3 阅读 (163) 评论 (0) 编辑
摘要:个人感觉,先对区块链或比特币有个基本了解之后,再配合比特币白皮书食用更佳。 1.简介(Introduction) 比特币这种电子支付系统,基于密码学原理而不基于信用。 点对点交易,不存在第三方中介的参与。 杜绝交易回滚的可能,防止欺诈。 2.交易(Transactions) 定义一枚电子货币就是一串 阅读全文
posted @ 2019-06-09 17:50 KRDecad3 阅读 (188) 评论 (0) 编辑
摘要:本文章是参考一位大佬博客学来的。 智能合约题的环境主要包括两部分:一个是智能合约的部署,另一个就是监听合约事件进而发送flag的脚本。 智能合约部署 这里写的合约是指solidity合约,使用Remix IDE。 合约主要部署到以太坊测试链而非主链上(没钱😑),几个主要的测试链:Ropsten,R 阅读全文
posted @ 2019-04-30 22:32 KRDecad3 阅读 (470) 评论 (0) 编辑
摘要:本例使用的时python2.7环境,python3的操作应该也是差不多的。 需要用到smtplib和email两个包。 发送文本类型的邮件 下面看个发送文本邮件的例子(使用网易163的SMTP): 好像网易的SMTP有坑,message['From']和message['To']都要和sender和 阅读全文
posted @ 2019-04-29 21:59 KRDecad3 阅读 (112) 评论 (3) 编辑