python读取树莓派状态(CPU温度,使用率,RAM使用率,硬盘使用率)

运行结果:

 

 

参考:http://shumeipai.nxez.com/2014/10/04/get-raspberry-the-current-status-and-data.html

查看树莓派温度

终端命令1:

终端命令2:

python 函数1:

python 函数2:

python 函数3:

 

 

 

RPI vcgencmd usage

https://elinux.org/RPI_vcgencmd_usage

vcgencmd measure_clock <clock>

vcgencmd measure_volts <id>

vcgencmd measure_temp

 

vcgencmd codec_enabled <codec>

vcgencmd get_config [config|int|str]

vcgencmf get_mem arm/gpu

vcgencmd version

vcgencmd otp_dump

cat /proc/cpuinfo

vcgencmd display_power 0

turn off video output

vcgencmd display_power 1

turn on video output

 

 

 

 

 

 

 

 

 

 

 

NMOS, PMOS

NMOS:Vgs大于一定值就会导通,适用于源极接地(低端驱动),如果源极不接地呢?
PMOS: Vgs小于一定值就会导通,适用于源级接VCC(高端驱动),如果源级不接VCC呢?

Vgs、Vds、Vd、Vs、Vg这些电压之前有什么必要的关系吗?

MOSFET的电流只能单向流动 NMOS(D->S) PMOS(S->D),还是可以双向流动?如果说可以双向流动的话,那么PMOS的参数为什么喜欢标负数呢?仅仅是为了跟NMOS区别开吗?

NMOS是栅极高电平(VGS > Vt)导通,低电平断开,可用来控制与地之间的导通。
PMOS是栅极低电平(VGS < Vt)导通,高电平断开,可用来控制与电源之间的导通。


MOS管的判断:

方法一: 电流进PMOS, 电流出NMOS

方法二: PN结进NMOS, PN结出PMOS


例子:

BSS84: PMOSFET Enhancement SOT23 PMOSFET_Enhancement_BSS84_SOT23

DMG2305UX: PMOSFET Enhancement SOT23 树莓派电源防倒灌使用的MOS管PMOSFET Enhancement SOT23 DMG2305UX 树莓派防倒灌使用

2017回顾,2018继续前行

虽然现在已经是2018年2月,2017早已过去,但一直没时间回顾一下。明天回家过年,难得有时间和心情,还是写写吧。

也是夜深人静时,家人都已睡下。工作台上还散乱地放着各种各样的东西,各种PI, 各种电路板,洞洞板,模块,电池。。。这就是我这一年的缩影。

冬天,夜晚的深圳还是那种熟悉的美,太安静了,也许是几百万人离开这个城市,回家过年的原因吧。忽然想起一个朋友说过,“自从创业,每天12点前他都没有回家,就算没事他都在外面,独坐,思考。。。”,之前无意听也这句话,今天想来,也许他那些夜晚跟这眼前的有那么几分相似吧。

2017年,毕业10年。

2017年,有意无意中,我选择了离开工作多年的公司,离开那规律的朝九晚五,出来去做点事情,去更真实地感觉一下这个社会,市场,人们的感受和需求。

2017年里我经历了很大的改变,主要是工作方式的变化,也更接近想要成为的我。

人总得要为自己的理念想法去做点什么,如果有机会,那就去做吧!

以前的路都是别人给安排好,设计好的路,沿着这路走下来,虽说也付出了很大的汗水和努力,但总算一凡风顺,没有什么大风大浪。但路走到34岁的现在,路在模糊了,前面是一片连成一片的土,沙,海,天。长辈已经尽历了把我送到了今天,社会已经很仁慈了给我机会走到了现在,时代已经很清淅了给了我这一片的舞台!

后面需要我一步一步走踏实了,走出一条路来。

PKCS

