精华内容
下载资源
问答
  • git 基本命令 引擎 代码在本地提交,可以实现版本回退和前进。但是如果本地磁盘损坏,代码丢失,所以 ...非对称加密定义:与对称加密不同,非对称加密算法的加密和解密使用不同的两个密钥.这两个密钥就是我们...

    git 基本命令

    引擎

    代码在本地提交,可以实现版本回退和前进。但是如果本地磁盘损坏,代码丢失,所以
    我们要把代码往另一台电脑(远程服务器)存一份。好像网盘。实现代码在不同客户端
    (电脑、笔记本、手机)拷贝下载代码,提交代码到远程服务器。

    ssh 非对称加密

    ssh:主要用途 远程连接另一台计算机

    非对称加密定义:与对称加密不同,非对称加密算法的加密和解密使用不同的两个密钥.这两个密钥就是我们经常听到的"公开密钥"(公钥)和"私有密钥"(私钥)

    对称加密: 明文’abc’,定义加密规则 a-z分别对应数字1-26,密文“ 1%2%3”

    对称加密定义 :采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。

    公钥和私钥的关系是:

    公钥和私钥一般成对出现,
    如果你的消息使用公钥加密,那么需要该公钥对应的私钥才能解密;
    如果你的消息使用私钥加密,那么需要该私钥对应的公钥才能解密.

    非对称加密的作用是:保护消息内容, 并且让消息接收方确定发送方的身份.

    非对称加密和对称加密区别参考文章:

    A端和B端通讯。A端通过数学方式(RSA加密 生成容易反向破解难)生成一对儿密钥。
    A把公钥给B。B想给A发送信息,先把消息用A给的公用密钥,传统给A,
    如果中间被黑客截取 由于黑客没有A的密钥无法解密,最终A收到信息用自己
    的私钥解密看到信息。

    远程仓库平台

    -github 最为流行,主要线上
    -gitlab 较为流行,UI漂亮但消耗更多的资源,不少公司局域网内搭建。
    -gitee 阿里云code ,国内的代码仓库,基于gitlab或相似技术。

    github使用

    1.注册登录。网站没有被翻墙可以直接登录。
    可能出现的问题,注册时报验证码错误请检查防火墙或代理,用手机网络注册或科学上网。
    2.左上角的搜索仓库。进入一个工程项目中。
    watch 关注,当代码改变,会有邮件提醒。
    star 收藏,收藏到我的收藏夹。
    folk 拷贝别人的代码仓库,到自己的仓库。方便自己下载这份代码为这个项目做贡献。

    除项目外 约定俗称的文件

    -RWADME.md 写项目介绍、安装运行步骤。这个文件将会在github项目首页渲染出来。说明书。
    -LICENSE 版权声明 gp1,规定代码是否免费,是否可以修改商用。具体百度。
    -.ignore 忽略一些不想跟踪不想add的文件。

    准备:配置密钥对

    初次使用代码版本控制平台。由于代码重要,平台为了防止账户名密码泄漏后代码被黑客窃取。
    你的客户端自己的电脑生成一对秘钥,然后将公钥交给平台。这样从平台克隆代码时,不是自己的电脑无法克隆。
    -ssh-keygen命令 一路回车,生成密钥对。
    在 用户/用户名/.ssh文件下看到生成的 id_rsa.pub公布。私钥自己谨慎保存,公钥给你想要沟通的远程平台。

    命令

    github上随意找一个项目,复制下载里的ssh连接。
    -git clone ssh 连接(形如git@github.com/sss/sss.git) 远程仓库复制到自己本地电脑上
    刚开始对方会询问是否接受存储公钥,输入yes,开始clone。

    github新建一个项目,克隆到本地。本地进行修改,提交。
    -git push origin 把本地提交推送到远程服务器仓库。
    这样当更换电脑或是本地仓库被破坏时,可以快速从远程仓库
    克隆回复。origin指远程服务器。

    展开全文
  • 【汇新】为大家定期更新文章,【汇新】IT软硬件项目商务平台 对称加密技术,在现在网络中,有非常广泛应用。加密技术更是数字货币的基础。 所谓非对称,就是指该算法需要一对密钥,使用其中一个(公钥)...

    汇新云】为大家定期更新文章,【汇新云】IT软硬件项目商务平台


    对称加密技术,在现在网络中,有非常广泛应用。加密技术更是数字货币的基础。

    所谓非对称,就是指该算法需要一对密钥,使用其中一个(公钥)加密,则需要用另一个(私钥)才能解密。

    但是对于其原理大部分同学应该都是一知半解,今天就来分析下经典的非对称加密算法 - RSA算法。

    通过本文的分析,可以更好的理解非对称加密原理,可以让我们更好的使用非对称加密技术。

    题外话:

    并博客一直有打算写一系列文章通俗的密码学,昨天给站点上https, 因其中使用了RSA算法,就查了一下,发现现在网上介绍RSA算法的文章都写的太难理解了,反正也准备写密码学,就先写RSA算法吧,下面开始正文。

    RSA算法原理

    RSA算法的基于这样的数学事实:两个大质数相乘得到的大数难以被因式分解。

    如:有很大质数p跟q,很容易算出N,使得 N = p * q,

    但给出N, 比较难找p q(没有很好的方式, 只有不停的尝试)

    这其实也是单向函数的概念

    下面来看看数学演算过程

    选取两个大质数p,q,计算N = p q 及 φ ( N ) = φ (p) φ (q) = (p-1) * (q-1)

    三个数学概念:

    质数(prime numbe):又称素数,为在大于1的自然数中,除了1和它本身以外不再有其他因数。

    互质关系:如果两个正整数,除了1以外,没有其他公因子,我们就称这两个数是互质关系(coprime)。

    φ(N):叫做欧拉函数,是指任意给定正整数N,在小于等于N的正整数之中,有多少个与N构成互质关系。

    如果n是质数,则 φ(n)=n-1。

    如果n可以分解成两个互质的整数之积, φ(n) = φ(p1p2) = φ(p1)φ(p2)。即积的欧拉函数等于各个因子的欧拉函数之积。

    选择一个大于1 小于φ(N)的数e,使得 e 和 φ(N)互质

    e其实是1和φ(N)之前的一个质数

    计算d,使得de=1 mod φ(N) 等价于方程式 ed-1 = k φ(N) 求一组解。

    d 称为e的模反元素,e 和 φ(N)互质就肯定存在d。

    模反元素是指如果两个正整数a和n互质,那么一定可以找到整数b,使得ab被n除的余数是1,则b称为a的模反元素。

    可根据欧拉定理证明模反元素存在,欧拉定理是指若n,a互质,则:


    a^φ(n) ≡ 1(mod n) 及 a^φ(n) = a * a^(φ(n) - 1), 可得a的 φ(n)-1 次方,就是a的模反元素。

    (N, e)封装成公钥,(N, d)封装成私钥。

    假设m为明文,加密就是算出密文c:

    m^e mod N = c (明文m用公钥e加密并和随机数N取余得到密文c)

    解密则是:

    c^d mod N = m (密文c用密钥解密并和随机数N取余得到明文m)

    私钥解密这个是可以证明的,这里不展开了。

    加解密步骤

    具体还是来看看步骤,举个例子,假设Alice和Bob又要相互通信。

    Alice 随机取大质数P1=53,P2=59,那N=53*59=3127,φ(N)=3016

    取一个e=3,计算出d=2011。

    只将N=3127,e=3 作为公钥传给Bob(公钥公开)

    假设Bob需要加密的明文m=89,c = 89^3 mod 3127=1394,于是Bob传回c=1394。 (公钥加密过程)

    Alice使用c^d mod N = 1394^2011 mod 3127,就能得到明文m=89。 (私钥解密过程)

    假如攻击者能截取到公钥n=3127,e=3及密文c=1394,是仍然无法不通过d来进行密文解密的。

    安全性分析

    那么,有无可能在已知n和e的情况下,推导出d?



    如果n可以被因数分解,d就可以算出,因此RSA安全性建立在N的因式分解上。大整数的因数分解,是一件非常困难的事情。

    只要密钥长度足够长,用RSA加密的信息实际上是不能被解破的。

    补充模运算规则

    模运算加减法:

    (a + b) mod p = (a mod p + b mod p) mod p

    (a - b) mod p = (a mod p - b mod p) mod p

    模运算乘法:

    (a b) mod p = (a mod p b mod p) mod p

    模运算幂

    a ^ b mod p = ((a mod p)^b) mod p



    学好区块链,单笔项目百万+不是梦:

    区块链产品经理(点击入驻),能力不够也来混个脸熟

    展开全文
  • 对称加密与证书

    2019-04-26 18:22:02
    SSL/TLS的主要目标有四个:加密安全、互操作性、可扩展性和效率。对于安全性的保障,它还会从多个方面进行,包括机密性,真实性以及完整性。机密性是指,传输的内容不被除通信的双方外的第三方获取;真实性是指,...

    SSL/TLS是一个密码学协议,它的目标并不仅仅是网页内容的加密传输。SSL/TLS的主要目标有四个:加密安全、互操作性、可扩展性和效率。对于安全性的保障,它还会从多个方面进行,包括机密性,真实性以及完整性。机密性是指,传输的内容不被除通信的双方外的第三方获取;真实性是指,通信的对端正是期待的对端,而不是其它第三方冒充的;完整性则是指,传输的数据是完整的,数据没有被篡改或丢失。为了平衡多种需求,SSL/TLS被设计为一个安全框架,其中可以应用多种不同的安全方案,每种方案都由多个复杂的密码学过程组成。不同的安全方案,在安全性和效率之间有着不同的取舍,并由不同的密码学过程组成。

    在密码学上,非对称加密具有更高的安全性,同时计算复杂度更高,性能更差;而对称加密,则效率比较高,计算复杂度较低,但如果在通信过程中明文传输密钥,或将密钥以hard code的形式写在代码里,则安全隐患比较大。

    从密码学过程的特性出发,整体来看,SSL/TLS连接是在会话协商阶段,通过 非对称加密 算法,如RSA、ECDHE等,完成身份验证,及后续用到的对称加密密钥的交换;在整个数据传输阶段,通过对称加密算法,如AES、3DES等,对传输的数据进行加密;通过数据散列算法,如SHA1、SHA256等,计算数据的散列值并随应用数据一起发送,以保证数据的完整性。

    本文主要描述非对称加密的基本思想,及TLS的证书身份认证。

    非对称加密


    非对称加密 (asymmetric encryption) 又称为公钥加密 (public key cryptography),是使用两个密钥,而不像对称加密那样使用一个密钥的加密方法;其中一个密钥是私密的,另一个是公开的。顾名思义,一个密钥用于非公开的私人的,另一个密钥将会被所有人共享。

    非对称加密的两个密钥之间存在一些特殊的数学关系,使得密钥具备一些有用的特性。如果利用某人的公钥加密数据,那么只有他们对应的私钥能够解密。从另一方面讲,如果某人用私钥加密数据,任何人都可以利用对应的公钥解开消息。 后面这种操作不提供机密性,但可以用作数字签名。

    非对称加密保护数据安全


    盗用阮一峰老师的几幅图来说明,通过非对称加密保护数据安全的过程。

    鲍勃有两把钥匙,一把是公钥,另一把是私钥。

    鲍勃把公钥送给他的朋友们----帕蒂、道格、苏珊----每人一把。

    苏珊要给鲍勃写一封不希望别人看到的保密的信。她写完后用鲍勃的公钥加密,就可以达到保密的效果。

    鲍勃收到信后,用私钥解密,就可以看到信件内容。

    对于非对称加密,只要私钥不泄露,传输的数据就是安全的。即使数据被别人获取,也无法解密。

    非对称加密的这些特性直击对称加密中只用一个密钥,而该密钥不方便传输、保存的痛点。它大大方便了大规模团体的安全通信,方便了安全通信在互联网中的应用。

    非对称加密生成数字签名


    数据的加密安全只是数据安全的一个方面,数据的真实性同样非常重要。经常可以看到这样的案例,骗子在同学参加四、六级考试的时候,给同学的家长打电话或发短信,声称自己是学校的辅导员,并表示同学病重急需用钱,要求家长汇钱,同学家长汇钱给骗子而遭受巨大损失的情况。这就是数据/信息真实性没有得到足够验证而产生的问题。

    再比如,一个仿冒的taobao网站,域名与真实的网站非常相似。我们一不小心输错了域名,或域名被劫持而访问了这个仿冒的网站,然后像平常在taobao购物一样,选择宝贝,并付款,但最后却怎么也收不到货物。

    现实世界中,常常会请消息的发送者在消息后面签上自己的名字,或者印章来证明消息的真实可靠性,如信件中的签名,合同中的印章等等。类似地,在虚拟的网络世界中,也会通过数字签名来确认数据的真实可靠性。数字签名依赖的主要算法也是非对称加密,生成数字签名主要是使用私钥加密 数据的散列摘要 来签名。

    通过几幅图来说明这个过程。

    鲍勃给苏珊回信,决定采用"数字签名"来证明自己的身份,表示自己对信件的内容负责。他写完后先用散列函数,生成信件的摘要 (digest)。      

                                       

    然后,鲍勃使用自己的私钥,对这个摘要加密,生成"数字签名"(signature)。

    鲍勃将这个签名,附在信件下面,一起发给苏珊。

    苏珊收到信后,取下数字签名,用鲍勃的公钥解密,得到信件的摘要。

    苏珊再对信件本身应用散列函数,将得到的结果,与上一步得到的摘要进行对比。如果两者一致,则证明这封信确实是鲍勃发出的,信件完整且未被篡改过。

                         

    如果鲍勃向苏珊借了钱,并用上面这样的过程写信给苏珊确认自己收到了钱,那么鲍勃就再也不能抵赖了——信件的末尾可是清清楚楚地签着鲍勃的大名呢。

    如果我们的网络世界能像上图的过程那样,每个人都可以方便地获得可靠的公钥,那就太美好了。互联网上的网站成千上万,每个人都走到自己要访问的网站站长的办公室把网站的公钥拷走,或者网站站长挨个走到自己的目标用户家门口,把自己网站的公钥交给用户,那可就太麻烦,代价太大了。

    公钥通常都是通过网络传输的。不怀好意的人,会试图干扰这个传输过程,将自己伪造的公钥发送给用户,进而破坏后续整个数据传输的安全性。如果用户拿到的是伪造的公钥,那签名也就形同虚设。

    如道格想欺骗苏珊,他在鲍勃将公钥交给苏珊时拦住鲍勃,表示要替鲍勃转交。正好鲍勃有老板交待的其它重要事情要完成,于是就把自己的公钥交给道格请他帮忙转交。但道格把鲍勃的公钥丢进垃圾桶,而把自己的公钥交给了苏珊。此时,苏珊实际拥有的是道格的公钥,但还以为这是鲍勃的。因此,道格就可以冒充鲍勃,用自己的私钥做成"数字签名",写信给苏珊,让苏珊用假的鲍勃公钥进行解密。

    证书


    证书正是为了解决公钥的信任问题而引入。证书体系通过引入可信的第三机构,称为 证书签发机构(certificate authority,简称CA),为公钥做认证,来确保公钥的真实可靠。证书是经过了 CA 私钥签名的 证书持有者的公钥、身份信息及其它相关信息 的文件,用户通过 CA 的公钥解密获取证书中包含的 证书持有者 的公钥。只要 CA 的私钥保持机密,通过证书验证 证书持有者 的身份,及获取公钥的过程就可靠。

    证书的工作过程


    互联网PKI证书体系的结构如下图:

    证书订阅人 ,也就是需要提供安全服务的人,向 证书中心 (CA) 的代理—— 登记机构 提交自己的公钥来申请证书。 登记机构 对 证书订阅人 的身份进行核实,然后向 证书中心 (CA) 提交 证书订阅人 的公钥及身份信息。 证书中心 (CA) 用自己的私钥,对 证书订阅人 的公钥、身份信息和其它一些相关信息进行加密,生成 "数字证书"(Digital Certificate) ,并发送给 登记机构。 登记机构 将证书发送给 证书订阅人 。 证书订阅人 将证书部署在Web服务器上。 信赖方,即安全服务的用户,维护 CA 根证书库,并在与Web服务器通信时,从服务器获得证书。 信赖方 用CA根证书验证接收到的证书的有效性,进而验证服务器的真实性。

    同样通过几幅图来说明这个过程。

    鲍勃去找证书签发机构,为公钥做认证。证书中心用自己的私钥,对鲍勃的公钥、身份信息和一些其它相关信息一起加密,生成"数字证书"(Digital Certificate)。

    鲍勃拿到数字证书以后,就可以放心,以后再也没人能冒充自己了。再需要发送自己的公钥给朋友们时,只要把自己事先拿到的 数字证书 发送给朋友就可以了。需要写信给苏珊时,照常附上自己的数字签名即可。

    苏珊收到信后,用CA的公钥解开数字证书,就可以拿到鲍勃真实的公钥,然后就能证明"数字签名"是否真的是鲍勃签的。

    证书里有什么


    PKI证书是 抽象语法表示一 (Abstract syntax notation one, ASN.1) 表示, 基本编码规则 (base encoding rules, BER) 的一个子集 唯一编码规则 (distinguished encoding rules, DER) 编码的二进制文件。我们通常看到的证书则是DER使用Base64编码后的ASCII编码格式,即 PEM (Privacy-enhanced mail) 这种更容易发送、复制和粘贴的编码格式的纯文本文件。

    证书里到底都有些什么呢?这里我们通过一个实际的证书来看一下。我们可以通过openssl解码数字证书,获得证书的可读形式:

    $ openssl x509 -in chained.pem -text -nooutCertificate:    Data:        Version: 3 (0x2)
            Serial Number:            03:5c:25:82:1d:c2:b2:2f:6f:73:39:48:9c:68:07:1b:48:2d
        Signature Algorithm: sha256WithRSAEncryption        Issuer: C=US, O=Let's Encrypt, CN=Let's Encrypt Authority X3
            Validity
                Not Before: Oct 25 01:12:00 2016 GMT
                Not After : Jan 23 01:12:00 2017 GMT        Subject: CN=www.wolfcstech.com
            Subject Public Key Info:
                Public Key Algorithm: rsaEncryption
                    Public-Key: (4096 bit)
    Modulus:
                       00:c3:92:70:78:ff:00:0a:22:c7:14:0b:3d:b3:26:
                       34:cb:37:63:26:1d:d6:42:7b:5c:ab:51:cc:f7:12:
                       57:26:b1:d1:4f:5f:a7:02:5b:3c:f3:e6:e1:ec:7c:
                       66:61:ba:d8:5e:d6:61:60:48:d6:d3:4c:23:9a:50:
                       75:4b:2d:1b:89:7d:7b:55:2f:12:63:b4:ac:c7:b5:
                       d1:44:95:ed:a2:f4:9d:ee:77:3c:2b:06:48:d9:18:
                       21:d1:ee:cf:5c:26:ad:c2:11:28:9c:27:65:11:94:
                       c4:1d:0f:5e:4c:4f:00:71:cf:5d:1f:40:4b:9a:5e:
                       3b:b0:42:45:c5:68:01:62:29:c2:92:b5:ad:8d:13:
                       11:db:7e:02:65:14:6a:5d:4b:66:16:08:d4:ab:90:
                       dc:06:28:27:cd:84:c0:b7:30:22:ff:54:71:c2:3b:
                       8d:7d:8b:52:c3:a8:f1:ee:63:42:2a:dd:4d:a7:70:
                       66:c5:c3:54:d5:8e:a1:e2:02:d0:8b:2f:f6:44:1d:
                       f5:f2:85:fd:49:c7:e0:d7:d0:ae:21:b7:25:ae:7c:
                       15:dc:56:51:45:f1:e7:19:d6:1c:95:2c:65:f7:34:
                       2c:67:1c:93:00:81:a7:e2:23:da:1a:3c:d1:9f:84:
                       5e:01:3f:71:e7:9c:cd:e0:4f:fc:db:a6:2f:33:3a:
                       3d:ce:6d:52:72:47:0b:08:9c:04:1f:4a:cd:cd:71:
                       db:c2:3f:0d:9c:b4:24:ca:25:06:49:2b:40:a7:96:
                       b6:60:b7:8d:c7:b0:b4:84:96:06:63:3b:d9:0c:25:
                       8d:af:ad:90:ce:b8:d5:c6:e6:28:28:bd:4b:72:92:
                       28:1a:0a:b7:15:3c:28:26:15:ab:fc:88:22:74:50:
                       77:cc:3d:a3:c8:be:83:14:3d:ca:0e:79:aa:71:66:
                       56:b8:6f:fe:2a:2d:36:ff:0c:af:b9:61:5c:5b:5f:
                       a4:cc:0a:5b:13:31:c9:16:3f:51:9c:19:56:dd:06:
                       1d:c9:6f:f6:17:61:61:7b:4c:cb:aa:b9:92:52:25:
                       9b:8f:02:2d:51:39:5f:f0:89:e2:e8:25:6f:04:2a:
                       d3:6f:a3:3e:a7:44:a8:a1:db:01:55:ad:1d:3f:72:
                       3a:9a:b7:0f:35:a3:de:d2:93:d7:7c:d6:12:66:b2:
                       f9:da:c4:e3:e6:52:6f:55:07:5c:a2:57:0d:7a:ca:
                       20:5a:59:1b:78:ba:cf:e2:1d:b3:33:0a:53:2e:26:
                       9f:39:2f:ec:48:8b:9f:a0:b9:e8:e6:61:9b:89:34:
                       59:02:07:bb:b4:c4:8d:1d:24:72:ea:1e:7c:5f:a9:
                       a3:96:15:e9:4d:7e:4c:94:eb:cb:af:d2:70:83:78:
                       be:36:eb
                   Exponent: 65537 (0x10001)
           X509v3 extensions:
               X509v3 Key Usage: critical
                   Digital Signature, Key Encipherment
               X509v3 Extended Key Usage: 
                   TLS Web Server Authentication, TLS Web Client Authentication
               X509v3 Basic Constraints: critical
                   CA:FALSE
               X509v3 Subject Key Identifier: 
                   B8:27:0E:D4:47:BB:27:66:51:3B:E7:F9:8B:9C:48:2E:3D:FD:C8:97
               X509v3 Authority Key Identifier: 
                   keyid:A8:4A:6A:63:04:7D:DD:BA:E6:D1:39:B7:A6:45:65:EF:F3:A8:EC:A1

               Authority Information Access: 
                   OCSP - URI:http://ocsp.int-x3.letsencrypt.org/
                   CA Issuers - URI:http://cert.int-x3.letsencrypt.org/

               X509v3 Subject Alternative Name: 
                   DNS:wolfcstech.cn, DNS:wolfcstech.com, DNS:www.wolfcstech.cn, DNS:www.wolfcstech.com
               X509v3 Certificate Policies: 
                   Policy: 2.23.140.1.2.1
                   Policy: 1.3.6.1.4.1.44947.1.1.1
                     CPS: http://cps.letsencrypt.org
                     User Notice:
                       Explicit Text: This Certificate may only be relied upon by Relying Parties and only in accordance with the Certificate Policy found at https://letsencrypt.org/repository/

       Signature Algorithm: sha256WithRSAEncryption
            46:a1:fb:1c:fe:6e:ef:af:fc:84:e3:7e:20:1d:c8:0c:0b:e4:
            d2:4b:9e:f6:bc:e5:31:59:08:bb:7e:0d:74:3f:e6:de:39:58:
            e2:f4:fa:bf:5c:26:86:96:19:8f:00:13:17:2b:4f:95:c4:bd:
            02:ad:cd:a6:e5:80:21:f5:ee:e6:4d:01:86:07:82:37:5e:39:
            c9:55:40:ed:08:2e:8d:94:b8:86:2f:15:76:10:bd:97:46:06:
            b3:34:80:12:f4:dc:2a:2a:63:80:36:fe:ef:e1:9e:b6:dc:22:
            51:c7:54:46:1a:b2:c5:e8:62:98:90:46:ea:92:8c:fd:d4:dd:
            00:4f:fb:1e:25:24:93:c1:74:15:07:6f:67:d3:be:5b:47:7e:
            18:56:02:01:55:09:fc:bf:7f:ff:27:fc:db:d8:53:55:02:43:
            2e:a0:23:28:01:4d:4d:f9:bc:02:bc:fe:50:c2:67:d7:d4:48:
            23:c2:0b:25:d4:65:e1:8f:3c:75:12:b6:87:b1:17:86:c8:1a:
            26:72:0e:ba:07:92:c4:87:3e:e1:fc:e3:58:ef:a2:23:43:09:
            85:c4:82:00:04:07:49:06:10:bc:fd:20:67:0f:63:f8:ff:bf:
            7f:6f:da:72:77:51:1d:50:34:07:63:e8:68:e3:ef:70:5f:71:
            b4:11:9e:27

       
    可以看到主要包含证书格式的版本号;证书的唯一的序列号;签名算法;颁发者的信息;证书的有效期;证书的使用者的信息、身份信息,在这里主要是几个域名;证书使用者的公钥等等。

    Let's Encrypt证书申请


    我们通过一个 Let's Encrypt 证书申请过程对证书做更多了解。 Let's Encrypt 是一个免费、自动化、开放的证书签发机构,目前它已得到了Mozilla,Chrome等的支持,发展十分迅猛。

    证书申请


    Let’s Encrypt 使用ACME协议验证申请人对域名的控制并签发证书。要获取Let’s Encrypt 证书,需使用ACME客户端进行。Let’s Encrypt 官方推荐 使用Certbot这个功能强大,灵活方便的工具,不过也可以使用其它的ACME客户端。

    这里我们通过Certbot申请Let’s Encrypt证书。

    Certbot安装


    对于在Ubuntu 14.04平台上部署nginx提供Web服务的情况,应该使用 certbot-auto 来安装:

    $ wget https://dl.eff.org/certbot-auto$ chmod a+x certbot-auto
    certbot-auto 接收与 certbot 完全相同的标记;不带参数执行这个命令时,会自动安装依赖的所有东西,并更新工具本身。执行如下命令:

    $ ./certbot-auto

    相关阅读:非对称加密与证书(下篇)

    网易云SSL证书服务提供云上证书一站式生命周期管理,与全球顶级的数字证书授权机构(CA,Certificate Authority)和代理商合作,为你的网站与移动应用实现 HTTPS 加密部署。

    网易云新用户大礼包:https://www.163yun.com/gift


    本文来自网易实践者社区,经作者韩鹏飞授权发布。
    --------------------- 
    作者:w97531 
    来源:CSDN 
    原文:https://blog.csdn.net/w97531/article/details/81746763 
    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • 近几年,Google、Baidu、Facebook 等互联网巨头大力推行 HTTPS,国内外的大型互联网公司很多也都已启用全站 HTTPS。 Google 也推出了针对移动端优化的新型加密套件 ChaCha...又拍云平台上所有的 CDN 用户都可以享受到该

    近几年,Google、Baidu、Facebook 等互联网巨头大力推行 HTTPS,国内外的大型互联网公司很多也都已启用全站 HTTPS。 Google 也推出了针对移动端优化的新型加密套件 ChaCha20-Poly1305。

    又拍云 CDN 已经全面支持 Google 推出的针对移动端优化的加密套件—— ChaCha20-Poly1305。又拍云平台上所有的 CDN 用户都可以享受到该算法加解密性能提升,网页加载时间减少,电池寿命延长等优势。

    在这之前又拍云一直在对 HTTPS 性能进行持续优化,致力于 HTTPS 达到更快的数据传输性能。又拍云 HTTPS 优化已支持了以下特性:Session ID 复用、OCSP Stapling、HSTS、HTTP/2、False Start,这些特性极大的提升了 HTTPS 访问速度。

    又拍云 CDN 现已支持的谷歌 ChaCha20-Poly1305 加密套件,那么相比其他加密套件,ChaCha20-Poly1305为什么会具有这些优势呢?

    对称加密算法对比

    常用的对称加密算法如下:

     

     

    AES-GCM 是目前常用的分组加密算法,但是其有一个缺点就是计算量大,导致性能和电量开销比较大。为了解决这个问题,Intel 推出了名为 AES NI(Advanced Encryption Standard new instructions)的 x86 指令拓展集,从硬件上提供对 AES 的支持。对于支持 AES NI 指令的设备来说,使用 AES-GCM 无疑是最佳选择。

     

    而针对移动端不支持 AES NI 的设备,Google 在 2014年推出了一种新的流式加密算法 ChaCha20-Poly1305。在 ARM 平台上,ChaCha20-Poly1305 的性能是 AES-GCM 的 3-4 倍。

    ChaCha20-Poly1305 算法介绍

    Chacha20-Poly1305 是由 Google 专门针对移动端 CPU 优化而采用的一种新式流式加密算法,它的性能相比普通算法要提高 3 倍,在 CPU 为精简指令集的 ARM 平台上尤为显著(ARM v8 前效果较明显)。其中 Chacha20 是指对称加密算法,Poly1305 是指身份认证算法。使用该算法,可减少加密解密所产生的数据量进而可以改善用户体验,减少等待时间,节省电池寿命等。

    由于其算法精简、安全性强、兼容性强等特点,目前 Google致力于全面将其在移动端推广。

    更优异的加解密性能

    当前流行的加密套件 AES-GCM,在不支持 AES NI 指令的硬件设备上,该加密算法会让大部分智能手机、平板电脑以及可穿戴设备引起性能问题,导致加解密性能时间过长。

    而在 Google 公布的数据显示,Chacha20-Poly1305 能够提升 30% 以上的设备加解密性能。同时在部分移动设备上,ChaCha20-Poly1305 加密的速度是 AES 的 3 倍还多。也即在使用 ChaCha20-Poly1305 时,较旧的计算机或者移动端设备在加解密方面会花费更少的计算时间。减少加解密时间的减少意味着更快的页面加载速度以及更少的设备电池消耗。

    针对移动端设备,在具有硬件 AES 支持的 PC 电脑上,使用 AES-GCM 算法是比较不错的选择,所以又拍云 CDN 平台会根据客户端支持的加密套件情况智能选择 AES-GCM 或者 ChaCha20-Poly1305 这两者。对于最新的英特尔处理器,又拍云CDN会使用标准的 AES-GCM 算法;对于没有硬件 AES 支持的设备来说,会优先选择 ChaCha20-Poly1305。

    更安全的加密算法组合

    ChaCha20-Poly1305 加密套件使用了两种算法,其中 Chacha20 是指对称加密算法,而Poly1305 是指身份认证算法。

     

    RFC文档

    从 RFC 文档中可以看到,ChaCha20 提供了 256 位的加密强度,这对于 AES-GCM 算法的 128 位的加密强度来说,已经绰绰有余。也就是说,使用 ChaCha20 作为对称加密算法来保障 HTTPS 安全性已经足够了。

    而 Poly1305 作为身份认证算法提供身份验证,可以防止攻击者在 TLS 握手过程中,将虚假信息插入到安全的数据流中,Poly1305 算法提供了大约 100 位的安全性加密强度,足以阻止这类攻击。在 TLS 握手过程中,身份验证相比加密并没有那么重要,因为即使攻击者可以向数据流中添加虚假消息,在密钥信息没有被破解的情况下,也不会读取到内部的数据信息。

    综上所述,ChaCha20-Poly1305 作为一个加密组合,可同时对数据提供机密性,完整性和真实性保证,避开了现有发现的所有安全漏洞和攻击,是一组极佳的加密套件组合。

    开启 CHACHA20_POLY1305 方式

    又拍云 CDN 已经默认支持 CHACHA20_POLY1305,并针对不支持 AES-NI 的终端优先选择此算法作为对称加密算法。

    目前又拍云提供 SSL 证书的申购、管理、部署等功能。与国际顶级 CA 机构合作,证书类型丰富,操作流程简单方便,为用户提供一站式 HTTPS 安全解决方案。免费版SSL证书1小时内,付费版OV、EV SSL证书3天内即可完成申购签发,并且一键完成SSL证书部署即时开启全站HTTPS服务开启。

     

    展开全文
  • 对称加密与证书(上篇)

    千次阅读 2018-08-16 18:32:50
    SSL/TLS的主要目标有四个:加密安全、互操作性、可扩展性和效率。对于安全性的保障,它还会从多个方面进行,包括机密性,真实性以及完整性。机密性是指,传输的内容不被除通信的双方外的第三方获取;真实性是指,...
  • 对称加密对称加密是一种数据加密算法,对一组数据的加密和解密都使用一样的密钥(key),可以有效保护金融数据,常见的对称加密有DES,3DES,AES、RC2、RC4、RC5。 DES3:对DES算法的组合,指定3个KEY,运算3次DES,...
  • Python爬虫:逆向分析某音乐加密参数

    万次阅读 多人点赞 2020-09-05 09:54:07
    本篇博文通过对网易音乐进行逆向分析,用Python代码模拟了AES和RSA加密过程,并在文章的末尾提供了一些参数,可以用这些参数来获取歌曲对应的歌词及用户的评论。
  •  了解下云计算 aPaas是衍生在云平台之上的,如果开发一款应用,需要涉及大量基础技术或者基础设置。 如果从技术层次上划分来说,分为以下几层: application层 data层 runtime层 middleware层 OS层 ...
  • 本文来自网易社区。 配置Web服务器 Let’s Encrypt 在签发证书之前,需要先通过ACME验证申请者对域名的控制权。验证方法是,ACME客户端产生一些临时文件放在指定的位置,并将该文件的相关信息发送给 Let’s ...
  • 作者丨京东智联-平台安全组张惊申密码,已经成为当代互联网人每天使用频率最高的东西,它在默默地守护着我们的信息安全。而人们对密码却始终未给予足够重视,以至于经常会出现“123456”这...
  • 对称加密是一种数据加密算法,对一组数据的加密和解密都使用一样的密钥(key),可以有效保护金融数据,常见的对称加密有DES,3DES,AES、RC2、RC4、RC5。 DES3: 对DES算法的组合,指定3个KEY,运算3次DES,密钥KEY的...
  • Opennebula 云平台

    2020-06-16 17:41:41
    ########### Auth #################################### ######################## #与OpenNebula核心进行通信的身份验证驱动程序 #-密码,用于令牌的对称密码加密 #-x509,用于令牌的x509证书加密 :core_auth ...
  • 服务器端和客户端协商好加密方案后,客户端会产生一个随机的密钥,客户端通过协商好的加密方案加密该随机密钥,并发送该随机密钥到服务器端。服务器端接收这个密钥后,双方通信的所有内容都通过该随机密钥加密。 图...
  • 阿里云加密服务 ( AliCloud Data Encryption Service ) 是上的数据安全加密解决方案。以下________是阿里云加密服务支持的对称密码算法。 A.DES B.SM2 C.RSA D.SHA256 【参考答案】A 【参考解析】 阿里云加密...
  • 1华为OceanConnect云平台配置 这里只涉及华为云平台部署以及北向开发。上面链接介绍了如何在旧版的华为云平台进行部署,也有专门的博客介绍新版的华为云平台如何部署。 2 基于QT接入华为OceanConnect云平台 ...
  • 故事是这样的,我们负责开发的混合管理平台最近要上一套新的openstack,所以要将新openstack管理进来。由于平台是新搭建,我这边开发环境也是新改造的,所以在openstack的对接发生一系列不顺利的事情。最大的障碍...
  • 上一篇文章中,我们构建好了认证报文,并且发送给阿里后,得到了阿里提供的3个重要信息random、 seqOffset和token。接下来我们一起来构建上传温湿度数据的报文。我们先看报文的头4个字节,上传温湿度数据的报文...
  • 在谷歌,很多产品团队使用...为了帮助开发人员交付安全的加密代码,谷歌开发了 Tink,一个支持多语言的跨平台加密库。他们希望 Tink 能够成为一个社区项目,因此 Tink 从一开始就托管在 GitHub 上,并且已经吸引到了...
  • 存储加密数据检索面临挑战

    千次阅读 2013-08-13 17:45:23
    存储加密数据检索面临挑战 分类: 文章2013-01-17 09:27 210人阅读 评论(0) 收藏 举报 存储加密数据检索面临挑战 2011-02-14 02:45出处:51cto作者:佚名【我要评论】 [导读]在加密信息检索的...
  • 2.非对称加密算法。 密钥个数 加密 解密 对称加密 一个 使用密钥加密 使用同一个密钥解密 非对称加密 两个,公钥和私钥 使用其中一把密钥加密 使用另外一把密钥解密 RSA非对称加密算法 RSA是目前应用最...
  • 近日,ZStack Cloud云平台获华为鲲鹏Validated认证。ZStack携手北京鲲鹏联合创新中心基于鲲鹏BootsKit虚拟化套件V-Turbo加速特性,以及KAE硬件加速引擎提升系统性能,实现了对ZStack Cloud云平台的深度全栈优化,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,869
精华内容 1,547
关键字:

云平台的对称加密