谷歌推双重认证安全密匙硬件产品Titan

据外媒报道,昨日,谷歌公布了一项惊人的统计数据,这家公司指出,自2017年年初开始,其8.5万名职工的工作账号未曾遭到过泄露。作为一家全球性的互联网巨头公司,按理说它会是钓鱼攻击的主要目标之一,那这家公司究竟是如何做到这点的呢?

这是因为谷歌开始要求其员工使用硬件安全密匙进行双重身份认证。

如今,双重认证已经变得非常普遍,但并非所有方法都是一样安全的。像基于SMS的双重认证,其肯定比只使用密码保护账号更安全,但它却存在漏洞。而物理密匙现在则被广泛认为是一种更加安全的双重认证,谷歌于昨日提出的主张就支持了这一观点。

对此,当看到谷歌开始涉足安全密匙业务领域也就不足为奇了。今日,这家公司发布了一款叫做Titan的新产品,这是一款兼容FIDO的物理密匙,它可用来保护支持该硬件的账号。眼下,来自世界各地的大型网站都已经支持通过安全密匙进行双重认证的方式,包括Facebook、Twitter。

据了解,Titan将有两个版本:USB版和蓝牙版。USB版,很显然需要将设备插到电脑的USB端口展开认证,而蓝牙版则用于移动设备的无线认证。获悉,两款密匙设备的套装价将在50美元左右,单独购买的话售价大概是20美元或25美元。

目前,Titan只适用于Google Cloud用户–他们可以在注册后免费试用–但谷歌表示,他们将很快通过Google Store向所有人提供这项服务。

一些实用的Python开发资料

Python是一种广泛使用的高级编程语言,由Guido van Rossum创造,第一版发布于 1991 年。Python 的设计哲学强调了代码的可读性和简洁的语法。随着物联网、大数据的兴起,越来越多的人开始研究起这门语言。

【Kaggle的免费Python教程】

Python – Learn the most important language for Data Science

https://www.kaggle.com/learn/python

英文,免费,偏向于数据科学方向。

××××××××××××××××××××××××××××××××××

【廖雪峰的Python3教程】

https://www.liaoxuefeng.com/wiki

/0014316089557264a6b348958f449949df42a6d3a2e542c000

中文,免费,零起点,完整示例,基于最新的Python 3版本。

××××××××××××××××××××××××××××××××××

【Python轻量级Web框架Flask教程】

http://flask.pocoo.org/docs/1.0/

英文,官方,零起点。

××××××××××××××××××××××××××××××××××

【Python 资源大全中文版】

https://github.com/jobbole/awesome-python-cn

我想很多程序员应该记得 GitHub 上有一个 Awesome – XXX 系列的资源整理。awesome-python 是 vinta 发起维护的 Python 资源列表,内容包括:Web 框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析等。由伯乐在线持续更新。

Awesome 系列虽然挺全,但基本只对收录的资源做了极为简要的介绍,如果有更详细的中文介绍,对相应开发者的帮助会更大。这也是我们发起这个开源项目的初衷。

树莓派常用工具

树莓派官方系统 Raspbian(lite版和桌面版注意分清):

下载地址:https://www.raspberrypi.org/downloads/raspbian/

默认帐号:Username: pi Password: raspberry

镜像烧录工具 Win32diskimager(用来将镜像文件写入 MicroSD 卡):

下载地址:https://sourceforge.net/projects/win32diskimager/files/latest/download

SSH客户端 Putty(远程连入树莓派命令行操作工具):

下载地址:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

WinSCP客户端(远程传输文件到树莓派的工具):

下载地址:https://winscp.net/eng/download.php

SD卡格式化工具:

下载地址:https://www.sdcard.org/downloads/formatter_4/

 

 

Raspbian 中国软件源(2018.7.13版)

使用树莓派 Raspbian 系统的中国用户,通常会遇到从官方站更新和安装软件时候速度比较慢的问题,IoT前哨站整理了一些东亚地区速度比较快的软件源供大家使用(如果有不能用的可通知我们剔除,有新的可信的也可以让我们加进去)。

相关镜像站:

浙江大学
http://mirrors.zju.edu.cn/raspbian/raspbian/

中国科学技术大学
http://mirrors.ustc.edu.cn/raspbian/raspbian/

阿里云
http://mirrors.aliyun.com/raspbian/raspbian/

清华大学
http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/

华南农业大学(华南用户)
http://mirrors.scau.edu.cn/raspbian/