PKCS是由美国RSA数据安全公司及其合作伙伴制定的一组公钥密码学标准,其中包括证书申请、证书更新、证书作废表发布、扩展证书内容以及数字签名、数字信封的格式等方面的一系列相关协议。到1999年底,PKCS已经公布了以下标准:
PKCS#1:定义RSA公开密钥算法加密和签名机制,主要用于组织PKCS#7中所描述的数字签名和数字信封[22]。
PKCS#3:定义Diffie-Hellman密钥交换协议[23]。
PKCS#5:描述一种利用从口令派生出来的安全密钥加密字符串的方法。使用MD2或MD5 从口令中派生密钥,并采用DES-CBC模式加密。主要用于加密从一个计算机传送到另一个计算机的私人密钥,不能用于加密消息[24]。
PKCS#6:描述了公钥证书的标准语法,主要描述X.509证书的扩展格式[25]。
PKCS#7:定义一种通用的消息语法,包括数字签名和加密等用于增强的加密机制,PKCS#7与PEM兼容,所以不需其他密码操作,就可以将加密的消息转换成PEM消息[26]。
PKCS#8:描述私有密钥信息格式,该信息包括公开密钥算法的私有密钥以及可选的属性集等[27]。
PKCS#9:定义一些用于PKCS#6证书扩展、PKCS#7数字签名和PKCS#8私钥加密信息的属性类型[28]。
PKCS#10:描述证书请求语法[29]。
PKCS#11:称为Cyptoki,定义了一套独立于技术的程序设计接口,用于智能卡和PCMCIA卡之类的加密设备[30]。
PKCS#12:描述个人信息交换语法标准。描述了将用户公钥、私钥、证书和其他相关信息打包的语法[31]。
PKCS#13:椭圆曲线密码体制标准[32]。
PKCS#14:伪随机数生成标准。
PKCS#15:密码令牌信息格式标准[33]。

Note: PKCS #2 and PKCS #4 have been incorporated into PKCS #1
PKCS #1: RSA Cryptography Standard
PKCS #3: Diffie-Hellman Key Agreement Standard
PKCS #5: Password-Based Cryptography Standard
PKCS #6: Extended-Certificate Syntax Standard
PKCS #7: Cryptographic Message Syntax Standard
PKCS #8: Private-Key Information Syntax Standard
PKCS #9: Selected Attribute Types
PKCS #10: Certification Request Syntax Standard
PKCS #11: Cryptographic Token Interface Standard
PKCS #12: Personal Information Exchange Syntax Standard
PKCS #13: Elliptic Curve Cryptography Standard
PKCS #15: Cryptographic Token Information Format Standard
PKCS Mailing Lists
Workshopsi

11.3 PKCS标准

公钥密码标准(PKCS)最初是为推进公钥密码系统 的互操作性,由RSA实验室与工业界、学术界和政府代表合作开发的。在RSA带领下,PKCS的研究随着时间不断发展,它涉及了不断发展的PKI格式标 准、算法和应用程序接口。PKCS标准提供了基本的数据格式定义和算法定义,它们实际是今天所有PKI实现的基础。

11.3.1 PKCS标准的内容

PKCS标准如下:

(1)PKCS#1:RSA加密标准。PKCS#1定义了RSA公钥函数的基本格式标准,特别是数字签名。它定义了数字签名如何计算,包括待签名数据和签名本身的格式;它也定义了PSA公/私钥的语法。

(2)PKCS#2:涉及了RSA的消息摘要加密,这已被并入PKCS#1中。

(3)PKCS#3:Diffie-Hellman密钥协议标准。PKCS#3描述了一种实现Diffie- Hellman密钥协议的方法。

(4)PKCS#4:最初是规定RSA密钥语法的,现已经被包含进PKCS#1中。

(5)PKCS#5:基于口令的加密标准。PKCS#5描述了使用由口令生成的密钥来加密8位位组串并产生一个加密的8位位组串的方法。PKCS#5可以用于加密私钥,以便于密钥的安全传输(这在PKCS#8中描述)。

(6)PKCS#6:扩展证书语法标准。PKCS#6定义了提供附加实体信息的X.509证书属性扩展的语法(当PKCS#6第一次发布时,X.509还不支持扩展。这些扩展因此被包括在X.509中)。

(7)PKCS#7:密码消息语法标准。PKCS#7为使用密码算法的数据规定了通用语法,比如数字签名和数字信封。PKCS#7提供了许多格式选项,包括未加密或签名的格式化消息、已封装(加密)消息、已签名消息和既经过签名又经过加密的消息。

(8)PKCS#8:私钥信息语法标准。PKCS#8定义了私钥信息语法和加密私钥语法,其中私钥加密使用了PKCS#5标准。

(9)PKCS#9:可选属性类型。PKCS#9定 义了PKCS#6扩展证书、PKCS#7数字签名消息、PKCS#8私钥信息和PKCS#10证书签名请求中要用到的可选属性类型。已定义的证书属性包括 E-mail地址、无格式姓名、内容类型、消息摘要、签名时间、签名副本(counter signature)、质询口令字和扩展证书属性。

