随笔分类 - 加密与校验
摘要:概述 mbedtls github mbedtls实现常用的加密/解密算法,X.509证书操作以及TLS/DTLS 协议。它的各个功能模块相对独立、耦合低,可以通过配置宏定义裁剪,非常适合用于嵌入式系统。mbedTLS是高度模块化的设计:每个组件,如加密函数,可以独立于框架的其余部分使用。mbedT
阅读全文
摘要:加密方案 入门方案 将明文密码做单向哈希后存储。 单向哈希算法有一个特性,无法通过哈希后的摘要(digest)恢复原始数据,这也是“单向”二字的来源,这一点和所有的加密算法都不同。常用的单向哈希算法包括SHA-256,SHA-1,MD5等。例如,对密码“passwordhunter”进行SHA-25
阅读全文
摘要:一. 基础 区块链是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的技术保证数据传输和访问控制的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。目前,区块链被很多大型机构称为彻底改变业务乃至机构运作模式的重大突破性
阅读全文
摘要:1. Golang中证书相关包 crypto/tls实现tls1.2和tls1.3。 type Config struct { ...... // Certificates contains one or more certificate chains to present to the // ot
阅读全文
摘要:1. 简述 公钥基础设施(Public Key Infrastructure, PKI)是目前网络安全建设的基础和核心,是电子商务安全实施的基本保障。所有与数字证书相关的各种概念和技术,统称为PKI。 PKI 采用证书进行公钥管理,通过第三方的可信任机构(认证中心,即CA),把用户的公钥和用户的其他
阅读全文
摘要:什么是UUID? UUID是Universally Unique Identifier的缩写,它是在一定的范围内(从特定的名字空间到全球)唯一的机器生成的标识符,参考RFC规范-RFC4122。 UUID具有以下涵义: 经由一定的算法机器生成 为了保证UUID的唯一性,规范定义了包括网卡MAC地址、
阅读全文
摘要:一. 编码 所谓Base64,就是说选出64个字符 小写字母a-z、大写字母A-Z、数字0-9、符号"+"、"/"(再加上作为垫字的"=",实际上是65个字符) 作为一个基本字符集。然后,其他所有符号都转换成这个字符集中的字符。Base64是一种用64个字符来表示任意二进制数据的方法。 具体来说,转
阅读全文
摘要:在计算机内存中,统一使用unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为utf-8编码。 用记事本编辑的时候,从文件读取的utf-8字符被转换为unicode字符到内存里,编码完成保存时再把unicode转换为utf-8保存到文件。 浏览网页时,服务器会把动态生成的unicode内容
阅读全文
摘要:区块链是比特币的底层技术和基础架构,本质上是一个去中心化的数据库。区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)并生成下一个区块。 狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密
阅读全文
摘要:首部检验和字段是根据 I P首部计算的检验和码,它不对首部后面的数据进行计算。 I C M P、I G M P、U D P和T C P在它们各自的首部中均含有同时覆盖首部和数据检验和码。 为了计算一份数据报的 I P检验和,首先把检验和字段置为 0。然后,对首部中每个 16 bit进行二进制反码求和
阅读全文
摘要:OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。 OpenSSL is an open source project that provides a robust, commercial-grade,
阅读全文
摘要:trouSerS是IBM的一帮牛人搞的TSS软件栈,提供了与TPM交互的API,从而可以让我们方便地编写应用程序。 地址:https://sourceforge.net/projects/trousers/files/ 其提供了一套完整协议栈(芯片驱动除外),trousers -> tpm-tool
阅读全文
摘要:linux账户保存在/etc/passwd,密码保存在/etc/shadow。 通过man 5 passwd,man 5 shadow可查看文件中各字段含义。 encrypted password Refer to crypt(3) for details on how this string is
阅读全文
摘要:一、计算机安全基础 安全技术的目标 安全技术的目标包括九个方面,它们分别是: 1) 保密性:确保数据仅能被合法的用户访问,数据不能被没有被授权的用户访问。 2) 完整性:指数据只能由授权方或以授权的方式进行修改,即数据在传输的过程中不能被未授权的用户修改。 3) 可用性:确保所有的数据仅在适当的时候
阅读全文
摘要:TPM(Trusted Platform Module)安全芯片,是指符合TPM(可信赖平台模块)标准的安全芯片。标准由TCG(可信赖计算组织,Trusted Computing Group)提出,目前最新版本为2.0。符合TPM的芯片首先必须具有产生加解密密钥的功能,此外还必须能够进行高速的资料加
阅读全文
摘要:1. Storage Keys:存储密钥,用来加密数据和其它密钥的通用非对称密钥,这里的其它密钥可以是另外一个存储密钥,也可以是绑定密钥或签名密钥。它本身是长度2048bit的RSA私钥;它既可以是可迁移密钥,也可以是不可迁移密钥。 2. SRK:storage Root Key,存储根密钥,是存储
阅读全文
摘要:1. md5sum linux shell提供md5sum用于计算校验MD5值。 md5sum - compute and check MD5 message digest md5sum [OPTION]... [FILE]... The sums are computed as described
阅读全文
摘要:u-boot支持下列NAND ECC算法: 1.S/W ECC(Hamming code),软件ECC校验。 2.H/W ECC(Hamming code,BCH8)。 BCH Flash OOB Layout For any ECC scheme we need to add some extra
阅读全文
摘要:所谓加解密就是一方以密钥加密,另一外收到文件后以相对应的密钥解密,从而获取原始文件。数字签名的过程:信息是通过普通未加密方式发送信息给对方的,只是在每条信息后面都会附加一坨字符(名曰:签名)(或信息与附加字符分别存放),这个签名是由程序根据发送者的私钥以及信息内容计算得出,接收者使用发送者的公钥就可
阅读全文
摘要:CRC简单地说就是用需要做处理的数据除以一个常数而得到的余数。 实际操作涉及到的操作数有校验初始值(即校验种子seed),操作数(char数组),操作数长度; 除以的常数Poly是一固定值,不同CRC算法(CRC12、CRC16、CRC32)该值固定。 在CRC中,除法按XOR异或处理。 本质按位操
阅读全文