大连东软信息学院源(北方用户)
http://mirrors.neusoft.edu.cn/raspbian/raspbian/

重庆大学源(中西部用户)
http://mirrors.cqu.edu.cn/raspbian/raspbian/

新加坡国立大学
http://mirror.nus.edu.sg/raspbian/raspbian

韩国KAIST大学
http://ftp.kaist.ac.kr/raspbian/raspbian/

使用方式:

编辑/etc/apt/sources.list 文件,参考如下命令:

sudo nano /etc/apt/sources.list

如果是 stretch 版本,用以下内容取代(以此类推):

deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ stretch main contrib non-free

# Uncomment line below then ‘apt-get update’ to enable ‘apt-get source’
#deb-src http://raspbian.raspberrypi.org/raspbian/ stretch main contrib non-free rpi

保存文件后用root权限执行:

apt update即可。

可根据自己的情况选择就近的站点。

 

溢价收购CA不务正业?半导体大厂博通股价暴跌

据MarketWatch北京时间7月12日报道,芯片巨头博通周三宣布,同意斥资189亿美元收购云软件和企业软件开发商CA Technologies。然而,这笔交易引发市场诸多质疑,导致博通股价在周四早盘暴跌了近18%。

根据两家公司的声明,博通将以每股44.50美元收购CA的全部流通股。以后者周三的收盘价计算,此交易的溢价幅度约为20%;较CA过去30个交易日的平均股价溢价约23%。

博通CA的交易如果能够获得美国、欧盟和日本反垄断监管部门的批准,能够帮助其多元化业务。博通与CA两家公司的董事会已批准了这一交易。

博通首席执行官兼总裁陈福阳(Hock Tan)在声明中表示:“这宗交易代表着我们创办全球领先的基础设施科技公司的重要基石。凭借其庞大的客户基数,CA独具特色地跨越了日益增长和支离破碎的基础设施软件市场,其中央处理器和企业软件产品将为我们的关键技术业务增光添色。”

和此前博通计划收购高通时的针锋相对不同,此次,CA方面也表达了欣然接受的意愿。该公司CEO在公开声明中说:“这宗交易组合将使得我们的软件专长与博通在半导体行业的领导地位维持一致。”

根据公开资料显示,CA是全球最大的IT管理软件公司之一,专注于为企业整合和简化IT管理。CA创建于1976年,总部位于美国纽约长岛,服务于全球140多个国家的客户。近来,公司的主要业务转向了主要以生产基于云的企业软件和传统软件。而且,公司此前的高速发展主要凭借一系列的兼并和并购交易实现,这与博通非常相似。

然而,对于博通的此次收购,华尔街存在诸多疑问。

首先的疑问是,在有博通收购高通被否的前车之鉴下,博通此次收购CA会不会再次被特朗普政府一票否决?

加拿大皇家银行分析师阿米特·德莱纳里(Amit Daryanani)周三在给客户的邮件里写道,博通对CA的收购案中,最需要关注的是,政策审批层面的问题,虽然博通的此项交易不需要通过中国的审批,另外,此前,博通已经在上次收购高通遇阻后,将总部从新加坡迁至了美国,也就是说,博通此次收购不再需要通过美国外国投资委员会的审批。但是这项交易仍需要通过美国反垄断机构的审核,在欧盟和日本也同样需要接受相关的审批,而CA股东也尚未批准这一交易。

其次,虽然CA未来可能会给博通带来充足的现金流,但是博通此次收购CA的举动仍然让很多投资者摸不清头脑。德莱纳里指出,博通的这笔交易还有很多疑点需要向投资者解释。

虽然我们理解博通想要从CA获得更充足的现金流的投资逻辑,但是,我们依旧想不通这笔交易是否会影响博通原本的战略计划,以及后市是否会对公司的资本配置造成较大影响。投资者仍需要弄清楚,博通为什么想买入一家软件公司?这笔交易跟公司的核心业务又有什么联系?

如果博通想好了要偏离原来的核心半导体业务来进行业务扩张,那么它的边际在哪里?而且,最让人担忧的是,博通此前承诺要通过股息派送归还投资者一半的年度现金流,但是此次现金收购以后,公司的这个承诺还会兑现吗?

新一代iPhone或支持eSIM 运营商控制权将被削弱

距离苹果 2018 年秋季发布会还有两个月时间,消费者对下一代 iPhone 的热情高涨,但是对于移动运营商来说,新款 iPhone 可能会让他们感到不快。