(10)PKCS#10:证书请求语法标准。PKCS#10定义了证书请求的语法。证书请求包含了一个唯一识别名、公钥和可选的一组属性,它们一起被请求证书的实体签名(证书管理协议中的PKIX证书请求消息就是一个PKCS#10)。

(11)PKCS#11:密码令牌接口标准。 PKCS#11或“Cryptoki”为拥有密码信息(如加密密钥和证书)和执行密码学函数的单用户设备定义了一个应用程序接口(API)。智能卡就是实 现Cryptoki的典型设备。注意:Cryptoki定义了密码函数接口,但并未指明设备具体如何实现这些函数。而且Cryptoki只说明了密码接 口,并未定义对设备来说可能有用的其他接口,如访问设备的文件系统接口。

(12)PKCS#12:个人信息交换语法标准。PKCS#12定义了个人身份信息(包括私钥、证书、各种秘密和扩展字段)的格式。PKCS#12有助于传输证书及对应的私钥,于是用户可以在不同设备间移动他们的个人身份信息。

(13)PDCS#13:椭圆曲线密码标准。PKCS#13标准当前正在完善之中。它包括椭圆曲线参数的生成和验证、密钥生成和验证、数字签名和公钥加密,还有密钥协定,以及参数、密钥和方案标识的ASN.1语法。

(14)PKCS#14:伪随机数产生标准。 PKCS#14标准当前正在完善之中。为什么随机数生成也需要建立自己的标准呢?PKI中用到的许多基本的密码学函数,如密钥生成和Diffie- Hellman共享密钥协商,都需要使用随机数。然而,如果“随机数”不是随机的,而是取自一个可预测的取值集合,那么密码学函数就不再是绝对安全了,因 为它的取值被限于一个缩小了的值域中。因此,安全伪随机数的生成对于PKI的安全极为关键。

(15)PKCS#15:密码令牌信息语法标准。 PKCS#15通过定义令牌上存储的密码对象的通用格式来增进密码令牌的互操作性。在实现PKCS#15的设备上存储的数据对于使用该设备的所有应用程序 来说都是一样的,尽管实际上在内部实现时可能所用的格式不同。PKCS#15的实现扮演了翻译家的角色,它在卡的内部格式与应用程序支持的数据格式间进行 转换。

11.3.2 PKCS主要用途

以上标准主要用于用户实体通过RA的证书申请、用户的证书更新过程。当证书作废时,RA通过CA向目录服务器中发布证书撤销列表CRL,用于扩展证书内容,以及数字签名与验签过程和实现数字信封格式定义等一系列相关协议。

转:http://blog.csdn.net/buptisc_txy/article/details/5363635

 

x509和pkcs12以及pkcs7的关系和区别

都是格式。
x509,公钥证书,只有公钥。
p7,签名或加密。可以往里面塞x509,同时没有签名或加密内容。

p12,含有私钥,同时可以有公钥,有口令保护。

p7的作用就是电子信封。

X509是基本规范
P7和P12是两个实现规范,P7是数字信封,P12是带有私钥的证书规范。

x509是数字证书的规范,P7和P12是两种封装形式。比如说同样的电影,有的是avi格式,有的是mpg,大概就这个意思。
P7一般是把证书分成两个文件,一个公钥一个私钥,有PEM和DER两种编码方式。PEM比较多见,就是纯文本的,P7一般是分发公钥用,看到的就是一串可见字符串,扩展名经常是.crt,.cer,.key等。DER是二进制编码。
P12是把证书压成一个文件,.pfx 。主要是考虑分发证书,私钥是要绝对保密的,不能随便以文本方式散播。所以P7格式不适合分发。.pfx中可以加密码保护,所以相对安全些。
在实践中要中,用户证书都是放在USB Key中分发,服务器证书经常还是以文件方式分发。服务器证书和用户证书,都是X509证书,就是里面的属性有区别。

X509 是证书规范
PKCS#7 是消息语法 (常用于数字签名与加密)
PKCS#12 个人消息交换与打包语法 (如.PFX .P12)打包成带公钥与私钥
还有其它常用的是PKCS#10 是证书请求语法。

转:http://blog.csdn.net/zhou1021jian/article/details/50973912