寒冬激荡中的区块链,凭什么这个项目一鸣惊人?
一、传统公链的是与非 比特币知名度有多高?哪怕远在信息相对闭塞的乡镇小城,很多人都开始讨论什么是比特币了。我同事一脸严肃的说,我爸可能不知道什么是区块链,但他肯定听说过比特币!嗯,这件事我是相信的。 比特币开启了区块链成功落地之先河最成功的典范,也是目前知名度最高的区块链应用。比特币是一个分布式网络,它采用PoW共识机制,不需要第三方机构控制,全都由节点的计算产生,后来的项目或多或少都受到它的启发。 以太坊是在比特币之后出现的,被称为是“区块链2.0”的产品。虽然同属于点对点的网络协议,但相比
大咖说 | 胡志琳:分布式系统概述
对话 | 大咖 本期参与交流的技术大咖是:胡志琳 胡志琳,资深系统研发,清华大学直博,曾系统设计并实现某重点军工项目的关键设备,曾就职于滴滴出行等知名互联网公司。 热衷于区块链系统的理论研究和工程实现,熟练掌握Bitcoin、Ethereum和EOS等区块链技术。 主要负责分布式系统共识算法的分析、设计与研发,以及密码学和零知识证明等在实际业务中应用落地。 了解分布式系统,读这一遍文章就足够了。 1、分布式系统概述 分布式系统是由一组通过网络进行通信、为了完成共同任务而协调工作的大量计算机节点
比特币扩容及其对价格的影响
在之前的文章中, 我们提到“当比特币进行结构变化时(如扩容和分叉)对价格的影响最大”。今天的文章我们从介绍扩容之争、比特币分叉开始,并尝试分析其引起价格波动的原因。 改革,势在必行 比特币区块的容量大小决定了单个区块内同时可能被处理的交易数量。 众所周知,比特币中一个区块的容量只有1M,而一笔交易是250字节甚至更多,我们可以算一下: 比特币一个区块的容量是1M 1M=1024KB(千字节)=1048576字节, 那么一个区块包含的交易总数为:1048576÷250≈ 4194.3(笔) 比特
北大学术 | 浅谈“自私挖矿”攻击
浅谈“自私挖矿”攻击 作者:李聪,冯新宇 Trias联合“北大软微-八分量协同创新实验室”定期举办技术沙龙。该实验室成立于去年9月份,以可信计算、区块链等作为主要研究方向,致力于推动智能互联新时代下的人机互信问题的解决。 现在,我们会推出由实验室教授、博士生以及硕士生主笔撰写的系列文章。本期文章由北京大学的博士生李聪,冯新宇撰写。 1.“自私挖矿”攻击 传统观点认为,比特币的挖矿协议是激励相容的,它可以抵御少数群体的合谋攻击,并激励矿工按照协议规定的方式进行挖矿。比特币挖矿协议之所以能实现这一
GPRS/3G/4G无线数传DTU充电桩开关量模拟量IP MODEM远程测控
方案需求充电桩主要由桩体、计量模块及电气模块组成,基础结构类似于低压配电柜。充电桩主要分为交流充电桩和直流充电桩。交流充电桩一般功率在数KW左右,适用于慢速充电,一般有RS485或者RS232接口,通过DTU将充电数据上传云端,通过云端应用计算扣费方式。直流充电桩的功率一般在数10KW,提供快速充电服务,主要应用于各种类型充电站,高速公路等快速充电场合。技术部署充电桩系统由充电桩、DTU、后端管理
北大学术 | 你知道屏幕背后是谁吗?——可信计算之远程证明
Trias联合“北大软微-八分量协同创新实验室”定期举办技术沙龙。该实验室成立于去年9月份,以可信计算、区块链等作为主要研究方向,致力于推动智能互联新时代下的人机互信问题的解决。 针对沙龙具体细节问题,我们将推出由实验室教授、博士生以及硕士生主笔撰写的系列文章。本期文章由北京大学的硕士生赵振宇撰写。 在Trias公众号之前的文章中,已经对可信计算这一技术做过了介绍,(具体见《可信计算概述》那篇文章)在今天我们将对可信计算中的一个关键技术,远程证明,来做一下深入的探讨与剖析。当然,在此之前,我们
北大学术 | 以太坊p2p网络结构算法概述
Trias联合“北大软微-八分量协同创新实验室”定期举办技术沙龙。该实验室成立于去年9月份,以可信计算、区块链等作为主要研究方向,致力于推动智能互联新时代下的人机互信问题的解决。针对沙龙具体细节问题,我们将推出由实验室教授、博士生主笔撰写的系列文章。本期文章由北京大学的博士生张晓磊撰写。 最近非常火的区块链技术对于大家来说应该并不陌生。但是很多人只是了解区块链技术的一些概念,对其底层的一些技术实现原理可能不是很了解。这篇文章会向你介绍区块链底层采用的通信网络技术及其网络中节点间的通信协议。 区
北大学术 | 基于属性的加密概述
Trias联合“北大软微-八分量协同创新实验室”定期举办技术沙龙。该实验室成立于去年9月份,以可信计算、区块链等作为主要研究方向,致力于推动智能互联新时代下的人机互信问题的解决。针对沙龙具体细节问题,我们将推出由实验室教授、博士生主笔撰写的系列文章。本期文章由北京大学的两位博士生李聪、冯新宇撰写。 关注信息安全圈的小伙伴,九月初可能看到了一则新闻,欧洲电信标准协会(ETSI)发布了两套新的基于属性的加密(Attribute-Based Encryption,ABE,下文的描述中均使用英文缩写)
大咖说 | 尹朝明 :什么才是公链的核心竞争力?
对话 | 大咖 尹朝明,Trias首席算法架构师,获得佐治亚理工学院计算机博士、北京大学硕士学位。 曾任阿里巴巴EB级大数据平台高级工程师,在美国甲骨文公司及英特尔研究院有多年图计算、分布式系统全球研发经验。在ACM SIGMOD 等杂志/会议上发表论文多篇,Google scholar 引用170多篇。 目前,区块链行业可以说是百花齐放、百家争鸣;各路大神、各路产品让人应接不暇。区块链未来发展重在产品,而产品的发展则重在技术。 今天,我们对话尹朝明博士,对区块链行业值得欣赏的人,未来可能脱颖
localStorage(本地存储)与sessionStorage(会话存储)的区别与方法
localStorage生命周期是永久,用户除非在浏览器上删除localStorage的信息,否则这些信息将永远存在于浏览器中。存放数据大小为一般为5MB, 而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信。 sessionStorage仅在当前会话下有效,关闭页面或浏览器后被清除。存放数据大小为一般为5KB, 而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信。 两种都有相同的方法: localStorage sessionStorage localStorage.setIte
用vue将数字转为中文大写金额
记得引入vue.js文件 <html lang="en">
<head>
<meta charset="UTF-8">
<title>用vue将数字转为中文大写金额</title>
<script src='vue.js'></script>
</head>
<body>
<div id="box">
<h1 v-if='flag'>我已经限制长度了,放弃吧</h1>
<h1 v-if='flag'><button @click='shutDown'>关闭</button></
react创建项目步骤
步骤: 1、首先全局安装npm install -g create-react-app 2、然后输入create-react-app 项目名称 3、接着cd 项目名称,进入你刚刚创建的那个项目 4、安装完成,npm start让项目跑起来 注意: 如果第2步安装报错的话 先用npm -v查一下你电脑上的npm版本号是多少, 如果高于5.2的话,就在第2步的命令前面加一个npx。 也就是npm create-react-app 项目名称)
react中用swiper做轮播步骤
第一步:在cmd中引入 npm install --save swiper 第二步: 在页面上引入: import Swiper from ‘swiper/dist/js/swiper.js’ import ‘swiper/dist/css/swiper.min.css’ 第三步:在生命周期钩子函数componentDidMount()中写入轮播方法 componentDidMount(){
var mySwiper = new Swiper('.swiper-containe
react中fetch请求
1.首先在cmd中下载: npm install whatwg-fetch
2.在react中引入 import React, { Component } from 'react'
import 'whatwg-fetch'
3.请求数据 fetch('https://api.github.com/users/chrissycoyier/repos')
.then(response => response.json())
.then(data => console.log('
react-router知识点
首先做react路由时我们需要引入:↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ import { BrowserRouter as Router, Route, Link, NavLink, withRouter } from ‘react-router-dom’; 注意点: 1 .Router标签只有一个包裹在最外层并且有一个唯一的子元素(div包裹其他),as代表起别名 2 .Router代表将要来显示视图的地方 属性path:和url进行匹配的路径 component属性的值是{要加
vue引入animate.css及样式大全
一、首先我们要在小黑窗中下载: npm install animate.css --save 二、在main.js中引入: import animated from ‘animate.css’ Vue.use(animated) 三、开始写我们的template标签里的内容。。这里注意他们的类名要是animated这个类名 ,, 在这个类名后面加入我们想要的样式,以此来显示出我们想要的样式。 <template>
<div>
<!-- 直接使用animated中的动画class名,
今日推荐
周排行