一份最新的报告显示,苹果可能会在下一代 iPhone 中加入一款 eSIM 芯片。传统的塑料 SIM 卡需要放在卡托盘上,然后推入卡槽中。如果没有它,手机就无法获得运营商服务。但是,eSIM 是一种芯片,它实际上是被焊接到手机的电路板上的。除了不需要 SIM 卡托盘之外,eSIM 甚至不需要消费者前往运营商营业厅更换 SIM 卡。

从消费者的角度来看,这将是一个令人消费的消息,当然,运营商除外。只要有了 eSIM,iPhone 用户就可以在运营商之间随意切换,更换手机 SIM 卡这部分麻烦将不复存在。消费者需要做的就是注册服务并等待运营商的自动激活。

如果苹果在今年秋天发布的新款 iPhone 中加入 eSIM 芯片,这可能标志着运营商和用户之间的关系的终结。消费者可能会倾向于先购买硬件,然后再决定选择哪家运营商。简单地说,运营商将开始失去控制,这必然会让他们感到担忧。

值得注意的是,苹果已经在 Apple Watch Series 3 中使用了 eSIM 技术,因此,将这种芯片应用到最新款 iPhone 手机上也不是不可能。

Polar旗下可穿戴设备App出现漏洞:泄露用户位置

据美国科技网站The Verge援引欧洲媒体报道,法国可穿戴智能设备公司Polar提供的App在隐私设置上存在漏洞,导致App中有一项功能会泄露用户的位置信息。目前该公司已停止相关服务。

Polar是一家法国公司,它生产多种智能设备,包括Polar Balance智能体重秤、M600智能手表、M430跑步手表,所有这些设备都可以连接到公司的健身App,也就是Polar Flow。

Explore是Polar Flow的一项功能,它相当于用户的活动地图,可以追踪全球许多用户的活动数据。如果用户决定通过Explore公开分享数据,其他人就能看到他的所有锻炼信息。用户也可以将信息设置为私有,这样一来,Polar服务就不会与第三方App分享信息。

调查发现,恶意使用者可以利用Polar地图数据确定敏感军事基地的位置,而且还可以获取用户的名字、地址信息。在Explore地图中可以看到用户的活动,甚至包括士兵的活动,这些士兵在伊拉克打击ISIS。

周五时,Polar发表声明,对自己的疏忽表达歉意,它还说公司已经在Flow App中停用Explore功能,并说之前没有泄露过数据,公司称:“我们正在分析最佳选择,希望能让Polar客户继续使用Explore功能,同时还会采取其它措施提醒客户,让他们不要公开分享与敏感位置有关的GPS文件。”

利用TurniBit开发板DIY一套自动窗帘模拟系统

一、准备工作

TurnipBit 开发板 一块

下载数据线 一条

微型步进电机(28BYJ-48) 一个

步进电机驱动板(ULN2003APG) 一块

光敏传感器 一个

TurnipBit 扩展板 一块

接入网络的电脑 一台

在线可视化编程器

二、步进电机的介绍

本次实验采用的是28BYJ-48 四相八拍电机,电压DC5V~12V。

24BYJ48名称的含义:

24:电机外径24mm

B:步进电机中步字的拼音首字母

Y:永磁中永字的拼音首字母

J:减速的减字拼音首字母

48:四相8步

工作原理

步进电机是将电脉冲信号转变为角位移或线位移的开环控制电机,是现代数字程序控制系统中的主要执行元件,应用极为广泛。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。


28BYJ-48 步进电机参数表

上表中启动频率≥550 P.P.S(每秒脉冲数),意思是要想正常启动,需要单片机每秒至少给出550个步进脉冲。那么每一节拍需要持续的时间就是1S/550≈1.8ms,所以控制节拍刷新的速率应大约1.8ms。

驱动原理

当连续不断的给电机发送控制脉冲时,电机就会不断的转动。每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,对应转子就会转过一定的角度(步距角)。当通电状态的改变完成一个循环时,转子转过一个齿距。

四相步进电机可以在不同的通电方式下运行,常见的通电方式:

四拍(单相绕组通电):A-B-C-D-A…

双四拍(双相绕组通电):AB-BC-CD-DA-AB-…

八拍: A-AB-B-BC-C-CD-D-DA-A…

三、器件的连接

1、将步进电机白色接头插到驱动板对应的座子上。

2、TurnipBit对应插入扩展板,记住带有LED灯和按键的一面朝向扩展板带有针脚的一侧。

