精华内容
下载资源
问答
  • 区块链安全

    2018-08-01 23:56:00
    一、数据层 关注区块链上数据的表达方式,包括...比特币区块链使用公私钥对保护钱包的安全,目前有团队针对私钥的破解进行研究,主要办法是从硬件中得到额外信息的侧信道方法。 时间戳。用于对每个数据的独立性...

     

     

    一、 数据层

    关注区块链上数据的表达方式,包括区块头数据,签名数据,加密数据类型,交易数据的格式UTXO,交易数据的组织形式(Merkle)地址数据格式SHA256区块的组织形式(链式数据结构)

    1. ECDSA私钥比特币区块链使用公私钥对保护钱包的安全,目前有团队针对私钥的破解进行研究,主要办法是从硬件得到额外信息的侧信道方法
    2. 时间戳用于对每个数据的独立性标记,以抗伪造和重放。比特币网络有专门的时间戳服务器,存在中心现象和安全瓶颈,目前暂无研究。
    3. 各类区块链1.2类似,而其他数据的表达格式区块链平台不而各有不同。

    二、 网络层

    关注区块链上数据的传播方式

    1. P2P网络。p2p网络的开放性自由可能导致女巫攻击(女巫攻击是基于BFT拜占庭使用容错协议),指在区块链网络中引入大量新的恶意节点误导节点路由表,消耗连接资源,传输非法数据等行为,区块链的开放性导致参与成本少、门槛低,攻击者可以制造虚假节点发布虚假信息降低网络可信任度。
    2. 网络寻径方式。区块链挖矿节点和路由分布的中心化导致网络级的攻击者能通过劫持控制少量(小于100BGP网段来实现对约50%的挖矿算力的隔离,隔离攻击的目标是将一组节点集合完全从区块链网络中隔离,无法连通,降低区块链的可信任度。
    3. 传播机制(交易信息的传播区块数据的传播)。在比特币网络中,每个比特币节点维护一个IP地址列表,IP地址列表保存所有可达节点的地址,此列表由DNS服务器初始化,之后在与其他节点交换消息时添加地址,每个比特币节点最多保持125个与其他节点的连接。每当节点接收到一个新区块,它就通过INV消息对外广播新区块的生成,INV消息包含了新区块的区块头部、hash值等必要信息。监听INV消息的节点如果验证此区块未被记录过,它将向一个邻近节点发送GETDATA消息,后者通过BLOCK消息向它返回所请求的区块数据。若20分钟后没有收到此区块,它将会向另一个邻近节点发起请求。比特币协议中节点间以对称的方式使用INVGETDATABLOCK消息交换区块数据,这些消息未做加密和完整性检查;比特币节点请求20分钟未获得区块数据才会转向其他节点重新请求数据。篡改中间消息,注入恶意信息,可能导致延时攻击和DOS攻击。延时攻击的目标则是减缓来自于一组节点集合或是通往一组节点集合的区块的传播速度。
    4. 验证机制。验证包括对交易信息的验证(已有数据链比对),对新区块区块头的验证(验证各字段和hash值是否合法)对新区块区块内容的验证(验证是否是诚实节点产生的诚实区块)

    三、 共识层

    关注区块链上数据副本达成一致的方法。

    1. 公有区块链的安全性衡量标准(非准入,开放性区块链性能指标共同前缀性质(诚实节点共有的最长的链最长共同前缀)、链质量性质(诚实节点算力贡献的区块数量称为质量)链增长性质。安全属性persistence(一个区块内的数据经过k个区块长度的确认,最终被所诚实节点记录)、liveness(确保诚实地产生的交易一旦提供给网络节点足够长的u个时间之后,就说这个交易是稳定的。)存活性和持久性相结合提供了一个强大稳健的交易账本,即被诚实地产生的交易会被采纳并且会变得不可改变。

       

    2. 私有区块链的安全体系构建(准入,封闭性(1)物理安全。区块链终究是运行在网络和主机上的,传统的安全防护方法能够有效增强网络和主机安全,如VPN、防护墙、入侵检测和物理隔离。(2)数据安全。区块链各个节点之间的数据应该是加密传输的,并对发送到区块链中的数据实施严格的访问权限控制,以规避不必要的数据泄露。(3)应用安全。应用的安全需要保证认证、授权、交易规则等方面的安全,任何参与到区块链计算中的用户和计算节点都应该是被监控的。(4)密钥安全。私钥安全是区块链放伪造的核心,要建立合理的安全机制对密钥进行保管。当密钥泄露时,应当对密钥进行及时的修改。

    四、 激励层

    关注驱动共识算法顺利执行的机制。私有链的激励层可以专门设定,主要讨论公有链的激励层。这一层的安全属性是可用性:保障共识过程顺利进行;公平性:奖励与贡献相一致;可持续性:可长期运行

    1. 挖矿算力中心化。影响区块链公正并不需要百分之51算力下图反映了全网算力比例与挖出连续区块的关系。挖出连续三个区块时已经可以获得较大优势。

       

    2. 自私挖矿行为。挖到连续两个区块隐藏起来,在他人公布一个区块时再广播自己的两个区块以获得竞争优势的行为成为自私挖矿。文献研究了自私挖矿行为的实际收益。
    3. 虚标挖矿行为。矿池为单位进行挖矿时,矿池内的一个矿工挖出区块,所有矿工按工作量平均获利。pow本质需要正确衡量工作量(即hash的尝试然而亲自验算数百亿的尝试不可行唯结果论只认同成功挖出区块的办法不公平折中方案以统计数据衡量工作量,导致造假牟利的攻击。

    五、 应用层

    关注区块链上各种应用的对接。

    1. 在区块链的编码中,不可避免会存在很多的安全漏洞,针对这些漏洞展开的攻击层出不穷。The DAO是基于以太坊区块链平台的智能合约去中心化自治项目,2016617 日由于其智能合约中存在的漏洞而被黑客攻击The DAO作为搭载在以太坊平台的去中心化应用,本次攻击是通过代码递归调利合约的去中心化应用,本次攻击是通过代码递归调用合约的既有漏洞实现的。
    2. 2010815日,比特币区块链的第74638块上被发现了一条包含有92233720368.54277039 BTC的交易记录,而且这些比特币仅被发送到两个比特币地址。而导致这次攻击的原因,是由于比特币代码中的大整数溢出漏洞。为使这笔交易失效,比特币核心开发人员开发了比特币补丁版本,并启动了硬分叉。在33个区块的竞争之后,带补丁版本的区块链才成为主链,消除了原有漏洞的影响。
    3. 区块链的管理问题。作为去中心化的公有链,不应该存在一个管理机构,然而,当发生代码漏洞时需要管理机构回滚旧链开启,当区块链软件需要升级时,需要考虑不同版本软件的兼容问题,新旧协议的切换问题目前区块链的管理还是采取社区建议,矿工认可的方式进行社区和矿工存在分歧时,会产生硬分叉,新旧两条链同时延伸。如以太坊分叉为ETH和ETC,两链的代码相同,分叉前历史账本一样,地址私钥也一样,交易广播到连个网上都合法的,可能导致重放攻击

     

     

    转载于:https://www.cnblogs.com/0xHack/p/9404714.html

    展开全文
  • 区块链安全分析报告文档区块链安全分析报告文档区块链安全分析报告文档区块链安全分析报告文档
  • 区块链安全联系人:区块链公司的安全联系人目录
  • 如果说2018年,我们做区块链安全拥有了“上帝视角”,那过去的2019年,我们则收获了“圣母心态”。 2018年,基于代码技术底层,我们俯瞰交易所、钱包、矿池、DApp 等生态各个环节,挖漏洞、搭态势感知平台、发威胁...
  • 区块链安全测试

    万次阅读 2019-03-21 15:34:37
    区块链安全测试 前言 区块链如何进行安全测试? 如何挖掘区块链源码中的安全漏洞? 如何验证可能存在的安全的漏洞? 这些,都是想进入区块链安全领域会遇到的一些常见问题。区块链安全与web安全有很大的...

    区块链安全测试

    前言

    • 区块链如何进行安全测试?
    • 如何挖掘区块链源码中的安全漏洞?
    • 如何验证可能存在的安全的漏洞?

    这些,都是想进入区块链安全领域会遇到的一些常见问题。区块链安全与web安全有很大的不同,但是有些地方却与传统安全有相通之处,比如拒绝服务,资源消耗,错误处理。

    范围

    本文主要讨论以go语言写的区块链源码中的安全问题。主要原因是golang中许多小工具是方便测试的,如gotest, go fuzz等。

    架构

    在进行测试之前,心里面有一个测试的蓝图很重要。正如web渗透测试需要进行信息收集工作一样,当遇到一条新的区块链,需要尽可能收集区块链的信息。而区块链之间一般都有一些共通的地方,了解区块链的架构有助于安全测试的进行。

    • 账户(account)
    • 区块数据(block)
    • 存储(database)
    • 节点(node)
    • 节点之间的交互,seed节点寻找(P2P)
    • 节点同步(共识)
    • 共识机制的实现(consensus)
    • 接口(可fuzz)

    方法

    类似于源码审计。了解架构和常见的漏洞,直接找到区块链的相关部分代码。通过写go_test文件来学习和验证自己的所想。可视化相关的数据结构(通过t.Log()打印出来)。在函数之间跳转和定位(通过Go_land进行加载)。通过go-fuzz半自动化进行fuzz测试。通过历史漏洞(github issue)和公开漏洞报告(hackerone, community)不断进行学习。

    安全测试点

    • 可能产生崩溃(panic, 错误处理不当)
      • 组件之间的逻辑依赖(需要考虑某个组件如果崩溃,会不会导致另一个组件崩溃)
      • 寻找使程序一直挂起的特定状态(死锁,死循环)
      • 语言特性(Go语言的错误处理)
    • 序列化和反序列化,编码解码产生的崩溃(一般通过fuzz测试)
    • P2P安全(节点连接)
      • P2P拒绝服务(构建P2P消息,向节点发送可以使节点崩溃的信息)
      • 节点连接失败
      • 种子节点配置不当(畸形的格式导致崩溃)
        • 种子地址格式
      • 节点并发连接限制(防日食攻击)
    • 接口安全
      • 畸形数据导致崩溃(如区块高度类型为int则可发送负值)
      • 接口并发连接限制(gRPC)
    • 不安全的随机数(但要识别是否会影响敏感数据)
    • 底层逻辑实现安全(如merkle tree实现,典型的漏洞CVE-2012-2459)

    Get Your Hands Dirty- RPC

    有时候比较懒,不太想去看源码,那就直接从接口入手。刚刚开始测试的时候,喜欢在终端手动发curl来测试。一般来说接口分为两类,一类有权限,需要进行认证。另外一类无需认证,一般进行一些基本的链上信息查询。
    对于有权限的,也可以分为基于HTTP basic authentication的,这一类需要在header增加认证,下面这段代码就是基本验证的一个代码,只有通过了基本验证才能调用RPC。

    	user, pw, ok := req.BasicAuth()
    	if !ok {
    		return "", ErrNoToken
    	}
    

    另外一类是在json体里带上认证的密码,这一类直接在data里面加就可以了。
    最后一类是不需要权限的,直接调用。

    • Summary
      • 有权限限制
        • HTTP basic authen
        • json中带密码
      • 无权限限制(直接调用)

    对于有权限的接口,可以按照传统安全的思路,去检查源码,验证是否合理,是否能绕过,如果代码写得不好,可能会出现越权问题。越权对节点进行操作,越权查看节点敏感信息
    对于可以直接调用的RPC,重点关注畸形数据是否down掉节点,即DOS攻击。

    Get Your Hands Dirty- P2P

    除了RPC可以让节点服务崩掉,通过构建P2P服务器并且给节点发送构造好的消息,也能使得节点崩溃。而且P2P有个好处是这里一般没有权限限制,现在许多链都有在RPC处做权限限制,所以即使找到了RPC处的漏洞可能影响也要下降好几个等级。

    P2P漏洞原理一部分与RPC相同,难点在于如何根据链的源码构建出P2P服务。主要分为四步:

    • 确定目标P2P地址
    • 构建P2P服务
    • 构建消息
    • 通过P2P服务向目标P2P地址发送构建好的消息

    Bug与漏洞

    • Bug与漏洞是一样的吗?
      这是一个很有趣的问题,区块链中bug和漏洞经常被混淆。从利用者的角度来看,如果这个bug能被外部利用,这个bug可以称之为漏洞;如果因为代码不合理,导致用户在操作过程中产生崩溃,服务停止的现象,这就bug。但是在区块链的赏金计划中,bug和能被利用的漏洞都是被鼓励提交的,所以有时候考虑一些代码的逻辑不合理,并且提交给赏金计划,也是一个不错的选择。

    源码审计

    各个公链的区块链项目都是开源的。所以获取源码是很简单的,获取到源码后如何去找漏洞?

    在审计之前,先要做一番探索。探索,越轻越好,一上来就是各种环境,太重。
    轻量级别的,源码,go环境,IDEGoland(用于跳转函数,变量),文档。
    大略过一下文档,根据文档里面介绍的RPC接口,到源码搜索,找到接口集中的api文件,把这些接口复制到excel表格,对接口进行编号,功能介绍,大致对这条链的一些功能有些初步认识。

    • 接口审计
      对接口审计,还是关注外部输入量。
      注意接口处理函数对外部输入量的处理,是否进行验证(检验为空,为负值的异常情况)
      同时尝试运行相关的test文件,通过test文件运行部分功能,对功能有个直观的认识。
      第一轮对接口对应的处理函数过一遍,运气好可以发现几个漏洞。即使没有发现,对这个区块链系统的基本底层功能也大致有了个了解。

    • 一些存在风险的函数
      make,第二个参数足够大导致崩溃
      append, append的个数足够大导致崩溃
      for循环次数太多导致崩溃

    下一步就是搭建测试网环境,关注其他更重要的验证部分和共识部分。

    展开全文
  • 企业级-区块链安全白皮书
  • 区块链安全技术总结

    2018-12-17 09:16:10
    区块链的安全需求越来越多,下面就将这些需求一一拆分,看看区块链安全需求到底是个什么样子。 0x01 拆分 目前针对安全服务行业的区块链安全需求,更多的是基于其上层应用(红色箭头指向)比如数字货币交易平台、...

    0x00 前言

    区块链的安全需求越来越多,下面就将这些需求一一拆分,看看区块链安全需求到底是个什么样子。

    0x01 拆分

    目前针对安全服务行业的区块链安全需求,更多的是基于其上层应用(红色箭头指向)比如数字货币交易平台、移动数字货币钱包、DAPP等

    在实际测试中也是按照这几类进行的划分,下面我会针对这几类常见的区块链应用说明其使用过程中存在的风险,如何避免风险,以及一些实际操作过程中的案例。

    0x02 金融新战场-数字货币交易所

    数字货币交易所,常见火币,OKcoin,币安,都是我们这些韭菜挣(pei)钱(guang)的好去处。对于这类平台就按照平时对Web站点的渗透思路进行挖掘就行,但是有一点千万记住,别上来就扫描器,Sqlmap,御剑什么的,否则今天的活也就别干了。根据测试经验,这种费力不讨好的活就放在最后,上来可以先选择逻辑进行测试,因为数字货币平台的逻辑来来回回就那么几样:注册、登录、地址管理(充币、提币、交易)、委托交易查询、买入卖出(法币、币币、杠杆和期货)、账号安全(密码修改、谷歌验证、手机和邮箱验证)、买家身份实名认证、场外交易时使用的支付宝、微信和银行卡的地址和二维码等、以及多平台快速交易使用的API接口管理等。

    从功能上其实并不复杂,功能与功能之间的业务关联性也是显而易见:

    注册->实名认证->手机/邮箱/谷歌验证码->法币交易获取代币->币币交易/杠杆交易->提币到其他地址

    这里给出两个案例

    案例一:收款账户处的存储型XSS

    在微信账号,支付宝账号处可插入恶意脚本,恶意脚本随交易广告下发

    当用户与恶意广告用户进行交易时,需要显示账户信息,此时触发该XSS

    此处的XSS影响比较大,可以get到其他与攻击者进行交易的身份认证信息。

    案例二:无密买入卖出功能的CSRF漏洞

    进入某币交易模块,设置交易措施为每次交易不输入密码

    构造CSRF表单并生成伪造交易请求的表单,因挂单交易是自动确认,所以存在极大风险,易被恶意攻击进行交易操作。

    当用户访问并点击时,表单内容提交给交易网站,买入卖出操作成功

    0x03 放在兜里的记账本-移动数字货币钱包

    钱包从早期的PC端全节点钱包(体积大又不能携带)到现在到小而轻的移动钱包(就是APP了),将个人数字资产的管理做到更快截和方便。如图,移动钱包可以用于资产的查看,转账,地址管理等不需要全节点参于的功能。

    重点关注以下四个方面

    私钥生成与存储的安全

    助记词生成与存储的安全 

    Keystore生成与存储的安全

    和钱包口令生成与存储的安全

    针对四个方面,可以总结出多个渗透维度

    密钥保存维度:私钥是否明文存储本地,keystore是否明文存储本地、助记词是否明文存储本地

    钱包备份:私钥导出过程安全(检查私钥导出过程是否阻止屏幕劫持,是否保存在日志当中或临时文件当中)

    keystore 导出过程安全:检查keystore导出过程是否阻止屏幕劫持,是否保存在日志当中或临时文件当中)

    转账过程:转账数据的机密性和完整性

    0x04 区块链应用新宠-DAPP

    DAPP-分布式应用:基于不同的底层区块链开发平台和共识机制。现在绝大多数都是在以太坊(Ethereum),比如各种加密游戏,分布式宠物 ,百度的莱茨狗,网易 的网易星球,360的区块猫 ,小米的区块链游戏加密兔等等。

    这里给出一个区块链养猫例子。

    案例一:

    全美最火的区块链宠物,价格也不贵,0.0019 ETH 大概6块左右

    这个DAPP与传统的Web或者页游最大的区别就是其去中心化的结构,除了浏览器和服务器外,所有的交换操作都写入到了以太坊中的多个智能合约当中,对操作过程和结果进行安全的记录。

    对这类DAPP进行渗透的时候需要考虑到整个DAPP的身份认证机制是基于密码学中的 公钥认证机制(私钥签名,公钥验签),那么后端服务器是否能够正确的安全的验证签名后的信息就是很关键的点,比如下图中的请求(这是一个DAPP和以太坊地址绑定的过程),sign是对以太坊地址的签名,服务器处理请求时如果未对请求中的sign进行安全校验,那么M ITM手段可以伪造以太坊地址进行恶意绑定,同时如果未对溢出进行防御,比如 AAAA*10000… 也会发生拒绝服务的问题。

    另一个问题是,以太坊modifiers(修改器)特性导致的特权函数的恶意调用。在以太坊应用中modifiers会被用作定义某些只能被特定地址(特权地址)调用的函数。在调用函数之前需要对请求的私钥进行验签,此处就会存在一个风险,服务器如果能保证这些私钥不丢失,一旦特定地址的私钥丢失,那么特权函数就会被恶意调用造成无法估计的后果。

    0x05 区块链中坚力量-智能合约

    智能合约(Smart contract):以信息化方式传播、验证或执行合同的计算机协议。在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转

    现在做智能合约审计的公司有,慢雾科技,降维科技和知道创宇等。但从审计方向上讲大方向上是对合约中危险函数的使用,加密的生成和数据传递等方面进行安全审计。

    下面给出一些智能合约审计过程常关注的问题

    1. 重入问题-关键函数被恶意多次调用

    图:

    当使用call.value()()处理转币时,会将剩余的 Gas 全部给予外部调用(fallback 函数)智能合约的fallback函数内递归withdrawBalance()便可以转走更多的币。攻击者可以部署一个包含恶意递归调用的合约将公共钱包合约里的 Ether 全部提出。

    修复:使用send() 和 transfer() 转币,只会传递2300Gas供调用,防止重入攻击。

    2. 访问控制-初始化函数可被任何人调用

    风险:

    合约 A 以 call 方式调用外部合约 B 的 func() 函数,在外部合约 B 上下文执行完 func() 后继续返回 A 合约上下文继续执行;A 以 delegatecall 方式调用时,相当于将外部合约 B 的 func()代码复制过来(其函数中涉及的变量或函数都需要存在)在 A 上下文空间中执行。当合约币中存在恶意代码,直接对合约A的运行逻辑造成危害。

    修复:

    每一个外部调用都会有潜在的安全威胁,尽可能的从你的智能合约内移除外部调用。如果你没法完全移除外部调用,另一个简单的方法来阻止这个攻击是确保你在完成你所有内部工作之前不要进行外部调。

    3. 不安全的函数返回值-函数返回值未进行检查和判断

    风险:

    使用send() 函数进行转账时,因为没有验证 send() 返回值,如果msg.sender 为调用失败,则send() 返回 false。未验证false并进行回滚,最终导致账户余额减少了,钱却没有拿到。

    修复:

    使用transfer() 进行安全的转币操作,当发送失败时会自动回滚状态,该函数调用没有返回值。

    4. 跨函数竞争-在余额清零前调用转币

    风险:

    使用withrawBalance函数时调用transfer(),此时,withdrawBalance没有执行到userBalances[msg.sender] = 0;(余额清0)那么余额就没有被清零,能够继续调transfer()重复转走代币。攻击者利用该漏洞进行恶意提币和转账。

    修复:

    先减少发送人的余额再进行价值转移;另外一个解决方法就是用互斥锁,从而一起缓解各种竞争条件。

    5. 溢出-数值未进行校验造成的溢出攻击

    向上溢出:

    如果任何用户都有权利更改uint的值,让其大于最大值(2^256),因为溢出而被设置为0

    向下溢出:

    如果一个uint别改变后小于0,那么将会导致它下溢并且被设置成为最大值(2^256)

    修复:

    使用SafeMath的安全方法,进行数值的安全处理。

    6. 伪随机性-随机数的生成过程可预测

    风险:

    合约中的存储数据都能在链上查询分析得到。如果合约代码没有严格考虑到链上数据公开的问题去使用随机数,可能会被攻击者恶意利用来进行“作弊” 。如果seed的使用不够随机,那么产生的随机数值就可预测。

    修复:

    所提币、钱包转账,所以除了在编写合约的时候需要严格验证输入数据的正确性,而且在 Off-Chain 的业务功能上也要对用户所输入的地址格式进行验证,防止短地址攻击的发生。

    7. 短地址攻击-利用EVM解析补0操作恶意提币

    风险:

    EVM将会为不满足ERC20的代币交易地址补上尾部的零,导致转账扣除的地址处理时发生变化。攻击者通过这种方式从其他地址进行恶意扣币。

    修复:

    所提币、钱包转账,所以除了在编写合约的时候需要严格验证输入数据的正确性,而且在 Off-Chain 的业务功能上也要对用户所输入的地址格式进行验证,防止短地址攻击的发生。

    8. 智能合约审计工具

    https://github.com/melonproject/oyente

    https://github.com/trailofbits/manticore

    https://github.com/ConsenSys/mythril

    9. 审计步骤

    面谈开发者->评审.sol文件->编译->分析代码流->运行oyente->运行Manticore->运行MAIAN->手工复审

    0x06 区块链源头-密码学与密钥安全 

    区块链为什么有那么大的魔力,在于它的底层原理,在于它的源头,那个技术背书-密码学

    区块链中的哪些地方用到了密码学:

    1.哈希算法 比特币系统中使用的两个哈希函数分别是:SHA-256,主要用于完成PoW(工作量证明)计算;RIPEMD160,主要用于生成比特币地址;

    2.Merkle哈希树基于哈希值的二叉树或多叉树,在计算机领域,Merkle树大多用来进行完整性验证处理,在分布式环境下,其进行完整性验证能大量减少数据传输和计算的复杂程度;

    3.椭圆曲线算法 比特币中使用基于secp256k1椭圆曲线数学的公钥密码学算法进行签名与验证签名,一方面可以保证用户的账户不被冒名顶替,另一方面保证用户不能否认其所签名的交易。用私钥对交易信息签名,矿工用用户的公钥验证签名,验证通过,则交易信息记账,完成交易;

    4.对称加密算法比特币官方客户端使用AES(对称分组密码算法)加密钱包文件,用户设置密码后,采用用户设置饿密码通过AES对钱包私钥进行加密,确保客户端私钥的安全。

    最终的原则还是:保护好私钥。从私钥的整个生命周期来看,可以从以下几个方面进行安全分析

    1.硬件模块抗拆毁、抗功耗分析、错误注入攻击等侧信道分析能力;

    2. 随机数生成算法强度,随机数发生器产生随机数的随机性;

    3. 密钥与密钥参与运算过程都在硬件当中;

    4. 密钥导入导出过程全在硬件中实现;

    5. 密钥恢复与备份; 主要关注加密货币,私钥通过助记符来协助恢复, 助记符的安全是关键。

    现有的安全措施算法白盒

    静态白盒:算法+密钥+白盒密码技术->算法密码库(白盒库)   静态白盒更新密钥,需要重新生成白盒库。

    动态白盒:白盒库无需更新,密钥+白盒密码技术->白盒密钥   白盒密钥传入相匹配的白盒库可以进行正常的加密或解密功能。

    实现过程如下图:

    现有的安全措施—密钥随机化:

    椭圆曲线算法实现生成密钥  再配合代码加固,代码混淆方法

     现有的安全措施—协同签名/解密:

    需要一个可信的后台服务器,解密/签名密钥由客户端和服务器端协同产生,且子密钥由各自保管。这种方法安全性和效率相对较高。

    展开全文
  • 整理了一些关于区块链安全方面的重要文献,主要来自计算机学报、软件学报、自动化学报等,文献是caj格式的
  • 基于此,OWASP 中国成立专门研究小组,收集、整理和分析了 2011年至 2019 年间共 160 个典型区块链安全事件,并在本文档中给出了排列和描述,希望能帮助到广大的区块链从业者和关注区块链安全的人们。
  • 区块链安全入门与实战》从大量区块链安全案例分析出发,总结了区块链产业链中的整套安全体系建设,可谓面面俱到,非常实用,为区块链行业技术人员提供了安全开发指南。 《区块链安全入门与实战》介绍区块链相关...

    由一线技术团队倾力打造,多位信息安全专家联袂推荐。总结了区块链领域相关的安全问题,包括整套安全防御措施与案例分析。

    区块链技术已经开始改变我们的社会,区块链产业的影响不断扩大。但是最近几年,区块链相关的攻击事件和安全问题频发,大家都渐渐明白了,安全是保障区块链领域稳定发展的根本。《区块链安全入门与实战》从大量区块链安全案例分析出发,总结了区块链产业链中的整套安全体系建设,可谓面面俱到,非常实用,为区块链行业技术人员提供了安全开发指南。

    区块链安全入门与实战》介绍区块链相关环节的安全审计,结合具体的实战案例,帮助读者迅速上手区块链安全测试,增强网络安全意识。通过《区块链安全入门与实战》的学习,读者能够学习区块链行业相关安全、交易平台安全、智能合约安全、区块链软硬件钱包安全、链安全以及矿机和矿池安全,掌握在实际过程中如何安全的开发区块链相关应用,对区块链安全知根知底,知攻知防。主要内容包括:区块链生态简介,交易平台、智能合约、钱包、链等安全审计,最后介绍矿机和矿池的安全问题。

    数字货币交易平台面临的各种攻击面,以及如何设计一个交易平台渗透测试流程。

    以太坊智能合约的常见安全漏洞,以及漏洞修复方式和安全建议。

    公链的EOS智能合约工作原理,对EOS的攻击事件以及安全缺陷的修复方式。

    数字货币钱包的基本概念及存在的安全缺陷,以及针对这些缺陷的安全审计方案。

    公链自身的安全,包括共识安全、源码安全、RPC接口安全和P2P的网络安全链等。

    矿机和矿池的安全问题,以及漏洞预防措施。

    区块链DeFi面临的安全挑战和针对性的防御措施。

    区块链安全入门与实战》获取地址

    PC版

    http://product.china-pub.com/8077298

    移动版

    http://m.china-pub.com/touch/touchproduct.aspx?id=8077298

    区块链安全入门与实战

     

    展开全文
  • 区块链安全入门笔记

    2019-08-21 12:44:03
    链客,专为开发者而生,有问必答!...面对区块链的众多安全问题,慢雾特推出区块链安全入门笔记系列,向大家介绍十篇区块链安全相关名词,让新手们更快适应区块链危机四伏的安全攻防世界! 共识 Consensus 共...
  • 已经过去的2018年,区块链行业安全事件频发。交易所、钱包、合约、公链项目都受到了严峻的安全挑战。...对此,Trias区块链安全专家说,提升区块链安全意识应该作为一种行业共识,这样才能促进整...
  • 进入2018年,区块链产业应用走向细分,区块链技术与实体经济正在加速融合,各类资本和企业...最后从全局的角度出发对区块链安全提供了一些对策和建议,期望在安全领域为区块链技术和产业应用的健康持续发展尽一份力。
  • 1.方案概述设计并实现一款基于国密算法的区块链安全钱包,首先使用国密算法完成基于国密算法的区块链的设计和实现,然后完成工作在此区块链上的区块链安全钱包。基于国密算法SM2、SM3和SM4实现区块链安全钱包最主要...
  • 《信息安全技术区块链安全技术测评标准》系列标准编制说明.doc.xdf按照国家标准和行业标准的格式, 本次编制地方标准主要内容规定了 区块链应用的安全需求、 区块链安全体系参考架构和指标体系、 区块链安 全测评...
  • 2018年度区块链安全报告

    千次阅读 2019-01-29 21:51:22
    本文转自区块律动 BlockBeats报告核心看点:回顾:2018 年区块链安全事件造成的经济损失高达 22.38 亿美元,较去年暴增 253%。2018 年区块链安全事...
  • 2018区块链安全白皮书-技术应用篇 - 中国信通院......
  • 尽管如此,但仍需要关注区块链安全风险突出、核心技术亟需突破、区块链技术有待与实体经济深度融合发展、区块链人才缺口较大等问题,从而更好推动区块链技术与产业健康有序发展。 一、对形势的基本判断 (一)区块链...
  • 但这两种特点并不能代表区块链安全的全部内容,区块链作为一个庞大的生态,用户作为市场的参与者与投资者,需要对数字货币的买卖与使用。这涉及到从钱包、交易所、私钥保存到共识机制、协议及整个系统的安全性,在...
  • 关于区块链安全方面的文献 整理和阅读了一些与区块链安全和隐私保护方面相关的论文。基本来自计算机学报、软件学报以及自动化学报等。 主要内容: 区块链的基本概念和结构、数据传输方式、共识机制、加密算法、智能...
  • 可信计算助力区块链安全

    千次阅读 2018-08-15 19:42:00
    我们更要高度重视区块链安全,从等级保护来做好区块链安全,只有可信计算才能解决区块链的安全。 怎么办呢?可信计算或许可以提供解决办法。大家经常听到“安全可信”, 首先,我们需要区分下安全和可信,我们这里...
  • 随着区块链技术的快速发展,以及项目与应用的数量不断增多,与之而来的相关安全事件的发生也变得频繁。据国家区块链漏洞库不完全统计显示,2020年度...综上所述,全年区块链安全威胁风险等级为高,亟需各方高度重视。本
  • 霍炜表示,区块链架构主要包括密码组件、存储组件、网络组件、共识组件、合约/虚拟机组件和管理组件等,其中密码组件的作用贯穿于区块链安全各个层面,是区块链的安全基石与可信基因。  在数据层面,区块链使用...
  • 0x00 背景介绍区块链技术是金融科技(Fintech)领域的一项重要技术创新。作为分布式记账(Distributed Ledger Technology,DLT)平台的核心技术,区块链被认为在金融、征信、物联网、经济贸易结算、资产管理等众多...
  • 2018年区块链安全研究报告-TokenClub-201808.pdf
  • 6月21日,首届中国区块链安全高峰论坛在北京国家会议中心成功召开,大会由中国技术市场协会主办,北京知道创宇信息技术有限公司承办,会议吸引了众多国家权威机构领导、区块链行业大咖、安全行业大佬以及众多行业...
  • 2019年度区块链安全复盘总结

    千次阅读 2020-02-16 09:00:00
    来源 |PeckShield责编 | Carol出品 | 区块链大本营(ID:blockchain_camp)如果说2018年,我们做区块链安全拥有了“上帝视角”,那过去的2019年,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,814
精华内容 3,125
关键字:

区块链安全