3、将驱动板与TurnipBit扩展板连接起来。接线图如下:

4、将光敏传感器与TurnipBit扩展板连接起来。接线图如下:

四、开始编程

1、之前的教程一直都是使用拖拽可视化编程,这种方式可以快速让零基础小伙伴入门,但是在实际项目或工作中,还是要直接敲代码的。今天就给大家介绍一下TurnipBit的可视化编程器的另一项功能–代码编程。

之前看过编程的小伙伴,不难发现,一打开编辑器首先进入的就是代码编程器界面。如下图:

2、接下来用代码实现对步进电机的控制和光照数据的采集。

当光照变弱时,步进电机顺时针旋转一周,模拟关闭窗帘的操作;

当光照变强时,步进电机逆时针旋转一周,模拟打开窗帘的操作;

完成源代码:

# 在这里添加Python代码
from microbit import *
  Pin_All=[pin5,pin8,pin11,pin12]
  #转速(ms) 数值越大转速越慢 最小值1.8ms
speed=5
  STEPER_ROUND=512 #转动一圈(360度)的周期
ANGLE_PER_ROUND=STEPER_ROUND/360 #转动1度的周期
  isOpen=False#表示窗帘的状态 True:打开 False:关闭
  def SteperWriteData(data):
    count=0
    for i in data:
        Pin_All[count].write_digital(i)
        count+=1
def SteperFrontTurn():
    global speed
    SteperWriteData([1,1,0,0])
    sleep(speed)
      SteperWriteData([0,1,1,0])
    sleep(speed)
      SteperWriteData([0,0,1,1])
    sleep(speed)
    SteperWriteData([1,0,0,1])  
    sleep(speed)
def SteperBackTurn():
    global speed
    SteperWriteData([1,1,0,0])
    sleep(speed)
    SteperWriteData([1,0,0,1])  
    sleep(speed)
    SteperWriteData([0,0,1,1])
    sleep(speed)
      SteperWriteData([0,1,1,0])
    sleep(speed)
  def SteperStop():
    SteperWriteData([0,0,0,0])
def SteperRun(angle):
    global ANGLE_PER_ROUND
      val=ANGLE_PER_ROUND*abs(angle)
    if(angle>0):
        for i in range(0,val):
            SteperFrontTurn()
    else:
        for i in range(0,val):
            SteperBackTurn()
    SteperStop()
while True:
    light=pin0.read_analog()#读取光敏传感器传递过来的模拟量数据
    #数值越大说明光照度越小
    if light>400:
        if isOpen:
            isOpen=False
            SteperRun(-360)#光照小于设定的值,关闭窗帘
    else:
        if isOpen==False:
            isOpen=True
            SteperRun(360)#光照大于设定的值,打开窗帘

* 本文作者:bodasister,来自FreeBuf.COM

微软正式开源 Azure IoT Edge 边缘计算服务

微软宣布,2017年底公开预览的 Azure IoT Edge 边缘计算服务已发布正式版,并通过 GitHub 将其开源。Azure IoT Edge 主要将基于云的分析和定制的业务逻辑转移到边缘设备,使企业能够专注于洞察商业机会而非数据管理。 微软表示,这些设备现在将能够立即采取实时数据行动。

借助开源的 Azure IoT Edge,开发人员可以更灵活地控制自己的边缘解决方案,以及运行时或调试问题。

此外,Azure IoT Edge 的正式版本也将支持 Docker 兼容的 Moby 容器管理系统。 微软还将扩展针对物联网的 Azure 认证,以开始针对边缘设备的软件和硬件认证,包括运行时,设备管理和安全性。

为了解决 Azure IoT Edge 大规模部署的安全问题,Azure IoT Edge 深入集成了设备调配服务,以安全地配置数以万计的设备和 Azure IoT Edge 安全管理员,这些管理员可以用来保护边缘设备及其组件。 自动设备管理(ADM)可以基于设备元数据将大型物联网边缘模块部署到设备。

Azure IoT Edge 支持 C#,C,Node.js,Python 和 Java 等编程语言。 它还提供 VSCode 模块开发,测试和部署工具,以及带 VSTS 的 CI/CD 管道。

部署 Azure IoT Edge 有三个必要组件,即 Azure IoT Edge Runtime,Azure IoT Hub 和 Edge 模块。 Azure IoT Edge Runtime 是免费且开源的,但客户必须使用付费的 Azure IoT Hub 实例进行扩展。 边缘设备的管理和部署也将基于 Azure 服务或客户使用的 Edge 模块。

需要下载微软开源的Azure IoT Edge 代码请访问:

https://github.com/Azure/iotedge

来自:开源中国

Fuchsia 操作系统将兼容Debian Linux 应用

Fuchsia是谷歌公司新推出的一款更适合物联网的操作系统。这款新操作系统和安卓以及Chrome OS都不同,因为它没有使用Linux内核。

正在人们为其兼容性担忧之时,谷歌最近宣布为 Fuchsia OS 增加了一个用于运行 Debian Linux 应用程序的模拟器。以使 Linux 应用程序能够在 Fuchsia 中作为虚拟机(VM)运行。和之前发布的模拟器不同,谷歌声称:其“Guest” App 与宿主 Fuchsia 的集成会更加紧密。

对于有些人来说,Linux 不仅是 Android 和 Chrome OS 的基础,也是谷歌企业平台的基础,所以 Fuchsia 似乎是一种“背叛”。

毫无疑问,谷歌有一些非常好的理由要避免使用 Linux。一个原因可能是 Linux“年纪太大”,太复杂了。如果从头开始做一个东西,谷歌就可以避开这些问题,使用更优雅的代码,给黑客留下最少的可乘之机。谷歌还将安全更新深植到操作系统中,通过隔离应用程序让它们无法直接访问系统内核,这点与 Linux 是不一样的。

早在 2016 年,我们认为谷歌可能会将 Fuchsia 作为一个私有操作系统,就像苹果公司将 iOS 的一切牢牢控制在手中一样。尽管不排除这个可能性,但至少现在 Fuchsia 仍然是一个开源项目。

有些人还推测,谷歌因为无法在微处理器(MCU)领域扩大规模而绕过了 Linux。然而,基于 MCU 的物联网似乎并不是目前 Fuchisa 关注的焦点。一些报道称,Fuchsia 旨在替代 Android 和 Chrome OS,最终的组合平台将被称为 Google Andromeda。

今年早些时候,9to5Google 报道说,Fuchsia 将包含独立的 UI——用于手机的 Armadillo UI 和用于桌面的 Capybara UI——以及 Android Things 和其他新的 Android 变体,将紧密集成谷歌智能助理语音技术。从本质上讲,这与微软未能为手机和笔记本电脑提供通用的 Windows 或 Canonical 已停用的“融合”版 Ubuntu 计划如出一辙。

无论 Fuchsia 的命运将如何,谷歌需要吸引到成熟的应用程序和开发者,而实现这一目标的最佳方式就是增加 Linux 应用程序兼容性。9to5Google 建议,为了实现该目标,新的 Guest App 最开始应该先支持包括 Debian 在内的 Linux 平台,通过调用 Machina 库实现比 QEMU(虚拟操作系统模拟器)更好的集成。

谷歌将 Fuchsia 的 Machina 描述为“一个建立在 Zircon 之上的库,提供与 Garnet 系统集成的虚拟外设。”Zircon 是基于 Little Kernel(LK)的 Fuchsia 微内核,之前叫作 Magenta。Garnet 是直接位于 Zircon 之上的层,提供设备驱动程序、Escher 图形渲染器、Fuchsia 的 Amber 更新程序以及用于 Xi 编辑器的 Xi Core 引擎。其他层包括用于应用设计的 Peridot,以及 Topaz,一个支持 Flutter 的应用层。

Machina 采用了 Virtio 虚拟化标准,基于 Linux 内核的虚拟机(KVM)也采用了该标准。Machina 使用了 Virtio 的 vsock 虚拟套接字,“它可以在宿主操作系统与客户应用之间打开直接通道,而这种便利性无法通过其他方式实现”。

这样可能可以实现快速的鼠标移动、自动调整屏幕分辨率,并支持多显示器、文件传输以及复制和粘贴。这看起来很像人们所期望的通过谷歌 Crostini 在 Chrome OS 上运行 Linux 应用程序的仿真度。早些时候有关 Guest App 的报道表示,谷歌正在将 Android 运行时构建到 Fuchsia 中,而不是单纯依靠模拟器来运行 Android 应用程序。

我们应该以客观的态度看待模拟器。大多数基于 Linux 的移动操作系统厂商都承诺具备 Android 应用兼容性,但通常都未能兑现他们的诺言。因此,通过在一开始就将模拟器深植到宿主操作系统中,而不是在后面才添加。Fuchsia 可能因为此举而为 Linux 开发者提供了一个更“真实的”模拟器。